<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>ITX 시간표 &#8211; 기차 타는 사람들</title>
	<atom:link href="https://krailroad.co.kr/category/%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c/itx-%ec%8b%9c%ea%b0%84%ed%91%9c/feed/" rel="self" type="application/rss+xml" />
	<link>https://krailroad.co.kr</link>
	<description>레일 위에서 만나는 세상, 가장 빠르고 정확한 기차여행 정보와 팁</description>
	<lastBuildDate>Tue, 12 May 2026 23:53:06 +0000</lastBuildDate>
	<language>ko-KR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>

<image>
	<url>https://krailroad.co.kr/wp-content/uploads/2025/10/cropped-기차-타는-사람들-32x32.png</url>
	<title>ITX 시간표 &#8211; 기차 타는 사람들</title>
	<link>https://krailroad.co.kr</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>청량리역 기차 시간표 KTX ITX-마음 무궁화호 전체 노선 완벽정리</title>
		<link>https://krailroad.co.kr/%ec%b2%ad%eb%9f%89%eb%a6%ac%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a0%84%ec%b2%b4-%eb%85%b8%ec%84%a0-%ec%99%84/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Tue, 12 May 2026 06:46:12 +0000</pubDate>
				<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[KTX 시간표]]></category>
		<category><![CDATA[무궁화 시간표]]></category>
		<category><![CDATA[청량리역 기차 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=21020</guid>

					<description><![CDATA[청량리역 기차 시간표를 확인하며 여행을 시작하는 청량리역은 1911년부터 지금까지 100년 넘게 동북권 교통의 중심을 지켜왔습니다. 예전에는 춘천이나 안동으로 가는 정겨운 기차역의 대명사였다면, 이제는 강릉선·중앙선 KTX와 ITX-청춘, ITX-마음이 교차하는 초대형 철도 중심지로 멋지게 변신했습니다. 특히 최근에는 청량리역 기차 시간표를 통해 강원도와 경상도를 잇는 수많은 열차 정보를 한눈에 확인할 수 있어 여행객들에게 더욱 스마트한 안내자가 되어주고 있습니다. ... <a title="청량리역 기차 시간표 KTX ITX-마음 무궁화호 전체 노선 완벽정리" class="read-more button" href="https://krailroad.co.kr/%ec%b2%ad%eb%9f%89%eb%a6%ac%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a0%84%ec%b2%b4-%eb%85%b8%ec%84%a0-%ec%99%84/" aria-label="청량리역 기차 시간표 KTX ITX-마음 무궁화호 전체 노선 완벽정리 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">청량리역 기차 시간표를 확인하며 여행을 시작하는 청량리역은 1911년부터 지금까지 100년 넘게 동북권 교통의 중심을 지켜왔습니다. 예전에는 춘천이나 <a href="https://krailroad.co.kr/%ec%95%88%eb%8f%99%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a4%91%ec%95%99%ec%84%a0-%ec%9a%94/">안동</a>으로 가는 정겨운 기차역의 대명사였다면, 이제는 강릉선·중앙선 KTX와 ITX-청춘, ITX-마음이 교차하는 초대형 철도 중심지로 멋지게 변신했습니다. 특히 최근에는 청량리역 기차 시간표를 통해 강원도와 경상도를 잇는 수많은 열차 정보를 한눈에 확인할 수 있어 여행객들에게 더욱 스마트한 안내자가 되어주고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">청량리역 기차 시간표 안내</h2>



<h3 class="wp-block-heading">실시간으로 확인 &#8216;나만의 열차&#8217;</h3>



<p class="wp-block-paragraph">청량리역 기차 시간표, 이제 단순히 나열된 숫자만 보지 마세요. 제가 만든 시스템은 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a> 공식 자료와 공공데이터 실시간 API를 60초마다 실시간 데이터를 업데이트하여, 열차가 지금 어디쯤 오고 있는지 실시간으로 확인합니다. 강릉, 동해, 안동, 그리고 <a href="https://krailroad.co.kr/%eb%b6%80%ec%a0%84%ec%97%ad-ktx-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%b2%ad%eb%9f%89%eb%a6%ac%c2%b7%ea%b0%95%eb%a6%89%c2%b7%ec%95%88%eb%8f%99%ed%96%89%ec%86%8d%ec%b4%88-%ed%8f%ac%ed%95%ad-%ec%a4%91/">부전역</a>으로 향하는 열차의 실제 운행 상황은 물론, 근처 주차장 요금과 버스로 갈아타려면 얼마나 기다려야 하는지도 한눈에 파악 할 수 있도록 제작하였으니 편리하게 이용 하실 수 있습니다.<br><br>1️⃣ <strong>귀로 듣는 안내 서비스</strong> : 카페에서 쉬거나 용무를 보느라 전광판을 놓치셨나요? 열차 들어오기 15분 전부터 자동으로 알려주는 음성 알림 서비스가 승강장으로 이동할 타이밍을 정확히 짚어 드립니다(아래 실시간 로직에 음성 안내를 켜 두시면 됩니다.).<br><br>2️⃣ <strong>날씨에 맞춘 추천 명소</strong> : 비가 오면 실내 식당가를, 맑은 날엔 산책하기 좋은 코스를 추천해 드려요. 날씨 변화 걱정 없이 청량리역 주변을 알차게 즐길 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">철도 교통의 중심</h3>



<p class="wp-block-paragraph">청량리역 기차 시간표를 이용한다면 강릉선 KTX 덕분에 강원도까지 가는 길을 획기적으로 줄여주었을 뿐만 아니라, 안동을 넘어 <a href="https://krailroad.co.kr/%eb%b6%80%ec%82%b0%ec%97%ad-ktx-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%b5%9c%ec%8b%a0-%eb%85%b8%ec%84%a0%eb%b3%84-%ec%9a%94%ea%b8%88-%eb%b0%8f-%ec%86%8c%ec%9a%94-%ec%8b%9c%ea%b0%84/">부산역</a>(부전역)까지 잇는 내륙 철도의 출발점 역할도 톡톡히 하고 있습니다. 빠른 고속열차도 많지만, 여전히 무궁화호 같은 일반 열차가 꾸준히 달리는 이유는 작은 간이역을 이용하는 분들의 소중한 발이 되어드리기 위해서입니다.</p>



<p class="wp-block-paragraph">1️⃣ <strong>아이와 함께라면?</strong> : 기차 타기 전후로 시간이 남는다면 근처 홍릉수목원이나 세종대왕기념관에 들러보세요. 아이들과 가벼운 학습 나들이를 즐기기에 안성맞춤입니다.</p>



<p class="wp-block-paragraph">2️⃣ <strong>앞으로가 더 기대되는 청량리역</strong> : 앞으로 GTX 노선이 들어서고 복합환승센터까지 완벽히 갖춰지면, 청량리역은 명실상부한 대한민국 철도 교통의 핵심 중 핵심이 될 전망입니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">청량리<strong>역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">청량리<br>↓<br>서울</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">802호</span><div class="time-display">7:03</div><div class="arrival-info">7:23 도착</div></td><td><span class="train-detail">828호</span><div class="time-display">0:05</div><div class="arrival-info">0:25 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">청량리<br>↓<br>강릉</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">801호</span><div class="time-display">5:27</div><div class="arrival-info">7:03 도착</div></td><td><span class="train-detail">827호</span><div class="time-display">22:34</div><div class="arrival-info">0:05 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">청량리<br>↓<br>동해</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">841호</span><div class="time-display">7:05</div><div class="arrival-info">9:28 도착</div></td><td><span class="train-detail">849호</span><div class="time-display">20:11</div><div class="arrival-info">22:26 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="3" style="border-top:1px solid #ddd;">청량리<br>↓<br>제천</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">701호</span><div class="time-display">5:40</div><div class="arrival-info">6:47 도착</div></td><td><span class="train-detail">717호</span><div class="time-display">21:52</div><div class="arrival-info">23:06 도착</div></td></tr><tr><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">06:38</div><div class="arrival-info">08:14 도착</div></td><td><span class="train-detail">1613호</span><div class="time-display">17:38</div><div class="arrival-info">19:16 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1671호</span><div class="time-display">07:34</div><div class="arrival-info">09:31 도착</div></td><td><span class="train-detail">1661호</span><div class="time-display">22:00</div><div class="arrival-info">23:37 도착</div></td></tr><tr><td class="route-info" rowspan="3" style="border-top:1px solid #ddd;">청량리<br>↓<br>영주</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">701호</span><div class="time-display">5:40</div><div class="arrival-info">7:19 도착</div></td><td><span class="train-detail">717호</span><div class="time-display">21:52</div><div class="arrival-info">23:37 도착</div></td></tr><tr><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">06:38</div><div class="arrival-info">08:55 도착</div></td><td><span class="train-detail">1613호</span><div class="time-display">17:38</div><div class="arrival-info">19:56 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1661호</span><div class="time-display">22:00</div><div class="arrival-info">00:14 도착</div></td><td><span class="train-detail">1661호</span><div class="time-display">22:00</div><div class="arrival-info">00:14 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">청량리<br>↓<br>안동</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">701호</span><div class="time-display">5:40</div><div class="arrival-info">7:34 도착</div></td><td><span class="train-detail">717호</span><div class="time-display">21:52</div><div class="arrival-info">23:51 도착</div></td></tr><tr><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">06:38</div><div class="arrival-info">09:16 도착</div></td><td><span class="train-detail">1613호</span><div class="time-display">17:38</div><div class="arrival-info">20:15 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">청량리<br>↓<br>부전</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">701호</span><div class="time-display">5:40</div><div class="arrival-info">9:24 도착</div></td><td><span class="train-detail">715호</span><div class="time-display">19:00</div><div class="arrival-info">22:54 도착</div></td></tr><tr><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">06:38</div><div class="arrival-info">12:20 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">14:48</div><div class="arrival-info">20:28 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong><strong><strong>청량리</strong></strong></strong>역 </strong>KTX-ITX 무궁화호 <strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>경유지</th><th>운임</th><th>일반</th><th>우등</th></tr></thead><tbody><tr><td>강릉K1</td><td>KTX</td><td class="highlight">서울</td><td class="highlight">청량리</td><td>기본</td><td>0</td><td>8,400</td><td>11,400</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">서울</td><td class="highlight">청량리</td><td>기본</td><td>0</td><td>8,400</td><td>11,400</td></tr><tr><td>강릉K1</td><td>KTX</td><td class="highlight">청량리</td><td class="highlight">강릉</td><td>기본</td><td>0</td><td>26,000</td><td>31,200</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">동해</td><td>-</td><td>19,200</td><td>0</td><td>0</td></tr><tr><td>강릉K1</td><td>KTX</td><td class="highlight">청량리</td><td class="highlight">동해</td><td>기본</td><td>0</td><td>29,700</td><td>35,600</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">제천</td><td>-</td><td>9,200</td><td>0</td><td>0</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">제천</td><td>-</td><td>9,200</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">청량리</td><td class="highlight">제천</td><td>-</td><td>12,700</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">청량리</td><td class="highlight">제천</td><td>기본</td><td>0</td><td>15,400</td><td>18,500</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">영주</td><td>-</td><td>13,200</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">청량리</td><td class="highlight">영주</td><td>-</td><td>18,100</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">청량리</td><td class="highlight">영주</td><td>기본</td><td>0</td><td>23,300</td><td>28,000</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">안동</td><td>-</td><td>15,400</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">청량리</td><td class="highlight">안동</td><td>-</td><td>21,100</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">청량리</td><td class="highlight">안동</td><td>기본</td><td>0</td><td>27,700</td><td>33,200</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">부전</td><td>-</td><td>30,600</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">청량리</td><td class="highlight">부전</td><td>-</td><td>41,700</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">청량리</td><td class="highlight">부전</td><td>기본</td><td>0</td><td>55,400</td><td>66,500</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>청량리역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <a href="https://krailroad.co.kr/%ec%b2%ad%eb%9f%89%eb%a6%ac%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a0%84%ec%b2%b4-%eb%85%b8%ec%84%a0-%ec%99%84/">청량리역 KTX 노선 바로가기</a><br>✅ <s>청량리역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ec%b2%ad%eb%9f%89%eb%a6%ac%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a0%84%ec%b2%b4-%eb%85%b8%ec%84%a0-%ec%99%84/">청량리역 ITX, 무궁화 시간표 바로가기</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>청량리역 KTX <strong><strong><strong>ITX 무궁화 </strong>시간표</strong></strong></strong></h2>



<h3 class="wp-block-heading">출발 : 청량리 → 도착 : 행신</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>청량리</th><th>서울</th><th>행신</th><th>비고</th></tr></thead><tbody><tr><td>826</td><td>KTX-이음</td><td>23:06</td><td>23:31</td><td>23:48</td><td>매일</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 청량리 → 도착 : 서울</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>청량리</th><th>서울</th><th>비고</th></tr></thead><tbody><tr><td>802</td><td>KTX-이음</td><td>7:03</td><td>7:23</td><td>매일</td></tr><tr><td>804</td><td>KTX-이음</td><td>8:11</td><td>8:31</td><td>매일</td></tr><tr><td>806</td><td>KTX-이음</td><td>9:10</td><td>9:30</td><td>매일</td></tr><tr><td>840</td><td>KTX-이음</td><td>9:29</td><td>9:49</td><td>매일</td></tr><tr><td>808</td><td>KTX-이음</td><td>9:59</td><td>10:19</td><td>매일</td></tr><tr><td>810</td><td>KTX-이음</td><td>12:10</td><td>12:29</td><td>매일</td></tr><tr><td>812</td><td>KTX-이음</td><td>13:07</td><td>13:27</td><td>매일</td></tr><tr><td>814</td><td>KTX-이음</td><td>14:13</td><td>14:33</td><td>매일</td></tr><tr><td>844</td><td>KTX-이음</td><td>16:19</td><td>16:39</td><td>매일</td></tr><tr><td>816</td><td>KTX-이음</td><td>17:21</td><td>17:41</td><td>매일</td></tr><tr><td>818</td><td>KTX-이음</td><td>18:24</td><td>18:44</td><td>매일</td></tr><tr><td>820</td><td>KTX-이음</td><td>18:51</td><td>19:13</td><td>매일</td></tr><tr><td>822</td><td>KTX-이음</td><td>20:40</td><td>21:00</td><td>매일</td></tr><tr><td>846</td><td>KTX-이음</td><td>21:29</td><td>21:49</td><td>매일</td></tr><tr><td>824</td><td>KTX-이음</td><td>22:12</td><td>22:32</td><td>매일</td></tr><tr><td>826</td><td>KTX-이음</td><td>23:06</td><td>23:31</td><td>매일</td></tr><tr><td>848</td><td>KTX-이음</td><td>23:52</td><td>0:12</td><td>매일</td></tr><tr><td>828</td><td>KTX-이음</td><td>0:05</td><td>0:25</td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>청량리</th><th>서울</th><th>비고</th></tr></thead><tbody><tr><td>702</td><td>KTX-이음</td><td>8:11</td><td>8:31</td><td>매일</td></tr><tr><td>704</td><td>KTX-이음</td><td>9:59</td><td>10:19</td><td>매일</td></tr><tr><td>708</td><td>KTX-이음</td><td>14:13</td><td>14:33</td><td>매일</td></tr><tr><td>712</td><td>KTX-이음</td><td>17:21</td><td>17:41</td><td>매일</td></tr><tr><td>714</td><td>KTX-이음</td><td>18:51</td><td>19:13</td><td>매일</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 청량리 → 도착 : 제천</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>청량리</th><th>덕소</th><th>양평</th><th>서원주</th><th>원주</th><th>제천</th><th>비고</th></tr></thead><tbody><tr><td>701</td><td>KTX-이음</td><td>5:40</td><td></td><td></td><td></td><td>6:30</td><td>6:47</td><td>매일</td></tr><tr><td>703</td><td>KTX-이음</td><td>6:27</td><td></td><td>6:54</td><td>7:18</td><td>7:24</td><td>7:40</td><td>매일</td></tr><tr><td>705</td><td>KTX-이음</td><td>9:18</td><td></td><td></td><td>10:05</td><td>10:13</td><td>10:30</td><td>매일</td></tr><tr><td>707</td><td>KTX-이음</td><td>11:20</td><td></td><td>11:47</td><td>12:11</td><td>12:18</td><td>12:36</td><td>매일</td></tr><tr><td>709</td><td>KTX-이음</td><td>13:16</td><td></td><td></td><td>14:03</td><td>14:10</td><td>14:27</td><td>매일</td></tr><tr><td>781</td><td>KTX-이음</td><td>13:57</td><td>14:11</td><td></td><td></td><td>14:47</td><td>15:04</td><td>토일</td></tr><tr><td>711</td><td>KTX-이음</td><td>14:40</td><td></td><td>15:07</td><td>15:30</td><td>15:38</td><td>15:56</td><td>매일</td></tr><tr><td>713</td><td>KTX-이음</td><td>16:32</td><td></td><td>16:58</td><td>17:22</td><td>17:30</td><td>17:48</td><td>매일</td></tr><tr><td>715</td><td>KTX-이음</td><td>19:00</td><td></td><td></td><td></td><td>19:49</td><td>20:06</td><td>매일</td></tr><tr><td>717</td><td>KTX-이음</td><td>21:52</td><td></td><td>22:18</td><td>22:42</td><td>22:49</td><td>23:06</td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>청량리</th><th>덕소</th><th>양평</th><th>용문</th><th>지평</th><th>석불</th><th>일신</th><th>매곡</th><th>양동</th><th>삼산</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>06:38</td><td></td><td>07:08</td><td>07:16</td><td>07:21</td><td></td><td></td><td></td><td>07:31</td><td></td><td>07:40</td><td>07:47</td><td>08:05</td><td>08:14</td></tr><tr><td>1671</td><td>무궁화</td><td>07:34</td><td>07:49</td><td>08:08</td><td>08:16</td><td>08:25</td><td>08:30</td><td>08:35</td><td>08:40</td><td>08:44</td><td>08:49</td><td>08:57</td><td>09:05</td><td></td><td>09:31</td></tr><tr><td>1673</td><td>무궁화</td><td>09:51</td><td></td><td>10:21</td><td>10:29</td><td></td><td></td><td></td><td></td><td>10:41</td><td>10:46</td><td>10:53</td><td>11:00</td><td>11:20</td><td>11:30</td></tr><tr><td>1611</td><td>ITX-마음</td><td>10:40</td><td>10:55</td><td>11:13</td><td>11:21</td><td></td><td></td><td></td><td></td><td>11:33</td><td></td><td>11:42</td><td>11:49</td><td></td><td>12:13</td></tr><tr><td>1675</td><td>무궁화</td><td>12:16</td><td>12:31</td><td>12:49</td><td>12:57</td><td>13:07</td><td>13:13</td><td>13:17</td><td>13:22</td><td>13:27</td><td></td><td>13:36</td><td>13:43</td><td></td><td>14:07</td></tr><tr><td>1603</td><td>ITX-마음</td><td>14:48</td><td></td><td>15:18</td><td>15:26</td><td>15:31</td><td></td><td></td><td></td><td>15:46</td><td></td><td>15:56</td><td>16:03</td><td></td><td>16:28</td></tr><tr><td>1641</td><td>ITX-마음</td><td>17:08</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td>18:02</td><td></td><td>18:26</td></tr><tr><td>1613</td><td>ITX-마음</td><td>17:38</td><td>17:53</td><td>18:12</td><td>18:21</td><td></td><td></td><td></td><td></td><td>18:33</td><td></td><td>18:42</td><td>18:51</td><td></td><td>19:16</td></tr><tr><td>1677</td><td>무궁화</td><td>19:10</td><td>19:25</td><td>19:43</td><td>19:51</td><td>20:00</td><td>20:06</td><td>20:10</td><td>20:15</td><td>20:20</td><td></td><td>20:29</td><td>20:36</td><td></td><td>21:01</td></tr><tr><td>1651</td><td>무궁화</td><td>20:32</td><td>20:47</td><td>21:05</td><td>21:13</td><td>21:18</td><td>21:24</td><td>21:28</td><td>21:33</td><td>21:38</td><td>21:43</td><td>21:50</td><td>21:57</td><td>22:16</td><td>22:24</td></tr><tr><td>1661</td><td>무궁화</td><td>22:00</td><td>22:15</td><td>22:33</td><td>22:41</td><td>22:46</td><td></td><td></td><td></td><td>22:56</td><td></td><td>23:05</td><td>23:12</td><td></td><td>23:37</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 청량리 → 도착 : 영주</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>청량리</th><th>덕소</th><th>양평</th><th>서원주</th><th>원주</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>비고</th></tr></thead><tbody><tr><td>701</td><td>KTX-이음</td><td>5:40</td><td></td><td></td><td></td><td>6:30</td><td>6:47</td><td>7:02</td><td></td><td>7:19</td><td>매일</td></tr><tr><td>703</td><td>KTX-이음</td><td>6:27</td><td></td><td>6:54</td><td>7:18</td><td>7:24</td><td>7:40</td><td>7:55</td><td>8:07</td><td>8:16</td><td>매일</td></tr><tr><td>705</td><td>KTX-이음</td><td>9:18</td><td></td><td></td><td>10:05</td><td>10:13</td><td>10:30</td><td></td><td></td><td>10:57</td><td>매일</td></tr><tr><td>707</td><td>KTX-이음</td><td>11:20</td><td></td><td>11:47</td><td>12:11</td><td>12:18</td><td>12:36</td><td>12:50</td><td>13:02</td><td>13:11</td><td>매일</td></tr><tr><td>709</td><td>KTX-이음</td><td>13:16</td><td></td><td></td><td>14:03</td><td>14:10</td><td>14:27</td><td>14:41</td><td></td><td>14:57</td><td>매일</td></tr><tr><td>781</td><td>KTX-이음</td><td>13:57</td><td>14:11</td><td></td><td></td><td>14:47</td><td>15:04</td><td></td><td></td><td>15:31</td><td>토일</td></tr><tr><td>711</td><td>KTX-이음</td><td>14:40</td><td></td><td>15:07</td><td>15:30</td><td>15:38</td><td>15:56</td><td></td><td></td><td>16:22</td><td>매일</td></tr><tr><td>713</td><td>KTX-이음</td><td>16:32</td><td></td><td>16:58</td><td>17:22</td><td>17:30</td><td>17:48</td><td>18:03</td><td>18:14</td><td>18:22</td><td>매일</td></tr><tr><td>715</td><td>KTX-이음</td><td>19:00</td><td></td><td></td><td></td><td>19:49</td><td>20:06</td><td>20:21</td><td>20:32</td><td>20:41</td><td>매일</td></tr><tr><td>717</td><td>KTX-이음</td><td>21:52</td><td></td><td>22:18</td><td>22:42</td><td>22:49</td><td>23:06</td><td></td><td>23:28</td><td>23:37</td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>청량리</th><th>덕소</th><th>양평</th><th>용문</th><th>지평</th><th>양동</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>06:38</td><td></td><td>07:08</td><td>07:16</td><td>07:21</td><td>07:31</td><td>07:40</td><td>07:47</td><td>08:05</td><td>08:14</td><td>08:31</td><td>08:44</td><td>08:55</td></tr><tr><td>1611</td><td>ITX-마음</td><td>10:40</td><td>10:55</td><td>11:13</td><td>11:21</td><td></td><td>11:33</td><td>11:42</td><td>11:49</td><td></td><td>12:13</td><td>12:30</td><td>12:43</td><td>12:53</td></tr><tr><td>1603</td><td>ITX-마음</td><td>14:48</td><td></td><td>15:18</td><td>15:26</td><td>15:31</td><td>15:46</td><td>15:56</td><td>16:03</td><td></td><td>16:28</td><td>16:45</td><td>16:58</td><td>17:10</td></tr><tr><td>1613</td><td>ITX-마음</td><td>17:38</td><td>17:53</td><td>18:12</td><td>18:21</td><td></td><td>18:33</td><td>18:42</td><td>18:51</td><td></td><td>19:16</td><td>19:32</td><td>19:45</td><td>19:56</td></tr><tr><td>1661</td><td>무궁화</td><td>22:00</td><td>22:15</td><td>22:33</td><td>22:41</td><td>22:46</td><td>22:56</td><td>23:05</td><td>23:12</td><td></td><td>23:37</td><td>23:52</td><td>00:05</td><td>00:14</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 청량리 → 도착 : 안동</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>청량리</th><th>덕소</th><th>양평</th><th>서원주</th><th>원주</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th><th>비고</th></tr></thead><tbody><tr><td>701</td><td>KTX-이음</td><td>5:40</td><td></td><td></td><td></td><td>6:30</td><td>6:47</td><td>7:02</td><td></td><td>7:19</td><td>7:34</td><td>매일</td></tr><tr><td>703</td><td>KTX-이음</td><td>6:27</td><td></td><td>6:54</td><td>7:18</td><td>7:24</td><td>7:40</td><td>7:55</td><td>8:07</td><td>8:16</td><td>8:31</td><td>매일</td></tr><tr><td>705</td><td>KTX-이음</td><td>9:18</td><td></td><td></td><td>10:05</td><td>10:13</td><td>10:30</td><td></td><td></td><td>10:57</td><td>11:12</td><td>매일</td></tr><tr><td>707</td><td>KTX-이음</td><td>11:20</td><td></td><td>11:47</td><td>12:11</td><td>12:18</td><td>12:36</td><td>12:50</td><td>13:02</td><td>13:11</td><td>13:26</td><td>매일</td></tr><tr><td>709</td><td>KTX-이음</td><td>13:16</td><td></td><td></td><td>14:03</td><td>14:10</td><td>14:27</td><td>14:41</td><td></td><td>14:57</td><td>15:11</td><td>매일</td></tr><tr><td>781</td><td>KTX-이음</td><td>13:57</td><td>14:11</td><td></td><td></td><td>14:47</td><td>15:04</td><td></td><td></td><td>15:31</td><td>15:46</td><td>토일</td></tr><tr><td>711</td><td>KTX-이음</td><td>14:40</td><td></td><td>15:07</td><td>15:30</td><td>15:38</td><td>15:56</td><td></td><td></td><td>16:22</td><td>16:37</td><td>매일</td></tr><tr><td>713</td><td>KTX-이음</td><td>16:32</td><td></td><td>16:58</td><td>17:22</td><td>17:30</td><td>17:48</td><td>18:03</td><td>18:14</td><td>18:22</td><td>18:38</td><td>매일</td></tr><tr><td>715</td><td>KTX-이음</td><td>19:00</td><td></td><td></td><td></td><td>19:49</td><td>20:06</td><td>20:21</td><td>20:32</td><td>20:41</td><td>20:56</td><td>매일</td></tr><tr><td>717</td><td>KTX-이음</td><td>21:52</td><td></td><td>22:18</td><td>22:42</td><td>22:49</td><td>23:06</td><td></td><td>23:28</td><td>23:37</td><td>23:51</td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>청량리</th><th>덕소</th><th>양평</th><th>용문</th><th>지평</th><th>양동</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>06:38</td><td></td><td>07:08</td><td>07:16</td><td>07:21</td><td>07:31</td><td>07:40</td><td>07:47</td><td>08:05</td><td>08:14</td><td>08:31</td><td>08:44</td><td>08:55</td><td>09:16</td></tr><tr><td>1611</td><td>ITX-마음</td><td>10:40</td><td>10:55</td><td>11:13</td><td>11:21</td><td></td><td>11:33</td><td>11:42</td><td>11:49</td><td></td><td>12:13</td><td>12:30</td><td>12:43</td><td>12:53</td><td>13:13</td></tr><tr><td>1603</td><td>ITX-마음</td><td>14:48</td><td></td><td>15:18</td><td>15:26</td><td>15:31</td><td>15:46</td><td>15:56</td><td>16:03</td><td></td><td>16:28</td><td>16:45</td><td>16:58</td><td>17:10</td><td>17:31</td></tr><tr><td>1613</td><td>ITX-마음</td><td>17:38</td><td>17:53</td><td>18:12</td><td>18:21</td><td></td><td>18:33</td><td>18:42</td><td>18:51</td><td></td><td>19:16</td><td>19:32</td><td>19:45</td><td>19:56</td><td>20:15</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 청량리 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>청량리</th><th>덕소</th><th>양평</th><th>서원주</th><th>원주</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th><th>의성</th><th>영천</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th><th>비고</th></tr></thead><tbody><tr><td>701</td><td>KTX-이음</td><td>5:40</td><td></td><td></td><td></td><td>6:30</td><td>6:47</td><td>7:02</td><td></td><td>7:19</td><td>7:34</td><td></td><td></td><td>8:19</td><td></td><td>8:40</td><td></td><td></td><td></td><td></td><td>9:24</td><td>매일</td></tr><tr><td>703</td><td>KTX-이음</td><td>6:27</td><td></td><td>6:54</td><td>7:18</td><td>7:24</td><td>7:40</td><td>7:55</td><td>8:07</td><td>8:16</td><td>8:31</td><td>8:44</td><td></td><td>9:22</td><td>9:39</td><td>9:48</td><td></td><td></td><td>10:21</td><td></td><td>10:34</td><td>매일</td></tr><tr><td>705</td><td>KTX-이음</td><td>9:18</td><td></td><td></td><td>10:05</td><td>10:13</td><td>10:30</td><td></td><td></td><td>10:57</td><td>11:12</td><td></td><td></td><td>11:57</td><td></td><td>12:18</td><td></td><td></td><td></td><td></td><td>13:01</td><td>매일</td></tr><tr><td>707</td><td>KTX-이음</td><td>11:20</td><td></td><td>11:47</td><td>12:11</td><td>12:18</td><td>12:36</td><td>12:50</td><td>13:02</td><td>13:11</td><td>13:26</td><td></td><td>13:57</td><td>14:16</td><td></td><td>14:39</td><td></td><td></td><td>15:12</td><td></td><td>15:27</td><td>매일</td></tr><tr><td>709</td><td>KTX-이음</td><td>13:16</td><td></td><td></td><td>14:03</td><td>14:10</td><td>14:27</td><td>14:41</td><td></td><td>14:57</td><td>15:11</td><td></td><td></td><td>15:57</td><td></td><td>16:18</td><td></td><td></td><td></td><td></td><td>17:00</td><td>매일</td></tr><tr><td>781</td><td>KTX-이음</td><td>13:57</td><td>14:11</td><td></td><td></td><td>14:47</td><td>15:04</td><td></td><td></td><td>15:31</td><td>15:46</td><td></td><td></td><td>16:31</td><td></td><td>16:52</td><td></td><td></td><td></td><td></td><td>17:35</td><td>토일</td></tr><tr><td>711</td><td>KTX-이음</td><td>14:40</td><td></td><td>15:07</td><td>15:30</td><td>15:38</td><td>15:56</td><td></td><td></td><td>16:22</td><td>16:37</td><td></td><td>17:08</td><td>17:27</td><td>17:44</td><td>17:51</td><td></td><td>18:17</td><td>18:27</td><td></td><td>18:41</td><td>매일</td></tr><tr><td>713</td><td>KTX-이음</td><td>16:32</td><td></td><td>16:58</td><td>17:22</td><td>17:30</td><td>17:48</td><td>18:03</td><td>18:14</td><td>18:22</td><td>18:38</td><td>18:50</td><td></td><td>19:25</td><td></td><td>19:46</td><td>19:59</td><td></td><td></td><td>20:25</td><td>20:36</td><td>매일</td></tr><tr><td>715</td><td>KTX-이음</td><td>19:00</td><td></td><td></td><td></td><td>19:49</td><td>20:06</td><td>20:21</td><td>20:32</td><td>20:41</td><td>20:56</td><td></td><td>21:27</td><td>21:46</td><td></td><td>22:08</td><td></td><td></td><td>22:40</td><td></td><td>22:54</td><td>매일</td></tr><tr><td>717</td><td>KTX-이음</td><td>21:52</td><td></td><td>22:18</td><td>22:42</td><td>22:49</td><td>23:06</td><td></td><td>23:28</td><td>23:37</td><td>23:51</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>청량리</th><th>양평</th><th>용문</th><th>지평</th><th>양동</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th><th>의성</th><th>군위</th><th>영천</th><th>아화</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>06:38</td><td>07:08</td><td>07:16</td><td>07:21</td><td>07:31</td><td>07:40</td><td>07:47</td><td>08:05</td><td>08:14</td><td>08:31</td><td>08:44</td><td>08:55</td><td>09:16</td><td>09:34</td><td>09:52</td><td>10:14</td><td>10:26</td><td>10:43</td><td>11:04</td><td>11:13</td><td>11:30</td><td>11:51</td><td>12:02</td><td>12:10</td><td>12:20</td></tr><tr><td>1603</td><td>ITX-마음</td><td>14:48</td><td>15:18</td><td>15:26</td><td>15:31</td><td>15:46</td><td>15:56</td><td>16:03</td><td></td><td>16:28</td><td>16:45</td><td>16:58</td><td>17:10</td><td>17:31</td><td>17:49</td><td>18:06</td><td>18:27</td><td>18:38</td><td>18:55</td><td>19:15</td><td>19:23</td><td>19:39</td><td>20:00</td><td>20:10</td><td>20:17</td><td>20:28</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 청량리 → 도착 : 강릉-동해</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>청량리</th><th>상봉</th><th>덕소</th><th>양평</th><th>서원주</th><th>만종</th><th>횡성</th><th>둔내</th><th>평창</th><th>진부(오대산)</th><th>강릉</th><th>정동진</th><th>묵호</th><th>동해</th><th>비고</th></tr></thead><tbody><tr><td>801</td><td>KTX-이음</td><td>5:27</td><td>5:33</td><td></td><td></td><td></td><td>6:18</td><td></td><td></td><td>6:39</td><td></td><td>7:03</td><td></td><td></td><td></td><td>매일</td></tr><tr><td>803</td><td>KTX-이음</td><td>6:00</td><td></td><td></td><td>6:27</td><td></td><td>6:51</td><td></td><td>7:06</td><td>7:17</td><td>7:26</td><td>7:44</td><td></td><td></td><td></td><td>매일</td></tr><tr><td>851</td><td>KTX-이음</td><td>6:27</td><td></td><td></td><td>6:54</td><td>7:14</td><td>7:19</td><td></td><td></td><td></td><td></td><td>7:59</td><td></td><td></td><td></td><td>매일</td></tr><tr><td>841</td><td>KTX-이음</td><td>7:05</td><td>7:11</td><td></td><td>7:35</td><td></td><td>7:59</td><td>8:07</td><td></td><td>8:24</td><td>8:33</td><td></td><td>9:00</td><td>9:21</td><td>9:28</td><td>매일</td></tr><tr><td>853</td><td>KTX-이음</td><td>7:52</td><td></td><td></td><td></td><td></td><td>8:39</td><td></td><td></td><td></td><td>9:05</td><td>9:23</td><td></td><td></td><td></td><td>토일</td></tr><tr><td>805</td><td>KTX-이음</td><td>8:19</td><td></td><td></td><td>8:46</td><td></td><td>9:10</td><td>9:19</td><td>9:30</td><td>9:40</td><td></td><td>10:04</td><td></td><td></td><td></td><td>매일</td></tr><tr><td>855</td><td>KTX-이음</td><td>8:52</td><td>8:58</td><td></td><td></td><td></td><td>9:42</td><td>9:50</td><td>10:01</td><td></td><td>10:15</td><td>10:34</td><td></td><td></td><td></td><td>토일</td></tr><tr><td>807</td><td>KTX-이음</td><td>9:18</td><td></td><td></td><td></td><td>10:02</td><td>10:09</td><td>10:18</td><td></td><td></td><td>10:39</td><td>10:58</td><td></td><td></td><td></td><td>매일</td></tr><tr><td>881</td><td>KTX-이음</td><td>9:37</td><td></td><td>9:51</td><td>10:07</td><td>10:27</td><td></td><td></td><td></td><td>10:51</td><td></td><td></td><td>11:24</td><td>11:44</td><td>11:51</td><td>금토일</td></tr><tr><td>809</td><td>KTX-이음</td><td>10:15</td><td>10:21</td><td></td><td>10:45</td><td></td><td>11:08</td><td></td><td>11:24</td><td>11:34</td><td></td><td>11:58</td><td></td><td></td><td></td><td>매일</td></tr><tr><td>843</td><td>KTX-이음</td><td>11:20</td><td></td><td></td><td>11:47</td><td>12:08</td><td></td><td>12:20</td><td></td><td></td><td>12:41</td><td></td><td>13:08</td><td>13:29</td><td>13:36</td><td>매일</td></tr><tr><td>857</td><td>KTX-이음</td><td>12:01</td><td></td><td></td><td></td><td></td><td>12:48</td><td></td><td>13:03</td><td></td><td></td><td>13:33</td><td></td><td></td><td></td><td>금토일</td></tr><tr><td>811</td><td>KTX-이음</td><td>12:31</td><td>12:38</td><td></td><td></td><td></td><td>13:21</td><td>13:30</td><td></td><td>13:47</td><td>13:56</td><td>14:14</td><td></td><td></td><td></td><td>매일</td></tr><tr><td>883</td><td>KTX-이음</td><td>13:03</td><td>13:09</td><td></td><td></td><td></td><td>13:53</td><td></td><td></td><td></td><td></td><td></td><td>14:46</td><td>15:07</td><td>15:14</td><td>금토일</td></tr><tr><td>813</td><td>KTX-이음</td><td>13:16</td><td></td><td></td><td></td><td>14:00</td><td>14:06</td><td>14:15</td><td>14:26</td><td></td><td></td><td>14:56</td><td></td><td></td><td></td><td>매일</td></tr><tr><td>869</td><td>KTX-이음</td><td>13:42</td><td></td><td></td><td>14:09</td><td></td><td>14:32</td><td></td><td></td><td>14:54</td><td></td><td>15:18</td><td></td><td></td><td></td><td>월화수목금</td></tr><tr><td>887</td><td>KTX-이음</td><td>13:42</td><td></td><td></td><td>14:09</td><td></td><td>14:32</td><td></td><td></td><td>14:54</td><td></td><td></td><td>15:27</td><td>15:49</td><td>15:56</td><td>토일</td></tr><tr><td>815</td><td>KTX-이음</td><td>14:15</td><td>14:21</td><td></td><td></td><td></td><td>15:05</td><td>15:14</td><td></td><td>15:30</td><td></td><td>15:54</td><td></td><td></td><td></td><td>매일</td></tr><tr><td>859</td><td>KTX-이음</td><td>14:40</td><td></td><td></td><td>15:07</td><td>15:27</td><td>15:33</td><td></td><td>15:48</td><td></td><td></td><td>16:18</td><td></td><td></td><td></td><td>매일</td></tr><tr><td>861</td><td>KTX-이음</td><td>15:02</td><td></td><td>15:16</td><td>15:32</td><td></td><td>15:55</td><td></td><td></td><td></td><td></td><td>16:35</td><td></td><td></td><td></td><td>금토일</td></tr><tr><td>845</td><td>KTX-이음</td><td>15:23</td><td></td><td></td><td></td><td>16:10</td><td></td><td>16:23</td><td></td><td></td><td>16:44</td><td></td><td>17:11</td><td>17:36</td><td>17:43</td><td>매일</td></tr><tr><td>863</td><td>KTX-이음</td><td>15:52</td><td></td><td></td><td></td><td></td><td>16:40</td><td></td><td></td><td></td><td></td><td>17:20</td><td></td><td></td><td></td><td>금토일</td></tr><tr><td>817</td><td>KTX-이음</td><td>16:32</td><td></td><td></td><td>16:58</td><td>17:19</td><td>17:25</td><td>17:34</td><td>17:45</td><td>17:55</td><td>18:04</td><td>18:22</td><td></td><td></td><td></td><td>매일</td></tr><tr><td>819</td><td>KTX-이음</td><td>17:25</td><td>17:31</td><td></td><td>17:55</td><td></td><td></td><td>18:24</td><td>18:35</td><td>18:45</td><td>18:54</td><td>19:12</td><td></td><td></td><td></td><td>매일</td></tr><tr><td>865</td><td>KTX-이음</td><td>18:05</td><td>18:11</td><td></td><td></td><td>18:51</td><td></td><td></td><td></td><td></td><td>19:20</td><td>19:39</td><td></td><td></td><td></td><td>금토일</td></tr><tr><td>847</td><td>KTX-이음</td><td>18:41</td><td></td><td></td><td></td><td></td><td>19:29</td><td></td><td>19:45</td><td>19:56</td><td></td><td></td><td>20:29</td><td>20:50</td><td>20:57</td><td>매일</td></tr><tr><td>821</td><td>KTX-이음</td><td>19:21</td><td>19:28</td><td></td><td>19:51</td><td></td><td>20:14</td><td>20:23</td><td>20:34</td><td>20:45</td><td></td><td>21:09</td><td></td><td></td><td></td><td>매일</td></tr><tr><td>867</td><td>KTX-이음</td><td>19:55</td><td></td><td></td><td>20:22</td><td></td><td>20:45</td><td></td><td></td><td></td><td>21:10</td><td>21:29</td><td></td><td></td><td></td><td>금토일</td></tr><tr><td>849</td><td>KTX-이음</td><td>20:11</td><td></td><td></td><td></td><td></td><td>20:58</td><td>21:08</td><td></td><td>21:25</td><td></td><td></td><td>21:58</td><td>22:19</td><td>22:26</td><td>매일</td></tr><tr><td>823</td><td>KTX-이음</td><td>20:22</td><td>20:28</td><td></td><td>20:51</td><td></td><td>21:14</td><td></td><td></td><td></td><td>21:39</td><td>21:58</td><td></td><td></td><td></td><td>매일</td></tr><tr><td>871</td><td>KTX-이음</td><td>21:38</td><td></td><td></td><td></td><td></td><td>22:25</td><td></td><td></td><td></td><td></td><td>23:05</td><td></td><td></td><td></td><td>토일</td></tr><tr><td>825</td><td>KTX-이음</td><td>21:52</td><td></td><td></td><td>22:18</td><td>22:39</td><td>22:45</td><td>22:54</td><td>23:05</td><td>23:16</td><td></td><td>23:41</td><td></td><td></td><td></td><td>매일</td></tr><tr><td>827</td><td>KTX-이음</td><td>22:34</td><td></td><td></td><td></td><td></td><td>23:21</td><td></td><td></td><td></td><td>23:47</td><td>0:05</td><td></td><td></td><td></td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차종별</th><th>열차번호</th><th>청량리</th><th>덕소</th><th>양평</th><th>용문</th><th>지평</th><th>석불</th><th>일신</th><th>매곡</th><th>양동</th><th>삼산</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th><th>쌍룡</th><th>영월</th><th>예미</th><th>민둥산</th><th>사북</th><th>고한</th><th>태백</th><th>동백산</th><th>도계</th><th>신기</th><th>동해</th></tr></thead><tbody><tr><td>무궁화</td><td>1671</td><td>07:34</td><td>07:49</td><td>08:08</td><td>08:16</td><td>08:25</td><td>08:30</td><td>08:35</td><td>08:40</td><td>08:44</td><td>08:49</td><td>08:57</td><td>09:05</td><td></td><td>09:31</td><td></td><td>10:05</td><td>10:25</td><td>10:47</td><td>10:56</td><td>11:03</td><td>11:17</td><td>11:29</td><td>11:45</td><td>12:02</td><td>12:25</td></tr><tr><td>무궁화</td><td>1673</td><td>09:51</td><td></td><td>10:21</td><td>10:29</td><td></td><td></td><td></td><td></td><td>10:41</td><td>10:46</td><td>10:53</td><td>11:00</td><td>11:20</td><td>11:30</td><td></td><td>12:01</td><td>12:21</td><td>12:42</td><td>12:51</td><td>12:58</td><td>13:14</td><td>13:25</td><td>13:46</td><td></td><td>14:28</td></tr><tr><td>무궁화</td><td>1675</td><td>12:16</td><td>12:31</td><td>12:49</td><td>12:57</td><td>13:07</td><td>13:13</td><td>13:17</td><td>13:22</td><td>13:27</td><td></td><td>13:36</td><td>13:43</td><td></td><td>14:07</td><td>14:22</td><td>14:40</td><td>15:01</td><td>15:23</td><td>15:32</td><td>15:39</td><td>15:54</td><td>16:05</td><td>16:23</td><td></td><td>17:05</td></tr><tr><td>ITX-마음</td><td>1641</td><td>17:08</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td>18:02</td><td></td><td>18:26</td><td></td><td>18:56</td><td></td><td>19:35</td><td>19:44</td><td></td><td>20:04</td><td></td><td>20:30</td><td></td><td>21:08</td></tr><tr><td>무궁화</td><td>1677</td><td>19:10</td><td>19:25</td><td>19:43</td><td>19:51</td><td>20:00</td><td>20:06</td><td>20:10</td><td>20:15</td><td>20:20</td><td></td><td>20:29</td><td>20:36</td><td></td><td>21:01</td><td></td><td>21:32</td><td>21:52</td><td>22:13</td><td>22:22</td><td>22:29</td><td>22:44</td><td>22:56</td><td>23:12</td><td></td><td>23:50</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>청량리역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '청량리'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">청량리역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">청량리역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '11';
            let curName = '청량리';
            let altCity = '';
            let altName = '';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">청량리역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">17℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">청량리역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%A1%AF%EB%8D%B0%EB%B0%B1%ED%99%94%EC%A0%90+%EC%B2%AD%EB%9F%89%EB%A6%AC%EC%A0%90+%EC%84%9C%EC%9A%B8%ED%8A%B9%EB%B3%84%EC%8B%9C+%EB%8F%99%EB%8C%80%EB%AC%B8%EA%B5%AC+%EC%A0%84%EB%86%8D%EB%8F%99+591-92" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">롯데백화점 청량리점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">쇼핑,유통&gt;백화점</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">서울특별시 동대문구 전농동 591-92</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%8F%85%EB%A6%BD%EB%B0%80%EB%B0%A9+%EC%B2%AD%EB%9F%89%EB%A6%AC+%EC%84%9C%EC%9A%B8%ED%8A%B9%EB%B3%84%EC%8B%9C+%EB%8F%99%EB%8C%80%EB%AC%B8%EA%B5%AC+%EC%A0%84%EB%86%8D%EB%8F%99+547+%EC%B2%AD%EB%9F%89%EB%A6%AC%EC%97%AD%EC%82%AC+3%EC%B8%B5+308%ED%98%B8" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">독립밀방 청량리</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;양식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">서울특별시 동대문구 전농동 547 청량리역사 3층 308호</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%A1%AF%EB%8D%B0%EB%A6%AC%EC%95%84+%EC%B2%AD%EB%9F%89%EB%A6%AC%EC%97%AD%EC%82%AC%EC%A0%90+%EC%84%9C%EC%9A%B8%ED%8A%B9%EB%B3%84%EC%8B%9C+%EB%8F%99%EB%8C%80%EB%AC%B8%EA%B5%AC+%EC%A0%84%EB%86%8D%EB%8F%99+591-92+%EC%B2%AD%EB%9F%89%EB%A6%AC%EC%97%AD%EC%82%AC+3%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">롯데리아 청량리역사점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">양식&gt;햄버거</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">서울특별시 동대문구 전농동 591-92 청량리역사 3층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%95%A0%EB%A8%B8%EB%8B%88%EB%83%89%EB%A9%B4+%EC%84%9C%EC%9A%B8%ED%8A%B9%EB%B3%84%EC%8B%9C+%EB%8F%99%EB%8C%80%EB%AC%B8%EA%B5%AC+%EC%A0%9C%EA%B8%B0%EB%8F%99+469" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">할머니냉면</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;냉면</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">서울특별시 동대문구 제기동 469</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%98%B8%EA%B0%90%ED%95%B4%EC%9E%A5+%EC%84%9C%EC%9A%B8%ED%8A%B9%EB%B3%84%EC%8B%9C+%EB%8F%99%EB%8C%80%EB%AC%B8%EA%B5%AC+%EC%B2%AD%EB%9F%89%EB%A6%AC%EB%8F%99+773+1%EC%B8%B5+%EC%A0%9C+15%ED%98%B8+%ED%98%B8%EA%B0%90%ED%95%B4%EC%9E%A5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">호감해장</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;해장국</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">서울특별시 동대문구 청량리동 773 1층 제 15호 호감해장</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">청량리역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">청량리역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 청량리역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%B2%AD%EB%9F%89%EB%A6%AC%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img fetchpriority="high" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/05/청량리역-기차-시간표-중앙선-강릉선-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="청량리역-기차-시간표-중앙선-강릉선-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-21042" srcset="https://krailroad.co.kr/wp-content/uploads/2026/05/청량리역-기차-시간표-중앙선-강릉선-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/05/청량리역-기차-시간표-중앙선-강릉선-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/05/청량리역-기차-시간표-중앙선-강릉선-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="(max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>덕소역 시간표 요금(KTX ITX-마음 무궁화호) 강릉선, 중앙선 완벽정리</title>
		<link>https://krailroad.co.kr/%eb%8d%95%ec%86%8c%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%9a%94%ea%b8%88ktx-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ea%b0%95%eb%a6%89%ec%84%a0-%ec%a4%91%ec%95%99%ec%84%a0/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Mon, 11 May 2026 01:41:30 +0000</pubDate>
				<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[KTX 시간표]]></category>
		<category><![CDATA[무궁화 시간표]]></category>
		<category><![CDATA[덕소역 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=21005</guid>

					<description><![CDATA[시원한 한강 줄기가 한눈에 들어오는 남양주 덕소역 시간표 실시간 안내 API는 한강변의 여유와 도심의 속도를 동시에 연결하는 지능형 데이터로써, 사실 덕소역은 1939년 중앙선의 보통역으로 첫 영업을 시작한 이곳은 본래 남양주 와부읍 일대의 물류와 여객을 처리하기 위해 개소되었습니다. 이후 수도권 전철화와 사업을 거치며 단순한 시골 역에서 남양주 동남부권의 철도 교통 중심으로 변모하며 지역 경제와 주거 환경에 ... <a title="덕소역 시간표 요금(KTX ITX-마음 무궁화호) 강릉선, 중앙선 완벽정리" class="read-more button" href="https://krailroad.co.kr/%eb%8d%95%ec%86%8c%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%9a%94%ea%b8%88ktx-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ea%b0%95%eb%a6%89%ec%84%a0-%ec%a4%91%ec%95%99%ec%84%a0/" aria-label="덕소역 시간표 요금(KTX ITX-마음 무궁화호) 강릉선, 중앙선 완벽정리 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">시원한 한강 줄기가 한눈에 들어오는 남양주 덕소역 시간표 실시간 안내 API는 한강변의 여유와 도심의 속도를 동시에 연결하는 지능형 데이터로써, 사실 덕소역은 1939년 중앙선의 보통역으로 첫 영업을 시작한 이곳은 본래 남양주 와부읍 일대의 물류와 여객을 처리하기 위해 개소되었습니다. 이후 수도권 전철화와 사업을 거치며 단순한 시골 역에서 남양주 동남부권의 철도 교통 중심으로 변모하며 지역 경제와 주거 환경에 결정적인 영향을 끼치고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">덕소역 시간표 안내</h2>



<h3 class="wp-block-heading">데이터가 제안하는 이동 로직</h3>



<p class="wp-block-paragraph">정지된 정보의 한계를 넘어, 본 시스템은 <a href="https://www.data.go.kr/index.do" target="_blank" rel="noopener">공공데이터</a> API와 60초마다 교신하며 덕소역 시간표상의 열차 위치를 초 단위로 확인하며, 코레일 자료를 데이터베이스화한 DB서버와 실시간으로 동기화되는 로직을 통해 강릉선 KTX와 중앙선 일반 열차의 운행 현황을 오차 없이 파악할 수 있으며, 역 광장의 버스 도착 예보와 주차장 잔여 공간까지 한눈에 확인할 수 있도록 설계하였습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">강릉선과 중앙선의 교차 철길</h3>



<p class="wp-block-paragraph">덕소역 시간표를 살피다 보면 KTX-이음이라는 최신 고속열차와 정겨운 무궁화호가 공존하는 모습을 보게 됩니다. 2022년부터 고속열차가 정차하며 <a href="https://krailroad.co.kr/%ea%b0%95%eb%a6%89%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80%ec%a0%84/">강릉역</a>과 <a href="https://krailroad.co.kr/%ec%95%88%eb%8f%99%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a4%91%ec%95%99%ec%84%a0-%ec%9a%94/">안동역</a> 방면의 <a href="https://krailroad.co.kr/%eb%b6%80%ec%a0%84%ec%97%ad-ktx-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%b2%ad%eb%9f%89%eb%a6%ac%c2%b7%ea%b0%95%eb%a6%89%c2%b7%ec%95%88%eb%8f%99%ed%96%89%ec%86%8d%ec%b4%88-%ed%8f%ac%ed%95%ad-%ec%a4%91/">부전역</a>으로의 접근성이 획기적으로 개선되었습니다. 다만, 모든 열차가 이곳에 서지 않는 이유는 광역전철과 일반 열차가 같은 선로를 공유하는 구간 특성상 선로 용량의 한계가 존재하기 때문입니다. 그럼에도 무궁화호를 여전히 유지하는 까닭은 고속열차가 서지 않는 작은 정거장들을 촘촘하게 잇는 보편적 교통 복지를 제공하기 위해서라고 합니다.</p>



<p class="wp-block-paragraph">1️⃣ <strong>당일치기 가족 나들이</strong> : 역에서 멀지 않은 곳에 한강 시민공원과 다산 생태공원이 위치해 특별한 준비 없이도 아이들과 함께 남한강의 정취를 느끼기 좋습니다.</p>



<p class="wp-block-paragraph">2️⃣ <strong>미래 발전 전망</strong> : 향후 주변 신도시 개발과 연계하여 환승 체계가 더욱 고도화될 예정이며, 수도권 동부의 철도망 효율성을 극대화하는 핵심 축으로 그 역할이 점차 확대될 전망이라고 합니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">덕소<strong>역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="3" style="border-top:1px solid #ddd;">덕소<br>↓<br>청량리</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">886호</span><div class="time-display">17:32</div><div class="arrival-info">17:49 도착</div></td><td><span class="train-detail">870호</span><div class="time-display">21:35</div><div class="arrival-info">21:52 도착</div></td></tr><tr><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1612호</span><div class="time-display">09:34</div><div class="arrival-info">09:47 도착</div></td><td><span class="train-detail">1614호</span><div class="time-display">16:53</div><div class="arrival-info">17:06 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1652호</span><div class="time-display">07:08</div><div class="arrival-info">07:21 도착</div></td><td><span class="train-detail">1678호</span><div class="time-display">22:27</div><div class="arrival-info">22:40 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">덕소<br>↓<br>안동</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">781호</span><div class="time-display">14:11</div><div class="arrival-info">15:46 도착</div></td><td><span class="train-detail">781호</span><div class="time-display">14:11</div><div class="arrival-info">15:46 도착</div></td></tr><tr><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1611호</span><div class="time-display">10:55</div><div class="arrival-info">13:13 도착</div></td><td><span class="train-detail">1613호</span><div class="time-display">17:53</div><div class="arrival-info">20:15 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">덕소<br>↓<br>부전</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">781호</span><div class="time-display">14:11</div><div class="arrival-info">17:35 도착</div></td><td><span class="train-detail">781호</span><div class="time-display">14:11</div><div class="arrival-info">17:35 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">덕소<br>↓<br>태백</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1671호</span><div class="time-display">07:49</div><div class="arrival-info">11:17 도착</div></td><td><span class="train-detail">1677호</span><div class="time-display">19:25</div><div class="arrival-info">22:44 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">덕소<br>↓<br>동해</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">881호</span><div class="time-display">9:51</div><div class="arrival-info">11:51 도착</div></td><td><span class="train-detail">881호</span><div class="time-display">9:51</div><div class="arrival-info">11:51 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1671호</span><div class="time-display">07:49</div><div class="arrival-info">12:25 도착</div></td><td><span class="train-detail">1677호</span><div class="time-display">19:25</div><div class="arrival-info">23:50 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">덕소<br>↓<br>강릉</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">861호</span><div class="time-display">15:16</div><div class="arrival-info">16:35 도착</div></td><td><span class="train-detail">861호</span><div class="time-display">15:16</div><div class="arrival-info">16:35 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong><strong><strong>덕소</strong></strong></strong>역 </strong>KTX-ITX 무궁화호 <strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>경유지</th><th>운임</th><th>일반</th><th>우등</th></tr></thead><tbody><tr><td>강릉K1</td><td>KTX</td><td class="highlight">서울</td><td class="highlight">덕소</td><td>기본</td><td>0</td><td>8,400</td><td>11,400</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">서울</td><td class="highlight">덕소</td><td>기본</td><td>0</td><td>8,400</td><td>11,400</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">덕소</td><td>-</td><td>2,600</td><td>0</td><td>0</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">덕소</td><td>-</td><td>2,600</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">청량리</td><td class="highlight">덕소</td><td>-</td><td>4,800</td><td>0</td><td>0</td></tr><tr><td>강릉K1</td><td>KTX</td><td class="highlight">청량리</td><td class="highlight">덕소</td><td>기본</td><td>0</td><td>8,400</td><td>11,400</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">청량리</td><td class="highlight">덕소</td><td>기본</td><td>0</td><td>8,400</td><td>11,400</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">덕소</td><td class="highlight">경주</td><td>-</td><td>22,700</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">덕소</td><td class="highlight">경주</td><td>-</td><td>29,900</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">덕소</td><td class="highlight">경주</td><td>기본</td><td>0</td><td>41,100</td><td>49,300</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">덕소</td><td class="highlight">태화강</td><td>-</td><td>25,400</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">덕소</td><td class="highlight">태화강</td><td>-</td><td>33,900</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">덕소</td><td class="highlight">태화강</td><td>기본</td><td>0</td><td>47,000</td><td>56,400</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">덕소</td><td class="highlight">부전</td><td>-</td><td>29,500</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">덕소</td><td class="highlight">부전</td><td>-</td><td>40,000</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">덕소</td><td class="highlight">부전</td><td>기본</td><td>0</td><td>53,700</td><td>64,400</td></tr><tr><td>강릉K1</td><td>KTX</td><td class="highlight">덕소</td><td class="highlight">강릉</td><td>기본</td><td>0</td><td>24,200</td><td>29,000</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">덕소</td><td class="highlight">동해</td><td>-</td><td>18,100</td><td>0</td><td>0</td></tr><tr><td>강릉K1</td><td>KTX</td><td class="highlight">덕소</td><td class="highlight">동해</td><td>기본</td><td>0</td><td>27,900</td><td>33,500</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>덕소역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <a href="https://krailroad.co.kr/%eb%8d%95%ec%86%8c%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%9a%94%ea%b8%88ktx-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ea%b0%95%eb%a6%89%ec%84%a0-%ec%a4%91%ec%95%99%ec%84%a0/">덕소역 KTX 노선 바로가기</a><br>✅ <s>덕소역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%eb%8d%95%ec%86%8c%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%9a%94%ea%b8%88ktx-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ea%b0%95%eb%a6%89%ec%84%a0-%ec%a4%91%ec%95%99%ec%84%a0/">덕소역 ITX, 무궁화 시간표 바로가기</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>덕소역 KTX <strong><strong><strong>ITX 무궁화 </strong>시간표</strong></strong></strong></h2>



<h3 class="wp-block-heading">출발 : 덕소 → 도착 : 청량리-서울</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>덕소</th><th>상봉</th><th>청량리</th><th>비고</th></tr></thead><tbody><tr><td>886</td><td>KTX-이음</td><td>17:32</td><td>17:43</td><td>17:49</td><td>금토일</td></tr><tr><td>870</td><td>KTX-이음</td><td>21:35</td><td>21:46</td><td>21:52</td><td>금토일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>덕소</th><th>청량리</th><th>비고</th></tr></thead><tbody><tr><td>782</td><td>KTX-이음</td><td>20:59</td><td>21:13</td><td>토일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>덕소</th><th>청량리</th></tr></thead><tbody><tr><td>1652</td><td>무궁화</td><td>07:08</td><td>07:21</td></tr><tr><td>1662</td><td>무궁화</td><td>08:13</td><td>08:27</td></tr><tr><td>1612</td><td>ITX-마음</td><td>09:34</td><td>09:47</td></tr><tr><td>1672</td><td>무궁화</td><td>10:18</td><td>10:31</td></tr><tr><td>1614</td><td>ITX-마음</td><td>16:53</td><td>17:06</td></tr><tr><td>1674</td><td>무궁화</td><td>18:21</td><td>18:35</td></tr><tr><td>1676</td><td>무궁화</td><td>19:42</td><td>19:55</td></tr><tr><td>1678</td><td>무궁화</td><td>22:27</td><td>22:40</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 덕소 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>덕소</th><th>원주</th><th>제천</th><th>영주</th><th>안동</th><th>경주</th><th>태화강</th><th>부전</th><th>비고</th></tr></thead><tbody><tr><td>781</td><td>KTX-이음</td><td>14:11</td><td>14:47</td><td>15:04</td><td>15:31</td><td>15:46</td><td>16:31</td><td>16:52</td><td>17:35</td><td>토일</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 덕소 → 도착 : 제천</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>덕소</th><th>양평</th><th>용문</th><th>지평</th><th>석불</th><th>일신</th><th>매곡</th><th>양동</th><th>삼산</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th></tr></thead><tbody><tr><td>1671</td><td>무궁화</td><td>07:49</td><td>08:08</td><td>08:16</td><td>08:25</td><td>08:30</td><td>08:35</td><td>08:40</td><td>08:44</td><td>08:49</td><td>08:57</td><td>09:05</td><td></td><td>09:31</td></tr><tr><td>1611</td><td>ITX-마음</td><td>10:55</td><td>11:13</td><td>11:21</td><td></td><td></td><td></td><td></td><td>11:33</td><td></td><td>11:42</td><td>11:49</td><td></td><td>12:13</td></tr><tr><td>1675</td><td>무궁화</td><td>12:31</td><td>12:49</td><td>12:57</td><td>13:07</td><td>13:13</td><td>13:17</td><td>13:22</td><td>13:27</td><td></td><td>13:36</td><td>13:43</td><td></td><td>14:07</td></tr><tr><td>1613</td><td>ITX-마음</td><td>17:53</td><td>18:12</td><td>18:21</td><td></td><td></td><td></td><td></td><td>18:33</td><td></td><td>18:42</td><td>18:51</td><td></td><td>19:16</td></tr><tr><td>1677</td><td>무궁화</td><td>19:25</td><td>19:43</td><td>19:51</td><td>20:00</td><td>20:06</td><td>20:10</td><td>20:15</td><td>20:20</td><td></td><td>20:29</td><td>20:36</td><td></td><td>21:01</td></tr><tr><td>1651</td><td>무궁화</td><td>20:47</td><td>21:05</td><td>21:13</td><td>21:18</td><td>21:24</td><td>21:28</td><td>21:33</td><td>21:38</td><td>21:43</td><td>21:50</td><td>21:57</td><td>22:16</td><td>22:24</td></tr><tr><td>1661</td><td>무궁화</td><td>22:15</td><td>22:33</td><td>22:41</td><td>22:46</td><td></td><td></td><td></td><td>22:56</td><td></td><td>23:05</td><td>23:12</td><td></td><td>23:37</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 덕소 → 도착 : 영주</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>덕소</th><th>양평</th><th>용문</th><th>지평</th><th>양동</th><th>서원주</th><th>원주</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th></tr></thead><tbody><tr><td>1611</td><td>ITX-마음</td><td>10:55</td><td>11:13</td><td>11:21</td><td></td><td>11:33</td><td>11:42</td><td>11:49</td><td>12:13</td><td>12:30</td><td>12:43</td><td>12:53</td></tr><tr><td>1613</td><td>ITX-마음</td><td>17:53</td><td>18:12</td><td>18:21</td><td></td><td>18:33</td><td>18:42</td><td>18:51</td><td>19:16</td><td>19:32</td><td>19:45</td><td>19:56</td></tr><tr><td>1661</td><td>무궁화</td><td>22:15</td><td>22:33</td><td>22:41</td><td>22:46</td><td>22:56</td><td>23:05</td><td>23:12</td><td>23:37</td><td>23:52</td><td>00:05</td><td>00:14</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 덕소 → 도착 : 안동</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>덕소</th><th>원주</th><th>제천</th><th>영주</th><th>안동</th><th>비고</th></tr></thead><tbody><tr><td>781</td><td>KTX-이음</td><td>14:11</td><td>14:47</td><td>15:04</td><td>15:31</td><td>15:46</td><td>토일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>덕소</th><th>양평</th><th>용문</th><th>양동</th><th>서원주</th><th>원주</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th></tr></thead><tbody><tr><td>1611</td><td>ITX-마음</td><td>10:55</td><td>11:13</td><td>11:21</td><td>11:33</td><td>11:42</td><td>11:49</td><td>12:13</td><td>12:30</td><td>12:43</td><td>12:53</td><td>13:13</td></tr><tr><td>1613</td><td>ITX-마음</td><td>17:53</td><td>18:12</td><td>18:21</td><td>18:33</td><td>18:42</td><td>18:51</td><td>19:16</td><td>19:32</td><td>19:45</td><td>19:56</td><td>20:15</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 덕소 → 도착 : 강릉-동해</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>덕소</th><th>양평</th><th>서원주</th><th>만종</th><th>평창</th><th>강릉</th><th>정동진</th><th>묵호</th><th>동해</th><th>비고</th></tr></thead><tbody><tr><td>881</td><td>KTX-이음</td><td>9:51</td><td>10:07</td><td>10:27</td><td></td><td>10:51</td><td></td><td>11:24</td><td>11:44</td><td>11:51</td><td>금토일</td></tr><tr><td>861</td><td>KTX-이음</td><td>15:16</td><td>15:32</td><td></td><td>15:55</td><td></td><td>16:35</td><td></td><td></td><td></td><td>금토일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차종별</th><th>열차번호</th><th>덕소</th><th>양평</th><th>용문</th><th>지평</th><th>석불</th><th>일신</th><th>매곡</th><th>양동</th><th>삼산</th><th>서원주</th><th>원주</th><th>제천</th><th>쌍룡</th><th>영월</th><th>예미</th><th>민둥산</th><th>사북</th><th>고한</th><th>태백</th><th>동백산</th><th>도계</th><th>신기</th><th>동해</th></tr></thead><tbody><tr><td>무궁화</td><td>1671</td><td>07:49</td><td>08:08</td><td>08:16</td><td>08:25</td><td>08:30</td><td>08:35</td><td>08:40</td><td>08:44</td><td>08:49</td><td>08:57</td><td>09:05</td><td>09:31</td><td></td><td>10:05</td><td>10:25</td><td>10:47</td><td>10:56</td><td>11:03</td><td>11:17</td><td>11:29</td><td>11:45</td><td>12:02</td><td>12:25</td></tr><tr><td>무궁화</td><td>1675</td><td>12:31</td><td>12:49</td><td>12:57</td><td>13:07</td><td>13:13</td><td>13:17</td><td>13:22</td><td>13:27</td><td></td><td>13:36</td><td>13:43</td><td>14:07</td><td>14:22</td><td>14:40</td><td>15:01</td><td>15:23</td><td>15:32</td><td>15:39</td><td>15:54</td><td>16:05</td><td>16:23</td><td></td><td>17:05</td></tr><tr><td>무궁화</td><td>1677</td><td>19:25</td><td>19:43</td><td>19:51</td><td>20:00</td><td>20:06</td><td>20:10</td><td>20:15</td><td>20:20</td><td></td><td>20:29</td><td>20:36</td><td>21:01</td><td></td><td>21:32</td><td>21:52</td><td>22:13</td><td>22:22</td><td>22:29</td><td>22:44</td><td>22:56</td><td>23:12</td><td></td><td>23:50</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>덕소역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '덕소'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">덕소역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">덕소역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '31130';
            let curName = '덕소';
            let altCity = '';
            let altName = '';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">덕소역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">16℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">덕소역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%A7%A5%EB%8F%84%EB%82%A0%EB%93%9C+%EB%8D%95%EC%86%8C%EC%A0%90+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EB%82%A8%EC%96%91%EC%A3%BC%EC%8B%9C+%EC%99%80%EB%B6%80%EC%9D%8D+%EB%8D%95%EC%86%8C%EB%A6%AC+474-5+%ED%9D%AC+%EB%B9%8C%EB%94%A9" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">맥도날드 덕소점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">양식&gt;햄버거</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 남양주시 와부읍 덕소리 474-5 희 빌딩</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%8C%8C%EB%A6%AC%EB%B0%94%EA%B2%8C%EB%9C%A8+%EB%8D%95%EC%86%8C%EC%A0%90+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EB%82%A8%EC%96%91%EC%A3%BC%EC%8B%9C+%EC%99%80%EB%B6%80%EC%9D%8D+%EB%8D%95%EC%86%8C%EB%A6%AC+474-4+1%EC%B8%B5+%ED%8C%8C%EB%A6%AC%EB%B0%94%EA%B2%8C%EB%9C%A8" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">파리바게뜨 덕소점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;베이커리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 남양주시 와부읍 덕소리 474-4 1층 파리바게뜨</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%B0%B0%EC%8A%A4%ED%82%A8%EB%9D%BC%EB%B9%88%EC%8A%A4+%EB%82%A8%EC%96%91%EC%A3%BC%EB%8D%95%EC%86%8C+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EB%82%A8%EC%96%91%EC%A3%BC%EC%8B%9C+%EC%99%80%EB%B6%80%EC%9D%8D+%EB%8D%95%EC%86%8C%EB%A6%AC+473-2" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">배스킨라빈스 남양주덕소</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;아이스크림</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 남양주시 와부읍 덕소리 473-2</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%A9%94%EA%B0%80MGC%EC%BB%A4%ED%94%BC+%EB%8D%95%EC%86%8C%EC%82%BC%EA%B1%B0%EB%A6%AC%EC%A0%90+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EB%82%A8%EC%96%91%EC%A3%BC%EC%8B%9C+%EC%99%80%EB%B6%80%EC%9D%8D+%EB%8D%95%EC%86%8C%EB%A6%AC+474-28" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">메가MGC커피 덕소삼거리점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;카페</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 남양주시 와부읍 덕소리 474-28</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%8F%84%EB%A7%88%EB%8B%A4%EB%A6%AC%EB%BC%88%EB%8B%A4%EA%B7%80%EC%A0%84%EB%AC%B8%EC%A0%90+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EB%82%A8%EC%96%91%EC%A3%BC%EC%8B%9C+%EC%99%80%EB%B6%80%EC%9D%8D+%EB%8D%95%EC%86%8C%EB%A6%AC+600-14+%EC%84%B8%EC%96%91%EB%B9%8C%EB%94%A9" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">도마다리뼈다귀전문점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;감자탕</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 남양주시 와부읍 덕소리 600-14 세양빌딩</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">덕소역 실시간 주차장 요금</h4>
        
                    <div class="parking-list-container">
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 덕소역                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">600원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">300원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">7,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 경기도 남양주시 와부읍 덕소리 590-17<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 031-523-2353                        </div>
                    </div>
                            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">덕소역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 경기도 남양주시 와부읍 덕소리 590-17</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:031-523-2353" style="color: #0052a4; font-weight: bold; text-decoration: none;">031-523-2353</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EB%8D%95%EC%86%8C%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/05/덕소역-시간표-KTX-ITX-마음-무궁화호-서울-청량리-부전-강릉-동해-강릉선-중앙선-기차-첫기차-마지막기차-요금-정차역.jpg" alt="덕소역-시간표-KTX-ITX-마음-무궁화호-서울-청량리-부전-강릉-동해-강릉선-중앙선-기차-첫기차-마지막기차-요금-정차역" class="wp-image-21016" srcset="https://krailroad.co.kr/wp-content/uploads/2026/05/덕소역-시간표-KTX-ITX-마음-무궁화호-서울-청량리-부전-강릉-동해-강릉선-중앙선-기차-첫기차-마지막기차-요금-정차역.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/05/덕소역-시간표-KTX-ITX-마음-무궁화호-서울-청량리-부전-강릉-동해-강릉선-중앙선-기차-첫기차-마지막기차-요금-정차역-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/05/덕소역-시간표-KTX-ITX-마음-무궁화호-서울-청량리-부전-강릉-동해-강릉선-중앙선-기차-첫기차-마지막기차-요금-정차역-150x150.jpg 150w" sizes="(max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>양평역 기차 시간표(KTX ITX-마음 무궁화호) 서울-부전-강릉 중앙/강릉선</title>
		<link>https://krailroad.co.kr/%ec%96%91%ed%8f%89%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94-%ec%84%9c%ec%9a%b8-%eb%b6%80%ec%a0%84-%ea%b0%95%eb%a6%89-%ec%a4%91/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Sat, 09 May 2026 00:07:25 +0000</pubDate>
				<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[KTX 시간표]]></category>
		<category><![CDATA[무궁화 시간표]]></category>
		<category><![CDATA[양평역 기차 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=20960</guid>

					<description><![CDATA[남한강의 수려한 풍광이 펼쳐지는 경기 동부의 중심, 양평역 기차 시간표 안내 로직은 수도권과 강원, 영남권을 관통하는 철도 인프라의 핵심적인 지표로써 이곳은 KTX-이음과 같은 고속열차부터 무궁화호, ITX-마음, 그리고 경의중앙선 전철까지 한 승강장에서 만나는 독특한 환승 체계를 갖추고 있으며, 이는 단순한 정거장을 넘어 지역 경제와 관광을 잇는 결정적인 가교 역할을 하고 있습니다. 양평역 기차 시간표 안내 실시간 ... <a title="양평역 기차 시간표(KTX ITX-마음 무궁화호) 서울-부전-강릉 중앙/강릉선" class="read-more button" href="https://krailroad.co.kr/%ec%96%91%ed%8f%89%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94-%ec%84%9c%ec%9a%b8-%eb%b6%80%ec%a0%84-%ea%b0%95%eb%a6%89-%ec%a4%91/" aria-label="양평역 기차 시간표(KTX ITX-마음 무궁화호) 서울-부전-강릉 중앙/강릉선 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">남한강의 수려한 풍광이 펼쳐지는 경기 동부의 중심, 양평역 기차 시간표 안내 로직은 수도권과 강원, 영남권을 관통하는 철도 인프라의 핵심적인 지표로써 이곳은 KTX-이음과 같은 고속열차부터 무궁화호, ITX-마음, 그리고 경의중앙선 전철까지 한 승강장에서 만나는 독특한 환승 체계를 갖추고 있으며, 이는 단순한 정거장을 넘어 지역 경제와 관광을 잇는 결정적인 가교 역할을 하고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">양평역 기차 시간표 안내</h2>



<h3 class="wp-block-heading">실시간 데이터 로직</h3>



<p class="wp-block-paragraph">기존 블로그들의 양평역 기차 시간표의 틀을 벗어나, 아래 시간표는 살아있는 데이터를 기반으로 이용자의 편리함과 정확성을 위해 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a> 공식 데이터베이스와 공공 API를 통해 1분 단위로 정보를 갱신하며, 선로 위 열차의 실시간 위치를 초 단위로 갱신하여 더욱더 정확한 시간표를 제공하기 위해 제작하였습니다. 실제로 저 또한 기차를 이용할때 신뢰를 위해 역내 전광판과 제가 제작한 로직과 비교하여 실시간 분석한 결과 오차가 거의 없었으니 믿고 이용하시면 됩니다.</p>



<p class="wp-block-paragraph">1️⃣ <strong>음성 기반 안내 로직</strong> : 대합실에서 책을 보거나 카페에서 커피 한잔하며 여유를 즐기다 보면 기차 시간을 놓칠까 봐 자꾸 시계를 보게 되죠? 아래 시간표는 열차 도착 15분 전부터 안내 방송이 자동으로 나오며, 방송 소리가 들릴 때 느긋하게 승강장으로 이동하시면 기차를 타실 수 있습니다.</p>



<p class="wp-block-paragraph">2️⃣ <strong>환경 연동 서비스</strong> : 역 주변 주차장이 얼마나 비어 있는지, 요금은 얼마인지 실시간으로 확인할 수 있으며, 특히 오늘 날씨에 딱 어울리는 근처 맛집이나 구경거리까지 추천해 드리고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">양평역 축의 노선 연결</h3>



<p class="wp-block-paragraph">양평역 기차 시간표를 이용한 기차 이용은 서울 청량리를 시작으로 <a href="https://krailroad.co.kr/%ea%b0%95%eb%a6%89%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80%ec%a0%84/">강릉역</a>, <a href="https://krailroad.co.kr/%eb%8f%99%ed%95%b4%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%eb%ac%b4%eb%a6%89%ea%b3%84%ea%b3%a1-%eb%a7%9d/">동해역</a>으로 향하는 영동선·태백선 계통은 물론, <a href="https://krailroad.co.kr/%ec%95%88%eb%8f%99%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a4%91%ec%95%99%ec%84%a0-%ec%9a%94/">안동역</a>과 <a href="https://krailroad.co.kr/%eb%b6%80%ec%a0%84%ec%97%ad-ktx-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%b2%ad%eb%9f%89%eb%a6%ac%c2%b7%ea%b0%95%eb%a6%89%c2%b7%ec%95%88%eb%8f%99%ed%96%89%ec%86%8d%ec%b4%88-%ed%8f%ac%ed%95%ad-%ec%a4%91/">부전역</a>으로 이어지는 중앙선 본선이 이 역에서 교차하기에 여러 방면으로 열차를 이용할 수 있습니다.</p>



<p class="wp-block-paragraph">1️⃣ <strong>서울에서 딱 20분</strong> : 서울 도심에서 양평역 기차 시간표 KTX를 타면 20분대에 도착하며, 이 정도면 동네 마실 가듯 가볍게 양평의 여유를 누릴 수 있는 수준입니다.</p>



<p class="wp-block-paragraph">2️⃣ <strong>가벼운 발걸음으로 즐기는 명소</strong> : 역 광장에서 걸어갈 수 있는 전통시장과 근처 두물머리, 세미원은 가족들과 함께 남한강 정취를 느끼며 쉬어 가기에 딱 좋은 곳입니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">양평<strong>역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="3" style="border-top:1px solid #ddd;">양평<br>↓<br>청량리</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">802호</span><div class="time-display">6:36</div><div class="arrival-info">7:03 도착</div></td><td><span class="train-detail">848호</span><div class="time-display">23:23</div><div class="arrival-info">23:52 도착</div></td></tr><tr><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1612호</span><div class="time-display">09:16</div><div class="arrival-info">09:47 도착</div></td><td><span class="train-detail">1604호</span><div class="time-display">20:29</div><div class="arrival-info">20:56 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1652호</span><div class="time-display">06:51</div><div class="arrival-info">07:21 도착</div></td><td><span class="train-detail">1678호</span><div class="time-display">22:10</div><div class="arrival-info">22:40 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">양평<br>↓<br>서울</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">802호</span><div class="time-display">6:36</div><div class="arrival-info">7:23 도착</div></td><td><span class="train-detail">848호</span><div class="time-display">23:23</div><div class="arrival-info">0:12 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">양평<br>↓<br>안동</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">703호</span><div class="time-display">6:54</div><div class="arrival-info">8:31 도착</div></td><td><span class="train-detail">717호</span><div class="time-display">22:18</div><div class="arrival-info">23:51 도착</div></td></tr><tr><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">07:08</div><div class="arrival-info">09:16 도착</div></td><td><span class="train-detail">1613호</span><div class="time-display">18:12</div><div class="arrival-info">20:15 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">양평<br>↓<br>부전</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">703호</span><div class="time-display">6:54</div><div class="arrival-info">10:34 도착</div></td><td><span class="train-detail">713호</span><div class="time-display">16:58</div><div class="arrival-info">20:36 도착</div></td></tr><tr><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">07:08</div><div class="arrival-info">12:20 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">15:18</div><div class="arrival-info">20:28 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">양평<br>↓<br>태백</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1671호</span><div class="time-display">08:08</div><div class="arrival-info">11:17 도착</div></td><td><span class="train-detail">1677호</span><div class="time-display">19:43</div><div class="arrival-info">22:44 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">양평<br>↓<br>동해</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">841호</span><div class="time-display">7:35</div><div class="arrival-info">9:28 도착</div></td><td><span class="train-detail">887호</span><div class="time-display">14:09</div><div class="arrival-info">15:56 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1671호</span><div class="time-display">08:08</div><div class="arrival-info">12:25 도착</div></td><td><span class="train-detail">1677호</span><div class="time-display">19:43</div><div class="arrival-info">23:50 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">양평<br>↓<br>강릉</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">803호</span><div class="time-display">6:27</div><div class="arrival-info">7:44 도착</div></td><td><span class="train-detail">825호</span><div class="time-display">22:18</div><div class="arrival-info">23:41 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong><strong><strong>양평</strong></strong></strong>역 </strong>KTX-ITX 무궁화호 <strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>경유지</th><th>운임</th><th>일반</th><th>우등</th></tr></thead><tbody><tr><td>강릉K1</td><td>KTX</td><td class="highlight">서울</td><td class="highlight">양평</td><td>기본</td><td>0</td><td>8,400</td><td>11,400</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">서울</td><td class="highlight">양평</td><td>기본</td><td>0</td><td>8,400</td><td>11,400</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">양평</td><td>-</td><td>3,100</td><td>0</td><td>0</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">양평</td><td>-</td><td>3,100</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">청량리</td><td class="highlight">양평</td><td>-</td><td>4,800</td><td>0</td><td>0</td></tr><tr><td>강릉K1</td><td>KTX</td><td class="highlight">청량리</td><td class="highlight">양평</td><td>기본</td><td>0</td><td>8,400</td><td>11,400</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">청량리</td><td class="highlight">양평</td><td>기본</td><td>0</td><td>8,400</td><td>11,400</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">양평</td><td class="highlight">경주</td><td>-</td><td>20,700</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">양평</td><td class="highlight">경주</td><td>-</td><td>26,900</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">양평</td><td class="highlight">경주</td><td>기본</td><td>0</td><td>38,000</td><td>45,600</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">양평</td><td class="highlight">태화강</td><td>-</td><td>23,400</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">양평</td><td class="highlight">태화강</td><td>-</td><td>31,000</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">양평</td><td class="highlight">태화강</td><td>기본</td><td>0</td><td>43,900</td><td>52,700</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">양평</td><td class="highlight">부전</td><td>-</td><td>27,500</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">양평</td><td class="highlight">부전</td><td>-</td><td>37,100</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">양평</td><td class="highlight">부전</td><td>기본</td><td>0</td><td>50,500</td><td>60,600</td></tr><tr><td>강릉K1</td><td>KTX</td><td class="highlight">양평</td><td class="highlight">강릉</td><td>기본</td><td>0</td><td>21,000</td><td>25,200</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">양평</td><td class="highlight">동해</td><td>-</td><td>16,100</td><td>0</td><td>0</td></tr><tr><td>강릉K1</td><td>KTX</td><td class="highlight">양평</td><td class="highlight">동해</td><td>기본</td><td>0</td><td>24,700</td><td>29,600</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>양평역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <a href="https://krailroad.co.kr/%ec%96%91%ed%8f%89%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94-%ec%84%9c%ec%9a%b8-%eb%b6%80%ec%a0%84-%ea%b0%95%eb%a6%89-%ec%a4%91/">양평역 KTX 노선 바로가기</a><br>✅ <s>양평역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ec%96%91%ed%8f%89%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94-%ec%84%9c%ec%9a%b8-%eb%b6%80%ec%a0%84-%ea%b0%95%eb%a6%89-%ec%a4%91/">양평역 ITX, 무궁화 시간표 바로가기</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>양평역 KTX <strong><strong><strong>ITX 무궁화 </strong>시간표</strong></strong></strong></h2>



<h3 class="wp-block-heading">출발 : 양평 → 도착 : 청량리-서울</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>양평</th><th>상봉</th><th>청량리</th><th>서울</th><th>비고</th></tr></thead><tbody><tr><td>802</td><td>KTX-이음</td><td>6:36</td><td></td><td>7:03</td><td>7:23</td><td>매일</td></tr><tr><td>804</td><td>KTX-이음</td><td>7:42</td><td></td><td>8:11</td><td>8:31</td><td>매일</td></tr><tr><td>806</td><td>KTX-이음</td><td>8:43</td><td></td><td>9:10</td><td>9:30</td><td>매일</td></tr><tr><td>840</td><td>KTX-이음</td><td>8:58</td><td>9:22</td><td>9:29</td><td>9:49</td><td>매일</td></tr><tr><td>842</td><td>KTX-이음</td><td>11:53</td><td>12:17</td><td>12:23</td><td></td><td>매일</td></tr><tr><td>858</td><td>KTX-이음</td><td>12:06</td><td>12:30</td><td>12:36</td><td></td><td>토일</td></tr><tr><td>812</td><td>KTX-이음</td><td>12:40</td><td></td><td>13:07</td><td>13:27</td><td>매일</td></tr><tr><td>814</td><td>KTX-이음</td><td>13:45</td><td></td><td>14:13</td><td>14:33</td><td>매일</td></tr><tr><td>860</td><td>KTX-이음</td><td>15:00</td><td>15:23</td><td>15:29</td><td></td><td>금토일</td></tr><tr><td>844</td><td>KTX-이음</td><td>15:51</td><td></td><td>16:19</td><td>16:39</td><td>매일</td></tr><tr><td>820</td><td>KTX-이음</td><td>18:23</td><td></td><td>18:51</td><td>19:13</td><td>매일</td></tr><tr><td>866</td><td>KTX-이음</td><td>19:05</td><td></td><td>19:31</td><td></td><td>금토일</td></tr><tr><td>822</td><td>KTX-이음</td><td>20:09</td><td>20:33</td><td>20:40</td><td>21:00</td><td>매일</td></tr><tr><td>846</td><td>KTX-이음</td><td>20:58</td><td>21:22</td><td>21:29</td><td>21:49</td><td>매일</td></tr><tr><td>824</td><td>KTX-이음</td><td>21:41</td><td>22:05</td><td>22:12</td><td>22:32</td><td>매일</td></tr><tr><td>848</td><td>KTX-이음</td><td>23:23</td><td></td><td>23:52</td><td>0:12</td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>양평</th><th>상봉</th><th>청량리</th><th>서울</th><th>비고</th></tr></thead><tbody><tr><td>702</td><td>KTX-이음</td><td>7:42</td><td></td><td>8:11</td><td>8:31</td><td>매일</td></tr><tr><td>708</td><td>KTX-이음</td><td>13:45</td><td></td><td>14:13</td><td>14:33</td><td>매일</td></tr><tr><td>710</td><td>KTX-이음</td><td>15:34</td><td>15:58</td><td>16:04</td><td></td><td>매일</td></tr><tr><td>714</td><td>KTX-이음</td><td>18:23</td><td></td><td>18:51</td><td>19:13</td><td>매일</td></tr><tr><td>718</td><td>KTX-이음</td><td>22:29</td><td>22:52</td><td>22:58</td><td></td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>양평</th><th>덕소</th><th>청량리</th></tr></thead><tbody><tr><td>1652</td><td>무궁화</td><td>06:51</td><td>07:08</td><td>07:21</td></tr><tr><td>1662</td><td>무궁화</td><td>07:56</td><td>08:13</td><td>08:27</td></tr><tr><td>1612</td><td>ITX-마음</td><td>09:16</td><td>09:34</td><td>09:47</td></tr><tr><td>1672</td><td>무궁화</td><td>10:01</td><td>10:18</td><td>10:31</td></tr><tr><td>1602</td><td>ITX-마음</td><td>12:29</td><td></td><td>12:56</td></tr><tr><td>1614</td><td>ITX-마음</td><td>16:36</td><td>16:53</td><td>17:06</td></tr><tr><td>1674</td><td>무궁화</td><td>18:04</td><td>18:21</td><td>18:35</td></tr><tr><td>1676</td><td>무궁화</td><td>19:25</td><td>19:42</td><td>19:55</td></tr><tr><td>1604</td><td>ITX-마음</td><td>20:29</td><td></td><td>20:56</td></tr><tr><td>1678</td><td>무궁화</td><td>22:10</td><td>22:27</td><td>22:40</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 양평 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>양평</th><th>서원주</th><th>원주</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th><th>의성</th><th>영천</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th><th>비고</th></tr></thead><tbody><tr><td>703</td><td>KTX-이음</td><td>6:54</td><td>7:18</td><td>7:24</td><td>7:40</td><td>7:55</td><td>8:07</td><td>8:16</td><td>8:31</td><td>8:44</td><td></td><td>9:22</td><td>9:39</td><td>9:48</td><td></td><td></td><td>10:21</td><td></td><td>10:34</td><td>매일</td></tr><tr><td>707</td><td>KTX-이음</td><td>11:47</td><td>12:11</td><td>12:18</td><td>12:36</td><td>12:50</td><td>13:02</td><td>13:11</td><td>13:26</td><td></td><td>13:57</td><td>14:16</td><td></td><td>14:39</td><td></td><td></td><td>15:12</td><td></td><td>15:27</td><td>매일</td></tr><tr><td>711</td><td>KTX-이음</td><td>15:07</td><td>15:30</td><td>15:38</td><td>15:56</td><td></td><td></td><td>16:22</td><td>16:37</td><td></td><td>17:08</td><td>17:27</td><td>17:44</td><td>17:51</td><td></td><td>18:17</td><td>18:27</td><td></td><td>18:41</td><td>매일</td></tr><tr><td>713</td><td>KTX-이음</td><td>16:58</td><td>17:22</td><td>17:30</td><td>17:48</td><td>18:03</td><td>18:14</td><td>18:22</td><td>18:38</td><td>18:50</td><td></td><td>19:25</td><td></td><td>19:46</td><td>19:59</td><td></td><td></td><td>20:25</td><td>20:36</td><td>매일</td></tr><tr><td>717</td><td>KTX-이음</td><td>22:18</td><td>22:42</td><td>22:49</td><td>23:06</td><td></td><td>23:28</td><td>23:37</td><td>23:51</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>양평</th><th>용문</th><th>지평</th><th>양동</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th><th>의성</th><th>군위</th><th>영천</th><th>아화</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>07:08</td><td>07:16</td><td>07:21</td><td>07:31</td><td>07:40</td><td>07:47</td><td>08:05</td><td>08:14</td><td>08:31</td><td>08:44</td><td>08:55</td><td>09:16</td><td>09:34</td><td>09:52</td><td>10:14</td><td>10:26</td><td>10:43</td><td>11:04</td><td>11:13</td><td>11:30</td><td>11:51</td><td>12:02</td><td>12:10</td><td>12:20</td></tr><tr><td>1603</td><td>ITX-마음</td><td>15:18</td><td>15:26</td><td>15:31</td><td>15:46</td><td>15:56</td><td>16:03</td><td></td><td>16:28</td><td>16:45</td><td>16:58</td><td>17:10</td><td>17:31</td><td>17:49</td><td>18:06</td><td>18:27</td><td>18:38</td><td>18:55</td><td>19:15</td><td>19:23</td><td>19:39</td><td>20:00</td><td>20:10</td><td>20:17</td><td>20:28</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 양평 → 도착 : 제천</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>양평</th><th>용문</th><th>지평</th><th>석불</th><th>일신</th><th>매곡</th><th>양동</th><th>삼산</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>07:08</td><td>07:16</td><td>07:21</td><td></td><td></td><td></td><td>07:31</td><td></td><td>07:40</td><td>07:47</td><td>08:05</td><td>08:14</td></tr><tr><td>1671</td><td>무궁화</td><td>08:08</td><td>08:16</td><td>08:25</td><td>08:30</td><td>08:35</td><td>08:40</td><td>08:44</td><td>08:49</td><td>08:57</td><td>09:05</td><td></td><td>09:31</td></tr><tr><td>1673</td><td>무궁화</td><td>10:21</td><td>10:29</td><td></td><td></td><td></td><td></td><td>10:41</td><td>10:46</td><td>10:53</td><td>11:00</td><td>11:20</td><td>11:30</td></tr><tr><td>1611</td><td>ITX-마음</td><td>11:13</td><td>11:21</td><td></td><td></td><td></td><td></td><td>11:33</td><td></td><td>11:42</td><td>11:49</td><td></td><td>12:13</td></tr><tr><td>1675</td><td>무궁화</td><td>12:49</td><td>12:57</td><td>13:07</td><td>13:13</td><td>13:17</td><td>13:22</td><td>13:27</td><td></td><td>13:36</td><td>13:43</td><td></td><td>14:07</td></tr><tr><td>1603</td><td>ITX-마음</td><td>15:18</td><td>15:26</td><td>15:31</td><td></td><td></td><td></td><td>15:46</td><td></td><td>15:56</td><td>16:03</td><td></td><td>16:28</td></tr><tr><td>1613</td><td>ITX-마음</td><td>18:12</td><td>18:21</td><td></td><td></td><td></td><td></td><td>18:33</td><td></td><td>18:42</td><td>18:51</td><td></td><td>19:16</td></tr><tr><td>1677</td><td>무궁화</td><td>19:43</td><td>19:51</td><td>20:00</td><td>20:06</td><td>20:10</td><td>20:15</td><td>20:20</td><td></td><td>20:29</td><td>20:36</td><td></td><td>21:01</td></tr><tr><td>1651</td><td>무궁화</td><td>21:05</td><td>21:13</td><td>21:18</td><td>21:24</td><td>21:28</td><td>21:33</td><td>21:38</td><td>21:43</td><td>21:50</td><td>21:57</td><td>22:16</td><td>22:24</td></tr><tr><td>1661</td><td>무궁화</td><td>22:33</td><td>22:41</td><td>22:46</td><td></td><td></td><td></td><td>22:56</td><td></td><td>23:05</td><td>23:12</td><td></td><td>23:37</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 양평 → 도착 : 영주</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>양평</th><th>용문</th><th>지평</th><th>양동</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>07:08</td><td>07:16</td><td>07:21</td><td>07:31</td><td>07:40</td><td>07:47</td><td>08:05</td><td>08:14</td><td>08:31</td><td>08:44</td><td>08:55</td></tr><tr><td>1611</td><td>ITX-마음</td><td>11:13</td><td>11:21</td><td></td><td>11:33</td><td>11:42</td><td>11:49</td><td></td><td>12:13</td><td>12:30</td><td>12:43</td><td>12:53</td></tr><tr><td>1603</td><td>ITX-마음</td><td>15:18</td><td>15:26</td><td>15:31</td><td>15:46</td><td>15:56</td><td>16:03</td><td></td><td>16:28</td><td>16:45</td><td>16:58</td><td>17:10</td></tr><tr><td>1613</td><td>ITX-마음</td><td>18:12</td><td>18:21</td><td></td><td>18:33</td><td>18:42</td><td>18:51</td><td></td><td>19:16</td><td>19:32</td><td>19:45</td><td>19:56</td></tr><tr><td>1661</td><td>무궁화</td><td>22:33</td><td>22:41</td><td>22:46</td><td>22:56</td><td>23:05</td><td>23:12</td><td></td><td>23:37</td><td>23:52</td><td>00:05</td><td>00:14</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 양평 → 도착 : 안동</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>양평</th><th>서원주</th><th>원주</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th><th>비고</th></tr></thead><tbody><tr><td>703</td><td>KTX-이음</td><td>6:54</td><td>7:18</td><td>7:24</td><td>7:40</td><td>7:55</td><td>8:07</td><td>8:16</td><td>8:31</td><td>매일</td></tr><tr><td>707</td><td>KTX-이음</td><td>11:47</td><td>12:11</td><td>12:18</td><td>12:36</td><td>12:50</td><td>13:02</td><td>13:11</td><td>13:26</td><td>매일</td></tr><tr><td>711</td><td>KTX-이음</td><td>15:07</td><td>15:30</td><td>15:38</td><td>15:56</td><td></td><td></td><td>16:22</td><td>16:37</td><td>매일</td></tr><tr><td>713</td><td>KTX-이음</td><td>16:58</td><td>17:22</td><td>17:30</td><td>17:48</td><td>18:03</td><td>18:14</td><td>18:22</td><td>18:38</td><td>매일</td></tr><tr><td>717</td><td>KTX-이음</td><td>22:18</td><td>22:42</td><td>22:49</td><td>23:06</td><td></td><td>23:28</td><td>23:37</td><td>23:51</td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>양평</th><th>용문</th><th>지평</th><th>양동</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>07:08</td><td>07:16</td><td>07:21</td><td>07:31</td><td>07:40</td><td>07:47</td><td>08:05</td><td>08:14</td><td>08:31</td><td>08:44</td><td>08:55</td><td>09:16</td></tr><tr><td>1611</td><td>ITX-마음</td><td>11:13</td><td>11:21</td><td></td><td>11:33</td><td>11:42</td><td>11:49</td><td></td><td>12:13</td><td>12:30</td><td>12:43</td><td>12:53</td><td>13:13</td></tr><tr><td>1603</td><td>ITX-마음</td><td>15:18</td><td>15:26</td><td>15:31</td><td>15:46</td><td>15:56</td><td>16:03</td><td></td><td>16:28</td><td>16:45</td><td>16:58</td><td>17:10</td><td>17:31</td></tr><tr><td>1613</td><td>ITX-마음</td><td>18:12</td><td>18:21</td><td></td><td>18:33</td><td>18:42</td><td>18:51</td><td></td><td>19:16</td><td>19:32</td><td>19:45</td><td>19:56</td><td>20:15</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 양평 → 도착 : 강릉-동해</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>양평</th><th>서원주</th><th>만종</th><th>횡성</th><th>둔내</th><th>평창</th><th>진부(오대산)</th><th>강릉</th><th>정동진</th><th>묵호</th><th>동해</th><th>비고</th></tr></thead><tbody><tr><td>803</td><td>KTX-이음</td><td>6:27</td><td></td><td>6:51</td><td></td><td>7:06</td><td>7:17</td><td>7:26</td><td>7:44</td><td></td><td></td><td></td><td>매일</td></tr><tr><td>851</td><td>KTX-이음</td><td>6:54</td><td>7:14</td><td>7:19</td><td></td><td></td><td></td><td></td><td>7:59</td><td></td><td></td><td></td><td>매일</td></tr><tr><td>841</td><td>KTX-이음</td><td>7:35</td><td></td><td>7:59</td><td>8:07</td><td></td><td>8:24</td><td>8:33</td><td></td><td>9:00</td><td>9:21</td><td>9:28</td><td>매일</td></tr><tr><td>805</td><td>KTX-이음</td><td>8:46</td><td></td><td>9:10</td><td>9:19</td><td>9:30</td><td>9:40</td><td></td><td>10:04</td><td></td><td></td><td></td><td>매일</td></tr><tr><td>881</td><td>KTX-이음</td><td>10:07</td><td>10:27</td><td></td><td></td><td></td><td>10:51</td><td></td><td></td><td>11:24</td><td>11:44</td><td>11:51</td><td>금토일</td></tr><tr><td>809</td><td>KTX-이음</td><td>10:45</td><td></td><td>11:08</td><td></td><td>11:24</td><td>11:34</td><td></td><td>11:58</td><td></td><td></td><td></td><td>매일</td></tr><tr><td>843</td><td>KTX-이음</td><td>11:47</td><td>12:08</td><td></td><td>12:20</td><td></td><td></td><td>12:41</td><td></td><td>13:08</td><td>13:29</td><td>13:36</td><td>매일</td></tr><tr><td>869</td><td>KTX-이음</td><td>14:09</td><td></td><td>14:32</td><td></td><td></td><td>14:54</td><td></td><td>15:18</td><td></td><td></td><td></td><td>월화수목금</td></tr><tr><td>887</td><td>KTX-이음</td><td>14:09</td><td></td><td>14:32</td><td></td><td></td><td>14:54</td><td></td><td></td><td>15:27</td><td>15:49</td><td>15:56</td><td>토일</td></tr><tr><td>859</td><td>KTX-이음</td><td>15:07</td><td>15:27</td><td>15:33</td><td></td><td>15:48</td><td></td><td></td><td>16:18</td><td></td><td></td><td></td><td>매일</td></tr><tr><td>861</td><td>KTX-이음</td><td>15:32</td><td></td><td>15:55</td><td></td><td></td><td></td><td></td><td>16:35</td><td></td><td></td><td></td><td>금토일</td></tr><tr><td>817</td><td>KTX-이음</td><td>16:58</td><td>17:19</td><td>17:25</td><td>17:34</td><td>17:45</td><td>17:55</td><td>18:04</td><td>18:22</td><td></td><td></td><td></td><td>매일</td></tr><tr><td>819</td><td>KTX-이음</td><td>17:55</td><td></td><td></td><td>18:24</td><td>18:35</td><td>18:45</td><td>18:54</td><td>19:12</td><td></td><td></td><td></td><td>매일</td></tr><tr><td>821</td><td>KTX-이음</td><td>19:51</td><td></td><td>20:14</td><td>20:23</td><td>20:34</td><td>20:45</td><td></td><td>21:09</td><td></td><td></td><td></td><td>매일</td></tr><tr><td>867</td><td>KTX-이음</td><td>20:22</td><td></td><td>20:45</td><td></td><td></td><td></td><td>21:10</td><td>21:29</td><td></td><td></td><td></td><td>금토일</td></tr><tr><td>823</td><td>KTX-이음</td><td>20:51</td><td></td><td>21:14</td><td></td><td></td><td></td><td>21:39</td><td>21:58</td><td></td><td></td><td></td><td>매일</td></tr><tr><td>825</td><td>KTX-이음</td><td>22:18</td><td>22:39</td><td>22:45</td><td>22:54</td><td>23:05</td><td>23:16</td><td></td><td>23:41</td><td></td><td></td><td></td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차종별</th><th>열차번호</th><th>양평</th><th>용문</th><th>지평</th><th>석불</th><th>일신</th><th>매곡</th><th>양동</th><th>삼산</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th><th>쌍룡</th><th>영월</th><th>예미</th><th>민둥산</th><th>사북</th><th>고한</th><th>태백</th><th>동백산</th><th>도계</th><th>신기</th><th>동해</th></tr></thead><tbody><tr><td>무궁화</td><td>1671</td><td>08:08</td><td>08:16</td><td>08:25</td><td>08:30</td><td>08:35</td><td>08:40</td><td>08:44</td><td>08:49</td><td>08:57</td><td>09:05</td><td></td><td>09:31</td><td></td><td>10:05</td><td>10:25</td><td>10:47</td><td>10:56</td><td>11:03</td><td>11:17</td><td>11:29</td><td>11:45</td><td>12:02</td><td>12:25</td></tr><tr><td>무궁화</td><td>1673</td><td>10:21</td><td>10:29</td><td></td><td></td><td></td><td></td><td>10:41</td><td>10:46</td><td>10:53</td><td>11:00</td><td>11:20</td><td>11:30</td><td></td><td>12:01</td><td>12:21</td><td>12:42</td><td>12:51</td><td>12:58</td><td>13:14</td><td>13:25</td><td>13:46</td><td></td><td>14:28</td></tr><tr><td>무궁화</td><td>1675</td><td>12:49</td><td>12:57</td><td>13:07</td><td>13:13</td><td>13:17</td><td>13:22</td><td>13:27</td><td></td><td>13:36</td><td>13:43</td><td></td><td>14:07</td><td>14:22</td><td>14:40</td><td>15:01</td><td>15:23</td><td>15:32</td><td>15:39</td><td>15:54</td><td>16:05</td><td>16:23</td><td></td><td>17:05</td></tr><tr><td>무궁화</td><td>1677</td><td>19:43</td><td>19:51</td><td>20:00</td><td>20:06</td><td>20:10</td><td>20:15</td><td>20:20</td><td></td><td>20:29</td><td>20:36</td><td></td><td>21:01</td><td></td><td>21:32</td><td>21:52</td><td>22:13</td><td>22:22</td><td>22:29</td><td>22:44</td><td>22:56</td><td>23:12</td><td></td><td>23:50</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>양평역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '양평'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">양평역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">양평역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '31380';
            let curName = '양평';
            let altCity = '';
            let altName = '';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">양평역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">14℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">양평역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%B2%84%EA%B1%B0%ED%82%B9+%EA%B2%BD%EA%B8%B0%EC%96%91%ED%8F%89%EC%A0%90+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EC%96%91%ED%8F%89%EA%B5%B0+%EC%96%91%ED%8F%89%EC%9D%8D+%EC%96%91%EA%B7%BC%EB%A6%AC+409-7" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">버거킹 경기양평점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">양식&gt;햄버거</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 양평군 양평읍 양근리 409-7</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%AA%85%EB%A5%9C%EC%A7%84%EC%82%AC%EA%B0%88%EB%B9%84+%EA%B2%BD%EA%B8%B0%EC%96%91%ED%8F%89%EC%A0%90+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EC%96%91%ED%8F%89%EA%B5%B0+%EC%96%91%ED%8F%89%EC%9D%8D+%EC%96%91%EA%B7%BC%EB%A6%AC+504-9+%EB%8B%A4%EB%8F%99+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">명륜진사갈비 경기양평점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;육류,고기요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 양평군 양평읍 양근리 504-9 다동 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%99%95%EC%B0%BD%EC%95%84%EA%B5%AC%EC%B0%9C+%EC%96%91%ED%8F%89%EC%A0%90+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EC%96%91%ED%8F%89%EA%B5%B0+%EC%96%91%ED%8F%89%EC%9D%8D+%EC%96%91%EA%B7%BC%EB%A6%AC+100-2+%EC%99%95%EC%B0%BD%EC%A3%BC%EB%8B%88%EA%B9%8C+%EC%99%95%EC%B0%BD%EC%95%84%EA%B5%AC%EC%B0%9C" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">왕창아구찜 양평점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;아귀찜,해물찜</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 양평군 양평읍 양근리 100-2 왕창주니까 왕창아구찜</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%A7%98%EC%8A%A4%ED%84%B0%EC%B9%98+%EC%96%91%ED%8F%89%EC%97%AD%EC%A0%90+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EC%96%91%ED%8F%89%EA%B5%B0+%EC%96%91%ED%8F%89%EC%9D%8D+%EC%96%91%EA%B7%BC%EB%A6%AC+404-9" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">맘스터치 양평역점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">양식&gt;햄버거</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 양평군 양평읍 양근리 404-9</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%8C%80%ED%8F%AC%ED%95%AD%ED%9A%9F%EC%A7%91+%EC%96%91%ED%8F%89%EB%B3%B8%EC%A0%90+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EC%96%91%ED%8F%89%EA%B5%B0+%EC%96%91%ED%8F%89%EC%9D%8D+%EC%96%91%EA%B7%BC%EB%A6%AC+445-7+%EB%8C%80%ED%8F%AC%ED%95%AD%ED%9A%9F%EC%A7%91" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">대포항횟집 양평본점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;생선회</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 양평군 양평읍 양근리 445-7 대포항횟집</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">양평역 실시간 주차장 요금</h4>
        
                    <div class="parking-list-container">
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 양평역1                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">600원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">300원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">7,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 경기도 양평군 양평읍 양근리 130-37<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 031-523-2353                        </div>
                    </div>
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 양평역2                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">0원</strong> 
                                <small style="color: #94a3b8;">/ 0분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">0원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">0원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 경기도 양평군 역전길 30<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 031-523-2353                        </div>
                    </div>
                            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">양평역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 경기도 양평군 양평읍 양근리 130-37</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:031-523-2353" style="color: #0052a4; font-weight: bold; text-decoration: none;">031-523-2353</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%96%91%ED%8F%89%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/05/양평역-기차-시간표-KTX-ITX-마음-무궁화호-서울-청량리-부전-강릉-동해-강릉선-중앙선-첫기차-마지막기차-요금-정차역.jpg" alt="양평역-기차-시간표-KTX-ITX-마음-무궁화호-서울-청량리-부전-강릉-동해-강릉선-중앙선-첫기차-마지막기차-요금-정차역" class="wp-image-20993" srcset="https://krailroad.co.kr/wp-content/uploads/2026/05/양평역-기차-시간표-KTX-ITX-마음-무궁화호-서울-청량리-부전-강릉-동해-강릉선-중앙선-첫기차-마지막기차-요금-정차역.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/05/양평역-기차-시간표-KTX-ITX-마음-무궁화호-서울-청량리-부전-강릉-동해-강릉선-중앙선-첫기차-마지막기차-요금-정차역-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/05/양평역-기차-시간표-KTX-ITX-마음-무궁화호-서울-청량리-부전-강릉-동해-강릉선-중앙선-첫기차-마지막기차-요금-정차역-150x150.jpg 150w" sizes="(max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>용문역 열차 시간표 ITX-마음 무궁화호 청량리-부전-동해 중앙선 요금</title>
		<link>https://krailroad.co.kr/%ec%9a%a9%eb%ac%b8%ec%97%ad-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80%ec%a0%84-%eb%8f%99%ed%95%b4/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Fri, 08 May 2026 01:13:37 +0000</pubDate>
				<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[무궁화 시간표]]></category>
		<category><![CDATA[용문역 열차 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=20944</guid>

					<description><![CDATA[양평의 넓은 품속에 자리 잡은 용문역 열차 시간표 안내 로직은 수도권 전철의 끝자락이자 강원도와 경북 내륙으로 연결해 나가는 철도 교통의 실질적인 요충지 정보를 제공합니다. 웅장한 역사 규모를 자랑하는 이곳은 경의중앙선 전철의 시종착역 역할을 수행하며 서울 도심과의 심리적 거리를 좁혀왔고, 동시에 무궁화호와 ITX-마음 같은 일반 열차가 쉴 새 없이 오가며 중부 내륙을 잇는 다리역할을 하고 있습니다. ... <a title="용문역 열차 시간표 ITX-마음 무궁화호 청량리-부전-동해 중앙선 요금" class="read-more button" href="https://krailroad.co.kr/%ec%9a%a9%eb%ac%b8%ec%97%ad-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80%ec%a0%84-%eb%8f%99%ed%95%b4/" aria-label="용문역 열차 시간표 ITX-마음 무궁화호 청량리-부전-동해 중앙선 요금 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">양평의 넓은 품속에 자리 잡은 용문역 열차 시간표 안내 로직은 수도권 전철의 끝자락이자 강원도와 경북 내륙으로 연결해 나가는 철도 교통의 실질적인 요충지 정보를 제공합니다. 웅장한 역사 규모를 자랑하는 이곳은 <a href="https://krailroad.co.kr/realtime-subway-timetable/">경의중앙선</a> 전철의 시종착역 역할을 수행하며 서울 도심과의 심리적 거리를 좁혀왔고, 동시에 무궁화호와 ITX-마음 같은 일반 열차가 쉴 새 없이 오가며 중부 내륙을 잇는 다리역할을 하고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">용문역 열차 시간표 안내</h2>



<h3 class="wp-block-heading">데이터로 설계하는 이동 가이드</h3>



<p class="wp-block-paragraph">단순히 숫자로 적힌 용문역 열차 시간표를 확인하는 단계를 넘어, 본 시스템은 역에 도착하기 전부터 최종 목적지에 닿을 때까지의 모든 과정을 실시간 공공 데이터 API로 정확하게 안내받으실 수 있습니다. 또한 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a> 데이터베이스와 1분마다 동기화되는 API 로직은 용문역을 통과하는 열차 위치를 초 단위로 추적하며, 역 주변의 주차 현황과 시내로 연결되는 버스 도착 예보까지 하나의 화면에 통합했습니다.</p>



<p class="wp-block-paragraph">1️⃣ <strong>지능형 안내 서비스</strong> : 정보 확인이 어렵거나 다른 일을 해야하는 분들을 위해 도입된 음성 알림 기능을 활용하면, 열차 진입 15분 전부터 자동으로 음성 안내를 송출하여 정확한 시간에 열차를 탑승할 수 있습니다.</p>



<p class="wp-block-paragraph">2️⃣ <strong>실시간 연동 정보</strong> : 실시간 기상 상황과 맞물린 현지 식당가 정보는 날씨에 따른 최적의 동선을 제안하며, 처음 방문하는 지역 주변의 먹거리를 파악하고 주차장 요금과, 주차가능 대수를 쉽게 파악할 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">용문역 기점으의 철길 여행</h3>



<p class="wp-block-paragraph">용문역 열차 시간표를 살피며 계획하는 나들이는 사계절 내내 각기 다른 매력을 선사합니다. 역에서 머지않은 곳에는 천년 고찰 용문사와 은행나무가 자리 잡고 있어 가족 단위 방문객에게 인기가 높으며, 여름철에는 인근 계곡에서 시원한 물놀이를 즐기기에도 제격입니다.</p>



<p class="wp-block-paragraph">1️⃣ <strong>노선의 다양성</strong> : 청량리역을 기점으로 <a href="https://krailroad.co.kr/%ec%a0%9c%ec%b2%9c%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-itx-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80%ec%a0%84-%eb%8f%99/">제천역</a>, <a href="https://krailroad.co.kr/%ec%95%88%eb%8f%99%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a4%91%ec%95%99%ec%84%a0-%ec%9a%94/">안동역</a>, <a href="https://krailroad.co.kr/%eb%b6%80%ec%a0%84%ec%97%ad-ktx-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%b2%ad%eb%9f%89%eb%a6%ac%c2%b7%ea%b0%95%eb%a6%89%c2%b7%ec%95%88%eb%8f%99%ed%96%89%ec%86%8d%ec%b4%88-%ed%8f%ac%ed%95%ad-%ec%a4%91/">부전역</a>으로 향하는 중앙선 본선은 물론 태백선과 연결되는 강원도 방면 열차까지 이 역을 통과하므로 이용하는데 있어 선택의 폭이 매우 넓습니다.</p>



<p class="wp-block-paragraph">2️⃣ <strong>실시간 API 연동 자료</strong> : 정확하게 구축된 용문역 열차 시간표 자동 갱신 로직을 참고해, 중부 내륙의 정겨운 풍경 속에서 불필요한 기다림 없이 가장 효율적인 방식의 역별 소요시간, 구간요금, 주변 맛집, 날씨, 주차장정보, 주차요금등을 실시간 확인할 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">용문<strong>역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">용문<br>↓<br>청량리</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1612호</span><div class="time-display">09:08</div><div class="arrival-info">09:47 도착</div></td><td><span class="train-detail">1604호</span><div class="time-display">20:21</div><div class="arrival-info">20:56 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1652호</span><div class="time-display">06:43</div><div class="arrival-info">07:21 도착</div></td><td><span class="train-detail">1678호</span><div class="time-display">22:02</div><div class="arrival-info">22:40 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">용문<br>↓<br>안동</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">07:16</div><div class="arrival-info">09:16 도착</div></td><td><span class="train-detail">1613호</span><div class="time-display">18:21</div><div class="arrival-info">20:15 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">용문<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">07:16</div><div class="arrival-info">12:20 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">15:26</div><div class="arrival-info">20:28 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">용문<br>↓<br>태백</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1671호</span><div class="time-display">08:16</div><div class="arrival-info">11:17 도착</div></td><td><span class="train-detail">1677호</span><div class="time-display">19:51</div><div class="arrival-info">22:44 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">용문<br>↓<br>동해</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1671호</span><div class="time-display">08:16</div><div class="arrival-info">12:25 도착</div></td><td><span class="train-detail">1677호</span><div class="time-display">19:51</div><div class="arrival-info">23:50 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong><strong><strong>용문</strong></strong></strong>역 </strong>ITX-마음 무궁화호 <strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>운임</th></tr></thead><tbody><tr><td>중앙1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">용문</td><td>3,800</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">용문</td><td>3,800</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">청량리</td><td class="highlight">용문</td><td>5,600</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">용문</td><td class="highlight">경주</td><td>20,000</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">용문</td><td class="highlight">경주</td><td>25,900</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">용문</td><td class="highlight">태화강</td><td>22,700</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">용문</td><td class="highlight">태화강</td><td>30,000</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">용문</td><td class="highlight">부전</td><td>26,800</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">용문</td><td class="highlight">부전</td><td>36,000</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">용문</td><td class="highlight">태백</td><td>11,400</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">용문</td><td class="highlight">동해</td><td>15,400</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>용문역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <s>용문역 KTX 노선 없음</s><br>✅ <s>용문역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ec%9a%a9%eb%ac%b8%ec%97%ad-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80%ec%a0%84-%eb%8f%99%ed%95%b4/">용문역 ITX, 무궁화 시간표 바로가기</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>용문역 <strong><strong><strong>ITX-마음 무궁화호 </strong>시간표</strong></strong></strong></h2>



<h3 class="wp-block-heading">출발 : 용문 → 도착 : 청량리</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>용문</th><th>양평</th><th>덕소</th><th>청량리</th></tr></thead><tbody><tr><td>1652</td><td>무궁화</td><td>06:43</td><td>06:51</td><td>07:08</td><td>07:21</td></tr><tr><td>1662</td><td>무궁화</td><td>07:48</td><td>07:56</td><td>08:13</td><td>08:27</td></tr><tr><td>1612</td><td>ITX-마음</td><td>09:08</td><td>09:16</td><td>09:34</td><td>09:47</td></tr><tr><td>1672</td><td>무궁화</td><td>09:54</td><td>10:01</td><td>10:18</td><td>10:31</td></tr><tr><td>1602</td><td>ITX-마음</td><td>12:22</td><td>12:29</td><td></td><td>12:56</td></tr><tr><td>1614</td><td>ITX-마음</td><td>16:28</td><td>16:36</td><td>16:53</td><td>17:06</td></tr><tr><td>1674</td><td>무궁화</td><td>17:56</td><td>18:04</td><td>18:21</td><td>18:35</td></tr><tr><td>1676</td><td>무궁화</td><td>19:17</td><td>19:25</td><td>19:42</td><td>19:55</td></tr><tr><td>1604</td><td>ITX-마음</td><td>20:21</td><td>20:29</td><td></td><td>20:56</td></tr><tr><td>1678</td><td>무궁화</td><td>22:02</td><td>22:10</td><td>22:27</td><td>22:40</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 용문 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>용문</th><th>지평</th><th>양동</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th><th>의성</th><th>군위</th><th>영천</th><th>아화</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>07:16</td><td>07:21</td><td>07:31</td><td>07:40</td><td>07:47</td><td>08:05</td><td>08:14</td><td>08:31</td><td>08:44</td><td>08:55</td><td>09:16</td><td>09:34</td><td>09:52</td><td>10:14</td><td>10:26</td><td>10:43</td><td>11:04</td><td>11:13</td><td>11:30</td><td>11:51</td><td>12:02</td><td>12:10</td><td>12:20</td></tr><tr><td>1603</td><td>ITX-마음</td><td>15:26</td><td>15:31</td><td>15:46</td><td>15:56</td><td>16:03</td><td></td><td>16:28</td><td>16:45</td><td>16:58</td><td>17:10</td><td>17:31</td><td>17:49</td><td>18:06</td><td>18:27</td><td>18:38</td><td>18:55</td><td>19:15</td><td>19:23</td><td>19:39</td><td>20:00</td><td>20:10</td><td>20:17</td><td>20:28</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 용문 → 도착 : 제천</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>용문</th><th>지평</th><th>석불</th><th>일신</th><th>매곡</th><th>양동</th><th>삼산</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>07:16</td><td>07:21</td><td></td><td></td><td></td><td>07:31</td><td></td><td>07:40</td><td>07:47</td><td>08:05</td><td>08:14</td></tr><tr><td>1671</td><td>무궁화</td><td>08:16</td><td>08:25</td><td>08:30</td><td>08:35</td><td>08:40</td><td>08:44</td><td>08:49</td><td>08:57</td><td>09:05</td><td></td><td>09:31</td></tr><tr><td>1673</td><td>무궁화</td><td>10:29</td><td></td><td></td><td></td><td></td><td>10:41</td><td>10:46</td><td>10:53</td><td>11:00</td><td>11:20</td><td>11:30</td></tr><tr><td>1611</td><td>ITX-마음</td><td>11:21</td><td></td><td></td><td></td><td></td><td>11:33</td><td></td><td>11:42</td><td>11:49</td><td></td><td>12:13</td></tr><tr><td>1675</td><td>무궁화</td><td>12:57</td><td>13:07</td><td>13:13</td><td>13:17</td><td>13:22</td><td>13:27</td><td></td><td>13:36</td><td>13:43</td><td></td><td>14:07</td></tr><tr><td>1603</td><td>ITX-마음</td><td>15:26</td><td>15:31</td><td></td><td></td><td></td><td>15:46</td><td></td><td>15:56</td><td>16:03</td><td></td><td>16:28</td></tr><tr><td>1613</td><td>ITX-마음</td><td>18:21</td><td></td><td></td><td></td><td></td><td>18:33</td><td></td><td>18:42</td><td>18:51</td><td></td><td>19:16</td></tr><tr><td>1677</td><td>무궁화</td><td>19:51</td><td>20:00</td><td>20:06</td><td>20:10</td><td>20:15</td><td>20:20</td><td></td><td>20:29</td><td>20:36</td><td></td><td>21:01</td></tr><tr><td>1651</td><td>무궁화</td><td>21:13</td><td>21:18</td><td>21:24</td><td>21:28</td><td>21:33</td><td>21:38</td><td>21:43</td><td>21:50</td><td>21:57</td><td>22:16</td><td>22:24</td></tr><tr><td>1661</td><td>무궁화</td><td>22:41</td><td>22:46</td><td></td><td></td><td></td><td>22:56</td><td></td><td>23:05</td><td>23:12</td><td></td><td>23:37</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 용문 → 도착 : 영주</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>용문</th><th>지평</th><th>양동</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>07:16</td><td>07:21</td><td>07:31</td><td>07:40</td><td>07:47</td><td>08:05</td><td>08:14</td><td>08:31</td><td>08:44</td><td>08:55</td></tr><tr><td>1611</td><td>ITX-마음</td><td>11:21</td><td></td><td>11:33</td><td>11:42</td><td>11:49</td><td></td><td>12:13</td><td>12:30</td><td>12:43</td><td>12:53</td></tr><tr><td>1603</td><td>ITX-마음</td><td>15:26</td><td>15:31</td><td>15:46</td><td>15:56</td><td>16:03</td><td></td><td>16:28</td><td>16:45</td><td>16:58</td><td>17:10</td></tr><tr><td>1613</td><td>ITX-마음</td><td>18:21</td><td></td><td>18:33</td><td>18:42</td><td>18:51</td><td></td><td>19:16</td><td>19:32</td><td>19:45</td><td>19:56</td></tr><tr><td>1661</td><td>무궁화</td><td>22:41</td><td>22:46</td><td>22:56</td><td>23:05</td><td>23:12</td><td></td><td>23:37</td><td>23:52</td><td>00:05</td><td>00:14</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 용문 → 도착 : 안동</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>용문</th><th>지평</th><th>양동</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>07:16</td><td>07:21</td><td>07:31</td><td>07:40</td><td>07:47</td><td>08:05</td><td>08:14</td><td>08:31</td><td>08:44</td><td>08:55</td><td>09:16</td></tr><tr><td>1611</td><td>ITX-마음</td><td>11:21</td><td></td><td>11:33</td><td>11:42</td><td>11:49</td><td></td><td>12:13</td><td>12:30</td><td>12:43</td><td>12:53</td><td>13:13</td></tr><tr><td>1603</td><td>ITX-마음</td><td>15:26</td><td>15:31</td><td>15:46</td><td>15:56</td><td>16:03</td><td></td><td>16:28</td><td>16:45</td><td>16:58</td><td>17:10</td><td>17:31</td></tr><tr><td>1613</td><td>ITX-마음</td><td>18:21</td><td></td><td>18:33</td><td>18:42</td><td>18:51</td><td></td><td>19:16</td><td>19:32</td><td>19:45</td><td>19:56</td><td>20:15</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 용문 → 도착 : 동해</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차종별</th><th>열차번호</th><th>용문</th><th>지평</th><th>석불</th><th>일신</th><th>매곡</th><th>양동</th><th>삼산</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th><th>쌍룡</th><th>영월</th><th>예미</th><th>민둥산</th><th>사북</th><th>고한</th><th>태백</th><th>동백산</th><th>도계</th><th>신기</th><th>동해</th></tr></thead><tbody><tr><td>무궁화</td><td>1671</td><td>08:16</td><td>08:25</td><td>08:30</td><td>08:35</td><td>08:40</td><td>08:44</td><td>08:49</td><td>08:57</td><td>09:05</td><td></td><td>09:31</td><td></td><td>10:05</td><td>10:25</td><td>10:47</td><td>10:56</td><td>11:03</td><td>11:17</td><td>11:29</td><td>11:45</td><td>12:02</td><td>12:25</td></tr><tr><td>무궁화</td><td>1673</td><td>10:29</td><td></td><td></td><td></td><td></td><td>10:41</td><td>10:46</td><td>10:53</td><td>11:00</td><td>11:20</td><td>11:30</td><td></td><td>12:01</td><td>12:21</td><td>12:42</td><td>12:51</td><td>12:58</td><td>13:14</td><td>13:25</td><td>13:46</td><td></td><td>14:28</td></tr><tr><td>무궁화</td><td>1675</td><td>12:57</td><td>13:07</td><td>13:13</td><td>13:17</td><td>13:22</td><td>13:27</td><td></td><td>13:36</td><td>13:43</td><td></td><td>14:07</td><td>14:22</td><td>14:40</td><td>15:01</td><td>15:23</td><td>15:32</td><td>15:39</td><td>15:54</td><td>16:05</td><td>16:23</td><td></td><td>17:05</td></tr><tr><td>무궁화</td><td>1677</td><td>19:51</td><td>20:00</td><td>20:06</td><td>20:10</td><td>20:15</td><td>20:20</td><td></td><td>20:29</td><td>20:36</td><td></td><td>21:01</td><td></td><td>21:32</td><td>21:52</td><td>22:13</td><td>22:22</td><td>22:29</td><td>22:44</td><td>22:56</td><td>23:12</td><td></td><td>23:50</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>용문역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '용문'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">용문역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">용문역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '';
            let curName = '용문';
            let altCity = '';
            let altName = '';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">용문역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">13℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">용문역역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%8B%A4%EC%98%A4%EB%A6%AC%EB%8B%A4+%EC%96%91%ED%8F%89%EC%A0%90+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EC%96%91%ED%8F%89%EA%B5%B0+%EC%9A%A9%EB%AC%B8%EB%A9%B4+%EB%8B%A4%EB%AC%B8%EB%A6%AC+701-6+1%EC%B8%B5+%EB%8B%A4%EC%98%A4%EB%A6%AC%EB%8B%A4+%EC%96%91%ED%8F%89%EC%A0%90" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">다오리다 양평점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;오리요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 양평군 용문면 다문리 701-6 1층 다오리다 양평점</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%8C%8C%EB%A6%AC%EB%B0%94%EA%B2%8C%EB%9C%A8+%EC%96%91%ED%8F%89%EC%9A%A9%EB%AC%B8%EC%A0%90+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EC%96%91%ED%8F%89%EA%B5%B0+%EC%9A%A9%EB%AC%B8%EB%A9%B4+%EB%8B%A4%EB%AC%B8%EB%A6%AC+321-3" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">파리바게뜨 양평용문점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;베이커리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 양평군 용문면 다문리 321-3</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%9A%B0%EB%A6%AC%ED%95%9C%EC%9A%B0+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EC%96%91%ED%8F%89%EA%B5%B0+%EC%9A%A9%EB%AC%B8%EB%A9%B4+%EB%8B%A4%EB%AC%B8%EB%A6%AC+619+%EC%9A%B0%EB%A6%AC%ED%95%9C%EC%9A%B0" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">우리한우</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;육류,고기요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 양평군 용문면 다문리 619 우리한우</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%9A%A9%EB%AC%B8%EC%9B%90%EC%A1%B0%EB%8A%A5%EC%9D%B4%EB%B2%84%EC%84%AF%EA%B5%AD%EB%B0%A5+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EC%96%91%ED%8F%89%EA%B5%B0+%EC%9A%A9%EB%AC%B8%EB%A9%B4+%EB%8B%A4%EB%AC%B8%EB%A6%AC+737-34" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">용문원조능이버섯국밥</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;국밥</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 양평군 용문면 다문리 737-34</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%A9%94%EA%B0%80MGC%EC%BB%A4%ED%94%BC+%EC%96%91%ED%8F%89%EC%9A%A9%EB%AC%B8%EC%A0%90+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EC%96%91%ED%8F%89%EA%B5%B0+%EC%9A%A9%EB%AC%B8%EB%A9%B4+%EB%8B%A4%EB%AC%B8%EB%A6%AC+737-56+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">메가MGC커피 양평용문점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;카페</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 양평군 용문면 다문리 737-56 1층</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">용문역 실시간 주차장 요금</h4>
        
                    <div class="parking-list-container">
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 용문역1                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">600원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">300원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">7,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 경기도 양평군 용문면 다문리 736-13<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 031-523-2353                        </div>
                    </div>
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 용문역2                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">600원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">300원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">7,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 경기도 양평군 용문면 다문리 736-13<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 031-523-2353                        </div>
                    </div>
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 용문역3                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">0원</strong> 
                                <small style="color: #94a3b8;">/ 0분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">0원</strong>
                                <small style="color: #94a3b8;">/ 0분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">0원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 경기도 양평군 용문면 다문리 736-13<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 031-523-2353                        </div>
                    </div>
                            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">용문역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 경기도 양평군 용문면 다문리 736-13</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:031-523-2353" style="color: #0052a4; font-weight: bold; text-decoration: none;">031-523-2353</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%9A%A9%EB%AC%B8%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/05/용문역-열차-시간표-ITX-마음-무궁화호-중앙선-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="용문역-열차-시간표-ITX-마음-무궁화호-중앙선-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-20957" srcset="https://krailroad.co.kr/wp-content/uploads/2026/05/용문역-열차-시간표-ITX-마음-무궁화호-중앙선-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/05/용문역-열차-시간표-ITX-마음-무궁화호-중앙선-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/05/용문역-열차-시간표-ITX-마음-무궁화호-중앙선-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>동해선 ITX-마음 시간표 및 요금 부전-동대구~동해-강릉 안내</title>
		<link>https://krailroad.co.kr/%eb%8f%99%ed%95%b4%ec%84%a0-itx-%eb%a7%88%ec%9d%8c-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%9a%94%ea%b8%88-%eb%b6%80%ec%a0%84-%eb%8f%99%eb%8c%80%ea%b5%ac%eb%8f%99%ed%95%b4-%ea%b0%95%eb%a6%89/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Wed, 06 May 2026 00:11:24 +0000</pubDate>
				<category><![CDATA[실시간 열차 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[동해선 ITX-마음 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=20897</guid>

					<description><![CDATA[동해선 ITX-마음 시간표는 부산 부전역과 동대구역에서 시작해 태화강역과 포항역을 거쳐 강원도 동해역과 강릉역까지 이어지는 동해안 철도망의 핵심적인 노선으로, 과거 동해선은 단선 구간이 많아 접근성이 떨어졌으나, 남해안과 동해안을 잇는 거대 철도 축을 구축하기 위해 전 구간 현대화 사업이 진행되었습니다. 2023년 말부터 본격 투입된 ITX-마음은 부전~동해, 강릉~부전, 동대구~강릉, 동대구~동해 방면을 부지런히 오가며 영남과 강원권을 실시간으로 연결하고 있습니다. ... <a title="동해선 ITX-마음 시간표 및 요금 부전-동대구~동해-강릉 안내" class="read-more button" href="https://krailroad.co.kr/%eb%8f%99%ed%95%b4%ec%84%a0-itx-%eb%a7%88%ec%9d%8c-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%9a%94%ea%b8%88-%eb%b6%80%ec%a0%84-%eb%8f%99%eb%8c%80%ea%b5%ac%eb%8f%99%ed%95%b4-%ea%b0%95%eb%a6%89/" aria-label="동해선 ITX-마음 시간표 및 요금 부전-동대구~동해-강릉 안내 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">동해선 ITX-마음 시간표는 부산 <a href="https://krailroad.co.kr/%eb%b6%80%ec%a0%84%ec%97%ad-ktx-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%b2%ad%eb%9f%89%eb%a6%ac%c2%b7%ea%b0%95%eb%a6%89%c2%b7%ec%95%88%eb%8f%99%ed%96%89%ec%86%8d%ec%b4%88-%ed%8f%ac%ed%95%ad-%ec%a4%91/">부전역</a>과 동대구역에서 시작해 태화강역과 포항역을 거쳐 강원도 동해역과 강릉역까지 이어지는 동해안 철도망의 핵심적인 노선으로, 과거 동해선은 단선 구간이 많아 접근성이 떨어졌으나, 남해안과 동해안을 잇는 거대 철도 축을 구축하기 위해 전 구간 현대화 사업이 진행되었습니다. <br><br>2023년 말부터 본격 투입된 ITX-마음은 부전~동해, 강릉~부전, 동대구~강릉, 동대구~동해 방면을 부지런히 오가며 영남과 강원권을 실시간으로 연결하고 있습니다. 특히 동해선은 영천 인근에서 대구선과 합쳐지는 노선 계통을 가지고 있으며, 부전역의 경우는 향후 중앙선과도 긴밀히 연결되어 내륙과 해안을 아우르는 통합 교통망의 역할을 수행하고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>동해선 ITX-마음 시간표 안내</strong></h2>



<h3 class="wp-block-heading">동해선 운행 목표와 미래 전망</h3>



<p class="wp-block-paragraph">현재 동해선 ITX-마음 시간표를 살펴보면 동해안의 절경을 창밖으로 감상하며 이동할 수 있는 최적의 노선으로, 이 노선은 단순히 인접 도시를 잇는 수준을 넘어, 향후 강릉 이후의 북쪽 노선까지 연결될 예정이라 한반도 동쪽을 관통하는 거대한 동해선 축의 완성을 목표로 삼고 있습니다.</p>



<p class="wp-block-paragraph">1️⃣ <strong>가족과 함께하는 동해안 여행</strong> : ITX-마음은 좌석마다 충전 시설과 쾌적한 실내 환경을 갖추고 있어 아이들과 함께하는 기차 여행에 제격으로, KTX보다 저렴한 비용으로 동해안의 푸른 바다 풍경을 즐길 수 있습니다.</p>



<p class="wp-block-paragraph">2️⃣ <strong>당일치기 코스 추천</strong> : 이전에 아이들과 동해선 영해역을 이용해 영해만세시장과 괴시마을을 다녀온 경험이 있는데, 역에서 멀지 않은 곳에서 역사와 전통 시장의 맛을 동시에 느낄 수 있어 만족도가 매우 높았습니다. [<a href="https://krailroad.co.kr/%ec%98%81%eb%8d%95-%ec%98%81%ed%95%b4%ec%97%ad-itx-%eb%a7%88%ec%9d%8c-%ea%b8%b0%ec%b0%a8-%ec%97%ac%ed%96%89-%ec%95%84%ec%9d%b4%ec%99%80-%ea%b1%b7%eb%8a%94-%ea%b7%bc%eb%8c%80%ec%82%ac-%ec%97%ad/">이곳을 터치해 당일치기 여행 참고</a>]</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">데이터가 제안하는 밀착형 정보</h3>



<p class="wp-block-paragraph">정확하게 구축된 동해선 ITX-마음 시간표 로직은 기차에서 내리는 순간 마주할 역 주변 인프라 활용법도 실시간으로 안내하며, 부전역 일대의 트렌디한 공간이나 동해안 정거장 인근의 숨겨진 정겨운 식당가 정보는 현재 기상 상황과 맞물려 제공되므로 갑작스러운 날씨 변화에도 당황하지 않고 이동할 수 있습니다. 또한 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a> 공식자료와 공공데이터 API를 이용한 정확한 검색 기능을 활용해 열차 번호별 상세 정보와 소요 시간을 확인할 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">강릉-동해 ↔ 부전-동대구 첫차 &amp; 막차</h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">강릉<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1822호</span><div class="time-display">05:46</div><div class="arrival-info">10:49 도착</div></td><td><span class="train-detail">1822호</span><div class="time-display">05:46</div><div class="arrival-info">10:49 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">강릉<br>↓<br>동대구</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1824호</span><div class="time-display">19:58</div><div class="arrival-info">00:04 도착</div></td><td><span class="train-detail">1824호</span><div class="time-display">19:58</div><div class="arrival-info">00:04 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">동해<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1822호</span><div class="time-display">06:30</div><div class="arrival-info">10:49 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">18:03</div><div class="arrival-info">22:33 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">동대구<br>↓<br>강릉</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1821호</span><div class="time-display">15:15</div><div class="arrival-info">19:27 도착</div></td><td><span class="train-detail">1831호</span><div class="time-display">15:15</div><div class="arrival-info">19:27 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">부전<br>↓<br>동해</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1801호</span><div class="time-display">05:11</div><div class="arrival-info">09:35 도착</div></td><td><span class="train-detail">1807호</span><div class="time-display">15:33</div><div class="arrival-info">20:08 도착</div></td></tr></tbody></table></div>


    
    <h2>동해 ↔ 부전 운임 요금표</h2>

    <div id="ktx-app-fl" style="margin-bottom: 40px;">
        <style>
            #ktx-app-fl { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 1px solid #e2e8f0; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.06); }
            .fl-main-table { width: 100%; border-collapse: collapse; table-layout: fixed; border: none; }
            .fl-main-table th { font-size: 13px; color: #64748b; padding: 12px 2px; background: #f8fafc; border-bottom: 1px solid #e2e8f0; text-align: center; font-weight: bold; }
            .fl-main-table td { padding: 15px 4px; border-bottom: 1px solid #f1f5f9; text-align: center; vertical-align: middle; }
            
            .u-no-top { font-size: 11px; color: #94a3b8; display: block; font-weight: 500; margin-bottom: 1px; }
            .u-grade-bottom { font-size: 16px; font-weight: 900; color: #0045e6; display: block; line-height: 1.2; }
            .t-via { font-size: 12px; color: #64748b; display: block; margin-top: 4px; font-weight: 500; }
            
            .t-price { font-weight: 700; font-size: 14px; color: #1e293b; }
            .t-premium { color: #059669; }
            .t-special { color: #e11d48; }
            
            .t-none { display: inline-block; padding: 3px 10px; background: #f8fafc; color: #cbd5e1; border: 1px solid #f1f5f9; border-radius: 6px; font-size: 11px; font-weight: 600; }

            @media (max-width: 600px) {
                .fl-main-table th { font-size: 12px; }
                .u-grade-bottom { font-size: 14px; }
                .t-price { font-size: 12px; }
            }
        </style>

        <div style="overflow-x: auto;">
            <table class="fl-main-table">
                <thead>
                    <tr>
                        <th style="width: 30%;">열차 / 경유지</th>
                        <th style="width: 23%;">일반실</th>
                        <th style="width: 23%;">우등실</th>
                        <th style="width: 24%;">특실</th>
                    </tr>
                </thead>
                <tbody>
                                        <tr>
                        <td>
                            <span class="u-no-top">동해 ↔ 부전</span>
                            <span class="u-grade-bottom">ITX</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                30,600원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">동해 ↔ 부전</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">기본</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                42,100원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                50,500원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">동해 ↔ 부전</span>
                            <span class="u-grade-bottom">무궁화</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                26,600원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                    </tbody>
            </table>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">강릉 → 부전 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>강릉</th><th>정동진</th><th>묵호</th><th>동해</th><th>삼척</th><th>울진</th><th>후포</th><th>고래불</th><th>영덕</th><th>포항</th><th>서경주</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th></tr></thead><tbody><tr><td>1822</td><td>ITX-마음</td><td>05:46</td><td>06:02</td><td>06:21</td><td>06:30</td><td>06:47</td><td>07:22</td><td>07:48</td><td>07:57</td><td>08:13</td><td>08:38</td><td>08:58</td><td>09:11</td><td>09:31</td><td>09:39</td><td>10:01</td><td>10:22</td><td>10:32</td><td>10:39</td><td>10:49</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">강릉 → 동대구 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>강릉</th><th>정동진</th><th>묵호</th><th>동해</th><th>삼척</th><th>울진</th><th>기성</th><th>영덕</th><th>월포</th><th>포항</th><th>서경주</th><th>영천</th><th>하양</th><th>동대구</th></tr></thead><tbody><tr><td>1824</td><td>ITX-마음</td><td>19:58</td><td>20:15</td><td>20:34</td><td>20:42</td><td>20:59</td><td>21:36</td><td>21:55</td><td>22:25</td><td>22:42</td><td>22:53</td><td>23:13</td><td>23:38</td><td>23:48</td><td>00:04</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">동해 → 부전 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>동해</th><th>추암</th><th>삼척해변</th><th>삼척</th><th>근덕</th><th>임원</th><th>옥원</th><th>흥부</th><th>죽변</th><th>울진</th><th>매화</th><th>기성</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>월포</th><th>포항</th><th>서경주</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th><th>비 고</th></tr></thead><tbody><tr><td>1822</td><td>ITX-마음</td><td>06:30</td><td></td><td></td><td>06:47</td><td></td><td></td><td></td><td></td><td></td><td>07:22</td><td></td><td></td><td>07:48</td><td>07:57</td><td></td><td>08:13</td><td></td><td>08:38</td><td>08:58</td><td>09:11</td><td>09:31</td><td>09:39</td><td>10:01</td><td>10:22</td><td>10:32</td><td>10:39</td><td>10:49</td><td></td></tr><tr><td>1802</td><td>ITX-마음</td><td>12:12</td><td></td><td></td><td>12:29</td><td></td><td></td><td></td><td>12:56</td><td>13:04</td><td>13:12</td><td></td><td>13:29</td><td></td><td>13:47</td><td>13:55</td><td>14:06</td><td></td><td>14:32</td><td>14:53</td><td>15:07</td><td>15:26</td><td>15:34</td><td></td><td>16:07</td><td>16:17</td><td></td><td>16:32</td><td></td></tr><tr><td>1814</td><td>ITX-마음</td><td>17:20</td><td></td><td></td><td>17:40</td><td></td><td></td><td>18:03</td><td>18:13</td><td>18:20</td><td>18:28</td><td>18:39</td><td>18:50</td><td>19:02</td><td>19:11</td><td></td><td>19:27</td><td></td><td>19:52</td><td>20:13</td><td>20:26</td><td>20:46</td><td>20:54</td><td>21:10</td><td>21:31</td><td>21:42</td><td>21:50</td><td>22:00</td><td>월화수목금</td></tr><tr><td>1804</td><td>ITX-마음</td><td>17:20</td><td>17:28</td><td>17:32</td><td>17:40</td><td></td><td></td><td>18:03</td><td>18:13</td><td>18:20</td><td>18:28</td><td>18:39</td><td>18:50</td><td>19:02</td><td>19:11</td><td></td><td>19:27</td><td></td><td>19:52</td><td>20:13</td><td>20:26</td><td>20:46</td><td>20:54</td><td>21:10</td><td>21:31</td><td>21:42</td><td>21:50</td><td>22:00</td><td>토일</td></tr><tr><td>1806</td><td>ITX-마음</td><td>18:03</td><td></td><td></td><td>18:21</td><td>18:33</td><td>18:41</td><td>18:48</td><td>18:57</td><td></td><td>19:08</td><td></td><td>19:25</td><td>19:38</td><td>19:47</td><td>19:55</td><td>20:06</td><td>20:23</td><td>20:34</td><td>20:54</td><td>21:07</td><td>21:26</td><td>21:34</td><td></td><td>22:02</td><td>22:18</td><td></td><td>22:33</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">동대구 → 강릉 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>동대구</th><th>하양</th><th>영천</th><th>서경주</th><th>포항</th><th>월포</th><th>영덕</th><th>영해</th><th>고래불</th><th>후포</th><th>울진</th><th>흥부</th><th>삼척</th><th>삼척해변</th><th>추암</th><th>동해</th><th>묵호</th><th>정동진</th><th>강릉</th><th>비 고</th></tr></thead><tbody><tr><td>1821</td><td>ITX-마음</td><td>15:15</td><td>15:32</td><td>15:43</td><td>16:06</td><td>16:27</td><td>16:39</td><td>16:56</td><td>17:06</td><td>17:13</td><td>17:22</td><td>17:46</td><td>17:56</td><td>18:22</td><td></td><td></td><td>18:42</td><td>18:50</td><td>19:12</td><td>19:27</td><td>월화수목금</td></tr><tr><td>1831</td><td>ITX-마음</td><td>15:15</td><td>15:32</td><td>15:43</td><td>16:06</td><td>16:27</td><td>16:39</td><td>16:56</td><td>17:06</td><td>17:13</td><td>17:22</td><td>17:46</td><td>17:56</td><td>18:22</td><td>18:29</td><td>18:33</td><td>18:42</td><td>18:50</td><td>19:12</td><td>19:27</td><td>토일</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">부전 → 동해 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>부전</th><th>센텀</th><th>신해운대</th><th>기장</th><th>남창</th><th>태화강</th><th>북울산</th><th>경주</th><th>서경주</th><th>포항</th><th>월포</th><th>장사</th><th>영덕</th><th>영해</th><th>고래불</th><th>후포</th><th>평해</th><th>기성</th><th>매화</th><th>울진</th><th>죽변</th><th>흥부</th><th>근덕</th><th>삼척</th><th>동해</th></tr></thead><tbody><tr><td>1801</td><td>ITX-마음</td><td>05:11</td><td>05:22</td><td>05:29</td><td>05:39</td><td>06:00</td><td>06:16</td><td>06:24</td><td>06:43</td><td>06:55</td><td>07:15</td><td></td><td>07:32</td><td>07:43</td><td></td><td>07:58</td><td>08:07</td><td></td><td>08:19</td><td>08:28</td><td>08:38</td><td>08:45</td><td>08:52</td><td></td><td>09:19</td><td>09:35</td></tr><tr><td>1803</td><td>ITX-마음</td><td>09:38</td><td></td><td>09:53</td><td>10:03</td><td></td><td>10:37</td><td>10:46</td><td>11:07</td><td>11:22</td><td>11:43</td><td>11:57</td><td>12:05</td><td>12:16</td><td>12:26</td><td>12:33</td><td>12:42</td><td>12:49</td><td></td><td>13:03</td><td>13:15</td><td>13:21</td><td>13:29</td><td>13:47</td><td>13:58</td><td>14:15</td></tr><tr><td>1805</td><td>ITX-마음</td><td>11:07</td><td></td><td>11:23</td><td>11:33</td><td></td><td>12:08</td><td>12:17</td><td>12:37</td><td>12:49</td><td>13:09</td><td></td><td></td><td>13:33</td><td></td><td>13:48</td><td></td><td></td><td>14:07</td><td></td><td>14:26</td><td>14:34</td><td></td><td></td><td>15:03</td><td>15:19</td></tr><tr><td>1807</td><td>ITX-마음</td><td>15:33</td><td>15:44</td><td>15:51</td><td>16:01</td><td>16:22</td><td>16:38</td><td>16:46</td><td>17:07</td><td>17:23</td><td>17:43</td><td></td><td>18:00</td><td>18:11</td><td></td><td>18:26</td><td>18:35</td><td></td><td>18:49</td><td></td><td>19:07</td><td></td><td>19:19</td><td>19:42</td><td>19:52</td><td>20:08</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">전국 기차 시간표 및 운임 조회</h2>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #ktx-live-app-v2 { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 1px solid #e2e8f0; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.06); min-height: 800px; }
        .ktx-top-bar-v2 { background: #0045e6; padding: 15px 20px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .ktx-top-bar-v2 b { font-size: 17px; }
        .ktx-live-label-v2 { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 900; animation: ktx_pulse_v2 1.5s infinite; }
        @keyframes ktx_pulse_v2 { 50% { opacity: 0.4; } }
        .ktx-search-box-v2 { padding: 15px; background: #f8fafc; border-bottom: 1px solid #eee; }
        .ktx-input-flex-v2 { display: flex; gap: 8px; margin-bottom: 10px; }
        .ktx-input-flex-v2 input { flex: 1; min-width: 0; padding: 12px; border-radius: 8px; border: 1px solid #cbd5e1; font-size: 16px !important; outline: none; background: #fff; -webkit-appearance: none; }
        #ktx-btn-submit-v2 { width: 100%; padding: 15px; background: #64748b; color: #fff; border: none; border-radius: 8px; cursor: pointer; font-weight: bold; font-size: 16px; transition: all 0.3s; height: 50px; }
        #ktx-btn-submit-v2:hover { background: #475569; }
        #ktx-btn-submit-v2.is-searching { background: #6366f1 !important; cursor: wait; }
        .ktx-memo-area-v2 { padding: 12px 15px; background: #fffbeb; color: #92400e; font-size: 14px; line-height: 1.6; border-top: 1px solid #fef3c7; display: none; word-break: keep-all; min-height: 45px; }
        .ktx-main-table-v2 { width: 100%; border-collapse: collapse; table-layout: fixed; border: none; min-height: 700px; }
        .ktx-main-table-v2 th { font-size: 13px; color: #64748b; padding: 12px 2px; background: #f1f5f9; border-bottom: 1px solid #e2e8f0; text-align: center; }
        .ktx-main-table-v2 td { padding: 15px 4px; border-bottom: none !important; text-align: center; vertical-align: middle; }
        .ktx-status-text-v2 { color: #e11d48; font-weight: 800; font-size: 14px; margin: 3px 0; white-space: nowrap; letter-spacing: -0.5px; }
        .ktx-grade-name-v2 { font-size: 16px; font-weight: 800; color: #0045e6; line-height: 1.2; display: block; }
        .ktx-train-no-v2 { font-size: 11px; color: #94a3b8; display: block; margin-top: 2px; }
        .v-tag-ok-v2 { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        .v-tag-duration-v2 { font-size: 10px; color: #0045e6; background: #eff6ff; padding: 1px 4px; border-radius: 3px; border: 1px solid #dbeafe; display: inline-block; margin-top: 4px; font-weight: bold; }
        .ktx-time-info-v2 { color: #475569; font-size: 12px; font-weight: 600; }
        .ktx-station-name-v2 { font-size: 14px; font-weight: 700; color: #1e293b; }

        .ktx-badge-soon-v2 { 
            display: inline-block;
            background: #e11d48; 
            color: #fff; 
            padding: 4px 10px; 
            border-radius: 6px; 
            font-size: 11px; 
            font-weight: 900; 
            letter-spacing: -0.2px;
            margin-bottom: 4px;
            box-shadow: 0 2px 4px rgba(225, 29, 72, 0.2);
            animation: ktx_v4_pulse_v2 1.2s infinite ease-in-out; 
        }
        @keyframes ktx_v4_pulse_v2 { 0% { opacity: 1; transform: scale(1); } 50% { opacity: 0.6; transform: scale(0.96); } 100% { opacity: 1; transform: scale(1); } }

        .ktx-loading-v2 { opacity: 0.3; }
        .ktx-row-fade-v2 { animation: ktxFadeInUp_v2 0.5s ease-out forwards; opacity: 0; }
        @keyframes ktxFadeInUp_v2 { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }

        .ktx-voice-btn-v2 { padding: 4px 12px; border-radius: 15px; border: 2px solid rgba(255,255,255,0.6); background: rgba(0,0,0,0.15); font-size: 11px; font-weight: 900; color: #fff; cursor: pointer; display: inline-flex; align-items: center; gap: 4px; height: 26px; transition: 0.2s; line-height: 1; margin-left:10px; }
        .ktx-voice-btn-v2.active { background: #fff; color: #0045e6; border-color: #fff; box-shadow: 0 0 10px rgba(255,255,255,0.3); }

        .ktx-pagination-v2 { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 20px; background: #fff; border-top: 1px solid #f1f5f9; }
        .ktx-page-btn-v2 { padding: 8px 16px; border: 1px solid #e2e8f0; border-radius: 6px; font-size: 13px; color: #64748b; background: #fff; cursor: pointer; transition: 0.2s; }
        .ktx-page-btn-v2:hover:not(:disabled) { background: #f1f5f9; border-color: #cbd5e1; }
        .ktx-page-btn-v2:disabled { opacity: 0.4; cursor: not-allowed; }
        .ktx-page-info-v2 { font-size: 14px; font-weight: bold; color: #0045e6; }
    </style>

    <div id="ktx-live-app-v2">
        <div class="ktx-top-bar-v2">
            <div style="display: flex; align-items: center;">
                <b><span id="ktx-live-clock-v2" style="font-size:14px; font-weight:bold; opacity:1;"></span></b>
                <button class="ktx-voice-btn-v2" id="ktx-voice-toggle-v2" onclick="toggleKtxVoiceV2()">
                    <span class="v-ico-v2">🔈</span> <span class="v-txt-v2">음성 끔</span>
                </button>
            </div>
            <div class="ktx-live-label-v2">LIVE</div>
        </div>
        <div class="ktx-search-box-v2">
            <div class="ktx-input-flex-v2">
                <input type="text" id="ktx-dep-field-v2" placeholder="출발역" value="">
                <input type="text" id="ktx-arr-field-v2" placeholder="도착역" value="">
            </div>
            <button id="ktx-btn-submit-v2" onclick="runKtxLiveSearchV2(true)">열차 시간 조회하기</button>
        </div>
        
        <table class="ktx-main-table-v2">
            <thead><tr><th style="width: 24%;">열차정보</th><th style="width: 24%;">출발역</th><th style="width: 28%;">출발예정</th><th style="width: 24%;">도착역</th></tr></thead>
            <tbody id="ktx-live-tbody-v2">
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr id="ktx-init-msg-v2"><td colspan="4" style="position:absolute; width:100%; left:0; padding:70px 0; color:#94a3b8; font-size:13px; text-align:center;">역 이름을 입력하고 조회해 주세요.</td></tr>
            </tbody>
        </table>

        <div id="ktx-pagination-ctrl-v2" class="ktx-pagination-v2" style="display:none;">
            <button class="ktx-page-btn-v2" id="ktx-prev-page-v2" onclick="changeKtxPageV2(-1)">&laquo; 이전</button>
            <span class="ktx-page-info-v2"><span id="ktx-current-page-v2">1</span> / <span id="ktx-total-pages-v2">1</span></span>
            <button class="ktx-page-btn-v2" id="ktx-next-page-v2" onclick="changeKtxPageV2(1)">다음 &raquo;</button>
        </div>

        <div id="ktx-memo-display-v2" class="ktx-memo-area-v2"></div>

        <div style="padding: 10px 18px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #f1f5f9; display:flex; justify-content:space-between;">
            <span>1분 간격 자동 갱신</span><span>최근: <span id="ktx-last-update-v2">--:--:--</span></span>
        </div>
    </div>

    <script>
    let ktxStationListV2 = [];
    const ktxKeyFinalV2 = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    window.ktxVoiceEnabledV2 = false;
    window.ktxAnnouncedV2 = new Set();
    let currentKtxFullDataV2 = [];
    let ktxCurrentPageV2 = 1;
    const ktxItemsPerPageV2 = 10;

    function toggleKtxVoiceV2() {
        window.ktxVoiceEnabledV2 = !window.ktxVoiceEnabledV2;
        const btn = document.getElementById('ktx-voice-toggle-v2');
        const txt = btn.querySelector('.v-txt-v2'), ico = btn.querySelector('.v-ico-v2');
        if(window.ktxVoiceEnabledV2) {
            btn.classList.add('active'); txt.innerText = "음성 켬"; ico.innerText = "🔊";
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); txt.innerText = "음성 끔"; ico.innerText = "🔈";
            window.speechSynthesis.cancel();
        }
    }

    function updateKtxClockV2() {
        const now = new Date();
        const clockEl = document.getElementById('ktx-live-clock-v2');
        if (clockEl) { clockEl.innerText = `${now.getMonth() + 1}.${now.getDate()} ${now.getHours().toString().padStart(2, '0')}:${now.getMinutes().toString().padStart(2, '0')} 기준`; }
    }
    setInterval(updateKtxClockV2, 1000);

    async function ktxMasterLoadV2() {
        updateKtxClockV2();
        ktxStationListV2.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinalV2}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())));
            const parser = new DOMParser();
            results.forEach(xmlStr => {
                const xml = parser.parseFromString(xmlStr, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!ktxStationListV2.find(s => s.id === id)) ktxStationListV2.push({ name, id });
                });
            });
            if(document.getElementById('ktx-dep-field-v2').value && document.getElementById('ktx-arr-field-v2').value) runKtxLiveSearchV2(false);
        } catch (e) { console.log("V2 Station data fail"); }
    }

    function renderKtxPageV2(page) {
        const tbody = document.getElementById('ktx-live-tbody-v2');
        const now = new Date();
        const start = (page - 1) * ktxItemsPerPageV2;
        const end = start + ktxItemsPerPageV2;
        const pageData = currentKtxFullDataV2.slice(start, end);
        let html = '';
        pageData.forEach((r, idx) => {
            const diffMs = r.depDate - now;
            const diffMin = Math.round(diffMs / 60000);
            
            if (window.ktxVoiceEnabledV2 && diffMin === 15) {
                const key = r.no + "_" + r.dep_n + "_" + r.dep_time;
                if (!window.ktxAnnouncedV2.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 ${r.dep_n}역에서 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnouncedV2.add(key);
                }
            }

            const soon = (diffMin <= 15 && diffMin >= 0) ? '<span class="ktx-badge-soon-v2">출발임박</span>' : '';
            const durationTotal = Math.round((r.arrDate - r.depDate) / 60000);
            const h_dur = Math.floor(durationTotal / 60);
            const m_dur = durationTotal % 60;
            const durationStr = `${String(h_dur).padStart(2, '0')}:${String(m_dur).padStart(2, '0')} 소요`;
            
            let timeStatus = '';
            if (diffMin < 0) {
                timeStatus = '<div class="ktx-status-text-v2" style="color:#64748b;">운행종료</div>';
            } else {
                timeStatus = `<div class="ktx-status-text-v2">${diffMin===0?'출발대기':diffMin+'분 후 출발'}</div>`;
            }

            html += `<tr class="ktx-row-fade-v2" style="animation-delay:${idx*0.05}s;"><td><span class="ktx-train-no-v2">${r.no}호</span><span class="ktx-grade-name-v2">${r.grade}</span><span class="v-tag-ok-v2">정상운행</span></td><td><div class="ktx-station-name-v2">${r.dep_n}역</div><span class="v-tag-duration-v2">${durationStr}</span></td><td>${soon}${timeStatus}<div class="ktx-time-info-v2">${r.dep_time} 출발</div></td><td><div class="ktx-station-name-v2">${r.arr_n}역</div><div class="ktx-time-info-v2" style="color:#0045e6;">${r.arr_time} 도착</div></td></tr>`;
        });
        tbody.innerHTML = html;
        document.getElementById('ktx-current-page-v2').innerText = page;
        document.getElementById('ktx-prev-page-v2').disabled = (page === 1);
        document.getElementById('ktx-next-page-v2').disabled = (page === Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2));
    }

    function changeKtxPageV2(dir) {
        const total = Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2);
        let target = ktxCurrentPageV2 + dir;
        if (target >= 1 && target <= total) { ktxCurrentPageV2 = target; renderKtxPageV2(ktxCurrentPageV2); }
    }

    async function runKtxLiveSearchV2(manual = false) {
        const btn = document.getElementById('ktx-btn-submit-v2');
        let d_val = document.getElementById('ktx-dep-field-v2').value.trim();
        let a_val = document.getElementById('ktx-arr-field-v2').value.trim();
        if (!d_val || !a_val) { if(manual) alert("출발역과 도착역을 모두 입력하세요."); return; }
        
        btn.innerText = "데이터 검색 중..."; btn.classList.add('is-searching'); btn.disabled = true;
        d_val = d_val.replace(/역$/, ''); a_val = a_val.replace(/역$/, '');
        
        const tbody = document.getElementById('ktx-live-tbody-v2');
        const memoDiv = document.getElementById('ktx-memo-display-v2');
        const pgCtrl = document.getElementById('ktx-pagination-ctrl-v2');
        if(manual) tbody.classList.add('ktx-loading-v2');

        const findStation = (n) => {
            if (n === "여수" || n === "여수엑스포") return { name: "여수EXPO", id: "NAT041993" };
            return ktxStationListV2.find(s => s.name === n || s.name === n + '역');
        }
        const dep = findStation(d_val); const arr = findStation(a_val);
        if (!dep || !arr) { 
            tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0;">역 이름을 정확히 입력해 주세요. (예: 부산, 동대구)</td></tr>';
            pgCtrl.style.display = 'none';
            tbody.classList.remove('ktx-loading-v2');
            btn.innerText = "열차 시간 조회하기"; btn.classList.remove('is-searching'); btn.disabled = false; 
            return; 
        }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live_v2');
        fd.append('dep_id', dep.id); fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            const resData = await response.json();
            const now = new Date();
            currentKtxFullDataV2 = resData.trains.map(item => {
                const parseTrainTime = (str) => { if (!str || str.length < 12) return new Date(0); return new Date(str.substring(0,4), str.substring(4,6)-1, str.substring(6,8), str.substring(8,10), str.substring(10,12)); };
                item.depDate = parseTrainTime(item.raw_dep); item.arrDate = parseTrainTime(item.raw_arr);
                if (item.arrDate < item.depDate) item.arrDate.setDate(item.arrDate.getDate() + 1);
                return item;
            }).sort((a, b) => a.depDate - b.depDate);

            if (currentKtxFullDataV2.length > 0) {
                const totalPages = Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2);
                document.getElementById('ktx-total-pages-v2').innerText = totalPages;
                pgCtrl.style.display = 'flex';
                
                let firstUpcomingIdx = currentKtxFullDataV2.findIndex(t => t.depDate.getTime() > (now.getTime() - 300000));
                if (firstUpcomingIdx === -1) firstUpcomingIdx = 0;
                ktxCurrentPageV2 = Math.floor(firstUpcomingIdx / ktxItemsPerPageV2) + 1;

                if(resData.memo_template) {
                    const f_t = currentKtxFullDataV2[0].dep_time;
                    const l_t = currentKtxFullDataV2[currentKtxFullDataV2.length-1].dep_time;
                    const scrollTips = [" 전체 시간표는 하단 페이징을 확인하세요.", " 모든 배차 정보를 페이지별로 확인 가능합니다."];
                    const randomTip = scrollTips[Math.floor(Math.random() * scrollTips.length)];
                    memoDiv.innerText = resData.memo_template.replace('{first_t}', f_t).replace('{last_t}', l_t) + randomTip;
                    memoDiv.style.display = 'block';
                }
                renderKtxPageV2(ktxCurrentPageV2);
                document.getElementById('ktx-last-update-v2').innerText = now.getHours().toString().padStart(2,'0')+':'+now.getMinutes().toString().padStart(2,'0')+':'+now.getSeconds().toString().padStart(2,'0');
            } else {
                tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0; color:#94a3b8;">오늘 운행되는 열차 정보가 없습니다.</td></tr>';
                pgCtrl.style.display = 'none';
            }
        } catch (e) { tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0;">데이터 통신 오류</td></tr>'; }

        tbody.classList.remove('ktx-loading-v2');
        btn.innerText = "열차 시간 조회하기"; btn.classList.remove('is-searching'); btn.disabled = false;
    }

    ktxMasterLoadV2();
    setInterval(() => { if(document.getElementById('ktx-dep-field-v2').value) runKtxLiveSearchV2(false); }, 60000);
    document.addEventListener('keypress', function(e) { if((e.target.id === 'ktx-dep-field-v2' || e.target.id === 'ktx-arr-field-v2') && e.keyCode === 13) runKtxLiveSearchV2(true); });
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>






<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">부전역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">16℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">부전역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%A7%A5%EB%8F%84%EB%82%A0%EB%93%9C+%EB%B6%80%EC%82%B0%EB%B2%94%EC%A0%84DT+%EB%B6%80%EC%82%B0%EA%B4%91%EC%97%AD%EC%8B%9C+%EB%B6%80%EC%82%B0%EC%A7%84%EA%B5%AC+%EB%B2%94%EC%A0%84%EB%8F%99+383-25" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">맥도날드 부산범전DT</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">양식&gt;햄버거</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">부산광역시 부산진구 범전동 383-25</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%AA%85%EB%9E%80%EA%B9%80%EB%B0%A5+%EB%B6%80%EC%82%B0%EA%B4%91%EC%97%AD%EC%8B%9C+%EB%B6%80%EC%82%B0%EC%A7%84%EA%B5%AC+%EB%B6%80%EC%A0%84%EB%8F%99+573-3+%EB%AA%85%EB%9E%80%EA%B9%80%EB%B0%A5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">명란김밥</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">분식&gt;김밥</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">부산광역시 부산진구 부전동 573-3 명란김밥</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%8A%A4%ED%83%80%EB%B2%85%EC%8A%A4+%EB%B6%80%EC%A0%84%EC%97%AD%EC%A0%90+%EB%B6%80%EC%82%B0%EA%B4%91%EC%97%AD%EC%8B%9C+%EB%B6%80%EC%82%B0%EC%A7%84%EA%B5%AC+%EB%B6%80%EC%A0%84%EB%8F%99+573-7+%EC%84%9C%EB%A9%B4%ED%98%B8%ED%85%94+%EB%B3%B5%ED%95%A9%EC%8B%9C%EC%84%A41%2C2%EC%B8%B5+%28%29" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">스타벅스 부전역점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;카페</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">부산광역시 부산진구 부전동 573-7 서면호텔 복합시설1,2층 ()</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%B6%80%EC%82%B0%ED%9A%9F%EC%A7%91+%EB%B6%80%EC%82%B0%EA%B4%91%EC%97%AD%EC%8B%9C+%EB%B6%80%EC%82%B0%EC%A7%84%EA%B5%AC+%EB%B6%80%EC%A0%84%EB%8F%99+341-43+%EB%B6%80%EC%82%B0%ED%9A%9F%EC%A7%91" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">부산횟집</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;생선회</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">부산광역시 부산진구 부전동 341-43 부산횟집</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%9D%B4%EB%B0%94%EB%8F%94%EA%B0%90%EC%9E%90%ED%83%95+%EC%A0%84%ED%8F%AC%EC%A0%90+%EB%B6%80%EC%82%B0%EA%B4%91%EC%97%AD%EC%8B%9C+%EB%B6%80%EC%82%B0%EC%A7%84%EA%B5%AC+%EC%A0%84%ED%8F%AC%EB%8F%99+874-1+%EA%B8%88%EC%A0%95%EB%B9%8C%EB%94%A9" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">이바돔감자탕 전포점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;감자탕</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">부산광역시 부산진구 전포동 874-1 금정빌딩</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">부전역 실시간 주차장 요금</h4>
        
                    <div class="parking-list-container">
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 부전역                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">1,500원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">500원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">15,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 부산광역시 부산진구 부전동 573-1<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 051-441-7782                        </div>
                    </div>
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 부전역2                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">0원</strong> 
                                <small style="color: #94a3b8;">/ 0분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">0원</strong>
                                <small style="color: #94a3b8;">/ 0분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">0원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 부산광역시 부산진구 부전로 181<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 051-441-7782                        </div>
                    </div>
                            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">부전역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 부산광역시 부산진구 부전동 573-1</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:051-441-7782" style="color: #0052a4; font-weight: bold; text-decoration: none;">051-441-7782</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EB%B6%80%EC%A0%84%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="350" height="350" src="https://krailroad.co.kr/wp-content/uploads/2026/05/동해선-ITX-마음-시간표-동대구역-강릉역-부전역-동해역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간.jpg" alt="동해선-ITX-마음-시간표-동대구역-강릉역-부전역-동해역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간" class="wp-image-20922" srcset="https://krailroad.co.kr/wp-content/uploads/2026/05/동해선-ITX-마음-시간표-동대구역-강릉역-부전역-동해역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간.jpg 350w, https://krailroad.co.kr/wp-content/uploads/2026/05/동해선-ITX-마음-시간표-동대구역-강릉역-부전역-동해역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/05/동해선-ITX-마음-시간표-동대구역-강릉역-부전역-동해역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간-150x150.jpg 150w" sizes="auto, (max-width: 350px) 100vw, 350px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>중앙선 ITX-마음 시간표 부전역~안동~청량리역 요금 정차역</title>
		<link>https://krailroad.co.kr/%ec%a4%91%ec%95%99%ec%84%a0-itx-%eb%a7%88%ec%9d%8c-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b6%80%ec%a0%84%ec%97%ad%ec%95%88%eb%8f%99%ec%b2%ad%eb%9f%89%eb%a6%ac%ec%97%ad-%ec%9a%94%ea%b8%88-%ec%a0%95%ec%b0%a8/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Mon, 04 May 2026 02:45:48 +0000</pubDate>
				<category><![CDATA[실시간 열차 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[중앙선 ITX-마음 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=20886</guid>

					<description><![CDATA[수도권인 청량리역에서 시작해 충청과 경북 내륙을 거쳐 남해안의 부전역까지 이어지는 중앙선 ITX-마음 시간표는 중부 내륙의 교통 편의를 획기적으로 개선하는 핵심 데이터로, 과거 중앙선 단선 구간과 노후한 선로로 인해 이동 시간이 길었지만, 현대화 사업과 안동~영천 구간의 개량 사업이 마무리 단계에 접어들며 새로운 전환점을 맞이했습니다. 특히 2023년 말부터 도입된 ITX-마음은 기존 무궁화호의 빈자리를 채우며 청량리~안동, 청량리~동해, 청량리~부전 ... <a title="중앙선 ITX-마음 시간표 부전역~안동~청량리역 요금 정차역" class="read-more button" href="https://krailroad.co.kr/%ec%a4%91%ec%95%99%ec%84%a0-itx-%eb%a7%88%ec%9d%8c-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b6%80%ec%a0%84%ec%97%ad%ec%95%88%eb%8f%99%ec%b2%ad%eb%9f%89%eb%a6%ac%ec%97%ad-%ec%9a%94%ea%b8%88-%ec%a0%95%ec%b0%a8/" aria-label="중앙선 ITX-마음 시간표 부전역~안동~청량리역 요금 정차역 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">수도권인 청량리역에서 시작해 충청과 경북 내륙을 거쳐 남해안의 <a href="https://krailroad.co.kr/%eb%b6%80%ec%a0%84%ec%97%ad-ktx-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%b2%ad%eb%9f%89%eb%a6%ac%c2%b7%ea%b0%95%eb%a6%89%c2%b7%ec%95%88%eb%8f%99%ed%96%89%ec%86%8d%ec%b4%88-%ed%8f%ac%ed%95%ad-%ec%a4%91/">부전역</a>까지 이어지는 중앙선 ITX-마음 시간표는 중부 내륙의 교통 편의를 획기적으로 개선하는 핵심 데이터로, 과거 중앙선 단선 구간과 노후한 선로로 인해 이동 시간이 길었지만, 현대화 사업과 안동~영천 구간의 개량 사업이 마무리 단계에 접어들며 새로운 전환점을 맞이했습니다. 특히 2023년 말부터 도입된 ITX-마음은 기존 무궁화호의 빈자리를 채우며 청량리~안동, 청량리~동해, 청량리~부전 구간 등 주요 역을 더욱 빠르고 쾌적하게 연결하고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>중앙선 ITX-마음 시간표 안내</strong></h2>



<h3 class="wp-block-heading">중앙선 노선 운영과 운행 배경</h3>



<p class="wp-block-paragraph">현재 중앙선 ITX-마음 시간표를 살펴보면 청량리를 기점으로 안동과 동해 부전 방향으로 운행되고 있으며, 이 열차가 중앙선에 투입된 이유는 고속열차인 KTX-이음과 일반 열차 사이의 간극을 메우고, 정차역이 많은 내륙 노선 특성에 맞춰 가속과 감속이 뛰어난 동력분산식 열차를 보급하여 전체적인 운행 효율을 높이기 위함입니다.</p>



<p class="wp-block-paragraph">1️⃣ <strong>주요 구간별 특징</strong> : 청량리~안동, 청량리~부전 노선은 경북 북부권과 부산의 관광과 비즈니스 수요를 책임지며, 청량리~동해 노선은 태백산맥을 넘어 동해안으로 향하는 여행객들에게 빠르고 편리한 이동을 책임지고 있습니다.</p>



<p class="wp-block-paragraph">2️⃣ <strong>미래 전망과 계획</strong> : 안동~영천~부전 구간의 공사가 완료되어 중앙선 ITX-마음 시간표는 대대적인 증편되었으며, 서울역에서 <a href="https://krailroad.co.kr/%eb%b6%80%ec%82%b0%ec%97%ad-itx-%ec%83%88%eb%a7%88%ec%9d%84-itx-%eb%a7%88%ec%9d%8c-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%b2%ab%ec%b0%a8%eb%b6%80%ed%84%b0-%eb%a7%89%ec%b0%a8%ea%b9%8c%ec%a7%80/">부산역</a>까지 내륙을 관통하는 새로운 철도 축으로 자리 잡고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 데이터 기반의 통합 로직</h3>



<p class="wp-block-paragraph">단순히 중앙선 ITX-마음 시간표를 조회하는 기능에 그치지 않고, 아래 로직은 역을 이용하기 전부터 역내 역사 전광판 처럼 실시간 데이터로 설계했습니다. <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a> 데이터베이스와 공공데이터 API를 60초마다 동기화하였읍며, 청량리역이나 안동역 등 각 주요 역의 주차장 위치와, 실시간 주차 요금 정보까지 제공하고 있습니다.</p>



<p class="wp-block-paragraph">그리고 시간 확인이 어렵거나 다른 용무를 해야하는 분들을 위해 상단 메뉴에 음성 안내 로직을 적용했으므로, 기능을 활성화하면 열차 진입 15분 전부터 자동으로 정보를 알려주고, 여기에 실시간 기상 데이터와 연계된 주변 맛집 리스트를 확익할 수 있습니다. 아래 구축된 중앙선 ITX-마음 시간표 안내 로직을 이용해 편리한 여행이 되었으면 합니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">부전 ↔ 청량리 첫차 &amp; 막차</h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">부전<br>↓<br>청량리</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1602호</span><div class="time-display">07:03</div><div class="arrival-info">12:56 도착</div></td><td><span class="train-detail">1604호</span><div class="time-display">15:14</div><div class="arrival-info">20:56 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">안동<br>↓<br>청량리</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1612호</span><div class="time-display">07:06</div><div class="arrival-info">09:47 도착</div></td><td><span class="train-detail">1604호</span><div class="time-display">18:22</div><div class="arrival-info">20:56 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">동해<br>↓<br>청량리</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1642호</span><div class="time-display">7:43</div><div class="arrival-info">11:46 도착</div></td><td><span class="train-detail">1642호</span><div class="time-display">7:43</div><div class="arrival-info">11:46 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">청량리<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">06:38</div><div class="arrival-info">12:20 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">14:48</div><div class="arrival-info">20:28 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">청량리<br>↓<br>안동</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">06:38</div><div class="arrival-info">09:16 도착</div></td><td><span class="train-detail">1613호</span><div class="time-display">17:38</div><div class="arrival-info">20:15 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">청량리<br>↓<br>동해</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1641호</span><div class="time-display">17:08</div><div class="arrival-info">21:08 도착</div></td><td><span class="train-detail">1641호</span><div class="time-display">17:08</div><div class="arrival-info">21:08 도착</div></td></tr></tbody></table></div>


    
    <h2>부전 ↔ 안동 운임 요금표</h2>

    <div id="ktx-app-fl" style="margin-bottom: 40px;">
        <style>
            #ktx-app-fl { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 1px solid #e2e8f0; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.06); }
            .fl-main-table { width: 100%; border-collapse: collapse; table-layout: fixed; border: none; }
            .fl-main-table th { font-size: 13px; color: #64748b; padding: 12px 2px; background: #f8fafc; border-bottom: 1px solid #e2e8f0; text-align: center; font-weight: bold; }
            .fl-main-table td { padding: 15px 4px; border-bottom: 1px solid #f1f5f9; text-align: center; vertical-align: middle; }
            
            .u-no-top { font-size: 11px; color: #94a3b8; display: block; font-weight: 500; margin-bottom: 1px; }
            .u-grade-bottom { font-size: 16px; font-weight: 900; color: #0045e6; display: block; line-height: 1.2; }
            .t-via { font-size: 12px; color: #64748b; display: block; margin-top: 4px; font-weight: 500; }
            
            .t-price { font-weight: 700; font-size: 14px; color: #1e293b; }
            .t-premium { color: #059669; }
            .t-special { color: #e11d48; }
            
            .t-none { display: inline-block; padding: 3px 10px; background: #f8fafc; color: #cbd5e1; border: 1px solid #f1f5f9; border-radius: 6px; font-size: 11px; font-weight: 600; }

            @media (max-width: 600px) {
                .fl-main-table th { font-size: 12px; }
                .u-grade-bottom { font-size: 14px; }
                .t-price { font-size: 12px; }
            }
        </style>

        <div style="overflow-x: auto;">
            <table class="fl-main-table">
                <thead>
                    <tr>
                        <th style="width: 30%;">열차 / 경유지</th>
                        <th style="width: 23%;">일반실</th>
                        <th style="width: 23%;">우등실</th>
                        <th style="width: 24%;">특실</th>
                    </tr>
                </thead>
                <tbody>
                                        <tr>
                        <td>
                            <span class="u-no-top">안동 ↔ 부전</span>
                            <span class="u-grade-bottom">ITX</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                20,500원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">안동 ↔ 부전</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">기본</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                27,700원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                33,200원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">안동 ↔ 부전</span>
                            <span class="u-grade-bottom">무궁화</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                15,100원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">안동 ↔ 부전</span>
                            <span class="u-grade-bottom">무궁화</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                15,100원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                    </tbody>
            </table>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">부전 → 청량리 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>부전</th><th>센텀</th><th>신해운대</th><th>기장</th><th>남창</th><th>태화강</th><th>북울산</th><th>경주</th><th>아화</th><th>영천</th><th>군위</th><th>의성</th><th>안동</th><th>영주</th><th>풍기</th><th>단양</th><th>제천</th><th>원주</th><th>서원주</th><th>양동</th><th>매곡</th><th>일신</th><th>지평</th><th>용문</th><th>양평</th><th>청량리</th></tr></thead><tbody><tr><td>1602</td><td>ITX-마음</td><td>07:03</td><td>07:14</td><td>07:21</td><td>07:31</td><td>07:51</td><td>08:08</td><td>08:17</td><td>08:39</td><td>08:57</td><td>09:08</td><td>09:30</td><td>09:53</td><td>10:13</td><td>10:35</td><td>10:46</td><td>11:01</td><td>11:19</td><td>11:44</td><td>11:52</td><td>12:00</td><td>12:05</td><td>12:10</td><td>12:16</td><td>12:22</td><td>12:29</td><td>12:56</td></tr><tr><td>1604</td><td>ITX-마음</td><td>15:14</td><td>15:25</td><td>15:33</td><td>15:43</td><td>16:03</td><td>16:20</td><td>16:29</td><td>16:50</td><td>17:07</td><td>17:20</td><td>17:41</td><td>18:04</td><td>18:22</td><td>18:43</td><td>18:53</td><td>19:07</td><td>19:25</td><td>19:50</td><td>19:58</td><td>20:08</td><td></td><td></td><td></td><td>20:21</td><td>20:29</td><td>20:56</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">동해 → 청량리 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차종별</th><th>열차번호</th><th>동해</th><th>도계</th><th>태백</th><th>사북</th><th>민둥산</th><th>영월</th><th>제천</th><th>원주</th><th>청량리</th></tr></thead><tbody><tr><td>ITX-마음</td><td>1642</td><td>7:43</td><td>8:23</td><td>8:49</td><td>9:10</td><td>9:19</td><td>9:58</td><td>10:31</td><td>10:55</td><td>11:46</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">안동 → 청량리 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>안동</th><th>영주</th><th>풍기</th><th>단양</th><th>제천</th><th>원주</th><th>서원주</th><th>양동</th><th>매곡</th><th>일신</th><th>지평</th><th>용문</th><th>양평</th><th>덕소</th><th>청량리</th></tr></thead><tbody><tr><td>1612</td><td>ITX-마음</td><td>07:06</td><td>07:27</td><td>07:36</td><td>07:49</td><td>08:07</td><td>08:31</td><td>08:44</td><td>08:54</td><td></td><td></td><td></td><td>09:08</td><td>09:16</td><td>09:34</td><td>09:47</td></tr><tr><td>1602</td><td>ITX-마음</td><td>10:13</td><td>10:35</td><td>10:46</td><td>11:01</td><td>11:19</td><td>11:44</td><td>11:52</td><td>12:00</td><td>12:05</td><td>12:10</td><td>12:16</td><td>12:22</td><td>12:29</td><td></td><td>12:56</td></tr><tr><td>1614</td><td>ITX-마음</td><td>14:30</td><td>14:51</td><td>15:00</td><td>15:13</td><td>15:31</td><td>15:55</td><td>16:04</td><td>16:14</td><td></td><td></td><td></td><td>16:28</td><td>16:36</td><td>16:53</td><td>17:06</td></tr><tr><td>1604</td><td>ITX-마음</td><td>18:22</td><td>18:43</td><td>18:53</td><td>19:07</td><td>19:25</td><td>19:50</td><td>19:58</td><td>20:08</td><td></td><td></td><td></td><td>20:21</td><td>20:29</td><td></td><td>20:56</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">청량리 → 부전 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>청량리</th><th>양평</th><th>용문</th><th>지평</th><th>양동</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th><th>의성</th><th>군위</th><th>영천</th><th>아화</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>06:38</td><td>07:08</td><td>07:16</td><td>07:21</td><td>07:31</td><td>07:40</td><td>07:47</td><td>08:05</td><td>08:14</td><td>08:31</td><td>08:44</td><td>08:55</td><td>09:16</td><td>09:34</td><td>09:52</td><td>10:14</td><td>10:26</td><td>10:43</td><td>11:04</td><td>11:13</td><td>11:30</td><td>11:51</td><td>12:02</td><td>12:10</td><td>12:20</td></tr><tr><td>1603</td><td>ITX-마음</td><td>14:48</td><td>15:18</td><td>15:26</td><td>15:31</td><td>15:46</td><td>15:56</td><td>16:03</td><td></td><td>16:28</td><td>16:45</td><td>16:58</td><td>17:10</td><td>17:31</td><td>17:49</td><td>18:06</td><td>18:27</td><td>18:38</td><td>18:55</td><td>19:15</td><td>19:23</td><td>19:39</td><td>20:00</td><td>20:10</td><td>20:17</td><td>20:28</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">청량리 → 동해 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차종별</th><th>열차번호</th><th>청량리</th><th>원주</th><th>제천</th><th>영월</th><th>민둥산</th><th>사북</th><th>태백</th><th>도계</th><th>동해</th></tr></thead><tbody><tr><td>ITX-마음</td><td>1641</td><td>17:08</td><td>18:02</td><td>18:26</td><td>18:56</td><td>19:35</td><td>19:44</td><td>20:04</td><td>20:30</td><td>21:08</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">청량리 → 안동 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>청량리</th><th>양평</th><th>용문</th><th>지평</th><th>양동</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th><th>의성</th><th>군위</th><th>영천</th><th>아화</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>06:38</td><td>07:08</td><td>07:16</td><td>07:21</td><td>07:31</td><td>07:40</td><td>07:47</td><td>08:05</td><td>08:14</td><td>08:31</td><td>08:44</td><td>08:55</td><td>09:16</td><td>09:34</td><td>09:52</td><td>10:14</td><td>10:26</td><td>10:43</td><td>11:04</td><td>11:13</td><td>11:30</td><td>11:51</td><td>12:02</td><td>12:10</td><td>12:20</td></tr><tr><td>1603</td><td>ITX-마음</td><td>14:48</td><td>15:18</td><td>15:26</td><td>15:31</td><td>15:46</td><td>15:56</td><td>16:03</td><td></td><td>16:28</td><td>16:45</td><td>16:58</td><td>17:10</td><td>17:31</td><td>17:49</td><td>18:06</td><td>18:27</td><td>18:38</td><td>18:55</td><td>19:15</td><td>19:23</td><td>19:39</td><td>20:00</td><td>20:10</td><td>20:17</td><td>20:28</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">전국 기차 시간표 및 운임 조회</h2>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #ktx-live-app-v2 { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 1px solid #e2e8f0; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.06); min-height: 800px; }
        .ktx-top-bar-v2 { background: #0045e6; padding: 15px 20px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .ktx-top-bar-v2 b { font-size: 17px; }
        .ktx-live-label-v2 { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 900; animation: ktx_pulse_v2 1.5s infinite; }
        @keyframes ktx_pulse_v2 { 50% { opacity: 0.4; } }
        .ktx-search-box-v2 { padding: 15px; background: #f8fafc; border-bottom: 1px solid #eee; }
        .ktx-input-flex-v2 { display: flex; gap: 8px; margin-bottom: 10px; }
        .ktx-input-flex-v2 input { flex: 1; min-width: 0; padding: 12px; border-radius: 8px; border: 1px solid #cbd5e1; font-size: 16px !important; outline: none; background: #fff; -webkit-appearance: none; }
        #ktx-btn-submit-v2 { width: 100%; padding: 15px; background: #64748b; color: #fff; border: none; border-radius: 8px; cursor: pointer; font-weight: bold; font-size: 16px; transition: all 0.3s; height: 50px; }
        #ktx-btn-submit-v2:hover { background: #475569; }
        #ktx-btn-submit-v2.is-searching { background: #6366f1 !important; cursor: wait; }
        .ktx-memo-area-v2 { padding: 12px 15px; background: #fffbeb; color: #92400e; font-size: 14px; line-height: 1.6; border-top: 1px solid #fef3c7; display: none; word-break: keep-all; min-height: 45px; }
        .ktx-main-table-v2 { width: 100%; border-collapse: collapse; table-layout: fixed; border: none; min-height: 700px; }
        .ktx-main-table-v2 th { font-size: 13px; color: #64748b; padding: 12px 2px; background: #f1f5f9; border-bottom: 1px solid #e2e8f0; text-align: center; }
        .ktx-main-table-v2 td { padding: 15px 4px; border-bottom: none !important; text-align: center; vertical-align: middle; }
        .ktx-status-text-v2 { color: #e11d48; font-weight: 800; font-size: 14px; margin: 3px 0; white-space: nowrap; letter-spacing: -0.5px; }
        .ktx-grade-name-v2 { font-size: 16px; font-weight: 800; color: #0045e6; line-height: 1.2; display: block; }
        .ktx-train-no-v2 { font-size: 11px; color: #94a3b8; display: block; margin-top: 2px; }
        .v-tag-ok-v2 { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        .v-tag-duration-v2 { font-size: 10px; color: #0045e6; background: #eff6ff; padding: 1px 4px; border-radius: 3px; border: 1px solid #dbeafe; display: inline-block; margin-top: 4px; font-weight: bold; }
        .ktx-time-info-v2 { color: #475569; font-size: 12px; font-weight: 600; }
        .ktx-station-name-v2 { font-size: 14px; font-weight: 700; color: #1e293b; }

        .ktx-badge-soon-v2 { 
            display: inline-block;
            background: #e11d48; 
            color: #fff; 
            padding: 4px 10px; 
            border-radius: 6px; 
            font-size: 11px; 
            font-weight: 900; 
            letter-spacing: -0.2px;
            margin-bottom: 4px;
            box-shadow: 0 2px 4px rgba(225, 29, 72, 0.2);
            animation: ktx_v4_pulse_v2 1.2s infinite ease-in-out; 
        }
        @keyframes ktx_v4_pulse_v2 { 0% { opacity: 1; transform: scale(1); } 50% { opacity: 0.6; transform: scale(0.96); } 100% { opacity: 1; transform: scale(1); } }

        .ktx-loading-v2 { opacity: 0.3; }
        .ktx-row-fade-v2 { animation: ktxFadeInUp_v2 0.5s ease-out forwards; opacity: 0; }
        @keyframes ktxFadeInUp_v2 { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }

        .ktx-voice-btn-v2 { padding: 4px 12px; border-radius: 15px; border: 2px solid rgba(255,255,255,0.6); background: rgba(0,0,0,0.15); font-size: 11px; font-weight: 900; color: #fff; cursor: pointer; display: inline-flex; align-items: center; gap: 4px; height: 26px; transition: 0.2s; line-height: 1; margin-left:10px; }
        .ktx-voice-btn-v2.active { background: #fff; color: #0045e6; border-color: #fff; box-shadow: 0 0 10px rgba(255,255,255,0.3); }

        .ktx-pagination-v2 { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 20px; background: #fff; border-top: 1px solid #f1f5f9; }
        .ktx-page-btn-v2 { padding: 8px 16px; border: 1px solid #e2e8f0; border-radius: 6px; font-size: 13px; color: #64748b; background: #fff; cursor: pointer; transition: 0.2s; }
        .ktx-page-btn-v2:hover:not(:disabled) { background: #f1f5f9; border-color: #cbd5e1; }
        .ktx-page-btn-v2:disabled { opacity: 0.4; cursor: not-allowed; }
        .ktx-page-info-v2 { font-size: 14px; font-weight: bold; color: #0045e6; }
    </style>

    <div id="ktx-live-app-v2">
        <div class="ktx-top-bar-v2">
            <div style="display: flex; align-items: center;">
                <b><span id="ktx-live-clock-v2" style="font-size:14px; font-weight:bold; opacity:1;"></span></b>
                <button class="ktx-voice-btn-v2" id="ktx-voice-toggle-v2" onclick="toggleKtxVoiceV2()">
                    <span class="v-ico-v2">🔈</span> <span class="v-txt-v2">음성 끔</span>
                </button>
            </div>
            <div class="ktx-live-label-v2">LIVE</div>
        </div>
        <div class="ktx-search-box-v2">
            <div class="ktx-input-flex-v2">
                <input type="text" id="ktx-dep-field-v2" placeholder="출발역" value="">
                <input type="text" id="ktx-arr-field-v2" placeholder="도착역" value="">
            </div>
            <button id="ktx-btn-submit-v2" onclick="runKtxLiveSearchV2(true)">열차 시간 조회하기</button>
        </div>
        
        <table class="ktx-main-table-v2">
            <thead><tr><th style="width: 24%;">열차정보</th><th style="width: 24%;">출발역</th><th style="width: 28%;">출발예정</th><th style="width: 24%;">도착역</th></tr></thead>
            <tbody id="ktx-live-tbody-v2">
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr id="ktx-init-msg-v2"><td colspan="4" style="position:absolute; width:100%; left:0; padding:70px 0; color:#94a3b8; font-size:13px; text-align:center;">역 이름을 입력하고 조회해 주세요.</td></tr>
            </tbody>
        </table>

        <div id="ktx-pagination-ctrl-v2" class="ktx-pagination-v2" style="display:none;">
            <button class="ktx-page-btn-v2" id="ktx-prev-page-v2" onclick="changeKtxPageV2(-1)">&laquo; 이전</button>
            <span class="ktx-page-info-v2"><span id="ktx-current-page-v2">1</span> / <span id="ktx-total-pages-v2">1</span></span>
            <button class="ktx-page-btn-v2" id="ktx-next-page-v2" onclick="changeKtxPageV2(1)">다음 &raquo;</button>
        </div>

        <div id="ktx-memo-display-v2" class="ktx-memo-area-v2"></div>

        <div style="padding: 10px 18px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #f1f5f9; display:flex; justify-content:space-between;">
            <span>1분 간격 자동 갱신</span><span>최근: <span id="ktx-last-update-v2">--:--:--</span></span>
        </div>
    </div>

    <script>
    let ktxStationListV2 = [];
    const ktxKeyFinalV2 = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    window.ktxVoiceEnabledV2 = false;
    window.ktxAnnouncedV2 = new Set();
    let currentKtxFullDataV2 = [];
    let ktxCurrentPageV2 = 1;
    const ktxItemsPerPageV2 = 10;

    function toggleKtxVoiceV2() {
        window.ktxVoiceEnabledV2 = !window.ktxVoiceEnabledV2;
        const btn = document.getElementById('ktx-voice-toggle-v2');
        const txt = btn.querySelector('.v-txt-v2'), ico = btn.querySelector('.v-ico-v2');
        if(window.ktxVoiceEnabledV2) {
            btn.classList.add('active'); txt.innerText = "음성 켬"; ico.innerText = "🔊";
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); txt.innerText = "음성 끔"; ico.innerText = "🔈";
            window.speechSynthesis.cancel();
        }
    }

    function updateKtxClockV2() {
        const now = new Date();
        const clockEl = document.getElementById('ktx-live-clock-v2');
        if (clockEl) { clockEl.innerText = `${now.getMonth() + 1}.${now.getDate()} ${now.getHours().toString().padStart(2, '0')}:${now.getMinutes().toString().padStart(2, '0')} 기준`; }
    }
    setInterval(updateKtxClockV2, 1000);

    async function ktxMasterLoadV2() {
        updateKtxClockV2();
        ktxStationListV2.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinalV2}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())));
            const parser = new DOMParser();
            results.forEach(xmlStr => {
                const xml = parser.parseFromString(xmlStr, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!ktxStationListV2.find(s => s.id === id)) ktxStationListV2.push({ name, id });
                });
            });
            if(document.getElementById('ktx-dep-field-v2').value && document.getElementById('ktx-arr-field-v2').value) runKtxLiveSearchV2(false);
        } catch (e) { console.log("V2 Station data fail"); }
    }

    function renderKtxPageV2(page) {
        const tbody = document.getElementById('ktx-live-tbody-v2');
        const now = new Date();
        const start = (page - 1) * ktxItemsPerPageV2;
        const end = start + ktxItemsPerPageV2;
        const pageData = currentKtxFullDataV2.slice(start, end);
        let html = '';
        pageData.forEach((r, idx) => {
            const diffMs = r.depDate - now;
            const diffMin = Math.round(diffMs / 60000);
            
            if (window.ktxVoiceEnabledV2 && diffMin === 15) {
                const key = r.no + "_" + r.dep_n + "_" + r.dep_time;
                if (!window.ktxAnnouncedV2.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 ${r.dep_n}역에서 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnouncedV2.add(key);
                }
            }

            const soon = (diffMin <= 15 && diffMin >= 0) ? '<span class="ktx-badge-soon-v2">출발임박</span>' : '';
            const durationTotal = Math.round((r.arrDate - r.depDate) / 60000);
            const h_dur = Math.floor(durationTotal / 60);
            const m_dur = durationTotal % 60;
            const durationStr = `${String(h_dur).padStart(2, '0')}:${String(m_dur).padStart(2, '0')} 소요`;
            
            let timeStatus = '';
            if (diffMin < 0) {
                timeStatus = '<div class="ktx-status-text-v2" style="color:#64748b;">운행종료</div>';
            } else {
                timeStatus = `<div class="ktx-status-text-v2">${diffMin===0?'출발대기':diffMin+'분 후 출발'}</div>`;
            }

            html += `<tr class="ktx-row-fade-v2" style="animation-delay:${idx*0.05}s;"><td><span class="ktx-train-no-v2">${r.no}호</span><span class="ktx-grade-name-v2">${r.grade}</span><span class="v-tag-ok-v2">정상운행</span></td><td><div class="ktx-station-name-v2">${r.dep_n}역</div><span class="v-tag-duration-v2">${durationStr}</span></td><td>${soon}${timeStatus}<div class="ktx-time-info-v2">${r.dep_time} 출발</div></td><td><div class="ktx-station-name-v2">${r.arr_n}역</div><div class="ktx-time-info-v2" style="color:#0045e6;">${r.arr_time} 도착</div></td></tr>`;
        });
        tbody.innerHTML = html;
        document.getElementById('ktx-current-page-v2').innerText = page;
        document.getElementById('ktx-prev-page-v2').disabled = (page === 1);
        document.getElementById('ktx-next-page-v2').disabled = (page === Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2));
    }

    function changeKtxPageV2(dir) {
        const total = Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2);
        let target = ktxCurrentPageV2 + dir;
        if (target >= 1 && target <= total) { ktxCurrentPageV2 = target; renderKtxPageV2(ktxCurrentPageV2); }
    }

    async function runKtxLiveSearchV2(manual = false) {
        const btn = document.getElementById('ktx-btn-submit-v2');
        let d_val = document.getElementById('ktx-dep-field-v2').value.trim();
        let a_val = document.getElementById('ktx-arr-field-v2').value.trim();
        if (!d_val || !a_val) { if(manual) alert("출발역과 도착역을 모두 입력하세요."); return; }
        
        btn.innerText = "데이터 검색 중..."; btn.classList.add('is-searching'); btn.disabled = true;
        d_val = d_val.replace(/역$/, ''); a_val = a_val.replace(/역$/, '');
        
        const tbody = document.getElementById('ktx-live-tbody-v2');
        const memoDiv = document.getElementById('ktx-memo-display-v2');
        const pgCtrl = document.getElementById('ktx-pagination-ctrl-v2');
        if(manual) tbody.classList.add('ktx-loading-v2');

        const findStation = (n) => {
            if (n === "여수" || n === "여수엑스포") return { name: "여수EXPO", id: "NAT041993" };
            return ktxStationListV2.find(s => s.name === n || s.name === n + '역');
        }
        const dep = findStation(d_val); const arr = findStation(a_val);
        if (!dep || !arr) { 
            tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0;">역 이름을 정확히 입력해 주세요. (예: 부산, 동대구)</td></tr>';
            pgCtrl.style.display = 'none';
            tbody.classList.remove('ktx-loading-v2');
            btn.innerText = "열차 시간 조회하기"; btn.classList.remove('is-searching'); btn.disabled = false; 
            return; 
        }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live_v2');
        fd.append('dep_id', dep.id); fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            const resData = await response.json();
            const now = new Date();
            currentKtxFullDataV2 = resData.trains.map(item => {
                const parseTrainTime = (str) => { if (!str || str.length < 12) return new Date(0); return new Date(str.substring(0,4), str.substring(4,6)-1, str.substring(6,8), str.substring(8,10), str.substring(10,12)); };
                item.depDate = parseTrainTime(item.raw_dep); item.arrDate = parseTrainTime(item.raw_arr);
                if (item.arrDate < item.depDate) item.arrDate.setDate(item.arrDate.getDate() + 1);
                return item;
            }).sort((a, b) => a.depDate - b.depDate);

            if (currentKtxFullDataV2.length > 0) {
                const totalPages = Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2);
                document.getElementById('ktx-total-pages-v2').innerText = totalPages;
                pgCtrl.style.display = 'flex';
                
                let firstUpcomingIdx = currentKtxFullDataV2.findIndex(t => t.depDate.getTime() > (now.getTime() - 300000));
                if (firstUpcomingIdx === -1) firstUpcomingIdx = 0;
                ktxCurrentPageV2 = Math.floor(firstUpcomingIdx / ktxItemsPerPageV2) + 1;

                if(resData.memo_template) {
                    const f_t = currentKtxFullDataV2[0].dep_time;
                    const l_t = currentKtxFullDataV2[currentKtxFullDataV2.length-1].dep_time;
                    const scrollTips = [" 전체 시간표는 하단 페이징을 확인하세요.", " 모든 배차 정보를 페이지별로 확인 가능합니다."];
                    const randomTip = scrollTips[Math.floor(Math.random() * scrollTips.length)];
                    memoDiv.innerText = resData.memo_template.replace('{first_t}', f_t).replace('{last_t}', l_t) + randomTip;
                    memoDiv.style.display = 'block';
                }
                renderKtxPageV2(ktxCurrentPageV2);
                document.getElementById('ktx-last-update-v2').innerText = now.getHours().toString().padStart(2,'0')+':'+now.getMinutes().toString().padStart(2,'0')+':'+now.getSeconds().toString().padStart(2,'0');
            } else {
                tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0; color:#94a3b8;">오늘 운행되는 열차 정보가 없습니다.</td></tr>';
                pgCtrl.style.display = 'none';
            }
        } catch (e) { tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0;">데이터 통신 오류</td></tr>'; }

        tbody.classList.remove('ktx-loading-v2');
        btn.innerText = "열차 시간 조회하기"; btn.classList.remove('is-searching'); btn.disabled = false;
    }

    ktxMasterLoadV2();
    setInterval(() => { if(document.getElementById('ktx-dep-field-v2').value) runKtxLiveSearchV2(false); }, 60000);
    document.addEventListener('keypress', function(e) { if((e.target.id === 'ktx-dep-field-v2' || e.target.id === 'ktx-arr-field-v2') && e.keyCode === 13) runKtxLiveSearchV2(true); });
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">부전역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">부전역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '21';
            let curName = '부전';
            let altCity = '11';
            let altName = '청량리';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">부전역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">16℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">부전역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%A7%A5%EB%8F%84%EB%82%A0%EB%93%9C+%EB%B6%80%EC%82%B0%EB%B2%94%EC%A0%84DT+%EB%B6%80%EC%82%B0%EA%B4%91%EC%97%AD%EC%8B%9C+%EB%B6%80%EC%82%B0%EC%A7%84%EA%B5%AC+%EB%B2%94%EC%A0%84%EB%8F%99+383-25" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">맥도날드 부산범전DT</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">양식&gt;햄버거</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">부산광역시 부산진구 범전동 383-25</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%AA%85%EB%9E%80%EA%B9%80%EB%B0%A5+%EB%B6%80%EC%82%B0%EA%B4%91%EC%97%AD%EC%8B%9C+%EB%B6%80%EC%82%B0%EC%A7%84%EA%B5%AC+%EB%B6%80%EC%A0%84%EB%8F%99+573-3+%EB%AA%85%EB%9E%80%EA%B9%80%EB%B0%A5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">명란김밥</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">분식&gt;김밥</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">부산광역시 부산진구 부전동 573-3 명란김밥</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%8A%A4%ED%83%80%EB%B2%85%EC%8A%A4+%EB%B6%80%EC%A0%84%EC%97%AD%EC%A0%90+%EB%B6%80%EC%82%B0%EA%B4%91%EC%97%AD%EC%8B%9C+%EB%B6%80%EC%82%B0%EC%A7%84%EA%B5%AC+%EB%B6%80%EC%A0%84%EB%8F%99+573-7+%EC%84%9C%EB%A9%B4%ED%98%B8%ED%85%94+%EB%B3%B5%ED%95%A9%EC%8B%9C%EC%84%A41%2C2%EC%B8%B5+%28%29" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">스타벅스 부전역점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;카페</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">부산광역시 부산진구 부전동 573-7 서면호텔 복합시설1,2층 ()</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%B6%80%EC%82%B0%ED%9A%9F%EC%A7%91+%EB%B6%80%EC%82%B0%EA%B4%91%EC%97%AD%EC%8B%9C+%EB%B6%80%EC%82%B0%EC%A7%84%EA%B5%AC+%EB%B6%80%EC%A0%84%EB%8F%99+341-43+%EB%B6%80%EC%82%B0%ED%9A%9F%EC%A7%91" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">부산횟집</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;생선회</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">부산광역시 부산진구 부전동 341-43 부산횟집</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%9D%B4%EB%B0%94%EB%8F%94%EA%B0%90%EC%9E%90%ED%83%95+%EC%A0%84%ED%8F%AC%EC%A0%90+%EB%B6%80%EC%82%B0%EA%B4%91%EC%97%AD%EC%8B%9C+%EB%B6%80%EC%82%B0%EC%A7%84%EA%B5%AC+%EC%A0%84%ED%8F%AC%EB%8F%99+874-1+%EA%B8%88%EC%A0%95%EB%B9%8C%EB%94%A9" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">이바돔감자탕 전포점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;감자탕</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">부산광역시 부산진구 전포동 874-1 금정빌딩</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">부전역 실시간 주차장 요금</h4>
        
                    <div class="parking-list-container">
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 부전역                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">1,500원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">500원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">15,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 부산광역시 부산진구 부전동 573-1<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 051-441-7782                        </div>
                    </div>
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 부전역2                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">0원</strong> 
                                <small style="color: #94a3b8;">/ 0분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">0원</strong>
                                <small style="color: #94a3b8;">/ 0분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">0원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 부산광역시 부산진구 부전로 181<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 051-441-7782                        </div>
                    </div>
                            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">부전역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 부산광역시 부산진구 부전동 573-1</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:051-441-7782" style="color: #0052a4; font-weight: bold; text-decoration: none;">051-441-7782</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EB%B6%80%EC%A0%84%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="350" height="350" src="https://krailroad.co.kr/wp-content/uploads/2026/05/중앙선-ITX-마음-시간표-청량리역-안동역-동해역-부전역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간.jpg" alt="중앙선-ITX-마음-시간표-청량리역-안동역-동해역-부전역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간" class="wp-image-20894" srcset="https://krailroad.co.kr/wp-content/uploads/2026/05/중앙선-ITX-마음-시간표-청량리역-안동역-동해역-부전역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간.jpg 350w, https://krailroad.co.kr/wp-content/uploads/2026/05/중앙선-ITX-마음-시간표-청량리역-안동역-동해역-부전역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/05/중앙선-ITX-마음-시간표-청량리역-안동역-동해역-부전역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간-150x150.jpg 150w" sizes="auto, (max-width: 350px) 100vw, 350px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>전라선 ITX-마음 시간표 및 요금 여수역~용산역 실시간 최종정리</title>
		<link>https://krailroad.co.kr/%ec%a0%84%eb%9d%bc%ec%84%a0-itx-%eb%a7%88%ec%9d%8c-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%9a%94%ea%b8%88-%ec%97%ac%ec%88%98%ec%97%ad%ec%9a%a9%ec%82%b0%ec%97%ad-%ec%8b%a4%ec%8b%9c%ea%b0%84/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Sat, 02 May 2026 00:16:10 +0000</pubDate>
				<category><![CDATA[실시간 열차 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[전라선 ITX-마음 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=20869</guid>

					<description><![CDATA[용산역에서 시작해 전북의 중심인 익산역과 전주역 그리고 전남 동부권의 중심 순천역을 지나 여수 바다까지 이어지는 전라선 ITX-마음 시간표는 지역 주민과 여행객을 잇는 중요한 정보입니다. 옛날 전라선은 지형적 특성상 곡선 구간이 많아 속도를 내기 어려운 환경이었지만, 복선전철화 사업을 거치며 한층 쾌적한 철길로 거듭났으며, 특히 2023년 말부터 기존의 노후된 새마을호를 대신해 ITX-마음이 투입된 이유는 차량의 안전성을 높이고, ... <a title="전라선 ITX-마음 시간표 및 요금 여수역~용산역 실시간 최종정리" class="read-more button" href="https://krailroad.co.kr/%ec%a0%84%eb%9d%bc%ec%84%a0-itx-%eb%a7%88%ec%9d%8c-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%9a%94%ea%b8%88-%ec%97%ac%ec%88%98%ec%97%ad%ec%9a%a9%ec%82%b0%ec%97%ad-%ec%8b%a4%ec%8b%9c%ea%b0%84/" aria-label="전라선 ITX-마음 시간표 및 요금 여수역~용산역 실시간 최종정리 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">용산역에서 시작해 전북의 중심인 <a href="https://krailroad.co.kr/%ec%9d%b5%ec%82%b0%ec%97%ad-itx-%ec%83%88%eb%a7%88%ec%9d%84-itx-%eb%a7%88%ec%9d%8c-%ec%9a%a9%ec%82%b0-%eb%aa%a9%ed%8f%ac-%ec%97%ac%ec%88%98-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ed%98%b8%eb%82%a8/">익산역</a>과 <a href="https://krailroad.co.kr/%ec%a0%84%ec%a3%bc%ec%97%ad-itx-%ec%83%88%eb%a7%88%ec%9d%84%c2%b7%eb%a7%88%ec%9d%8c-%ec%8b%9c%ea%b0%84%ed%91%9c-%ed%95%9c%ec%98%a5%eb%a7%88%ec%9d%84-%ec%97%ac%ec%88%98%c2%b7%ec%9a%a9%ec%82%b0%ed%96%89/">전주역</a> 그리고 전남 동부권의 중심 <a href="https://krailroad.co.kr/%ec%88%9c%ec%b2%9c%ec%97%ad-itx-%ec%83%88%eb%a7%88%ec%9d%84%c2%b7%eb%a7%88%ec%9d%8c-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%9a%a9%ec%82%b0%c2%b7%ec%a0%84%ec%a3%bc%c2%b7%ec%97%ac%ec%88%98%ed%96%89-%ec%a0%84/">순천역</a>을 지나 여수 바다까지 이어지는 전라선 ITX-마음 시간표는 지역 주민과 여행객을 잇는 중요한 정보입니다. 옛날 전라선은 지형적 특성상 곡선 구간이 많아 속도를 내기 어려운 환경이었지만, 복선전철화 사업을 거치며 한층 쾌적한 철길로 거듭났으며, 특히 2023년 말부터 기존의 노후된 새마을호를 대신해 ITX-마음이 투입된 이유는 차량의 안전성을 높이고, 정차역이 많은 노선 특성에 맞춰 가속과 감속 성능이 뛰어난 최신 열차를 보급하기 위해서입니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>전라선 ITX-마음 시간표 안내</strong></h2>



<h3 class="wp-block-heading">노선 운영 현황과 이용 포인트</h3>



<p class="wp-block-paragraph">현재 전라선 ITX-마음 시간표를 확인해 보면 하루 왕복 2회라는 다소 적은 횟수로 운행 중임을 알 수 있습니다. 이는 신규 차량의 단계적 도입 과정에서 전국적인 배분과 장거리 노선 우선 배치 원칙에 따른 결과이며, 향후 열차 추가 도입이 마무리되면 운행 횟수는 점차 확대될 전망입니다. 특히 익산역과 <a href="https://krailroad.co.kr/%ec%97%ac%ec%88%98%ec%97%ad-ktx-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%88%9c%ec%b2%9c%ec%a0%84%ec%a3%bc%ec%9a%a9%ec%82%b0%ed%96%89-%ec%a0%84%eb%9d%bc%ec%84%a0-%ed%95%98%ed%96%89-%ec%83%81%ed%96%89-%eb%85%b8/">여수엑스포역</a> 사이 구간은 호남선과 갈라진 후 전라선 본선의 실질적인 수요가 집중되는 지점이라, 해당 구간 내 환승객과 관광객을 위한 데이터 활용도가 매우 높습니다.<br><br>1️⃣ <strong>당일 여행 추천</strong> : 기차를 타고 떠나는 당일치기 나들이로 전주 한옥마을이나 순천만 국가정원은 추천할만한 여행지이며, 철길의 끝인 여수역은 바다와 바로 맞닿아 있어 별도의 교통수단 없이도 여수의 정취를 느낄 수 있습니다.<br><br>2️⃣ <strong>가족 및 아이와 함께하는 여행 </strong>: ITX-마음의 경우 내부에는 수유실과 넓은 화장실, 자동판매기가 배치되어 아이를 동반한 가족 단위 여행시 편리하게 이용할 수 있으며, KTX보다 조금 느릴 수 있다는 점은 단점이지만, 창밖 풍경을 느긋하게 감상하며 적당한 비용으로 여행할 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 데이터 지능형 서비스</h3>



<p class="wp-block-paragraph">아래 자료는 전라선 ITX-마음 시간표 정보를 조회하는 단계를 넘어, 역에 도착 하기 전부터 목적지까지 가는 열차 시간표와 도착시간, 그리고 소요히간까지 실시간 데이터로 안내받으실 수 있으며, <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a> 데이터베이스와 1분마다 자동 동기화되는 공공 API 로직을 통해 열차 위치를 분 단위로 확인 가능하며, 여수역이나 전역주 등 각 도착역의 주차 현황과 시내로 연결되는 버스 도착 정보까지 실시간으로 확인 가능합니다.</p>



<p class="wp-block-paragraph">특히 음성 알림 기능을 활용하면, 기차 진입 15분 전부터 자동으로 음성 안내를 받으실 수 있으며, 실시간 기상 데이터와 맞물린 주변 맛집 정보와 날씨를 확인 할수 있습니다. 앞으로 전라선 ITX-마음 시간표 확대 계획에 맞추어 실시간 API 기반의 서비스를 정확하게 이용하실 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">여수 ↔&nbsp;용산 첫차 &amp; 막차</h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">여수엑스포<br>↓<br>용산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1504호</span><div class="time-display">11:08</div><div class="arrival-info">15:40 도착</div></td><td><span class="train-detail">1508호</span><div class="time-display">15:49</div><div class="arrival-info">20:27 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">여수엑스포<br>↓<br>익산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1522호</span><div class="time-display">06:51</div><div class="arrival-info">08:47 도착</div></td><td><span class="train-detail">1532호</span><div class="time-display">22:40</div><div class="arrival-info">00:30 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">용산<br>↓<br>여수엑스포</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1503호</span><div class="time-display">09:47</div><div class="arrival-info">14:26 도착</div></td><td><span class="train-detail">1507호</span><div class="time-display">17:18</div><div class="arrival-info">21:43 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">익산<br>↓<br>여수엑스포</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1521호</span><div class="time-display">06:42</div><div class="arrival-info">08:40 도착</div></td><td><span class="train-detail">1531호</span><div class="time-display">21:00</div><div class="arrival-info">22:56 도착</div></td></tr></tbody></table></div>


    
    <h2>여수 ↔ 용산 운임 요금표</h2>

    <div id="ktx-app-fl" style="margin-bottom: 40px;">
        <style>
            #ktx-app-fl { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 1px solid #e2e8f0; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.06); }
            .fl-main-table { width: 100%; border-collapse: collapse; table-layout: fixed; border: none; }
            .fl-main-table th { font-size: 13px; color: #64748b; padding: 12px 2px; background: #f8fafc; border-bottom: 1px solid #e2e8f0; text-align: center; font-weight: bold; }
            .fl-main-table td { padding: 15px 4px; border-bottom: 1px solid #f1f5f9; text-align: center; vertical-align: middle; }
            
            .u-no-top { font-size: 11px; color: #94a3b8; display: block; font-weight: 500; margin-bottom: 1px; }
            .u-grade-bottom { font-size: 16px; font-weight: 900; color: #0045e6; display: block; line-height: 1.2; }
            .t-via { font-size: 12px; color: #64748b; display: block; margin-top: 4px; font-weight: 500; }
            
            .t-price { font-weight: 700; font-size: 14px; color: #1e293b; }
            .t-premium { color: #059669; }
            .t-special { color: #e11d48; }
            
            .t-none { display: inline-block; padding: 3px 10px; background: #f8fafc; color: #cbd5e1; border: 1px solid #f1f5f9; border-radius: 6px; font-size: 11px; font-weight: 600; }

            @media (max-width: 600px) {
                .fl-main-table th { font-size: 12px; }
                .u-grade-bottom { font-size: 14px; }
                .t-price { font-size: 12px; }
            }
        </style>

        <div style="overflow-x: auto;">
            <table class="fl-main-table">
                <thead>
                    <tr>
                        <th style="width: 30%;">열차 / 경유지</th>
                        <th style="width: 23%;">일반실</th>
                        <th style="width: 23%;">우등실</th>
                        <th style="width: 24%;">특실</th>
                    </tr>
                </thead>
                <tbody>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 여수</span>
                            <span class="u-grade-bottom">ITX</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                41,100원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 여수엑스포</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">공주</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                47,200원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                66,100원                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 여수엑스포</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">서대전</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                46,000원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                64,400원                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 여수</span>
                            <span class="u-grade-bottom">무궁화</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                27,600원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                    </tbody>
            </table>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">여수 →&nbsp;용산 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>여수엑스포</th><th>여천</th><th>순천</th><th>구례구</th><th>곡성</th><th>남원</th><th>전주</th><th>익산</th><th>논산</th><th>서대전</th><th>조치원</th><th>천안</th><th>평택</th><th>수원</th><th>영등포</th><th>용산</th></tr></thead><tbody><tr><td>1504</td><td>ITX-마음</td><td>11:08</td><td>11:16</td><td>11:32</td><td></td><td></td><td>12:06</td><td>12:34</td><td>12:56</td><td>13:22</td><td>13:53</td><td></td><td>14:37</td><td></td><td>15:06</td><td>15:31</td><td>15:40</td></tr><tr><td>1508</td><td>ITX-마음</td><td>15:49</td><td>15:57</td><td>16:12</td><td>16:28</td><td>16:40</td><td>16:51</td><td>17:19</td><td>17:41</td><td>18:07</td><td>18:38</td><td>19:04</td><td>19:25</td><td>19:37</td><td>19:57</td><td>20:18</td><td>20:27</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">여수 →&nbsp;익산 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>여수엑스포</th><th>여천</th><th>순천</th><th>구례구</th><th>곡성</th><th>남원</th><th>오수</th><th>임실</th><th>전주</th><th>삼례</th><th>익산</th></tr></thead><tbody><tr><td>1522</td><td>ITX-마음</td><td>06:51</td><td>06:59</td><td>07:14</td><td>07:30</td><td>07:42</td><td>07:53</td><td>08:03</td><td>08:11</td><td>08:27</td><td>08:36</td><td>08:47</td></tr><tr><td>1524</td><td>ITX-마음</td><td>10:00</td><td>10:08</td><td>10:23</td><td>10:38</td><td>10:51</td><td>11:02</td><td>11:13</td><td>11:26</td><td>11:44</td><td>11:53</td><td>12:03</td></tr><tr><td>1504</td><td>ITX-마음</td><td>11:08</td><td>11:16</td><td>11:32</td><td></td><td></td><td>12:06</td><td></td><td></td><td>12:34</td><td></td><td>12:56</td></tr><tr><td>1526</td><td>ITX-마음</td><td>12:15</td><td>12:23</td><td>12:39</td><td>12:56</td><td>13:08</td><td>13:19</td><td>13:30</td><td>13:38</td><td>13:55</td><td>14:04</td><td>14:14</td></tr><tr><td>1508</td><td>ITX-마음</td><td>15:49</td><td>15:57</td><td>16:12</td><td>16:28</td><td>16:40</td><td>16:51</td><td></td><td></td><td>17:19</td><td></td><td>17:41</td></tr><tr><td>1528</td><td>ITX-마음</td><td>16:47</td><td>16:55</td><td>17:10</td><td>17:26</td><td>17:38</td><td>17:49</td><td>17:59</td><td>18:07</td><td>18:23</td><td>18:32</td><td>18:43</td></tr><tr><td>1530</td><td>ITX-마음</td><td>21:00</td><td>21:08</td><td>21:24</td><td>21:41</td><td>21:53</td><td>22:04</td><td>22:15</td><td>22:23</td><td>22:41</td><td>22:50</td><td>23:00</td></tr><tr><td>1532</td><td>ITX-마음</td><td>22:40</td><td>22:48</td><td>23:04</td><td>23:21</td><td>23:33</td><td>23:44</td><td></td><td></td><td>00:15</td><td></td><td>00:30</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">용산 →&nbsp;여수 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>용산</th><th>영등포</th><th>수원</th><th>평택</th><th>천안</th><th>서대전</th><th>논산</th><th>익산</th><th>전주</th><th>남원</th><th>곡성</th><th>구례구</th><th>순천</th><th>여천</th><th>여수엑스포</th></tr></thead><tbody><tr><td>1503</td><td>ITX-마음</td><td>09:47</td><td>09:56</td><td>10:19</td><td>10:38</td><td>10:51</td><td>11:36</td><td>12:08</td><td>12:37</td><td>12:53</td><td>13:21</td><td>13:32</td><td>13:44</td><td>14:02</td><td>14:17</td><td>14:26</td></tr><tr><td>1507</td><td>ITX-마음</td><td>17:18</td><td>17:27</td><td>17:50</td><td></td><td>18:19</td><td>19:04</td><td>19:35</td><td>20:04</td><td>20:19</td><td>20:46</td><td></td><td></td><td>21:20</td><td>21:34</td><td>21:43</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">익산 →&nbsp;여수 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>익산</th><th>삼례</th><th>전주</th><th>임실</th><th>오수</th><th>남원</th><th>곡성</th><th>구례구</th><th>순천</th><th>여천</th><th>여수엑스포</th></tr></thead><tbody><tr><td>1521</td><td>ITX-마음</td><td>06:42</td><td>06:53</td><td>07:01</td><td>07:18</td><td>07:26</td><td>07:37</td><td>07:48</td><td>08:00</td><td>08:17</td><td>08:32</td><td>08:40</td></tr><tr><td>1523</td><td>ITX-마음</td><td>07:34</td><td>07:45</td><td>07:53</td><td>08:10</td><td>08:18</td><td>08:29</td><td>08:40</td><td>08:52</td><td>09:09</td><td>09:24</td><td>09:32</td></tr><tr><td>1525</td><td>ITX-마음</td><td>09:30</td><td>09:40</td><td>09:50</td><td>10:06</td><td>10:20</td><td>10:32</td><td>10:43</td><td>10:55</td><td>11:11</td><td>11:26</td><td>11:34</td></tr><tr><td>1503</td><td>ITX-마음</td><td>12:37</td><td></td><td>12:53</td><td></td><td></td><td>13:21</td><td>13:32</td><td>13:44</td><td>14:02</td><td>14:17</td><td>14:26</td></tr><tr><td>1527</td><td>ITX-마음</td><td>13:58</td><td>14:09</td><td>14:18</td><td>14:39</td><td>14:48</td><td>15:00</td><td>15:11</td><td>15:24</td><td>15:41</td><td>15:57</td><td>16:05</td></tr><tr><td>1529</td><td>ITX-마음</td><td>17:00</td><td>17:11</td><td>17:20</td><td>17:38</td><td>17:47</td><td>18:00</td><td>18:11</td><td>18:24</td><td>18:42</td><td>18:59</td><td>19:08</td></tr><tr><td>1531</td><td>ITX-마음</td><td>21:00</td><td>21:10</td><td>21:20</td><td>21:36</td><td>21:44</td><td>21:54</td><td>22:05</td><td>22:17</td><td>22:33</td><td>22:48</td><td>22:56</td></tr><tr><td>1507</td><td>ITX-마음</td><td>20:04</td><td></td><td>20:19</td><td></td><td></td><td>20:46</td><td></td><td></td><td>21:20</td><td>21:34</td><td>21:43</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">전국 기차 시간표 및 운임 조회</h2>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #ktx-live-app-v2 { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 1px solid #e2e8f0; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.06); min-height: 800px; }
        .ktx-top-bar-v2 { background: #0045e6; padding: 15px 20px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .ktx-top-bar-v2 b { font-size: 17px; }
        .ktx-live-label-v2 { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 900; animation: ktx_pulse_v2 1.5s infinite; }
        @keyframes ktx_pulse_v2 { 50% { opacity: 0.4; } }
        .ktx-search-box-v2 { padding: 15px; background: #f8fafc; border-bottom: 1px solid #eee; }
        .ktx-input-flex-v2 { display: flex; gap: 8px; margin-bottom: 10px; }
        .ktx-input-flex-v2 input { flex: 1; min-width: 0; padding: 12px; border-radius: 8px; border: 1px solid #cbd5e1; font-size: 16px !important; outline: none; background: #fff; -webkit-appearance: none; }
        #ktx-btn-submit-v2 { width: 100%; padding: 15px; background: #64748b; color: #fff; border: none; border-radius: 8px; cursor: pointer; font-weight: bold; font-size: 16px; transition: all 0.3s; height: 50px; }
        #ktx-btn-submit-v2:hover { background: #475569; }
        #ktx-btn-submit-v2.is-searching { background: #6366f1 !important; cursor: wait; }
        .ktx-memo-area-v2 { padding: 12px 15px; background: #fffbeb; color: #92400e; font-size: 14px; line-height: 1.6; border-top: 1px solid #fef3c7; display: none; word-break: keep-all; min-height: 45px; }
        .ktx-main-table-v2 { width: 100%; border-collapse: collapse; table-layout: fixed; border: none; min-height: 700px; }
        .ktx-main-table-v2 th { font-size: 13px; color: #64748b; padding: 12px 2px; background: #f1f5f9; border-bottom: 1px solid #e2e8f0; text-align: center; }
        .ktx-main-table-v2 td { padding: 15px 4px; border-bottom: none !important; text-align: center; vertical-align: middle; }
        .ktx-status-text-v2 { color: #e11d48; font-weight: 800; font-size: 14px; margin: 3px 0; white-space: nowrap; letter-spacing: -0.5px; }
        .ktx-grade-name-v2 { font-size: 16px; font-weight: 800; color: #0045e6; line-height: 1.2; display: block; }
        .ktx-train-no-v2 { font-size: 11px; color: #94a3b8; display: block; margin-top: 2px; }
        .v-tag-ok-v2 { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        .v-tag-duration-v2 { font-size: 10px; color: #0045e6; background: #eff6ff; padding: 1px 4px; border-radius: 3px; border: 1px solid #dbeafe; display: inline-block; margin-top: 4px; font-weight: bold; }
        .ktx-time-info-v2 { color: #475569; font-size: 12px; font-weight: 600; }
        .ktx-station-name-v2 { font-size: 14px; font-weight: 700; color: #1e293b; }

        .ktx-badge-soon-v2 { 
            display: inline-block;
            background: #e11d48; 
            color: #fff; 
            padding: 4px 10px; 
            border-radius: 6px; 
            font-size: 11px; 
            font-weight: 900; 
            letter-spacing: -0.2px;
            margin-bottom: 4px;
            box-shadow: 0 2px 4px rgba(225, 29, 72, 0.2);
            animation: ktx_v4_pulse_v2 1.2s infinite ease-in-out; 
        }
        @keyframes ktx_v4_pulse_v2 { 0% { opacity: 1; transform: scale(1); } 50% { opacity: 0.6; transform: scale(0.96); } 100% { opacity: 1; transform: scale(1); } }

        .ktx-loading-v2 { opacity: 0.3; }
        .ktx-row-fade-v2 { animation: ktxFadeInUp_v2 0.5s ease-out forwards; opacity: 0; }
        @keyframes ktxFadeInUp_v2 { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }

        .ktx-voice-btn-v2 { padding: 4px 12px; border-radius: 15px; border: 2px solid rgba(255,255,255,0.6); background: rgba(0,0,0,0.15); font-size: 11px; font-weight: 900; color: #fff; cursor: pointer; display: inline-flex; align-items: center; gap: 4px; height: 26px; transition: 0.2s; line-height: 1; margin-left:10px; }
        .ktx-voice-btn-v2.active { background: #fff; color: #0045e6; border-color: #fff; box-shadow: 0 0 10px rgba(255,255,255,0.3); }

        .ktx-pagination-v2 { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 20px; background: #fff; border-top: 1px solid #f1f5f9; }
        .ktx-page-btn-v2 { padding: 8px 16px; border: 1px solid #e2e8f0; border-radius: 6px; font-size: 13px; color: #64748b; background: #fff; cursor: pointer; transition: 0.2s; }
        .ktx-page-btn-v2:hover:not(:disabled) { background: #f1f5f9; border-color: #cbd5e1; }
        .ktx-page-btn-v2:disabled { opacity: 0.4; cursor: not-allowed; }
        .ktx-page-info-v2 { font-size: 14px; font-weight: bold; color: #0045e6; }
    </style>

    <div id="ktx-live-app-v2">
        <div class="ktx-top-bar-v2">
            <div style="display: flex; align-items: center;">
                <b><span id="ktx-live-clock-v2" style="font-size:14px; font-weight:bold; opacity:1;"></span></b>
                <button class="ktx-voice-btn-v2" id="ktx-voice-toggle-v2" onclick="toggleKtxVoiceV2()">
                    <span class="v-ico-v2">🔈</span> <span class="v-txt-v2">음성 끔</span>
                </button>
            </div>
            <div class="ktx-live-label-v2">LIVE</div>
        </div>
        <div class="ktx-search-box-v2">
            <div class="ktx-input-flex-v2">
                <input type="text" id="ktx-dep-field-v2" placeholder="출발역" value="">
                <input type="text" id="ktx-arr-field-v2" placeholder="도착역" value="">
            </div>
            <button id="ktx-btn-submit-v2" onclick="runKtxLiveSearchV2(true)">열차 시간 조회하기</button>
        </div>
        
        <table class="ktx-main-table-v2">
            <thead><tr><th style="width: 24%;">열차정보</th><th style="width: 24%;">출발역</th><th style="width: 28%;">출발예정</th><th style="width: 24%;">도착역</th></tr></thead>
            <tbody id="ktx-live-tbody-v2">
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr id="ktx-init-msg-v2"><td colspan="4" style="position:absolute; width:100%; left:0; padding:70px 0; color:#94a3b8; font-size:13px; text-align:center;">역 이름을 입력하고 조회해 주세요.</td></tr>
            </tbody>
        </table>

        <div id="ktx-pagination-ctrl-v2" class="ktx-pagination-v2" style="display:none;">
            <button class="ktx-page-btn-v2" id="ktx-prev-page-v2" onclick="changeKtxPageV2(-1)">&laquo; 이전</button>
            <span class="ktx-page-info-v2"><span id="ktx-current-page-v2">1</span> / <span id="ktx-total-pages-v2">1</span></span>
            <button class="ktx-page-btn-v2" id="ktx-next-page-v2" onclick="changeKtxPageV2(1)">다음 &raquo;</button>
        </div>

        <div id="ktx-memo-display-v2" class="ktx-memo-area-v2"></div>

        <div style="padding: 10px 18px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #f1f5f9; display:flex; justify-content:space-between;">
            <span>1분 간격 자동 갱신</span><span>최근: <span id="ktx-last-update-v2">--:--:--</span></span>
        </div>
    </div>

    <script>
    let ktxStationListV2 = [];
    const ktxKeyFinalV2 = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    window.ktxVoiceEnabledV2 = false;
    window.ktxAnnouncedV2 = new Set();
    let currentKtxFullDataV2 = [];
    let ktxCurrentPageV2 = 1;
    const ktxItemsPerPageV2 = 10;

    function toggleKtxVoiceV2() {
        window.ktxVoiceEnabledV2 = !window.ktxVoiceEnabledV2;
        const btn = document.getElementById('ktx-voice-toggle-v2');
        const txt = btn.querySelector('.v-txt-v2'), ico = btn.querySelector('.v-ico-v2');
        if(window.ktxVoiceEnabledV2) {
            btn.classList.add('active'); txt.innerText = "음성 켬"; ico.innerText = "🔊";
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); txt.innerText = "음성 끔"; ico.innerText = "🔈";
            window.speechSynthesis.cancel();
        }
    }

    function updateKtxClockV2() {
        const now = new Date();
        const clockEl = document.getElementById('ktx-live-clock-v2');
        if (clockEl) { clockEl.innerText = `${now.getMonth() + 1}.${now.getDate()} ${now.getHours().toString().padStart(2, '0')}:${now.getMinutes().toString().padStart(2, '0')} 기준`; }
    }
    setInterval(updateKtxClockV2, 1000);

    async function ktxMasterLoadV2() {
        updateKtxClockV2();
        ktxStationListV2.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinalV2}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())));
            const parser = new DOMParser();
            results.forEach(xmlStr => {
                const xml = parser.parseFromString(xmlStr, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!ktxStationListV2.find(s => s.id === id)) ktxStationListV2.push({ name, id });
                });
            });
            if(document.getElementById('ktx-dep-field-v2').value && document.getElementById('ktx-arr-field-v2').value) runKtxLiveSearchV2(false);
        } catch (e) { console.log("V2 Station data fail"); }
    }

    function renderKtxPageV2(page) {
        const tbody = document.getElementById('ktx-live-tbody-v2');
        const now = new Date();
        const start = (page - 1) * ktxItemsPerPageV2;
        const end = start + ktxItemsPerPageV2;
        const pageData = currentKtxFullDataV2.slice(start, end);
        let html = '';
        pageData.forEach((r, idx) => {
            const diffMs = r.depDate - now;
            const diffMin = Math.round(diffMs / 60000);
            
            if (window.ktxVoiceEnabledV2 && diffMin === 15) {
                const key = r.no + "_" + r.dep_n + "_" + r.dep_time;
                if (!window.ktxAnnouncedV2.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 ${r.dep_n}역에서 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnouncedV2.add(key);
                }
            }

            const soon = (diffMin <= 15 && diffMin >= 0) ? '<span class="ktx-badge-soon-v2">출발임박</span>' : '';
            const durationTotal = Math.round((r.arrDate - r.depDate) / 60000);
            const h_dur = Math.floor(durationTotal / 60);
            const m_dur = durationTotal % 60;
            const durationStr = `${String(h_dur).padStart(2, '0')}:${String(m_dur).padStart(2, '0')} 소요`;
            
            let timeStatus = '';
            if (diffMin < 0) {
                timeStatus = '<div class="ktx-status-text-v2" style="color:#64748b;">운행종료</div>';
            } else {
                timeStatus = `<div class="ktx-status-text-v2">${diffMin===0?'출발대기':diffMin+'분 후 출발'}</div>`;
            }

            html += `<tr class="ktx-row-fade-v2" style="animation-delay:${idx*0.05}s;"><td><span class="ktx-train-no-v2">${r.no}호</span><span class="ktx-grade-name-v2">${r.grade}</span><span class="v-tag-ok-v2">정상운행</span></td><td><div class="ktx-station-name-v2">${r.dep_n}역</div><span class="v-tag-duration-v2">${durationStr}</span></td><td>${soon}${timeStatus}<div class="ktx-time-info-v2">${r.dep_time} 출발</div></td><td><div class="ktx-station-name-v2">${r.arr_n}역</div><div class="ktx-time-info-v2" style="color:#0045e6;">${r.arr_time} 도착</div></td></tr>`;
        });
        tbody.innerHTML = html;
        document.getElementById('ktx-current-page-v2').innerText = page;
        document.getElementById('ktx-prev-page-v2').disabled = (page === 1);
        document.getElementById('ktx-next-page-v2').disabled = (page === Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2));
    }

    function changeKtxPageV2(dir) {
        const total = Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2);
        let target = ktxCurrentPageV2 + dir;
        if (target >= 1 && target <= total) { ktxCurrentPageV2 = target; renderKtxPageV2(ktxCurrentPageV2); }
    }

    async function runKtxLiveSearchV2(manual = false) {
        const btn = document.getElementById('ktx-btn-submit-v2');
        let d_val = document.getElementById('ktx-dep-field-v2').value.trim();
        let a_val = document.getElementById('ktx-arr-field-v2').value.trim();
        if (!d_val || !a_val) { if(manual) alert("출발역과 도착역을 모두 입력하세요."); return; }
        
        btn.innerText = "데이터 검색 중..."; btn.classList.add('is-searching'); btn.disabled = true;
        d_val = d_val.replace(/역$/, ''); a_val = a_val.replace(/역$/, '');
        
        const tbody = document.getElementById('ktx-live-tbody-v2');
        const memoDiv = document.getElementById('ktx-memo-display-v2');
        const pgCtrl = document.getElementById('ktx-pagination-ctrl-v2');
        if(manual) tbody.classList.add('ktx-loading-v2');

        const findStation = (n) => {
            if (n === "여수" || n === "여수엑스포") return { name: "여수EXPO", id: "NAT041993" };
            return ktxStationListV2.find(s => s.name === n || s.name === n + '역');
        }
        const dep = findStation(d_val); const arr = findStation(a_val);
        if (!dep || !arr) { 
            tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0;">역 이름을 정확히 입력해 주세요. (예: 부산, 동대구)</td></tr>';
            pgCtrl.style.display = 'none';
            tbody.classList.remove('ktx-loading-v2');
            btn.innerText = "열차 시간 조회하기"; btn.classList.remove('is-searching'); btn.disabled = false; 
            return; 
        }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live_v2');
        fd.append('dep_id', dep.id); fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            const resData = await response.json();
            const now = new Date();
            currentKtxFullDataV2 = resData.trains.map(item => {
                const parseTrainTime = (str) => { if (!str || str.length < 12) return new Date(0); return new Date(str.substring(0,4), str.substring(4,6)-1, str.substring(6,8), str.substring(8,10), str.substring(10,12)); };
                item.depDate = parseTrainTime(item.raw_dep); item.arrDate = parseTrainTime(item.raw_arr);
                if (item.arrDate < item.depDate) item.arrDate.setDate(item.arrDate.getDate() + 1);
                return item;
            }).sort((a, b) => a.depDate - b.depDate);

            if (currentKtxFullDataV2.length > 0) {
                const totalPages = Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2);
                document.getElementById('ktx-total-pages-v2').innerText = totalPages;
                pgCtrl.style.display = 'flex';
                
                let firstUpcomingIdx = currentKtxFullDataV2.findIndex(t => t.depDate.getTime() > (now.getTime() - 300000));
                if (firstUpcomingIdx === -1) firstUpcomingIdx = 0;
                ktxCurrentPageV2 = Math.floor(firstUpcomingIdx / ktxItemsPerPageV2) + 1;

                if(resData.memo_template) {
                    const f_t = currentKtxFullDataV2[0].dep_time;
                    const l_t = currentKtxFullDataV2[currentKtxFullDataV2.length-1].dep_time;
                    const scrollTips = [" 전체 시간표는 하단 페이징을 확인하세요.", " 모든 배차 정보를 페이지별로 확인 가능합니다."];
                    const randomTip = scrollTips[Math.floor(Math.random() * scrollTips.length)];
                    memoDiv.innerText = resData.memo_template.replace('{first_t}', f_t).replace('{last_t}', l_t) + randomTip;
                    memoDiv.style.display = 'block';
                }
                renderKtxPageV2(ktxCurrentPageV2);
                document.getElementById('ktx-last-update-v2').innerText = now.getHours().toString().padStart(2,'0')+':'+now.getMinutes().toString().padStart(2,'0')+':'+now.getSeconds().toString().padStart(2,'0');
            } else {
                tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0; color:#94a3b8;">오늘 운행되는 열차 정보가 없습니다.</td></tr>';
                pgCtrl.style.display = 'none';
            }
        } catch (e) { tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0;">데이터 통신 오류</td></tr>'; }

        tbody.classList.remove('ktx-loading-v2');
        btn.innerText = "열차 시간 조회하기"; btn.classList.remove('is-searching'); btn.disabled = false;
    }

    ktxMasterLoadV2();
    setInterval(() => { if(document.getElementById('ktx-dep-field-v2').value) runKtxLiveSearchV2(false); }, 60000);
    document.addEventListener('keypress', function(e) { if((e.target.id === 'ktx-dep-field-v2' || e.target.id === 'ktx-arr-field-v2') && e.keyCode === 13) runKtxLiveSearchV2(true); });
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">여수역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">여수역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '36020';
            let curName = '여수';
            let altCity = '11';
            let altName = '용산';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">여수역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">16℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 구름많음</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">20%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">여수역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%B0%94%EB%8B%A4%EA%B9%80%EB%B0%A5+%EC%A4%91%EC%95%99%EB%B3%B8%EC%A0%90+%EC%A0%84%EB%9D%BC%EB%82%A8%EB%8F%84+%EC%97%AC%EC%88%98%EC%8B%9C+%EC%A4%91%EC%95%99%EB%8F%99+667+1%EC%B8%B5+%EB%B0%94%EB%8B%A4%EA%B9%80%EB%B0%A5+%EC%A4%91%EC%95%99%EB%B3%B8%EC%A0%90" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">바다김밥 중앙본점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;한식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">전라남도 여수시 중앙동 667 1층 바다김밥 중앙본점</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%97%AC%EC%88%98%EB%94%B8%EA%B8%B0%EB%AA%A8%EC%B0%8C+%EC%82%BC%ED%95%A9%EB%8B%B9+%EB%B3%B8%EC%A0%90+%EC%A0%84%EB%9D%BC%EB%82%A8%EB%8F%84+%EC%97%AC%EC%88%98%EC%8B%9C+%EC%A4%91%EC%95%99%EB%8F%99+563+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">여수딸기모찌 삼합당 본점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;카페,디저트</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">전라남도 여수시 중앙동 563 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%84%9C%EB%85%B9%EC%94%A8+%EB%B3%B8%EC%A0%90+%EC%A0%84%EB%9D%BC%EB%82%A8%EB%8F%84+%EC%97%AC%EC%88%98%EC%8B%9C+%EC%A4%91%EC%95%99%EB%8F%99+562+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">서녹씨 본점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;카페,디저트</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">전라남도 여수시 중앙동 562 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%9D%B4%EC%88%9C%EC%8B%A0+%EC%88%98%EC%A0%9C%EB%B2%84%EA%B1%B0+%EC%A0%84%EB%9D%BC%EB%82%A8%EB%8F%84+%EC%97%AC%EC%88%98%EC%8B%9C+%EC%A4%91%EC%95%99%EB%8F%99+732+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">이순신 수제버거</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;햄버거</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">전라남도 여수시 중앙동 732 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%97%AC%EC%88%98%EB%8B%B9+%EC%A0%84%EB%9D%BC%EB%82%A8%EB%8F%84+%EC%97%AC%EC%88%98%EC%8B%9C+%EC%A4%91%EC%95%99%EB%8F%99+779" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">여수당</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;카페,디저트</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">전라남도 여수시 중앙동 779</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">여수역 실시간 주차장 요금</h4>
        
                    <div class="parking-list-container">
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 여수엑스포역                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">600원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">300원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">10,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 전라남도 여수시 덕충동 61-7<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 062-941-0874                        </div>
                    </div>
                            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">여수역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 전라남도 여수시 덕충동 61-7</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:062-941-0874" style="color: #0052a4; font-weight: bold; text-decoration: none;">062-941-0874</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%97%AC%EC%88%98%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="350" height="350" src="https://krailroad.co.kr/wp-content/uploads/2026/05/전라선-ITX-마음-시간표-용산역-익산역-전주역-여수역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간.jpg" alt="전라선-ITX-마음-시간표-용산역-익산역-전주역-여수역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간" class="wp-image-20882" srcset="https://krailroad.co.kr/wp-content/uploads/2026/05/전라선-ITX-마음-시간표-용산역-익산역-전주역-여수역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간.jpg 350w, https://krailroad.co.kr/wp-content/uploads/2026/05/전라선-ITX-마음-시간표-용산역-익산역-전주역-여수역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/05/전라선-ITX-마음-시간표-용산역-익산역-전주역-여수역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간-150x150.jpg 150w" sizes="auto, (max-width: 350px) 100vw, 350px" /></figure>
</div>


<p class="wp-block-paragraph"></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>호남선 ITX-마음 시간표 목포역~용산역 요금 및 정차역 안내</title>
		<link>https://krailroad.co.kr/%ed%98%b8%eb%82%a8%ec%84%a0-itx-%eb%a7%88%ec%9d%8c-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%aa%a9%ed%8f%ac%ec%97%ad%ec%9a%a9%ec%82%b0%ec%97%ad-%ec%9a%94%ea%b8%88-%eb%b0%8f-%ec%a0%95%ec%b0%a8%ec%97%ad/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Thu, 30 Apr 2026 01:30:07 +0000</pubDate>
				<category><![CDATA[실시간 열차 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[호남선 ITX-마음 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=20849</guid>

					<description><![CDATA[호남선 ITX-마음 시간표를 확인하며 남도의 평야 지대를 달리는 기차 여행은 전라권 주민들과 여행객들에게 없어서는 안 될 소중한 연결고리입니다. 2023년 말, 노후화된 기존 새마을호를 대체하며 본격적인 운행을 시작한 ITX-마음은 최신 동력분산식 설계를 채택하여 정차역이 많은 호남선 구간에서도 빠른 가감속과 안정적인 주행 성능을 자랑하는데요. 쾌적한 실내 환경과 합리적인 요금 체계를 갖춘 덕분에 이제는 호남선을 대표하는 새로운 주역으로 ... <a title="호남선 ITX-마음 시간표 목포역~용산역 요금 및 정차역 안내" class="read-more button" href="https://krailroad.co.kr/%ed%98%b8%eb%82%a8%ec%84%a0-itx-%eb%a7%88%ec%9d%8c-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%aa%a9%ed%8f%ac%ec%97%ad%ec%9a%a9%ec%82%b0%ec%97%ad-%ec%9a%94%ea%b8%88-%eb%b0%8f-%ec%a0%95%ec%b0%a8%ec%97%ad/" aria-label="호남선 ITX-마음 시간표 목포역~용산역 요금 및 정차역 안내 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">호남선 ITX-마음 시간표를 확인하며 남도의 평야 지대를 달리는 기차 여행은 전라권 주민들과 여행객들에게 없어서는 안 될 소중한 연결고리입니다. 2023년 말, 노후화된 기존 새마을호를 대체하며 본격적인 운행을 시작한 ITX-마음은 최신 동력분산식 설계를 채택하여 정차역이 많은 호남선 구간에서도 빠른 가감속과 안정적인 주행 성능을 자랑하는데요. 쾌적한 실내 환경과 합리적인 요금 체계를 갖춘 덕분에 이제는 호남선을 대표하는 새로운 주역으로 자리 잡고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>호남선 ITX-마음 시간표 안내</strong></h2>



<h3 class="wp-block-heading">행선지 구분과 노선 이용 포인트</h3>



<p class="wp-block-paragraph">호남선 ITX-마음 시간표를 이용하기 전 먼저 파악해야 할 점은 나의 목적지가 목포역인지 혹은 광주역인지 정확히 확인하셔야합니다(<a href="https://krailroad.co.kr/%eb%aa%a9%ed%8f%ac%ec%97%ad-ktx-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%b5%9c%ec%8b%a0-%eb%85%b8%ec%84%a0%eb%b3%84-%ec%9a%94%ea%b8%88-%eb%b0%8f-%ec%86%8c%ec%9a%94-%ec%8b%9c%ea%b0%84-%ec%a0%95%ec%b0%a8/">목포역 KTX 시간표</a>는 여기 참고). 왜냐하면 용산역을 시작으로 노선이 갈라지기 때문인데, 특히 KTX가 주로 서는 광주송정역에도 ITX-마음이 정차하며 광주 도심 접근을 돕고 있습니다.</p>



<p class="wp-block-paragraph">1️⃣ <strong>호남선 추천 여행지</strong> : 철길의 끝자락인 목포역은 역 주변에 근대 역사의 흔적과 남도 바다의 정취가 공존하여, 역에서 내리자마자 특별한 교통수단 없이도 풍성한 볼거리를 마주할 수 있는 가족 나들이 명소입니다.</p>



<p class="wp-block-paragraph">2️⃣ <strong>가족 및 나들이 맞춤형</strong> : 내부에는 수유실과 넓은 화장실, 자동판매기 등 편의 시설이 잘 갖춰져 있어 아이와 함께하는 가족 단위 방문객이나 홀로 이동하는 분들 모두 안심하고 이용할 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">데이터과 지능형 통합 로직</h3>



<p class="wp-block-paragraph">단순히 열차 시각을 확인하는 단계를 넘어, 본 호남선 ITX-마음 시간표 로직은 역에 발을 들이는 순간부터 최종 목적지에 닿을 때까지의 모든 과정을 실시간 데이터로 정확하게 알려드립니다. <br><br>이는 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a> 데이터베이스와 60초마다 동기화되는 공공 API 로직을 통해 호남선을 달리는 열차 위치를 초 단위로 추적함은 물론, 목포역의 주차 현황과 시내로 연결되는 버스 도착 예보, 날씨, 주변 맛집, 주차장 요금까지 하나의 화면에 통합했는데요. 특히 정보 확인이 어렵거나 다른 용무에 집중하는 분들을 위해 도입된 음성 알림 기능을 활용하면, 열차 진입 15분 전부터 자동으로 안내를 받으실 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">목포 ↔&nbsp;용산 첫차 &amp; 막차</h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">목포<br>↓<br>용산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1404호</span><div class="time-display">11:06</div><div class="arrival-info">15:40 도착</div></td><td><span class="train-detail">1406호</span><div class="time-display">15:57</div><div class="arrival-info">20:27 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">광주<br>↓<br>익산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1302호</span><div class="time-display">07:08</div><div class="arrival-info">08:33 도착</div></td><td><span class="train-detail">1302호</span><div class="time-display">07:08</div><div class="arrival-info">08:33 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">목포<br>↓<br>익산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1404호</span><div class="time-display">11:06</div><div class="arrival-info">12:56 도착</div></td><td><span class="train-detail">1314호</span><div class="time-display">18:30</div><div class="arrival-info">20:43 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">용산<br>↓<br>목포</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1403호</span><div class="time-display">09:47</div><div class="arrival-info">14:12 도착</div></td><td><span class="train-detail">1407호</span><div class="time-display">17:18</div><div class="arrival-info">21:38 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">익산<br>↓<br>광주</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1301호</span><div class="time-display">22:10</div><div class="arrival-info">23:27 도착</div></td><td><span class="train-detail">1301호</span><div class="time-display">22:10</div><div class="arrival-info">23:27 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">익산<br>↓<br>목포</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1311호</span><div class="time-display">09:34</div><div class="arrival-info">11:43 도착</div></td><td><span class="train-detail">1407호</span><div class="time-display">20:02</div><div class="arrival-info">21:38 도착</div></td></tr></tbody></table></div>


    
    <h2>목포 ↔ 용산 운임 요금표</h2>

    <div id="ktx-app-fl" style="margin-bottom: 40px;">
        <style>
            #ktx-app-fl { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 1px solid #e2e8f0; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.06); }
            .fl-main-table { width: 100%; border-collapse: collapse; table-layout: fixed; border: none; }
            .fl-main-table th { font-size: 13px; color: #64748b; padding: 12px 2px; background: #f8fafc; border-bottom: 1px solid #e2e8f0; text-align: center; font-weight: bold; }
            .fl-main-table td { padding: 15px 4px; border-bottom: 1px solid #f1f5f9; text-align: center; vertical-align: middle; }
            
            .u-no-top { font-size: 11px; color: #94a3b8; display: block; font-weight: 500; margin-bottom: 1px; }
            .u-grade-bottom { font-size: 16px; font-weight: 900; color: #0045e6; display: block; line-height: 1.2; }
            .t-via { font-size: 12px; color: #64748b; display: block; margin-top: 4px; font-weight: 500; }
            
            .t-price { font-weight: 700; font-size: 14px; color: #1e293b; }
            .t-premium { color: #059669; }
            .t-special { color: #e11d48; }
            
            .t-none { display: inline-block; padding: 3px 10px; background: #f8fafc; color: #cbd5e1; border: 1px solid #f1f5f9; border-radius: 6px; font-size: 11px; font-weight: 600; }

            @media (max-width: 600px) {
                .fl-main-table th { font-size: 12px; }
                .u-grade-bottom { font-size: 14px; }
                .t-price { font-size: 12px; }
            }
        </style>

        <div style="overflow-x: auto;">
            <table class="fl-main-table">
                <thead>
                    <tr>
                        <th style="width: 30%;">열차 / 경유지</th>
                        <th style="width: 23%;">일반실</th>
                        <th style="width: 23%;">우등실</th>
                        <th style="width: 24%;">특실</th>
                    </tr>
                </thead>
                <tbody>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 목포</span>
                            <span class="u-grade-bottom">ITX</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                39,600원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 목포</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">공주</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                52,800원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                63,400원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                73,900원                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 목포</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">김제,장성</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                44,700원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                62,600원                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 목포</span>
                            <span class="u-grade-bottom">무궁화</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                26,600원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                    </tbody>
            </table>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">목포 →&nbsp;용산 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>목포</th><th>일로</th><th>함평</th><th>나주</th><th>광주송정</th><th>장성</th><th>정읍</th><th>김제</th><th>익산</th><th>논산</th><th>서대전</th><th>조치원</th><th>천안</th><th>평택</th><th>수원</th><th>영등포</th><th>용산</th></tr></thead><tbody><tr><td>1404</td><td>ITX-마음</td><td>11:06</td><td>11:16</td><td>11:28</td><td>11:38</td><td>11:50</td><td>12:05</td><td>12:22</td><td>12:37</td><td>12:56</td><td>13:22</td><td>13:53</td><td></td><td>14:37</td><td></td><td>15:06</td><td>15:31</td><td>15:40</td></tr><tr><td>1406</td><td>ITX-마음</td><td>15:57</td><td></td><td></td><td>16:24</td><td>16:36</td><td>16:50</td><td>17:07</td><td>17:22</td><td>17:41</td><td>18:07</td><td>18:38</td><td>19:04</td><td>19:25</td><td>19:37</td><td>19:57</td><td>20:18</td><td>20:27</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">광주 →&nbsp;익산 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>광주</th><th>장성</th><th>백양사</th><th>정읍</th><th>신태인</th><th>김제</th><th>익산</th></tr></thead><tbody><tr><td>1302</td><td>ITX-마음</td><td>07:08</td><td>07:35</td><td>07:47</td><td>07:59</td><td>08:09</td><td>08:20</td><td>08:33</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">목포 →&nbsp;익산 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>목포</th><th>일로</th><th>몽탄</th><th>무안</th><th>함평</th><th>나주</th><th>광주송정</th><th>장성</th><th>백양사</th><th>정읍</th><th>신태인</th><th>김제</th><th>익산</th></tr></thead><tbody><tr><td>1404</td><td>ITX-마음</td><td>11:06</td><td>11:16</td><td></td><td></td><td>11:28</td><td>11:38</td><td>11:50</td><td>12:05</td><td></td><td>12:22</td><td></td><td>12:37</td><td>12:56</td></tr><tr><td>1312</td><td>ITX-마음</td><td>12:28</td><td>12:40</td><td>12:47</td><td>12:52</td><td>13:03</td><td>13:17</td><td>13:29</td><td>13:44</td><td>13:54</td><td>14:06</td><td>14:16</td><td>14:26</td><td>14:39</td></tr><tr><td>1406</td><td>ITX-마음</td><td>15:57</td><td></td><td></td><td></td><td></td><td>16:24</td><td>16:36</td><td>16:50</td><td></td><td>17:07</td><td></td><td>17:22</td><td>17:41</td></tr><tr><td>1314</td><td>ITX-마음</td><td>18:30</td><td>18:42</td><td>18:50</td><td>18:56</td><td>19:07</td><td>19:21</td><td>19:33</td><td>19:48</td><td>19:58</td><td>20:10</td><td>20:20</td><td>20:30</td><td>20:43</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">용산 →&nbsp;목포 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>용산</th><th>영등포</th><th>수원</th><th>평택</th><th>천안</th><th>서대전</th><th>논산</th><th>익산</th><th>김제</th><th>정읍</th><th>장성</th><th>광주송정</th><th>나주</th><th>함평</th><th>목포</th></tr></thead><tbody><tr><td>1403</td><td>ITX-마음</td><td>09:47</td><td>09:56</td><td>10:19</td><td>10:38</td><td>10:51</td><td>11:36</td><td>12:08</td><td>12:34</td><td>12:46</td><td>13:01</td><td>13:19</td><td>13:32</td><td>13:42</td><td>13:53</td><td>14:12</td></tr><tr><td>1407</td><td>ITX-마음</td><td>17:18</td><td>17:27</td><td>17:50</td><td></td><td>18:19</td><td>19:04</td><td>19:35</td><td>20:02</td><td>20:14</td><td>20:29</td><td>20:47</td><td>21:00</td><td>21:10</td><td></td><td>21:38</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">익산 →&nbsp;광주 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>익산</th><th>김제</th><th>신태인</th><th>정읍</th><th>장성</th><th>광주</th></tr></thead><tbody><tr><td>1301</td><td>ITX-마음</td><td>22:10</td><td>22:23</td><td>22:33</td><td>22:43</td><td>23:02</td><td>23:27</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">익산 →&nbsp;목포 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>익산</th><th>김제</th><th>신태인</th><th>정읍</th><th>백양사</th><th>장성</th><th>광주송정</th><th>나주</th><th>다시</th><th>함평</th><th>무안</th><th>몽탄</th><th>일로</th><th>목포</th></tr></thead><tbody><tr><td>1311</td><td>ITX-마음</td><td>09:34</td><td>09:47</td><td>09:57</td><td>10:07</td><td>10:19</td><td>10:29</td><td>10:45</td><td>10:56</td><td>11:03</td><td>11:11</td><td>11:18</td><td>11:23</td><td>11:31</td><td>11:43</td></tr><tr><td>1403</td><td>ITX-마음</td><td>12:34</td><td>12:46</td><td></td><td>13:01</td><td></td><td>13:19</td><td>13:32</td><td>13:42</td><td></td><td>13:53</td><td></td><td></td><td></td><td>14:12</td></tr><tr><td>1313</td><td>ITX-마음</td><td>15:45</td><td>15:58</td><td>16:08</td><td>16:18</td><td>16:30</td><td>16:40</td><td>16:56</td><td>17:07</td><td>17:14</td><td>17:22</td><td>17:28</td><td>17:33</td><td>17:42</td><td>17:54</td></tr><tr><td>1407</td><td>ITX-마음</td><td>20:02</td><td>20:14</td><td></td><td>20:29</td><td></td><td>20:47</td><td>21:00</td><td>21:10</td><td></td><td></td><td></td><td></td><td></td><td>21:38</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">전국 기차 시간표 및 운임 조회</h2>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #ktx-live-app-v2 { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 1px solid #e2e8f0; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.06); min-height: 800px; }
        .ktx-top-bar-v2 { background: #0045e6; padding: 15px 20px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .ktx-top-bar-v2 b { font-size: 17px; }
        .ktx-live-label-v2 { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 900; animation: ktx_pulse_v2 1.5s infinite; }
        @keyframes ktx_pulse_v2 { 50% { opacity: 0.4; } }
        .ktx-search-box-v2 { padding: 15px; background: #f8fafc; border-bottom: 1px solid #eee; }
        .ktx-input-flex-v2 { display: flex; gap: 8px; margin-bottom: 10px; }
        .ktx-input-flex-v2 input { flex: 1; min-width: 0; padding: 12px; border-radius: 8px; border: 1px solid #cbd5e1; font-size: 16px !important; outline: none; background: #fff; -webkit-appearance: none; }
        #ktx-btn-submit-v2 { width: 100%; padding: 15px; background: #64748b; color: #fff; border: none; border-radius: 8px; cursor: pointer; font-weight: bold; font-size: 16px; transition: all 0.3s; height: 50px; }
        #ktx-btn-submit-v2:hover { background: #475569; }
        #ktx-btn-submit-v2.is-searching { background: #6366f1 !important; cursor: wait; }
        .ktx-memo-area-v2 { padding: 12px 15px; background: #fffbeb; color: #92400e; font-size: 14px; line-height: 1.6; border-top: 1px solid #fef3c7; display: none; word-break: keep-all; min-height: 45px; }
        .ktx-main-table-v2 { width: 100%; border-collapse: collapse; table-layout: fixed; border: none; min-height: 700px; }
        .ktx-main-table-v2 th { font-size: 13px; color: #64748b; padding: 12px 2px; background: #f1f5f9; border-bottom: 1px solid #e2e8f0; text-align: center; }
        .ktx-main-table-v2 td { padding: 15px 4px; border-bottom: none !important; text-align: center; vertical-align: middle; }
        .ktx-status-text-v2 { color: #e11d48; font-weight: 800; font-size: 14px; margin: 3px 0; white-space: nowrap; letter-spacing: -0.5px; }
        .ktx-grade-name-v2 { font-size: 16px; font-weight: 800; color: #0045e6; line-height: 1.2; display: block; }
        .ktx-train-no-v2 { font-size: 11px; color: #94a3b8; display: block; margin-top: 2px; }
        .v-tag-ok-v2 { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        .v-tag-duration-v2 { font-size: 10px; color: #0045e6; background: #eff6ff; padding: 1px 4px; border-radius: 3px; border: 1px solid #dbeafe; display: inline-block; margin-top: 4px; font-weight: bold; }
        .ktx-time-info-v2 { color: #475569; font-size: 12px; font-weight: 600; }
        .ktx-station-name-v2 { font-size: 14px; font-weight: 700; color: #1e293b; }

        .ktx-badge-soon-v2 { 
            display: inline-block;
            background: #e11d48; 
            color: #fff; 
            padding: 4px 10px; 
            border-radius: 6px; 
            font-size: 11px; 
            font-weight: 900; 
            letter-spacing: -0.2px;
            margin-bottom: 4px;
            box-shadow: 0 2px 4px rgba(225, 29, 72, 0.2);
            animation: ktx_v4_pulse_v2 1.2s infinite ease-in-out; 
        }
        @keyframes ktx_v4_pulse_v2 { 0% { opacity: 1; transform: scale(1); } 50% { opacity: 0.6; transform: scale(0.96); } 100% { opacity: 1; transform: scale(1); } }

        .ktx-loading-v2 { opacity: 0.3; }
        .ktx-row-fade-v2 { animation: ktxFadeInUp_v2 0.5s ease-out forwards; opacity: 0; }
        @keyframes ktxFadeInUp_v2 { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }

        .ktx-voice-btn-v2 { padding: 4px 12px; border-radius: 15px; border: 2px solid rgba(255,255,255,0.6); background: rgba(0,0,0,0.15); font-size: 11px; font-weight: 900; color: #fff; cursor: pointer; display: inline-flex; align-items: center; gap: 4px; height: 26px; transition: 0.2s; line-height: 1; margin-left:10px; }
        .ktx-voice-btn-v2.active { background: #fff; color: #0045e6; border-color: #fff; box-shadow: 0 0 10px rgba(255,255,255,0.3); }

        .ktx-pagination-v2 { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 20px; background: #fff; border-top: 1px solid #f1f5f9; }
        .ktx-page-btn-v2 { padding: 8px 16px; border: 1px solid #e2e8f0; border-radius: 6px; font-size: 13px; color: #64748b; background: #fff; cursor: pointer; transition: 0.2s; }
        .ktx-page-btn-v2:hover:not(:disabled) { background: #f1f5f9; border-color: #cbd5e1; }
        .ktx-page-btn-v2:disabled { opacity: 0.4; cursor: not-allowed; }
        .ktx-page-info-v2 { font-size: 14px; font-weight: bold; color: #0045e6; }
    </style>

    <div id="ktx-live-app-v2">
        <div class="ktx-top-bar-v2">
            <div style="display: flex; align-items: center;">
                <b><span id="ktx-live-clock-v2" style="font-size:14px; font-weight:bold; opacity:1;"></span></b>
                <button class="ktx-voice-btn-v2" id="ktx-voice-toggle-v2" onclick="toggleKtxVoiceV2()">
                    <span class="v-ico-v2">🔈</span> <span class="v-txt-v2">음성 끔</span>
                </button>
            </div>
            <div class="ktx-live-label-v2">LIVE</div>
        </div>
        <div class="ktx-search-box-v2">
            <div class="ktx-input-flex-v2">
                <input type="text" id="ktx-dep-field-v2" placeholder="출발역" value="">
                <input type="text" id="ktx-arr-field-v2" placeholder="도착역" value="">
            </div>
            <button id="ktx-btn-submit-v2" onclick="runKtxLiveSearchV2(true)">열차 시간 조회하기</button>
        </div>
        
        <table class="ktx-main-table-v2">
            <thead><tr><th style="width: 24%;">열차정보</th><th style="width: 24%;">출발역</th><th style="width: 28%;">출발예정</th><th style="width: 24%;">도착역</th></tr></thead>
            <tbody id="ktx-live-tbody-v2">
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr id="ktx-init-msg-v2"><td colspan="4" style="position:absolute; width:100%; left:0; padding:70px 0; color:#94a3b8; font-size:13px; text-align:center;">역 이름을 입력하고 조회해 주세요.</td></tr>
            </tbody>
        </table>

        <div id="ktx-pagination-ctrl-v2" class="ktx-pagination-v2" style="display:none;">
            <button class="ktx-page-btn-v2" id="ktx-prev-page-v2" onclick="changeKtxPageV2(-1)">&laquo; 이전</button>
            <span class="ktx-page-info-v2"><span id="ktx-current-page-v2">1</span> / <span id="ktx-total-pages-v2">1</span></span>
            <button class="ktx-page-btn-v2" id="ktx-next-page-v2" onclick="changeKtxPageV2(1)">다음 &raquo;</button>
        </div>

        <div id="ktx-memo-display-v2" class="ktx-memo-area-v2"></div>

        <div style="padding: 10px 18px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #f1f5f9; display:flex; justify-content:space-between;">
            <span>1분 간격 자동 갱신</span><span>최근: <span id="ktx-last-update-v2">--:--:--</span></span>
        </div>
    </div>

    <script>
    let ktxStationListV2 = [];
    const ktxKeyFinalV2 = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    window.ktxVoiceEnabledV2 = false;
    window.ktxAnnouncedV2 = new Set();
    let currentKtxFullDataV2 = [];
    let ktxCurrentPageV2 = 1;
    const ktxItemsPerPageV2 = 10;

    function toggleKtxVoiceV2() {
        window.ktxVoiceEnabledV2 = !window.ktxVoiceEnabledV2;
        const btn = document.getElementById('ktx-voice-toggle-v2');
        const txt = btn.querySelector('.v-txt-v2'), ico = btn.querySelector('.v-ico-v2');
        if(window.ktxVoiceEnabledV2) {
            btn.classList.add('active'); txt.innerText = "음성 켬"; ico.innerText = "🔊";
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); txt.innerText = "음성 끔"; ico.innerText = "🔈";
            window.speechSynthesis.cancel();
        }
    }

    function updateKtxClockV2() {
        const now = new Date();
        const clockEl = document.getElementById('ktx-live-clock-v2');
        if (clockEl) { clockEl.innerText = `${now.getMonth() + 1}.${now.getDate()} ${now.getHours().toString().padStart(2, '0')}:${now.getMinutes().toString().padStart(2, '0')} 기준`; }
    }
    setInterval(updateKtxClockV2, 1000);

    async function ktxMasterLoadV2() {
        updateKtxClockV2();
        ktxStationListV2.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinalV2}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())));
            const parser = new DOMParser();
            results.forEach(xmlStr => {
                const xml = parser.parseFromString(xmlStr, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!ktxStationListV2.find(s => s.id === id)) ktxStationListV2.push({ name, id });
                });
            });
            if(document.getElementById('ktx-dep-field-v2').value && document.getElementById('ktx-arr-field-v2').value) runKtxLiveSearchV2(false);
        } catch (e) { console.log("V2 Station data fail"); }
    }

    function renderKtxPageV2(page) {
        const tbody = document.getElementById('ktx-live-tbody-v2');
        const now = new Date();
        const start = (page - 1) * ktxItemsPerPageV2;
        const end = start + ktxItemsPerPageV2;
        const pageData = currentKtxFullDataV2.slice(start, end);
        let html = '';
        pageData.forEach((r, idx) => {
            const diffMs = r.depDate - now;
            const diffMin = Math.round(diffMs / 60000);
            
            if (window.ktxVoiceEnabledV2 && diffMin === 15) {
                const key = r.no + "_" + r.dep_n + "_" + r.dep_time;
                if (!window.ktxAnnouncedV2.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 ${r.dep_n}역에서 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnouncedV2.add(key);
                }
            }

            const soon = (diffMin <= 15 && diffMin >= 0) ? '<span class="ktx-badge-soon-v2">출발임박</span>' : '';
            const durationTotal = Math.round((r.arrDate - r.depDate) / 60000);
            const h_dur = Math.floor(durationTotal / 60);
            const m_dur = durationTotal % 60;
            const durationStr = `${String(h_dur).padStart(2, '0')}:${String(m_dur).padStart(2, '0')} 소요`;
            
            let timeStatus = '';
            if (diffMin < 0) {
                timeStatus = '<div class="ktx-status-text-v2" style="color:#64748b;">운행종료</div>';
            } else {
                timeStatus = `<div class="ktx-status-text-v2">${diffMin===0?'출발대기':diffMin+'분 후 출발'}</div>`;
            }

            html += `<tr class="ktx-row-fade-v2" style="animation-delay:${idx*0.05}s;"><td><span class="ktx-train-no-v2">${r.no}호</span><span class="ktx-grade-name-v2">${r.grade}</span><span class="v-tag-ok-v2">정상운행</span></td><td><div class="ktx-station-name-v2">${r.dep_n}역</div><span class="v-tag-duration-v2">${durationStr}</span></td><td>${soon}${timeStatus}<div class="ktx-time-info-v2">${r.dep_time} 출발</div></td><td><div class="ktx-station-name-v2">${r.arr_n}역</div><div class="ktx-time-info-v2" style="color:#0045e6;">${r.arr_time} 도착</div></td></tr>`;
        });
        tbody.innerHTML = html;
        document.getElementById('ktx-current-page-v2').innerText = page;
        document.getElementById('ktx-prev-page-v2').disabled = (page === 1);
        document.getElementById('ktx-next-page-v2').disabled = (page === Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2));
    }

    function changeKtxPageV2(dir) {
        const total = Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2);
        let target = ktxCurrentPageV2 + dir;
        if (target >= 1 && target <= total) { ktxCurrentPageV2 = target; renderKtxPageV2(ktxCurrentPageV2); }
    }

    async function runKtxLiveSearchV2(manual = false) {
        const btn = document.getElementById('ktx-btn-submit-v2');
        let d_val = document.getElementById('ktx-dep-field-v2').value.trim();
        let a_val = document.getElementById('ktx-arr-field-v2').value.trim();
        if (!d_val || !a_val) { if(manual) alert("출발역과 도착역을 모두 입력하세요."); return; }
        
        btn.innerText = "데이터 검색 중..."; btn.classList.add('is-searching'); btn.disabled = true;
        d_val = d_val.replace(/역$/, ''); a_val = a_val.replace(/역$/, '');
        
        const tbody = document.getElementById('ktx-live-tbody-v2');
        const memoDiv = document.getElementById('ktx-memo-display-v2');
        const pgCtrl = document.getElementById('ktx-pagination-ctrl-v2');
        if(manual) tbody.classList.add('ktx-loading-v2');

        const findStation = (n) => {
            if (n === "여수" || n === "여수엑스포") return { name: "여수EXPO", id: "NAT041993" };
            return ktxStationListV2.find(s => s.name === n || s.name === n + '역');
        }
        const dep = findStation(d_val); const arr = findStation(a_val);
        if (!dep || !arr) { 
            tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0;">역 이름을 정확히 입력해 주세요. (예: 부산, 동대구)</td></tr>';
            pgCtrl.style.display = 'none';
            tbody.classList.remove('ktx-loading-v2');
            btn.innerText = "열차 시간 조회하기"; btn.classList.remove('is-searching'); btn.disabled = false; 
            return; 
        }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live_v2');
        fd.append('dep_id', dep.id); fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            const resData = await response.json();
            const now = new Date();
            currentKtxFullDataV2 = resData.trains.map(item => {
                const parseTrainTime = (str) => { if (!str || str.length < 12) return new Date(0); return new Date(str.substring(0,4), str.substring(4,6)-1, str.substring(6,8), str.substring(8,10), str.substring(10,12)); };
                item.depDate = parseTrainTime(item.raw_dep); item.arrDate = parseTrainTime(item.raw_arr);
                if (item.arrDate < item.depDate) item.arrDate.setDate(item.arrDate.getDate() + 1);
                return item;
            }).sort((a, b) => a.depDate - b.depDate);

            if (currentKtxFullDataV2.length > 0) {
                const totalPages = Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2);
                document.getElementById('ktx-total-pages-v2').innerText = totalPages;
                pgCtrl.style.display = 'flex';
                
                let firstUpcomingIdx = currentKtxFullDataV2.findIndex(t => t.depDate.getTime() > (now.getTime() - 300000));
                if (firstUpcomingIdx === -1) firstUpcomingIdx = 0;
                ktxCurrentPageV2 = Math.floor(firstUpcomingIdx / ktxItemsPerPageV2) + 1;

                if(resData.memo_template) {
                    const f_t = currentKtxFullDataV2[0].dep_time;
                    const l_t = currentKtxFullDataV2[currentKtxFullDataV2.length-1].dep_time;
                    const scrollTips = [" 전체 시간표는 하단 페이징을 확인하세요.", " 모든 배차 정보를 페이지별로 확인 가능합니다."];
                    const randomTip = scrollTips[Math.floor(Math.random() * scrollTips.length)];
                    memoDiv.innerText = resData.memo_template.replace('{first_t}', f_t).replace('{last_t}', l_t) + randomTip;
                    memoDiv.style.display = 'block';
                }
                renderKtxPageV2(ktxCurrentPageV2);
                document.getElementById('ktx-last-update-v2').innerText = now.getHours().toString().padStart(2,'0')+':'+now.getMinutes().toString().padStart(2,'0')+':'+now.getSeconds().toString().padStart(2,'0');
            } else {
                tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0; color:#94a3b8;">오늘 운행되는 열차 정보가 없습니다.</td></tr>';
                pgCtrl.style.display = 'none';
            }
        } catch (e) { tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0;">데이터 통신 오류</td></tr>'; }

        tbody.classList.remove('ktx-loading-v2');
        btn.innerText = "열차 시간 조회하기"; btn.classList.remove('is-searching'); btn.disabled = false;
    }

    ktxMasterLoadV2();
    setInterval(() => { if(document.getElementById('ktx-dep-field-v2').value) runKtxLiveSearchV2(false); }, 60000);
    document.addEventListener('keypress', function(e) { if((e.target.id === 'ktx-dep-field-v2' || e.target.id === 'ktx-arr-field-v2') && e.keyCode === 13) runKtxLiveSearchV2(true); });
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">목포역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">목포역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '36010';
            let curName = '목포';
            let altCity = '11';
            let altName = '용산';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">목포역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">16℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☀️ 맑음</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">0%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">목포역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%94%A8%EC%97%98%EB%B9%84%EB%B2%A0%EC%9D%B4%EC%BB%A4%EB%A6%AC+%EC%A0%84%EB%9D%BC%EB%82%A8%EB%8F%84+%EB%AA%A9%ED%8F%AC%EC%8B%9C+%EB%AA%85%EB%A5%9C%EB%8F%99+13-4+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">씨엘비베이커리</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;베이커리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">전라남도 목포시 명륜동 13-4 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%BD%94%EB%A1%AC%EB%B0%A9%EC%A0%9C%EA%B3%BC%EC%A0%90+%EC%A0%84%EB%9D%BC%EB%82%A8%EB%8F%84+%EB%AA%A9%ED%8F%AC%EC%8B%9C+%EB%AC%B4%EC%95%88%EB%8F%99+1-3" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">코롬방제과점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;베이커리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">전라남도 목포시 무안동 1-3</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%83%9C%EB%8F%99%EB%B0%98%EC%A0%90+%EC%A0%84%EB%9D%BC%EB%82%A8%EB%8F%84+%EB%AA%A9%ED%8F%AC%EC%8B%9C+%EC%A3%BD%EB%8F%99+223-1" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">태동반점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">중식&gt;중식당</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">전라남도 목포시 죽동 223-1</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%91%A5%EA%BF%80%EB%A0%88+%EC%A0%84%EB%9D%BC%EB%82%A8%EB%8F%84+%EB%AA%A9%ED%8F%AC%EC%8B%9C+%EC%A3%BD%EB%8F%99+64-7" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">쑥꿀레</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">분식&gt;종합분식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">전라남도 목포시 죽동 64-7</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%9C%A0%EB%8B%AC%EC%BD%A9%EB%AC%BC+%EC%A0%84%EB%9D%BC%EB%82%A8%EB%8F%84+%EB%AA%A9%ED%8F%AC%EC%8B%9C+%EB%8C%80%EC%95%88%EB%8F%99+11-5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">유달콩물</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;한식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">전라남도 목포시 대안동 11-5</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">목포역 실시간 주차장 요금</h4>
        
                    <div class="parking-list-container">
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 목포역                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">1,000원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">300원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">10,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 전라남도 목포시 호남동 1-1<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 062-941-0874                        </div>
                    </div>
                            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">목포역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 전라남도 목포시 호남동 1-1</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:062-941-0874" style="color: #0052a4; font-weight: bold; text-decoration: none;">062-941-0874</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EB%AA%A9%ED%8F%AC%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="350" height="350" src="https://krailroad.co.kr/wp-content/uploads/2026/04/호남선-ITX-마음-시간표-용산역-익산역-광주역-목포역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간.jpg" alt="호남선-ITX-마음-시간표-용산역-익산역-광주역-목포역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간" class="wp-image-20867" srcset="https://krailroad.co.kr/wp-content/uploads/2026/04/호남선-ITX-마음-시간표-용산역-익산역-광주역-목포역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간.jpg 350w, https://krailroad.co.kr/wp-content/uploads/2026/04/호남선-ITX-마음-시간표-용산역-익산역-광주역-목포역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/04/호남선-ITX-마음-시간표-용산역-익산역-광주역-목포역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간-150x150.jpg 150w" sizes="auto, (max-width: 350px) 100vw, 350px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>경부선 ITX-마음 시간표 서울역~부산역 실시간 API 요금 정차역</title>
		<link>https://krailroad.co.kr/%ea%b2%bd%eb%b6%80%ec%84%a0-itx-%eb%a7%88%ec%9d%8c-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%84%9c%ec%9a%b8%ec%97%ad%eb%b6%80%ec%82%b0%ec%97%ad-%ec%8b%a4%ec%8b%9c%ea%b0%84-api-%ec%9a%94%ea%b8%88-%ec%a0%95/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Wed, 29 Apr 2026 01:25:56 +0000</pubDate>
				<category><![CDATA[실시간 열차 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[경부선 ITX-마음 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=20834</guid>

					<description><![CDATA[경부선 철길은 서울과 부산을 연결하며 지난 수십 년간 우리나라의 흐름을 지탱해 온 핵심 선로입니다. 예전의 열차 이용이 단순히 빠른 속도만을 지향했다면, 최근 도입된 ITX-마음은 이용자의 편의와 쾌적한 실내 환경에 집중하며 이동의 질을 한 단계 높이고 있는데요. 기존 무궁화호의 경제성과 KTX의 정시성을 적절히 조화시킨 이 열차는, 적절한 비용으로 장거리 이동을 원하는 분들에게 실속 있는 열차로 알려져 ... <a title="경부선 ITX-마음 시간표 서울역~부산역 실시간 API 요금 정차역" class="read-more button" href="https://krailroad.co.kr/%ea%b2%bd%eb%b6%80%ec%84%a0-itx-%eb%a7%88%ec%9d%8c-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%84%9c%ec%9a%b8%ec%97%ad%eb%b6%80%ec%82%b0%ec%97%ad-%ec%8b%a4%ec%8b%9c%ea%b0%84-api-%ec%9a%94%ea%b8%88-%ec%a0%95/" aria-label="경부선 ITX-마음 시간표 서울역~부산역 실시간 API 요금 정차역 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">경부선 철길은 서울과 부산을 연결하며 지난 수십 년간 우리나라의 흐름을 지탱해 온 핵심 선로입니다. 예전의 열차 이용이 단순히 빠른 속도만을 지향했다면, 최근 도입된 ITX-마음은 이용자의 편의와 쾌적한 실내 환경에 집중하며 이동의 질을 한 단계 높이고 있는데요. 기존 무궁화호의 경제성과 KTX의 정시성을 적절히 조화시킨 이 열차는, 적절한 비용으로 장거리 이동을 원하는 분들에게 실속 있는 열차로 알려져 있습니다. 특히 ITX-마음은 충전시설도 갖추어져 있어 이용하기 편리합니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>경부선 ITX-마음 시간표 안내</strong></h2>



<h3 class="wp-block-heading">지능형 데이터로 설계</h3>



<p class="wp-block-paragraph">역사 내부의 복잡한 인파 속에서 작은 전광판에서 경부선 ITX-마음 시간표를 찾거나 개인 블로그의 불확실한 기록에 의지해, 경부선 ITX-마음 시간표를 찾는 시대는 지났으며, 국가 공공 API와 60초마다 동기화되는 로직과 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a>과 공공데이터에서 제공하는 자료를 DB화 하여 실시간 호출을 하고 있어 정확한 경부선 ITX-시간표를 제공해 드리고 있습니다(경부선 <a href="https://krailroad.co.kr/%ea%b2%bd%eb%b6%80%ec%84%a0-%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%9a%94%ea%b8%88-%ec%84%9c%ec%9a%b8%ec%97%ad%eb%b6%80%ec%82%b0%ec%97%ad-%ec%8b%a4%ec%8b%9c/">새마을호 시간표</a>는 여기 참고).</p>



<p class="wp-block-paragraph">1️⃣ <strong>통합 인프라 체크</strong>: 기차 시각뿐만 아니라 서울역의 실시간 주차 잔여 공간, 부산역 광장에서 시내로 연결되는 버스 도착 현황까지 하나의 화면에서 관리할 수 있어 동선의 끊김을 방지합니다.</p>



<p class="wp-block-paragraph">2️⃣ <strong>실시간 위치 확인</strong>: 서울역에서 출발해 영등포, 수원, 대전, 동대구 등 전국 중심역을 거쳐 <a href="https://krailroad.co.kr/%eb%b6%80%ec%82%b0%ec%97%ad-itx-%ec%83%88%eb%a7%88%ec%9d%84-itx-%eb%a7%88%ec%9d%8c-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%b2%ab%ec%b0%a8%eb%b6%80%ed%84%b0-%eb%a7%89%ec%b0%a8%ea%b9%8c%ec%a7%80/">부산역</a>에 닿기까지의 전 과정을 실제 상황과 동일하게 파악할 수 있습니다.</p>



<p class="wp-block-paragraph">3️⃣ <strong>음성 브리핑 기능</strong>: 다른 용무를 보거나 대합실 카페에 머무는 분들을 위해, 열차 진입 15분 전부터 자동으로 정보를 읽어주는 로직을 탑재했습니다. (상단 메뉴에서 소리 활성화가 필요합니다)</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">데이터가 제안하는 밀착형 정보</h3>



<p class="wp-block-paragraph">경부선 ITX-마음 시간표를 이용해 기차에서 내리는 순간 마주하게 될 역 주변 인프라 활용법도 아래 공공데이터 API로 실시간 안내하고 있으며, 서울역 일대의 트렌디한 공간과 부산역 인근에 숨겨진 정겨운 식당가 정보는 현재 기상 상황과 맞물려 제공되는데요. 갑작스러운 날씨 변화에도 당황하지 않도록 자료를 제공합니다.</p>



<p class="wp-block-paragraph">또한 정확하게 구축된 검색 기능을 활용해 열차 번호별 상세 정보, 열차 시간표 검색, 열차 소요시간 검색을 이용하면, 정확한 공공 데이터와 코레일 공식 자료를 확인하실 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">부산 ↔&nbsp;서울 첫차 &amp; 막차</h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">부산<br>↓<br>서울</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1002호</span><div class="time-display">06:26</div><div class="arrival-info">11:07 도착</div></td><td><span class="train-detail">1024호</span><div class="time-display">18:29</div><div class="arrival-info">23:19 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">서울<br>↓<br>부산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1005호</span><div class="time-display">07:02</div><div class="arrival-info">11:45 도착</div></td><td><span class="train-detail">1025호</span><div class="time-display">20:18</div><div class="arrival-info">00:57 도착</div></td></tr></tbody></table></div>


    
    <h2>서울 ↔ 부산 운임 요금표</h2>

    <div id="ktx-app-fl" style="margin-bottom: 40px;">
        <style>
            #ktx-app-fl { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 1px solid #e2e8f0; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.06); }
            .fl-main-table { width: 100%; border-collapse: collapse; table-layout: fixed; border: none; }
            .fl-main-table th { font-size: 13px; color: #64748b; padding: 12px 2px; background: #f8fafc; border-bottom: 1px solid #e2e8f0; text-align: center; font-weight: bold; }
            .fl-main-table td { padding: 15px 4px; border-bottom: 1px solid #f1f5f9; text-align: center; vertical-align: middle; }
            
            .u-no-top { font-size: 11px; color: #94a3b8; display: block; font-weight: 500; margin-bottom: 1px; }
            .u-grade-bottom { font-size: 16px; font-weight: 900; color: #0045e6; display: block; line-height: 1.2; }
            .t-via { font-size: 12px; color: #64748b; display: block; margin-top: 4px; font-weight: 500; }
            
            .t-price { font-weight: 700; font-size: 14px; color: #1e293b; }
            .t-premium { color: #059669; }
            .t-special { color: #e11d48; }
            
            .t-none { display: inline-block; padding: 3px 10px; background: #f8fafc; color: #cbd5e1; border: 1px solid #f1f5f9; border-radius: 6px; font-size: 11px; font-weight: 600; }

            @media (max-width: 600px) {
                .fl-main-table th { font-size: 12px; }
                .u-grade-bottom { font-size: 14px; }
                .t-price { font-size: 12px; }
            }
        </style>

        <div style="overflow-x: auto;">
            <table class="fl-main-table">
                <thead>
                    <tr>
                        <th style="width: 30%;">열차 / 경유지</th>
                        <th style="width: 23%;">일반실</th>
                        <th style="width: 23%;">우등실</th>
                        <th style="width: 24%;">특실</th>
                    </tr>
                </thead>
                <tbody>
                                        <tr>
                        <td>
                            <span class="u-no-top">서울 ↔ 부산</span>
                            <span class="u-grade-bottom">ITX</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                42,600원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">서울 ↔ 부산</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">경주</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                59,800원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                71,800원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                83,700원                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">서울 ↔ 부산</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">구포</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                53,900원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                75,500원                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">서울 ↔ 부산</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">서대구,경주</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                59,400원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                83,200원                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">서울 ↔ 부산</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">서대구,구포</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                53,500원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                74,900원                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">서울 ↔ 부산</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">수원,경주</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                48,800원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                68,300원                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">서울 ↔ 부산</span>
                            <span class="u-grade-bottom">무궁화</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                28,600원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                    </tbody>
            </table>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">부산 →&nbsp;서울 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>부산</th><th>구포</th><th>물금</th><th>밀양</th><th>청도</th><th>경산</th><th>동대구</th><th>대구</th><th>왜관</th><th>구미</th><th>김천</th><th>영동</th><th>옥천</th><th>대전</th><th>신탄진</th><th>조치원</th><th>천안</th><th>평택</th><th>수원</th><th>영등포</th><th>서울</th></tr></thead><tbody><tr><td>1002</td><td>ITX-마음</td><td>06:26</td><td>06:39</td><td></td><td>07:03</td><td>07:16</td><td></td><td>07:39</td><td>07:45</td><td></td><td>08:14</td><td>08:29</td><td></td><td></td><td>09:22</td><td></td><td>09:46</td><td>10:07</td><td></td><td>10:36</td><td>10:56</td><td>11:07</td></tr><tr><td>1006</td><td>ITX-마음</td><td>10:45</td><td>10:58</td><td></td><td></td><td></td><td></td><td>11:54</td><td>12:00</td><td></td><td>12:29</td><td>12:45</td><td></td><td></td><td>13:39</td><td></td><td></td><td>14:21</td><td>14:35</td><td>14:55</td><td>15:21</td><td>15:32</td></tr><tr><td>1010</td><td>ITX-마음</td><td>13:14</td><td>13:27</td><td>13:36</td><td>13:59</td><td>14:14</td><td></td><td>14:37</td><td>14:43</td><td></td><td>15:12</td><td>15:28</td><td>15:55</td><td></td><td>16:24</td><td></td><td>16:48</td><td>17:09</td><td>17:22</td><td>17:44</td><td>18:05</td><td>18:15</td></tr><tr><td>1018</td><td>ITX-마음</td><td>17:08</td><td>17:21</td><td></td><td></td><td></td><td></td><td>18:17</td><td>18:23</td><td></td><td>18:52</td><td>19:07</td><td></td><td></td><td>20:01</td><td></td><td></td><td>20:43</td><td>20:56</td><td>21:16</td><td>21:37</td><td>21:47</td></tr><tr><td>1020</td><td>ITX-마음</td><td>17:27</td><td>17:41</td><td></td><td>18:05</td><td>18:19</td><td>18:34</td><td>18:45</td><td>18:51</td><td>19:10</td><td>19:23</td><td>19:38</td><td>20:05</td><td>20:24</td><td>20:36</td><td>20:47</td><td>21:03</td><td>21:23</td><td>21:36</td><td>21:55</td><td>22:16</td><td>22:26</td></tr><tr><td>1024</td><td>ITX-마음</td><td>18:29</td><td>18:41</td><td></td><td>19:05</td><td>19:19</td><td></td><td>19:42</td><td>19:48</td><td>20:06</td><td>20:20</td><td>20:35</td><td>21:02</td><td>21:21</td><td>21:34</td><td></td><td>21:57</td><td>22:18</td><td></td><td>22:48</td><td>23:09</td><td>23:19</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">서울 →&nbsp;부산 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>서울</th><th>영등포</th><th>수원</th><th>평택</th><th>천안</th><th>조치원</th><th>신탄진</th><th>대전</th><th>옥천</th><th>영동</th><th>김천</th><th>구미</th><th>왜관</th><th>대구</th><th>동대구</th><th>경산</th><th>청도</th><th>밀양</th><th>삼랑진</th><th>물금</th><th>구포</th><th>부산</th></tr></thead><tbody><tr><td>1005</td><td>ITX-마음</td><td>07:02</td><td>07:12</td><td>07:34</td><td>07:53</td><td>08:06</td><td>08:27</td><td></td><td>08:51</td><td></td><td></td><td>09:42</td><td>09:58</td><td></td><td>10:29</td><td>10:35</td><td>10:44</td><td></td><td>11:09</td><td></td><td></td><td>11:34</td><td>11:45</td></tr><tr><td>1011</td><td>ITX-마음</td><td>10:48</td><td>11:01</td><td>11:25</td><td></td><td>11:55</td><td></td><td></td><td>12:38</td><td></td><td></td><td>13:30</td><td>13:46</td><td></td><td>14:15</td><td>14:21</td><td></td><td></td><td></td><td></td><td></td><td>15:15</td><td>15:28</td></tr><tr><td>1015</td><td>ITX-마음</td><td>12:02</td><td>12:12</td><td>12:35</td><td>12:54</td><td>13:07</td><td>13:28</td><td>13:43</td><td>13:56</td><td></td><td></td><td>14:48</td><td>15:04</td><td></td><td>15:33</td><td>15:39</td><td></td><td></td><td>16:11</td><td></td><td></td><td>16:36</td><td>16:48</td></tr><tr><td>1017</td><td>ITX-마음</td><td>12:21</td><td>12:34</td><td>12:57</td><td>13:16</td><td>13:29</td><td>13:50</td><td></td><td>14:14</td><td>14:26</td><td>14:45</td><td>15:11</td><td>15:27</td><td>15:40</td><td>15:59</td><td>16:05</td><td>16:15</td><td>16:29</td><td>16:42</td><td>16:52</td><td>17:03</td><td>17:13</td><td>17:25</td></tr><tr><td>1021</td><td>ITX-마음</td><td>15:39</td><td>15:49</td><td>16:12</td><td>16:31</td><td>16:45</td><td>17:05</td><td></td><td>17:30</td><td></td><td>17:57</td><td>18:24</td><td>18:40</td><td>18:53</td><td>19:12</td><td>19:18</td><td>19:27</td><td></td><td>19:53</td><td></td><td></td><td>20:18</td><td>20:30</td></tr><tr><td>1025</td><td>ITX-마음</td><td>20:18</td><td>20:28</td><td>20:50</td><td></td><td>21:19</td><td>21:40</td><td></td><td>22:04</td><td></td><td>22:32</td><td>22:58</td><td>23:14</td><td></td><td>23:43</td><td>23:49</td><td></td><td></td><td>00:20</td><td></td><td></td><td>00:45</td><td>00:57</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">전국 기차 시간표 및 운임 조회</h2>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #ktx-live-app-v2 { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 1px solid #e2e8f0; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.06); min-height: 800px; }
        .ktx-top-bar-v2 { background: #0045e6; padding: 15px 20px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .ktx-top-bar-v2 b { font-size: 17px; }
        .ktx-live-label-v2 { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 900; animation: ktx_pulse_v2 1.5s infinite; }
        @keyframes ktx_pulse_v2 { 50% { opacity: 0.4; } }
        .ktx-search-box-v2 { padding: 15px; background: #f8fafc; border-bottom: 1px solid #eee; }
        .ktx-input-flex-v2 { display: flex; gap: 8px; margin-bottom: 10px; }
        .ktx-input-flex-v2 input { flex: 1; min-width: 0; padding: 12px; border-radius: 8px; border: 1px solid #cbd5e1; font-size: 16px !important; outline: none; background: #fff; -webkit-appearance: none; }
        #ktx-btn-submit-v2 { width: 100%; padding: 15px; background: #64748b; color: #fff; border: none; border-radius: 8px; cursor: pointer; font-weight: bold; font-size: 16px; transition: all 0.3s; height: 50px; }
        #ktx-btn-submit-v2:hover { background: #475569; }
        #ktx-btn-submit-v2.is-searching { background: #6366f1 !important; cursor: wait; }
        .ktx-memo-area-v2 { padding: 12px 15px; background: #fffbeb; color: #92400e; font-size: 14px; line-height: 1.6; border-top: 1px solid #fef3c7; display: none; word-break: keep-all; min-height: 45px; }
        .ktx-main-table-v2 { width: 100%; border-collapse: collapse; table-layout: fixed; border: none; min-height: 700px; }
        .ktx-main-table-v2 th { font-size: 13px; color: #64748b; padding: 12px 2px; background: #f1f5f9; border-bottom: 1px solid #e2e8f0; text-align: center; }
        .ktx-main-table-v2 td { padding: 15px 4px; border-bottom: none !important; text-align: center; vertical-align: middle; }
        .ktx-status-text-v2 { color: #e11d48; font-weight: 800; font-size: 14px; margin: 3px 0; white-space: nowrap; letter-spacing: -0.5px; }
        .ktx-grade-name-v2 { font-size: 16px; font-weight: 800; color: #0045e6; line-height: 1.2; display: block; }
        .ktx-train-no-v2 { font-size: 11px; color: #94a3b8; display: block; margin-top: 2px; }
        .v-tag-ok-v2 { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        .v-tag-duration-v2 { font-size: 10px; color: #0045e6; background: #eff6ff; padding: 1px 4px; border-radius: 3px; border: 1px solid #dbeafe; display: inline-block; margin-top: 4px; font-weight: bold; }
        .ktx-time-info-v2 { color: #475569; font-size: 12px; font-weight: 600; }
        .ktx-station-name-v2 { font-size: 14px; font-weight: 700; color: #1e293b; }

        .ktx-badge-soon-v2 { 
            display: inline-block;
            background: #e11d48; 
            color: #fff; 
            padding: 4px 10px; 
            border-radius: 6px; 
            font-size: 11px; 
            font-weight: 900; 
            letter-spacing: -0.2px;
            margin-bottom: 4px;
            box-shadow: 0 2px 4px rgba(225, 29, 72, 0.2);
            animation: ktx_v4_pulse_v2 1.2s infinite ease-in-out; 
        }
        @keyframes ktx_v4_pulse_v2 { 0% { opacity: 1; transform: scale(1); } 50% { opacity: 0.6; transform: scale(0.96); } 100% { opacity: 1; transform: scale(1); } }

        .ktx-loading-v2 { opacity: 0.3; }
        .ktx-row-fade-v2 { animation: ktxFadeInUp_v2 0.5s ease-out forwards; opacity: 0; }
        @keyframes ktxFadeInUp_v2 { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }

        .ktx-voice-btn-v2 { padding: 4px 12px; border-radius: 15px; border: 2px solid rgba(255,255,255,0.6); background: rgba(0,0,0,0.15); font-size: 11px; font-weight: 900; color: #fff; cursor: pointer; display: inline-flex; align-items: center; gap: 4px; height: 26px; transition: 0.2s; line-height: 1; margin-left:10px; }
        .ktx-voice-btn-v2.active { background: #fff; color: #0045e6; border-color: #fff; box-shadow: 0 0 10px rgba(255,255,255,0.3); }

        .ktx-pagination-v2 { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 20px; background: #fff; border-top: 1px solid #f1f5f9; }
        .ktx-page-btn-v2 { padding: 8px 16px; border: 1px solid #e2e8f0; border-radius: 6px; font-size: 13px; color: #64748b; background: #fff; cursor: pointer; transition: 0.2s; }
        .ktx-page-btn-v2:hover:not(:disabled) { background: #f1f5f9; border-color: #cbd5e1; }
        .ktx-page-btn-v2:disabled { opacity: 0.4; cursor: not-allowed; }
        .ktx-page-info-v2 { font-size: 14px; font-weight: bold; color: #0045e6; }
    </style>

    <div id="ktx-live-app-v2">
        <div class="ktx-top-bar-v2">
            <div style="display: flex; align-items: center;">
                <b><span id="ktx-live-clock-v2" style="font-size:14px; font-weight:bold; opacity:1;"></span></b>
                <button class="ktx-voice-btn-v2" id="ktx-voice-toggle-v2" onclick="toggleKtxVoiceV2()">
                    <span class="v-ico-v2">🔈</span> <span class="v-txt-v2">음성 끔</span>
                </button>
            </div>
            <div class="ktx-live-label-v2">LIVE</div>
        </div>
        <div class="ktx-search-box-v2">
            <div class="ktx-input-flex-v2">
                <input type="text" id="ktx-dep-field-v2" placeholder="출발역" value="">
                <input type="text" id="ktx-arr-field-v2" placeholder="도착역" value="">
            </div>
            <button id="ktx-btn-submit-v2" onclick="runKtxLiveSearchV2(true)">열차 시간 조회하기</button>
        </div>
        
        <table class="ktx-main-table-v2">
            <thead><tr><th style="width: 24%;">열차정보</th><th style="width: 24%;">출발역</th><th style="width: 28%;">출발예정</th><th style="width: 24%;">도착역</th></tr></thead>
            <tbody id="ktx-live-tbody-v2">
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr id="ktx-init-msg-v2"><td colspan="4" style="position:absolute; width:100%; left:0; padding:70px 0; color:#94a3b8; font-size:13px; text-align:center;">역 이름을 입력하고 조회해 주세요.</td></tr>
            </tbody>
        </table>

        <div id="ktx-pagination-ctrl-v2" class="ktx-pagination-v2" style="display:none;">
            <button class="ktx-page-btn-v2" id="ktx-prev-page-v2" onclick="changeKtxPageV2(-1)">&laquo; 이전</button>
            <span class="ktx-page-info-v2"><span id="ktx-current-page-v2">1</span> / <span id="ktx-total-pages-v2">1</span></span>
            <button class="ktx-page-btn-v2" id="ktx-next-page-v2" onclick="changeKtxPageV2(1)">다음 &raquo;</button>
        </div>

        <div id="ktx-memo-display-v2" class="ktx-memo-area-v2"></div>

        <div style="padding: 10px 18px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #f1f5f9; display:flex; justify-content:space-between;">
            <span>1분 간격 자동 갱신</span><span>최근: <span id="ktx-last-update-v2">--:--:--</span></span>
        </div>
    </div>

    <script>
    let ktxStationListV2 = [];
    const ktxKeyFinalV2 = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    window.ktxVoiceEnabledV2 = false;
    window.ktxAnnouncedV2 = new Set();
    let currentKtxFullDataV2 = [];
    let ktxCurrentPageV2 = 1;
    const ktxItemsPerPageV2 = 10;

    function toggleKtxVoiceV2() {
        window.ktxVoiceEnabledV2 = !window.ktxVoiceEnabledV2;
        const btn = document.getElementById('ktx-voice-toggle-v2');
        const txt = btn.querySelector('.v-txt-v2'), ico = btn.querySelector('.v-ico-v2');
        if(window.ktxVoiceEnabledV2) {
            btn.classList.add('active'); txt.innerText = "음성 켬"; ico.innerText = "🔊";
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); txt.innerText = "음성 끔"; ico.innerText = "🔈";
            window.speechSynthesis.cancel();
        }
    }

    function updateKtxClockV2() {
        const now = new Date();
        const clockEl = document.getElementById('ktx-live-clock-v2');
        if (clockEl) { clockEl.innerText = `${now.getMonth() + 1}.${now.getDate()} ${now.getHours().toString().padStart(2, '0')}:${now.getMinutes().toString().padStart(2, '0')} 기준`; }
    }
    setInterval(updateKtxClockV2, 1000);

    async function ktxMasterLoadV2() {
        updateKtxClockV2();
        ktxStationListV2.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinalV2}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())));
            const parser = new DOMParser();
            results.forEach(xmlStr => {
                const xml = parser.parseFromString(xmlStr, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!ktxStationListV2.find(s => s.id === id)) ktxStationListV2.push({ name, id });
                });
            });
            if(document.getElementById('ktx-dep-field-v2').value && document.getElementById('ktx-arr-field-v2').value) runKtxLiveSearchV2(false);
        } catch (e) { console.log("V2 Station data fail"); }
    }

    function renderKtxPageV2(page) {
        const tbody = document.getElementById('ktx-live-tbody-v2');
        const now = new Date();
        const start = (page - 1) * ktxItemsPerPageV2;
        const end = start + ktxItemsPerPageV2;
        const pageData = currentKtxFullDataV2.slice(start, end);
        let html = '';
        pageData.forEach((r, idx) => {
            const diffMs = r.depDate - now;
            const diffMin = Math.round(diffMs / 60000);
            
            if (window.ktxVoiceEnabledV2 && diffMin === 15) {
                const key = r.no + "_" + r.dep_n + "_" + r.dep_time;
                if (!window.ktxAnnouncedV2.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 ${r.dep_n}역에서 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnouncedV2.add(key);
                }
            }

            const soon = (diffMin <= 15 && diffMin >= 0) ? '<span class="ktx-badge-soon-v2">출발임박</span>' : '';
            const durationTotal = Math.round((r.arrDate - r.depDate) / 60000);
            const h_dur = Math.floor(durationTotal / 60);
            const m_dur = durationTotal % 60;
            const durationStr = `${String(h_dur).padStart(2, '0')}:${String(m_dur).padStart(2, '0')} 소요`;
            
            let timeStatus = '';
            if (diffMin < 0) {
                timeStatus = '<div class="ktx-status-text-v2" style="color:#64748b;">운행종료</div>';
            } else {
                timeStatus = `<div class="ktx-status-text-v2">${diffMin===0?'출발대기':diffMin+'분 후 출발'}</div>`;
            }

            html += `<tr class="ktx-row-fade-v2" style="animation-delay:${idx*0.05}s;"><td><span class="ktx-train-no-v2">${r.no}호</span><span class="ktx-grade-name-v2">${r.grade}</span><span class="v-tag-ok-v2">정상운행</span></td><td><div class="ktx-station-name-v2">${r.dep_n}역</div><span class="v-tag-duration-v2">${durationStr}</span></td><td>${soon}${timeStatus}<div class="ktx-time-info-v2">${r.dep_time} 출발</div></td><td><div class="ktx-station-name-v2">${r.arr_n}역</div><div class="ktx-time-info-v2" style="color:#0045e6;">${r.arr_time} 도착</div></td></tr>`;
        });
        tbody.innerHTML = html;
        document.getElementById('ktx-current-page-v2').innerText = page;
        document.getElementById('ktx-prev-page-v2').disabled = (page === 1);
        document.getElementById('ktx-next-page-v2').disabled = (page === Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2));
    }

    function changeKtxPageV2(dir) {
        const total = Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2);
        let target = ktxCurrentPageV2 + dir;
        if (target >= 1 && target <= total) { ktxCurrentPageV2 = target; renderKtxPageV2(ktxCurrentPageV2); }
    }

    async function runKtxLiveSearchV2(manual = false) {
        const btn = document.getElementById('ktx-btn-submit-v2');
        let d_val = document.getElementById('ktx-dep-field-v2').value.trim();
        let a_val = document.getElementById('ktx-arr-field-v2').value.trim();
        if (!d_val || !a_val) { if(manual) alert("출발역과 도착역을 모두 입력하세요."); return; }
        
        btn.innerText = "데이터 검색 중..."; btn.classList.add('is-searching'); btn.disabled = true;
        d_val = d_val.replace(/역$/, ''); a_val = a_val.replace(/역$/, '');
        
        const tbody = document.getElementById('ktx-live-tbody-v2');
        const memoDiv = document.getElementById('ktx-memo-display-v2');
        const pgCtrl = document.getElementById('ktx-pagination-ctrl-v2');
        if(manual) tbody.classList.add('ktx-loading-v2');

        const findStation = (n) => {
            if (n === "여수" || n === "여수엑스포") return { name: "여수EXPO", id: "NAT041993" };
            return ktxStationListV2.find(s => s.name === n || s.name === n + '역');
        }
        const dep = findStation(d_val); const arr = findStation(a_val);
        if (!dep || !arr) { 
            tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0;">역 이름을 정확히 입력해 주세요. (예: 부산, 동대구)</td></tr>';
            pgCtrl.style.display = 'none';
            tbody.classList.remove('ktx-loading-v2');
            btn.innerText = "열차 시간 조회하기"; btn.classList.remove('is-searching'); btn.disabled = false; 
            return; 
        }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live_v2');
        fd.append('dep_id', dep.id); fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            const resData = await response.json();
            const now = new Date();
            currentKtxFullDataV2 = resData.trains.map(item => {
                const parseTrainTime = (str) => { if (!str || str.length < 12) return new Date(0); return new Date(str.substring(0,4), str.substring(4,6)-1, str.substring(6,8), str.substring(8,10), str.substring(10,12)); };
                item.depDate = parseTrainTime(item.raw_dep); item.arrDate = parseTrainTime(item.raw_arr);
                if (item.arrDate < item.depDate) item.arrDate.setDate(item.arrDate.getDate() + 1);
                return item;
            }).sort((a, b) => a.depDate - b.depDate);

            if (currentKtxFullDataV2.length > 0) {
                const totalPages = Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2);
                document.getElementById('ktx-total-pages-v2').innerText = totalPages;
                pgCtrl.style.display = 'flex';
                
                let firstUpcomingIdx = currentKtxFullDataV2.findIndex(t => t.depDate.getTime() > (now.getTime() - 300000));
                if (firstUpcomingIdx === -1) firstUpcomingIdx = 0;
                ktxCurrentPageV2 = Math.floor(firstUpcomingIdx / ktxItemsPerPageV2) + 1;

                if(resData.memo_template) {
                    const f_t = currentKtxFullDataV2[0].dep_time;
                    const l_t = currentKtxFullDataV2[currentKtxFullDataV2.length-1].dep_time;
                    const scrollTips = [" 전체 시간표는 하단 페이징을 확인하세요.", " 모든 배차 정보를 페이지별로 확인 가능합니다."];
                    const randomTip = scrollTips[Math.floor(Math.random() * scrollTips.length)];
                    memoDiv.innerText = resData.memo_template.replace('{first_t}', f_t).replace('{last_t}', l_t) + randomTip;
                    memoDiv.style.display = 'block';
                }
                renderKtxPageV2(ktxCurrentPageV2);
                document.getElementById('ktx-last-update-v2').innerText = now.getHours().toString().padStart(2,'0')+':'+now.getMinutes().toString().padStart(2,'0')+':'+now.getSeconds().toString().padStart(2,'0');
            } else {
                tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0; color:#94a3b8;">오늘 운행되는 열차 정보가 없습니다.</td></tr>';
                pgCtrl.style.display = 'none';
            }
        } catch (e) { tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0;">데이터 통신 오류</td></tr>'; }

        tbody.classList.remove('ktx-loading-v2');
        btn.innerText = "열차 시간 조회하기"; btn.classList.remove('is-searching'); btn.disabled = false;
    }

    ktxMasterLoadV2();
    setInterval(() => { if(document.getElementById('ktx-dep-field-v2').value) runKtxLiveSearchV2(false); }, 60000);
    document.addEventListener('keypress', function(e) { if((e.target.id === 'ktx-dep-field-v2' || e.target.id === 'ktx-arr-field-v2') && e.keyCode === 13) runKtxLiveSearchV2(true); });
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">서울역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">서울역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '11';
            let curName = '서울';
            let altCity = '21';
            let altName = '부산';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">서울역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">17℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">서울역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%A7%A5%EB%8F%84%EB%82%A0%EB%93%9C+%EC%84%9C%EC%9A%B8%EC%97%AD%EC%A0%90+%EC%84%9C%EC%9A%B8%ED%8A%B9%EB%B3%84%EC%8B%9C+%EC%9A%A9%EC%82%B0%EA%B5%AC+%EB%8F%99%EC%9E%90%EB%8F%99+43-205+%EC%84%9C%EC%9A%B8%EC%97%AD%28%EC%B2%A0%EB%8F%84%EC%97%AD%29" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">맥도날드 서울역점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">양식&gt;햄버거</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">서울특별시 용산구 동자동 43-205 서울역(철도역)</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%8F%85%EB%A6%BD%EB%B0%80%EB%B0%A9+%EC%84%9C%EC%9A%B8%EC%97%AD+%EC%84%9C%EC%9A%B8%ED%8A%B9%EB%B3%84%EC%8B%9C+%EC%9A%A9%EC%82%B0%EA%B5%AC+%EB%8F%99%EC%9E%90%EB%8F%99+43-205+%EC%84%9C%EC%9A%B8%EC%97%AD%EC%82%AC+4%EC%B8%B5+%EB%8F%85%EB%A6%BD%EB%B0%80%EB%B0%A9" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">독립밀방 서울역</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;양식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">서울특별시 용산구 동자동 43-205 서울역사 4층 독립밀방</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%A1%AF%EB%8D%B0%EB%A6%AC%EC%95%84+%EC%84%9C%EC%9A%B8%EC%97%AD%EC%82%AC%EC%A0%90+%EC%84%9C%EC%9A%B8%ED%8A%B9%EB%B3%84%EC%8B%9C+%EC%9A%A9%EC%82%B0%EA%B5%AC+%EB%8F%99%EC%9E%90%EB%8F%99+43-205+109%ED%98%B8" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">롯데리아 서울역사점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">양식&gt;햄버거</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">서울특별시 용산구 동자동 43-205 109호</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%8C%8C%EB%A6%AC%ED%81%AC%EB%9D%BC%EC%83%81+%EC%84%9C%EC%9A%B8%EC%97%AD%EC%A0%90+%EC%84%9C%EC%9A%B8%ED%8A%B9%EB%B3%84%EC%8B%9C+%EC%9A%A9%EC%82%B0%EA%B5%AC+%EB%8F%99%EC%9E%90%EB%8F%99+43-205+2%EC%B8%B5+108%ED%98%B8" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">파리크라상 서울역점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;베이커리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">서울특별시 용산구 동자동 43-205 2층 108호</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EA%B0%80%EB%A9%94%EA%B3%A8%EC%86%90%EC%99%95%EB%A7%8C%EB%91%90+%EB%82%A8%EB%8C%80%EB%AC%B8%EB%B3%B8%EC%A0%90+%EC%84%9C%EC%9A%B8%ED%8A%B9%EB%B3%84%EC%8B%9C+%EC%A4%91%EA%B5%AC+%EB%82%A8%EC%B0%BD%EB%8F%99+60-2" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">가메골손왕만두 남대문본점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">분식&gt;만두</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">서울특별시 중구 남창동 60-2</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">서울역 실시간 주차장 요금</h4>
        
                    <div class="parking-list-container">
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 서울역 KTX빌딩                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">2,400원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">800원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">25,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 서울특별시 용산구 동자동 43-230<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 02-6952-8100                        </div>
                    </div>
                            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">서울역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 서울특별시 용산구 동자동 43-230</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:02-6952-8100" style="color: #0052a4; font-weight: bold; text-decoration: none;">02-6952-8100</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%84%9C%EC%9A%B8%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="350" height="350" src="https://krailroad.co.kr/wp-content/uploads/2026/04/경부선-ITX-마음-시간표-서울역-부산역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간.jpg" alt="경부선-ITX-마음-시간표-서울역-부산역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간" class="wp-image-20847" srcset="https://krailroad.co.kr/wp-content/uploads/2026/04/경부선-ITX-마음-시간표-서울역-부산역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간.jpg 350w, https://krailroad.co.kr/wp-content/uploads/2026/04/경부선-ITX-마음-시간표-서울역-부산역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/04/경부선-ITX-마음-시간표-서울역-부산역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간-150x150.jpg 150w" sizes="auto, (max-width: 350px) 100vw, 350px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>지평역 기차 시간표 중앙선 ITX-마음 무궁화호 청량리-부전-동해 요금 안내</title>
		<link>https://krailroad.co.kr/%ec%a7%80%ed%8f%89%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%a4%91%ec%95%99%ec%84%a0-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Tue, 28 Apr 2026 01:52:51 +0000</pubDate>
				<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[무궁화 시간표]]></category>
		<category><![CDATA[지평역 기차 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=20817</guid>

					<description><![CDATA[지평역은 1940년 첫 기적 소리를 울린 이래 80년 넘게 양평 동부의 관문 자리를 지켜온 철길의 산증인입니다. 지평역 기차 시간표를 이용한 단선 철길 위를 달리던 소박한 마을 역이었던 이곳은, 2012년 중앙선 현대화 사업을 거치며 이제는 수도권 전철과 일반 열차가 나란히 멈춰 서는 입체적인 교통 지점으로 거듭났는데요. 현재 무궁화호와 더불어 차세대 주력 모델인 ITX-마음이 교차하며 청량리부터 멀리 ... <a title="지평역 기차 시간표 중앙선 ITX-마음 무궁화호 청량리-부전-동해 요금 안내" class="read-more button" href="https://krailroad.co.kr/%ec%a7%80%ed%8f%89%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%a4%91%ec%95%99%ec%84%a0-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80/" aria-label="지평역 기차 시간표 중앙선 ITX-마음 무궁화호 청량리-부전-동해 요금 안내 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">지평역은 1940년 첫 기적 소리를 울린 이래 80년 넘게 양평 동부의 관문 자리를 지켜온 철길의 산증인입니다. 지평역 기차 시간표를 이용한 단선 철길 위를 달리던 소박한 마을 역이었던 이곳은, 2012년 중앙선 현대화 사업을 거치며 이제는 수도권 전철과 일반 열차가 나란히 멈춰 서는 입체적인 교통 지점으로 거듭났는데요. 현재 무궁화호와 더불어 차세대 주력 모델인 ITX-마음이 교차하며 청량리부터 멀리 부전, 동해까지 연결하는 내륙 교통의 핵심적인 징검다리 역할을 수행 중입니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">지평역 기차 시간표 안내</h2>



<h3 class="wp-block-heading">중앙선과 태백선을 연결하는 철길</h3>



<p class="wp-block-paragraph">지평역 기차 시간표를 살필 때 주목할 점은 이곳이 단순히 경기권에 머무는 노선이 아니라는 사실이며, <a href="https://krailroad.co.kr/%ec%a0%9c%ec%b2%9c%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-itx-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80%ec%a0%84-%eb%8f%99/">제천역</a>을 기점으로 태백선과 운행 계통이 맞물려 있어 강원권과 경북권을 동시에 아우르는 광범위한 노선망입니다.</p>



<p class="wp-block-paragraph">1️⃣ <strong>미래 가치</strong>: 향후 복선전철 구간의 완전 개통과 운행 횟수 증편이 예고되어 있어, 양평 동부권이 서울의 인프라와 실시간으로 교류하는 결정적인 배경이 되고 있습니다.</p>



<p class="wp-block-paragraph">2️⃣ <strong>노선망의 확장성</strong>: 서울 청량리를 기점으로 제천역, 안동역, <a href="https://krailroad.co.kr/%eb%b6%80%ec%a0%84%ec%97%ad-ktx-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%b2%ad%eb%9f%89%eb%a6%ac%c2%b7%ea%b0%95%eb%a6%89%c2%b7%ec%95%88%eb%8f%99%ed%96%89%ec%86%8d%ec%b4%88-%ed%8f%ac%ed%95%ad-%ec%a4%91/">부전역</a>으로 향하는 중앙선 본선은 물론, 강원도 <a href="https://krailroad.co.kr/%eb%8f%99%ed%95%b4%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%eb%ac%b4%eb%a6%89%ea%b3%84%ea%b3%a1-%eb%a7%9d/">동해역</a>까지 연결되는 철길이 이 정거장을 통과합니다.</p>



<p class="wp-block-paragraph">3️⃣ <strong>간이역의 정취</strong>: 지평역 주변으로는 석불, 일신, 매곡 등 정겨운 간이역들이 연결되어 있어 완행열차 특유의 느긋함을 체감하기 좋으며, 평균적으로 시간당 1~2대 내외의 열차가 운행되어 수도권 접근이 큰 불편함이 없을것입니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">계절을 담은 풍경과 현지 연계 서비스</h3>



<p class="wp-block-paragraph">본 지평역 기차 시간표는 열차 시간표 확인에 그치지 않고, 지평역에 내리는 순간 시작될 현지의 활용법을 함께 제공하며(단 실시간 버스, 실시간 주차장 요금은 공식 정보가 없는 경우도 있습니다.), 지평역 인근은 100년 역사의 지평 양조장과 같은 근대 문화유산부터 사계절 내내 각기 다른 매력을 뽐내는 관광지들이 즐비합니다.</p>



<p class="wp-block-paragraph">또한 무더운 여름철 지평역 기차를 이용한다면 인근 계곡에서 시원한 물놀이를 즐기기에 제격이며, 하얀 눈이 덮이는 겨울에는 고가 역사 위에서 내려다보는 지평면의 설경을 보실 수 있습니다. 아래 자료는 실시간 기상 데이터와 연동된 주변 식당가 정보는 날씨에 따른 동선을 파악하여, 처음 방문하는 역에서 느낄 수 있는 막막함을 정확하게 구축된 <a href="https://www.data.go.kr/index.do" target="_blank" rel="noopener">공공 데이터</a> API의 15분 음성안내 시스템과 1분단위 지평역 기차 시간표 자동 갱신 로직을 길잡이 삼아 편리하게 이용하실 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">지평<strong>역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">지평<br>↓<br>청량리</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1602호</span><div class="time-display">12:16</div><div class="arrival-info">12:56 도착</div></td><td><span class="train-detail">1602호</span><div class="time-display">12:16</div><div class="arrival-info">12:56 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1652호</span><div class="time-display">06:37</div><div class="arrival-info">07:21 도착</div></td><td><span class="train-detail">1676호</span><div class="time-display">19:12</div><div class="arrival-info">19:55 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">지평<br>↓<br>안동</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">07:21</div><div class="arrival-info">09:16 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">15:31</div><div class="arrival-info">17:31 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">지평<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">07:21</div><div class="arrival-info">12:20 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">15:31</div><div class="arrival-info">20:28 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">지평<br>↓<br>태백</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1671호</span><div class="time-display">08:25</div><div class="arrival-info">11:17 도착</div></td><td><span class="train-detail">1677호</span><div class="time-display">20:00</div><div class="arrival-info">22:44 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">지평<br>↓<br>동해</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1671호</span><div class="time-display">08:25</div><div class="arrival-info">12:25 도착</div></td><td><span class="train-detail">1677호</span><div class="time-display">20:00</div><div class="arrival-info">23:50 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong><strong><strong>지평</strong></strong></strong>역 </strong>ITX-마음 무궁화호 <strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>운임</th></tr></thead><tbody><tr><td>중앙1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">지평</td><td>4,000</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">지평</td><td>4,000</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">청량리</td><td class="highlight">지평</td><td>6,000</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">지평</td><td class="highlight">경주</td><td>19,800</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">지평</td><td class="highlight">경주</td><td>25,600</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">지평</td><td class="highlight">태화강</td><td>22,500</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">지평</td><td class="highlight">태화강</td><td>29,600</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">지평</td><td class="highlight">부전</td><td>26,600</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">지평</td><td class="highlight">부전</td><td>35,700</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">지평</td><td class="highlight">태백</td><td>11,200</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">지평</td><td class="highlight">동해</td><td>15,200</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>지평역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <s>지평역 KTX 노선 없음</s><br>✅ <s>지평역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ec%a7%80%ed%8f%89%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%a4%91%ec%95%99%ec%84%a0-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80/">지평역 ITX, 무궁화 시간표 바로가기</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>지평역 <strong><strong><strong>ITX-마음 무궁화호 </strong>시간표</strong></strong></strong></h2>



<h3 class="wp-block-heading">출발 : 지평 → 도착 : 청량리</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>지평</th><th>용문</th><th>양평</th><th>덕소</th><th>청량리</th></tr></thead><tbody><tr><td>1652</td><td>무궁화</td><td>06:37</td><td>06:43</td><td>06:51</td><td>07:08</td><td>07:21</td></tr><tr><td>1662</td><td>무궁화</td><td>07:42</td><td>07:48</td><td>07:56</td><td>08:13</td><td>08:27</td></tr><tr><td>1672</td><td>무궁화</td><td>09:48</td><td>09:54</td><td>10:01</td><td>10:18</td><td>10:31</td></tr><tr><td>1602</td><td>ITX-마음</td><td>12:16</td><td>12:22</td><td>12:29</td><td></td><td>12:56</td></tr><tr><td>1674</td><td>무궁화</td><td>17:50</td><td>17:56</td><td>18:04</td><td>18:21</td><td>18:35</td></tr><tr><td>1676</td><td>무궁화</td><td>19:12</td><td>19:17</td><td>19:25</td><td>19:42</td><td>19:55</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 지평 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>지평</th><th>양동</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th><th>의성</th><th>군위</th><th>영천</th><th>아화</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>07:21</td><td>07:31</td><td>07:40</td><td>07:47</td><td>08:05</td><td>08:14</td><td>08:31</td><td>08:44</td><td>08:55</td><td>09:16</td><td>09:34</td><td>09:52</td><td>10:14</td><td>10:26</td><td>10:43</td><td>11:04</td><td>11:13</td><td>11:30</td><td>11:51</td><td>12:02</td><td>12:10</td><td>12:20</td></tr><tr><td>1603</td><td>ITX-마음</td><td>15:31</td><td>15:46</td><td>15:56</td><td>16:03</td><td></td><td>16:28</td><td>16:45</td><td>16:58</td><td>17:10</td><td>17:31</td><td>17:49</td><td>18:06</td><td>18:27</td><td>18:38</td><td>18:55</td><td>19:15</td><td>19:23</td><td>19:39</td><td>20:00</td><td>20:10</td><td>20:17</td><td>20:28</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 지평 → 도착 : 제천</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>지평</th><th>석불</th><th>일신</th><th>매곡</th><th>양동</th><th>삼산</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>07:21</td><td></td><td></td><td></td><td>07:31</td><td></td><td>07:40</td><td>07:47</td><td>08:05</td><td>08:14</td></tr><tr><td>1671</td><td>무궁화</td><td>08:25</td><td>08:30</td><td>08:35</td><td>08:40</td><td>08:44</td><td>08:49</td><td>08:57</td><td>09:05</td><td></td><td>09:31</td></tr><tr><td>1675</td><td>무궁화</td><td>13:07</td><td>13:13</td><td>13:17</td><td>13:22</td><td>13:27</td><td></td><td>13:36</td><td>13:43</td><td></td><td>14:07</td></tr><tr><td>1603</td><td>ITX-마음</td><td>15:31</td><td></td><td></td><td></td><td>15:46</td><td></td><td>15:56</td><td>16:03</td><td></td><td>16:28</td></tr><tr><td>1677</td><td>무궁화</td><td>20:00</td><td>20:06</td><td>20:10</td><td>20:15</td><td>20:20</td><td></td><td>20:29</td><td>20:36</td><td></td><td>21:01</td></tr><tr><td>1651</td><td>무궁화</td><td>21:18</td><td>21:24</td><td>21:28</td><td>21:33</td><td>21:38</td><td>21:43</td><td>21:50</td><td>21:57</td><td>22:16</td><td>22:24</td></tr><tr><td>1661</td><td>무궁화</td><td>22:46</td><td></td><td></td><td></td><td>22:56</td><td></td><td>23:05</td><td>23:12</td><td></td><td>23:37</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 지평 → 도착 : 영주</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>지평</th><th>양동</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>07:21</td><td>07:31</td><td>07:40</td><td>07:47</td><td>08:05</td><td>08:14</td><td>08:31</td><td>08:44</td><td>08:55</td></tr><tr><td>1603</td><td>ITX-마음</td><td>15:31</td><td>15:46</td><td>15:56</td><td>16:03</td><td></td><td>16:28</td><td>16:45</td><td>16:58</td><td>17:10</td></tr><tr><td>1661</td><td>무궁화</td><td>22:46</td><td>22:56</td><td>23:05</td><td>23:12</td><td></td><td>23:37</td><td>23:52</td><td>00:05</td><td>00:14</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 지평 → 도착 : 안동</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>지평</th><th>양동</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>07:21</td><td>07:31</td><td>07:40</td><td>07:47</td><td>08:05</td><td>08:14</td><td>08:31</td><td>08:44</td><td>08:55</td><td>09:16</td></tr><tr><td>1603</td><td>ITX-마음</td><td>15:31</td><td>15:46</td><td>15:56</td><td>16:03</td><td></td><td>16:28</td><td>16:45</td><td>16:58</td><td>17:10</td><td>17:31</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 지평 → 도착 : 동해</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차종별</th><th>열차번호</th><th>지평</th><th>석불</th><th>일신</th><th>매곡</th><th>양동</th><th>삼산</th><th>서원주</th><th>원주</th><th>제천</th><th>쌍룡</th><th>영월</th><th>예미</th><th>민둥산</th><th>사북</th><th>고한</th><th>태백</th><th>동백산</th><th>도계</th><th>신기</th><th>동해</th></tr></thead><tbody><tr><td>무궁화</td><td>1671</td><td>08:25</td><td>08:30</td><td>08:35</td><td>08:40</td><td>08:44</td><td>08:49</td><td>08:57</td><td>09:05</td><td>09:31</td><td></td><td>10:05</td><td>10:25</td><td>10:47</td><td>10:56</td><td>11:03</td><td>11:17</td><td>11:29</td><td>11:45</td><td>12:02</td><td>12:25</td></tr><tr><td>무궁화</td><td>1675</td><td>13:07</td><td>13:13</td><td>13:17</td><td>13:22</td><td>13:27</td><td></td><td>13:36</td><td>13:43</td><td>14:07</td><td>14:22</td><td>14:40</td><td>15:01</td><td>15:23</td><td>15:32</td><td>15:39</td><td>15:54</td><td>16:05</td><td>16:23</td><td></td><td>17:05</td></tr><tr><td>무궁화</td><td>1677</td><td>20:00</td><td>20:06</td><td>20:10</td><td>20:15</td><td>20:20</td><td></td><td>20:29</td><td>20:36</td><td>21:01</td><td></td><td>21:32</td><td>21:52</td><td>22:13</td><td>22:22</td><td>22:29</td><td>22:44</td><td>22:56</td><td>23:12</td><td></td><td>23:50</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>지평역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '지평'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">지평역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">지평역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '';
            let curName = '지평';
            let altCity = '';
            let altName = '';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">지평역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">13℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">지평역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EA%B3%A0%EB%B0%94%EC%9A%B0%EC%84%A4%EB%A0%81%ED%83%95+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EC%96%91%ED%8F%89%EA%B5%B0+%EC%9A%A9%EB%AC%B8%EB%A9%B4+%EA%B4%91%ED%83%84%EB%A6%AC+83-1+%EA%B3%A0%EB%B0%94%EC%9A%B0%EC%84%A4%EB%A0%81%ED%83%95" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">고바우설렁탕</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;곰탕,설렁탕</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 양평군 용문면 광탄리 83-1 고바우설렁탕</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%9A%A9%EB%AC%B8%EC%82%B0%EB%B9%B5%EA%B3%B5%EC%9E%A5+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EC%96%91%ED%8F%89%EA%B5%B0+%EC%9A%A9%EB%AC%B8%EB%A9%B4+%EB%8D%95%EC%B4%8C%EB%A6%AC+112-8" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">용문산빵공장</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;카페,디저트</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 양평군 용문면 덕촌리 112-8</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%8F%97%EA%B0%80%EB%B9%84+%EB%B6%88%EC%AD%88%EA%BE%B8%EB%AF%B8+%EB%B3%B8%EC%A0%90+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EC%96%91%ED%8F%89%EA%B5%B0+%EC%9A%A9%EB%AC%B8%EB%A9%B4+%EB%8D%95%EC%B4%8C%EB%A6%AC+99-1" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">돗가비 불쭈꾸미 본점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;주꾸미요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 양평군 용문면 덕촌리 99-1</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%8B%A4%EC%98%A4%EB%A6%AC%EB%8B%A4+%EC%96%91%ED%8F%89%EC%A0%90+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EC%96%91%ED%8F%89%EA%B5%B0+%EC%9A%A9%EB%AC%B8%EB%A9%B4+%EB%8B%A4%EB%AC%B8%EB%A6%AC+701-6+1%EC%B8%B5+%EB%8B%A4%EC%98%A4%EB%A6%AC%EB%8B%A4+%EC%96%91%ED%8F%89%EC%A0%90" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">다오리다 양평점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;오리요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 양평군 용문면 다문리 701-6 1층 다오리다 양평점</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%94%8C%EB%A1%9C%EB%9D%BC%EB%8A%98%EC%B9%B4%ED%8E%98+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EC%96%91%ED%8F%89%EA%B5%B0+%EC%9A%A9%EB%AC%B8%EB%A9%B4+%EB%8D%95%EC%B4%8C%EB%A6%AC+27-2" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">플로라늘카페</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;카페</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 양평군 용문면 덕촌리 27-2</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">지평역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">지평역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 지평역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%A7%80%ED%8F%89%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/04/지평역-기차-시간표-ITX-마음-무궁화호-중앙선-태백선-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="지평역-기차-시간표-ITX-마음-무궁화호-중앙선-태백선-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-20832" srcset="https://krailroad.co.kr/wp-content/uploads/2026/04/지평역-기차-시간표-ITX-마음-무궁화호-중앙선-태백선-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/04/지평역-기차-시간표-ITX-마음-무궁화호-중앙선-태백선-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/04/지평역-기차-시간표-ITX-마음-무궁화호-중앙선-태백선-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>서해선 ITX-마음 시간표 홍성(출발)~홍성(도착) 정차역 안내</title>
		<link>https://krailroad.co.kr/%ec%84%9c%ed%95%b4%ec%84%a0-itx-%eb%a7%88%ec%9d%8c-%ec%8b%9c%ea%b0%84%ed%91%9c-%ed%99%8d%ec%84%b1%ec%b6%9c%eb%b0%9c%ed%99%8d%ec%84%b1%eb%8f%84%ec%b0%a9-%ec%a0%95%ec%b0%a8%ec%97%ad-%ec%95%88/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Sat, 25 Apr 2026 00:22:58 +0000</pubDate>
				<category><![CDATA[실시간 열차 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[서해선 ITX-마음 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=20764</guid>

					<description><![CDATA[충남 홍성에서 시작해 다시 홍성으로 돌아오는 독특한 순환 구조를 가진 서해선 ITX-마음 시간표를 이용한 이동은 남북을 잇는 단순한 철길을 넘어, 서해안권 교통의 새로운 중심축으로 떠오르고 있습니다. 2024년 말 정식 개통과 함께 본격적인 운행을 시작한 이 노선은 충남 서북부와 경기도를 직선으로 연결하며 수도권 접근성을 획기적으로 개선했는데요. 과거 철도교통에서 다소 소외되었던 서해안 지역의 물류와 여객을 원활하게 수송하기 ... <a title="서해선 ITX-마음 시간표 홍성(출발)~홍성(도착) 정차역 안내" class="read-more button" href="https://krailroad.co.kr/%ec%84%9c%ed%95%b4%ec%84%a0-itx-%eb%a7%88%ec%9d%8c-%ec%8b%9c%ea%b0%84%ed%91%9c-%ed%99%8d%ec%84%b1%ec%b6%9c%eb%b0%9c%ed%99%8d%ec%84%b1%eb%8f%84%ec%b0%a9-%ec%a0%95%ec%b0%a8%ec%97%ad-%ec%95%88/" aria-label="서해선 ITX-마음 시간표 홍성(출발)~홍성(도착) 정차역 안내 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">충남 홍성에서 시작해 다시 홍성으로 돌아오는 독특한 순환 구조를 가진 서해선 ITX-마음 시간표를 이용한 이동은 남북을 잇는 단순한 철길을 넘어, 서해안권 교통의 새로운 중심축으로 떠오르고 있습니다. 2024년 말 정식 개통과 함께 본격적인 운행을 시작한 이 노선은 충남 서북부와 경기도를 직선으로 연결하며 수도권 접근성을 획기적으로 개선했는데요. 과거 철도교통에서 다소 소외되었던 서해안 지역의 물류와 여객을 원활하게 수송하기 위해 탄생한 만큼, 현재는 최신형 열차인 ITX-마음이 투입되어 쾌적하면서도 빠른 이동을 책임지고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>서해선 ITX-마음 시간표 안내</strong></h2>



<h3 class="wp-block-heading">서해선 ITX-마음 순환 구조</h3>



<p class="wp-block-paragraph">서해선 ITX-마음 시간표를 살필 때 가장 눈에 띄는 점은 홍성역을 출발해 서화성역을 거쳐 다시 홍성으로 돌아오는 순환 형태의 운행 방식으로, 이는 현재 신안산선 등 수도권 본선 구간의 공사가 진행 중인 상황에서, 서해안 지역 주민들의 이동권을 선제적으로 보장하기 위한 전략적인 운영 방식입니다(장항선 시간표는 <a href="https://krailroad.co.kr/%ec%9e%a5%ed%95%ad%ec%84%a0-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%9d%b5%ec%82%b0%ec%97%ad%ec%9a%a9%ec%82%b0%ec%97%ad-%ec%83%81%ed%95%98%ed%96%89-%ec%b5%9c%ec%8b%a0/">여기</a>를 참고하세요).<br><br>1️⃣ <strong>서화성역이 종착지인 이유</strong>: 현재 안산 방면 본선 구간이 아직 완전히 연결되지 않았기 때문에, 서화성역에서 임시 종착 및 셔틀 버스 연계를 통해 서울 도심으로의 이동을 돕고 있으며, 향후 전 구간이 개통되면 더욱 강력한 수도권 직결 노선이 될 전망입니다.<br><br>2️⃣ <strong>ITX-마음 도입 배경</strong>: 서해선의 고속화된 선로 스펙에 맞춰 도입된 ITX-마음은 무궁화호보다는 빠르고 KTX보다는 합리적인 비용으로 이용할 수 있어, 통근이나 장거리 여행객 모두에게 적합한 열차입니다.<br><br>3️⃣ <strong>노선 계통</strong>: 홍성을 기점으로 합덕, 인주, 안중, 향남, 화성시청을 거쳐 서화성까지 이어지는 이 길은 충남의 내포 신도시와 경기의 주요 거점을 가장 빠르게 연결하는 통로가 됩니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">데이터로 설계하는 지능형 이동</h3>



<p class="wp-block-paragraph">단순히 열차의 출발 시각만 확인하던 방식에서 벗어나, 본 로직은 역에 도착하는 순간부터 최종 목적지에 닿을 때까지의 서해선 ITX-마음 시간표를 데이터로 제공하며, <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a>의 공식 데이터베이스와 1분마다 자동 동기화되는 공공 API 로직은 홍성역이나 서화성역 등 주요 역의 열차 시간을 실시간으로 보여주는데요. 특히 정보 확인에 제약이 있거나 다른 용무를 보시는 분들을 위해 마련된 음성 알림 기능을 활성화하면, 열차 진입 15분 전부터 신호를 보내주어 대합실이나 인근 대기 공간에서도 열차를 편리하게 이용할 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">홍성 ↔&nbsp;홍성 첫차 &amp; 막차</h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">홍성(출발)<br>↓<br>서화성</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1232호</span><div class="time-display">06:36</div><div class="arrival-info">07:43 도착</div></td><td><span class="train-detail">1238호</span><div class="time-display">17:38</div><div class="arrival-info">18:45 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">홍성(출발)<br>↓<br>홍성(도착)</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1241호</span><div class="time-display">09:24</div><div class="arrival-info">11:31 도착</div></td><td><span class="train-detail">1245호</span><div class="time-display">18:15</div><div class="arrival-info">20:20 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">서화성<br>↓<br>홍성(도착)</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1231호</span><div class="time-display">08:23</div><div class="arrival-info">09:30 도착</div></td><td><span class="train-detail">1237호</span><div class="time-display">19:25</div><div class="arrival-info">20:32 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">홍성(출발)<br>↓<br>홍성(도착)</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1242호</span><div class="time-display">06:17</div><div class="arrival-info">08:22 도착</div></td><td><span class="train-detail">1246호</span><div class="time-display">15:20</div><div class="arrival-info">17:24 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">홍성 →&nbsp;서화성 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차종별</th><th>열차번호</th><th>홍성(출발)</th><th>합덕</th><th>인주</th><th>안중</th><th>향남</th><th>화성시청</th><th>서화성</th></tr></thead><tbody><tr><td>ITX-마음</td><td>1232</td><td>06:36</td><td>06:52</td><td>07:01</td><td>07:14</td><td>07:27</td><td>07:37</td><td>07:43</td></tr><tr><td>ITX-마음</td><td>1234</td><td>10:14</td><td>10:30</td><td>10:39</td><td>10:52</td><td>11:05</td><td>11:15</td><td>11:21</td></tr><tr><td>ITX-마음</td><td>1236</td><td>13:58</td><td>14:14</td><td>14:23</td><td>14:36</td><td>14:49</td><td>14:59</td><td>15:05</td></tr><tr><td>ITX-마음</td><td>1238</td><td>17:38</td><td>17:54</td><td>18:03</td><td>18:16</td><td>18:29</td><td>18:39</td><td>18:45</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">홍성 →&nbsp;홍성 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차종별</th><th>열차번호</th><th>홍성(출발)</th><th>합덕</th><th>인주</th><th>안중</th><th>평택</th><th>천안</th><th>아산</th><th>온양온천</th><th>신례원</th><th>예산</th><th>삽교</th><th>홍성(도착)</th></tr></thead><tbody><tr><td>ITX-마음</td><td>1241</td><td>09:24</td><td>09:40</td><td>09:49</td><td>10:06</td><td>10:20</td><td>10:39</td><td>10:45</td><td>10:55</td><td>11:10</td><td>11:16</td><td>11:22</td><td>11:31</td></tr><tr><td>ITX-마음</td><td>1243</td><td>12:03</td><td>12:19</td><td>12:28</td><td>12:45</td><td>12:58</td><td>13:17</td><td>13:23</td><td>13:33</td><td>13:48</td><td>13:54</td><td>14:00</td><td>14:09</td></tr><tr><td>ITX-마음</td><td>1245</td><td>18:15</td><td>18:31</td><td>18:40</td><td>18:57</td><td>19:10</td><td>19:29</td><td>19:35</td><td>19:45</td><td>19:59</td><td>20:05</td><td>20:11</td><td>20:20</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">서화성 →&nbsp;홍성 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차종별</th><th>열차번호</th><th>서화성</th><th>화성시청</th><th>향남</th><th>안중</th><th>인주</th><th>합덕</th><th>홍성(도착)</th></tr></thead><tbody><tr><td>ITX-마음</td><td>1231</td><td>08:23</td><td>08:31</td><td>08:40</td><td>08:54</td><td>09:07</td><td>09:15</td><td>09:30</td></tr><tr><td>ITX-마음</td><td>1233</td><td>12:11</td><td>12:19</td><td>12:28</td><td>12:42</td><td>12:55</td><td>13:03</td><td>13:18</td></tr><tr><td>ITX-마음</td><td>1235</td><td>15:47</td><td>15:55</td><td>16:04</td><td>16:18</td><td>16:31</td><td>16:39</td><td>16:54</td></tr><tr><td>ITX-마음</td><td>1237</td><td>19:25</td><td>19:33</td><td>19:42</td><td>19:56</td><td>20:09</td><td>20:17</td><td>20:32</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">홍성 →&nbsp;홍성 ITX-마음 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차종별</th><th>열차번호</th><th>홍성(출발)</th><th>삽교</th><th>예산</th><th>신례원</th><th>온양온천</th><th>아산</th><th>천안</th><th>평택</th><th>안중</th><th>인주</th><th>합덕</th><th>홍성(도착)</th></tr></thead><tbody><tr><td>ITX-마음</td><td>1242</td><td>06:17</td><td>06:26</td><td>06:33</td><td>06:38</td><td>06:54</td><td>07:02</td><td>07:09</td><td>07:28</td><td>07:45</td><td>07:59</td><td>08:07</td><td>08:22</td></tr><tr><td>ITX-마음</td><td>1244</td><td>12:12</td><td>12:21</td><td>12:28</td><td>12:34</td><td>12:49</td><td>12:57</td><td>13:04</td><td>13:23</td><td>13:40</td><td>13:54</td><td>14:02</td><td>14:17</td></tr><tr><td>ITX-마음</td><td>1246</td><td>15:20</td><td>15:29</td><td>15:36</td><td>15:42</td><td>15:56</td><td>16:05</td><td>16:11</td><td>16:30</td><td>16:47</td><td>17:01</td><td>17:09</td><td>17:24</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">전국 기차 시간표 및 운임 조회</h2>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #ktx-live-app-v2 { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 1px solid #e2e8f0; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.06); min-height: 800px; }
        .ktx-top-bar-v2 { background: #0045e6; padding: 15px 20px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .ktx-top-bar-v2 b { font-size: 17px; }
        .ktx-live-label-v2 { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 900; animation: ktx_pulse_v2 1.5s infinite; }
        @keyframes ktx_pulse_v2 { 50% { opacity: 0.4; } }
        .ktx-search-box-v2 { padding: 15px; background: #f8fafc; border-bottom: 1px solid #eee; }
        .ktx-input-flex-v2 { display: flex; gap: 8px; margin-bottom: 10px; }
        .ktx-input-flex-v2 input { flex: 1; min-width: 0; padding: 12px; border-radius: 8px; border: 1px solid #cbd5e1; font-size: 16px !important; outline: none; background: #fff; -webkit-appearance: none; }
        #ktx-btn-submit-v2 { width: 100%; padding: 15px; background: #64748b; color: #fff; border: none; border-radius: 8px; cursor: pointer; font-weight: bold; font-size: 16px; transition: all 0.3s; height: 50px; }
        #ktx-btn-submit-v2:hover { background: #475569; }
        #ktx-btn-submit-v2.is-searching { background: #6366f1 !important; cursor: wait; }
        .ktx-memo-area-v2 { padding: 12px 15px; background: #fffbeb; color: #92400e; font-size: 14px; line-height: 1.6; border-top: 1px solid #fef3c7; display: none; word-break: keep-all; min-height: 45px; }
        .ktx-main-table-v2 { width: 100%; border-collapse: collapse; table-layout: fixed; border: none; min-height: 700px; }
        .ktx-main-table-v2 th { font-size: 13px; color: #64748b; padding: 12px 2px; background: #f1f5f9; border-bottom: 1px solid #e2e8f0; text-align: center; }
        .ktx-main-table-v2 td { padding: 15px 4px; border-bottom: none !important; text-align: center; vertical-align: middle; }
        .ktx-status-text-v2 { color: #e11d48; font-weight: 800; font-size: 14px; margin: 3px 0; white-space: nowrap; letter-spacing: -0.5px; }
        .ktx-grade-name-v2 { font-size: 16px; font-weight: 800; color: #0045e6; line-height: 1.2; display: block; }
        .ktx-train-no-v2 { font-size: 11px; color: #94a3b8; display: block; margin-top: 2px; }
        .v-tag-ok-v2 { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        .v-tag-duration-v2 { font-size: 10px; color: #0045e6; background: #eff6ff; padding: 1px 4px; border-radius: 3px; border: 1px solid #dbeafe; display: inline-block; margin-top: 4px; font-weight: bold; }
        .ktx-time-info-v2 { color: #475569; font-size: 12px; font-weight: 600; }
        .ktx-station-name-v2 { font-size: 14px; font-weight: 700; color: #1e293b; }

        .ktx-badge-soon-v2 { 
            display: inline-block;
            background: #e11d48; 
            color: #fff; 
            padding: 4px 10px; 
            border-radius: 6px; 
            font-size: 11px; 
            font-weight: 900; 
            letter-spacing: -0.2px;
            margin-bottom: 4px;
            box-shadow: 0 2px 4px rgba(225, 29, 72, 0.2);
            animation: ktx_v4_pulse_v2 1.2s infinite ease-in-out; 
        }
        @keyframes ktx_v4_pulse_v2 { 0% { opacity: 1; transform: scale(1); } 50% { opacity: 0.6; transform: scale(0.96); } 100% { opacity: 1; transform: scale(1); } }

        .ktx-loading-v2 { opacity: 0.3; }
        .ktx-row-fade-v2 { animation: ktxFadeInUp_v2 0.5s ease-out forwards; opacity: 0; }
        @keyframes ktxFadeInUp_v2 { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }

        .ktx-voice-btn-v2 { padding: 4px 12px; border-radius: 15px; border: 2px solid rgba(255,255,255,0.6); background: rgba(0,0,0,0.15); font-size: 11px; font-weight: 900; color: #fff; cursor: pointer; display: inline-flex; align-items: center; gap: 4px; height: 26px; transition: 0.2s; line-height: 1; margin-left:10px; }
        .ktx-voice-btn-v2.active { background: #fff; color: #0045e6; border-color: #fff; box-shadow: 0 0 10px rgba(255,255,255,0.3); }

        .ktx-pagination-v2 { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 20px; background: #fff; border-top: 1px solid #f1f5f9; }
        .ktx-page-btn-v2 { padding: 8px 16px; border: 1px solid #e2e8f0; border-radius: 6px; font-size: 13px; color: #64748b; background: #fff; cursor: pointer; transition: 0.2s; }
        .ktx-page-btn-v2:hover:not(:disabled) { background: #f1f5f9; border-color: #cbd5e1; }
        .ktx-page-btn-v2:disabled { opacity: 0.4; cursor: not-allowed; }
        .ktx-page-info-v2 { font-size: 14px; font-weight: bold; color: #0045e6; }
    </style>

    <div id="ktx-live-app-v2">
        <div class="ktx-top-bar-v2">
            <div style="display: flex; align-items: center;">
                <b><span id="ktx-live-clock-v2" style="font-size:14px; font-weight:bold; opacity:1;"></span></b>
                <button class="ktx-voice-btn-v2" id="ktx-voice-toggle-v2" onclick="toggleKtxVoiceV2()">
                    <span class="v-ico-v2">🔈</span> <span class="v-txt-v2">음성 끔</span>
                </button>
            </div>
            <div class="ktx-live-label-v2">LIVE</div>
        </div>
        <div class="ktx-search-box-v2">
            <div class="ktx-input-flex-v2">
                <input type="text" id="ktx-dep-field-v2" placeholder="출발역" value="">
                <input type="text" id="ktx-arr-field-v2" placeholder="도착역" value="">
            </div>
            <button id="ktx-btn-submit-v2" onclick="runKtxLiveSearchV2(true)">열차 시간 조회하기</button>
        </div>
        
        <table class="ktx-main-table-v2">
            <thead><tr><th style="width: 24%;">열차정보</th><th style="width: 24%;">출발역</th><th style="width: 28%;">출발예정</th><th style="width: 24%;">도착역</th></tr></thead>
            <tbody id="ktx-live-tbody-v2">
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr id="ktx-init-msg-v2"><td colspan="4" style="position:absolute; width:100%; left:0; padding:70px 0; color:#94a3b8; font-size:13px; text-align:center;">역 이름을 입력하고 조회해 주세요.</td></tr>
            </tbody>
        </table>

        <div id="ktx-pagination-ctrl-v2" class="ktx-pagination-v2" style="display:none;">
            <button class="ktx-page-btn-v2" id="ktx-prev-page-v2" onclick="changeKtxPageV2(-1)">&laquo; 이전</button>
            <span class="ktx-page-info-v2"><span id="ktx-current-page-v2">1</span> / <span id="ktx-total-pages-v2">1</span></span>
            <button class="ktx-page-btn-v2" id="ktx-next-page-v2" onclick="changeKtxPageV2(1)">다음 &raquo;</button>
        </div>

        <div id="ktx-memo-display-v2" class="ktx-memo-area-v2"></div>

        <div style="padding: 10px 18px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #f1f5f9; display:flex; justify-content:space-between;">
            <span>1분 간격 자동 갱신</span><span>최근: <span id="ktx-last-update-v2">--:--:--</span></span>
        </div>
    </div>

    <script>
    let ktxStationListV2 = [];
    const ktxKeyFinalV2 = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    window.ktxVoiceEnabledV2 = false;
    window.ktxAnnouncedV2 = new Set();
    let currentKtxFullDataV2 = [];
    let ktxCurrentPageV2 = 1;
    const ktxItemsPerPageV2 = 10;

    function toggleKtxVoiceV2() {
        window.ktxVoiceEnabledV2 = !window.ktxVoiceEnabledV2;
        const btn = document.getElementById('ktx-voice-toggle-v2');
        const txt = btn.querySelector('.v-txt-v2'), ico = btn.querySelector('.v-ico-v2');
        if(window.ktxVoiceEnabledV2) {
            btn.classList.add('active'); txt.innerText = "음성 켬"; ico.innerText = "🔊";
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); txt.innerText = "음성 끔"; ico.innerText = "🔈";
            window.speechSynthesis.cancel();
        }
    }

    function updateKtxClockV2() {
        const now = new Date();
        const clockEl = document.getElementById('ktx-live-clock-v2');
        if (clockEl) { clockEl.innerText = `${now.getMonth() + 1}.${now.getDate()} ${now.getHours().toString().padStart(2, '0')}:${now.getMinutes().toString().padStart(2, '0')} 기준`; }
    }
    setInterval(updateKtxClockV2, 1000);

    async function ktxMasterLoadV2() {
        updateKtxClockV2();
        ktxStationListV2.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinalV2}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())));
            const parser = new DOMParser();
            results.forEach(xmlStr => {
                const xml = parser.parseFromString(xmlStr, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!ktxStationListV2.find(s => s.id === id)) ktxStationListV2.push({ name, id });
                });
            });
            if(document.getElementById('ktx-dep-field-v2').value && document.getElementById('ktx-arr-field-v2').value) runKtxLiveSearchV2(false);
        } catch (e) { console.log("V2 Station data fail"); }
    }

    function renderKtxPageV2(page) {
        const tbody = document.getElementById('ktx-live-tbody-v2');
        const now = new Date();
        const start = (page - 1) * ktxItemsPerPageV2;
        const end = start + ktxItemsPerPageV2;
        const pageData = currentKtxFullDataV2.slice(start, end);
        let html = '';
        pageData.forEach((r, idx) => {
            const diffMs = r.depDate - now;
            const diffMin = Math.round(diffMs / 60000);
            
            if (window.ktxVoiceEnabledV2 && diffMin === 15) {
                const key = r.no + "_" + r.dep_n + "_" + r.dep_time;
                if (!window.ktxAnnouncedV2.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 ${r.dep_n}역에서 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnouncedV2.add(key);
                }
            }

            const soon = (diffMin <= 15 && diffMin >= 0) ? '<span class="ktx-badge-soon-v2">출발임박</span>' : '';
            const durationTotal = Math.round((r.arrDate - r.depDate) / 60000);
            const h_dur = Math.floor(durationTotal / 60);
            const m_dur = durationTotal % 60;
            const durationStr = `${String(h_dur).padStart(2, '0')}:${String(m_dur).padStart(2, '0')} 소요`;
            
            let timeStatus = '';
            if (diffMin < 0) {
                timeStatus = '<div class="ktx-status-text-v2" style="color:#64748b;">운행종료</div>';
            } else {
                timeStatus = `<div class="ktx-status-text-v2">${diffMin===0?'출발대기':diffMin+'분 후 출발'}</div>`;
            }

            html += `<tr class="ktx-row-fade-v2" style="animation-delay:${idx*0.05}s;"><td><span class="ktx-train-no-v2">${r.no}호</span><span class="ktx-grade-name-v2">${r.grade}</span><span class="v-tag-ok-v2">정상운행</span></td><td><div class="ktx-station-name-v2">${r.dep_n}역</div><span class="v-tag-duration-v2">${durationStr}</span></td><td>${soon}${timeStatus}<div class="ktx-time-info-v2">${r.dep_time} 출발</div></td><td><div class="ktx-station-name-v2">${r.arr_n}역</div><div class="ktx-time-info-v2" style="color:#0045e6;">${r.arr_time} 도착</div></td></tr>`;
        });
        tbody.innerHTML = html;
        document.getElementById('ktx-current-page-v2').innerText = page;
        document.getElementById('ktx-prev-page-v2').disabled = (page === 1);
        document.getElementById('ktx-next-page-v2').disabled = (page === Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2));
    }

    function changeKtxPageV2(dir) {
        const total = Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2);
        let target = ktxCurrentPageV2 + dir;
        if (target >= 1 && target <= total) { ktxCurrentPageV2 = target; renderKtxPageV2(ktxCurrentPageV2); }
    }

    async function runKtxLiveSearchV2(manual = false) {
        const btn = document.getElementById('ktx-btn-submit-v2');
        let d_val = document.getElementById('ktx-dep-field-v2').value.trim();
        let a_val = document.getElementById('ktx-arr-field-v2').value.trim();
        if (!d_val || !a_val) { if(manual) alert("출발역과 도착역을 모두 입력하세요."); return; }
        
        btn.innerText = "데이터 검색 중..."; btn.classList.add('is-searching'); btn.disabled = true;
        d_val = d_val.replace(/역$/, ''); a_val = a_val.replace(/역$/, '');
        
        const tbody = document.getElementById('ktx-live-tbody-v2');
        const memoDiv = document.getElementById('ktx-memo-display-v2');
        const pgCtrl = document.getElementById('ktx-pagination-ctrl-v2');
        if(manual) tbody.classList.add('ktx-loading-v2');

        const findStation = (n) => {
            if (n === "여수" || n === "여수엑스포") return { name: "여수EXPO", id: "NAT041993" };
            return ktxStationListV2.find(s => s.name === n || s.name === n + '역');
        }
        const dep = findStation(d_val); const arr = findStation(a_val);
        if (!dep || !arr) { 
            tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0;">역 이름을 정확히 입력해 주세요. (예: 부산, 동대구)</td></tr>';
            pgCtrl.style.display = 'none';
            tbody.classList.remove('ktx-loading-v2');
            btn.innerText = "열차 시간 조회하기"; btn.classList.remove('is-searching'); btn.disabled = false; 
            return; 
        }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live_v2');
        fd.append('dep_id', dep.id); fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            const resData = await response.json();
            const now = new Date();
            currentKtxFullDataV2 = resData.trains.map(item => {
                const parseTrainTime = (str) => { if (!str || str.length < 12) return new Date(0); return new Date(str.substring(0,4), str.substring(4,6)-1, str.substring(6,8), str.substring(8,10), str.substring(10,12)); };
                item.depDate = parseTrainTime(item.raw_dep); item.arrDate = parseTrainTime(item.raw_arr);
                if (item.arrDate < item.depDate) item.arrDate.setDate(item.arrDate.getDate() + 1);
                return item;
            }).sort((a, b) => a.depDate - b.depDate);

            if (currentKtxFullDataV2.length > 0) {
                const totalPages = Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2);
                document.getElementById('ktx-total-pages-v2').innerText = totalPages;
                pgCtrl.style.display = 'flex';
                
                let firstUpcomingIdx = currentKtxFullDataV2.findIndex(t => t.depDate.getTime() > (now.getTime() - 300000));
                if (firstUpcomingIdx === -1) firstUpcomingIdx = 0;
                ktxCurrentPageV2 = Math.floor(firstUpcomingIdx / ktxItemsPerPageV2) + 1;

                if(resData.memo_template) {
                    const f_t = currentKtxFullDataV2[0].dep_time;
                    const l_t = currentKtxFullDataV2[currentKtxFullDataV2.length-1].dep_time;
                    const scrollTips = [" 전체 시간표는 하단 페이징을 확인하세요.", " 모든 배차 정보를 페이지별로 확인 가능합니다."];
                    const randomTip = scrollTips[Math.floor(Math.random() * scrollTips.length)];
                    memoDiv.innerText = resData.memo_template.replace('{first_t}', f_t).replace('{last_t}', l_t) + randomTip;
                    memoDiv.style.display = 'block';
                }
                renderKtxPageV2(ktxCurrentPageV2);
                document.getElementById('ktx-last-update-v2').innerText = now.getHours().toString().padStart(2,'0')+':'+now.getMinutes().toString().padStart(2,'0')+':'+now.getSeconds().toString().padStart(2,'0');
            } else {
                tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0; color:#94a3b8;">오늘 운행되는 열차 정보가 없습니다.</td></tr>';
                pgCtrl.style.display = 'none';
            }
        } catch (e) { tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0;">데이터 통신 오류</td></tr>'; }

        tbody.classList.remove('ktx-loading-v2');
        btn.innerText = "열차 시간 조회하기"; btn.classList.remove('is-searching'); btn.disabled = false;
    }

    ktxMasterLoadV2();
    setInterval(() => { if(document.getElementById('ktx-dep-field-v2').value) runKtxLiveSearchV2(false); }, 60000);
    document.addEventListener('keypress', function(e) { if((e.target.id === 'ktx-dep-field-v2' || e.target.id === 'ktx-arr-field-v2') && e.keyCode === 13) runKtxLiveSearchV2(true); });
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">정차역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">정차역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '';
            let curName = '정차';
            let altCity = '';
            let altName = '';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">홍성역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">14℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">홍성역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%A7%A5%EB%8F%84%EB%82%A0%EB%93%9C+%EC%B6%A9%EB%82%A8%ED%99%8D%EC%84%B1DT%EC%A0%90+%EC%B6%A9%EC%B2%AD%EB%82%A8%EB%8F%84+%ED%99%8D%EC%84%B1%EA%B5%B0+%ED%99%8D%EC%84%B1%EC%9D%8D+%EC%86%8C%ED%96%A5%EB%A6%AC+72-4" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">맥도날드 충남홍성DT점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">양식&gt;햄버거</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">충청남도 홍성군 홍성읍 소향리 72-4</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%8D%94%ED%98%B8%EB%B4%89+%EC%B6%A9%EC%B2%AD%EB%82%A8%EB%8F%84+%ED%99%8D%EC%84%B1%EA%B5%B0+%ED%99%8D%EC%84%B1%EC%9D%8D+%EC%98%A4%EA%B4%80%EB%A6%AC+437-6+2%EB%8F%99" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">더호봉</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;카페</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">충청남도 홍성군 홍성읍 오관리 437-6 2동</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%82%B4%EB%8B%B9%ED%95%9C%EC%9A%B0+%EC%B6%A9%EC%B2%AD%EB%82%A8%EB%8F%84+%ED%99%8D%EC%84%B1%EA%B5%B0+%ED%99%8D%EC%84%B1%EC%9D%8D+%EC%98%A4%EA%B4%80%EB%A6%AC+393-2" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">내당한우</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;소고기구이</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">충청남도 홍성군 홍성읍 오관리 393-2</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%A1%AF%EB%8D%B0%EB%A6%AC%EC%95%84+%ED%99%8D%EC%84%B1%EC%A0%90+%EC%B6%A9%EC%B2%AD%EB%82%A8%EB%8F%84+%ED%99%8D%EC%84%B1%EA%B5%B0+%ED%99%8D%EC%84%B1%EC%9D%8D+%EC%98%A4%EA%B4%80%EB%A6%AC+306-1" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">롯데리아 홍성점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">양식&gt;햄버거</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">충청남도 홍성군 홍성읍 오관리 306-1</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%A7%88%EB%9D%BC%EC%BA%A1%ED%8B%B4+%ED%99%8D%EC%84%B1%EC%A0%90+%EC%B6%A9%EC%B2%AD%EB%82%A8%EB%8F%84+%ED%99%8D%EC%84%B1%EA%B5%B0+%ED%99%8D%EC%84%B1%EC%9D%8D+%EC%98%A4%EA%B4%80%EB%A6%AC+254+2%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">마라캡틴 홍성점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">중식&gt;중식당</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">충청남도 홍성군 홍성읍 오관리 254 2층</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">홍성역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">홍성역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 홍성역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%ED%99%8D%EC%84%B1%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="350" height="350" src="https://krailroad.co.kr/wp-content/uploads/2026/04/서해선-ITX-마음-시간표-홍성역-서화성역-홍성역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간.jpg" alt="서해선-ITX-마음-시간표-홍성역-서화성역-홍성역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간" class="wp-image-20793" srcset="https://krailroad.co.kr/wp-content/uploads/2026/04/서해선-ITX-마음-시간표-홍성역-서화성역-홍성역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간.jpg 350w, https://krailroad.co.kr/wp-content/uploads/2026/04/서해선-ITX-마음-시간표-홍성역-서화성역-홍성역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/04/서해선-ITX-마음-시간표-홍성역-서화성역-홍성역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간-150x150.jpg 150w" sizes="auto, (max-width: 350px) 100vw, 350px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>태백선 기차 시간표 ITX-마음-무궁화호 (동해역~청량리역) 요금 총정리</title>
		<link>https://krailroad.co.kr/%ed%83%9c%eb%b0%b1%ec%84%a0-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%eb%8f%99%ed%95%b4%ec%97%ad%ec%b2%ad%eb%9f%89%eb%a6%ac%ec%97%ad/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Mon, 20 Apr 2026 06:17:30 +0000</pubDate>
				<category><![CDATA[실시간 열차 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[무궁화 시간표]]></category>
		<category><![CDATA[태백선 기차 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=20648</guid>

					<description><![CDATA[태백선 기차 시간표를 이용한 강원도의 험준한 산맥을 뚫고 흐르는 태백선은 과거 우리나라의 에너지원이던 석탄을 나르던 산업의 대동맥에서, 이제는 백두대간의 절경을 품은 낭만 철길로 변모했습니다. 현재 이 구간은 전통의 무궁화호와 ITX-마음이 함께 운영되고 있는데요. 제천역에서 시작해 영월, 민둥산, 사북을 거쳐 동백산, 동해역까지 이어지는 이 길은 높은 고도 덕분에 창밖으로 구름 위를 달리는 듯한 풍경을 보실 수 ... <a title="태백선 기차 시간표 ITX-마음-무궁화호 (동해역~청량리역) 요금 총정리" class="read-more button" href="https://krailroad.co.kr/%ed%83%9c%eb%b0%b1%ec%84%a0-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%eb%8f%99%ed%95%b4%ec%97%ad%ec%b2%ad%eb%9f%89%eb%a6%ac%ec%97%ad/" aria-label="태백선 기차 시간표 ITX-마음-무궁화호 (동해역~청량리역) 요금 총정리 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">태백선 기차 시간표를 이용한 강원도의 험준한 산맥을 뚫고 흐르는 태백선은 과거 우리나라의 에너지원이던 석탄을 나르던 산업의 대동맥에서, 이제는 백두대간의 절경을 품은 낭만 철길로 변모했습니다. 현재 이 구간은 전통의 무궁화호와 ITX-마음이 함께 운영되고 있는데요. <a href="https://krailroad.co.kr/%ec%a0%9c%ec%b2%9c%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-itx-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80%ec%a0%84-%eb%8f%99/">제천역</a>에서 시작해 영월, 민둥산, 사북을 거쳐 동백산, <a href="https://krailroad.co.kr/%eb%8f%99%ed%95%b4%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%eb%ac%b4%eb%a6%89%ea%b3%84%ea%b3%a1-%eb%a7%9d/">동해역</a>까지 이어지는 이 길은 높은 고도 덕분에 창밖으로 구름 위를 달리는 듯한 풍경을 보실 수 있습니다.</p>



<p class="wp-block-paragraph">특히 태백선은 수도권인 청량리역과 동해안을 잇는 장거리 노선으로, 강원 남부 내륙을 관통하며 서울과 바다를 연결하는 핵심적인 역할을 수행하는데요. 단순한 장거리 이동 외에도 제천에서 태백을 잇거나, 영동선과 맞물려 아우라지 방면으로 향하는 정선 아리랑 열차와 연계되는 등 지역 특색이 강한 구간들도 존재합니다. 특히 태백산의 눈꽃이나 민둥산의 억새가 장관을 이루는 축제 시즌에는 평소보다 많은 사람이 이용하는 구간입니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>태백선 기차 시간표 안내</strong></h2>



<h3 class="wp-block-heading">실시간 공공 데이터 연동</h3>



<p class="wp-block-paragraph">태백선 기차 시간표를 가장 정확하고 빠른 정보를 원하신다면 아래 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a> 공식 자료와 국가 공공 데이터를 직접 호출하여 선로 위 열차의 움직임을 즉각적으로 반영하는 아래 시스템을 이용하면, 내가 탈 기차가 언제 출발하는지, 소요시간과 정차역은 어딘지 스마트폰 화면으로 즉시 파악할 수 있는데요. 특히 상단 메뉴에서 소리 설정을 활성화하면 기차 진입 15분 전부터 자동으로 안내 음성 로직이 작동 하므로, 이용해 보시는걸 추천해 드립니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">도착 이후의 여유, 통합 서비스</h3>



<p class="wp-block-paragraph">단순히 요금의 가성비를 따지는 수준을 넘어, 태백선 기차 시간표를 이용한 열차 이용은 험준한 지형을 가장 편안하게 가로지르는 구간으로 아래 구축된 정보는 열차 시간뿐만 아니라 영월역이나 태백역 주변의 주차장 현황, 역 광장에서 시내나 관광지로 연결되는 버스 도착 실시간 예보까지 한 화면에 담았는데요. 낯선 역에 내렸을 때의 막막함을 데이터가 주는 확신으로 바꿔드리기 위해 현재 기상 상황에 맞춘 식당가 리스트도 함께 제공되고 있으니 편리하게 이용하시면 됩니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">동해 ↔&nbsp;청량리 첫차 &amp; 막차</h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">동해<br>↓<br>제천</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1642호</span><div class="time-display">7:43</div><div class="arrival-info">10:31 도착</div></td><td><span class="train-detail">1642호</span><div class="time-display">7:43</div><div class="arrival-info">10:31 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1672호</span><div class="time-display">5:55</div><div class="arrival-info">8:48 도착</div></td><td><span class="train-detail">1678호</span><div class="time-display">18:14</div><div class="arrival-info">21:07 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">동해<br>↓<br>청량리</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1642호</span><div class="time-display">7:43</div><div class="arrival-info">11:46 도착</div></td><td><span class="train-detail">1642호</span><div class="time-display">7:43</div><div class="arrival-info">11:46 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1672호</span><div class="time-display">5:55</div><div class="arrival-info">10:31 도착</div></td><td><span class="train-detail">1678호</span><div class="time-display">18:14</div><div class="arrival-info">22:40 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">제천<br>↓<br>동해</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1641호</span><div class="time-display">18:26</div><div class="arrival-info">21:08 도착</div></td><td><span class="train-detail">1641호</span><div class="time-display">18:26</div><div class="arrival-info">21:08 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1671호</span><div class="time-display">09:31</div><div class="arrival-info">12:25 도착</div></td><td><span class="train-detail">1677호</span><div class="time-display">21:01</div><div class="arrival-info">23:50 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">청량리<br>↓<br>동해</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1641호</span><div class="time-display">17:08</div><div class="arrival-info">21:08 도착</div></td><td><span class="train-detail">1641호</span><div class="time-display">17:08</div><div class="arrival-info">21:08 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1671호</span><div class="time-display">07:34</div><div class="arrival-info">12:25 도착</div></td><td><span class="train-detail">1677호</span><div class="time-display">19:10</div><div class="arrival-info">23:50 도착</div></td></tr></tbody></table></div>


    
    <h2>동해 ↔ 청량리 운임 요금표</h2>

    <div id="ktx-app-fl" style="margin-bottom: 40px;">
        <style>
            #ktx-app-fl { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 1px solid #e2e8f0; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.06); }
            .fl-main-table { width: 100%; border-collapse: collapse; table-layout: fixed; border: none; }
            .fl-main-table th { font-size: 13px; color: #64748b; padding: 12px 2px; background: #f8fafc; border-bottom: 1px solid #e2e8f0; text-align: center; font-weight: bold; }
            .fl-main-table td { padding: 15px 4px; border-bottom: 1px solid #f1f5f9; text-align: center; vertical-align: middle; }
            
            .u-no-top { font-size: 11px; color: #94a3b8; display: block; font-weight: 500; margin-bottom: 1px; }
            .u-grade-bottom { font-size: 16px; font-weight: 900; color: #0045e6; display: block; line-height: 1.2; }
            .t-via { font-size: 12px; color: #64748b; display: block; margin-top: 4px; font-weight: 500; }
            
            .t-price { font-weight: 700; font-size: 14px; color: #1e293b; }
            .t-premium { color: #059669; }
            .t-special { color: #e11d48; }
            
            .t-none { display: inline-block; padding: 3px 10px; background: #f8fafc; color: #cbd5e1; border: 1px solid #f1f5f9; border-radius: 6px; font-size: 11px; font-weight: 600; }

            @media (max-width: 600px) {
                .fl-main-table th { font-size: 12px; }
                .u-grade-bottom { font-size: 14px; }
                .t-price { font-size: 12px; }
            }
        </style>

        <div style="overflow-x: auto;">
            <table class="fl-main-table">
                <thead>
                    <tr>
                        <th style="width: 30%;">열차 / 경유지</th>
                        <th style="width: 23%;">일반실</th>
                        <th style="width: 23%;">우등실</th>
                        <th style="width: 24%;">특실</th>
                    </tr>
                </thead>
                <tbody>
                                        <tr>
                        <td>
                            <span class="u-no-top">청량리 ↔ 동해</span>
                            <span class="u-grade-bottom">ITX</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                27,500원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">청량리 ↔ 동해</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">기본</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                29,700원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                35,600원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">청량리 ↔ 동해</span>
                            <span class="u-grade-bottom">무궁화</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                19,200원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                    </tbody>
            </table>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">동해 →&nbsp;청량리 ITX-무궁화 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차종별</th><th>열차번호</th><th>동해</th><th>신기</th><th>도계</th><th>동백산</th><th>태백</th><th>고한</th><th>사북</th><th>민둥산</th><th>예미</th><th>영월</th><th>쌍룡</th><th>제천</th><th>봉양</th><th>원주</th><th>서원주</th><th>삼산</th><th>양동</th><th>매곡</th><th>일신</th><th>석불</th><th>지평</th><th>용문</th><th>양평</th><th>덕소</th><th>청량리</th></tr></thead><tbody><tr><td>무궁화</td><td>1672</td><td>5:55</td><td></td><td>6:34</td><td></td><td>7:01</td><td>7:17</td><td>7:24</td><td>7:33</td><td>7:54</td><td>8:14</td><td>8:30</td><td>8:48</td><td></td><td>9:13</td><td>9:21</td><td>9:28</td><td>9:33</td><td></td><td>9:41</td><td></td><td>9:48</td><td>9:54</td><td>10:01</td><td>10:18</td><td>10:31</td></tr><tr><td>ITX-마음</td><td>1642</td><td>7:43</td><td></td><td>8:23</td><td></td><td>8:49</td><td></td><td>9:10</td><td>9:19</td><td></td><td>9:58</td><td></td><td>10:31</td><td></td><td>10:55</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td>11:46</td></tr><tr><td>무궁화</td><td>1674</td><td>13:43</td><td></td><td>14:21</td><td>14:37</td><td>14:50</td><td>15:07</td><td>15:14</td><td>15:24</td><td>15:45</td><td>16:05</td><td></td><td>16:37</td><td>16:45</td><td>17:04</td><td>17:12</td><td>17:19</td><td>17:24</td><td>17:28</td><td>17:35</td><td>17:41</td><td>17:50</td><td>17:56</td><td>18:04</td><td>18:21</td><td>18:35</td></tr><tr><td>무궁화</td><td>1676</td><td>15:06</td><td>15:31</td><td>15:48</td><td>16:04</td><td>16:17</td><td>16:32</td><td>16:39</td><td>16:48</td><td>17:09</td><td>17:29</td><td>17:46</td><td>18:02</td><td></td><td>18:27</td><td>18:35</td><td>18:43</td><td>18:53</td><td>18:59</td><td>19:03</td><td>19:08</td><td>19:12</td><td>19:17</td><td>19:25</td><td>19:42</td><td>19:55</td></tr><tr><td>무궁화</td><td>1678</td><td>18:14</td><td></td><td>18:53</td><td></td><td>19:20</td><td>19:36</td><td>19:43</td><td>19:53</td><td>20:14</td><td>20:35</td><td></td><td>21:07</td><td>21:15</td><td>21:34</td><td>21:42</td><td></td><td>21:50</td><td></td><td></td><td></td><td></td><td>22:02</td><td>22:10</td><td>22:27</td><td>22:40</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">동해 →&nbsp;제천 무궁화호 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차종별</th><th>열차번호</th><th>동해</th><th>신기</th><th>도계</th><th>동백산</th><th>태백</th><th>고한</th><th>사북</th><th>민둥산</th><th>예미</th><th>영월</th><th>쌍룡</th><th>제천</th></tr></thead><tbody><tr><td>무궁화</td><td>1672</td><td>5:55</td><td></td><td>6:34</td><td></td><td>7:01</td><td>7:17</td><td>7:24</td><td>7:33</td><td>7:54</td><td>8:14</td><td>8:30</td><td>8:48</td></tr><tr><td>ITX-마음</td><td>1642</td><td>7:43</td><td></td><td>8:23</td><td></td><td>8:49</td><td></td><td>9:10</td><td>9:19</td><td></td><td>9:58</td><td></td><td>10:31</td></tr><tr><td>무궁화</td><td>1674</td><td>13:43</td><td></td><td>14:21</td><td>14:37</td><td>14:50</td><td>15:07</td><td>15:14</td><td>15:24</td><td>15:45</td><td>16:05</td><td></td><td>16:37</td></tr><tr><td>무궁화</td><td>1676</td><td>15:06</td><td>15:31</td><td>15:48</td><td>16:04</td><td>16:17</td><td>16:32</td><td>16:39</td><td>16:48</td><td>17:09</td><td>17:29</td><td>17:46</td><td>18:02</td></tr><tr><td>무궁화</td><td>1678</td><td>18:14</td><td></td><td>18:53</td><td></td><td>19:20</td><td>19:36</td><td>19:43</td><td>19:53</td><td>20:14</td><td>20:35</td><td></td><td>21:07</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">청량리 →&nbsp;동해 ITX-무궁화 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차종별</th><th>열차번호</th><th>청량리</th><th>덕소</th><th>양평</th><th>용문</th><th>지평</th><th>석불</th><th>일신</th><th>매곡</th><th>양동</th><th>삼산</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th><th>쌍룡</th><th>영월</th><th>예미</th><th>민둥산</th><th>사북</th><th>고한</th><th>태백</th><th>동백산</th><th>도계</th><th>신기</th><th>동해</th></tr></thead><tbody><tr><td>무궁화</td><td>1671</td><td>07:34</td><td>07:49</td><td>08:08</td><td>08:16</td><td>08:25</td><td>08:30</td><td>08:35</td><td>08:40</td><td>08:44</td><td>08:49</td><td>08:57</td><td>09:05</td><td></td><td>09:31</td><td></td><td>10:05</td><td>10:25</td><td>10:47</td><td>10:56</td><td>11:03</td><td>11:17</td><td>11:29</td><td>11:45</td><td>12:02</td><td>12:25</td></tr><tr><td>무궁화</td><td>1673</td><td>09:51</td><td></td><td>10:21</td><td>10:29</td><td></td><td></td><td></td><td></td><td>10:41</td><td>10:46</td><td>10:53</td><td>11:00</td><td>11:20</td><td>11:30</td><td></td><td>12:01</td><td>12:21</td><td>12:42</td><td>12:51</td><td>12:58</td><td>13:14</td><td>13:25</td><td>13:46</td><td></td><td>14:28</td></tr><tr><td>무궁화</td><td>1675</td><td>12:16</td><td>12:31</td><td>12:49</td><td>12:57</td><td>13:07</td><td>13:13</td><td>13:17</td><td>13:22</td><td>13:27</td><td></td><td>13:36</td><td>13:43</td><td></td><td>14:07</td><td>14:22</td><td>14:40</td><td>15:01</td><td>15:23</td><td>15:32</td><td>15:39</td><td>15:54</td><td>16:05</td><td>16:23</td><td></td><td>17:05</td></tr><tr><td>ITX-마음</td><td>1641</td><td>17:08</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td>18:02</td><td></td><td>18:26</td><td></td><td>18:56</td><td></td><td>19:35</td><td>19:44</td><td></td><td>20:04</td><td></td><td>20:30</td><td></td><td>21:08</td></tr><tr><td>무궁화</td><td>1677</td><td>19:10</td><td>19:25</td><td>19:43</td><td>19:51</td><td>20:00</td><td>20:06</td><td>20:10</td><td>20:15</td><td>20:20</td><td></td><td>20:29</td><td>20:36</td><td></td><td>21:01</td><td></td><td>21:32</td><td>21:52</td><td>22:13</td><td>22:22</td><td>22:29</td><td>22:44</td><td>22:56</td><td>23:12</td><td></td><td>23:50</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">제천 →&nbsp;동해 무궁화호 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차종별</th><th>열차번호</th><th>제천</th><th>쌍룡</th><th>영월</th><th>예미</th><th>민둥산</th><th>사북</th><th>고한</th><th>태백</th><th>동백산</th><th>도계</th><th>신기</th><th>동해</th></tr></thead><tbody><tr><td>무궁화</td><td>1671</td><td>09:31</td><td></td><td>10:05</td><td>10:25</td><td>10:47</td><td>10:56</td><td>11:03</td><td>11:17</td><td>11:29</td><td>11:45</td><td>12:02</td><td>12:25</td></tr><tr><td>무궁화</td><td>1673</td><td>11:30</td><td></td><td>12:01</td><td>12:21</td><td>12:42</td><td>12:51</td><td>12:58</td><td>13:14</td><td>13:25</td><td>13:46</td><td></td><td>14:28</td></tr><tr><td>무궁화</td><td>1675</td><td>14:07</td><td>14:22</td><td>14:40</td><td>15:01</td><td>15:23</td><td>15:32</td><td>15:39</td><td>15:54</td><td>16:05</td><td>16:23</td><td></td><td>17:05</td></tr><tr><td>ITX-마음</td><td>1641</td><td>18:26</td><td></td><td>18:56</td><td></td><td>19:35</td><td>19:44</td><td></td><td>20:04</td><td></td><td>20:30</td><td></td><td>21:08</td></tr><tr><td>무궁화</td><td>1677</td><td>21:01</td><td></td><td>21:32</td><td>21:52</td><td>22:13</td><td>22:22</td><td>22:29</td><td>22:44</td><td>22:56</td><td>23:12</td><td></td><td>23:50</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">전국 기차 시간표 및 운임 조회</h2>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #ktx-live-app-v2 { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 1px solid #e2e8f0; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.06); min-height: 800px; }
        .ktx-top-bar-v2 { background: #0045e6; padding: 15px 20px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .ktx-top-bar-v2 b { font-size: 17px; }
        .ktx-live-label-v2 { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 900; animation: ktx_pulse_v2 1.5s infinite; }
        @keyframes ktx_pulse_v2 { 50% { opacity: 0.4; } }
        .ktx-search-box-v2 { padding: 15px; background: #f8fafc; border-bottom: 1px solid #eee; }
        .ktx-input-flex-v2 { display: flex; gap: 8px; margin-bottom: 10px; }
        .ktx-input-flex-v2 input { flex: 1; min-width: 0; padding: 12px; border-radius: 8px; border: 1px solid #cbd5e1; font-size: 16px !important; outline: none; background: #fff; -webkit-appearance: none; }
        #ktx-btn-submit-v2 { width: 100%; padding: 15px; background: #64748b; color: #fff; border: none; border-radius: 8px; cursor: pointer; font-weight: bold; font-size: 16px; transition: all 0.3s; height: 50px; }
        #ktx-btn-submit-v2:hover { background: #475569; }
        #ktx-btn-submit-v2.is-searching { background: #6366f1 !important; cursor: wait; }
        .ktx-memo-area-v2 { padding: 12px 15px; background: #fffbeb; color: #92400e; font-size: 14px; line-height: 1.6; border-top: 1px solid #fef3c7; display: none; word-break: keep-all; min-height: 45px; }
        .ktx-main-table-v2 { width: 100%; border-collapse: collapse; table-layout: fixed; border: none; min-height: 700px; }
        .ktx-main-table-v2 th { font-size: 13px; color: #64748b; padding: 12px 2px; background: #f1f5f9; border-bottom: 1px solid #e2e8f0; text-align: center; }
        .ktx-main-table-v2 td { padding: 15px 4px; border-bottom: none !important; text-align: center; vertical-align: middle; }
        .ktx-status-text-v2 { color: #e11d48; font-weight: 800; font-size: 14px; margin: 3px 0; white-space: nowrap; letter-spacing: -0.5px; }
        .ktx-grade-name-v2 { font-size: 16px; font-weight: 800; color: #0045e6; line-height: 1.2; display: block; }
        .ktx-train-no-v2 { font-size: 11px; color: #94a3b8; display: block; margin-top: 2px; }
        .v-tag-ok-v2 { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        .v-tag-duration-v2 { font-size: 10px; color: #0045e6; background: #eff6ff; padding: 1px 4px; border-radius: 3px; border: 1px solid #dbeafe; display: inline-block; margin-top: 4px; font-weight: bold; }
        .ktx-time-info-v2 { color: #475569; font-size: 12px; font-weight: 600; }
        .ktx-station-name-v2 { font-size: 14px; font-weight: 700; color: #1e293b; }

        .ktx-badge-soon-v2 { 
            display: inline-block;
            background: #e11d48; 
            color: #fff; 
            padding: 4px 10px; 
            border-radius: 6px; 
            font-size: 11px; 
            font-weight: 900; 
            letter-spacing: -0.2px;
            margin-bottom: 4px;
            box-shadow: 0 2px 4px rgba(225, 29, 72, 0.2);
            animation: ktx_v4_pulse_v2 1.2s infinite ease-in-out; 
        }
        @keyframes ktx_v4_pulse_v2 { 0% { opacity: 1; transform: scale(1); } 50% { opacity: 0.6; transform: scale(0.96); } 100% { opacity: 1; transform: scale(1); } }

        .ktx-loading-v2 { opacity: 0.3; }
        .ktx-row-fade-v2 { animation: ktxFadeInUp_v2 0.5s ease-out forwards; opacity: 0; }
        @keyframes ktxFadeInUp_v2 { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }

        .ktx-voice-btn-v2 { padding: 4px 12px; border-radius: 15px; border: 2px solid rgba(255,255,255,0.6); background: rgba(0,0,0,0.15); font-size: 11px; font-weight: 900; color: #fff; cursor: pointer; display: inline-flex; align-items: center; gap: 4px; height: 26px; transition: 0.2s; line-height: 1; margin-left:10px; }
        .ktx-voice-btn-v2.active { background: #fff; color: #0045e6; border-color: #fff; box-shadow: 0 0 10px rgba(255,255,255,0.3); }

        .ktx-pagination-v2 { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 20px; background: #fff; border-top: 1px solid #f1f5f9; }
        .ktx-page-btn-v2 { padding: 8px 16px; border: 1px solid #e2e8f0; border-radius: 6px; font-size: 13px; color: #64748b; background: #fff; cursor: pointer; transition: 0.2s; }
        .ktx-page-btn-v2:hover:not(:disabled) { background: #f1f5f9; border-color: #cbd5e1; }
        .ktx-page-btn-v2:disabled { opacity: 0.4; cursor: not-allowed; }
        .ktx-page-info-v2 { font-size: 14px; font-weight: bold; color: #0045e6; }
    </style>

    <div id="ktx-live-app-v2">
        <div class="ktx-top-bar-v2">
            <div style="display: flex; align-items: center;">
                <b><span id="ktx-live-clock-v2" style="font-size:14px; font-weight:bold; opacity:1;"></span></b>
                <button class="ktx-voice-btn-v2" id="ktx-voice-toggle-v2" onclick="toggleKtxVoiceV2()">
                    <span class="v-ico-v2">🔈</span> <span class="v-txt-v2">음성 끔</span>
                </button>
            </div>
            <div class="ktx-live-label-v2">LIVE</div>
        </div>
        <div class="ktx-search-box-v2">
            <div class="ktx-input-flex-v2">
                <input type="text" id="ktx-dep-field-v2" placeholder="출발역" value="">
                <input type="text" id="ktx-arr-field-v2" placeholder="도착역" value="">
            </div>
            <button id="ktx-btn-submit-v2" onclick="runKtxLiveSearchV2(true)">열차 시간 조회하기</button>
        </div>
        
        <table class="ktx-main-table-v2">
            <thead><tr><th style="width: 24%;">열차정보</th><th style="width: 24%;">출발역</th><th style="width: 28%;">출발예정</th><th style="width: 24%;">도착역</th></tr></thead>
            <tbody id="ktx-live-tbody-v2">
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr id="ktx-init-msg-v2"><td colspan="4" style="position:absolute; width:100%; left:0; padding:70px 0; color:#94a3b8; font-size:13px; text-align:center;">역 이름을 입력하고 조회해 주세요.</td></tr>
            </tbody>
        </table>

        <div id="ktx-pagination-ctrl-v2" class="ktx-pagination-v2" style="display:none;">
            <button class="ktx-page-btn-v2" id="ktx-prev-page-v2" onclick="changeKtxPageV2(-1)">&laquo; 이전</button>
            <span class="ktx-page-info-v2"><span id="ktx-current-page-v2">1</span> / <span id="ktx-total-pages-v2">1</span></span>
            <button class="ktx-page-btn-v2" id="ktx-next-page-v2" onclick="changeKtxPageV2(1)">다음 &raquo;</button>
        </div>

        <div id="ktx-memo-display-v2" class="ktx-memo-area-v2"></div>

        <div style="padding: 10px 18px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #f1f5f9; display:flex; justify-content:space-between;">
            <span>1분 간격 자동 갱신</span><span>최근: <span id="ktx-last-update-v2">--:--:--</span></span>
        </div>
    </div>

    <script>
    let ktxStationListV2 = [];
    const ktxKeyFinalV2 = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    window.ktxVoiceEnabledV2 = false;
    window.ktxAnnouncedV2 = new Set();
    let currentKtxFullDataV2 = [];
    let ktxCurrentPageV2 = 1;
    const ktxItemsPerPageV2 = 10;

    function toggleKtxVoiceV2() {
        window.ktxVoiceEnabledV2 = !window.ktxVoiceEnabledV2;
        const btn = document.getElementById('ktx-voice-toggle-v2');
        const txt = btn.querySelector('.v-txt-v2'), ico = btn.querySelector('.v-ico-v2');
        if(window.ktxVoiceEnabledV2) {
            btn.classList.add('active'); txt.innerText = "음성 켬"; ico.innerText = "🔊";
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); txt.innerText = "음성 끔"; ico.innerText = "🔈";
            window.speechSynthesis.cancel();
        }
    }

    function updateKtxClockV2() {
        const now = new Date();
        const clockEl = document.getElementById('ktx-live-clock-v2');
        if (clockEl) { clockEl.innerText = `${now.getMonth() + 1}.${now.getDate()} ${now.getHours().toString().padStart(2, '0')}:${now.getMinutes().toString().padStart(2, '0')} 기준`; }
    }
    setInterval(updateKtxClockV2, 1000);

    async function ktxMasterLoadV2() {
        updateKtxClockV2();
        ktxStationListV2.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinalV2}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())));
            const parser = new DOMParser();
            results.forEach(xmlStr => {
                const xml = parser.parseFromString(xmlStr, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!ktxStationListV2.find(s => s.id === id)) ktxStationListV2.push({ name, id });
                });
            });
            if(document.getElementById('ktx-dep-field-v2').value && document.getElementById('ktx-arr-field-v2').value) runKtxLiveSearchV2(false);
        } catch (e) { console.log("V2 Station data fail"); }
    }

    function renderKtxPageV2(page) {
        const tbody = document.getElementById('ktx-live-tbody-v2');
        const now = new Date();
        const start = (page - 1) * ktxItemsPerPageV2;
        const end = start + ktxItemsPerPageV2;
        const pageData = currentKtxFullDataV2.slice(start, end);
        let html = '';
        pageData.forEach((r, idx) => {
            const diffMs = r.depDate - now;
            const diffMin = Math.round(diffMs / 60000);
            
            if (window.ktxVoiceEnabledV2 && diffMin === 15) {
                const key = r.no + "_" + r.dep_n + "_" + r.dep_time;
                if (!window.ktxAnnouncedV2.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 ${r.dep_n}역에서 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnouncedV2.add(key);
                }
            }

            const soon = (diffMin <= 15 && diffMin >= 0) ? '<span class="ktx-badge-soon-v2">출발임박</span>' : '';
            const durationTotal = Math.round((r.arrDate - r.depDate) / 60000);
            const h_dur = Math.floor(durationTotal / 60);
            const m_dur = durationTotal % 60;
            const durationStr = `${String(h_dur).padStart(2, '0')}:${String(m_dur).padStart(2, '0')} 소요`;
            
            let timeStatus = '';
            if (diffMin < 0) {
                timeStatus = '<div class="ktx-status-text-v2" style="color:#64748b;">운행종료</div>';
            } else {
                timeStatus = `<div class="ktx-status-text-v2">${diffMin===0?'출발대기':diffMin+'분 후 출발'}</div>`;
            }

            html += `<tr class="ktx-row-fade-v2" style="animation-delay:${idx*0.05}s;"><td><span class="ktx-train-no-v2">${r.no}호</span><span class="ktx-grade-name-v2">${r.grade}</span><span class="v-tag-ok-v2">정상운행</span></td><td><div class="ktx-station-name-v2">${r.dep_n}역</div><span class="v-tag-duration-v2">${durationStr}</span></td><td>${soon}${timeStatus}<div class="ktx-time-info-v2">${r.dep_time} 출발</div></td><td><div class="ktx-station-name-v2">${r.arr_n}역</div><div class="ktx-time-info-v2" style="color:#0045e6;">${r.arr_time} 도착</div></td></tr>`;
        });
        tbody.innerHTML = html;
        document.getElementById('ktx-current-page-v2').innerText = page;
        document.getElementById('ktx-prev-page-v2').disabled = (page === 1);
        document.getElementById('ktx-next-page-v2').disabled = (page === Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2));
    }

    function changeKtxPageV2(dir) {
        const total = Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2);
        let target = ktxCurrentPageV2 + dir;
        if (target >= 1 && target <= total) { ktxCurrentPageV2 = target; renderKtxPageV2(ktxCurrentPageV2); }
    }

    async function runKtxLiveSearchV2(manual = false) {
        const btn = document.getElementById('ktx-btn-submit-v2');
        let d_val = document.getElementById('ktx-dep-field-v2').value.trim();
        let a_val = document.getElementById('ktx-arr-field-v2').value.trim();
        if (!d_val || !a_val) { if(manual) alert("출발역과 도착역을 모두 입력하세요."); return; }
        
        btn.innerText = "데이터 검색 중..."; btn.classList.add('is-searching'); btn.disabled = true;
        d_val = d_val.replace(/역$/, ''); a_val = a_val.replace(/역$/, '');
        
        const tbody = document.getElementById('ktx-live-tbody-v2');
        const memoDiv = document.getElementById('ktx-memo-display-v2');
        const pgCtrl = document.getElementById('ktx-pagination-ctrl-v2');
        if(manual) tbody.classList.add('ktx-loading-v2');

        const findStation = (n) => {
            if (n === "여수" || n === "여수엑스포") return { name: "여수EXPO", id: "NAT041993" };
            return ktxStationListV2.find(s => s.name === n || s.name === n + '역');
        }
        const dep = findStation(d_val); const arr = findStation(a_val);
        if (!dep || !arr) { 
            tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0;">역 이름을 정확히 입력해 주세요. (예: 부산, 동대구)</td></tr>';
            pgCtrl.style.display = 'none';
            tbody.classList.remove('ktx-loading-v2');
            btn.innerText = "열차 시간 조회하기"; btn.classList.remove('is-searching'); btn.disabled = false; 
            return; 
        }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live_v2');
        fd.append('dep_id', dep.id); fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            const resData = await response.json();
            const now = new Date();
            currentKtxFullDataV2 = resData.trains.map(item => {
                const parseTrainTime = (str) => { if (!str || str.length < 12) return new Date(0); return new Date(str.substring(0,4), str.substring(4,6)-1, str.substring(6,8), str.substring(8,10), str.substring(10,12)); };
                item.depDate = parseTrainTime(item.raw_dep); item.arrDate = parseTrainTime(item.raw_arr);
                if (item.arrDate < item.depDate) item.arrDate.setDate(item.arrDate.getDate() + 1);
                return item;
            }).sort((a, b) => a.depDate - b.depDate);

            if (currentKtxFullDataV2.length > 0) {
                const totalPages = Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2);
                document.getElementById('ktx-total-pages-v2').innerText = totalPages;
                pgCtrl.style.display = 'flex';
                
                let firstUpcomingIdx = currentKtxFullDataV2.findIndex(t => t.depDate.getTime() > (now.getTime() - 300000));
                if (firstUpcomingIdx === -1) firstUpcomingIdx = 0;
                ktxCurrentPageV2 = Math.floor(firstUpcomingIdx / ktxItemsPerPageV2) + 1;

                if(resData.memo_template) {
                    const f_t = currentKtxFullDataV2[0].dep_time;
                    const l_t = currentKtxFullDataV2[currentKtxFullDataV2.length-1].dep_time;
                    const scrollTips = [" 전체 시간표는 하단 페이징을 확인하세요.", " 모든 배차 정보를 페이지별로 확인 가능합니다."];
                    const randomTip = scrollTips[Math.floor(Math.random() * scrollTips.length)];
                    memoDiv.innerText = resData.memo_template.replace('{first_t}', f_t).replace('{last_t}', l_t) + randomTip;
                    memoDiv.style.display = 'block';
                }
                renderKtxPageV2(ktxCurrentPageV2);
                document.getElementById('ktx-last-update-v2').innerText = now.getHours().toString().padStart(2,'0')+':'+now.getMinutes().toString().padStart(2,'0')+':'+now.getSeconds().toString().padStart(2,'0');
            } else {
                tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0; color:#94a3b8;">오늘 운행되는 열차 정보가 없습니다.</td></tr>';
                pgCtrl.style.display = 'none';
            }
        } catch (e) { tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0;">데이터 통신 오류</td></tr>'; }

        tbody.classList.remove('ktx-loading-v2');
        btn.innerText = "열차 시간 조회하기"; btn.classList.remove('is-searching'); btn.disabled = false;
    }

    ktxMasterLoadV2();
    setInterval(() => { if(document.getElementById('ktx-dep-field-v2').value) runKtxLiveSearchV2(false); }, 60000);
    document.addEventListener('keypress', function(e) { if((e.target.id === 'ktx-dep-field-v2' || e.target.id === 'ktx-arr-field-v2') && e.keyCode === 13) runKtxLiveSearchV2(true); });
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">동해역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">동해역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '32030';
            let curName = '동해';
            let altCity = '11';
            let altName = '청량리';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">태백역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">11℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">태백역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%83%9C%EB%B0%B1%EB%8B%AD%EA%B0%88%EB%B9%84+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%ED%83%9C%EB%B0%B1%EC%8B%9C+%ED%99%A9%EC%A7%80%EB%8F%99+44-164" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">태백닭갈비</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;닭갈비</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 태백시 황지동 44-164</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%83%9C%EB%B0%B1%ED%95%9C%EC%9A%B0%EB%A7%88%EC%9D%84+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%ED%83%9C%EB%B0%B1%EC%8B%9C+%ED%99%A9%EC%A7%80%EB%8F%99+42-51+%EC%9D%B4%EB%A6%BC%EC%83%81%EA%B0%80" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">태백한우마을</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;소고기구이</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 태백시 황지동 42-51 이림상가</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EA%B9%80%EC%84%9C%EB%B0%A9%EB%84%A4%EB%8B%AD%EA%B0%88%EB%B9%84+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%ED%83%9C%EB%B0%B1%EC%8B%9C+%ED%99%A9%EC%A7%80%EB%8F%99+39-33" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">김서방네닭갈비</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;닭갈비</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 태백시 황지동 39-33</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%8C%8C%EB%A6%AC%EB%B0%94%EA%B2%8C%EB%9C%A8+%ED%83%9C%EB%B0%B1%EC%A4%91%EC%95%99%EC%A0%90+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%ED%83%9C%EB%B0%B1%EC%8B%9C+%ED%99%A9%EC%A7%80%EB%8F%99+41-2" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">파리바게뜨 태백중앙점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;베이커리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 태백시 황지동 41-2</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%A7%9B%EB%82%98%EB%B6%84%EC%8B%9D+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%ED%83%9C%EB%B0%B1%EC%8B%9C+%ED%99%A9%EC%A7%80%EB%8F%99+44-82+%EB%A7%9B%EB%82%98%EB%B6%84%EC%8B%9D" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">맛나분식</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">분식&gt;종합분식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 태백시 황지동 44-82 맛나분식</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">태백역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">태백역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 태백역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%ED%83%9C%EB%B0%B1%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="350" height="350" src="https://krailroad.co.kr/wp-content/uploads/2026/04/태백선-기차-시간표-ITX-무궁화호-청량리역-제천역-동해역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간.jpg" alt="태백선-기차-시간표-ITX-무궁화호-청량리역-제천역-동해역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간" class="wp-image-20677" srcset="https://krailroad.co.kr/wp-content/uploads/2026/04/태백선-기차-시간표-ITX-무궁화호-청량리역-제천역-동해역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간.jpg 350w, https://krailroad.co.kr/wp-content/uploads/2026/04/태백선-기차-시간표-ITX-무궁화호-청량리역-제천역-동해역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/04/태백선-기차-시간표-ITX-무궁화호-청량리역-제천역-동해역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간-150x150.jpg 150w" sizes="auto, (max-width: 350px) 100vw, 350px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>익산역~용산역 장항선 새마을호 시간표 최신 실시간 요금 총정리</title>
		<link>https://krailroad.co.kr/%ec%9d%b5%ec%82%b0%ec%97%ad%ec%9a%a9%ec%82%b0%ec%97%ad-%ec%9e%a5%ed%95%ad%ec%84%a0-%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%b5%9c%ec%8b%a0-%ec%8b%a4%ec%8b%9c%ea%b0%84/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Tue, 14 Apr 2026 00:13:42 +0000</pubDate>
				<category><![CDATA[실시간 열차 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[장항선 새마을호 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=20471</guid>

					<description><![CDATA[1922년 충남선이라는 이름으로 개통한 이후, 장항선 새마을호 시간표와 무궁화호 시간표를 이용한 이동 노선으로 서부권의 굴곡진 해안선과 황금빛 들판을 지켜온 역사의 산증인입니다. 고속화에만 매몰된 다른 간선철도와 달리, 창밖으로 흐르는 정겨운 마을 풍경과 서해의 낙조를 오롯이 담아낼 수 있는 노선으로, 현재는 기술적 진보를 이룬 ITX-마음이 바통을 이어받아, 아날로그적 감성과 현대적 편의성이 공존하는 독특한 여행의 맛을 선사하고 있습니다. ... <a title="익산역~용산역 장항선 새마을호 시간표 최신 실시간 요금 총정리" class="read-more button" href="https://krailroad.co.kr/%ec%9d%b5%ec%82%b0%ec%97%ad%ec%9a%a9%ec%82%b0%ec%97%ad-%ec%9e%a5%ed%95%ad%ec%84%a0-%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%b5%9c%ec%8b%a0-%ec%8b%a4%ec%8b%9c%ea%b0%84/" aria-label="익산역~용산역 장항선 새마을호 시간표 최신 실시간 요금 총정리 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">1922년 충남선이라는 이름으로 개통한 이후, 장항선 새마을호 시간표와 무궁화호 시간표를 이용한 이동 노선으로 서부권의 굴곡진 해안선과 황금빛 들판을 지켜온 역사의 산증인입니다. 고속화에만 매몰된 다른 간선철도와 달리, 창밖으로 흐르는 정겨운 마을 풍경과 서해의 낙조를 오롯이 담아낼 수 있는 노선으로, 현재는 기술적 진보를 이룬 ITX-마음이 바통을 이어받아, 아날로그적 감성과 현대적 편의성이 공존하는 독특한 여행의 맛을 선사하고 있습니다.</p>



<p class="wp-block-paragraph">아래 장항선 새마을호 시간표는 역사 대합실의 복잡한 안내 문구에 시선을 뺏기거나 개인 블로그에 적힌 낡은 기록을 대조하며 시간을 낭비할 필요가 없이, 직접 제작한 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a>의 기술 엔진과 공공데이터망을 실시간으로 동기화한 시스템을 통해, 지금 내가 탈 기차가 몇분뒤 도착하는지 실시간 위치값을 손쉽게 파악할 수 있으며, 특히 집중이 필요하거나 다른 용무를 보시는 분들을 위해, 열차 진입 15분 전 알림 설정을 도입하여 승강장으로 이동할때 시간에 구애 받지 않고 이용하실 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>장항선 새마을호 시간표 총정리</strong></h2>



<h3 class="wp-block-heading">용산에서 시작되는 서쪽 철길</h3>



<p class="wp-block-paragraph">장항선 여행의 독특한 시작점은 서울역이 아닌 용산역입니다. 수도권 핵심에서 출발해 충청도와 전라북도를 관통하는 이 노선은, KTX가 닿지 않는 지형적 특성 덕분에 오히려 기차 여행 특유의 호젓함을 유지하고 있는데요. 특히 세계에서 유일하게 온돌마루 객실을 운영하는 &#8216;서해금빛열차&#8217;는 오직 이 선로에서만 만끽할 수 있으며, 빠르게 스쳐 지나는 풍경 대신, 눈동자에 천천히 머무는 서해안의 사계절을 감상하실 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">현지 일상으로 연결되는 데이터</h3>



<p class="wp-block-paragraph">현재 장항선은 고속화 사업을 통해 새로운 도약을 앞두고 있으며, 가까운 미래에는 이동 시간이 대폭 줄어들겠지만, 여행의 질을 결정하는 것은 여전히 도착하기전 미리 역주변 관련 자료로 아래 장항선 새마을호 시간표 자료들은 열차의 위치 정보는 물론, 용산역, <a href="https://krailroad.co.kr/%ec%9d%b5%ec%82%b0%ec%97%ad-itx-%ec%83%88%eb%a7%88%ec%9d%84-itx-%eb%a7%88%ec%9d%8c-%ec%9a%a9%ec%82%b0-%eb%aa%a9%ed%8f%ac-%ec%97%ac%ec%88%98-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ed%98%b8%eb%82%a8/">익산역</a> 내 유휴 주차 공간 확인부터 대천역 앞 버스 정류장의 실시간 도착 예보, 그리고 지역 주민들만 아는 숨은 미식 정보까지 하나의 흐름으로 통합하였으니 큰 불편함없이 정확한 데이터를 이용하실 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">익산 ↔ 용산 첫차 &amp; 막차</h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">익산<br>↓<br>용산</td><td><span class="type-label type-default">새마을</span></td><td><span class="train-detail">1202호</span><div class="time-display">05:54</div><div class="arrival-info">09:36 도착</div></td><td><span class="train-detail">1210호</span><div class="time-display">19:10</div><div class="arrival-info">22:48 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">용산<br>↓<br>익산</td><td><span class="type-label type-default">새마을</span></td><td><span class="train-detail">1201호</span><div class="time-display">09:14</div><div class="arrival-info">12:49 도착</div></td><td><span class="train-detail">1209호</span><div class="time-display">17:52</div><div class="arrival-info">21:27 도착</div></td></tr></tbody></table></div>


    
    <h2>익산 ↔ 용산 운임 요금표</h2>

    <div id="ktx-app-fl" style="margin-bottom: 40px;">
        <style>
            #ktx-app-fl { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 1px solid #e2e8f0; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.06); }
            .fl-main-table { width: 100%; border-collapse: collapse; table-layout: fixed; border: none; }
            .fl-main-table th { font-size: 13px; color: #64748b; padding: 12px 2px; background: #f8fafc; border-bottom: 1px solid #e2e8f0; text-align: center; font-weight: bold; }
            .fl-main-table td { padding: 15px 4px; border-bottom: 1px solid #f1f5f9; text-align: center; vertical-align: middle; }
            
            .u-no-top { font-size: 11px; color: #94a3b8; display: block; font-weight: 500; margin-bottom: 1px; }
            .u-grade-bottom { font-size: 16px; font-weight: 900; color: #0045e6; display: block; line-height: 1.2; }
            .t-via { font-size: 12px; color: #64748b; display: block; margin-top: 4px; font-weight: 500; }
            
            .t-price { font-weight: 700; font-size: 14px; color: #1e293b; }
            .t-premium { color: #059669; }
            .t-special { color: #e11d48; }
            
            .t-none { display: inline-block; padding: 3px 10px; background: #f8fafc; color: #cbd5e1; border: 1px solid #f1f5f9; border-radius: 6px; font-size: 11px; font-weight: 600; }

            @media (max-width: 600px) {
                .fl-main-table th { font-size: 12px; }
                .u-grade-bottom { font-size: 14px; }
                .t-price { font-size: 12px; }
            }
        </style>

        <div style="overflow-x: auto;">
            <table class="fl-main-table">
                <thead>
                    <tr>
                        <th style="width: 30%;">열차 / 경유지</th>
                        <th style="width: 23%;">일반실</th>
                        <th style="width: 23%;">우등실</th>
                        <th style="width: 24%;">특실</th>
                    </tr>
                </thead>
                <tbody>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 익산</span>
                            <span class="u-grade-bottom">ITX</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                23,700원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 익산</span>
                            <span class="u-grade-bottom">ITX</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                23,700원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 익산</span>
                            <span class="u-grade-bottom">ITX</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                23,700원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 익산</span>
                            <span class="u-grade-bottom">ITX</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                23,700원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 익산</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">공주</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                32,000원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                38,400원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                44,800원                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 익산</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">공주</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                32,000원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                44,800원                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 익산</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">김제,장성</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                30,600원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                42,800원                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 익산</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">서대전</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                30,600원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                42,800원                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 익산</span>
                            <span class="u-grade-bottom">무궁화</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                16,000원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 익산</span>
                            <span class="u-grade-bottom">무궁화</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                16,000원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 익산</span>
                            <span class="u-grade-bottom">무궁화</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                16,000원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 익산</span>
                            <span class="u-grade-bottom">무궁화</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                15,900원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                    </tbody>
            </table>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">익산 → 용산 새마을 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>익산</th><th>군산</th><th>장항</th><th>서천</th><th>웅천</th><th>대천</th><th>광천</th><th>홍성</th><th>삽교</th><th>예산</th><th>신례원</th><th>온양온천</th><th>아산</th><th>천안</th><th>평택</th><th>수원</th><th>영등포</th><th>용산</th></tr></thead><tbody><tr><td>1202</td><td>새마을</td><td>05:54</td><td>06:13</td><td>06:21</td><td>06:27</td><td>06:42</td><td>06:53</td><td>07:11</td><td>07:24</td><td>07:35</td><td>07:44</td><td>07:51</td><td>08:06</td><td>08:14</td><td>08:22</td><td>08:40</td><td>09:02</td><td>09:27</td><td>09:36</td></tr><tr><td>1204</td><td>새마을</td><td>08:02</td><td>08:22</td><td>08:29</td><td>08:35</td><td>08:51</td><td>09:03</td><td>09:20</td><td>09:34</td><td>09:45</td><td>09:54</td><td>10:01</td><td>10:16</td><td>10:25</td><td>10:32</td><td>10:50</td><td>11:11</td><td>11:34</td><td>11:43</td></tr><tr><td>1206</td><td>새마을</td><td>09:44</td><td>10:03</td><td>10:11</td><td>10:17</td><td>10:31</td><td>10:42</td><td>11:00</td><td>11:13</td><td></td><td>11:30</td><td></td><td>11:48</td><td>11:57</td><td>12:04</td><td>12:22</td><td>12:44</td><td>13:07</td><td>13:16</td></tr><tr><td>1208</td><td>새마을</td><td>14:19</td><td>14:38</td><td>14:46</td><td>14:52</td><td>15:07</td><td>15:18</td><td>15:35</td><td>15:49</td><td></td><td>16:05</td><td></td><td>16:24</td><td>16:32</td><td>16:40</td><td></td><td>17:17</td><td>17:42</td><td>17:51</td></tr><tr><td>1210</td><td>새마을</td><td>19:10</td><td>19:29</td><td>19:37</td><td>19:43</td><td>19:58</td><td>20:09</td><td>20:30</td><td>20:43</td><td></td><td>21:00</td><td></td><td>21:18</td><td>21:27</td><td>21:34</td><td></td><td>22:09</td><td>22:39</td><td>22:48</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">용산 → 익산 새마을 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>용산</th><th>영등포</th><th>수원</th><th>평택</th><th>천안</th><th>아산</th><th>온양온천</th><th>신례원</th><th>예산</th><th>삽교</th><th>홍성</th><th>광천</th><th>대천</th><th>웅천</th><th>서천</th><th>장항</th><th>군산</th><th>익산</th></tr></thead><tbody><tr><td>1201</td><td>새마을</td><td>09:14</td><td>09:27</td><td>09:51</td><td>10:11</td><td>10:30</td><td>10:37</td><td>10:47</td><td></td><td>11:05</td><td>11:12</td><td>11:24</td><td>11:37</td><td>11:55</td><td>12:05</td><td>12:19</td><td>12:25</td><td>12:32</td><td>12:49</td></tr><tr><td>1203</td><td>새마을</td><td>12:33</td><td>12:43</td><td>13:06</td><td></td><td>13:42</td><td>13:49</td><td>13:59</td><td></td><td>14:17</td><td>14:24</td><td>14:35</td><td>14:48</td><td>15:06</td><td>15:21</td><td>15:35</td><td>15:41</td><td>15:48</td><td>16:07</td></tr><tr><td>1205</td><td>새마을</td><td>13:43</td><td>13:53</td><td>14:16</td><td>14:36</td><td>14:56</td><td>15:03</td><td>15:12</td><td></td><td>15:31</td><td>15:38</td><td>15:49</td><td>16:02</td><td>16:20</td><td>16:31</td><td>16:45</td><td>16:50</td><td>16:57</td><td>17:15</td></tr><tr><td>1207</td><td>새마을</td><td>15:28</td><td>15:41</td><td>16:05</td><td></td><td>16:41</td><td>16:48</td><td>16:58</td><td>17:12</td><td>17:19</td><td>17:26</td><td>17:38</td><td>17:51</td><td>18:13</td><td>18:24</td><td>18:38</td><td>18:43</td><td>18:50</td><td>19:08</td></tr><tr><td>1209</td><td>새마을</td><td>17:52</td><td>18:02</td><td>18:26</td><td>18:45</td><td>19:05</td><td>19:13</td><td>19:22</td><td>19:36</td><td>19:43</td><td>19:50</td><td>20:01</td><td>20:14</td><td>20:31</td><td>20:42</td><td>20:56</td><td>21:02</td><td>21:09</td><td>21:27</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">전국 기차 시간표 및 운임 조회</h2>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #ktx-live-app-v2 { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 1px solid #e2e8f0; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.06); min-height: 800px; }
        .ktx-top-bar-v2 { background: #0045e6; padding: 15px 20px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .ktx-top-bar-v2 b { font-size: 17px; }
        .ktx-live-label-v2 { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 900; animation: ktx_pulse_v2 1.5s infinite; }
        @keyframes ktx_pulse_v2 { 50% { opacity: 0.4; } }
        .ktx-search-box-v2 { padding: 15px; background: #f8fafc; border-bottom: 1px solid #eee; }
        .ktx-input-flex-v2 { display: flex; gap: 8px; margin-bottom: 10px; }
        .ktx-input-flex-v2 input { flex: 1; min-width: 0; padding: 12px; border-radius: 8px; border: 1px solid #cbd5e1; font-size: 16px !important; outline: none; background: #fff; -webkit-appearance: none; }
        #ktx-btn-submit-v2 { width: 100%; padding: 15px; background: #64748b; color: #fff; border: none; border-radius: 8px; cursor: pointer; font-weight: bold; font-size: 16px; transition: all 0.3s; height: 50px; }
        #ktx-btn-submit-v2:hover { background: #475569; }
        #ktx-btn-submit-v2.is-searching { background: #6366f1 !important; cursor: wait; }
        .ktx-memo-area-v2 { padding: 12px 15px; background: #fffbeb; color: #92400e; font-size: 14px; line-height: 1.6; border-top: 1px solid #fef3c7; display: none; word-break: keep-all; min-height: 45px; }
        .ktx-main-table-v2 { width: 100%; border-collapse: collapse; table-layout: fixed; border: none; min-height: 700px; }
        .ktx-main-table-v2 th { font-size: 13px; color: #64748b; padding: 12px 2px; background: #f1f5f9; border-bottom: 1px solid #e2e8f0; text-align: center; }
        .ktx-main-table-v2 td { padding: 15px 4px; border-bottom: none !important; text-align: center; vertical-align: middle; }
        .ktx-status-text-v2 { color: #e11d48; font-weight: 800; font-size: 14px; margin: 3px 0; white-space: nowrap; letter-spacing: -0.5px; }
        .ktx-grade-name-v2 { font-size: 16px; font-weight: 800; color: #0045e6; line-height: 1.2; display: block; }
        .ktx-train-no-v2 { font-size: 11px; color: #94a3b8; display: block; margin-top: 2px; }
        .v-tag-ok-v2 { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        .v-tag-duration-v2 { font-size: 10px; color: #0045e6; background: #eff6ff; padding: 1px 4px; border-radius: 3px; border: 1px solid #dbeafe; display: inline-block; margin-top: 4px; font-weight: bold; }
        .ktx-time-info-v2 { color: #475569; font-size: 12px; font-weight: 600; }
        .ktx-station-name-v2 { font-size: 14px; font-weight: 700; color: #1e293b; }

        .ktx-badge-soon-v2 { 
            display: inline-block;
            background: #e11d48; 
            color: #fff; 
            padding: 4px 10px; 
            border-radius: 6px; 
            font-size: 11px; 
            font-weight: 900; 
            letter-spacing: -0.2px;
            margin-bottom: 4px;
            box-shadow: 0 2px 4px rgba(225, 29, 72, 0.2);
            animation: ktx_v4_pulse_v2 1.2s infinite ease-in-out; 
        }
        @keyframes ktx_v4_pulse_v2 { 0% { opacity: 1; transform: scale(1); } 50% { opacity: 0.6; transform: scale(0.96); } 100% { opacity: 1; transform: scale(1); } }

        .ktx-loading-v2 { opacity: 0.3; }
        .ktx-row-fade-v2 { animation: ktxFadeInUp_v2 0.5s ease-out forwards; opacity: 0; }
        @keyframes ktxFadeInUp_v2 { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }

        .ktx-voice-btn-v2 { padding: 4px 12px; border-radius: 15px; border: 2px solid rgba(255,255,255,0.6); background: rgba(0,0,0,0.15); font-size: 11px; font-weight: 900; color: #fff; cursor: pointer; display: inline-flex; align-items: center; gap: 4px; height: 26px; transition: 0.2s; line-height: 1; margin-left:10px; }
        .ktx-voice-btn-v2.active { background: #fff; color: #0045e6; border-color: #fff; box-shadow: 0 0 10px rgba(255,255,255,0.3); }

        .ktx-pagination-v2 { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 20px; background: #fff; border-top: 1px solid #f1f5f9; }
        .ktx-page-btn-v2 { padding: 8px 16px; border: 1px solid #e2e8f0; border-radius: 6px; font-size: 13px; color: #64748b; background: #fff; cursor: pointer; transition: 0.2s; }
        .ktx-page-btn-v2:hover:not(:disabled) { background: #f1f5f9; border-color: #cbd5e1; }
        .ktx-page-btn-v2:disabled { opacity: 0.4; cursor: not-allowed; }
        .ktx-page-info-v2 { font-size: 14px; font-weight: bold; color: #0045e6; }
    </style>

    <div id="ktx-live-app-v2">
        <div class="ktx-top-bar-v2">
            <div style="display: flex; align-items: center;">
                <b><span id="ktx-live-clock-v2" style="font-size:14px; font-weight:bold; opacity:1;"></span></b>
                <button class="ktx-voice-btn-v2" id="ktx-voice-toggle-v2" onclick="toggleKtxVoiceV2()">
                    <span class="v-ico-v2">🔈</span> <span class="v-txt-v2">음성 끔</span>
                </button>
            </div>
            <div class="ktx-live-label-v2">LIVE</div>
        </div>
        <div class="ktx-search-box-v2">
            <div class="ktx-input-flex-v2">
                <input type="text" id="ktx-dep-field-v2" placeholder="출발역" value="">
                <input type="text" id="ktx-arr-field-v2" placeholder="도착역" value="">
            </div>
            <button id="ktx-btn-submit-v2" onclick="runKtxLiveSearchV2(true)">열차 시간 조회하기</button>
        </div>
        
        <table class="ktx-main-table-v2">
            <thead><tr><th style="width: 24%;">열차정보</th><th style="width: 24%;">출발역</th><th style="width: 28%;">출발예정</th><th style="width: 24%;">도착역</th></tr></thead>
            <tbody id="ktx-live-tbody-v2">
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr id="ktx-init-msg-v2"><td colspan="4" style="position:absolute; width:100%; left:0; padding:70px 0; color:#94a3b8; font-size:13px; text-align:center;">역 이름을 입력하고 조회해 주세요.</td></tr>
            </tbody>
        </table>

        <div id="ktx-pagination-ctrl-v2" class="ktx-pagination-v2" style="display:none;">
            <button class="ktx-page-btn-v2" id="ktx-prev-page-v2" onclick="changeKtxPageV2(-1)">&laquo; 이전</button>
            <span class="ktx-page-info-v2"><span id="ktx-current-page-v2">1</span> / <span id="ktx-total-pages-v2">1</span></span>
            <button class="ktx-page-btn-v2" id="ktx-next-page-v2" onclick="changeKtxPageV2(1)">다음 &raquo;</button>
        </div>

        <div id="ktx-memo-display-v2" class="ktx-memo-area-v2"></div>

        <div style="padding: 10px 18px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #f1f5f9; display:flex; justify-content:space-between;">
            <span>1분 간격 자동 갱신</span><span>최근: <span id="ktx-last-update-v2">--:--:--</span></span>
        </div>
    </div>

    <script>
    let ktxStationListV2 = [];
    const ktxKeyFinalV2 = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    window.ktxVoiceEnabledV2 = false;
    window.ktxAnnouncedV2 = new Set();
    let currentKtxFullDataV2 = [];
    let ktxCurrentPageV2 = 1;
    const ktxItemsPerPageV2 = 10;

    function toggleKtxVoiceV2() {
        window.ktxVoiceEnabledV2 = !window.ktxVoiceEnabledV2;
        const btn = document.getElementById('ktx-voice-toggle-v2');
        const txt = btn.querySelector('.v-txt-v2'), ico = btn.querySelector('.v-ico-v2');
        if(window.ktxVoiceEnabledV2) {
            btn.classList.add('active'); txt.innerText = "음성 켬"; ico.innerText = "🔊";
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); txt.innerText = "음성 끔"; ico.innerText = "🔈";
            window.speechSynthesis.cancel();
        }
    }

    function updateKtxClockV2() {
        const now = new Date();
        const clockEl = document.getElementById('ktx-live-clock-v2');
        if (clockEl) { clockEl.innerText = `${now.getMonth() + 1}.${now.getDate()} ${now.getHours().toString().padStart(2, '0')}:${now.getMinutes().toString().padStart(2, '0')} 기준`; }
    }
    setInterval(updateKtxClockV2, 1000);

    async function ktxMasterLoadV2() {
        updateKtxClockV2();
        ktxStationListV2.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinalV2}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())));
            const parser = new DOMParser();
            results.forEach(xmlStr => {
                const xml = parser.parseFromString(xmlStr, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!ktxStationListV2.find(s => s.id === id)) ktxStationListV2.push({ name, id });
                });
            });
            if(document.getElementById('ktx-dep-field-v2').value && document.getElementById('ktx-arr-field-v2').value) runKtxLiveSearchV2(false);
        } catch (e) { console.log("V2 Station data fail"); }
    }

    function renderKtxPageV2(page) {
        const tbody = document.getElementById('ktx-live-tbody-v2');
        const now = new Date();
        const start = (page - 1) * ktxItemsPerPageV2;
        const end = start + ktxItemsPerPageV2;
        const pageData = currentKtxFullDataV2.slice(start, end);
        let html = '';
        pageData.forEach((r, idx) => {
            const diffMs = r.depDate - now;
            const diffMin = Math.round(diffMs / 60000);
            
            if (window.ktxVoiceEnabledV2 && diffMin === 15) {
                const key = r.no + "_" + r.dep_n + "_" + r.dep_time;
                if (!window.ktxAnnouncedV2.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 ${r.dep_n}역에서 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnouncedV2.add(key);
                }
            }

            const soon = (diffMin <= 15 && diffMin >= 0) ? '<span class="ktx-badge-soon-v2">출발임박</span>' : '';
            const durationTotal = Math.round((r.arrDate - r.depDate) / 60000);
            const h_dur = Math.floor(durationTotal / 60);
            const m_dur = durationTotal % 60;
            const durationStr = `${String(h_dur).padStart(2, '0')}:${String(m_dur).padStart(2, '0')} 소요`;
            
            let timeStatus = '';
            if (diffMin < 0) {
                timeStatus = '<div class="ktx-status-text-v2" style="color:#64748b;">운행종료</div>';
            } else {
                timeStatus = `<div class="ktx-status-text-v2">${diffMin===0?'출발대기':diffMin+'분 후 출발'}</div>`;
            }

            html += `<tr class="ktx-row-fade-v2" style="animation-delay:${idx*0.05}s;"><td><span class="ktx-train-no-v2">${r.no}호</span><span class="ktx-grade-name-v2">${r.grade}</span><span class="v-tag-ok-v2">정상운행</span></td><td><div class="ktx-station-name-v2">${r.dep_n}역</div><span class="v-tag-duration-v2">${durationStr}</span></td><td>${soon}${timeStatus}<div class="ktx-time-info-v2">${r.dep_time} 출발</div></td><td><div class="ktx-station-name-v2">${r.arr_n}역</div><div class="ktx-time-info-v2" style="color:#0045e6;">${r.arr_time} 도착</div></td></tr>`;
        });
        tbody.innerHTML = html;
        document.getElementById('ktx-current-page-v2').innerText = page;
        document.getElementById('ktx-prev-page-v2').disabled = (page === 1);
        document.getElementById('ktx-next-page-v2').disabled = (page === Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2));
    }

    function changeKtxPageV2(dir) {
        const total = Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2);
        let target = ktxCurrentPageV2 + dir;
        if (target >= 1 && target <= total) { ktxCurrentPageV2 = target; renderKtxPageV2(ktxCurrentPageV2); }
    }

    async function runKtxLiveSearchV2(manual = false) {
        const btn = document.getElementById('ktx-btn-submit-v2');
        let d_val = document.getElementById('ktx-dep-field-v2').value.trim();
        let a_val = document.getElementById('ktx-arr-field-v2').value.trim();
        if (!d_val || !a_val) { if(manual) alert("출발역과 도착역을 모두 입력하세요."); return; }
        
        btn.innerText = "데이터 검색 중..."; btn.classList.add('is-searching'); btn.disabled = true;
        d_val = d_val.replace(/역$/, ''); a_val = a_val.replace(/역$/, '');
        
        const tbody = document.getElementById('ktx-live-tbody-v2');
        const memoDiv = document.getElementById('ktx-memo-display-v2');
        const pgCtrl = document.getElementById('ktx-pagination-ctrl-v2');
        if(manual) tbody.classList.add('ktx-loading-v2');

        const findStation = (n) => {
            if (n === "여수" || n === "여수엑스포") return { name: "여수EXPO", id: "NAT041993" };
            return ktxStationListV2.find(s => s.name === n || s.name === n + '역');
        }
        const dep = findStation(d_val); const arr = findStation(a_val);
        if (!dep || !arr) { 
            tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0;">역 이름을 정확히 입력해 주세요. (예: 부산, 동대구)</td></tr>';
            pgCtrl.style.display = 'none';
            tbody.classList.remove('ktx-loading-v2');
            btn.innerText = "열차 시간 조회하기"; btn.classList.remove('is-searching'); btn.disabled = false; 
            return; 
        }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live_v2');
        fd.append('dep_id', dep.id); fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            const resData = await response.json();
            const now = new Date();
            currentKtxFullDataV2 = resData.trains.map(item => {
                const parseTrainTime = (str) => { if (!str || str.length < 12) return new Date(0); return new Date(str.substring(0,4), str.substring(4,6)-1, str.substring(6,8), str.substring(8,10), str.substring(10,12)); };
                item.depDate = parseTrainTime(item.raw_dep); item.arrDate = parseTrainTime(item.raw_arr);
                if (item.arrDate < item.depDate) item.arrDate.setDate(item.arrDate.getDate() + 1);
                return item;
            }).sort((a, b) => a.depDate - b.depDate);

            if (currentKtxFullDataV2.length > 0) {
                const totalPages = Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2);
                document.getElementById('ktx-total-pages-v2').innerText = totalPages;
                pgCtrl.style.display = 'flex';
                
                let firstUpcomingIdx = currentKtxFullDataV2.findIndex(t => t.depDate.getTime() > (now.getTime() - 300000));
                if (firstUpcomingIdx === -1) firstUpcomingIdx = 0;
                ktxCurrentPageV2 = Math.floor(firstUpcomingIdx / ktxItemsPerPageV2) + 1;

                if(resData.memo_template) {
                    const f_t = currentKtxFullDataV2[0].dep_time;
                    const l_t = currentKtxFullDataV2[currentKtxFullDataV2.length-1].dep_time;
                    const scrollTips = [" 전체 시간표는 하단 페이징을 확인하세요.", " 모든 배차 정보를 페이지별로 확인 가능합니다."];
                    const randomTip = scrollTips[Math.floor(Math.random() * scrollTips.length)];
                    memoDiv.innerText = resData.memo_template.replace('{first_t}', f_t).replace('{last_t}', l_t) + randomTip;
                    memoDiv.style.display = 'block';
                }
                renderKtxPageV2(ktxCurrentPageV2);
                document.getElementById('ktx-last-update-v2').innerText = now.getHours().toString().padStart(2,'0')+':'+now.getMinutes().toString().padStart(2,'0')+':'+now.getSeconds().toString().padStart(2,'0');
            } else {
                tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0; color:#94a3b8;">오늘 운행되는 열차 정보가 없습니다.</td></tr>';
                pgCtrl.style.display = 'none';
            }
        } catch (e) { tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0;">데이터 통신 오류</td></tr>'; }

        tbody.classList.remove('ktx-loading-v2');
        btn.innerText = "열차 시간 조회하기"; btn.classList.remove('is-searching'); btn.disabled = false;
    }

    ktxMasterLoadV2();
    setInterval(() => { if(document.getElementById('ktx-dep-field-v2').value) runKtxLiveSearchV2(false); }, 60000);
    document.addEventListener('keypress', function(e) { if((e.target.id === 'ktx-dep-field-v2' || e.target.id === 'ktx-arr-field-v2') && e.keyCode === 13) runKtxLiveSearchV2(true); });
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">익산역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">익산역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '35030';
            let curName = '익산';
            let altCity = '11';
            let altName = '용산';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">익산역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">16℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 구름많음</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">20%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">익산역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%83%9C%EB%B0%B1%EC%B9%BC%EA%B5%AD%EC%88%98+%EC%A0%84%EB%B6%81%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%9D%B5%EC%82%B0%EC%8B%9C+%EC%A4%91%EC%95%99%EB%8F%991%EA%B0%80+52-3" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">태백칼국수</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;칼국수,만두</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">전북특별자치도 익산시 중앙동1가 52-3</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%8B%A4%EB%A6%AC%EB%AF%B8%EC%82%BC%EA%B2%B9%EC%82%B4+%EC%9D%B5%EC%82%B0%EC%A0%90+%EC%A0%84%EB%B6%81%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%9D%B5%EC%82%B0%EC%8B%9C+%EB%AA%A8%ED%98%84%EB%8F%991%EA%B0%80+277-90+1%EC%B8%B5+%EB%8B%A4%EB%A6%AC%EB%AF%B8%EC%82%BC%EA%B2%B9%EC%82%B4+%EC%9D%B5%EC%82%B0%EC%A0%90" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">다리미삼겹살 익산점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;돼지고기구이</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">전북특별자치도 익산시 모현동1가 277-90 1층 다리미삼겹살 익산점</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%8C%8C%EB%A6%AC%EB%B0%94%EA%B2%8C%EB%9C%A8+%EC%9D%B5%EC%82%B0%EB%AA%A8%ED%98%84%EC%A0%90+%EC%A0%84%EB%B6%81%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%9D%B5%EC%82%B0%EC%8B%9C+%EB%AA%A8%ED%98%84%EB%8F%991%EA%B0%80+271-1" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">파리바게뜨 익산모현점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;베이커리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">전북특별자치도 익산시 모현동1가 271-1</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%A9%94%EA%B0%80MGC%EC%BB%A4%ED%94%BC+%EC%9D%B5%EC%82%B0%EB%AA%A8%ED%98%84%EC%A0%90+%EC%A0%84%EB%B6%81%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%9D%B5%EC%82%B0%EC%8B%9C+%EB%AA%A8%ED%98%84%EB%8F%991%EA%B0%80+272-1" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">메가MGC커피 익산모현점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;카페</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">전북특별자치도 익산시 모현동1가 272-1</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%A1%AF%EB%8D%B0%EB%A6%AC%EC%95%84+%EC%9D%B5%EC%82%B0%EB%AA%A8%ED%98%84%EC%A0%90+%EC%A0%84%EB%B6%81%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%9D%B5%EC%82%B0%EC%8B%9C+%EB%AA%A8%ED%98%84%EB%8F%991%EA%B0%80+272-1" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">롯데리아 익산모현점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">양식&gt;햄버거</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">전북특별자치도 익산시 모현동1가 272-1</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">익산역 실시간 주차장 요금</h4>
        
                    <div class="parking-list-container">
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 익산역 동                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">1,000원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">500원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">10,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 전라북도 익산시 창인동2가 1<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 062-941-0874                        </div>
                    </div>
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 익산역 서                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">1,000원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">500원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">10,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 전라북도 익산시 창인동2가 1<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 062-941-0874                        </div>
                    </div>
                            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">익산역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 전라북도 익산시 창인동2가 1</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:062-941-0874" style="color: #0052a4; font-weight: bold; text-decoration: none;">062-941-0874</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%9D%B5%EC%82%B0%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="350" height="350" src="https://krailroad.co.kr/wp-content/uploads/2026/04/장항선-새마을호-시간표-익산역-홍성역-대천역-용산역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간.jpg" alt="장항선-새마을호-시간표-익산역-홍성역-대천역-용산역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간" class="wp-image-20495" srcset="https://krailroad.co.kr/wp-content/uploads/2026/04/장항선-새마을호-시간표-익산역-홍성역-대천역-용산역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간.jpg 350w, https://krailroad.co.kr/wp-content/uploads/2026/04/장항선-새마을호-시간표-익산역-홍성역-대천역-용산역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/04/장항선-새마을호-시간표-익산역-홍성역-대천역-용산역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간-150x150.jpg 150w" sizes="auto, (max-width: 350px) 100vw, 350px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>경전선 새마을호 시간표 (진주역~서울역) 요금 실시간 안내</title>
		<link>https://krailroad.co.kr/%ea%b2%bd%ec%a0%84%ec%84%a0-%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%a7%84%ec%a3%bc%ec%97%ad%ec%84%9c%ec%9a%b8%ec%97%ad-%ec%9a%94%ea%b8%88-%ec%8b%a4%ec%8b%9c%ea%b0%84/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Mon, 13 Apr 2026 00:06:57 +0000</pubDate>
				<category><![CDATA[실시간 열차 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[경전선 새마을호 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=20457</guid>

					<description><![CDATA[서울과 경남의 중심부를 관통하는 경전선은 지난 세기부터 영남 내륙의 활력과 문화를 수도권으로 실어 나르며 우리 삶의 일부로 녹아들었습니다. 과거 오랜 시간 서민들의 든든한 동반자였던 서울행 무궁화호의 빈자리를 이제는 경전선 새마을호 시간표를 이용한 한층더 매끄러운 주행감의 ITX-새마을이 채우고 있는데요. 빠른 속도에만 치중하기보다 이용 자체의 여유와 합리적인 지출을 생각하는 분들에게는 괜찮은 매력의 열차입니다. 아래 자료들은 코레일의 공식 ... <a title="경전선 새마을호 시간표 (진주역~서울역) 요금 실시간 안내" class="read-more button" href="https://krailroad.co.kr/%ea%b2%bd%ec%a0%84%ec%84%a0-%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%a7%84%ec%a3%bc%ec%97%ad%ec%84%9c%ec%9a%b8%ec%97%ad-%ec%9a%94%ea%b8%88-%ec%8b%a4%ec%8b%9c%ea%b0%84/" aria-label="경전선 새마을호 시간표 (진주역~서울역) 요금 실시간 안내 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">서울과 경남의 중심부를 관통하는 경전선은 지난 세기부터 영남 내륙의 활력과 문화를 수도권으로 실어 나르며 우리 삶의 일부로 녹아들었습니다. 과거 오랜 시간 서민들의 든든한 동반자였던 서울행 무궁화호의 빈자리를 이제는 경전선 새마을호 시간표를 이용한 한층더 매끄러운 주행감의 ITX-새마을이 채우고 있는데요. 빠른 속도에만 치중하기보다 이용 자체의 여유와 합리적인 지출을 생각하는 분들에게는 괜찮은 매력의 열차입니다.</p>



<p class="wp-block-paragraph">아래 자료들은 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a>의 공식 엔진과 공공데이터 API가 맞물려 1분 단위로 갱신되는 아래의 시스템은 현재 열차가 밟고 있는 선로 위치를 초 단위로 추적해 보여줍니다. 특히 상단 설정에서 음성 가이드를 켜두시면 열차 진입 15분 전부터 자동으로 알림을 보내주어, 대합실에서 책을 읽거나 식사를 하던 중에도 여유롭게 승강장으로 이동할 수 있습니다(<a href="https://krailroad.co.kr/%eb%aa%a9%ed%8f%ac-%eb%b3%b4%ec%84%b1%ec%97%ad-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%85%b8%ec%84%a0-%ec%9a%94%ea%b8%88-%ec%a0%95/">목포 보성선 새마을호 시간표는이동 참고</a>).</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>경전선 새마을호 시간표 정리</strong></h2>



<h3 class="wp-block-heading">영등포역 진주역 기차</h3>



<p class="wp-block-paragraph">서울역까지의 이동이 번거로운 안양, 수원, 평택 등 경기 남부 권역이나 서울 서남부 거주자들에게 영등포역은 경북의 <a href="https://krailroad.co.kr/%eb%8c%80%ea%b5%ac%ec%97%ad-itx-%ec%83%88%eb%a7%88%ec%9d%84-%eb%b0%8f-itx-%eb%a7%88%ec%9d%8c-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%bd%eb%b6%80%ec%84%a0-%eb%85%b8%ec%84%a0-%ec%95%88%eb%82%b4/">대구역</a>, <a href="https://krailroad.co.kr/%eb%8f%99%eb%8c%80%ea%b5%ac%ec%97%ad-itx-%ec%83%88%eb%a7%88%ec%9d%84-itx-%eb%a7%88%ec%9d%8c-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%b2%ab%ec%b0%a8-%eb%a7%89%ec%b0%a8-%ec%a0%95%eb%b3%b4-%ed%8f%ac/">동대구역</a>과 경남의 <a href="https://krailroad.co.kr/%eb%b0%80%ec%96%91%ec%97%ad-itx-%ec%83%88%eb%a7%88%ec%9d%84-itx-%eb%a7%88%ec%9d%8c-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%bd%eb%b6%80%ec%84%a0-%eb%85%b8%ec%84%a0/">밀양역</a>, 창원역, 마산역, 진주역으로 향하는 가장 최적화된 출발점으로, 고속열차가 드문 시간대에도 ITX-새마을은(경전선 새마을호 시간표) 변함없이 이 노선을 지키며 안정적인 이동권을 보장하는데요. 비록 시간적인 면에서 고속열차보다 눈에 띄게 빠르지는 않지만, 인체공학적으로 설계된 넓은 좌석과 저소음 설비 덕분에 긴 시간 기차에 머물러도 몸에 쌓이는 피로가 현저히 적다는 점입니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">장병들의 열차 이용과 데이터</h3>



<p class="wp-block-paragraph">단순히 열차를 타는 행위를 넘어, 본 시스템은 역을 나서는 순간 시작될 현지에서의 시간까지 보여드리며, 진주역 도착 직후 연계되는 실시간 버스 정보는 물론, 역사 주차장의 요금 체계와 빈자리 현황을 한눈에 파악할 수 있도록 구성했습니다. 소음이 적고 수유실이나 장애인 화장실 등 편의시설이 탄탄한 ITX-새마을의 장점을 누리며 가족들과 함께하는 나들이를 계획해 보시는 건 어떨까요?</p>



<p class="wp-block-paragraph">앞으로 선로 현대화가 가속화되면 이 구간의 운행 효율은 더욱 높아질 전망으로, 정교한 실시간 API 정보 삼아, 진주의 숨은 맛집과 명소로 향수 있으며, 경전선 새마을호 시간표를 이용한다면 서울역~진주역 구간 이동은 여행과 휴식으로 이용하는데 불편함이 없을 것입니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">진주 ↔&nbsp;서울 첫차 &amp; 막차</h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">진주<br>↓<br>서울</td><td><span class="type-label type-itx">ITX-새마을</span></td><td><span class="train-detail">1112호</span><div class="time-display">08:22</div><div class="arrival-info">13:50 도착</div></td><td><span class="train-detail">1114호</span><div class="time-display">15:47</div><div class="arrival-info">21:00 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">서울<br>↓<br>진주</td><td><span class="type-label type-itx">ITX-새마을</span></td><td><span class="train-detail">1111호</span><div class="time-display">09:08</div><div class="arrival-info">14:36 도착</div></td><td><span class="train-detail">1113호</span><div class="time-display">19:25</div><div class="arrival-info">00:45 도착</div></td></tr></tbody></table></div>


    
    <h2>진주 ↔ 서울 운임 요금표</h2>

    <div id="ktx-app-fl" style="margin-bottom: 40px;">
        <style>
            #ktx-app-fl { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 1px solid #e2e8f0; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.06); }
            .fl-main-table { width: 100%; border-collapse: collapse; table-layout: fixed; border: none; }
            .fl-main-table th { font-size: 13px; color: #64748b; padding: 12px 2px; background: #f8fafc; border-bottom: 1px solid #e2e8f0; text-align: center; font-weight: bold; }
            .fl-main-table td { padding: 15px 4px; border-bottom: 1px solid #f1f5f9; text-align: center; vertical-align: middle; }
            
            .u-no-top { font-size: 11px; color: #94a3b8; display: block; font-weight: 500; margin-bottom: 1px; }
            .u-grade-bottom { font-size: 16px; font-weight: 900; color: #0045e6; display: block; line-height: 1.2; }
            .t-via { font-size: 12px; color: #64748b; display: block; margin-top: 4px; font-weight: 500; }
            
            .t-price { font-weight: 700; font-size: 14px; color: #1e293b; }
            .t-premium { color: #059669; }
            .t-special { color: #e11d48; }
            
            .t-none { display: inline-block; padding: 3px 10px; background: #f8fafc; color: #cbd5e1; border: 1px solid #f1f5f9; border-radius: 6px; font-size: 11px; font-weight: 600; }

            @media (max-width: 600px) {
                .fl-main-table th { font-size: 12px; }
                .u-grade-bottom { font-size: 14px; }
                .t-price { font-size: 12px; }
            }
        </style>

        <div style="overflow-x: auto;">
            <table class="fl-main-table">
                <thead>
                    <tr>
                        <th style="width: 30%;">열차 / 경유지</th>
                        <th style="width: 23%;">일반실</th>
                        <th style="width: 23%;">우등실</th>
                        <th style="width: 24%;">특실</th>
                    </tr>
                </thead>
                <tbody>
                                        <tr>
                        <td>
                            <span class="u-no-top">서울 ↔ 진주</span>
                            <span class="u-grade-bottom">ITX</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                45,900원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">서울 ↔ 진주</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">기본</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                57,600원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                80,600원                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">서울 ↔ 진주</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">서대구</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                57,200원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                80,100원                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">서울 ↔ 진주</span>
                            <span class="u-grade-bottom">무궁화</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                30,900원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                    </tbody>
            </table>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">진주 →&nbsp;서울 ITX-새마을 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>진주</th><th>함안</th><th>마산</th><th>창원</th><th>창원중앙</th><th>진영</th><th>밀양</th><th>청도</th><th>동대구</th><th>대구</th><th>왜관</th><th>구미</th><th>김천</th><th>영동</th><th>대전</th><th>조치원</th><th>천안</th><th>평택</th><th>수원</th><th>영등포</th><th>서울</th></tr></thead><tbody><tr><td>1112</td><td>ITX-새마을</td><td>08:22</td><td>08:42</td><td>08:53</td><td>08:59</td><td>09:09</td><td>09:19</td><td>09:36</td><td>09:50</td><td>10:13</td><td>10:19</td><td>10:37</td><td>10:51</td><td>11:06</td><td></td><td>11:59</td><td>12:22</td><td>12:43</td><td>12:55</td><td>13:15</td><td>13:39</td><td>13:50</td></tr><tr><td>1114</td><td>ITX-새마을</td><td>15:47</td><td>16:07</td><td>16:18</td><td>16:24</td><td>16:33</td><td>16:43</td><td>16:59</td><td></td><td>17:33</td><td>17:39</td><td></td><td>18:08</td><td>18:23</td><td>18:50</td><td>19:19</td><td></td><td>20:00</td><td></td><td>20:29</td><td>20:50</td><td>21:00</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">서울 →&nbsp;진주 ITX-새마을 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>서울</th><th>영등포</th><th>수원</th><th>평택</th><th>천안</th><th>조치원</th><th>대전</th><th>옥천</th><th>영동</th><th>김천</th><th>구미</th><th>왜관</th><th>대구</th><th>동대구</th><th>경산</th><th>청도</th><th>밀양</th><th>진영</th><th>창원중앙</th><th>창원</th><th>마산</th><th>함안</th><th>진주</th></tr></thead><tbody><tr><td>1111</td><td>ITX-새마을</td><td>09:08</td><td>09:18</td><td>09:40</td><td>09:59</td><td>10:13</td><td>10:33</td><td>10:58</td><td>11:09</td><td>11:28</td><td>11:55</td><td>12:11</td><td></td><td>12:40</td><td>12:46</td><td>12:55</td><td>13:10</td><td>13:23</td><td>13:41</td><td>13:51</td><td>14:00</td><td>14:06</td><td>14:18</td><td>14:36</td></tr><tr><td>1113</td><td>ITX-새마을</td><td>19:25</td><td>19:35</td><td>19:57</td><td></td><td>20:26</td><td>20:47</td><td>21:11</td><td></td><td></td><td>22:02</td><td>22:18</td><td>22:31</td><td>22:50</td><td>22:56</td><td></td><td></td><td>23:28</td><td>23:48</td><td>23:59</td><td>00:08</td><td>00:14</td><td>00:26</td><td>00:45</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">전국 기차 시간표 및 운임 조회</h2>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #ktx-live-app-v2 { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 1px solid #e2e8f0; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.06); min-height: 800px; }
        .ktx-top-bar-v2 { background: #0045e6; padding: 15px 20px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .ktx-top-bar-v2 b { font-size: 17px; }
        .ktx-live-label-v2 { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 900; animation: ktx_pulse_v2 1.5s infinite; }
        @keyframes ktx_pulse_v2 { 50% { opacity: 0.4; } }
        .ktx-search-box-v2 { padding: 15px; background: #f8fafc; border-bottom: 1px solid #eee; }
        .ktx-input-flex-v2 { display: flex; gap: 8px; margin-bottom: 10px; }
        .ktx-input-flex-v2 input { flex: 1; min-width: 0; padding: 12px; border-radius: 8px; border: 1px solid #cbd5e1; font-size: 16px !important; outline: none; background: #fff; -webkit-appearance: none; }
        #ktx-btn-submit-v2 { width: 100%; padding: 15px; background: #64748b; color: #fff; border: none; border-radius: 8px; cursor: pointer; font-weight: bold; font-size: 16px; transition: all 0.3s; height: 50px; }
        #ktx-btn-submit-v2:hover { background: #475569; }
        #ktx-btn-submit-v2.is-searching { background: #6366f1 !important; cursor: wait; }
        .ktx-memo-area-v2 { padding: 12px 15px; background: #fffbeb; color: #92400e; font-size: 14px; line-height: 1.6; border-top: 1px solid #fef3c7; display: none; word-break: keep-all; min-height: 45px; }
        .ktx-main-table-v2 { width: 100%; border-collapse: collapse; table-layout: fixed; border: none; min-height: 700px; }
        .ktx-main-table-v2 th { font-size: 13px; color: #64748b; padding: 12px 2px; background: #f1f5f9; border-bottom: 1px solid #e2e8f0; text-align: center; }
        .ktx-main-table-v2 td { padding: 15px 4px; border-bottom: none !important; text-align: center; vertical-align: middle; }
        .ktx-status-text-v2 { color: #e11d48; font-weight: 800; font-size: 14px; margin: 3px 0; white-space: nowrap; letter-spacing: -0.5px; }
        .ktx-grade-name-v2 { font-size: 16px; font-weight: 800; color: #0045e6; line-height: 1.2; display: block; }
        .ktx-train-no-v2 { font-size: 11px; color: #94a3b8; display: block; margin-top: 2px; }
        .v-tag-ok-v2 { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        .v-tag-duration-v2 { font-size: 10px; color: #0045e6; background: #eff6ff; padding: 1px 4px; border-radius: 3px; border: 1px solid #dbeafe; display: inline-block; margin-top: 4px; font-weight: bold; }
        .ktx-time-info-v2 { color: #475569; font-size: 12px; font-weight: 600; }
        .ktx-station-name-v2 { font-size: 14px; font-weight: 700; color: #1e293b; }

        .ktx-badge-soon-v2 { 
            display: inline-block;
            background: #e11d48; 
            color: #fff; 
            padding: 4px 10px; 
            border-radius: 6px; 
            font-size: 11px; 
            font-weight: 900; 
            letter-spacing: -0.2px;
            margin-bottom: 4px;
            box-shadow: 0 2px 4px rgba(225, 29, 72, 0.2);
            animation: ktx_v4_pulse_v2 1.2s infinite ease-in-out; 
        }
        @keyframes ktx_v4_pulse_v2 { 0% { opacity: 1; transform: scale(1); } 50% { opacity: 0.6; transform: scale(0.96); } 100% { opacity: 1; transform: scale(1); } }

        .ktx-loading-v2 { opacity: 0.3; }
        .ktx-row-fade-v2 { animation: ktxFadeInUp_v2 0.5s ease-out forwards; opacity: 0; }
        @keyframes ktxFadeInUp_v2 { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }

        .ktx-voice-btn-v2 { padding: 4px 12px; border-radius: 15px; border: 2px solid rgba(255,255,255,0.6); background: rgba(0,0,0,0.15); font-size: 11px; font-weight: 900; color: #fff; cursor: pointer; display: inline-flex; align-items: center; gap: 4px; height: 26px; transition: 0.2s; line-height: 1; margin-left:10px; }
        .ktx-voice-btn-v2.active { background: #fff; color: #0045e6; border-color: #fff; box-shadow: 0 0 10px rgba(255,255,255,0.3); }

        .ktx-pagination-v2 { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 20px; background: #fff; border-top: 1px solid #f1f5f9; }
        .ktx-page-btn-v2 { padding: 8px 16px; border: 1px solid #e2e8f0; border-radius: 6px; font-size: 13px; color: #64748b; background: #fff; cursor: pointer; transition: 0.2s; }
        .ktx-page-btn-v2:hover:not(:disabled) { background: #f1f5f9; border-color: #cbd5e1; }
        .ktx-page-btn-v2:disabled { opacity: 0.4; cursor: not-allowed; }
        .ktx-page-info-v2 { font-size: 14px; font-weight: bold; color: #0045e6; }
    </style>

    <div id="ktx-live-app-v2">
        <div class="ktx-top-bar-v2">
            <div style="display: flex; align-items: center;">
                <b><span id="ktx-live-clock-v2" style="font-size:14px; font-weight:bold; opacity:1;"></span></b>
                <button class="ktx-voice-btn-v2" id="ktx-voice-toggle-v2" onclick="toggleKtxVoiceV2()">
                    <span class="v-ico-v2">🔈</span> <span class="v-txt-v2">음성 끔</span>
                </button>
            </div>
            <div class="ktx-live-label-v2">LIVE</div>
        </div>
        <div class="ktx-search-box-v2">
            <div class="ktx-input-flex-v2">
                <input type="text" id="ktx-dep-field-v2" placeholder="출발역" value="">
                <input type="text" id="ktx-arr-field-v2" placeholder="도착역" value="">
            </div>
            <button id="ktx-btn-submit-v2" onclick="runKtxLiveSearchV2(true)">열차 시간 조회하기</button>
        </div>
        
        <table class="ktx-main-table-v2">
            <thead><tr><th style="width: 24%;">열차정보</th><th style="width: 24%;">출발역</th><th style="width: 28%;">출발예정</th><th style="width: 24%;">도착역</th></tr></thead>
            <tbody id="ktx-live-tbody-v2">
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr id="ktx-init-msg-v2"><td colspan="4" style="position:absolute; width:100%; left:0; padding:70px 0; color:#94a3b8; font-size:13px; text-align:center;">역 이름을 입력하고 조회해 주세요.</td></tr>
            </tbody>
        </table>

        <div id="ktx-pagination-ctrl-v2" class="ktx-pagination-v2" style="display:none;">
            <button class="ktx-page-btn-v2" id="ktx-prev-page-v2" onclick="changeKtxPageV2(-1)">&laquo; 이전</button>
            <span class="ktx-page-info-v2"><span id="ktx-current-page-v2">1</span> / <span id="ktx-total-pages-v2">1</span></span>
            <button class="ktx-page-btn-v2" id="ktx-next-page-v2" onclick="changeKtxPageV2(1)">다음 &raquo;</button>
        </div>

        <div id="ktx-memo-display-v2" class="ktx-memo-area-v2"></div>

        <div style="padding: 10px 18px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #f1f5f9; display:flex; justify-content:space-between;">
            <span>1분 간격 자동 갱신</span><span>최근: <span id="ktx-last-update-v2">--:--:--</span></span>
        </div>
    </div>

    <script>
    let ktxStationListV2 = [];
    const ktxKeyFinalV2 = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    window.ktxVoiceEnabledV2 = false;
    window.ktxAnnouncedV2 = new Set();
    let currentKtxFullDataV2 = [];
    let ktxCurrentPageV2 = 1;
    const ktxItemsPerPageV2 = 10;

    function toggleKtxVoiceV2() {
        window.ktxVoiceEnabledV2 = !window.ktxVoiceEnabledV2;
        const btn = document.getElementById('ktx-voice-toggle-v2');
        const txt = btn.querySelector('.v-txt-v2'), ico = btn.querySelector('.v-ico-v2');
        if(window.ktxVoiceEnabledV2) {
            btn.classList.add('active'); txt.innerText = "음성 켬"; ico.innerText = "🔊";
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); txt.innerText = "음성 끔"; ico.innerText = "🔈";
            window.speechSynthesis.cancel();
        }
    }

    function updateKtxClockV2() {
        const now = new Date();
        const clockEl = document.getElementById('ktx-live-clock-v2');
        if (clockEl) { clockEl.innerText = `${now.getMonth() + 1}.${now.getDate()} ${now.getHours().toString().padStart(2, '0')}:${now.getMinutes().toString().padStart(2, '0')} 기준`; }
    }
    setInterval(updateKtxClockV2, 1000);

    async function ktxMasterLoadV2() {
        updateKtxClockV2();
        ktxStationListV2.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinalV2}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())));
            const parser = new DOMParser();
            results.forEach(xmlStr => {
                const xml = parser.parseFromString(xmlStr, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!ktxStationListV2.find(s => s.id === id)) ktxStationListV2.push({ name, id });
                });
            });
            if(document.getElementById('ktx-dep-field-v2').value && document.getElementById('ktx-arr-field-v2').value) runKtxLiveSearchV2(false);
        } catch (e) { console.log("V2 Station data fail"); }
    }

    function renderKtxPageV2(page) {
        const tbody = document.getElementById('ktx-live-tbody-v2');
        const now = new Date();
        const start = (page - 1) * ktxItemsPerPageV2;
        const end = start + ktxItemsPerPageV2;
        const pageData = currentKtxFullDataV2.slice(start, end);
        let html = '';
        pageData.forEach((r, idx) => {
            const diffMs = r.depDate - now;
            const diffMin = Math.round(diffMs / 60000);
            
            if (window.ktxVoiceEnabledV2 && diffMin === 15) {
                const key = r.no + "_" + r.dep_n + "_" + r.dep_time;
                if (!window.ktxAnnouncedV2.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 ${r.dep_n}역에서 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnouncedV2.add(key);
                }
            }

            const soon = (diffMin <= 15 && diffMin >= 0) ? '<span class="ktx-badge-soon-v2">출발임박</span>' : '';
            const durationTotal = Math.round((r.arrDate - r.depDate) / 60000);
            const h_dur = Math.floor(durationTotal / 60);
            const m_dur = durationTotal % 60;
            const durationStr = `${String(h_dur).padStart(2, '0')}:${String(m_dur).padStart(2, '0')} 소요`;
            
            let timeStatus = '';
            if (diffMin < 0) {
                timeStatus = '<div class="ktx-status-text-v2" style="color:#64748b;">운행종료</div>';
            } else {
                timeStatus = `<div class="ktx-status-text-v2">${diffMin===0?'출발대기':diffMin+'분 후 출발'}</div>`;
            }

            html += `<tr class="ktx-row-fade-v2" style="animation-delay:${idx*0.05}s;"><td><span class="ktx-train-no-v2">${r.no}호</span><span class="ktx-grade-name-v2">${r.grade}</span><span class="v-tag-ok-v2">정상운행</span></td><td><div class="ktx-station-name-v2">${r.dep_n}역</div><span class="v-tag-duration-v2">${durationStr}</span></td><td>${soon}${timeStatus}<div class="ktx-time-info-v2">${r.dep_time} 출발</div></td><td><div class="ktx-station-name-v2">${r.arr_n}역</div><div class="ktx-time-info-v2" style="color:#0045e6;">${r.arr_time} 도착</div></td></tr>`;
        });
        tbody.innerHTML = html;
        document.getElementById('ktx-current-page-v2').innerText = page;
        document.getElementById('ktx-prev-page-v2').disabled = (page === 1);
        document.getElementById('ktx-next-page-v2').disabled = (page === Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2));
    }

    function changeKtxPageV2(dir) {
        const total = Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2);
        let target = ktxCurrentPageV2 + dir;
        if (target >= 1 && target <= total) { ktxCurrentPageV2 = target; renderKtxPageV2(ktxCurrentPageV2); }
    }

    async function runKtxLiveSearchV2(manual = false) {
        const btn = document.getElementById('ktx-btn-submit-v2');
        let d_val = document.getElementById('ktx-dep-field-v2').value.trim();
        let a_val = document.getElementById('ktx-arr-field-v2').value.trim();
        if (!d_val || !a_val) { if(manual) alert("출발역과 도착역을 모두 입력하세요."); return; }
        
        btn.innerText = "데이터 검색 중..."; btn.classList.add('is-searching'); btn.disabled = true;
        d_val = d_val.replace(/역$/, ''); a_val = a_val.replace(/역$/, '');
        
        const tbody = document.getElementById('ktx-live-tbody-v2');
        const memoDiv = document.getElementById('ktx-memo-display-v2');
        const pgCtrl = document.getElementById('ktx-pagination-ctrl-v2');
        if(manual) tbody.classList.add('ktx-loading-v2');

        const findStation = (n) => {
            if (n === "여수" || n === "여수엑스포") return { name: "여수EXPO", id: "NAT041993" };
            return ktxStationListV2.find(s => s.name === n || s.name === n + '역');
        }
        const dep = findStation(d_val); const arr = findStation(a_val);
        if (!dep || !arr) { 
            tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0;">역 이름을 정확히 입력해 주세요. (예: 부산, 동대구)</td></tr>';
            pgCtrl.style.display = 'none';
            tbody.classList.remove('ktx-loading-v2');
            btn.innerText = "열차 시간 조회하기"; btn.classList.remove('is-searching'); btn.disabled = false; 
            return; 
        }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live_v2');
        fd.append('dep_id', dep.id); fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            const resData = await response.json();
            const now = new Date();
            currentKtxFullDataV2 = resData.trains.map(item => {
                const parseTrainTime = (str) => { if (!str || str.length < 12) return new Date(0); return new Date(str.substring(0,4), str.substring(4,6)-1, str.substring(6,8), str.substring(8,10), str.substring(10,12)); };
                item.depDate = parseTrainTime(item.raw_dep); item.arrDate = parseTrainTime(item.raw_arr);
                if (item.arrDate < item.depDate) item.arrDate.setDate(item.arrDate.getDate() + 1);
                return item;
            }).sort((a, b) => a.depDate - b.depDate);

            if (currentKtxFullDataV2.length > 0) {
                const totalPages = Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2);
                document.getElementById('ktx-total-pages-v2').innerText = totalPages;
                pgCtrl.style.display = 'flex';
                
                let firstUpcomingIdx = currentKtxFullDataV2.findIndex(t => t.depDate.getTime() > (now.getTime() - 300000));
                if (firstUpcomingIdx === -1) firstUpcomingIdx = 0;
                ktxCurrentPageV2 = Math.floor(firstUpcomingIdx / ktxItemsPerPageV2) + 1;

                if(resData.memo_template) {
                    const f_t = currentKtxFullDataV2[0].dep_time;
                    const l_t = currentKtxFullDataV2[currentKtxFullDataV2.length-1].dep_time;
                    const scrollTips = [" 전체 시간표는 하단 페이징을 확인하세요.", " 모든 배차 정보를 페이지별로 확인 가능합니다."];
                    const randomTip = scrollTips[Math.floor(Math.random() * scrollTips.length)];
                    memoDiv.innerText = resData.memo_template.replace('{first_t}', f_t).replace('{last_t}', l_t) + randomTip;
                    memoDiv.style.display = 'block';
                }
                renderKtxPageV2(ktxCurrentPageV2);
                document.getElementById('ktx-last-update-v2').innerText = now.getHours().toString().padStart(2,'0')+':'+now.getMinutes().toString().padStart(2,'0')+':'+now.getSeconds().toString().padStart(2,'0');
            } else {
                tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0; color:#94a3b8;">오늘 운행되는 열차 정보가 없습니다.</td></tr>';
                pgCtrl.style.display = 'none';
            }
        } catch (e) { tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0;">데이터 통신 오류</td></tr>'; }

        tbody.classList.remove('ktx-loading-v2');
        btn.innerText = "열차 시간 조회하기"; btn.classList.remove('is-searching'); btn.disabled = false;
    }

    ktxMasterLoadV2();
    setInterval(() => { if(document.getElementById('ktx-dep-field-v2').value) runKtxLiveSearchV2(false); }, 60000);
    document.addEventListener('keypress', function(e) { if((e.target.id === 'ktx-dep-field-v2' || e.target.id === 'ktx-arr-field-v2') && e.keyCode === 13) runKtxLiveSearchV2(true); });
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">진주역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">진주역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '38030';
            let curName = '진주';
            let altCity = '11';
            let altName = '서울';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">진주역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">15℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 구름많음</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">20%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">진주역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%83%80%EC%B9%B4%EC%9D%B4+%EC%A7%84%EC%A3%BC%ED%98%81%EC%8B%A0%EB%8F%84%EC%8B%9C%EC%A0%90+%EA%B2%BD%EC%83%81%EB%82%A8%EB%8F%84+%EC%A7%84%EC%A3%BC%EC%8B%9C+%EC%B6%A9%EB%AC%B4%EA%B3%B5%EB%8F%99+287-3+1%EC%B8%B5+102%ED%98%B8" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">타카이 진주혁신도시점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">술집&gt;요리주점</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상남도 진주시 충무공동 287-3 1층 102호</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EA%B3%A0%EC%A7%91%EB%82%A8+%EC%A7%84%EC%A3%BC%ED%98%81%EC%8B%A0%EB%8F%84%EC%8B%9C%EC%A0%90+%EA%B2%BD%EC%83%81%EB%82%A8%EB%8F%84+%EC%A7%84%EC%A3%BC%EC%8B%9C+%EC%B6%A9%EB%AC%B4%EA%B3%B5%EB%8F%99+289-1+%EB%8B%A4%EC%9D%B8%ED%94%84%EB%9D%BC%EC%9E%90+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">고집남 진주혁신도시점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;육류,고기요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상남도 진주시 충무공동 289-1 다인프라자 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%A1%B0%EC%84%A0%EB%B3%B8%EA%B0%88%EB%B9%84+%EB%B0%80%EB%A9%B4+%EC%A7%84%EC%A3%BC%ED%98%81%EC%8B%A0%EB%8F%84%EC%8B%9C%EC%A0%90+%EA%B2%BD%EC%83%81%EB%82%A8%EB%8F%84+%EC%A7%84%EC%A3%BC%EC%8B%9C+%EC%B6%A9%EB%AC%B4%EA%B3%B5%EB%8F%99+289-3+2%EC%B8%B5+%EC%A1%B0%EC%84%A0%EB%B3%B8%EA%B0%88%EB%B9%84+%EB%B0%80%EB%A9%B4+%EC%A7%84%EC%A3%BC%ED%98%81%EC%8B%A0%EB%8F%84%EC%8B%9C%EC%A0%90" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">조선본갈비 밀면 진주혁신도시점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;한식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상남도 진주시 충무공동 289-3 2층 조선본갈비 밀면 진주혁신도시점</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%AA%A8%EB%9C%A8+%EA%B2%BD%EC%83%81%EB%82%A8%EB%8F%84+%EC%A7%84%EC%A3%BC%EC%8B%9C+%EC%B6%A9%EB%AC%B4%EA%B3%B5%EB%8F%99+289-4+%ED%86%A0%EC%9B%90%EB%B9%8C%EB%94%A9+106%ED%98%B8" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">모뜨</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;카페,디저트</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상남도 진주시 충무공동 289-4 토원빌딩 106호</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%97%90%EB%82%98%EB%A1%9C%EB%A7%89%EC%B0%BD+%EC%A7%84%EC%A3%BC%ED%98%81%EC%8B%A0%EB%8F%84%EC%8B%9C%EC%A0%90+%EA%B2%BD%EC%83%81%EB%82%A8%EB%8F%84+%EC%A7%84%EC%A3%BC%EC%8B%9C+%EC%B6%A9%EB%AC%B4%EA%B3%B5%EB%8F%99+287-9+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">에나로막창 진주혁신도시점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;곱창,막창,양</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상남도 진주시 충무공동 287-9 1층</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">진주역 실시간 주차장 요금</h4>
        
                    <div class="parking-list-container">
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 진주역                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">500원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">200원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">8,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 경상남도 진주시 진주역로 130<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 051-441-7782                        </div>
                    </div>
                            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">진주역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 경상남도 진주시 진주역로 130</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:051-441-7782" style="color: #0052a4; font-weight: bold; text-decoration: none;">051-441-7782</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%A7%84%EC%A3%BC%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="350" height="350" src="https://krailroad.co.kr/wp-content/uploads/2026/04/경전선-새마을호-시간표-ITX-서울역-진주역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간.jpg" alt="경전선-새마을호-시간표-ITX-서울역-진주역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간" class="wp-image-20469" srcset="https://krailroad.co.kr/wp-content/uploads/2026/04/경전선-새마을호-시간표-ITX-서울역-진주역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간.jpg 350w, https://krailroad.co.kr/wp-content/uploads/2026/04/경전선-새마을호-시간표-ITX-서울역-진주역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/04/경전선-새마을호-시간표-ITX-서울역-진주역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간-150x150.jpg 150w" sizes="auto, (max-width: 350px) 100vw, 350px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>전라선 새마을호 시간표 (용산역~여수역) 및 요금 실시간 시간 안내</title>
		<link>https://krailroad.co.kr/%ec%a0%84%eb%9d%bc%ec%84%a0-%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%9a%a9%ec%82%b0%ec%97%ad%ec%97%ac%ec%88%98%ec%97%ad-%eb%b0%8f-%ec%9a%94%ea%b8%88-%ec%8b%a4%ec%8b%9c/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Sat, 11 Apr 2026 01:33:31 +0000</pubDate>
				<category><![CDATA[실시간 열차 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[전라선 새마을호 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=20439</guid>

					<description><![CDATA[용산에서 출발해 여수 밤바다의 정취로 이어지는 전라선 철길은 1930년대 처음 개통된 이래 전북과 전남 내륙을 종단하며 수많은 사람의 꿈을 실어 날랐습니다. 과거 완행열차가 구불구불한 선로를 따라 느릿하게 풍경을 담아내던 기억은 이제 고속화 사업을 통해 옛날이야기가 되었는데요. 현재 전라선은 ITX-새마을의 안락함을 넘어, 최신형 ITX-마음 열차가 더 많이 투입되며 여수와 수도권을 훨씬 긴밀하게 연결하고 있습니다. 전라선 새마을호 ... <a title="전라선 새마을호 시간표 (용산역~여수역) 및 요금 실시간 시간 안내" class="read-more button" href="https://krailroad.co.kr/%ec%a0%84%eb%9d%bc%ec%84%a0-%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%9a%a9%ec%82%b0%ec%97%ad%ec%97%ac%ec%88%98%ec%97%ad-%eb%b0%8f-%ec%9a%94%ea%b8%88-%ec%8b%a4%ec%8b%9c/" aria-label="전라선 새마을호 시간표 (용산역~여수역) 및 요금 실시간 시간 안내 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">용산에서 출발해 여수 밤바다의 정취로 이어지는 전라선 철길은 1930년대 처음 개통된 이래 전북과 전남 내륙을 종단하며 수많은 사람의 꿈을 실어 날랐습니다. 과거 완행열차가 구불구불한 선로를 따라 느릿하게 풍경을 담아내던 기억은 이제 고속화 사업을 통해 옛날이야기가 되었는데요. 현재 전라선은 ITX-새마을의 안락함을 넘어, 최신형 ITX-마음 열차가 더 많이 투입되며 여수와 수도권을 훨씬 긴밀하게 연결하고 있습니다.</p>



<p class="wp-block-paragraph">전라선 새마을호 시간표를 살펴보면 용산을 시작으로 전주, 순천을 거쳐 <a href="https://krailroad.co.kr/%ec%97%ac%ec%88%98%ec%97%ad-ktx-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%88%9c%ec%b2%9c%ec%a0%84%ec%a3%bc%ec%9a%a9%ec%82%b0%ed%96%89-%ec%a0%84%eb%9d%bc%ec%84%a0-%ed%95%98%ed%96%89-%ec%83%81%ed%96%89-%eb%85%b8/">여수엑스포역</a>에 이르는 배차가 촘촘하게 짜여 있습니다. 기와지붕의 한옥 형태가 인상적인 <a href="https://krailroad.co.kr/%ec%a0%84%ec%a3%bc%ec%97%ad-itx-%ec%83%88%eb%a7%88%ec%9d%84%c2%b7%eb%a7%88%ec%9d%8c-%ec%8b%9c%ea%b0%84%ed%91%9c-%ed%95%9c%ec%98%a5%eb%a7%88%ec%9d%84-%ec%97%ac%ec%88%98%c2%b7%ec%9a%a9%ec%82%b0%ed%96%89/">전주역</a>에 내리면 한옥마을로 향하는 버스와 택시 등 시내 교통편이 역 바로 앞에 잘 갖춰져 있으며, 순천역에서는 보성이나 진주로 향하는 경전선 환승이 가능해 남도 여행의 중심축 역할을 하는데요. 첫차부터 막차까지 본인의 일정에 맞춘 전라선 소요시간과 요금을 미리 체크하면 훨씬 편리한 여행이 가능할것입니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>전라선 새마을호 시간표 안내</strong></h2>



<h3 class="wp-block-heading">공공API 연동 실시간 시스템</h3>



<p class="wp-block-paragraph">역사 대합실 전광판 아래에서 전라선 새마을호 시간표를 확인하기 위해 고개를 들고 내 열차 번호를 찾느라 고생하던 모습은 이제 추억이 될 것 같습니다. <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a> 공식 데이터와 실시간 공공 API를 연동하여 1분 단위로 스스로 갱신되는 아래 시스템을 활용하면, 기차가 몇분뒤 도착하고 목적지까지 출발하는지 스마트폰 하나로 즉시 확인할 수 있는데요. 특히 출발 15분 전부터 안내되는 음성 안내 코드 기능을 켜두면 다른 일을 하다가도 역사에 몇분쯤에 도착하면  시간을 놓치지 않게 도와줍니다. 타 역의 정보가 필요할 때도 검색 폼을 통해 실시간 위치와 종별을 바로 파악할 수 있으니 한번 사용해 보시는 것을 추천해드립니다. ^^</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">여수 밤바다 여행과 현지 정보</h3>



<p class="wp-block-paragraph">전라선 새마을호 시간표를 이용하여 종착지인 여수엑스포역이나 전주역, <a href="https://krailroad.co.kr/%ec%9d%b5%ec%82%b0%ec%97%ad-itx-%ec%83%88%eb%a7%88%ec%9d%84-itx-%eb%a7%88%ec%9d%8c-%ec%9a%a9%ec%82%b0-%eb%aa%a9%ed%8f%ac-%ec%97%ac%ec%88%98-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ed%98%b8%eb%82%a8/">익산역</a>, 용산역에 도착하면 특히 화려한 여수 밤바다 주변 관광지를 이용하기 쉬우며, 역 주변 실시간 버스 도착 현황은 물론, 전라도 손맛을 느낄 수 있는 주변 식당가 정보와 날씨 데이터까지 페이지 하나에 모두 담았는데요. ITX-새마을호를 이용하여 혼행이나 아이들과 함께 추억을 담을 수 있는 기차여행을 그려보는것도 좋을것 같습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">여수 ↔&nbsp;용산 첫차 &amp; 막차</h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">여수엑스포<br>↓<br>용산</td><td><span class="type-label type-itx">ITX-새마을</span></td><td><span class="train-detail">1502호</span><div class="time-display">08:48</div><div class="arrival-info">13:29 도착</div></td><td><span class="train-detail">1506호</span><div class="time-display">14:10</div><div class="arrival-info">19:06 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">용산<br>↓<br>여수엑스포</td><td><span class="type-label type-itx">ITX-새마을</span></td><td><span class="train-detail">1501호</span><div class="time-display">07:14</div><div class="arrival-info">11:56 도착</div></td><td><span class="train-detail">1505호</span><div class="time-display">16:38</div><div class="arrival-info">21:22 도착</div></td></tr></tbody></table></div>


    
    <h2>용산 ↔ 여수 운임 요금표</h2>

    <div id="ktx-app-fl" style="margin-bottom: 40px;">
        <style>
            #ktx-app-fl { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 1px solid #e2e8f0; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.06); }
            .fl-main-table { width: 100%; border-collapse: collapse; table-layout: fixed; border: none; }
            .fl-main-table th { font-size: 13px; color: #64748b; padding: 12px 2px; background: #f8fafc; border-bottom: 1px solid #e2e8f0; text-align: center; font-weight: bold; }
            .fl-main-table td { padding: 15px 4px; border-bottom: 1px solid #f1f5f9; text-align: center; vertical-align: middle; }
            
            .u-no-top { font-size: 11px; color: #94a3b8; display: block; font-weight: 500; margin-bottom: 1px; }
            .u-grade-bottom { font-size: 16px; font-weight: 900; color: #0045e6; display: block; line-height: 1.2; }
            .t-via { font-size: 12px; color: #64748b; display: block; margin-top: 4px; font-weight: 500; }
            
            .t-price { font-weight: 700; font-size: 14px; color: #1e293b; }
            .t-premium { color: #059669; }
            .t-special { color: #e11d48; }
            
            .t-none { display: inline-block; padding: 3px 10px; background: #f8fafc; color: #cbd5e1; border: 1px solid #f1f5f9; border-radius: 6px; font-size: 11px; font-weight: 600; }

            @media (max-width: 600px) {
                .fl-main-table th { font-size: 12px; }
                .u-grade-bottom { font-size: 14px; }
                .t-price { font-size: 12px; }
            }
        </style>

        <div style="overflow-x: auto;">
            <table class="fl-main-table">
                <thead>
                    <tr>
                        <th style="width: 30%;">열차 / 경유지</th>
                        <th style="width: 23%;">일반실</th>
                        <th style="width: 23%;">우등실</th>
                        <th style="width: 24%;">특실</th>
                    </tr>
                </thead>
                <tbody>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 여수</span>
                            <span class="u-grade-bottom">ITX</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                41,100원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 여수엑스포</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">공주</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                47,200원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                66,100원                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 여수엑스포</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">서대전</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                46,000원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                64,400원                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 여수</span>
                            <span class="u-grade-bottom">무궁화</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                27,600원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                    </tbody>
            </table>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">여수 →&nbsp;용산 ITX-새마을 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>여수엑스포</th><th>여천</th><th>순천</th><th>구례구</th><th>곡성</th><th>남원</th><th>임실</th><th>전주</th><th>삼례</th><th>익산</th><th>강경</th><th>논산</th><th>계룡</th><th>서대전</th><th>신탄진</th><th>조치원</th><th>천안</th><th>평택</th><th>수원</th><th>영등포</th><th>용산</th></tr></thead><tbody><tr><td>1502</td><td>ITX-새마을</td><td>08:48</td><td>08:56</td><td>09:11</td><td>09:27</td><td>09:39</td><td>09:49</td><td></td><td>10:17</td><td></td><td>10:35</td><td></td><td>11:01</td><td>11:19</td><td>11:35</td><td>11:48</td><td>12:03</td><td>12:24</td><td>12:36</td><td>12:56</td><td>13:20</td><td>13:29</td></tr><tr><td>1506</td><td>ITX-새마을</td><td>14:10</td><td>14:19</td><td>14:34</td><td>14:50</td><td>15:02</td><td>15:13</td><td>15:27</td><td>15:44</td><td>15:53</td><td>16:06</td><td>16:25</td><td>16:35</td><td>16:53</td><td>17:09</td><td>17:22</td><td>17:38</td><td>17:59</td><td>18:12</td><td>18:31</td><td>18:57</td><td>19:06</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">용산 →&nbsp;여수 ITX-새마을 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>용산</th><th>영등포</th><th>수원</th><th>평택</th><th>천안</th><th>조치원</th><th>서대전</th><th>계룡</th><th>논산</th><th>강경</th><th>익산</th><th>삼례</th><th>전주</th><th>오수</th><th>남원</th><th>곡성</th><th>구례구</th><th>순천</th><th>여천</th><th>여수엑스포</th></tr></thead><tbody><tr><td>1501</td><td>ITX-새마을</td><td>07:14</td><td>07:23</td><td>07:45</td><td>08:05</td><td>08:18</td><td>08:39</td><td>09:07</td><td>09:22</td><td>09:41</td><td>09:50</td><td>10:11</td><td></td><td>10:27</td><td></td><td>10:54</td><td>11:05</td><td>11:17</td><td>11:33</td><td>11:48</td><td>11:56</td></tr><tr><td>1505</td><td>ITX-새마을</td><td>16:38</td><td>16:46</td><td>17:09</td><td>17:28</td><td>17:41</td><td>18:01</td><td>18:28</td><td>18:44</td><td>19:02</td><td>19:11</td><td>19:31</td><td>19:41</td><td>19:50</td><td>20:10</td><td>20:20</td><td>20:30</td><td>20:42</td><td>20:59</td><td>21:13</td><td>21:22</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">전국 기차 시간표 및 운임 조회</h2>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #ktx-live-app-v2 { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 1px solid #e2e8f0; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.06); min-height: 800px; }
        .ktx-top-bar-v2 { background: #0045e6; padding: 15px 20px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .ktx-top-bar-v2 b { font-size: 17px; }
        .ktx-live-label-v2 { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 900; animation: ktx_pulse_v2 1.5s infinite; }
        @keyframes ktx_pulse_v2 { 50% { opacity: 0.4; } }
        .ktx-search-box-v2 { padding: 15px; background: #f8fafc; border-bottom: 1px solid #eee; }
        .ktx-input-flex-v2 { display: flex; gap: 8px; margin-bottom: 10px; }
        .ktx-input-flex-v2 input { flex: 1; min-width: 0; padding: 12px; border-radius: 8px; border: 1px solid #cbd5e1; font-size: 16px !important; outline: none; background: #fff; -webkit-appearance: none; }
        #ktx-btn-submit-v2 { width: 100%; padding: 15px; background: #64748b; color: #fff; border: none; border-radius: 8px; cursor: pointer; font-weight: bold; font-size: 16px; transition: all 0.3s; height: 50px; }
        #ktx-btn-submit-v2:hover { background: #475569; }
        #ktx-btn-submit-v2.is-searching { background: #6366f1 !important; cursor: wait; }
        .ktx-memo-area-v2 { padding: 12px 15px; background: #fffbeb; color: #92400e; font-size: 14px; line-height: 1.6; border-top: 1px solid #fef3c7; display: none; word-break: keep-all; min-height: 45px; }
        .ktx-main-table-v2 { width: 100%; border-collapse: collapse; table-layout: fixed; border: none; min-height: 700px; }
        .ktx-main-table-v2 th { font-size: 13px; color: #64748b; padding: 12px 2px; background: #f1f5f9; border-bottom: 1px solid #e2e8f0; text-align: center; }
        .ktx-main-table-v2 td { padding: 15px 4px; border-bottom: none !important; text-align: center; vertical-align: middle; }
        .ktx-status-text-v2 { color: #e11d48; font-weight: 800; font-size: 14px; margin: 3px 0; white-space: nowrap; letter-spacing: -0.5px; }
        .ktx-grade-name-v2 { font-size: 16px; font-weight: 800; color: #0045e6; line-height: 1.2; display: block; }
        .ktx-train-no-v2 { font-size: 11px; color: #94a3b8; display: block; margin-top: 2px; }
        .v-tag-ok-v2 { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        .v-tag-duration-v2 { font-size: 10px; color: #0045e6; background: #eff6ff; padding: 1px 4px; border-radius: 3px; border: 1px solid #dbeafe; display: inline-block; margin-top: 4px; font-weight: bold; }
        .ktx-time-info-v2 { color: #475569; font-size: 12px; font-weight: 600; }
        .ktx-station-name-v2 { font-size: 14px; font-weight: 700; color: #1e293b; }

        .ktx-badge-soon-v2 { 
            display: inline-block;
            background: #e11d48; 
            color: #fff; 
            padding: 4px 10px; 
            border-radius: 6px; 
            font-size: 11px; 
            font-weight: 900; 
            letter-spacing: -0.2px;
            margin-bottom: 4px;
            box-shadow: 0 2px 4px rgba(225, 29, 72, 0.2);
            animation: ktx_v4_pulse_v2 1.2s infinite ease-in-out; 
        }
        @keyframes ktx_v4_pulse_v2 { 0% { opacity: 1; transform: scale(1); } 50% { opacity: 0.6; transform: scale(0.96); } 100% { opacity: 1; transform: scale(1); } }

        .ktx-loading-v2 { opacity: 0.3; }
        .ktx-row-fade-v2 { animation: ktxFadeInUp_v2 0.5s ease-out forwards; opacity: 0; }
        @keyframes ktxFadeInUp_v2 { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }

        .ktx-voice-btn-v2 { padding: 4px 12px; border-radius: 15px; border: 2px solid rgba(255,255,255,0.6); background: rgba(0,0,0,0.15); font-size: 11px; font-weight: 900; color: #fff; cursor: pointer; display: inline-flex; align-items: center; gap: 4px; height: 26px; transition: 0.2s; line-height: 1; margin-left:10px; }
        .ktx-voice-btn-v2.active { background: #fff; color: #0045e6; border-color: #fff; box-shadow: 0 0 10px rgba(255,255,255,0.3); }

        .ktx-pagination-v2 { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 20px; background: #fff; border-top: 1px solid #f1f5f9; }
        .ktx-page-btn-v2 { padding: 8px 16px; border: 1px solid #e2e8f0; border-radius: 6px; font-size: 13px; color: #64748b; background: #fff; cursor: pointer; transition: 0.2s; }
        .ktx-page-btn-v2:hover:not(:disabled) { background: #f1f5f9; border-color: #cbd5e1; }
        .ktx-page-btn-v2:disabled { opacity: 0.4; cursor: not-allowed; }
        .ktx-page-info-v2 { font-size: 14px; font-weight: bold; color: #0045e6; }
    </style>

    <div id="ktx-live-app-v2">
        <div class="ktx-top-bar-v2">
            <div style="display: flex; align-items: center;">
                <b><span id="ktx-live-clock-v2" style="font-size:14px; font-weight:bold; opacity:1;"></span></b>
                <button class="ktx-voice-btn-v2" id="ktx-voice-toggle-v2" onclick="toggleKtxVoiceV2()">
                    <span class="v-ico-v2">🔈</span> <span class="v-txt-v2">음성 끔</span>
                </button>
            </div>
            <div class="ktx-live-label-v2">LIVE</div>
        </div>
        <div class="ktx-search-box-v2">
            <div class="ktx-input-flex-v2">
                <input type="text" id="ktx-dep-field-v2" placeholder="출발역" value="">
                <input type="text" id="ktx-arr-field-v2" placeholder="도착역" value="">
            </div>
            <button id="ktx-btn-submit-v2" onclick="runKtxLiveSearchV2(true)">열차 시간 조회하기</button>
        </div>
        
        <table class="ktx-main-table-v2">
            <thead><tr><th style="width: 24%;">열차정보</th><th style="width: 24%;">출발역</th><th style="width: 28%;">출발예정</th><th style="width: 24%;">도착역</th></tr></thead>
            <tbody id="ktx-live-tbody-v2">
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr id="ktx-init-msg-v2"><td colspan="4" style="position:absolute; width:100%; left:0; padding:70px 0; color:#94a3b8; font-size:13px; text-align:center;">역 이름을 입력하고 조회해 주세요.</td></tr>
            </tbody>
        </table>

        <div id="ktx-pagination-ctrl-v2" class="ktx-pagination-v2" style="display:none;">
            <button class="ktx-page-btn-v2" id="ktx-prev-page-v2" onclick="changeKtxPageV2(-1)">&laquo; 이전</button>
            <span class="ktx-page-info-v2"><span id="ktx-current-page-v2">1</span> / <span id="ktx-total-pages-v2">1</span></span>
            <button class="ktx-page-btn-v2" id="ktx-next-page-v2" onclick="changeKtxPageV2(1)">다음 &raquo;</button>
        </div>

        <div id="ktx-memo-display-v2" class="ktx-memo-area-v2"></div>

        <div style="padding: 10px 18px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #f1f5f9; display:flex; justify-content:space-between;">
            <span>1분 간격 자동 갱신</span><span>최근: <span id="ktx-last-update-v2">--:--:--</span></span>
        </div>
    </div>

    <script>
    let ktxStationListV2 = [];
    const ktxKeyFinalV2 = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    window.ktxVoiceEnabledV2 = false;
    window.ktxAnnouncedV2 = new Set();
    let currentKtxFullDataV2 = [];
    let ktxCurrentPageV2 = 1;
    const ktxItemsPerPageV2 = 10;

    function toggleKtxVoiceV2() {
        window.ktxVoiceEnabledV2 = !window.ktxVoiceEnabledV2;
        const btn = document.getElementById('ktx-voice-toggle-v2');
        const txt = btn.querySelector('.v-txt-v2'), ico = btn.querySelector('.v-ico-v2');
        if(window.ktxVoiceEnabledV2) {
            btn.classList.add('active'); txt.innerText = "음성 켬"; ico.innerText = "🔊";
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); txt.innerText = "음성 끔"; ico.innerText = "🔈";
            window.speechSynthesis.cancel();
        }
    }

    function updateKtxClockV2() {
        const now = new Date();
        const clockEl = document.getElementById('ktx-live-clock-v2');
        if (clockEl) { clockEl.innerText = `${now.getMonth() + 1}.${now.getDate()} ${now.getHours().toString().padStart(2, '0')}:${now.getMinutes().toString().padStart(2, '0')} 기준`; }
    }
    setInterval(updateKtxClockV2, 1000);

    async function ktxMasterLoadV2() {
        updateKtxClockV2();
        ktxStationListV2.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinalV2}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())));
            const parser = new DOMParser();
            results.forEach(xmlStr => {
                const xml = parser.parseFromString(xmlStr, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!ktxStationListV2.find(s => s.id === id)) ktxStationListV2.push({ name, id });
                });
            });
            if(document.getElementById('ktx-dep-field-v2').value && document.getElementById('ktx-arr-field-v2').value) runKtxLiveSearchV2(false);
        } catch (e) { console.log("V2 Station data fail"); }
    }

    function renderKtxPageV2(page) {
        const tbody = document.getElementById('ktx-live-tbody-v2');
        const now = new Date();
        const start = (page - 1) * ktxItemsPerPageV2;
        const end = start + ktxItemsPerPageV2;
        const pageData = currentKtxFullDataV2.slice(start, end);
        let html = '';
        pageData.forEach((r, idx) => {
            const diffMs = r.depDate - now;
            const diffMin = Math.round(diffMs / 60000);
            
            if (window.ktxVoiceEnabledV2 && diffMin === 15) {
                const key = r.no + "_" + r.dep_n + "_" + r.dep_time;
                if (!window.ktxAnnouncedV2.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 ${r.dep_n}역에서 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnouncedV2.add(key);
                }
            }

            const soon = (diffMin <= 15 && diffMin >= 0) ? '<span class="ktx-badge-soon-v2">출발임박</span>' : '';
            const durationTotal = Math.round((r.arrDate - r.depDate) / 60000);
            const h_dur = Math.floor(durationTotal / 60);
            const m_dur = durationTotal % 60;
            const durationStr = `${String(h_dur).padStart(2, '0')}:${String(m_dur).padStart(2, '0')} 소요`;
            
            let timeStatus = '';
            if (diffMin < 0) {
                timeStatus = '<div class="ktx-status-text-v2" style="color:#64748b;">운행종료</div>';
            } else {
                timeStatus = `<div class="ktx-status-text-v2">${diffMin===0?'출발대기':diffMin+'분 후 출발'}</div>`;
            }

            html += `<tr class="ktx-row-fade-v2" style="animation-delay:${idx*0.05}s;"><td><span class="ktx-train-no-v2">${r.no}호</span><span class="ktx-grade-name-v2">${r.grade}</span><span class="v-tag-ok-v2">정상운행</span></td><td><div class="ktx-station-name-v2">${r.dep_n}역</div><span class="v-tag-duration-v2">${durationStr}</span></td><td>${soon}${timeStatus}<div class="ktx-time-info-v2">${r.dep_time} 출발</div></td><td><div class="ktx-station-name-v2">${r.arr_n}역</div><div class="ktx-time-info-v2" style="color:#0045e6;">${r.arr_time} 도착</div></td></tr>`;
        });
        tbody.innerHTML = html;
        document.getElementById('ktx-current-page-v2').innerText = page;
        document.getElementById('ktx-prev-page-v2').disabled = (page === 1);
        document.getElementById('ktx-next-page-v2').disabled = (page === Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2));
    }

    function changeKtxPageV2(dir) {
        const total = Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2);
        let target = ktxCurrentPageV2 + dir;
        if (target >= 1 && target <= total) { ktxCurrentPageV2 = target; renderKtxPageV2(ktxCurrentPageV2); }
    }

    async function runKtxLiveSearchV2(manual = false) {
        const btn = document.getElementById('ktx-btn-submit-v2');
        let d_val = document.getElementById('ktx-dep-field-v2').value.trim();
        let a_val = document.getElementById('ktx-arr-field-v2').value.trim();
        if (!d_val || !a_val) { if(manual) alert("출발역과 도착역을 모두 입력하세요."); return; }
        
        btn.innerText = "데이터 검색 중..."; btn.classList.add('is-searching'); btn.disabled = true;
        d_val = d_val.replace(/역$/, ''); a_val = a_val.replace(/역$/, '');
        
        const tbody = document.getElementById('ktx-live-tbody-v2');
        const memoDiv = document.getElementById('ktx-memo-display-v2');
        const pgCtrl = document.getElementById('ktx-pagination-ctrl-v2');
        if(manual) tbody.classList.add('ktx-loading-v2');

        const findStation = (n) => {
            if (n === "여수" || n === "여수엑스포") return { name: "여수EXPO", id: "NAT041993" };
            return ktxStationListV2.find(s => s.name === n || s.name === n + '역');
        }
        const dep = findStation(d_val); const arr = findStation(a_val);
        if (!dep || !arr) { 
            tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0;">역 이름을 정확히 입력해 주세요. (예: 부산, 동대구)</td></tr>';
            pgCtrl.style.display = 'none';
            tbody.classList.remove('ktx-loading-v2');
            btn.innerText = "열차 시간 조회하기"; btn.classList.remove('is-searching'); btn.disabled = false; 
            return; 
        }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live_v2');
        fd.append('dep_id', dep.id); fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            const resData = await response.json();
            const now = new Date();
            currentKtxFullDataV2 = resData.trains.map(item => {
                const parseTrainTime = (str) => { if (!str || str.length < 12) return new Date(0); return new Date(str.substring(0,4), str.substring(4,6)-1, str.substring(6,8), str.substring(8,10), str.substring(10,12)); };
                item.depDate = parseTrainTime(item.raw_dep); item.arrDate = parseTrainTime(item.raw_arr);
                if (item.arrDate < item.depDate) item.arrDate.setDate(item.arrDate.getDate() + 1);
                return item;
            }).sort((a, b) => a.depDate - b.depDate);

            if (currentKtxFullDataV2.length > 0) {
                const totalPages = Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2);
                document.getElementById('ktx-total-pages-v2').innerText = totalPages;
                pgCtrl.style.display = 'flex';
                
                let firstUpcomingIdx = currentKtxFullDataV2.findIndex(t => t.depDate.getTime() > (now.getTime() - 300000));
                if (firstUpcomingIdx === -1) firstUpcomingIdx = 0;
                ktxCurrentPageV2 = Math.floor(firstUpcomingIdx / ktxItemsPerPageV2) + 1;

                if(resData.memo_template) {
                    const f_t = currentKtxFullDataV2[0].dep_time;
                    const l_t = currentKtxFullDataV2[currentKtxFullDataV2.length-1].dep_time;
                    const scrollTips = [" 전체 시간표는 하단 페이징을 확인하세요.", " 모든 배차 정보를 페이지별로 확인 가능합니다."];
                    const randomTip = scrollTips[Math.floor(Math.random() * scrollTips.length)];
                    memoDiv.innerText = resData.memo_template.replace('{first_t}', f_t).replace('{last_t}', l_t) + randomTip;
                    memoDiv.style.display = 'block';
                }
                renderKtxPageV2(ktxCurrentPageV2);
                document.getElementById('ktx-last-update-v2').innerText = now.getHours().toString().padStart(2,'0')+':'+now.getMinutes().toString().padStart(2,'0')+':'+now.getSeconds().toString().padStart(2,'0');
            } else {
                tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0; color:#94a3b8;">오늘 운행되는 열차 정보가 없습니다.</td></tr>';
                pgCtrl.style.display = 'none';
            }
        } catch (e) { tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0;">데이터 통신 오류</td></tr>'; }

        tbody.classList.remove('ktx-loading-v2');
        btn.innerText = "열차 시간 조회하기"; btn.classList.remove('is-searching'); btn.disabled = false;
    }

    ktxMasterLoadV2();
    setInterval(() => { if(document.getElementById('ktx-dep-field-v2').value) runKtxLiveSearchV2(false); }, 60000);
    document.addEventListener('keypress', function(e) { if((e.target.id === 'ktx-dep-field-v2' || e.target.id === 'ktx-arr-field-v2') && e.keyCode === 13) runKtxLiveSearchV2(true); });
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">용산역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">용산역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '11';
            let curName = '용산';
            let altCity = '36020';
            let altName = '여수';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">용산역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">17℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">용산역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%95%84%EC%9D%B4%ED%8C%8C%ED%81%AC%EB%AA%B0+%EC%9A%A9%EC%82%B0%EC%A0%90+%EC%84%9C%EC%9A%B8%ED%8A%B9%EB%B3%84%EC%8B%9C+%EC%9A%A9%EC%82%B0%EA%B5%AC+%ED%95%9C%EA%B0%95%EB%A1%9C3%EA%B0%80+40-999" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">아이파크몰 용산점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">쇼핑,유통&gt;쇼핑센터,할인매장</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">서울특별시 용산구 한강로3가 40-999</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%85%8C%EB%94%94%EB%B5%88%EB%A5%B4%ED%95%98%EC%9A%B0%EC%8A%A4+%EC%9A%A9%EC%82%B0%EC%A0%90+%EC%84%9C%EC%9A%B8%ED%8A%B9%EB%B3%84%EC%8B%9C+%EC%9A%A9%EC%82%B0%EA%B5%AC+%ED%95%9C%EA%B0%95%EB%A1%9C2%EA%B0%80+49-1+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">테디뵈르하우스 용산점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;카페,디저트</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">서울특별시 용산구 한강로2가 49-1 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%8C%A4%EC%8C%A4%EC%8C%A4+%EC%9A%A9%EC%82%B0%EC%A0%90+%EC%84%9C%EC%9A%B8%ED%8A%B9%EB%B3%84%EC%8B%9C+%EC%9A%A9%EC%82%B0%EA%B5%AC+%ED%95%9C%EA%B0%95%EB%A1%9C2%EA%B0%80+47-3+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">쌤쌤쌤 용산점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;양식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">서울특별시 용산구 한강로2가 47-3 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%AA%BD%ED%83%84+%EC%84%9C%EC%9A%B8%ED%8A%B9%EB%B3%84%EC%8B%9C+%EC%9A%A9%EC%82%B0%EA%B5%AC+%ED%95%9C%EA%B0%95%EB%A1%9C1%EA%B0%80+251-1" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">몽탄</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;육류,고기요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">서울특별시 용산구 한강로1가 251-1</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%89%90%EC%9D%B4%ED%81%AC%EC%89%91+%EC%9A%A9%EC%82%B0+%EC%95%84%EC%9D%B4%ED%8C%8C%ED%81%AC%EB%AA%B0%EC%A0%90+%EC%84%9C%EC%9A%B8%ED%8A%B9%EB%B3%84%EC%8B%9C+%EC%9A%A9%EC%82%B0%EA%B5%AC+%ED%95%9C%EA%B0%95%EB%A1%9C3%EA%B0%80+40-999+%EC%95%84%EC%9D%B4%ED%8C%8C%ED%81%AC%EB%AA%B0+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">쉐이크쉑 용산 아이파크몰점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">양식&gt;햄버거</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">서울특별시 용산구 한강로3가 40-999 아이파크몰 1층</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">여수역 실시간 주차장 요금</h4>
        
                    <div class="parking-list-container">
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 여수엑스포역                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">600원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">300원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">10,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 전라남도 여수시 덕충동 61-7<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 062-941-0874                        </div>
                    </div>
                            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">용산역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 용산역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%9A%A9%EC%82%B0%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="350" height="350" src="https://krailroad.co.kr/wp-content/uploads/2026/04/전라선-새마을호-시간표-ITX-여수역-용산역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간.jpg" alt="전라선-새마을호-시간표-ITX-여수역-용산역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간" class="wp-image-20454" srcset="https://krailroad.co.kr/wp-content/uploads/2026/04/전라선-새마을호-시간표-ITX-여수역-용산역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간.jpg 350w, https://krailroad.co.kr/wp-content/uploads/2026/04/전라선-새마을호-시간표-ITX-여수역-용산역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/04/전라선-새마을호-시간표-ITX-여수역-용산역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간-150x150.jpg 150w" sizes="auto, (max-width: 350px) 100vw, 350px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>호남선 새마을호 시간표 및 요금 (용산역~광주역~목포역) 총정리</title>
		<link>https://krailroad.co.kr/%ed%98%b8%eb%82%a8%ec%84%a0-%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%9a%94%ea%b8%88-%ec%9a%a9%ec%82%b0%ec%97%ad%ea%b4%91%ec%a3%bc%ec%97%ad%eb%aa%a9%ed%8f%ac/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Fri, 10 Apr 2026 05:11:54 +0000</pubDate>
				<category><![CDATA[실시간 열차 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[호남선 새마을호 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=20411</guid>

					<description><![CDATA[호남선 새마을호 시간표를 이용해 이동하는 것은 너른 평야를 가로지르는 철길에 예나 지금이나 전라권 주민들의 삶을 지탱하는 소중한 연결고리입니다. 과거 도시로 떠나던 이들의 꿈과 애환이 서린 &#8216;이농 열차&#8217;의 기억은 이제 소음이 적고 쾌적한 ITX-새마을과 ITX-마음이라는 현대적인 준고속 열차로 이어지고 있는데요. 단순한 이동 수단을 넘어 창밖으로 펼쳐지는 지평선을 감상하며 남북을 관통하는 이 길은 기차 여행 본연의 여유를 ... <a title="호남선 새마을호 시간표 및 요금 (용산역~광주역~목포역) 총정리" class="read-more button" href="https://krailroad.co.kr/%ed%98%b8%eb%82%a8%ec%84%a0-%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%9a%94%ea%b8%88-%ec%9a%a9%ec%82%b0%ec%97%ad%ea%b4%91%ec%a3%bc%ec%97%ad%eb%aa%a9%ed%8f%ac/" aria-label="호남선 새마을호 시간표 및 요금 (용산역~광주역~목포역) 총정리 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">호남선 새마을호 시간표를 이용해 이동하는 것은 너른 평야를 가로지르는 철길에 예나 지금이나 전라권 주민들의 삶을 지탱하는 소중한 연결고리입니다. 과거 도시로 떠나던 이들의 꿈과 애환이 서린 &#8216;이농 열차&#8217;의 기억은 이제 소음이 적고 쾌적한 ITX-새마을과 ITX-마음이라는 현대적인 준고속 열차로 이어지고 있는데요. 단순한 이동 수단을 넘어 창밖으로 펼쳐지는 지평선을 감상하며 남북을 관통하는 이 길은 기차 여행 본연의 여유를 간직하고 있습니다.</p>



<p class="wp-block-paragraph">호남선 새마을호 시간표를 볼 때 가장 주의해야 할 점은 본인의 목적지가 목포역인지 아니면 광주역인지 정확히 구분하는 것입니다. 용산역에서 출발해 광주역으로 가는 열차와 <a href="https://krailroad.co.kr/%eb%aa%a9%ed%8f%ac%ec%97%ad-itx-%ec%83%88%eb%a7%88%ec%9d%84-itx-%eb%a7%88%ec%9d%8c-%ec%8b%9c%ea%b0%84%ed%91%9c-%ed%98%b8%eb%82%a8%ec%84%a0-%eb%85%b8%ec%84%a0-%ec%a0%95%ec%b0%a8%ec%97%ad-%ec%9a%94/">목포역</a>으로 향하는 노선이 각각 운영되며, 상행선 역시 각 종착지에서 용산으로 돌아오는 왕복 체계가 이며, 특히 많은 분이 혼동하시는 부분 중 하나가 <a href="https://krailroad.co.kr/%ea%b4%91%ec%a3%bc%ec%86%a1%ec%a0%95%ec%97%ad-ktx-%ec%9a%a9%ec%82%b0-%eb%aa%a9%ed%8f%ac-%eb%b6%80%ec%a0%84%ed%96%89-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%9a%94%ea%b8%88-%ec%a0%95%ec%b0%a8%ec%97%ad%ea%b3%bc/">광주송정역</a>인데, 이곳은 KTX가 주로 서는 고속 전용 역사이지만 ITX-새마을호, ITX-마음 열차도 적지만 운행을 한다는 점을 아셔야 합니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>호남선 새마을호 시간표 안내</strong></h2>



<h3 class="wp-block-heading">편의를 고려한 실시간 시스템</h3>



<p class="wp-block-paragraph">이제부터는 호남선 새마을호 시간표를 확인하기 위해 역사의 형광등 간판을 보거나 멀리 떨어진 전광판을 뚫어지게 쳐다보실 필요가 없습니다. 제가 준비한 자료는 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a> 공식 자료와 공공 API를 직접 연동되어 1분마다 스스로 갱신되는 데이터는 열차의 출발 시간과 도착 시간을 실시간으로 보여주는데요. 특히 시각장애인이나 스마트폰 확인이 어려운 이용객들을 위해 출발 15분 전부터 안내 메시지가 나오는 음성 로직을 넣어두었습니다. 상단 메뉴에서 음성 설정을 활성화하면 대기실에 앉아서도 내 열차의 상태를 귀로 먼저 확인할 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">내부 시설과 요금 &amp; 맞춤 정보</h3>



<p class="wp-block-paragraph">호남선 새마을호 시간표를 이용한 열차는 일반 철도 노선이지만 최신 편의시설만큼은 고속열차 못지않습니다. 차내에는 수유실이 마련되어 있어 아이와 함께하는 가족 여행객도 안심할 수 있고, 자동판매기와 제세동기, 장애인 화장실 등 안전 설비가 잘 갖춰져 있는데요. KTX와 비교했을 때 상대적으로 합리적인 요금으로 운영되고 있습니다(<a href="https://krailroad.co.kr/%ed%98%b8%eb%82%a8%ec%84%a0-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%9a%a9%ec%82%b0%ec%97%ad%eb%aa%a9%ed%8f%ac%ec%97%ad-%ec%9a%94%ea%b8%88-%ec%8b%a4%ec%8b%9c%ea%b0%84/">호남선 무궁화호 시간표는 여기 참고</a>).</p>



<p class="wp-block-paragraph">그리고 기차역에 내린 뒤의 연관된 정보를 페이지 하나로 모두 해결할 수 있습니다. 용산역 주차장 요금부터 주변 맛집, 그리고 역사 광장에서 시내로 나가는 실시간 버스 도착 현황까지 한곳에 모았는데요. 여기에 호남 지역 특유의 맛깔나는 식당 리스트와 실시간 날씨 데이터까지 연동되어 있어, 도착과 동시에 어디로 갈지 고민할 필요 없어 아래 자료를 이용하실 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">목포 ↔&nbsp;용산 첫차 &amp; 막차</h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">목포<br>↓<br>용산</td><td><span class="type-label type-itx">ITX-새마을</span></td><td><span class="train-detail">1402호</span><div class="time-display">10:22</div><div class="arrival-info">15:06 도착</div></td><td><span class="train-detail">1410호</span><div class="time-display">17:38</div><div class="arrival-info">22:15 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">광주<br>↓<br>용산</td><td><span class="type-label type-itx">ITX-새마을</span></td><td><span class="train-detail">1422호</span><div class="time-display">06:53</div><div class="arrival-info">10:53 도착</div></td><td><span class="train-detail">1430호</span><div class="time-display">18:29</div><div class="arrival-info">22:30 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">익산<br>↓<br>용산</td><td><span class="type-label type-itx">ITX-새마을</span></td><td><span class="train-detail">1422호</span><div class="time-display">08:06</div><div class="arrival-info">10:53 도착</div></td><td><span class="train-detail">1430호</span><div class="time-display">19:42</div><div class="arrival-info">22:30 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">용산<br>↓<br>익산</td><td><span class="type-label type-itx">ITX-새마을</span></td><td><span class="train-detail">1421호</span><div class="time-display">06:24</div><div class="arrival-info">09:48 도착</div></td><td><span class="train-detail">1429호</span><div class="time-display">20:03</div><div class="arrival-info">22:56 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">용산<br>↓<br>광주</td><td><span class="type-label type-itx">ITX-새마을</span></td><td><span class="train-detail">1421호</span><div class="time-display">06:24</div><div class="arrival-info">11:07 도착</div></td><td><span class="train-detail">1429호</span><div class="time-display">20:03</div><div class="arrival-info">00:08 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">용산<br>↓<br>목포</td><td><span class="type-label type-itx">ITX-새마을</span></td><td><span class="train-detail">1401호</span><div class="time-display">07:34</div><div class="arrival-info">12:48 도착</div></td><td><span class="train-detail">1409호</span><div class="time-display">19:11</div><div class="arrival-info">23:56 도착</div></td></tr></tbody></table></div>


    
    <h2>용산 ↔ 목포 운임 요금표</h2>

    <div id="ktx-app-fl" style="margin-bottom: 40px;">
        <style>
            #ktx-app-fl { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 1px solid #e2e8f0; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.06); }
            .fl-main-table { width: 100%; border-collapse: collapse; table-layout: fixed; border: none; }
            .fl-main-table th { font-size: 13px; color: #64748b; padding: 12px 2px; background: #f8fafc; border-bottom: 1px solid #e2e8f0; text-align: center; font-weight: bold; }
            .fl-main-table td { padding: 15px 4px; border-bottom: 1px solid #f1f5f9; text-align: center; vertical-align: middle; }
            
            .u-no-top { font-size: 11px; color: #94a3b8; display: block; font-weight: 500; margin-bottom: 1px; }
            .u-grade-bottom { font-size: 16px; font-weight: 900; color: #0045e6; display: block; line-height: 1.2; }
            .t-via { font-size: 12px; color: #64748b; display: block; margin-top: 4px; font-weight: 500; }
            
            .t-price { font-weight: 700; font-size: 14px; color: #1e293b; }
            .t-premium { color: #059669; }
            .t-special { color: #e11d48; }
            
            .t-none { display: inline-block; padding: 3px 10px; background: #f8fafc; color: #cbd5e1; border: 1px solid #f1f5f9; border-radius: 6px; font-size: 11px; font-weight: 600; }

            @media (max-width: 600px) {
                .fl-main-table th { font-size: 12px; }
                .u-grade-bottom { font-size: 14px; }
                .t-price { font-size: 12px; }
            }
        </style>

        <div style="overflow-x: auto;">
            <table class="fl-main-table">
                <thead>
                    <tr>
                        <th style="width: 30%;">열차 / 경유지</th>
                        <th style="width: 23%;">일반실</th>
                        <th style="width: 23%;">우등실</th>
                        <th style="width: 24%;">특실</th>
                    </tr>
                </thead>
                <tbody>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 목포</span>
                            <span class="u-grade-bottom">ITX</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                39,600원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 목포</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">공주</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                52,800원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                63,400원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                73,900원                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 목포</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">김제,장성</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                44,700원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                62,600원                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">용산 ↔ 목포</span>
                            <span class="u-grade-bottom">무궁화</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                26,600원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                    </tbody>
            </table>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">목포 →&nbsp;용산 ITX-새마을 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>목포</th><th>일로</th><th>몽탄</th><th>무안</th><th>함평</th><th>다시</th><th>나주</th><th>광주송정</th><th>장성</th><th>백양사</th><th>정읍</th><th>신태인</th><th>김제</th><th>익산</th><th>함열</th><th>강경</th><th>논산</th><th>연산</th><th>계룡</th><th>서대전</th><th>신탄진</th><th>부강</th><th>조치원</th><th>전의</th><th>천안</th><th>평택</th><th>수원</th><th>영등포</th><th>용산</th></tr></thead><tbody><tr><td>1402</td><td>ITX-새마을</td><td>10:22</td><td>10:32</td><td>10:39</td><td></td><td>10:47</td><td></td><td>10:57</td><td>11:09</td><td>11:23</td><td></td><td>11:40</td><td>11:49</td><td>11:58</td><td>12:12</td><td></td><td>12:31</td><td>12:41</td><td></td><td>12:59</td><td>13:15</td><td></td><td></td><td>13:40</td><td></td><td>14:01</td><td>14:13</td><td>14:33</td><td>14:57</td><td>15:06</td></tr><tr><td>1408</td><td>ITX-새마을</td><td>16:10</td><td>16:21</td><td>16:29</td><td>16:33</td><td>16:45</td><td>16:55</td><td>17:01</td><td>17:13</td><td>17:27</td><td>17:36</td><td>17:48</td><td>17:58</td><td>18:07</td><td>18:21</td><td>18:34</td><td>18:44</td><td>18:55</td><td>19:05</td><td>19:17</td><td>19:34</td><td>19:47</td><td>19:58</td><td>20:07</td><td>20:18</td><td>20:31</td><td>20:45</td><td>21:09</td><td>21:31</td><td>21:40</td></tr><tr><td>1410</td><td>ITX-새마을</td><td>17:38</td><td>17:48</td><td></td><td></td><td>18:00</td><td></td><td>18:10</td><td>18:22</td><td>18:37</td><td></td><td>18:54</td><td>19:03</td><td>19:11</td><td>19:25</td><td></td><td>19:44</td><td>19:54</td><td></td><td>20:12</td><td>20:28</td><td></td><td></td><td>20:53</td><td></td><td>21:14</td><td>21:26</td><td>21:46</td><td>22:06</td><td>22:15</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">광주 →&nbsp;용산 ITX-새마을 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>광주</th><th>장성</th><th>백양사</th><th>정읍</th><th>신태인</th><th>김제</th><th>익산</th><th>함열</th><th>강경</th><th>논산</th><th>계룡</th><th>서대전</th><th>신탄진</th><th>부강</th><th>조치원</th><th>천안</th><th>성환</th><th>평택</th><th>오산</th><th>수원</th><th>안양</th><th>영등포</th><th>용산</th></tr></thead><tbody><tr><td>1422</td><td>ITX-새마을</td><td>06:53</td><td>07:17</td><td></td><td>07:34</td><td>07:43</td><td>07:52</td><td>08:06</td><td></td><td></td><td>08:32</td><td>08:50</td><td>09:06</td><td></td><td></td><td>09:31</td><td>09:52</td><td></td><td>10:04</td><td></td><td>10:24</td><td></td><td>10:44</td><td>10:53</td></tr><tr><td>1424</td><td>ITX-새마을</td><td>08:50</td><td>09:14</td><td>09:23</td><td>09:34</td><td>09:43</td><td>09:52</td><td>10:05</td><td></td><td>10:25</td><td>10:34</td><td>10:52</td><td>11:08</td><td></td><td></td><td>11:33</td><td>11:54</td><td></td><td></td><td></td><td>12:23</td><td></td><td>12:44</td><td>12:53</td></tr><tr><td>1426</td><td>ITX-새마을</td><td>13:32</td><td>13:56</td><td>14:05</td><td>14:16</td><td>14:25</td><td>14:34</td><td>14:48</td><td></td><td></td><td>15:14</td><td>15:32</td><td>15:48</td><td></td><td></td><td>16:13</td><td>16:34</td><td></td><td>16:47</td><td></td><td>17:06</td><td></td><td>17:27</td><td>17:36</td></tr><tr><td>1428</td><td>ITX-새마을</td><td>14:59</td><td>15:27</td><td>15:37</td><td>15:49</td><td>15:58</td><td>16:07</td><td>16:22</td><td>16:35</td><td>16:45</td><td>16:56</td><td>17:16</td><td>17:33</td><td>17:47</td><td>17:57</td><td>18:06</td><td>18:28</td><td>18:37</td><td>18:45</td><td>18:57</td><td>19:08</td><td>19:21</td><td>19:39</td><td>19:48</td></tr><tr><td>1430</td><td>ITX-새마을</td><td>18:29</td><td>18:53</td><td></td><td>19:10</td><td>19:19</td><td>19:28</td><td>19:42</td><td></td><td>20:01</td><td>20:11</td><td>20:29</td><td>20:45</td><td></td><td></td><td>21:11</td><td>21:32</td><td></td><td></td><td></td><td>22:01</td><td></td><td>22:22</td><td>22:30</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">익산 →&nbsp;용산 ITX-새마을 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>익산</th><th>함열</th><th>강경</th><th>논산</th><th>연산</th><th>계룡</th><th>서대전</th><th>신탄진</th><th>부강</th><th>조치원</th><th>전의</th><th>천안</th><th>성환</th><th>평택</th><th>오산</th><th>수원</th><th>안양</th><th>영등포</th><th>용산</th></tr></thead><tbody><tr><td>1422</td><td>ITX-새마을</td><td>08:06</td><td></td><td></td><td>08:32</td><td></td><td>08:50</td><td>09:06</td><td></td><td></td><td>09:31</td><td></td><td>09:52</td><td></td><td>10:04</td><td></td><td>10:24</td><td></td><td>10:44</td><td>10:53</td></tr><tr><td>1424</td><td>ITX-새마을</td><td>10:05</td><td></td><td>10:25</td><td>10:34</td><td></td><td>10:52</td><td>11:08</td><td></td><td></td><td>11:33</td><td></td><td>11:54</td><td></td><td></td><td></td><td>12:23</td><td></td><td>12:44</td><td>12:53</td></tr><tr><td>1402</td><td>ITX-새마을</td><td>12:12</td><td></td><td>12:31</td><td>12:41</td><td></td><td>12:59</td><td>13:15</td><td></td><td></td><td>13:40</td><td></td><td>14:01</td><td></td><td>14:13</td><td></td><td>14:33</td><td></td><td>14:57</td><td>15:06</td></tr><tr><td>1442</td><td>ITX-새마을</td><td>14:18</td><td></td><td></td><td>14:45</td><td></td><td>15:03</td><td>15:19</td><td>15:32</td><td></td><td>15:48</td><td></td><td>16:09</td><td></td><td>16:22</td><td></td><td>16:42</td><td></td><td>17:06</td><td>17:15</td></tr><tr><td>1426</td><td>ITX-새마을</td><td>14:48</td><td></td><td></td><td>15:14</td><td></td><td>15:32</td><td>15:48</td><td></td><td></td><td>16:13</td><td></td><td>16:34</td><td></td><td>16:47</td><td></td><td>17:06</td><td></td><td>17:27</td><td>17:36</td></tr><tr><td>1428</td><td>ITX-새마을</td><td>16:22</td><td>16:35</td><td>16:45</td><td>16:56</td><td></td><td>17:16</td><td>17:33</td><td>17:47</td><td>17:57</td><td>18:06</td><td></td><td>18:28</td><td>18:37</td><td>18:45</td><td>18:57</td><td>19:08</td><td>19:21</td><td>19:39</td><td>19:48</td></tr><tr><td>1408</td><td>ITX-새마을</td><td>18:21</td><td>18:34</td><td>18:44</td><td>18:55</td><td>19:05</td><td>19:17</td><td>19:34</td><td>19:47</td><td>19:58</td><td>20:07</td><td>20:18</td><td>20:31</td><td></td><td>20:45</td><td></td><td>21:09</td><td></td><td>21:31</td><td>21:40</td></tr><tr><td>1410</td><td>ITX-새마을</td><td>19:25</td><td></td><td>19:44</td><td>19:54</td><td></td><td>20:12</td><td>20:28</td><td></td><td></td><td>20:53</td><td></td><td>21:14</td><td></td><td>21:26</td><td></td><td>21:46</td><td></td><td>22:06</td><td>22:15</td></tr><tr><td>1430</td><td>ITX-새마을</td><td>19:42</td><td></td><td>20:01</td><td>20:11</td><td></td><td>20:29</td><td>20:45</td><td></td><td></td><td>21:11</td><td></td><td>21:32</td><td></td><td></td><td></td><td>22:01</td><td></td><td>22:22</td><td>22:30</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">용산 →&nbsp;목포 ITX-새마을 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>용산</th><th>영등포</th><th>안양</th><th>수원</th><th>오산</th><th>평택</th><th>성환</th><th>천안</th><th>조치원</th><th>신탄진</th><th>서대전</th><th>계룡</th><th>논산</th><th>강경</th><th>함열</th><th>익산</th><th>김제</th><th>신태인</th><th>정읍</th><th>백양사</th><th>장성</th><th>광주송정</th><th>나주</th><th>함평</th><th>무안</th><th>몽탄</th><th>일로</th><th>목포</th></tr></thead><tbody><tr><td>1401</td><td>ITX-새마을</td><td>07:34</td><td>07:46</td><td>07:58</td><td>08:12</td><td></td><td>08:32</td><td>08:40</td><td>08:50</td><td>09:12</td><td>09:28</td><td>09:44</td><td>10:00</td><td>10:21</td><td>10:30</td><td>10:39</td><td>10:51</td><td>11:04</td><td>11:12</td><td>11:22</td><td>11:33</td><td>11:43</td><td>11:57</td><td>12:07</td><td>12:19</td><td>12:25</td><td>12:30</td><td>12:38</td><td>12:48</td></tr><tr><td>1405</td><td>ITX-새마을</td><td>12:07</td><td>12:19</td><td></td><td>12:42</td><td>12:52</td><td>13:04</td><td></td><td>13:18</td><td>13:38</td><td></td><td>14:05</td><td>14:21</td><td>14:39</td><td>14:48</td><td></td><td>15:08</td><td>15:21</td><td>15:29</td><td>15:38</td><td></td><td>15:56</td><td>16:10</td><td>16:20</td><td>16:31</td><td></td><td>16:39</td><td>16:47</td><td>16:56</td></tr><tr><td>1409</td><td>ITX-새마을</td><td>19:11</td><td>19:19</td><td></td><td>19:42</td><td></td><td>20:01</td><td></td><td>20:14</td><td>20:34</td><td></td><td>21:01</td><td>21:17</td><td>21:35</td><td></td><td></td><td>22:01</td><td>22:14</td><td>22:23</td><td>22:32</td><td></td><td>22:50</td><td>23:05</td><td>23:22</td><td>23:34</td><td></td><td></td><td>23:46</td><td>23:56</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">용산 →&nbsp;광주 ITX-새마을 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>용산</th><th>영등포</th><th>안양</th><th>수원</th><th>서정리</th><th>평택</th><th>성환</th><th>천안</th><th>조치원</th><th>신탄진</th><th>서대전</th><th>계룡</th><th>논산</th><th>강경</th><th>함열</th><th>익산</th><th>김제</th><th>신태인</th><th>정읍</th><th>백양사</th><th>장성</th><th>극락강</th><th>광주</th></tr></thead><tbody><tr><td>1421</td><td>ITX-새마을</td><td>06:24</td><td>06:37</td><td>06:49</td><td>07:03</td><td>07:19</td><td>07:27</td><td>07:34</td><td>07:44</td><td>08:05</td><td>08:21</td><td>08:37</td><td>08:53</td><td>09:12</td><td>09:25</td><td>09:35</td><td>09:48</td><td>10:00</td><td>10:09</td><td>10:18</td><td>10:30</td><td>10:39</td><td>10:59</td><td>11:07</td></tr><tr><td>1423</td><td>ITX-새마을</td><td>08:44</td><td>08:52</td><td></td><td>09:15</td><td></td><td>09:34</td><td></td><td>09:48</td><td>10:08</td><td></td><td>10:35</td><td>10:51</td><td>11:09</td><td></td><td></td><td>11:35</td><td>11:48</td><td></td><td>12:02</td><td></td><td>12:20</td><td></td><td>12:45</td></tr><tr><td>1425</td><td>ITX-새마을</td><td>13:24</td><td>13:32</td><td></td><td>13:55</td><td>14:10</td><td>14:17</td><td></td><td>14:31</td><td>14:51</td><td>15:06</td><td>15:21</td><td>15:37</td><td>15:55</td><td>16:04</td><td></td><td>16:24</td><td>16:37</td><td></td><td>16:51</td><td>17:02</td><td>17:12</td><td></td><td>17:36</td></tr><tr><td>1427</td><td>ITX-새마을</td><td>15:14</td><td>15:23</td><td></td><td>15:46</td><td></td><td>16:05</td><td></td><td>16:18</td><td>16:43</td><td>16:59</td><td>17:14</td><td>17:29</td><td>17:48</td><td>17:57</td><td></td><td>18:17</td><td>18:29</td><td>18:38</td><td>18:47</td><td></td><td>19:05</td><td></td><td>19:29</td></tr><tr><td>1429</td><td>ITX-새마을</td><td>20:03</td><td>20:11</td><td></td><td>20:34</td><td></td><td>20:53</td><td></td><td>21:06</td><td>21:26</td><td></td><td>21:53</td><td>22:09</td><td>22:27</td><td>22:36</td><td></td><td>22:56</td><td>23:09</td><td>23:17</td><td>23:26</td><td></td><td>23:44</td><td></td><td>00:08</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">용산 →&nbsp;익산 ITX-새마을 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>용산</th><th>영등포</th><th>안양</th><th>수원</th><th>오산</th><th>서정리</th><th>평택</th><th>성환</th><th>천안</th><th>조치원</th><th>신탄진</th><th>서대전</th><th>계룡</th><th>논산</th><th>강경</th><th>함열</th><th>익산</th></tr></thead><tbody><tr><td>1421</td><td>ITX-새마을</td><td>06:24</td><td>06:37</td><td>06:49</td><td>07:03</td><td></td><td>07:19</td><td>07:27</td><td>07:34</td><td>07:44</td><td>08:05</td><td>08:21</td><td>08:37</td><td>08:53</td><td>09:12</td><td>09:25</td><td>09:35</td><td>09:48</td></tr><tr><td>1401</td><td>ITX-새마을</td><td>07:34</td><td>07:46</td><td>07:58</td><td>08:12</td><td></td><td></td><td>08:32</td><td>08:40</td><td>08:50</td><td>09:12</td><td>09:28</td><td>09:44</td><td>10:00</td><td>10:21</td><td>10:30</td><td>10:39</td><td>10:51</td></tr><tr><td>1423</td><td>ITX-새마을</td><td>08:44</td><td>08:52</td><td></td><td>09:15</td><td></td><td></td><td>09:34</td><td></td><td>09:48</td><td>10:08</td><td></td><td>10:35</td><td>10:51</td><td>11:09</td><td></td><td></td><td>11:35</td></tr><tr><td>1441</td><td>ITX-새마을</td><td>09:56</td><td>10:07</td><td></td><td>10:31</td><td></td><td></td><td>10:50</td><td></td><td>11:04</td><td>11:25</td><td>11:40</td><td>11:55</td><td>12:10</td><td>12:29</td><td></td><td></td><td>12:54</td></tr><tr><td>1405</td><td>ITX-새마을</td><td>12:07</td><td>12:19</td><td></td><td>12:42</td><td>12:52</td><td></td><td>13:04</td><td></td><td>13:18</td><td>13:38</td><td></td><td>14:05</td><td>14:21</td><td>14:39</td><td>14:48</td><td></td><td>15:08</td></tr><tr><td>1425</td><td>ITX-새마을</td><td>13:24</td><td>13:32</td><td></td><td>13:55</td><td></td><td>14:10</td><td>14:17</td><td></td><td>14:31</td><td>14:51</td><td>15:06</td><td>15:21</td><td>15:37</td><td>15:55</td><td>16:04</td><td></td><td>16:24</td></tr><tr><td>1427</td><td>ITX-새마을</td><td>15:14</td><td>15:23</td><td></td><td>15:46</td><td></td><td></td><td>16:05</td><td></td><td>16:18</td><td>16:43</td><td>16:59</td><td>17:14</td><td>17:29</td><td>17:48</td><td>17:57</td><td></td><td>18:17</td></tr><tr><td>1409</td><td>ITX-새마을</td><td>19:11</td><td>19:19</td><td></td><td>19:42</td><td></td><td></td><td>20:01</td><td></td><td>20:14</td><td>20:34</td><td></td><td>21:01</td><td>21:17</td><td>21:35</td><td></td><td></td><td>22:01</td></tr><tr><td>1429</td><td>ITX-새마을</td><td>20:03</td><td>20:11</td><td></td><td>20:34</td><td></td><td></td><td>20:53</td><td></td><td>21:06</td><td>21:26</td><td></td><td>21:53</td><td>22:09</td><td>22:27</td><td>22:36</td><td></td><td>22:56</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">전국 기차 시간표 및 운임 조회</h2>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #ktx-live-app-v2 { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 1px solid #e2e8f0; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.06); min-height: 800px; }
        .ktx-top-bar-v2 { background: #0045e6; padding: 15px 20px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .ktx-top-bar-v2 b { font-size: 17px; }
        .ktx-live-label-v2 { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 900; animation: ktx_pulse_v2 1.5s infinite; }
        @keyframes ktx_pulse_v2 { 50% { opacity: 0.4; } }
        .ktx-search-box-v2 { padding: 15px; background: #f8fafc; border-bottom: 1px solid #eee; }
        .ktx-input-flex-v2 { display: flex; gap: 8px; margin-bottom: 10px; }
        .ktx-input-flex-v2 input { flex: 1; min-width: 0; padding: 12px; border-radius: 8px; border: 1px solid #cbd5e1; font-size: 16px !important; outline: none; background: #fff; -webkit-appearance: none; }
        #ktx-btn-submit-v2 { width: 100%; padding: 15px; background: #64748b; color: #fff; border: none; border-radius: 8px; cursor: pointer; font-weight: bold; font-size: 16px; transition: all 0.3s; height: 50px; }
        #ktx-btn-submit-v2:hover { background: #475569; }
        #ktx-btn-submit-v2.is-searching { background: #6366f1 !important; cursor: wait; }
        .ktx-memo-area-v2 { padding: 12px 15px; background: #fffbeb; color: #92400e; font-size: 14px; line-height: 1.6; border-top: 1px solid #fef3c7; display: none; word-break: keep-all; min-height: 45px; }
        .ktx-main-table-v2 { width: 100%; border-collapse: collapse; table-layout: fixed; border: none; min-height: 700px; }
        .ktx-main-table-v2 th { font-size: 13px; color: #64748b; padding: 12px 2px; background: #f1f5f9; border-bottom: 1px solid #e2e8f0; text-align: center; }
        .ktx-main-table-v2 td { padding: 15px 4px; border-bottom: none !important; text-align: center; vertical-align: middle; }
        .ktx-status-text-v2 { color: #e11d48; font-weight: 800; font-size: 14px; margin: 3px 0; white-space: nowrap; letter-spacing: -0.5px; }
        .ktx-grade-name-v2 { font-size: 16px; font-weight: 800; color: #0045e6; line-height: 1.2; display: block; }
        .ktx-train-no-v2 { font-size: 11px; color: #94a3b8; display: block; margin-top: 2px; }
        .v-tag-ok-v2 { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        .v-tag-duration-v2 { font-size: 10px; color: #0045e6; background: #eff6ff; padding: 1px 4px; border-radius: 3px; border: 1px solid #dbeafe; display: inline-block; margin-top: 4px; font-weight: bold; }
        .ktx-time-info-v2 { color: #475569; font-size: 12px; font-weight: 600; }
        .ktx-station-name-v2 { font-size: 14px; font-weight: 700; color: #1e293b; }

        .ktx-badge-soon-v2 { 
            display: inline-block;
            background: #e11d48; 
            color: #fff; 
            padding: 4px 10px; 
            border-radius: 6px; 
            font-size: 11px; 
            font-weight: 900; 
            letter-spacing: -0.2px;
            margin-bottom: 4px;
            box-shadow: 0 2px 4px rgba(225, 29, 72, 0.2);
            animation: ktx_v4_pulse_v2 1.2s infinite ease-in-out; 
        }
        @keyframes ktx_v4_pulse_v2 { 0% { opacity: 1; transform: scale(1); } 50% { opacity: 0.6; transform: scale(0.96); } 100% { opacity: 1; transform: scale(1); } }

        .ktx-loading-v2 { opacity: 0.3; }
        .ktx-row-fade-v2 { animation: ktxFadeInUp_v2 0.5s ease-out forwards; opacity: 0; }
        @keyframes ktxFadeInUp_v2 { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }

        .ktx-voice-btn-v2 { padding: 4px 12px; border-radius: 15px; border: 2px solid rgba(255,255,255,0.6); background: rgba(0,0,0,0.15); font-size: 11px; font-weight: 900; color: #fff; cursor: pointer; display: inline-flex; align-items: center; gap: 4px; height: 26px; transition: 0.2s; line-height: 1; margin-left:10px; }
        .ktx-voice-btn-v2.active { background: #fff; color: #0045e6; border-color: #fff; box-shadow: 0 0 10px rgba(255,255,255,0.3); }

        .ktx-pagination-v2 { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 20px; background: #fff; border-top: 1px solid #f1f5f9; }
        .ktx-page-btn-v2 { padding: 8px 16px; border: 1px solid #e2e8f0; border-radius: 6px; font-size: 13px; color: #64748b; background: #fff; cursor: pointer; transition: 0.2s; }
        .ktx-page-btn-v2:hover:not(:disabled) { background: #f1f5f9; border-color: #cbd5e1; }
        .ktx-page-btn-v2:disabled { opacity: 0.4; cursor: not-allowed; }
        .ktx-page-info-v2 { font-size: 14px; font-weight: bold; color: #0045e6; }
    </style>

    <div id="ktx-live-app-v2">
        <div class="ktx-top-bar-v2">
            <div style="display: flex; align-items: center;">
                <b><span id="ktx-live-clock-v2" style="font-size:14px; font-weight:bold; opacity:1;"></span></b>
                <button class="ktx-voice-btn-v2" id="ktx-voice-toggle-v2" onclick="toggleKtxVoiceV2()">
                    <span class="v-ico-v2">🔈</span> <span class="v-txt-v2">음성 끔</span>
                </button>
            </div>
            <div class="ktx-live-label-v2">LIVE</div>
        </div>
        <div class="ktx-search-box-v2">
            <div class="ktx-input-flex-v2">
                <input type="text" id="ktx-dep-field-v2" placeholder="출발역" value="">
                <input type="text" id="ktx-arr-field-v2" placeholder="도착역" value="">
            </div>
            <button id="ktx-btn-submit-v2" onclick="runKtxLiveSearchV2(true)">열차 시간 조회하기</button>
        </div>
        
        <table class="ktx-main-table-v2">
            <thead><tr><th style="width: 24%;">열차정보</th><th style="width: 24%;">출발역</th><th style="width: 28%;">출발예정</th><th style="width: 24%;">도착역</th></tr></thead>
            <tbody id="ktx-live-tbody-v2">
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr id="ktx-init-msg-v2"><td colspan="4" style="position:absolute; width:100%; left:0; padding:70px 0; color:#94a3b8; font-size:13px; text-align:center;">역 이름을 입력하고 조회해 주세요.</td></tr>
            </tbody>
        </table>

        <div id="ktx-pagination-ctrl-v2" class="ktx-pagination-v2" style="display:none;">
            <button class="ktx-page-btn-v2" id="ktx-prev-page-v2" onclick="changeKtxPageV2(-1)">&laquo; 이전</button>
            <span class="ktx-page-info-v2"><span id="ktx-current-page-v2">1</span> / <span id="ktx-total-pages-v2">1</span></span>
            <button class="ktx-page-btn-v2" id="ktx-next-page-v2" onclick="changeKtxPageV2(1)">다음 &raquo;</button>
        </div>

        <div id="ktx-memo-display-v2" class="ktx-memo-area-v2"></div>

        <div style="padding: 10px 18px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #f1f5f9; display:flex; justify-content:space-between;">
            <span>1분 간격 자동 갱신</span><span>최근: <span id="ktx-last-update-v2">--:--:--</span></span>
        </div>
    </div>

    <script>
    let ktxStationListV2 = [];
    const ktxKeyFinalV2 = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    window.ktxVoiceEnabledV2 = false;
    window.ktxAnnouncedV2 = new Set();
    let currentKtxFullDataV2 = [];
    let ktxCurrentPageV2 = 1;
    const ktxItemsPerPageV2 = 10;

    function toggleKtxVoiceV2() {
        window.ktxVoiceEnabledV2 = !window.ktxVoiceEnabledV2;
        const btn = document.getElementById('ktx-voice-toggle-v2');
        const txt = btn.querySelector('.v-txt-v2'), ico = btn.querySelector('.v-ico-v2');
        if(window.ktxVoiceEnabledV2) {
            btn.classList.add('active'); txt.innerText = "음성 켬"; ico.innerText = "🔊";
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); txt.innerText = "음성 끔"; ico.innerText = "🔈";
            window.speechSynthesis.cancel();
        }
    }

    function updateKtxClockV2() {
        const now = new Date();
        const clockEl = document.getElementById('ktx-live-clock-v2');
        if (clockEl) { clockEl.innerText = `${now.getMonth() + 1}.${now.getDate()} ${now.getHours().toString().padStart(2, '0')}:${now.getMinutes().toString().padStart(2, '0')} 기준`; }
    }
    setInterval(updateKtxClockV2, 1000);

    async function ktxMasterLoadV2() {
        updateKtxClockV2();
        ktxStationListV2.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinalV2}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())));
            const parser = new DOMParser();
            results.forEach(xmlStr => {
                const xml = parser.parseFromString(xmlStr, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!ktxStationListV2.find(s => s.id === id)) ktxStationListV2.push({ name, id });
                });
            });
            if(document.getElementById('ktx-dep-field-v2').value && document.getElementById('ktx-arr-field-v2').value) runKtxLiveSearchV2(false);
        } catch (e) { console.log("V2 Station data fail"); }
    }

    function renderKtxPageV2(page) {
        const tbody = document.getElementById('ktx-live-tbody-v2');
        const now = new Date();
        const start = (page - 1) * ktxItemsPerPageV2;
        const end = start + ktxItemsPerPageV2;
        const pageData = currentKtxFullDataV2.slice(start, end);
        let html = '';
        pageData.forEach((r, idx) => {
            const diffMs = r.depDate - now;
            const diffMin = Math.round(diffMs / 60000);
            
            if (window.ktxVoiceEnabledV2 && diffMin === 15) {
                const key = r.no + "_" + r.dep_n + "_" + r.dep_time;
                if (!window.ktxAnnouncedV2.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 ${r.dep_n}역에서 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnouncedV2.add(key);
                }
            }

            const soon = (diffMin <= 15 && diffMin >= 0) ? '<span class="ktx-badge-soon-v2">출발임박</span>' : '';
            const durationTotal = Math.round((r.arrDate - r.depDate) / 60000);
            const h_dur = Math.floor(durationTotal / 60);
            const m_dur = durationTotal % 60;
            const durationStr = `${String(h_dur).padStart(2, '0')}:${String(m_dur).padStart(2, '0')} 소요`;
            
            let timeStatus = '';
            if (diffMin < 0) {
                timeStatus = '<div class="ktx-status-text-v2" style="color:#64748b;">운행종료</div>';
            } else {
                timeStatus = `<div class="ktx-status-text-v2">${diffMin===0?'출발대기':diffMin+'분 후 출발'}</div>`;
            }

            html += `<tr class="ktx-row-fade-v2" style="animation-delay:${idx*0.05}s;"><td><span class="ktx-train-no-v2">${r.no}호</span><span class="ktx-grade-name-v2">${r.grade}</span><span class="v-tag-ok-v2">정상운행</span></td><td><div class="ktx-station-name-v2">${r.dep_n}역</div><span class="v-tag-duration-v2">${durationStr}</span></td><td>${soon}${timeStatus}<div class="ktx-time-info-v2">${r.dep_time} 출발</div></td><td><div class="ktx-station-name-v2">${r.arr_n}역</div><div class="ktx-time-info-v2" style="color:#0045e6;">${r.arr_time} 도착</div></td></tr>`;
        });
        tbody.innerHTML = html;
        document.getElementById('ktx-current-page-v2').innerText = page;
        document.getElementById('ktx-prev-page-v2').disabled = (page === 1);
        document.getElementById('ktx-next-page-v2').disabled = (page === Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2));
    }

    function changeKtxPageV2(dir) {
        const total = Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2);
        let target = ktxCurrentPageV2 + dir;
        if (target >= 1 && target <= total) { ktxCurrentPageV2 = target; renderKtxPageV2(ktxCurrentPageV2); }
    }

    async function runKtxLiveSearchV2(manual = false) {
        const btn = document.getElementById('ktx-btn-submit-v2');
        let d_val = document.getElementById('ktx-dep-field-v2').value.trim();
        let a_val = document.getElementById('ktx-arr-field-v2').value.trim();
        if (!d_val || !a_val) { if(manual) alert("출발역과 도착역을 모두 입력하세요."); return; }
        
        btn.innerText = "데이터 검색 중..."; btn.classList.add('is-searching'); btn.disabled = true;
        d_val = d_val.replace(/역$/, ''); a_val = a_val.replace(/역$/, '');
        
        const tbody = document.getElementById('ktx-live-tbody-v2');
        const memoDiv = document.getElementById('ktx-memo-display-v2');
        const pgCtrl = document.getElementById('ktx-pagination-ctrl-v2');
        if(manual) tbody.classList.add('ktx-loading-v2');

        const findStation = (n) => {
            if (n === "여수" || n === "여수엑스포") return { name: "여수EXPO", id: "NAT041993" };
            return ktxStationListV2.find(s => s.name === n || s.name === n + '역');
        }
        const dep = findStation(d_val); const arr = findStation(a_val);
        if (!dep || !arr) { 
            tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0;">역 이름을 정확히 입력해 주세요. (예: 부산, 동대구)</td></tr>';
            pgCtrl.style.display = 'none';
            tbody.classList.remove('ktx-loading-v2');
            btn.innerText = "열차 시간 조회하기"; btn.classList.remove('is-searching'); btn.disabled = false; 
            return; 
        }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live_v2');
        fd.append('dep_id', dep.id); fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            const resData = await response.json();
            const now = new Date();
            currentKtxFullDataV2 = resData.trains.map(item => {
                const parseTrainTime = (str) => { if (!str || str.length < 12) return new Date(0); return new Date(str.substring(0,4), str.substring(4,6)-1, str.substring(6,8), str.substring(8,10), str.substring(10,12)); };
                item.depDate = parseTrainTime(item.raw_dep); item.arrDate = parseTrainTime(item.raw_arr);
                if (item.arrDate < item.depDate) item.arrDate.setDate(item.arrDate.getDate() + 1);
                return item;
            }).sort((a, b) => a.depDate - b.depDate);

            if (currentKtxFullDataV2.length > 0) {
                const totalPages = Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2);
                document.getElementById('ktx-total-pages-v2').innerText = totalPages;
                pgCtrl.style.display = 'flex';
                
                let firstUpcomingIdx = currentKtxFullDataV2.findIndex(t => t.depDate.getTime() > (now.getTime() - 300000));
                if (firstUpcomingIdx === -1) firstUpcomingIdx = 0;
                ktxCurrentPageV2 = Math.floor(firstUpcomingIdx / ktxItemsPerPageV2) + 1;

                if(resData.memo_template) {
                    const f_t = currentKtxFullDataV2[0].dep_time;
                    const l_t = currentKtxFullDataV2[currentKtxFullDataV2.length-1].dep_time;
                    const scrollTips = [" 전체 시간표는 하단 페이징을 확인하세요.", " 모든 배차 정보를 페이지별로 확인 가능합니다."];
                    const randomTip = scrollTips[Math.floor(Math.random() * scrollTips.length)];
                    memoDiv.innerText = resData.memo_template.replace('{first_t}', f_t).replace('{last_t}', l_t) + randomTip;
                    memoDiv.style.display = 'block';
                }
                renderKtxPageV2(ktxCurrentPageV2);
                document.getElementById('ktx-last-update-v2').innerText = now.getHours().toString().padStart(2,'0')+':'+now.getMinutes().toString().padStart(2,'0')+':'+now.getSeconds().toString().padStart(2,'0');
            } else {
                tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0; color:#94a3b8;">오늘 운행되는 열차 정보가 없습니다.</td></tr>';
                pgCtrl.style.display = 'none';
            }
        } catch (e) { tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0;">데이터 통신 오류</td></tr>'; }

        tbody.classList.remove('ktx-loading-v2');
        btn.innerText = "열차 시간 조회하기"; btn.classList.remove('is-searching'); btn.disabled = false;
    }

    ktxMasterLoadV2();
    setInterval(() => { if(document.getElementById('ktx-dep-field-v2').value) runKtxLiveSearchV2(false); }, 60000);
    document.addEventListener('keypress', function(e) { if((e.target.id === 'ktx-dep-field-v2' || e.target.id === 'ktx-arr-field-v2') && e.keyCode === 13) runKtxLiveSearchV2(true); });
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">용산역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">용산역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '11';
            let curName = '용산';
            let altCity = '';
            let altName = '광주';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">용산역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">17℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">용산역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%95%84%EC%9D%B4%ED%8C%8C%ED%81%AC%EB%AA%B0+%EC%9A%A9%EC%82%B0%EC%A0%90+%EC%84%9C%EC%9A%B8%ED%8A%B9%EB%B3%84%EC%8B%9C+%EC%9A%A9%EC%82%B0%EA%B5%AC+%ED%95%9C%EA%B0%95%EB%A1%9C3%EA%B0%80+40-999" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">아이파크몰 용산점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">쇼핑,유통&gt;쇼핑센터,할인매장</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">서울특별시 용산구 한강로3가 40-999</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%85%8C%EB%94%94%EB%B5%88%EB%A5%B4%ED%95%98%EC%9A%B0%EC%8A%A4+%EC%9A%A9%EC%82%B0%EC%A0%90+%EC%84%9C%EC%9A%B8%ED%8A%B9%EB%B3%84%EC%8B%9C+%EC%9A%A9%EC%82%B0%EA%B5%AC+%ED%95%9C%EA%B0%95%EB%A1%9C2%EA%B0%80+49-1+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">테디뵈르하우스 용산점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;카페,디저트</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">서울특별시 용산구 한강로2가 49-1 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%8C%A4%EC%8C%A4%EC%8C%A4+%EC%9A%A9%EC%82%B0%EC%A0%90+%EC%84%9C%EC%9A%B8%ED%8A%B9%EB%B3%84%EC%8B%9C+%EC%9A%A9%EC%82%B0%EA%B5%AC+%ED%95%9C%EA%B0%95%EB%A1%9C2%EA%B0%80+47-3+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">쌤쌤쌤 용산점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;양식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">서울특별시 용산구 한강로2가 47-3 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%AA%BD%ED%83%84+%EC%84%9C%EC%9A%B8%ED%8A%B9%EB%B3%84%EC%8B%9C+%EC%9A%A9%EC%82%B0%EA%B5%AC+%ED%95%9C%EA%B0%95%EB%A1%9C1%EA%B0%80+251-1" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">몽탄</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;육류,고기요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">서울특별시 용산구 한강로1가 251-1</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%89%90%EC%9D%B4%ED%81%AC%EC%89%91+%EC%9A%A9%EC%82%B0+%EC%95%84%EC%9D%B4%ED%8C%8C%ED%81%AC%EB%AA%B0%EC%A0%90+%EC%84%9C%EC%9A%B8%ED%8A%B9%EB%B3%84%EC%8B%9C+%EC%9A%A9%EC%82%B0%EA%B5%AC+%ED%95%9C%EA%B0%95%EB%A1%9C3%EA%B0%80+40-999+%EC%95%84%EC%9D%B4%ED%8C%8C%ED%81%AC%EB%AA%B0+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">쉐이크쉑 용산 아이파크몰점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">양식&gt;햄버거</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">서울특별시 용산구 한강로3가 40-999 아이파크몰 1층</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">광주역 실시간 주차장 요금</h4>
        
                    <div class="parking-list-container">
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 경기광주역                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">800원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">300원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">7,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 경기도 광주시 역동 176-13<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 02-6952-8100                        </div>
                    </div>
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 광주송정역 주차빌딩                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">1,500원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">500원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">15,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 광주광역시 광산구 상무대로 179<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 062-941-0874                        </div>
                    </div>
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 광주송정역2                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">1,000원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">400원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">10,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 광주광역시 광산구 송정동 1003-1<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 062-941-0874                        </div>
                    </div>
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 광주역A                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">1,000원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">400원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">10,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 광주광역시 북구 중흥동 611-2<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 062-941-0874                        </div>
                    </div>
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 광주역B                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">0원</strong> 
                                <small style="color: #94a3b8;">/ 0분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">0원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">0원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 광주광역시 북구 중흥동 611-2<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 062-941-0874                        </div>
                    </div>
                            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">용산역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 용산역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%9A%A9%EC%82%B0%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="350" height="350" src="https://krailroad.co.kr/wp-content/uploads/2026/04/호남선-새마을호-시간표-ITX-용산역-광주역-익산역-목포역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간.jpg" alt="호남선-새마을호-시간표-ITX-용산역-광주역-익산역-목포역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간" class="wp-image-20436" srcset="https://krailroad.co.kr/wp-content/uploads/2026/04/호남선-새마을호-시간표-ITX-용산역-광주역-익산역-목포역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간.jpg 350w, https://krailroad.co.kr/wp-content/uploads/2026/04/호남선-새마을호-시간표-ITX-용산역-광주역-익산역-목포역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/04/호남선-새마을호-시간표-ITX-용산역-광주역-익산역-목포역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간-150x150.jpg 150w" sizes="auto, (max-width: 350px) 100vw, 350px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>경부선 새마을호 시간표 및 요금 (서울역~부산역) 실시간 정리</title>
		<link>https://krailroad.co.kr/%ea%b2%bd%eb%b6%80%ec%84%a0-%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%9a%94%ea%b8%88-%ec%84%9c%ec%9a%b8%ec%97%ad%eb%b6%80%ec%82%b0%ec%97%ad-%ec%8b%a4%ec%8b%9c/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Thu, 09 Apr 2026 23:55:50 +0000</pubDate>
				<category><![CDATA[실시간 열차 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[경부선 새마을호 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=20375</guid>

					<description><![CDATA[대한민국 물류와 여객의 대동맥이라 불리는 경부선 새마을호 시간표를 이용한 서울과 부산이라는 거대한 두 축을 하나로 묶어주는 열차 노선으로, 옛날 투박한 기차 여행이 속도 중심의 경쟁이었다면, 지금은 기차 이용자의 목적과 취향에 맞춘 최적화된 시스템으로 변모했는데요. 서울역 부산역 새마을호를 비롯해 세련된 외관과 최신 설비를 갖춘 경부선 ITX-새마을호, 그리고 차세대 주력 모델인 경부선 ITX-마음은 목적지까지의 시간을 효율적으로 사용할 ... <a title="경부선 새마을호 시간표 및 요금 (서울역~부산역) 실시간 정리" class="read-more button" href="https://krailroad.co.kr/%ea%b2%bd%eb%b6%80%ec%84%a0-%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%9a%94%ea%b8%88-%ec%84%9c%ec%9a%b8%ec%97%ad%eb%b6%80%ec%82%b0%ec%97%ad-%ec%8b%a4%ec%8b%9c/" aria-label="경부선 새마을호 시간표 및 요금 (서울역~부산역) 실시간 정리 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">대한민국 물류와 여객의 대동맥이라 불리는 경부선 새마을호 시간표를 이용한 서울과 부산이라는 거대한 두 축을 하나로 묶어주는 열차 노선으로, 옛날 투박한 기차 여행이 속도 중심의 경쟁이었다면, 지금은 기차 이용자의 목적과 취향에 맞춘 최적화된 시스템으로 변모했는데요. 서울역 부산역 새마을호를 비롯해 세련된 외관과 최신 설비를 갖춘 경부선 ITX-새마을호, 그리고 차세대 주력 모델인 경부선 ITX-마음은 목적지까지의 시간을 효율적으로 사용할 수 있는 열차가 되고 있습니다.</p>



<p class="wp-block-paragraph">이런 경부선 새마을호를 이용할 경우 역사 내 혼잡한 인파 사이에서 전광판의 작은 글씨를 쫓거나, 출처가 불분명한 커뮤니티의 게시물에 의지해 일정을 짜던 번거로움은 이제 완전히 덜어내셔도 좋습니다. <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a>과 공공 API를 직접 연동한 1분 단위 자동 갱신되는 아래 시스템은 현재 열차가 몇분뒤 출발 할것인지와 정차역 진입 상태를 오차 없이 보여주며, 특히 시각 정보 확인에 제약이 있는 분들을 위해 실시간 열차 검색 폼 상단 메뉴에서 음성 알림을 활성화하면, 열차 진입 15분 전부터 자동으로 안내 메시지를 송출하여 대기 시간을 자유롭게 확인 하실 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>경부선 새마을호 시간표 안내</strong></h2>



<h3 class="wp-block-heading">경부선 ITX-새마을호 이동 기준</h3>



<p class="wp-block-paragraph">경부선 새마을호 시간표 구간인 서울역과 <a href="https://krailroad.co.kr/%eb%b6%80%ec%82%b0%ec%97%ad-ktx-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%b5%9c%ec%8b%a0-%eb%85%b8%ec%84%a0%eb%b3%84-%ec%9a%94%ea%b8%88-%eb%b0%8f-%ec%86%8c%ec%9a%94-%ec%8b%9c%ea%b0%84/">부산역</a>을 살펴보면(<a href="https://krailroad.co.kr/%ea%b2%bd%eb%b6%80%ec%84%a0-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%9a%94%ea%b8%88-%ec%84%9c%ec%9a%b8%ec%97%ad%eb%b6%80%ec%82%b0%ec%97%ad-%ec%b4%9d%ec%a0%95/">경부선 무궁화호 시간표는 여기 참고</a>) 영등포, 수원, 대전, 동대구 등 전국을 잇는 핵심 정거장을 고르게 경유하는 것을 알 수 있으며, 고속열차의 속도와 일반 열차 특유의 넓은 좌석 배치가 더해져, 긴 시간 기차에 머물러야 하는 상황에서도 신체적 피로감이 적다는 것이 장점입니다. 공식 데이터베이스를 기반으로 구축된 실시간 호출 시스템은 실시간 운행 계통의 변수를 즉각 반영하므로, 일 분 일 초가 중요한 일정을 관리할 때 믿음만한 API 기반 자료일 것입니다.</p>



<p class="wp-block-paragraph">이는 단순히 철길을 따라 이동하는 것을 넘어, 본 시스템은 출발부터 도착 이후 서울 부산 기차 요금의 등급별 비교는 물론, 서울역 내 유휴 주차 공간 확인과 부산역 광장에서 시내로 이어지는 실시간 버스 도착 현황까지 하나의 화면에 통합했습니다. 서울역 부산역 기차 소요시간을 미리 점검하고 본인의 일정에 맞춰 좌석을 확보한다면, 이동 자체가 하나의 휴식이 되는 경험을 하게 될 것입니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">데이터 기반의 현지 여행</h3>



<p class="wp-block-paragraph">기차에 오르기 전후로 마주하게 되는 역 주변의 인프라 활용법도 놓칠 수 없는데, 서울역 일대의 트렌디한 공간들과 부산역 인근에 숨겨진 정겨운 식당가 정보는 실시간 기상 데이터와 함께 제공되어 날씨에 따른 최적의 동선을 제안합니다. 정교하게 설계된 검색 기능을 활용해 열차 번호와 종별에 따른 상세 정보를 확인하고, 불필요한 대기 시간 없이 이용할 수 있습니다.</p>



<p class="wp-block-paragraph">공공 API가 안내하는 정확한 데이터와 함께라면 서울과 부산을 오가는 길은 더 이상 막막한 거리가 아니고 기술이 제안하는 여유를 만끽하며, 가장 스마트한 방식으로 경부선의 철길을 누릴 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">부산 ↔&nbsp;서울 첫차 &amp; 막차</h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">부산<br>↓<br>서울</td><td><span class="type-label type-itx">ITX-새마을</span></td><td><span class="train-detail">1004호</span><div class="time-display">08:20</div><div class="arrival-info">13:22 도착</div></td><td><span class="train-detail">1026호</span><div class="time-display">19:24</div><div class="arrival-info">00:02 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">서울<br>↓<br>부산</td><td><span class="type-label type-itx">ITX-새마을</span></td><td><span class="train-detail">1001호</span><div class="time-display">05:54</div><div class="arrival-info">11:14 도착</div></td><td><span class="train-detail">1023호</span><div class="time-display">16:46</div><div class="arrival-info">21:20 도착</div></td></tr></tbody></table></div>


    
    <h2>서울 ↔ 부산 운임 요금표</h2>

    <div id="ktx-app-fl" style="margin-bottom: 40px;">
        <style>
            #ktx-app-fl { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 1px solid #e2e8f0; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.06); }
            .fl-main-table { width: 100%; border-collapse: collapse; table-layout: fixed; border: none; }
            .fl-main-table th { font-size: 13px; color: #64748b; padding: 12px 2px; background: #f8fafc; border-bottom: 1px solid #e2e8f0; text-align: center; font-weight: bold; }
            .fl-main-table td { padding: 15px 4px; border-bottom: 1px solid #f1f5f9; text-align: center; vertical-align: middle; }
            
            .u-no-top { font-size: 11px; color: #94a3b8; display: block; font-weight: 500; margin-bottom: 1px; }
            .u-grade-bottom { font-size: 16px; font-weight: 900; color: #0045e6; display: block; line-height: 1.2; }
            .t-via { font-size: 12px; color: #64748b; display: block; margin-top: 4px; font-weight: 500; }
            
            .t-price { font-weight: 700; font-size: 14px; color: #1e293b; }
            .t-premium { color: #059669; }
            .t-special { color: #e11d48; }
            
            .t-none { display: inline-block; padding: 3px 10px; background: #f8fafc; color: #cbd5e1; border: 1px solid #f1f5f9; border-radius: 6px; font-size: 11px; font-weight: 600; }

            @media (max-width: 600px) {
                .fl-main-table th { font-size: 12px; }
                .u-grade-bottom { font-size: 14px; }
                .t-price { font-size: 12px; }
            }
        </style>

        <div style="overflow-x: auto;">
            <table class="fl-main-table">
                <thead>
                    <tr>
                        <th style="width: 30%;">열차 / 경유지</th>
                        <th style="width: 23%;">일반실</th>
                        <th style="width: 23%;">우등실</th>
                        <th style="width: 24%;">특실</th>
                    </tr>
                </thead>
                <tbody>
                                        <tr>
                        <td>
                            <span class="u-no-top">서울 ↔ 부산</span>
                            <span class="u-grade-bottom">ITX</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                42,600원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">서울 ↔ 부산</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">경주</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                59,800원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                71,800원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                83,700원                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">서울 ↔ 부산</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">구포</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                53,900원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                75,500원                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">서울 ↔ 부산</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">서대구,경주</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                59,400원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                83,200원                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">서울 ↔ 부산</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">서대구,구포</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                53,500원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                74,900원                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">서울 ↔ 부산</span>
                            <span class="u-grade-bottom">KTX</span>
                                                            <span class="t-via">수원,경주</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                48,800원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                68,300원                            </span>
                        </td>
                    </tr>
                                        <tr>
                        <td>
                            <span class="u-no-top">서울 ↔ 부산</span>
                            <span class="u-grade-bottom">무궁화</span>
                                                    </td>
                        <td>
                            <span class="t-price">
                                28,600원                            </span>
                        </td>
                        <td>
                            <span class="t-price t-premium">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                        <td>
                            <span class="t-price t-special">
                                <span class='t-none'>해당없음</span>                            </span>
                        </td>
                    </tr>
                                    </tbody>
            </table>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">부산 →&nbsp;서울 ITX-새마을 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>부산</th><th>구포</th><th>물금</th><th>삼랑진</th><th>밀양</th><th>청도</th><th>경산</th><th>동대구</th><th>대구</th><th>왜관</th><th>구미</th><th>김천</th><th>영동</th><th>옥천</th><th>대전</th><th>신탄진</th><th>부강</th><th>조치원</th><th>천안</th><th>성환</th><th>평택</th><th>서정리</th><th>오산</th><th>수원</th><th>안양</th><th>영등포</th><th>서울</th></tr></thead><tbody><tr><td>1004</td><td>ITX-새마을</td><td>08:20</td><td>08:33</td><td>08:42</td><td>08:54</td><td>09:03</td><td>09:17</td><td>09:32</td><td>09:43</td><td>09:49</td><td>10:07</td><td>10:21</td><td>10:36</td><td>11:03</td><td></td><td>11:31</td><td>11:42</td><td></td><td>11:57</td><td>12:18</td><td></td><td>12:30</td><td></td><td></td><td>12:50</td><td></td><td>13:11</td><td>13:22</td></tr><tr><td>1008</td><td>ITX-새마을</td><td>12:04</td><td>12:17</td><td>12:26</td><td></td><td>12:44</td><td>12:58</td><td>13:13</td><td>13:24</td><td>13:30</td><td></td><td>13:59</td><td>14:14</td><td>14:41</td><td>15:00</td><td>15:13</td><td></td><td></td><td>15:36</td><td>15:57</td><td></td><td>16:10</td><td></td><td></td><td>16:30</td><td></td><td>16:51</td><td>17:01</td></tr><tr><td>1012</td><td>ITX-새마을</td><td>14:05</td><td>14:19</td><td></td><td></td><td>14:43</td><td></td><td></td><td>15:17</td><td>15:23</td><td></td><td>15:52</td><td>16:07</td><td></td><td></td><td>17:00</td><td></td><td></td><td></td><td>17:41</td><td></td><td></td><td></td><td></td><td>18:10</td><td></td><td>18:31</td><td>18:41</td></tr><tr><td>1014</td><td>ITX-새마을</td><td>14:42</td><td>14:56</td><td></td><td></td><td>15:22</td><td>15:35</td><td>15:51</td><td>16:03</td><td>16:10</td><td>16:29</td><td>16:43</td><td>17:00</td><td>17:28</td><td>17:47</td><td>18:01</td><td>18:19</td><td>18:31</td><td>18:40</td><td>19:02</td><td>19:11</td><td>19:19</td><td>19:27</td><td>19:34</td><td>19:47</td><td>20:00</td><td>20:13</td><td>20:25</td></tr><tr><td>1016</td><td>ITX-새마을</td><td>15:04</td><td>15:17</td><td>15:26</td><td></td><td>15:45</td><td></td><td></td><td>16:18</td><td>16:25</td><td>16:43</td><td>16:57</td><td>17:12</td><td>17:40</td><td></td><td>18:08</td><td></td><td></td><td>18:32</td><td>18:53</td><td></td><td></td><td></td><td></td><td>19:23</td><td></td><td>19:44</td><td>19:54</td></tr><tr><td>1022</td><td>ITX-새마을</td><td>18:08</td><td>18:21</td><td></td><td></td><td>18:46</td><td></td><td></td><td>19:19</td><td>19:25</td><td></td><td>19:54</td><td>20:10</td><td></td><td></td><td>21:04</td><td>21:15</td><td></td><td>21:31</td><td>21:52</td><td></td><td></td><td></td><td></td><td>22:21</td><td></td><td>22:42</td><td>22:53</td></tr><tr><td>1026</td><td>ITX-새마을</td><td>19:24</td><td>19:37</td><td></td><td></td><td>20:01</td><td></td><td></td><td>20:35</td><td>20:41</td><td></td><td>21:10</td><td>21:25</td><td></td><td></td><td>22:18</td><td></td><td></td><td>22:41</td><td>23:02</td><td></td><td></td><td></td><td></td><td>23:31</td><td></td><td>23:52</td><td>00:02</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">서울 →&nbsp;부산 ITX-새마을 시간표</h2>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>서울</th><th>영등포</th><th>수원</th><th>평택</th><th>천안</th><th>조치원</th><th>부강</th><th>신탄진</th><th>대전</th><th>옥천</th><th>영동</th><th>황간</th><th>김천</th><th>구미</th><th>왜관</th><th>대구</th><th>동대구</th><th>경산</th><th>청도</th><th>상동</th><th>밀양</th><th>삼랑진</th><th>물금</th><th>구포</th><th>부산</th></tr></thead><tbody><tr><td>1001</td><td>ITX-새마을</td><td>05:54</td><td>06:07</td><td>06:31</td><td>06:51</td><td>07:06</td><td>07:28</td><td>07:36</td><td>07:47</td><td>08:01</td><td></td><td>08:30</td><td></td><td>08:57</td><td>09:13</td><td>09:27</td><td>09:47</td><td>09:53</td><td>10:02</td><td>10:18</td><td>10:27</td><td>10:35</td><td></td><td>10:53</td><td>11:02</td><td>11:14</td></tr><tr><td>1003</td><td>ITX-새마을</td><td>06:13</td><td>06:23</td><td>06:46</td><td>07:06</td><td>07:19</td><td>07:41</td><td></td><td></td><td>08:06</td><td>08:21</td><td>08:41</td><td>08:52</td><td>09:12</td><td>09:29</td><td>09:43</td><td>10:02</td><td>10:08</td><td></td><td>10:30</td><td></td><td>10:43</td><td>10:54</td><td></td><td>11:13</td><td>11:26</td></tr><tr><td>1007</td><td>ITX-새마을</td><td>08:49</td><td>08:59</td><td>09:22</td><td>09:41</td><td>09:55</td><td>10:15</td><td></td><td></td><td>10:40</td><td></td><td>11:08</td><td></td><td>11:34</td><td>11:50</td><td></td><td>12:19</td><td>12:25</td><td></td><td>12:47</td><td></td><td>13:00</td><td></td><td></td><td>13:26</td><td>13:38</td></tr><tr><td>1009</td><td>ITX-새마을</td><td>10:23</td><td>10:33</td><td>10:55</td><td>11:14</td><td>11:27</td><td>11:48</td><td></td><td>12:03</td><td>12:16</td><td></td><td>12:43</td><td></td><td>13:10</td><td>13:26</td><td>13:40</td><td>13:59</td><td>14:05</td><td>14:14</td><td>14:28</td><td></td><td>14:41</td><td></td><td>14:59</td><td>15:09</td><td>15:21</td></tr><tr><td>1013</td><td>ITX-새마을</td><td>11:45</td><td>11:55</td><td>12:17</td><td>12:36</td><td>12:49</td><td>13:10</td><td></td><td></td><td>13:34</td><td></td><td></td><td></td><td>14:25</td><td>14:41</td><td></td><td>15:12</td><td>15:18</td><td>15:28</td><td></td><td></td><td>15:53</td><td></td><td>16:12</td><td>16:22</td><td>16:34</td></tr><tr><td>1019</td><td>ITX-새마을</td><td>13:53</td><td>14:03</td><td>14:25</td><td>14:44</td><td>14:57</td><td>15:18</td><td></td><td></td><td>15:43</td><td></td><td>16:10</td><td></td><td>16:37</td><td>16:53</td><td>17:06</td><td>17:25</td><td>17:31</td><td>17:40</td><td>17:55</td><td></td><td>18:08</td><td></td><td></td><td>18:33</td><td>18:45</td></tr><tr><td>1023</td><td>ITX-새마을</td><td>16:46</td><td>16:56</td><td>17:19</td><td></td><td>17:49</td><td></td><td></td><td></td><td>18:31</td><td></td><td></td><td></td><td>19:23</td><td>19:39</td><td></td><td>20:08</td><td>20:14</td><td></td><td></td><td></td><td></td><td></td><td></td><td>21:08</td><td>21:20</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">전국 기차 시간표 및 운임 조회</h2>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #ktx-live-app-v2 { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 1px solid #e2e8f0; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.06); min-height: 800px; }
        .ktx-top-bar-v2 { background: #0045e6; padding: 15px 20px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .ktx-top-bar-v2 b { font-size: 17px; }
        .ktx-live-label-v2 { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 900; animation: ktx_pulse_v2 1.5s infinite; }
        @keyframes ktx_pulse_v2 { 50% { opacity: 0.4; } }
        .ktx-search-box-v2 { padding: 15px; background: #f8fafc; border-bottom: 1px solid #eee; }
        .ktx-input-flex-v2 { display: flex; gap: 8px; margin-bottom: 10px; }
        .ktx-input-flex-v2 input { flex: 1; min-width: 0; padding: 12px; border-radius: 8px; border: 1px solid #cbd5e1; font-size: 16px !important; outline: none; background: #fff; -webkit-appearance: none; }
        #ktx-btn-submit-v2 { width: 100%; padding: 15px; background: #64748b; color: #fff; border: none; border-radius: 8px; cursor: pointer; font-weight: bold; font-size: 16px; transition: all 0.3s; height: 50px; }
        #ktx-btn-submit-v2:hover { background: #475569; }
        #ktx-btn-submit-v2.is-searching { background: #6366f1 !important; cursor: wait; }
        .ktx-memo-area-v2 { padding: 12px 15px; background: #fffbeb; color: #92400e; font-size: 14px; line-height: 1.6; border-top: 1px solid #fef3c7; display: none; word-break: keep-all; min-height: 45px; }
        .ktx-main-table-v2 { width: 100%; border-collapse: collapse; table-layout: fixed; border: none; min-height: 700px; }
        .ktx-main-table-v2 th { font-size: 13px; color: #64748b; padding: 12px 2px; background: #f1f5f9; border-bottom: 1px solid #e2e8f0; text-align: center; }
        .ktx-main-table-v2 td { padding: 15px 4px; border-bottom: none !important; text-align: center; vertical-align: middle; }
        .ktx-status-text-v2 { color: #e11d48; font-weight: 800; font-size: 14px; margin: 3px 0; white-space: nowrap; letter-spacing: -0.5px; }
        .ktx-grade-name-v2 { font-size: 16px; font-weight: 800; color: #0045e6; line-height: 1.2; display: block; }
        .ktx-train-no-v2 { font-size: 11px; color: #94a3b8; display: block; margin-top: 2px; }
        .v-tag-ok-v2 { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        .v-tag-duration-v2 { font-size: 10px; color: #0045e6; background: #eff6ff; padding: 1px 4px; border-radius: 3px; border: 1px solid #dbeafe; display: inline-block; margin-top: 4px; font-weight: bold; }
        .ktx-time-info-v2 { color: #475569; font-size: 12px; font-weight: 600; }
        .ktx-station-name-v2 { font-size: 14px; font-weight: 700; color: #1e293b; }

        .ktx-badge-soon-v2 { 
            display: inline-block;
            background: #e11d48; 
            color: #fff; 
            padding: 4px 10px; 
            border-radius: 6px; 
            font-size: 11px; 
            font-weight: 900; 
            letter-spacing: -0.2px;
            margin-bottom: 4px;
            box-shadow: 0 2px 4px rgba(225, 29, 72, 0.2);
            animation: ktx_v4_pulse_v2 1.2s infinite ease-in-out; 
        }
        @keyframes ktx_v4_pulse_v2 { 0% { opacity: 1; transform: scale(1); } 50% { opacity: 0.6; transform: scale(0.96); } 100% { opacity: 1; transform: scale(1); } }

        .ktx-loading-v2 { opacity: 0.3; }
        .ktx-row-fade-v2 { animation: ktxFadeInUp_v2 0.5s ease-out forwards; opacity: 0; }
        @keyframes ktxFadeInUp_v2 { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }

        .ktx-voice-btn-v2 { padding: 4px 12px; border-radius: 15px; border: 2px solid rgba(255,255,255,0.6); background: rgba(0,0,0,0.15); font-size: 11px; font-weight: 900; color: #fff; cursor: pointer; display: inline-flex; align-items: center; gap: 4px; height: 26px; transition: 0.2s; line-height: 1; margin-left:10px; }
        .ktx-voice-btn-v2.active { background: #fff; color: #0045e6; border-color: #fff; box-shadow: 0 0 10px rgba(255,255,255,0.3); }

        .ktx-pagination-v2 { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 20px; background: #fff; border-top: 1px solid #f1f5f9; }
        .ktx-page-btn-v2 { padding: 8px 16px; border: 1px solid #e2e8f0; border-radius: 6px; font-size: 13px; color: #64748b; background: #fff; cursor: pointer; transition: 0.2s; }
        .ktx-page-btn-v2:hover:not(:disabled) { background: #f1f5f9; border-color: #cbd5e1; }
        .ktx-page-btn-v2:disabled { opacity: 0.4; cursor: not-allowed; }
        .ktx-page-info-v2 { font-size: 14px; font-weight: bold; color: #0045e6; }
    </style>

    <div id="ktx-live-app-v2">
        <div class="ktx-top-bar-v2">
            <div style="display: flex; align-items: center;">
                <b><span id="ktx-live-clock-v2" style="font-size:14px; font-weight:bold; opacity:1;"></span></b>
                <button class="ktx-voice-btn-v2" id="ktx-voice-toggle-v2" onclick="toggleKtxVoiceV2()">
                    <span class="v-ico-v2">🔈</span> <span class="v-txt-v2">음성 끔</span>
                </button>
            </div>
            <div class="ktx-live-label-v2">LIVE</div>
        </div>
        <div class="ktx-search-box-v2">
            <div class="ktx-input-flex-v2">
                <input type="text" id="ktx-dep-field-v2" placeholder="출발역" value="">
                <input type="text" id="ktx-arr-field-v2" placeholder="도착역" value="">
            </div>
            <button id="ktx-btn-submit-v2" onclick="runKtxLiveSearchV2(true)">열차 시간 조회하기</button>
        </div>
        
        <table class="ktx-main-table-v2">
            <thead><tr><th style="width: 24%;">열차정보</th><th style="width: 24%;">출발역</th><th style="width: 28%;">출발예정</th><th style="width: 24%;">도착역</th></tr></thead>
            <tbody id="ktx-live-tbody-v2">
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr><td style="height:86px;">&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                                <tr id="ktx-init-msg-v2"><td colspan="4" style="position:absolute; width:100%; left:0; padding:70px 0; color:#94a3b8; font-size:13px; text-align:center;">역 이름을 입력하고 조회해 주세요.</td></tr>
            </tbody>
        </table>

        <div id="ktx-pagination-ctrl-v2" class="ktx-pagination-v2" style="display:none;">
            <button class="ktx-page-btn-v2" id="ktx-prev-page-v2" onclick="changeKtxPageV2(-1)">&laquo; 이전</button>
            <span class="ktx-page-info-v2"><span id="ktx-current-page-v2">1</span> / <span id="ktx-total-pages-v2">1</span></span>
            <button class="ktx-page-btn-v2" id="ktx-next-page-v2" onclick="changeKtxPageV2(1)">다음 &raquo;</button>
        </div>

        <div id="ktx-memo-display-v2" class="ktx-memo-area-v2"></div>

        <div style="padding: 10px 18px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #f1f5f9; display:flex; justify-content:space-between;">
            <span>1분 간격 자동 갱신</span><span>최근: <span id="ktx-last-update-v2">--:--:--</span></span>
        </div>
    </div>

    <script>
    let ktxStationListV2 = [];
    const ktxKeyFinalV2 = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    window.ktxVoiceEnabledV2 = false;
    window.ktxAnnouncedV2 = new Set();
    let currentKtxFullDataV2 = [];
    let ktxCurrentPageV2 = 1;
    const ktxItemsPerPageV2 = 10;

    function toggleKtxVoiceV2() {
        window.ktxVoiceEnabledV2 = !window.ktxVoiceEnabledV2;
        const btn = document.getElementById('ktx-voice-toggle-v2');
        const txt = btn.querySelector('.v-txt-v2'), ico = btn.querySelector('.v-ico-v2');
        if(window.ktxVoiceEnabledV2) {
            btn.classList.add('active'); txt.innerText = "음성 켬"; ico.innerText = "🔊";
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); txt.innerText = "음성 끔"; ico.innerText = "🔈";
            window.speechSynthesis.cancel();
        }
    }

    function updateKtxClockV2() {
        const now = new Date();
        const clockEl = document.getElementById('ktx-live-clock-v2');
        if (clockEl) { clockEl.innerText = `${now.getMonth() + 1}.${now.getDate()} ${now.getHours().toString().padStart(2, '0')}:${now.getMinutes().toString().padStart(2, '0')} 기준`; }
    }
    setInterval(updateKtxClockV2, 1000);

    async function ktxMasterLoadV2() {
        updateKtxClockV2();
        ktxStationListV2.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinalV2}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())));
            const parser = new DOMParser();
            results.forEach(xmlStr => {
                const xml = parser.parseFromString(xmlStr, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!ktxStationListV2.find(s => s.id === id)) ktxStationListV2.push({ name, id });
                });
            });
            if(document.getElementById('ktx-dep-field-v2').value && document.getElementById('ktx-arr-field-v2').value) runKtxLiveSearchV2(false);
        } catch (e) { console.log("V2 Station data fail"); }
    }

    function renderKtxPageV2(page) {
        const tbody = document.getElementById('ktx-live-tbody-v2');
        const now = new Date();
        const start = (page - 1) * ktxItemsPerPageV2;
        const end = start + ktxItemsPerPageV2;
        const pageData = currentKtxFullDataV2.slice(start, end);
        let html = '';
        pageData.forEach((r, idx) => {
            const diffMs = r.depDate - now;
            const diffMin = Math.round(diffMs / 60000);
            
            if (window.ktxVoiceEnabledV2 && diffMin === 15) {
                const key = r.no + "_" + r.dep_n + "_" + r.dep_time;
                if (!window.ktxAnnouncedV2.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 ${r.dep_n}역에서 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnouncedV2.add(key);
                }
            }

            const soon = (diffMin <= 15 && diffMin >= 0) ? '<span class="ktx-badge-soon-v2">출발임박</span>' : '';
            const durationTotal = Math.round((r.arrDate - r.depDate) / 60000);
            const h_dur = Math.floor(durationTotal / 60);
            const m_dur = durationTotal % 60;
            const durationStr = `${String(h_dur).padStart(2, '0')}:${String(m_dur).padStart(2, '0')} 소요`;
            
            let timeStatus = '';
            if (diffMin < 0) {
                timeStatus = '<div class="ktx-status-text-v2" style="color:#64748b;">운행종료</div>';
            } else {
                timeStatus = `<div class="ktx-status-text-v2">${diffMin===0?'출발대기':diffMin+'분 후 출발'}</div>`;
            }

            html += `<tr class="ktx-row-fade-v2" style="animation-delay:${idx*0.05}s;"><td><span class="ktx-train-no-v2">${r.no}호</span><span class="ktx-grade-name-v2">${r.grade}</span><span class="v-tag-ok-v2">정상운행</span></td><td><div class="ktx-station-name-v2">${r.dep_n}역</div><span class="v-tag-duration-v2">${durationStr}</span></td><td>${soon}${timeStatus}<div class="ktx-time-info-v2">${r.dep_time} 출발</div></td><td><div class="ktx-station-name-v2">${r.arr_n}역</div><div class="ktx-time-info-v2" style="color:#0045e6;">${r.arr_time} 도착</div></td></tr>`;
        });
        tbody.innerHTML = html;
        document.getElementById('ktx-current-page-v2').innerText = page;
        document.getElementById('ktx-prev-page-v2').disabled = (page === 1);
        document.getElementById('ktx-next-page-v2').disabled = (page === Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2));
    }

    function changeKtxPageV2(dir) {
        const total = Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2);
        let target = ktxCurrentPageV2 + dir;
        if (target >= 1 && target <= total) { ktxCurrentPageV2 = target; renderKtxPageV2(ktxCurrentPageV2); }
    }

    async function runKtxLiveSearchV2(manual = false) {
        const btn = document.getElementById('ktx-btn-submit-v2');
        let d_val = document.getElementById('ktx-dep-field-v2').value.trim();
        let a_val = document.getElementById('ktx-arr-field-v2').value.trim();
        if (!d_val || !a_val) { if(manual) alert("출발역과 도착역을 모두 입력하세요."); return; }
        
        btn.innerText = "데이터 검색 중..."; btn.classList.add('is-searching'); btn.disabled = true;
        d_val = d_val.replace(/역$/, ''); a_val = a_val.replace(/역$/, '');
        
        const tbody = document.getElementById('ktx-live-tbody-v2');
        const memoDiv = document.getElementById('ktx-memo-display-v2');
        const pgCtrl = document.getElementById('ktx-pagination-ctrl-v2');
        if(manual) tbody.classList.add('ktx-loading-v2');

        const findStation = (n) => {
            if (n === "여수" || n === "여수엑스포") return { name: "여수EXPO", id: "NAT041993" };
            return ktxStationListV2.find(s => s.name === n || s.name === n + '역');
        }
        const dep = findStation(d_val); const arr = findStation(a_val);
        if (!dep || !arr) { 
            tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0;">역 이름을 정확히 입력해 주세요. (예: 부산, 동대구)</td></tr>';
            pgCtrl.style.display = 'none';
            tbody.classList.remove('ktx-loading-v2');
            btn.innerText = "열차 시간 조회하기"; btn.classList.remove('is-searching'); btn.disabled = false; 
            return; 
        }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live_v2');
        fd.append('dep_id', dep.id); fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            const resData = await response.json();
            const now = new Date();
            currentKtxFullDataV2 = resData.trains.map(item => {
                const parseTrainTime = (str) => { if (!str || str.length < 12) return new Date(0); return new Date(str.substring(0,4), str.substring(4,6)-1, str.substring(6,8), str.substring(8,10), str.substring(10,12)); };
                item.depDate = parseTrainTime(item.raw_dep); item.arrDate = parseTrainTime(item.raw_arr);
                if (item.arrDate < item.depDate) item.arrDate.setDate(item.arrDate.getDate() + 1);
                return item;
            }).sort((a, b) => a.depDate - b.depDate);

            if (currentKtxFullDataV2.length > 0) {
                const totalPages = Math.ceil(currentKtxFullDataV2.length / ktxItemsPerPageV2);
                document.getElementById('ktx-total-pages-v2').innerText = totalPages;
                pgCtrl.style.display = 'flex';
                
                let firstUpcomingIdx = currentKtxFullDataV2.findIndex(t => t.depDate.getTime() > (now.getTime() - 300000));
                if (firstUpcomingIdx === -1) firstUpcomingIdx = 0;
                ktxCurrentPageV2 = Math.floor(firstUpcomingIdx / ktxItemsPerPageV2) + 1;

                if(resData.memo_template) {
                    const f_t = currentKtxFullDataV2[0].dep_time;
                    const l_t = currentKtxFullDataV2[currentKtxFullDataV2.length-1].dep_time;
                    const scrollTips = [" 전체 시간표는 하단 페이징을 확인하세요.", " 모든 배차 정보를 페이지별로 확인 가능합니다."];
                    const randomTip = scrollTips[Math.floor(Math.random() * scrollTips.length)];
                    memoDiv.innerText = resData.memo_template.replace('{first_t}', f_t).replace('{last_t}', l_t) + randomTip;
                    memoDiv.style.display = 'block';
                }
                renderKtxPageV2(ktxCurrentPageV2);
                document.getElementById('ktx-last-update-v2').innerText = now.getHours().toString().padStart(2,'0')+':'+now.getMinutes().toString().padStart(2,'0')+':'+now.getSeconds().toString().padStart(2,'0');
            } else {
                tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0; color:#94a3b8;">오늘 운행되는 열차 정보가 없습니다.</td></tr>';
                pgCtrl.style.display = 'none';
            }
        } catch (e) { tbody.innerHTML = '<tr><td colspan="4" style="padding:60px 0;">데이터 통신 오류</td></tr>'; }

        tbody.classList.remove('ktx-loading-v2');
        btn.innerText = "열차 시간 조회하기"; btn.classList.remove('is-searching'); btn.disabled = false;
    }

    ktxMasterLoadV2();
    setInterval(() => { if(document.getElementById('ktx-dep-field-v2').value) runKtxLiveSearchV2(false); }, 60000);
    document.addEventListener('keypress', function(e) { if((e.target.id === 'ktx-dep-field-v2' || e.target.id === 'ktx-arr-field-v2') && e.keyCode === 13) runKtxLiveSearchV2(true); });
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">서울역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">서울역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '11';
            let curName = '서울';
            let altCity = '21';
            let altName = '부산';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">서울역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">17℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">서울역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%A7%A5%EB%8F%84%EB%82%A0%EB%93%9C+%EC%84%9C%EC%9A%B8%EC%97%AD%EC%A0%90+%EC%84%9C%EC%9A%B8%ED%8A%B9%EB%B3%84%EC%8B%9C+%EC%9A%A9%EC%82%B0%EA%B5%AC+%EB%8F%99%EC%9E%90%EB%8F%99+43-205+%EC%84%9C%EC%9A%B8%EC%97%AD%28%EC%B2%A0%EB%8F%84%EC%97%AD%29" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">맥도날드 서울역점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">양식&gt;햄버거</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">서울특별시 용산구 동자동 43-205 서울역(철도역)</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%8F%85%EB%A6%BD%EB%B0%80%EB%B0%A9+%EC%84%9C%EC%9A%B8%EC%97%AD+%EC%84%9C%EC%9A%B8%ED%8A%B9%EB%B3%84%EC%8B%9C+%EC%9A%A9%EC%82%B0%EA%B5%AC+%EB%8F%99%EC%9E%90%EB%8F%99+43-205+%EC%84%9C%EC%9A%B8%EC%97%AD%EC%82%AC+4%EC%B8%B5+%EB%8F%85%EB%A6%BD%EB%B0%80%EB%B0%A9" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">독립밀방 서울역</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;양식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">서울특별시 용산구 동자동 43-205 서울역사 4층 독립밀방</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%A1%AF%EB%8D%B0%EB%A6%AC%EC%95%84+%EC%84%9C%EC%9A%B8%EC%97%AD%EC%82%AC%EC%A0%90+%EC%84%9C%EC%9A%B8%ED%8A%B9%EB%B3%84%EC%8B%9C+%EC%9A%A9%EC%82%B0%EA%B5%AC+%EB%8F%99%EC%9E%90%EB%8F%99+43-205+109%ED%98%B8" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">롯데리아 서울역사점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">양식&gt;햄버거</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">서울특별시 용산구 동자동 43-205 109호</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%8C%8C%EB%A6%AC%ED%81%AC%EB%9D%BC%EC%83%81+%EC%84%9C%EC%9A%B8%EC%97%AD%EC%A0%90+%EC%84%9C%EC%9A%B8%ED%8A%B9%EB%B3%84%EC%8B%9C+%EC%9A%A9%EC%82%B0%EA%B5%AC+%EB%8F%99%EC%9E%90%EB%8F%99+43-205+2%EC%B8%B5+108%ED%98%B8" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">파리크라상 서울역점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;베이커리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">서울특별시 용산구 동자동 43-205 2층 108호</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EA%B0%80%EB%A9%94%EA%B3%A8%EC%86%90%EC%99%95%EB%A7%8C%EB%91%90+%EB%82%A8%EB%8C%80%EB%AC%B8%EB%B3%B8%EC%A0%90+%EC%84%9C%EC%9A%B8%ED%8A%B9%EB%B3%84%EC%8B%9C+%EC%A4%91%EA%B5%AC+%EB%82%A8%EC%B0%BD%EB%8F%99+60-2" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">가메골손왕만두 남대문본점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">분식&gt;만두</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">서울특별시 중구 남창동 60-2</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">서울역 실시간 주차장 요금</h4>
        
                    <div class="parking-list-container">
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 서울역 KTX빌딩                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">2,400원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">800원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">25,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 서울특별시 용산구 동자동 43-230<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 02-6952-8100                        </div>
                    </div>
                            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">서울역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 서울특별시 용산구 동자동 43-230</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:02-6952-8100" style="color: #0052a4; font-weight: bold; text-decoration: none;">02-6952-8100</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%84%9C%EC%9A%B8%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="350" height="350" src="https://krailroad.co.kr/wp-content/uploads/2026/04/경부선-새마을호-시간표-ITX-서울역-부산역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간.jpg" alt="경부선-새마을호-시간표-ITX-서울역-부산역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간" class="wp-image-20409" srcset="https://krailroad.co.kr/wp-content/uploads/2026/04/경부선-새마을호-시간표-ITX-서울역-부산역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간.jpg 350w, https://krailroad.co.kr/wp-content/uploads/2026/04/경부선-새마을호-시간표-ITX-서울역-부산역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/04/경부선-새마을호-시간표-ITX-서울역-부산역-상하행-전체-첫기차-마지막기차-노선-요금-정차역-실시간-150x150.jpg 150w" sizes="auto, (max-width: 350px) 100vw, 350px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>일신역 기차 시간표 ITX-마음 무궁화호 청량리-동해-안동-제천 중앙선 요금</title>
		<link>https://krailroad.co.kr/%ec%9d%bc%ec%8b%a0%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%8f%99%ed%95%b4-%ec%95%88%eb%8f%99/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Fri, 03 Apr 2026 00:08:46 +0000</pubDate>
				<category><![CDATA[무궁화 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[일신역 기차 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=20098</guid>

					<description><![CDATA[중앙선 지평역과 매곡역 사이에 자리 잡은 일신역은 양평 동부권의 조용한 간이역으로, 도심의 큰 역사들과 달리 고가 위에서 주변 산세를 한눈에 담을 수 있는 정거장입니다. 현재 일신역 기차는 역무원이 상주하지 않는 무인역으로 운영되고 있어 열차 이용 시 현장에서 즉각적인 안내를 받기 어려운데요. 이러한 불편을 해소하고자 코레일 공식 데이터와 실시간 API를 연동하여 일신역 이용객을 위한 운행 정보 ... <a title="일신역 기차 시간표 ITX-마음 무궁화호 청량리-동해-안동-제천 중앙선 요금" class="read-more button" href="https://krailroad.co.kr/%ec%9d%bc%ec%8b%a0%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%8f%99%ed%95%b4-%ec%95%88%eb%8f%99/" aria-label="일신역 기차 시간표 ITX-마음 무궁화호 청량리-동해-안동-제천 중앙선 요금 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">중앙선 지평역과 <a href="https://krailroad.co.kr/%eb%a7%a4%ea%b3%a1%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a4%91%ec%95%99%ec%84%a0-%ec%97%b4%ec%b0%a8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%ec%95%88/">매곡역</a> 사이에 자리 잡은 일신역은 양평 동부권의 조용한 간이역으로, 도심의 큰 역사들과 달리 고가 위에서 주변 산세를 한눈에 담을 수 있는 정거장입니다. 현재 일신역 기차는 역무원이 상주하지 않는 무인역으로 운영되고 있어 열차 이용 시 현장에서 즉각적인 안내를 받기 어려운데요. 이러한 불편을 해소하고자 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일 공식 데이터</a>와 실시간 API를 연동하여 일신역 이용객을 위한 운행 정보 확인 시스템을 정리했습니다.</p>



<p class="wp-block-paragraph">정확하지 않은 옛날 일신역 기차 시간표나 인터넷상의 불확실한 정보 때문에 승강장에서 헛걸음하는 일을 방지하기 위해 실시간 데이터를 역 전광판 기반으로 정보를 구성했는데요. 아래의 운행 현황은 1분 단위로 자동 갱신되며, 청량리로 향하는 상행선과 안동, 제천, 동해 방면 하행선 열차의 현재 위치를 실제 역내 전광판처럼 생생하게 음성안내 시스템으로 안내 받으실 수 있습니다. 재가 개발한 로직으로 인해 화면을 띄워두는 것만으로도 ITX-마음과 무궁화호의 출발 임박 여부나 정확한 도착 시각을 즉시 파악할 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">일신역 기차와 중앙선</h2>



<h3 class="wp-block-heading">구둔역과 일신역의 발자취</h3>



<p class="wp-block-paragraph">일신역 기차는 과거 근대문화유산으로 지정된 구둔역의 영업을 이어받아 문을 열었습니다. 2011년 중앙선 현대화 사업이 마무리되면서 지금의 현대식 고가 역사로 이전하게 되었는데요. 철길을 정비하고 열차가 매끄럽게 달릴 수 있도록 선로를 개량한 덕분에 수도권과 내륙을 잇는 철도망의 한 축을 담당하게 되었습니다. 그러나 현재는 무인역 형태이지만 양평 지형의 특성을 반영한 설계로 지역 주민들의 소중한 이동 지점이 되어주고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">무궁화호와 ITX-마음 운행</h3>



<p class="wp-block-paragraph">이곳은 서울 청량리를 출발해 경북 <a href="https://krailroad.co.kr/%ec%95%88%eb%8f%99%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a4%91%ec%95%99%ec%84%a0-%ec%9a%94/">안동</a>이나 강원도 동해까지 이어지는 노선이 주를 이룹니다. 고속열차와 달리 산세와 들판이 이어지는 풍경을 감상하며 이동할 수 있는 무궁화호와 최신 설비를 갖춘 ITX-마음이 정차하는데요. 일신역 기차 시간표를 확인해 보면 전체 운행 횟수가 많지는 않으나, 정해진 시각에 맞춰 운행되는 정확한 시간을 바탕으로 출장이나 여행을 목적으로 방문하는 이들에게 안정적인 교통수단이 될것입니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">무인역이 주는 새로운 가치</h3>



<p class="wp-block-paragraph">실시간으로 업데이트되는 데이터베이스를 활용하면 서원주를 거쳐 남쪽으로 내려가거나 양평 시내로 이동하는 일정을 훨씬 확실하게 시간표와 소요시간을 확인 하실 수 있으며, 고가 역사 위에서 내려다보는 지평면 일대의 전경은 일신역만의 특징이기도 한데요. 역사 주변의 주차 공간이나 실시간 날씨 정보를 함께 체크해두면 기차 시간을 놓치지 않고 여유롭게 이용하실 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">일신<strong>역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">일신<br>↓<br>청량리</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1602호</span><div class="time-display">12:10</div><div class="arrival-info">12:56 도착</div></td><td><span class="train-detail">1602호</span><div class="time-display">12:10</div><div class="arrival-info">12:56 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1652호</span><div class="time-display">06:27</div><div class="arrival-info">07:21 도착</div></td><td><span class="train-detail">1676호</span><div class="time-display">19:03</div><div class="arrival-info">19:55 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">일신<br>↓<br>제천</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1671호</span><div class="time-display">08:35</div><div class="arrival-info">09:31 도착</div></td><td><span class="train-detail">1651호</span><div class="time-display">21:28</div><div class="arrival-info">22:24 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">일신<br>↓<br>태백</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1671호</span><div class="time-display">08:35</div><div class="arrival-info">11:17 도착</div></td><td><span class="train-detail">1677호</span><div class="time-display">20:10</div><div class="arrival-info">22:44 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">일신<br>↓<br>동해</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1671호</span><div class="time-display">08:35</div><div class="arrival-info">12:25 도착</div></td><td><span class="train-detail">1677호</span><div class="time-display">20:10</div><div class="arrival-info">23:50 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong><strong><strong>일신</strong></strong></strong>역 </strong>ITX-마음 무궁화호 <strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>운임</th></tr></thead><tbody><tr><td>중앙1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">일신</td><td>4,400</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">일신</td><td>4,400</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">청량리</td><td class="highlight">일신</td><td>6,600</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">일신</td><td class="highlight">경주</td><td>19,300</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">일신</td><td class="highlight">경주</td><td>25,000</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">일신</td><td class="highlight">태화강</td><td>22,000</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">일신</td><td class="highlight">태화강</td><td>29,000</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">일신</td><td class="highlight">부전</td><td>26,100</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">일신</td><td class="highlight">부전</td><td>35,100</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">일신</td><td class="highlight">제천</td><td>4,800</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">일신</td><td class="highlight">제천</td><td>4,800</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">일신</td><td class="highlight">제천</td><td>6,100</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">일신</td><td class="highlight">태백</td><td>10,800</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">일신</td><td class="highlight">동해</td><td>14,800</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>일신역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <s>일신역 KTX 노선 없음</s><br>✅ <s>일신역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ec%9d%bc%ec%8b%a0%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%8f%99%ed%95%b4-%ec%95%88%eb%8f%99/#%EC%9D%BC%EC%8B%A0%EC%97%AD_%EB%8B%A4%EB%A5%B8_%EC%97%B4%EC%B0%A8_%EC%8B%9C%EA%B0%84%ED%91%9C">일신역 ITX, 무궁화 시간표 바로가기</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>일신역 ITX-마음 <strong><strong><strong>무궁화호 </strong>시간표</strong></strong></strong></h2>



<h3 class="wp-block-heading">출발 : 일신 → 도착 : 청량리</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>일신</th><th>석불</th><th>지평</th><th>용문</th><th>양평</th><th>덕소</th><th>청량리</th></tr></thead><tbody><tr><td>1652</td><td>무궁화</td><td>06:27</td><td>06:32</td><td>06:37</td><td>06:43</td><td>06:51</td><td>07:08</td><td>07:21</td></tr><tr><td>1662</td><td>무궁화</td><td>07:33</td><td>07:38</td><td>07:42</td><td>07:48</td><td>07:56</td><td>08:13</td><td>08:27</td></tr><tr><td>1672</td><td>무궁화</td><td>09:41</td><td></td><td>09:48</td><td>09:54</td><td>10:01</td><td>10:18</td><td>10:31</td></tr><tr><td>1602</td><td>ITX-마음</td><td>12:10</td><td></td><td>12:16</td><td>12:22</td><td>12:29</td><td></td><td>12:56</td></tr><tr><td>1674</td><td>무궁화</td><td>17:35</td><td>17:41</td><td>17:50</td><td>17:56</td><td>18:04</td><td>18:21</td><td>18:35</td></tr><tr><td>1676</td><td>무궁화</td><td>19:03</td><td>19:08</td><td>19:12</td><td>19:17</td><td>19:25</td><td>19:42</td><td>19:55</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 일신 → 도착 : 제천</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>일신</th><th>매곡</th><th>양동</th><th>삼산</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th></tr></thead><tbody><tr><td>1671</td><td>무궁화</td><td>08:35</td><td>08:40</td><td>08:44</td><td>08:49</td><td>08:57</td><td>09:05</td><td></td><td>09:31</td></tr><tr><td>1675</td><td>무궁화</td><td>13:17</td><td>13:22</td><td>13:27</td><td></td><td>13:36</td><td>13:43</td><td></td><td>14:07</td></tr><tr><td>1677</td><td>무궁화</td><td>20:10</td><td>20:15</td><td>20:20</td><td></td><td>20:29</td><td>20:36</td><td></td><td>21:01</td></tr><tr><td>1651</td><td>무궁화</td><td>21:28</td><td>21:33</td><td>21:38</td><td>21:43</td><td>21:50</td><td>21:57</td><td>22:16</td><td>22:24</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 일신 → 도착 : 동해</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차종별</th><th>열차번호</th><th>일신</th><th>매곡</th><th>양동</th><th>삼산</th><th>서원주</th><th>원주</th><th>제천</th><th>쌍룡</th><th>영월</th><th>예미</th><th>민둥산</th><th>사북</th><th>고한</th><th>태백</th><th>동백산</th><th>도계</th><th>신기</th><th>동해</th></tr></thead><tbody><tr><td>무궁화</td><td>1671</td><td>08:35</td><td>08:40</td><td>08:44</td><td>08:49</td><td>08:57</td><td>09:05</td><td>09:31</td><td></td><td>10:05</td><td>10:25</td><td>10:47</td><td>10:56</td><td>11:03</td><td>11:17</td><td>11:29</td><td>11:45</td><td>12:02</td><td>12:25</td></tr><tr><td>무궁화</td><td>1675</td><td>13:17</td><td>13:22</td><td>13:27</td><td></td><td>13:36</td><td>13:43</td><td>14:07</td><td>14:22</td><td>14:40</td><td>15:01</td><td>15:23</td><td>15:32</td><td>15:39</td><td>15:54</td><td>16:05</td><td>16:23</td><td></td><td>17:05</td></tr><tr><td>무궁화</td><td>1677</td><td>20:10</td><td>20:15</td><td>20:20</td><td></td><td>20:29</td><td>20:36</td><td>21:01</td><td></td><td>21:32</td><td>21:52</td><td>22:13</td><td>22:22</td><td>22:29</td><td>22:44</td><td>22:56</td><td>23:12</td><td></td><td>23:50</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>일신역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '일신'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">일신역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">일신역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '';
            let curName = '일신';
            let altCity = '';
            let altName = '';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">일신역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">12℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">일신역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EA%B9%80%EB%B0%A5%ED%83%80%EC%9A%B4+%EC%86%A1%EB%82%B4%EC%A0%90+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EB%B6%80%EC%B2%9C%EC%8B%9C+%EC%86%8C%EC%82%AC%EA%B5%AC+%EC%86%A1%EB%82%B4%EB%8F%99+299" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">김밥타운 송내점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">분식&gt;김밥</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 부천시 소사구 송내동 299</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%8C%8C%EB%A6%AC%EB%B0%94%EA%B2%8C%EB%9C%A8+%EC%86%A1%EB%82%B4%EC%97%AD%EC%A0%90+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EB%B6%80%EC%B2%9C%EC%8B%9C+%EC%86%8C%EC%82%AC%EA%B5%AC+%EC%86%A1%EB%82%B4%EB%8F%99+709-2+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">파리바게뜨 송내역점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;베이커리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 부천시 소사구 송내동 709-2 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%A7%A4%EB%A8%B8%EB%93%9C%EC%9D%B5%EC%8A%A4%ED%94%84%EB%A0%88%EC%8A%A4+%EC%86%A1%EB%82%B4%EB%82%A8%EB%B6%80%EC%97%AD%EC%A0%90+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EB%B6%80%EC%B2%9C%EC%8B%9C+%EC%86%8C%EC%82%AC%EA%B5%AC+%EC%86%A1%EB%82%B4%EB%8F%99+709-7+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">매머드익스프레스 송내남부역점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;카페</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 부천시 소사구 송내동 709-7 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%98%AC%EB%A6%AC%EB%B8%8C%EC%95%A4%EC%98%AC%EB%A6%AC%EB%B9%84%EC%95%84+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EB%B6%80%EC%B2%9C%EC%8B%9C+%EC%86%8C%EC%82%AC%EA%B5%AC+%EC%86%A1%EB%82%B4%EB%8F%99+700-6+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">올리브앤올리비아</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;카페,디저트</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 부천시 소사구 송내동 700-6 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%86%A1%EB%82%B4%ED%8C%94%EB%B0%A9%EC%83%81%ED%9A%8C+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EB%B6%80%EC%B2%9C%EC%8B%9C+%EC%86%8C%EC%82%AC%EA%B5%AC+%EC%86%A1%EB%82%B4%EB%8F%99+280-3" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">송내팔방상회</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;육류,고기요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 부천시 소사구 송내동 280-3</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">일신역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">일신역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 일신역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%9D%BC%EC%8B%A0%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/04/일신역-기차-ITX-마음-무궁화호-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="일신역-기차-ITX-마음-무궁화호-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-20130" srcset="https://krailroad.co.kr/wp-content/uploads/2026/04/일신역-기차-ITX-마음-무궁화호-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/04/일신역-기차-ITX-마음-무궁화호-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/04/일신역-기차-ITX-마음-무궁화호-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>매곡역 시간표 ITX-마음 무궁화호 중앙선 열차 청량리 안동 제천 동해 요금</title>
		<link>https://krailroad.co.kr/%eb%a7%a4%ea%b3%a1%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a4%91%ec%95%99%ec%84%a0-%ec%97%b4%ec%b0%a8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%ec%95%88/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Fri, 27 Mar 2026 02:55:05 +0000</pubDate>
				<category><![CDATA[무궁화 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[매곡역 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=19810</guid>

					<description><![CDATA[양평의 깊은 산자락을 관통하는 철길 위, 고가 형태로 우뚝 솟은 매곡은 중앙선 노선 중에서도 가장 고요한 휴식을 선사하는 정거장입니다. 지평역과 양동역 사이에서 묵묵히 자리를 지켜온 이 역은, 화려한 도심 역사의 활기 대신 창밖으로 흐르는 산능선의 비경을 오롯이 품고 있는데요. 무인역으로 운영되는 특성상 현장에서 정보를 얻기 어려운 점을 고려해, 코레일 공식 데이터와 공공 API를 실시간으로 연동한 ... <a title="매곡역 시간표 ITX-마음 무궁화호 중앙선 열차 청량리 안동 제천 동해 요금" class="read-more button" href="https://krailroad.co.kr/%eb%a7%a4%ea%b3%a1%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a4%91%ec%95%99%ec%84%a0-%ec%97%b4%ec%b0%a8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%ec%95%88/" aria-label="매곡역 시간표 ITX-마음 무궁화호 중앙선 열차 청량리 안동 제천 동해 요금 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">양평의 깊은 산자락을 관통하는 철길 위, 고가 형태로 우뚝 솟은 매곡은 중앙선 노선 중에서도 가장 고요한 휴식을 선사하는 정거장입니다. 지평역과 양동역 사이에서 묵묵히 자리를 지켜온 이 역은, 화려한 도심 역사의 활기 대신 창밖으로 흐르는 산능선의 비경을 오롯이 품고 있는데요.</p>



<p class="wp-block-paragraph">무인역으로 운영되는 특성상 현장에서 정보를 얻기 어려운 점을 고려해, <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a> 공식 데이터와 공공 API를 실시간으로 연동한 시간표를 구성했습니다. 중앙선 매곡역 열차의 무궁화호 상하행 운행 시간표를 데이터베이스화 하였으며, 첫차와 막차 운행 정보, 노선별 열차종별 열차 요금, 정차역 그리고 실시간으로 매곡역에서 출발하여 도착역을 입력 검색하면 남은 열차 시간을 실시간으로 조회 가능합니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">매곡 시간표와 발자취</h2>



<h3 class="wp-block-heading">곡수역의 기억을 잇는 고가 역사</h3>



<p class="wp-block-paragraph">매곡역의 뿌리는 1940년 영업을 시작한 곡수역에 닿아 있습니다. 80년이 넘는 세월 동안 양평 동부권의 작은 길목이었던 이곳은, 2011년 중앙선 철도 현대화 사업을 거치며 지금의 현대식 고가 역사로 자리를 옮겼는데요. 철길을 정비하고 열차가 매끄럽게 달릴 수 있도록 현대화하는 대공사를 통해 현재의 모습을 갖추게 되었습니다. 비록 지금은 역무원이 없는 무인역이지만, 양평의 험준한 지형을 극복하고 수도권과 내륙을 잇는 철도 교통의 상징적인 지점으로서 그 역할을 다하고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">중앙선 무궁화호 그리고 매곡</h3>



<p class="wp-block-paragraph">현재 이 노선은 서울 청량리역을 출발해 경북 <a href="https://krailroad.co.kr/%ec%95%88%eb%8f%99%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a4%91%ec%95%99%ec%84%a0-%ec%9a%94/">안동역</a>과 <a href="https://krailroad.co.kr/%eb%8f%99%ed%95%b4%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%eb%ac%b4%eb%a6%89%ea%b3%84%ea%b3%a1-%eb%a7%9d/">동해역</a>으로 향하는 무궁화호가 주축을 이룹니다. 고속열차처럼 눈 깜짝할 새 지나치지는 않지만, 느릿하게 흐르는 창밖 풍경을 감상하며 이동할 수 있는 독보적인 운치를 자랑하는데요. 무궁화호 시간표를 확인해 보면 열차가 촘촘하지는 않아도 정해진 시간에 정확히 들어오는 정시성을 바탕으로 지역 주민들의 소중한 이동 수단이 되어주고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">역사 이용 안내와 미래 가치</h3>



<p class="wp-block-paragraph">데이터베이스화된 매곡 열차 시간표를 활용해 청량리나 양평 방향으로 향하거나, <a href="https://krailroad.co.kr/%ec%84%9c%ec%9b%90%ec%a3%bc%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9cktx-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a4%91%ec%95%99%ec%84%a0-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89/">서원주</a>를 거쳐 남쪽으로 내려가는 노선은 저마다의 색다른 매력을 선사합니다. 특히 무인역 특유의 적막함과 고가 역사 위에서 내려다보는 지정면 일대의 풍경은 여행객들 사이에서 만족도가 높은데요. 앞으로 주변 관광 자원과 연계된 소규모 테마가 활성화되면, 수도권의 인프라와 양평 내륙의 정취가 교류하는 거대한 통로가 될 전망입니다.</p>



<p class="wp-block-paragraph">또한 역 주변의 주차 상황이나 실시간 날씨 정보를 함께 체크해두면 기차 시간에 쫓기지 않고 한결 여유롭게 움직일 수 있습니다. 철길을 따라 이어지는 중앙선의 매력이 앞으로 어떻게 깊어질지 주목되는 부분입니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">매곡<strong>역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">매곡<br>↓<br>청량리</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1602호</span><div class="time-display">12:05</div><div class="arrival-info">12:56 도착</div></td><td><span class="train-detail">1602호</span><div class="time-display">12:05</div><div class="arrival-info">12:56 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1652호</span><div class="time-display">06:18</div><div class="arrival-info">07:21 도착</div></td><td><span class="train-detail">1676호</span><div class="time-display">18:59</div><div class="arrival-info">19:55 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">매곡<br>↓<br>제천</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1671호</span><div class="time-display">08:40</div><div class="arrival-info">09:31 도착</div></td><td><span class="train-detail">1651호</span><div class="time-display">21:33</div><div class="arrival-info">22:24 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">매곡<br>↓<br>태백</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1671호</span><div class="time-display">08:40</div><div class="arrival-info">11:17 도착</div></td><td><span class="train-detail">1677호</span><div class="time-display">20:15</div><div class="arrival-info">22:44 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">매곡<br>↓<br>동해</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1671호</span><div class="time-display">08:40</div><div class="arrival-info">12:25 도착</div></td><td><span class="train-detail">1677호</span><div class="time-display">20:15</div><div class="arrival-info">23:50 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong><strong><strong>매곡</strong></strong></strong>역 </strong>ITX-마음 무궁화호 <strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>운임</th></tr></thead><tbody><tr><td>중앙1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">매곡</td><td>4,700</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">매곡</td><td>4,700</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">청량리</td><td class="highlight">매곡</td><td>7,000</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">매곡</td><td class="highlight">경주</td><td>19,100</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">매곡</td><td class="highlight">경주</td><td>24,600</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">매곡</td><td class="highlight">태화강</td><td>21,800</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">매곡</td><td class="highlight">태화강</td><td>28,600</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">매곡</td><td class="highlight">부전</td><td>25,900</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">매곡</td><td class="highlight">부전</td><td>34,700</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">매곡</td><td class="highlight">제천</td><td>4,500</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">매곡</td><td class="highlight">제천</td><td>4,500</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">매곡</td><td class="highlight">제천</td><td>5,800</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">매곡</td><td class="highlight">태백</td><td>10,500</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">매곡</td><td class="highlight">동해</td><td>14,500</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>매곡역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <s>매곡역 KTX 노선 없음</s><br>✅ <s>매곡역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%eb%a7%a4%ea%b3%a1%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a4%91%ec%95%99%ec%84%a0-%ec%97%b4%ec%b0%a8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%ec%95%88/">매곡역 ITX, 무궁화 시간표 바로가기</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>매곡역 ITX-마음 <strong><strong><strong>무궁화호 </strong>시간표</strong></strong></strong></h2>



<h3 class="wp-block-heading">출발 : 매곡 → 도착 : 청량리</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>매곡</th><th>일신</th><th>석불</th><th>지평</th><th>용문</th><th>양평</th><th>덕소</th><th>청량리</th></tr></thead><tbody><tr><td>1652</td><td>무궁화</td><td>06:18</td><td>06:27</td><td>06:32</td><td>06:37</td><td>06:43</td><td>06:51</td><td>07:08</td><td>07:21</td></tr><tr><td>1662</td><td>무궁화</td><td>07:24</td><td>07:33</td><td>07:38</td><td>07:42</td><td>07:48</td><td>07:56</td><td>08:13</td><td>08:27</td></tr><tr><td>1602</td><td>ITX-마음</td><td>12:05</td><td>12:10</td><td></td><td>12:16</td><td>12:22</td><td>12:29</td><td></td><td>12:56</td></tr><tr><td>1674</td><td>무궁화</td><td>17:28</td><td>17:35</td><td>17:41</td><td>17:50</td><td>17:56</td><td>18:04</td><td>18:21</td><td>18:35</td></tr><tr><td>1676</td><td>무궁화</td><td>18:59</td><td>19:03</td><td>19:08</td><td>19:12</td><td>19:17</td><td>19:25</td><td>19:42</td><td>19:55</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 매곡 → 도착 : 제천</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>매곡</th><th>양동</th><th>삼산</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th></tr></thead><tbody><tr><td>1671</td><td>무궁화</td><td>08:40</td><td>08:44</td><td>08:49</td><td>08:57</td><td>09:05</td><td></td><td>09:31</td></tr><tr><td>1675</td><td>무궁화</td><td>13:22</td><td>13:27</td><td></td><td>13:36</td><td>13:43</td><td></td><td>14:07</td></tr><tr><td>1677</td><td>무궁화</td><td>20:15</td><td>20:20</td><td></td><td>20:29</td><td>20:36</td><td></td><td>21:01</td></tr><tr><td>1651</td><td>무궁화</td><td>21:33</td><td>21:38</td><td>21:43</td><td>21:50</td><td>21:57</td><td>22:16</td><td>22:24</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 매곡 → 도착 : 동해</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차종별</th><th>열차번호</th><th>매곡</th><th>양동</th><th>삼산</th><th>서원주</th><th>원주</th><th>제천</th><th>쌍룡</th><th>영월</th><th>예미</th><th>민둥산</th><th>사북</th><th>고한</th><th>태백</th><th>동백산</th><th>도계</th><th>신기</th><th>동해</th></tr></thead><tbody><tr><td>무궁화</td><td>1671</td><td>08:40</td><td>08:44</td><td>08:49</td><td>08:57</td><td>09:05</td><td>09:31</td><td></td><td>10:05</td><td>10:25</td><td>10:47</td><td>10:56</td><td>11:03</td><td>11:17</td><td>11:29</td><td>11:45</td><td>12:02</td><td>12:25</td></tr><tr><td>무궁화</td><td>1675</td><td>13:22</td><td>13:27</td><td></td><td>13:36</td><td>13:43</td><td>14:07</td><td>14:22</td><td>14:40</td><td>15:01</td><td>15:23</td><td>15:32</td><td>15:39</td><td>15:54</td><td>16:05</td><td>16:23</td><td></td><td>17:05</td></tr><tr><td>무궁화</td><td>1677</td><td>20:15</td><td>20:20</td><td></td><td>20:29</td><td>20:36</td><td>21:01</td><td></td><td>21:32</td><td>21:52</td><td>22:13</td><td>22:22</td><td>22:29</td><td>22:44</td><td>22:56</td><td>23:12</td><td></td><td>23:50</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>매곡역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '매곡'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">매곡역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">매곡역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '';
            let curName = '매곡';
            let altCity = '';
            let altName = '';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">매곡역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">13℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">매곡역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EA%B5%AC%EB%82%A8%EB%A7%A4%EC%98%B9%EC%8B%AC%EC%9D%B4+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EC%96%91%ED%8F%89%EA%B5%B0+%EC%96%91%EB%8F%99%EB%A9%B4+%EC%8C%8D%ED%95%99%EB%A6%AC+185-11+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">구남매옹심이</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;한식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 양평군 양동면 쌍학리 185-11 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%B9%B4%ED%8E%98%EC%97%A0+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EC%96%91%ED%8F%89%EA%B5%B0+%EC%96%91%EB%8F%99%EB%A9%B4+%EC%8C%8D%ED%95%99%EB%A6%AC+184-30" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">카페엠</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;카페,디저트</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 양평군 양동면 쌍학리 184-30</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%9D%B4%EB%B3%91%EC%9D%80%EC%A0%9C%EB%B9%B5%EC%86%8C+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EC%96%91%ED%8F%89%EA%B5%B0+%EC%96%91%EB%8F%99%EB%A9%B4+%EC%8C%8D%ED%95%99%EB%A6%AC+550-6+%EC%9D%B4%EB%B3%91%EC%9D%80%EC%A0%9C%EB%B9%B5%EC%86%8C" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">이병은제빵소</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;베이커리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 양평군 양동면 쌍학리 550-6 이병은제빵소</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%8C%94%ED%8C%94%ED%99%94%EB%A1%9C%EA%B5%AC%EC%9D%B4+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EC%96%91%ED%8F%89%EA%B5%B0+%EC%96%91%EB%8F%99%EB%A9%B4+%EC%8C%8D%ED%95%99%EB%A6%AC+205-4+%ED%8C%94%ED%8C%94%ED%99%94%EB%A1%9C%EA%B5%AC%EC%9D%B4" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">팔팔화로구이</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;육류,고기요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 양평군 양동면 쌍학리 205-4 팔팔화로구이</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%BF%A0%EC%B9%B4%EC%BF%A0%EC%BB%A4%ED%94%BC+%EB%8F%99%EC%96%91%ED%8F%89%EC%A0%90+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EC%96%91%ED%8F%89%EA%B5%B0+%EC%96%91%EB%8F%99%EB%A9%B4+%EC%8C%8D%ED%95%99%EB%A6%AC+154-1+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">쿠카쿠커피 동양평점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;카페,디저트</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 양평군 양동면 쌍학리 154-1 1층</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">매곡역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">매곡역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 매곡역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EB%A7%A4%EA%B3%A1%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/03/매곡역-기차-시간표-ITX-마음-무궁화호-중앙선-첫기차-마지막기차-요금-정차역.jpg" alt="매곡역-기차-시간표-ITX-마음-무궁화호-중앙선-첫기차-마지막기차-요금-정차역" class="wp-image-19833" srcset="https://krailroad.co.kr/wp-content/uploads/2026/03/매곡역-기차-시간표-ITX-마음-무궁화호-중앙선-첫기차-마지막기차-요금-정차역.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/03/매곡역-기차-시간표-ITX-마음-무궁화호-중앙선-첫기차-마지막기차-요금-정차역-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/03/매곡역-기차-시간표-ITX-마음-무궁화호-중앙선-첫기차-마지막기차-요금-정차역-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>양동역 기차 시간표 ITX-마음 무궁화호 중앙선 청량리-부전-동해 요금 정차역</title>
		<link>https://krailroad.co.kr/%ec%96%91%eb%8f%99%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a4%91%ec%95%99%ec%84%a0-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Fri, 27 Mar 2026 00:30:17 +0000</pubDate>
				<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[무궁화 시간표]]></category>
		<category><![CDATA[양동역 기차 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=19798</guid>

					<description><![CDATA[경기도 양평군 양동면의 고요한 산세 속에 자리 잡은 양동역 기차는 중앙선 철길이 강원도와 경기도를 가르는 경계에서 중심을 잡고 있는 중요한 정차역입니다. 과거 증기기관차가 지나던 소박한 간이역의 정취를 간직하면서도, 이제는 현대화된 선로 위로 무궁화호와 ITX-마음이 교차하며 수도권 외곽과 내륙을 잇는 득이 있는 길목으로 기능하고 있습니다. 이번 양동역 기차 시간표는 정보가 넘쳐나는 시대에 일일이 검색 엔진을 뒤지며 ... <a title="양동역 기차 시간표 ITX-마음 무궁화호 중앙선 청량리-부전-동해 요금 정차역" class="read-more button" href="https://krailroad.co.kr/%ec%96%91%eb%8f%99%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a4%91%ec%95%99%ec%84%a0-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80/" aria-label="양동역 기차 시간표 ITX-마음 무궁화호 중앙선 청량리-부전-동해 요금 정차역 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">경기도 양평군 양동면의 고요한 산세 속에 자리 잡은 양동역 기차는 중앙선 철길이 강원도와 경기도를 가르는 경계에서 중심을 잡고 있는 중요한 정차역입니다. 과거 증기기관차가 지나던 소박한 간이역의 정취를 간직하면서도, 이제는 현대화된 선로 위로 무궁화호와 ITX-마음이 교차하며 수도권 외곽과 내륙을 잇는 득이 있는 길목으로 기능하고 있습니다.</p>



<p class="wp-block-paragraph">이번 양동역 기차 시간표는 정보가 넘쳐나는 시대에 일일이 검색 엔진을 뒤지며 낚시성 정보를 가려낼 필요가 없도록 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a> 자료와 공공데이터 API를 연동한 실시간 양동역 버스 도착 시간표, 날씨, 주변 맛집, 주차요금 등의 자료를 정리했습니다. 양동역 무궁화호와 ITX-마음의 첫차부터 막차까지 운행 현황을 역 전광판처럼 생생하게 보여줍니다. 화면을 유지하시면 출발 준비나 임박 상태, 정상 운행 여부를 실시간으로 파악하며 여유롭게 열차를 이용할 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">양동역의 변천과 철길의 의미</h2>



<h3 class="wp-block-heading">경계를 잇는 간이역의 재해석</h3>



<p class="wp-block-paragraph">양동역은 양평의 끝자락에서 강원도 <a href="https://krailroad.co.kr/%ec%9b%90%ec%a3%bc%ec%97%ad-%ea%b8%b0%ec%b0%a8-ktx-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80/">원주</a>로 넘어가는 길목에 위치하여 지역 주민들의 소중한 발이 되어왔으며, 2012년 중앙선 복선전철화 사업과 함께 구역사를 뒤로하고 현대적인 역사로 탈바꿈하며 새로운 전기를 맞이했는데요. 층층이 겹쳐진 산자락과 맑은 공기가 감도는 양동면의 풍경 속에 들어선 현재의 역사는, 철길을 정비하고 전동차가 안정적으로 다닐 수 있게 개량된 결과물로써 지역 교통의 핵심적인 역할을 수행하고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">중앙선 노선 속 양동역의 가치</h3>



<p class="wp-block-paragraph">현재 양동역 기차는 청량리와 안동, 부전 방향을 잇는 중앙선의 든든한 징검다리 역할을 담당합니다. 비록 모든 고속열차가 정차하는 대형 역은 아니지만, 무궁화호와 더불어 최신형 ITX-마음이 정차하면서 수도권으로의 접근성이 몰라보게 좋아졌는데요. 이는 양평 동부권의 자산이 서울의 인프라와 실시간으로 교류하는 통로가 되며, 자연 속에서 조용한 일상을 보내는 분들에게도 도시와의 거리를 좁혀주는 결정적인 배경이 되었습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">양동역 열차 노선 및 이용 안내</h3>



<p class="wp-block-paragraph">현재 양동역 기차 노선은 청량리행 상행선과 안동·부전행 하행선이 교차하는 중앙선의 정겨운 구조를 자랑합니다. 무궁화호 요금과 큰 차이 없는 합리적인 수준의 양동역 ITX-마음이 상시 운행되며 열차 선택의 폭이 무척 넓어졌는데요. 양동역 기차 시간표를 살펴보면 서울 방향은 물론 경북 내륙 깊숙이 들어가는 하행선까지 이동이 가능합니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">양동<strong>역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">양동<br>↓<br>청량리</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1612호</span><div class="time-display">08:54</div><div class="arrival-info">09:47 도착</div></td><td><span class="train-detail">1604호</span><div class="time-display">20:08</div><div class="arrival-info">20:56 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1652호</span><div class="time-display">06:13</div><div class="arrival-info">07:21 도착</div></td><td><span class="train-detail">1678호</span><div class="time-display">21:50</div><div class="arrival-info">22:40 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">양동<br>↓<br>안동</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">07:31</div><div class="arrival-info">09:16 도착</div></td><td><span class="train-detail">1613호</span><div class="time-display">18:33</div><div class="arrival-info">20:15 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">양동<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">07:31</div><div class="arrival-info">12:20 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">15:46</div><div class="arrival-info">20:28 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">양동<br>↓<br>태백</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1671호</span><div class="time-display">08:44</div><div class="arrival-info">11:17 도착</div></td><td><span class="train-detail">1677호</span><div class="time-display">20:20</div><div class="arrival-info">22:44 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">양동<br>↓<br>동해</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1671호</span><div class="time-display">08:44</div><div class="arrival-info">12:25 도착</div></td><td><span class="train-detail">1677호</span><div class="time-display">20:20</div><div class="arrival-info">23:50 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong><strong><strong>양동</strong></strong></strong>역 </strong>ITX-마음 무궁화호 <strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>운임</th></tr></thead><tbody><tr><td>중앙1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">양동</td><td>4,900</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">양동</td><td>4,900</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">청량리</td><td class="highlight">양동</td><td>7,300</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">양동</td><td class="highlight">경주</td><td>18,900</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">양동</td><td class="highlight">경주</td><td>24,300</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">양동</td><td class="highlight">태화강</td><td>21,600</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">양동</td><td class="highlight">태화강</td><td>28,300</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">양동</td><td class="highlight">부전</td><td>25,700</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">양동</td><td class="highlight">부전</td><td>34,400</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">양동</td><td class="highlight">태백</td><td>10,300</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">양동</td><td class="highlight">동해</td><td>14,300</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>양동역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <s>양동역 KTX 노선 없음</s><br>✅ <s>양동역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ec%96%91%eb%8f%99%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a4%91%ec%95%99%ec%84%a0-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80/">양동역 ITX, 무궁화 시간표 바로가기</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>양동역 <strong><strong><strong>ITX-마음 무궁화호 </strong>시간표</strong></strong></strong></h2>



<h3 class="wp-block-heading">출발 : 양동 → 도착 : 청량리</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>양동</th><th>매곡</th><th>일신</th><th>석불</th><th>지평</th><th>용문</th><th>양평</th><th>덕소</th><th>청량리</th></tr></thead><tbody><tr><td>1652</td><td>무궁화</td><td>06:13</td><td>06:18</td><td>06:27</td><td>06:32</td><td>06:37</td><td>06:43</td><td>06:51</td><td>07:08</td><td>07:21</td></tr><tr><td>1662</td><td>무궁화</td><td>07:18</td><td>07:24</td><td>07:33</td><td>07:38</td><td>07:42</td><td>07:48</td><td>07:56</td><td>08:13</td><td>08:27</td></tr><tr><td>1612</td><td>ITX-마음</td><td>08:54</td><td></td><td></td><td></td><td></td><td>09:08</td><td>09:16</td><td>09:34</td><td>09:47</td></tr><tr><td>1672</td><td>무궁화</td><td>09:33</td><td></td><td>09:41</td><td></td><td>09:48</td><td>09:54</td><td>10:01</td><td>10:18</td><td>10:31</td></tr><tr><td>1602</td><td>ITX-마음</td><td>12:00</td><td>12:05</td><td>12:10</td><td></td><td>12:16</td><td>12:22</td><td>12:29</td><td></td><td>12:56</td></tr><tr><td>1614</td><td>ITX-마음</td><td>16:14</td><td></td><td></td><td></td><td></td><td>16:28</td><td>16:36</td><td>16:53</td><td>17:06</td></tr><tr><td>1674</td><td>무궁화</td><td>17:24</td><td>17:28</td><td>17:35</td><td>17:41</td><td>17:50</td><td>17:56</td><td>18:04</td><td>18:21</td><td>18:35</td></tr><tr><td>1676</td><td>무궁화</td><td>18:53</td><td>18:59</td><td>19:03</td><td>19:08</td><td>19:12</td><td>19:17</td><td>19:25</td><td>19:42</td><td>19:55</td></tr><tr><td>1604</td><td>ITX-마음</td><td>20:08</td><td></td><td></td><td></td><td></td><td>20:21</td><td>20:29</td><td></td><td>20:56</td></tr><tr><td>1678</td><td>무궁화</td><td>21:50</td><td></td><td></td><td></td><td></td><td>22:02</td><td>22:10</td><td>22:27</td><td>22:40</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 양동 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>양동</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th><th>의성</th><th>군위</th><th>영천</th><th>아화</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>07:31</td><td>07:40</td><td>07:47</td><td>08:05</td><td>08:14</td><td>08:31</td><td>08:44</td><td>08:55</td><td>09:16</td><td>09:34</td><td>09:52</td><td>10:14</td><td>10:26</td><td>10:43</td><td>11:04</td><td>11:13</td><td>11:30</td><td>11:51</td><td>12:02</td><td>12:10</td><td>12:20</td></tr><tr><td>1603</td><td>ITX-마음</td><td>15:46</td><td>15:56</td><td>16:03</td><td></td><td>16:28</td><td>16:45</td><td>16:58</td><td>17:10</td><td>17:31</td><td>17:49</td><td>18:06</td><td>18:27</td><td>18:38</td><td>18:55</td><td>19:15</td><td>19:23</td><td>19:39</td><td>20:00</td><td>20:10</td><td>20:17</td><td>20:28</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 양동 → 도착 : 제천</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>양동</th><th>삼산</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>07:31</td><td></td><td>07:40</td><td>07:47</td><td>08:05</td><td>08:14</td></tr><tr><td>1671</td><td>무궁화</td><td>08:44</td><td>08:49</td><td>08:57</td><td>09:05</td><td></td><td>09:31</td></tr><tr><td>1673</td><td>무궁화</td><td>10:41</td><td>10:46</td><td>10:53</td><td>11:00</td><td>11:20</td><td>11:30</td></tr><tr><td>1611</td><td>ITX-마음</td><td>11:33</td><td></td><td>11:42</td><td>11:49</td><td></td><td>12:13</td></tr><tr><td>1675</td><td>무궁화</td><td>13:27</td><td></td><td>13:36</td><td>13:43</td><td></td><td>14:07</td></tr><tr><td>1603</td><td>ITX-마음</td><td>15:46</td><td></td><td>15:56</td><td>16:03</td><td></td><td>16:28</td></tr><tr><td>1613</td><td>ITX-마음</td><td>18:33</td><td></td><td>18:42</td><td>18:51</td><td></td><td>19:16</td></tr><tr><td>1677</td><td>무궁화</td><td>20:20</td><td></td><td>20:29</td><td>20:36</td><td></td><td>21:01</td></tr><tr><td>1651</td><td>무궁화</td><td>21:38</td><td>21:43</td><td>21:50</td><td>21:57</td><td>22:16</td><td>22:24</td></tr><tr><td>1661</td><td>무궁화</td><td>22:56</td><td></td><td>23:05</td><td>23:12</td><td></td><td>23:37</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 양동 → 도착 : 안동</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>양동</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>07:31</td><td>07:40</td><td>07:47</td><td>08:05</td><td>08:14</td><td>08:31</td><td>08:44</td><td>08:55</td><td>09:16</td></tr><tr><td>1611</td><td>ITX-마음</td><td>11:33</td><td>11:42</td><td>11:49</td><td></td><td>12:13</td><td>12:30</td><td>12:43</td><td>12:53</td><td>13:13</td></tr><tr><td>1603</td><td>ITX-마음</td><td>15:46</td><td>15:56</td><td>16:03</td><td></td><td>16:28</td><td>16:45</td><td>16:58</td><td>17:10</td><td>17:31</td></tr><tr><td>1613</td><td>ITX-마음</td><td>18:33</td><td>18:42</td><td>18:51</td><td></td><td>19:16</td><td>19:32</td><td>19:45</td><td>19:56</td><td>20:15</td></tr><tr><td>1661</td><td>무궁화</td><td>22:56</td><td>23:05</td><td>23:12</td><td></td><td>23:37</td><td>23:52</td><td>00:05</td><td>00:14</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 양동 → 도착 : 동해</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차종별</th><th>열차번호</th><th>양동</th><th>삼산</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th><th>쌍룡</th><th>영월</th><th>예미</th><th>민둥산</th><th>사북</th><th>고한</th><th>태백</th><th>동백산</th><th>도계</th><th>신기</th><th>동해</th></tr></thead><tbody><tr><td>무궁화</td><td>1671</td><td>08:44</td><td>08:49</td><td>08:57</td><td>09:05</td><td></td><td>09:31</td><td></td><td>10:05</td><td>10:25</td><td>10:47</td><td>10:56</td><td>11:03</td><td>11:17</td><td>11:29</td><td>11:45</td><td>12:02</td><td>12:25</td></tr><tr><td>무궁화</td><td>1673</td><td>10:41</td><td>10:46</td><td>10:53</td><td>11:00</td><td>11:20</td><td>11:30</td><td></td><td>12:01</td><td>12:21</td><td>12:42</td><td>12:51</td><td>12:58</td><td>13:14</td><td>13:25</td><td>13:46</td><td></td><td>14:28</td></tr><tr><td>무궁화</td><td>1675</td><td>13:27</td><td></td><td>13:36</td><td>13:43</td><td></td><td>14:07</td><td>14:22</td><td>14:40</td><td>15:01</td><td>15:23</td><td>15:32</td><td>15:39</td><td>15:54</td><td>16:05</td><td>16:23</td><td></td><td>17:05</td></tr><tr><td>무궁화</td><td>1677</td><td>20:20</td><td></td><td>20:29</td><td>20:36</td><td></td><td>21:01</td><td></td><td>21:32</td><td>21:52</td><td>22:13</td><td>22:22</td><td>22:29</td><td>22:44</td><td>22:56</td><td>23:12</td><td></td><td>23:50</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>양동역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '양동'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">양동역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">양동역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '31380';
            let curName = '양동';
            let altCity = '';
            let altName = '정차';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">양동역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">12℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">양동역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EA%B5%AC%EB%82%A8%EB%A7%A4%EC%98%B9%EC%8B%AC%EC%9D%B4+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EC%96%91%ED%8F%89%EA%B5%B0+%EC%96%91%EB%8F%99%EB%A9%B4+%EC%8C%8D%ED%95%99%EB%A6%AC+185-11+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">구남매옹심이</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;한식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 양평군 양동면 쌍학리 185-11 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%B9%B4%ED%8E%98%EC%97%A0+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EC%96%91%ED%8F%89%EA%B5%B0+%EC%96%91%EB%8F%99%EB%A9%B4+%EC%8C%8D%ED%95%99%EB%A6%AC+184-30" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">카페엠</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;카페,디저트</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 양평군 양동면 쌍학리 184-30</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%8C%94%ED%8C%94%ED%99%94%EB%A1%9C%EA%B5%AC%EC%9D%B4+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EC%96%91%ED%8F%89%EA%B5%B0+%EC%96%91%EB%8F%99%EB%A9%B4+%EC%8C%8D%ED%95%99%EB%A6%AC+205-4+%ED%8C%94%ED%8C%94%ED%99%94%EB%A1%9C%EA%B5%AC%EC%9D%B4" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">팔팔화로구이</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;육류,고기요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 양평군 양동면 쌍학리 205-4 팔팔화로구이</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%8B%9C%EA%B3%A8%EB%B0%A5%EC%A7%91+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EC%96%91%ED%8F%89%EA%B5%B0+%EC%96%91%EB%8F%99%EB%A9%B4+%EC%8C%8D%ED%95%99%EB%A6%AC+198-3" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">시골밥집</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;칼국수,만두</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 양평군 양동면 쌍학리 198-3</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EA%B3%A0%ED%96%A5%EC%A7%91+%EA%B2%BD%EA%B8%B0%EB%8F%84+%EC%96%91%ED%8F%89%EA%B5%B0+%EC%96%91%EB%8F%99%EB%A9%B4+%EC%8C%8D%ED%95%99%EB%A6%AC+155-9" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">고향집</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;칼국수,만두</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경기도 양평군 양동면 쌍학리 155-9</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">양동역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">양동역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 양동역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%96%91%EB%8F%99%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/03/양동역-기차-시간표-ITX-마음-무궁화호-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="양동역-기차-시간표-ITX-마음-무궁화호-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-19808" srcset="https://krailroad.co.kr/wp-content/uploads/2026/03/양동역-기차-시간표-ITX-마음-무궁화호-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/03/양동역-기차-시간표-ITX-마음-무궁화호-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/03/양동역-기차-시간표-ITX-마음-무궁화호-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>서원주역 시간표(KTX ITX-마음-무궁화호) 중앙선 서울-청량리-부전-동해 요금표</title>
		<link>https://krailroad.co.kr/%ec%84%9c%ec%9b%90%ec%a3%bc%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9cktx-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a4%91%ec%95%99%ec%84%a0-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Mon, 23 Mar 2026 00:55:29 +0000</pubDate>
				<category><![CDATA[KTX 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[무궁화 시간표]]></category>
		<category><![CDATA[서원주역 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=19637</guid>

					<description><![CDATA[강원도 지정면의 평온한 풍경 사이로 현대적인 감각의 역사가 들어선 서원주역 시간표를 이용한 열차는 강릉선과 중앙선이 서로의 길을 나누고 합치는 철도 교통의 핵심 분기점입니다. 과거 간이역 시절의 소박함을 뒤로하고, 이제는 고속열차가 쉴 새 없이 오가며 수도권과 강원 내륙을 잇는 가장 빠른 길목으로 자리 잡았는데요. 요즘 같은 AI 시대에 수동으로 입력해 놓은 낚시성 서원주역 시간표, 요금, 정차역, ... <a title="서원주역 시간표(KTX ITX-마음-무궁화호) 중앙선 서울-청량리-부전-동해 요금표" class="read-more button" href="https://krailroad.co.kr/%ec%84%9c%ec%9b%90%ec%a3%bc%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9cktx-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a4%91%ec%95%99%ec%84%a0-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89/" aria-label="서원주역 시간표(KTX ITX-마음-무궁화호) 중앙선 서울-청량리-부전-동해 요금표 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">강원도 지정면의 평온한 풍경 사이로 현대적인 감각의 역사가 들어선 서원주역 시간표를 이용한 열차는 강릉선과 중앙선이 서로의 길을 나누고 합치는 철도 교통의 핵심 분기점입니다. 과거 간이역 시절의 소박함을 뒤로하고, 이제는 고속열차가 쉴 새 없이 오가며 수도권과 강원 내륙을 잇는 가장 빠른 길목으로 자리 잡았는데요.</p>



<p class="wp-block-paragraph">요즘 같은 AI 시대에 수동으로 입력해 놓은 낚시성 서원주역 시간표, 요금, 정차역, 첫기차 마지막기차 등을 검색으로 찾아 다닐 필요 없이 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a> 공식 시간표와 공공데이터 공식 코레일 API의 실시간 데이터와 연동된 최신 서원주역 KTX 시간표와 ITX-마음, 그리고 강릉과 안동을 잇는 무궁화호의 운행 현황을 입체적으로 재구성한 자료를 첫기차부터 늦은 밤 마지막 기차까지, 손안에서 역 전광판을 보듯 확인하며 열차를 이용하시면 됩니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">서원주역, 강원도의 철길</h2>



<h3 class="wp-block-heading">두 개의 노선이 교차하는 철도</h3>



<p class="wp-block-paragraph">서원주역은 서울에서 내려온 철길이 강릉 방향과 안동·부산 방향으로 흩어지는 중요한 위치에 자리하고 있습니다. 2012년 무배치 간이역으로 시작했으나, 2021년 철길을 두 줄로 넓히고 전동차가 다닐 수 있도록 현대화하는 대공사가 마무리되며 지금의 위용을 갖추게 되었는데요. 벼가 익어가는 지정면의 평화로운 풍경 속에 자리 잡은 현대식 역사는 이제 강원도 서부권의 교통 중심축으로 확실히 자리매김했습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">거리의 제약을 허문 고속열차</h3>



<p class="wp-block-paragraph">서원주역 시간표 중 KTX-이음의 정차는 원주 시내를 거치지 않고도 수도권과 강원도를 잇는 가장 빠른 통로를 열어주었으며, 열차를 타고 잠시 창밖을 구경하다 보면 어느새 도착하는 수준의 접근성은 이 지역의 생활 양식을 완전히 바꾸어 놓았는데요. 역사 내부에 마련된 현대적인 편의시설과 체계적인 연계 버스망은 방문객들이 지정면과 문막 일대를 내 집 앞마당처럼 편안하게 이동할 수 있는 든든한 기반이 되었습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">서원주역 시간표 KTX~ITX-마음까지</h3>



<p class="wp-block-paragraph">현재 서원주역 기차 노선은 강릉행 고속열차와 안동·부전행 열차가 모두 모이는 독특한 구조를 자랑합니다. 무궁화호보다 쾌적한 실내를 갖춘 서원주역 ITX-마음이 상시 운행되며 열차 선택의 폭이 무척 넓어졌는데요. 서원주역 기차 시간표를 살펴보면 상행선은 물론 강원도 깊숙이 들어가는 하행선까지 유기적으로 배치되어 있어, 기다림 없는 매끄러운 이동이 가능합니다.<br><br>서원주역 시간표를 이용하여 <a href="https://krailroad.co.kr/%eb%8f%99%ed%95%b4%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%eb%ac%b4%eb%a6%89%ea%b3%84%ea%b3%a1-%eb%a7%9d/">동해</a>로 향하는 시원한 철길은 서원주역에서 <a href="https://krailroad.co.kr/%ec%95%88%eb%8f%99%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a4%91%ec%95%99%ec%84%a0-%ec%9a%94/">안동역</a>으로 내려가는 정겨운 노선으로 각기 다른 매력을 느낄 수 있으며, 특히 강원권과 경북권을 잇는 서원주역 환승 꿀팁을 활용하면 중부내륙 어디든 막힘없이 이동할 수 있어 이용객들 사이에서 만족도가 상당한데요. 섬강의 비경과 소백산 자락의 풍경을 감상하며 여행을 즐길 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">서<strong>원주역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">서원주<br>↓<br>청량리</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">702호</span><div class="time-display">7:20</div><div class="arrival-info">8:11 도착</div></td><td><span class="train-detail">716호</span><div class="time-display">19:27</div><div class="arrival-info">20:15 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">서원주<br>↓<br>서울</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">702호</span><div class="time-display">7:20</div><div class="arrival-info">8:31 도착</div></td><td><span class="train-detail">714호</span><div class="time-display">18:01</div><div class="arrival-info">19:13 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">서원주<br>↓<br>청량리</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1612호</span><div class="time-display">08:44</div><div class="arrival-info">09:47 도착</div></td><td><span class="train-detail">1604호</span><div class="time-display">19:58</div><div class="arrival-info">20:56 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1652호</span><div class="time-display">06:02</div><div class="arrival-info">07:21 도착</div></td><td><span class="train-detail">1678호</span><div class="time-display">21:42</div><div class="arrival-info">22:40 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">서원주<br>↓<br>안동</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">703호</span><div class="time-display">7:18</div><div class="arrival-info">8:31 도착</div></td><td><span class="train-detail">717호</span><div class="time-display">22:42</div><div class="arrival-info">23:51 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">서원주<br>↓<br>부전</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">703호</span><div class="time-display">7:18</div><div class="arrival-info">10:34 도착</div></td><td><span class="train-detail">713호</span><div class="time-display">17:22</div><div class="arrival-info">20:36 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">서원주<br>↓<br>안동</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">07:40</div><div class="arrival-info">09:16 도착</div></td><td><span class="train-detail">1613호</span><div class="time-display">18:42</div><div class="arrival-info">20:15 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">서원주<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">07:40</div><div class="arrival-info">12:20 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">15:56</div><div class="arrival-info">20:28 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">서원주<br>↓<br>태백</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1671호</span><div class="time-display">08:57</div><div class="arrival-info">11:17 도착</div></td><td><span class="train-detail">1677호</span><div class="time-display">20:29</div><div class="arrival-info">22:44 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">서원주<br>↓<br>동해</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1671호</span><div class="time-display">08:57</div><div class="arrival-info">12:25 도착</div></td><td><span class="train-detail">1677호</span><div class="time-display">20:29</div><div class="arrival-info">23:50 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong><strong><strong>서원주</strong></strong></strong>역 </strong>KTX-ITX 무궁화호 <strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>경유지</th><th>운임</th><th>일반</th><th>우등</th></tr></thead><tbody><tr><td>중앙K1</td><td>KTX</td><td class="highlight">서울</td><td class="highlight">서원주</td><td>기본</td><td>0</td><td>10,600</td><td>13,600</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">서원주</td><td>-</td><td>5,600</td><td>0</td><td>0</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">서원주</td><td>-</td><td>5,600</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">청량리</td><td class="highlight">서원주</td><td>-</td><td>8,300</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">청량리</td><td class="highlight">서원주</td><td>기본</td><td>0</td><td>9,000</td><td>12,000</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">서원주</td><td class="highlight">경주</td><td>-</td><td>18,200</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">서원주</td><td class="highlight">경주</td><td>-</td><td>23,200</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">서원주</td><td class="highlight">경주</td><td>기본</td><td>0</td><td>34,000</td><td>40,800</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">서원주</td><td class="highlight">태화강</td><td>-</td><td>20,900</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">서원주</td><td class="highlight">태화강</td><td>-</td><td>27,300</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">서원주</td><td class="highlight">태화강</td><td>기본</td><td>0</td><td>39,900</td><td>47,900</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">서원주</td><td class="highlight">부전</td><td>-</td><td>25,000</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">서원주</td><td class="highlight">부전</td><td>-</td><td>33,300</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">서원주</td><td class="highlight">부전</td><td>기본</td><td>0</td><td>46,500</td><td>55,800</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">서원주</td><td class="highlight">태백</td><td>-</td><td>9,700</td><td>0</td><td>0</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">서원주</td><td class="highlight">동해</td><td>-</td><td>13,600</td><td>0</td><td>0</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>서원주역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <a href="https://krailroad.co.kr/%ec%84%9c%ec%9b%90%ec%a3%bc%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9cktx-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a4%91%ec%95%99%ec%84%a0-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89/">서원주역 KTX 시간표 바로가기</a><br>✅ <s>서원주역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ec%84%9c%ec%9b%90%ec%a3%bc%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9cktx-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a4%91%ec%95%99%ec%84%a0-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89/">서원주역 ITX, 무궁화 시간표 바로가기</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>서원주역 <strong><strong>KTX-<strong>ITX 무궁화호 </strong>시간표</strong></strong></strong></h2>



<h3 class="wp-block-heading">출발 : 서원주 → 도착 : 청량리-서울</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>서원주</th><th>양평</th><th>청량리</th><th>서울</th><th>비고</th></tr></thead><tbody><tr><td>702</td><td>KTX-이음</td><td>7:20</td><td>7:42</td><td>8:11</td><td>8:31</td><td>매일</td></tr><tr><td>704</td><td>KTX-이음</td><td>9:12</td><td></td><td>9:59</td><td>10:19</td><td>매일</td></tr><tr><td>706</td><td>KTX-이음</td><td>11:12</td><td></td><td>11:58</td><td></td><td>매일</td></tr><tr><td>708</td><td>KTX-이음</td><td>13:23</td><td>13:45</td><td>14:13</td><td>14:33</td><td>매일</td></tr><tr><td>712</td><td>KTX-이음</td><td>16:32</td><td></td><td>17:21</td><td>17:41</td><td>매일</td></tr><tr><td>714</td><td>KTX-이음</td><td>18:01</td><td>18:23</td><td>18:51</td><td>19:13</td><td>매일</td></tr><tr><td>716</td><td>KTX-이음</td><td>19:27</td><td></td><td>20:15</td><td></td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>서원주</th><th>삼산</th><th>양동</th><th>매곡</th><th>일신</th><th>석불</th><th>지평</th><th>용문</th><th>양평</th><th>덕소</th><th>청량리</th></tr></thead><tbody><tr><td>1652</td><td>무궁화</td><td>06:02</td><td>06:08</td><td>06:13</td><td>06:18</td><td>06:27</td><td>06:32</td><td>06:37</td><td>06:43</td><td>06:51</td><td>07:08</td><td>07:21</td></tr><tr><td>1662</td><td>무궁화</td><td>07:06</td><td>07:12</td><td>07:18</td><td>07:24</td><td>07:33</td><td>07:38</td><td>07:42</td><td>07:48</td><td>07:56</td><td>08:13</td><td>08:27</td></tr><tr><td>1612</td><td>ITX-마음</td><td>08:44</td><td></td><td>08:54</td><td></td><td></td><td></td><td></td><td>09:08</td><td>09:16</td><td>09:34</td><td>09:47</td></tr><tr><td>1672</td><td>무궁화</td><td>09:21</td><td>09:28</td><td>09:33</td><td></td><td>09:41</td><td></td><td>09:48</td><td>09:54</td><td>10:01</td><td>10:18</td><td>10:31</td></tr><tr><td>1602</td><td>ITX-마음</td><td>11:52</td><td></td><td>12:00</td><td>12:05</td><td>12:10</td><td></td><td>12:16</td><td>12:22</td><td>12:29</td><td></td><td>12:56</td></tr><tr><td>1614</td><td>ITX-마음</td><td>16:04</td><td></td><td>16:14</td><td></td><td></td><td></td><td></td><td>16:28</td><td>16:36</td><td>16:53</td><td>17:06</td></tr><tr><td>1674</td><td>무궁화</td><td>17:12</td><td>17:19</td><td>17:24</td><td>17:28</td><td>17:35</td><td>17:41</td><td>17:50</td><td>17:56</td><td>18:04</td><td>18:21</td><td>18:35</td></tr><tr><td>1676</td><td>무궁화</td><td>18:35</td><td>18:43</td><td>18:53</td><td>18:59</td><td>19:03</td><td>19:08</td><td>19:12</td><td>19:17</td><td>19:25</td><td>19:42</td><td>19:55</td></tr><tr><td>1604</td><td>ITX-마음</td><td>19:58</td><td></td><td>20:08</td><td></td><td></td><td></td><td></td><td>20:21</td><td>20:29</td><td></td><td>20:56</td></tr><tr><td>1678</td><td>무궁화</td><td>21:42</td><td></td><td>21:50</td><td></td><td></td><td></td><td></td><td>22:02</td><td>22:10</td><td>22:27</td><td>22:40</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 서원주 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>서원주</th><th>원주</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th><th>의성</th><th>영천</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th><th>비고</th></tr></thead><tbody><tr><td>703</td><td>KTX-이음</td><td>7:18</td><td>7:24</td><td>7:40</td><td>7:55</td><td>8:07</td><td>8:16</td><td>8:31</td><td>8:44</td><td></td><td>9:22</td><td>9:39</td><td>9:48</td><td></td><td></td><td>10:21</td><td></td><td>10:34</td><td>매일</td></tr><tr><td>705</td><td>KTX-이음</td><td>10:05</td><td>10:13</td><td>10:30</td><td></td><td></td><td>10:57</td><td>11:12</td><td></td><td></td><td>11:57</td><td></td><td>12:18</td><td></td><td></td><td></td><td></td><td>13:01</td><td>매일</td></tr><tr><td>707</td><td>KTX-이음</td><td>12:11</td><td>12:18</td><td>12:36</td><td>12:50</td><td>13:02</td><td>13:11</td><td>13:26</td><td></td><td>13:57</td><td>14:16</td><td></td><td>14:39</td><td></td><td></td><td>15:12</td><td></td><td>15:27</td><td>매일</td></tr><tr><td>709</td><td>KTX-이음</td><td>14:03</td><td>14:10</td><td>14:27</td><td>14:41</td><td></td><td>14:57</td><td>15:11</td><td></td><td></td><td>15:57</td><td></td><td>16:18</td><td></td><td></td><td></td><td></td><td>17:00</td><td>매일</td></tr><tr><td>711</td><td>KTX-이음</td><td>15:30</td><td>15:38</td><td>15:56</td><td></td><td></td><td>16:22</td><td>16:37</td><td></td><td>17:08</td><td>17:27</td><td>17:44</td><td>17:51</td><td></td><td>18:17</td><td>18:27</td><td></td><td>18:41</td><td>매일</td></tr><tr><td>713</td><td>KTX-이음</td><td>17:22</td><td>17:30</td><td>17:48</td><td>18:03</td><td>18:14</td><td>18:22</td><td>18:38</td><td>18:50</td><td></td><td>19:25</td><td></td><td>19:46</td><td>19:59</td><td></td><td></td><td>20:25</td><td>20:36</td><td>매일</td></tr><tr><td>717</td><td>KTX-이음</td><td>22:42</td><td>22:49</td><td>23:06</td><td></td><td>23:28</td><td>23:37</td><td>23:51</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th><th>의성</th><th>군위</th><th>영천</th><th>아화</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>07:40</td><td>07:47</td><td>08:05</td><td>08:14</td><td>08:31</td><td>08:44</td><td>08:55</td><td>09:16</td><td>09:34</td><td>09:52</td><td>10:14</td><td>10:26</td><td>10:43</td><td>11:04</td><td>11:13</td><td>11:30</td><td>11:51</td><td>12:02</td><td>12:10</td><td>12:20</td></tr><tr><td>1603</td><td>ITX-마음</td><td>15:56</td><td>16:03</td><td></td><td>16:28</td><td>16:45</td><td>16:58</td><td>17:10</td><td>17:31</td><td>17:49</td><td>18:06</td><td>18:27</td><td>18:38</td><td>18:55</td><td>19:15</td><td>19:23</td><td>19:39</td><td>20:00</td><td>20:10</td><td>20:17</td><td>20:28</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 서원주 → 도착 : 안동</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>서원주</th><th>원주</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th><th>비고</th></tr></thead><tbody><tr><td>703</td><td>KTX-이음</td><td>7:18</td><td>7:24</td><td>7:40</td><td>7:55</td><td>8:07</td><td>8:16</td><td>8:31</td><td>매일</td></tr><tr><td>705</td><td>KTX-이음</td><td>10:05</td><td>10:13</td><td>10:30</td><td></td><td></td><td>10:57</td><td>11:12</td><td>매일</td></tr><tr><td>707</td><td>KTX-이음</td><td>12:11</td><td>12:18</td><td>12:36</td><td>12:50</td><td>13:02</td><td>13:11</td><td>13:26</td><td>매일</td></tr><tr><td>709</td><td>KTX-이음</td><td>14:03</td><td>14:10</td><td>14:27</td><td>14:41</td><td></td><td>14:57</td><td>15:11</td><td>매일</td></tr><tr><td>711</td><td>KTX-이음</td><td>15:30</td><td>15:38</td><td>15:56</td><td></td><td></td><td>16:22</td><td>16:37</td><td>매일</td></tr><tr><td>713</td><td>KTX-이음</td><td>17:22</td><td>17:30</td><td>17:48</td><td>18:03</td><td>18:14</td><td>18:22</td><td>18:38</td><td>매일</td></tr><tr><td>717</td><td>KTX-이음</td><td>22:42</td><td>22:49</td><td>23:06</td><td></td><td>23:28</td><td>23:37</td><td>23:51</td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>07:40</td><td>07:47</td><td>08:05</td><td>08:14</td><td>08:31</td><td>08:44</td><td>08:55</td><td>09:16</td></tr><tr><td>1611</td><td>ITX-마음</td><td>11:42</td><td>11:49</td><td></td><td>12:13</td><td>12:30</td><td>12:43</td><td>12:53</td><td>13:13</td></tr><tr><td>1603</td><td>ITX-마음</td><td>15:56</td><td>16:03</td><td></td><td>16:28</td><td>16:45</td><td>16:58</td><td>17:10</td><td>17:31</td></tr><tr><td>1613</td><td>ITX-마음</td><td>18:42</td><td>18:51</td><td></td><td>19:16</td><td>19:32</td><td>19:45</td><td>19:56</td><td>20:15</td></tr><tr><td>1661</td><td>무궁화</td><td>23:05</td><td>23:12</td><td></td><td>23:37</td><td>23:52</td><td>00:05</td><td>00:14</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 서원주 → 도착 : 동해</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차종별</th><th>열차번호</th><th>서원주</th><th>원주</th><th>봉양</th><th>제천</th><th>쌍룡</th><th>영월</th><th>예미</th><th>민둥산</th><th>사북</th><th>고한</th><th>태백</th><th>동백산</th><th>도계</th><th>신기</th><th>동해</th></tr></thead><tbody><tr><td>무궁화</td><td>1671</td><td>08:57</td><td>09:05</td><td></td><td>09:31</td><td></td><td>10:05</td><td>10:25</td><td>10:47</td><td>10:56</td><td>11:03</td><td>11:17</td><td>11:29</td><td>11:45</td><td>12:02</td><td>12:25</td></tr><tr><td>무궁화</td><td>1673</td><td>10:53</td><td>11:00</td><td>11:20</td><td>11:30</td><td></td><td>12:01</td><td>12:21</td><td>12:42</td><td>12:51</td><td>12:58</td><td>13:14</td><td>13:25</td><td>13:46</td><td></td><td>14:28</td></tr><tr><td>무궁화</td><td>1675</td><td>13:36</td><td>13:43</td><td></td><td>14:07</td><td>14:22</td><td>14:40</td><td>15:01</td><td>15:23</td><td>15:32</td><td>15:39</td><td>15:54</td><td>16:05</td><td>16:23</td><td></td><td>17:05</td></tr><tr><td>무궁화</td><td>1677</td><td>20:29</td><td>20:36</td><td></td><td>21:01</td><td></td><td>21:32</td><td>21:52</td><td>22:13</td><td>22:22</td><td>22:29</td><td>22:44</td><td>22:56</td><td>23:12</td><td></td><td>23:50</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>서원주역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '서원주'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">서원주역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">서원주역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '32060';
            let curName = '서원주';
            let altCity = '';
            let altName = '';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">원주역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">15℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">서원주역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%9F%AC%EC%8A%A4%ED%8B%B1+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%9B%90%EC%A3%BC%EC%8B%9C+%EC%A7%80%EC%A0%95%EB%A9%B4+%EA%B0%84%ED%98%84%EB%A6%AC+561-1" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">러스틱</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">브런치카페</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 원주시 지정면 간현리 561-1</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%B9%88%EC%B2%B4%EB%A1%9C%EC%B9%B4%ED%8E%98+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%9B%90%EC%A3%BC%EC%8B%9C+%EC%A7%80%EC%A0%95%EB%A9%B4+%EA%B0%84%ED%98%84%EB%A6%AC+584-8" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">빈체로카페</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;카페</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 원주시 지정면 간현리 584-8</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">서원주역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">원주역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 강원도 원주시 지정로 364</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:031-523-2353" style="color: #0052a4; font-weight: bold; text-decoration: none;">031-523-2353</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%9B%90%EC%A3%BC%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/03/서원주역-시간표-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="서원주역-시간표-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-19656" srcset="https://krailroad.co.kr/wp-content/uploads/2026/03/서원주역-시간표-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/03/서원주역-시간표-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/03/서원주역-시간표-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>원주역 기차 KTX ITX-마음 무궁화호 시간표 서울-청량리-부전-동해 중앙선 요금</title>
		<link>https://krailroad.co.kr/%ec%9b%90%ec%a3%bc%ec%97%ad-%ea%b8%b0%ec%b0%a8-ktx-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Fri, 20 Mar 2026 02:42:10 +0000</pubDate>
				<category><![CDATA[KTX 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[무궁화 시간표]]></category>
		<category><![CDATA[원주역 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=19554</guid>

					<description><![CDATA[80여 년의 세월을 간직한 채 2021년 무실동 시대를 활짝 연 원주역 기차는 강원 남부권 교통의 중심축으로서 그 위상이 더욱 견고해졌습니다. 과거 학성동 구역사의 정취를 뒤로하고, 이제는 청량리역에서 고속열차로 40분이면 닿는 초근접 생활권을 완성하며 원주 당일치기 여행객들에게 설렘 가득한 출발점이 되어주고 있는데요. 이번 포스팅은 코레일 시간표와 공공데이터 API 기반 버스 도착, 역주차장, 주변 맛집, 날씨를 실시간 ... <a title="원주역 기차 KTX ITX-마음 무궁화호 시간표 서울-청량리-부전-동해 중앙선 요금" class="read-more button" href="https://krailroad.co.kr/%ec%9b%90%ec%a3%bc%ec%97%ad-%ea%b8%b0%ec%b0%a8-ktx-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80/" aria-label="원주역 기차 KTX ITX-마음 무궁화호 시간표 서울-청량리-부전-동해 중앙선 요금 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">80여 년의 세월을 간직한 채 2021년 무실동 시대를 활짝 연 원주역 기차는 강원 남부권 교통의 중심축으로서 그 위상이 더욱 견고해졌습니다. 과거 학성동 구역사의 정취를 뒤로하고, 이제는 청량리역에서 고속열차로 40분이면 닿는 초근접 생활권을 완성하며 원주 당일치기 여행객들에게 설렘 가득한 출발점이 되어주고 있는데요.</p>



<p class="wp-block-paragraph">이번 포스팅은 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a> 시간표와 공공데이터 API 기반 버스 도착, 역주차장, 주변 맛집, 날씨를 실시간 운행 정보를 분석하여, 이용객이 가장 궁금해하는 원주역 KTX 시간표와 원주역 ITX-마음, 그리고 청량리와 동해를 잇는 무궁화호의 상세 노선을 순차적으로 정리했습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">1940년부터 이어진 원주역 기차</h2>



<h3 class="wp-block-heading">무실동 신역사의 미래 가치</h3>



<p class="wp-block-paragraph">1940년 첫 기적 소리를 울렸던 원주역은 강원도의 물류와 여객을 책임지던 핵심 길목이었습니다. 중앙선의 철길을 두 줄로 넓히고 전동차가 다닐 수 있도록 현대화하는 대공사가 마무리되며, 2021년 현재의 위치로 자리를 옮겨 첨단 철도 시스템을 갖춘 강원권의 거점으로 거듭났는데요. 치악산의 유려한 능선을 형상화한 신역사는 원주의 새로운 랜드마크로서 방문객들에게 쾌적한 첫인상을 선사하고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">40분대 생활권의 일상 변화</h3>



<p class="wp-block-paragraph">원주역 기차 KTX-이음의 등장은 수도권과 강원도 사이의 장벽을 허물었습니다. 예전에는 큰맘 먹고 준비해야 했던 원주 방문이 이제는 가벼운 외출처럼 느껴질 만큼 접근성이 좋아진 것인데요. 역사 내부에 마련된 현대적인 편의시설과 원주역 렌트카 서비스는 비즈니스 출장객이나 관광객들이 원주 전역을 내 집 앞마당처럼 누빌 수 있는 든든한 배경이 됩니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">서울·부전·동해를 잇는 철도</h3>



<p class="wp-block-paragraph">현재 원주역 기차 노선은 서울 청량리와 부산 <a href="https://krailroad.co.kr/%eb%b6%80%ec%a0%84%ec%97%ad-ktx-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%b2%ad%eb%9f%89%eb%a6%ac%c2%b7%ea%b0%95%eb%a6%89%c2%b7%ec%95%88%eb%8f%99%ed%96%89%ec%86%8d%ec%b4%88-%ed%8f%ac%ed%95%ad-%ec%a4%91/">부전</a>을 잇는 중앙선의 핵심 구간을 담당합니다. 무궁화호보다 빠르고 안락한 원주역 ITX-마음이 상시 운행되며 이용객들의 선택지가 한층 넓어졌는데요. 원주역 기차 시간표를 살펴보면 수도권 출퇴근은 물론 지방 거점 도시로의 이동까지 고려한 유기적인 배차가 돋보입니다.<br><br>원주역에서 동해, 혹은 원주역에서 부전으로 향하는 노선은 여전히 많은 이들에게 여행의 향수를 불러일으킵니다. 특히 안동이나 경주 방면으로 향하는 승객들이 즐겨 찾는 원주역 환승 꿀팁을 활용하면 중부내륙 어디든 효율적으로 이동할 수 있어 철도 이용객들 사이에서 만족도가 상당히 높은데요. 창밖으로 펼쳐지는 강원도의 산세와 경북의 들녘을 감상하며 떠나는 열차 여행은 원주역이 주는 또 다른 매력입니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>원주역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">원주<br>↓<br>청량리</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">702호</span><div class="time-display">7:08</div><div class="arrival-info">8:11 도착</div></td><td><span class="train-detail">718호</span><div class="time-display">22:07</div><div class="arrival-info">22:58 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">원주<br>↓<br>서울</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">702호</span><div class="time-display">7:08</div><div class="arrival-info">8:31 도착</div></td><td><span class="train-detail">714호</span><div class="time-display">17:48</div><div class="arrival-info">19:13 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">원주<br>↓<br>청량리</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1612호</span><div class="time-display">08:31</div><div class="arrival-info">09:47 도착</div></td><td><span class="train-detail">1604호</span><div class="time-display">19:50</div><div class="arrival-info">20:56 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1652호</span><div class="time-display">05:54</div><div class="arrival-info">07:21 도착</div></td><td><span class="train-detail">1678호</span><div class="time-display">21:34</div><div class="arrival-info">22:40 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">원주<br>↓<br>안동</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">701호</span><div class="time-display">6:30</div><div class="arrival-info">7:34 도착</div></td><td><span class="train-detail">717호</span><div class="time-display">22:49</div><div class="arrival-info">23:51 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">원주<br>↓<br>부전</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">701호</span><div class="time-display">6:30</div><div class="arrival-info">9:24 도착</div></td><td><span class="train-detail">715호</span><div class="time-display">19:49</div><div class="arrival-info">22:54 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">원주<br>↓<br>안동</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">07:47</div><div class="arrival-info">09:16 도착</div></td><td><span class="train-detail">1613호</span><div class="time-display">18:51</div><div class="arrival-info">20:15 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">원주<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">07:47</div><div class="arrival-info">12:20 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">16:03</div><div class="arrival-info">20:28 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">원주<br>↓<br>태백</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1641호</span><div class="time-display">18:02</div><div class="arrival-info">20:04 도착</div></td><td><span class="train-detail">1641호</span><div class="time-display">18:02</div><div class="arrival-info">20:04 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1671호</span><div class="time-display">09:05</div><div class="arrival-info">11:17 도착</div></td><td><span class="train-detail">1677호</span><div class="time-display">20:36</div><div class="arrival-info">22:44 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">원주<br>↓<br>동해</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1641호</span><div class="time-display">18:02</div><div class="arrival-info">21:08 도착</div></td><td><span class="train-detail">1641호</span><div class="time-display">18:02</div><div class="arrival-info">21:08 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1671호</span><div class="time-display">09:05</div><div class="arrival-info">12:25 도착</div></td><td><span class="train-detail">1677호</span><div class="time-display">20:36</div><div class="arrival-info">23:50 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong><strong><strong>원주</strong></strong></strong>역 </strong>KTX-ITX 무궁화호 <strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>경유지</th><th>운임</th><th>일반</th><th>우등</th></tr></thead><tbody><tr><td>중앙K1</td><td>KTX</td><td class="highlight">서울</td><td class="highlight">원주</td><td>기본</td><td>0</td><td>11,800</td><td>14,800</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">원주</td><td>-</td><td>6,200</td><td>0</td><td>0</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">원주</td><td>-</td><td>6,200</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">청량리</td><td class="highlight">원주</td><td>-</td><td>9,100</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">청량리</td><td class="highlight">원주</td><td>기본</td><td>0</td><td>10,100</td><td>13,100</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">원주</td><td class="highlight">경주</td><td>-</td><td>17,500</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">원주</td><td class="highlight">경주</td><td>-</td><td>22,400</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">원주</td><td class="highlight">경주</td><td>기본</td><td>0</td><td>32,800</td><td>39,400</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">원주</td><td class="highlight">태화강</td><td>-</td><td>20,200</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">원주</td><td class="highlight">태화강</td><td>-</td><td>26,500</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">원주</td><td class="highlight">태화강</td><td>기본</td><td>0</td><td>38,700</td><td>46,400</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">원주</td><td class="highlight">부전</td><td>-</td><td>24,300</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">원주</td><td class="highlight">부전</td><td>-</td><td>32,500</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">원주</td><td class="highlight">부전</td><td>기본</td><td>0</td><td>45,300</td><td>54,400</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">원주</td><td class="highlight">태백</td><td>-</td><td>9,000</td><td>0</td><td>0</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">원주</td><td class="highlight">동해</td><td>-</td><td>12,900</td><td>0</td><td>0</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>원주역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <a href="https://krailroad.co.kr/%ec%9b%90%ec%a3%bc%ec%97%ad-%ea%b8%b0%ec%b0%a8-ktx-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80/#%EC%B6%9C%EB%B0%9C_%EC%9B%90%EC%A3%BC_%E2%86%92_%EB%8F%84%EC%B0%A9_%EC%B2%AD%EB%9F%89%EB%A6%AC-%EC%84%9C%EC%9A%B8">원주역 KTX 시간표 바로가기</a><br>✅ <s>원주역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ec%9b%90%ec%a3%bc%ec%97%ad-%ea%b8%b0%ec%b0%a8-ktx-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80/#%EC%B6%9C%EB%B0%9C_%EC%9B%90%EC%A3%BC_%E2%86%92_%EB%8F%84%EC%B0%A9_%EC%B2%AD%EB%9F%89%EB%A6%AC-%EC%84%9C%EC%9A%B8">원주역 ITX, 무궁화 시간표 바로가기</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>원주역 <strong><strong>KTX-<strong>ITX 무궁화호 </strong>시간표</strong></strong></strong></h2>



<h3 class="wp-block-heading">출발 : 원주 → 도착 : 청량리-서울</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>원주</th><th>서원주</th><th>양평</th><th>덕소</th><th>상봉</th><th>청량리</th><th>서울</th><th>비고</th></tr></thead><tbody><tr><td>702</td><td>KTX-이음</td><td>7:08</td><td>7:20</td><td>7:42</td><td></td><td></td><td>8:11</td><td>8:31</td><td>매일</td></tr><tr><td>704</td><td>KTX-이음</td><td>9:00</td><td>9:12</td><td></td><td></td><td></td><td>9:59</td><td>10:19</td><td>매일</td></tr><tr><td>706</td><td>KTX-이음</td><td>11:01</td><td>11:12</td><td></td><td></td><td></td><td>11:58</td><td></td><td>매일</td></tr><tr><td>708</td><td>KTX-이음</td><td>13:11</td><td>13:23</td><td>13:45</td><td></td><td></td><td>14:13</td><td>14:33</td><td>매일</td></tr><tr><td>710</td><td>KTX-이음</td><td>15:12</td><td></td><td>15:34</td><td></td><td>15:58</td><td>16:04</td><td></td><td>매일</td></tr><tr><td>712</td><td>KTX-이음</td><td>16:20</td><td>16:32</td><td></td><td></td><td></td><td>17:21</td><td>17:41</td><td>매일</td></tr><tr><td>714</td><td>KTX-이음</td><td>17:48</td><td>18:01</td><td>18:23</td><td></td><td></td><td>18:51</td><td>19:13</td><td>매일</td></tr><tr><td>716</td><td>KTX-이음</td><td>19:14</td><td>19:27</td><td></td><td></td><td></td><td>20:15</td><td></td><td>매일</td></tr><tr><td>782</td><td>KTX-이음</td><td>20:24</td><td></td><td></td><td>20:59</td><td></td><td>21:13</td><td></td><td>토일</td></tr><tr><td>718</td><td>KTX-이음</td><td>22:07</td><td></td><td>22:29</td><td></td><td>22:52</td><td>22:58</td><td></td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>원주</th><th>서원주</th><th>삼산</th><th>양동</th><th>매곡</th><th>일신</th><th>석불</th><th>지평</th><th>용문</th><th>양평</th><th>덕소</th><th>청량리</th></tr></thead><tbody><tr><td>1652</td><td>무궁화</td><td>05:54</td><td>06:02</td><td>06:08</td><td>06:13</td><td>06:18</td><td>06:27</td><td>06:32</td><td>06:37</td><td>06:43</td><td>06:51</td><td>07:08</td><td>07:21</td></tr><tr><td>1662</td><td>무궁화</td><td>06:59</td><td>07:06</td><td>07:12</td><td>07:18</td><td>07:24</td><td>07:33</td><td>07:38</td><td>07:42</td><td>07:48</td><td>07:56</td><td>08:13</td><td>08:27</td></tr><tr><td>1612</td><td>ITX-마음</td><td>08:31</td><td>08:44</td><td></td><td>08:54</td><td></td><td></td><td></td><td></td><td>09:08</td><td>09:16</td><td>09:34</td><td>09:47</td></tr><tr><td>1672</td><td>무궁화</td><td>09:13</td><td>09:21</td><td>09:28</td><td>09:33</td><td></td><td>09:41</td><td></td><td>09:48</td><td>09:54</td><td>10:01</td><td>10:18</td><td>10:31</td></tr><tr><td>1642</td><td>ITX-마음</td><td>10:55</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td>11:46</td></tr><tr><td>1602</td><td>ITX-마음</td><td>11:44</td><td>11:52</td><td></td><td>12:00</td><td>12:05</td><td>12:10</td><td></td><td>12:16</td><td>12:22</td><td>12:29</td><td></td><td>12:56</td></tr><tr><td>1614</td><td>ITX-마음</td><td>15:55</td><td>16:04</td><td></td><td>16:14</td><td></td><td></td><td></td><td></td><td>16:28</td><td>16:36</td><td>16:53</td><td>17:06</td></tr><tr><td>1674</td><td>무궁화</td><td>17:04</td><td>17:12</td><td>17:19</td><td>17:24</td><td>17:28</td><td>17:35</td><td>17:41</td><td>17:50</td><td>17:56</td><td>18:04</td><td>18:21</td><td>18:35</td></tr><tr><td>1676</td><td>무궁화</td><td>18:27</td><td>18:35</td><td>18:43</td><td>18:53</td><td>18:59</td><td>19:03</td><td>19:08</td><td>19:12</td><td>19:17</td><td>19:25</td><td>19:42</td><td>19:55</td></tr><tr><td>1604</td><td>ITX-마음</td><td>19:50</td><td>19:58</td><td></td><td>20:08</td><td></td><td></td><td></td><td></td><td>20:21</td><td>20:29</td><td></td><td>20:56</td></tr><tr><td>1678</td><td>무궁화</td><td>21:34</td><td>21:42</td><td></td><td>21:50</td><td></td><td></td><td></td><td></td><td>22:02</td><td>22:10</td><td>22:27</td><td>22:40</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 원주 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>원주</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th><th>의성</th><th>영천</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th><th>비고</th></tr></thead><tbody><tr><td>701</td><td>KTX-이음</td><td>6:30</td><td>6:47</td><td>7:02</td><td></td><td>7:19</td><td>7:34</td><td></td><td></td><td>8:19</td><td></td><td>8:40</td><td></td><td></td><td></td><td></td><td>9:24</td><td>매일</td></tr><tr><td>703</td><td>KTX-이음</td><td>7:24</td><td>7:40</td><td>7:55</td><td>8:07</td><td>8:16</td><td>8:31</td><td>8:44</td><td></td><td>9:22</td><td>9:39</td><td>9:48</td><td></td><td></td><td>10:21</td><td></td><td>10:34</td><td>매일</td></tr><tr><td>705</td><td>KTX-이음</td><td>10:13</td><td>10:30</td><td></td><td></td><td>10:57</td><td>11:12</td><td></td><td></td><td>11:57</td><td></td><td>12:18</td><td></td><td></td><td></td><td></td><td>13:01</td><td>매일</td></tr><tr><td>707</td><td>KTX-이음</td><td>12:18</td><td>12:36</td><td>12:50</td><td>13:02</td><td>13:11</td><td>13:26</td><td></td><td>13:57</td><td>14:16</td><td></td><td>14:39</td><td></td><td></td><td>15:12</td><td></td><td>15:27</td><td>매일</td></tr><tr><td>709</td><td>KTX-이음</td><td>14:10</td><td>14:27</td><td>14:41</td><td></td><td>14:57</td><td>15:11</td><td></td><td></td><td>15:57</td><td></td><td>16:18</td><td></td><td></td><td></td><td></td><td>17:00</td><td>매일</td></tr><tr><td>781</td><td>KTX-이음</td><td>14:47</td><td>15:04</td><td></td><td></td><td>15:31</td><td>15:46</td><td></td><td></td><td>16:31</td><td></td><td>16:52</td><td></td><td></td><td></td><td></td><td>17:35</td><td>토일</td></tr><tr><td>711</td><td>KTX-이음</td><td>15:38</td><td>15:56</td><td></td><td></td><td>16:22</td><td>16:37</td><td></td><td>17:08</td><td>17:27</td><td>17:44</td><td>17:51</td><td></td><td>18:17</td><td>18:27</td><td></td><td>18:41</td><td>매일</td></tr><tr><td>713</td><td>KTX-이음</td><td>17:30</td><td>17:48</td><td>18:03</td><td>18:14</td><td>18:22</td><td>18:38</td><td>18:50</td><td></td><td>19:25</td><td></td><td>19:46</td><td>19:59</td><td></td><td></td><td>20:25</td><td>20:36</td><td>매일</td></tr><tr><td>715</td><td>KTX-이음</td><td>19:49</td><td>20:06</td><td>20:21</td><td>20:32</td><td>20:41</td><td>20:56</td><td></td><td>21:27</td><td>21:46</td><td></td><td>22:08</td><td></td><td></td><td>22:40</td><td></td><td>22:54</td><td>매일</td></tr><tr><td>717</td><td>KTX-이음</td><td>22:49</td><td>23:06</td><td></td><td>23:28</td><td>23:37</td><td>23:51</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>원주</th><th>봉양</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th><th>의성</th><th>군위</th><th>영천</th><th>아화</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>07:47</td><td>08:05</td><td>08:14</td><td>08:31</td><td>08:44</td><td>08:55</td><td>09:16</td><td>09:34</td><td>09:52</td><td>10:14</td><td>10:26</td><td>10:43</td><td>11:04</td><td>11:13</td><td>11:30</td><td>11:51</td><td>12:02</td><td>12:10</td><td>12:20</td></tr><tr><td>1603</td><td>ITX-마음</td><td>16:03</td><td></td><td>16:28</td><td>16:45</td><td>16:58</td><td>17:10</td><td>17:31</td><td>17:49</td><td>18:06</td><td>18:27</td><td>18:38</td><td>18:55</td><td>19:15</td><td>19:23</td><td>19:39</td><td>20:00</td><td>20:10</td><td>20:17</td><td>20:28</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 원주 → 도착 : 안동</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>원주</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th><th>비고</th></tr></thead><tbody><tr><td>701</td><td>KTX-이음</td><td>6:30</td><td>6:47</td><td>7:02</td><td></td><td>7:19</td><td>7:34</td><td>매일</td></tr><tr><td>703</td><td>KTX-이음</td><td>7:24</td><td>7:40</td><td>7:55</td><td>8:07</td><td>8:16</td><td>8:31</td><td>매일</td></tr><tr><td>705</td><td>KTX-이음</td><td>10:13</td><td>10:30</td><td></td><td></td><td>10:57</td><td>11:12</td><td>매일</td></tr><tr><td>707</td><td>KTX-이음</td><td>12:18</td><td>12:36</td><td>12:50</td><td>13:02</td><td>13:11</td><td>13:26</td><td>매일</td></tr><tr><td>709</td><td>KTX-이음</td><td>14:10</td><td>14:27</td><td>14:41</td><td></td><td>14:57</td><td>15:11</td><td>매일</td></tr><tr><td>781</td><td>KTX-이음</td><td>14:47</td><td>15:04</td><td></td><td></td><td>15:31</td><td>15:46</td><td>토일</td></tr><tr><td>711</td><td>KTX-이음</td><td>15:38</td><td>15:56</td><td></td><td></td><td>16:22</td><td>16:37</td><td>매일</td></tr><tr><td>713</td><td>KTX-이음</td><td>17:30</td><td>17:48</td><td>18:03</td><td>18:14</td><td>18:22</td><td>18:38</td><td>매일</td></tr><tr><td>715</td><td>KTX-이음</td><td>19:49</td><td>20:06</td><td>20:21</td><td>20:32</td><td>20:41</td><td>20:56</td><td>매일</td></tr><tr><td>717</td><td>KTX-이음</td><td>22:49</td><td>23:06</td><td></td><td>23:28</td><td>23:37</td><td>23:51</td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>원주</th><th>봉양</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>07:47</td><td>08:05</td><td>08:14</td><td>08:31</td><td>08:44</td><td>08:55</td><td>09:16</td></tr><tr><td>1611</td><td>ITX-마음</td><td>11:49</td><td></td><td>12:13</td><td>12:30</td><td>12:43</td><td>12:53</td><td>13:13</td></tr><tr><td>1603</td><td>ITX-마음</td><td>16:03</td><td></td><td>16:28</td><td>16:45</td><td>16:58</td><td>17:10</td><td>17:31</td></tr><tr><td>1613</td><td>ITX-마음</td><td>18:51</td><td></td><td>19:16</td><td>19:32</td><td>19:45</td><td>19:56</td><td>20:15</td></tr><tr><td>1661</td><td>무궁화</td><td>23:12</td><td></td><td>23:37</td><td>23:52</td><td>00:05</td><td>00:14</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 원주 → 도착 : 동해</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차종별</th><th>열차번호</th><th>원주</th><th>봉양</th><th>제천</th><th>쌍룡</th><th>영월</th><th>예미</th><th>민둥산</th><th>사북</th><th>고한</th><th>태백</th><th>동백산</th><th>도계</th><th>신기</th><th>동해</th></tr></thead><tbody><tr><td>무궁화</td><td>1671</td><td>09:05</td><td></td><td>09:31</td><td></td><td>10:05</td><td>10:25</td><td>10:47</td><td>10:56</td><td>11:03</td><td>11:17</td><td>11:29</td><td>11:45</td><td>12:02</td><td>12:25</td></tr><tr><td>무궁화</td><td>1673</td><td>11:00</td><td>11:20</td><td>11:30</td><td></td><td>12:01</td><td>12:21</td><td>12:42</td><td>12:51</td><td>12:58</td><td>13:14</td><td>13:25</td><td>13:46</td><td></td><td>14:28</td></tr><tr><td>무궁화</td><td>1675</td><td>13:43</td><td></td><td>14:07</td><td>14:22</td><td>14:40</td><td>15:01</td><td>15:23</td><td>15:32</td><td>15:39</td><td>15:54</td><td>16:05</td><td>16:23</td><td></td><td>17:05</td></tr><tr><td>ITX-마음</td><td>1641</td><td>18:02</td><td></td><td>18:26</td><td></td><td>18:56</td><td></td><td>19:35</td><td>19:44</td><td></td><td>20:04</td><td></td><td>20:30</td><td></td><td>21:08</td></tr><tr><td>무궁화</td><td>1677</td><td>20:36</td><td></td><td>21:01</td><td></td><td>21:32</td><td>21:52</td><td>22:13</td><td>22:22</td><td>22:29</td><td>22:44</td><td>22:56</td><td>23:12</td><td></td><td>23:50</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>원주역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '원주'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">원주역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">원주역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '32060';
            let curName = '원주';
            let altCity = '';
            let altName = '';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">원주역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">15℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">원주역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%96%89%EB%B3%B5%ED%95%9C%EC%9A%B0%EB%8F%99%EA%B0%80%EA%B2%8C+%EB%8B%A8%EA%B4%80%EC%A0%90+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%9B%90%EC%A3%BC%EC%8B%9C+%EB%8B%A8%EA%B5%AC%EB%8F%99+1615-10+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">행복한우동가게 단관점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;분식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 원주시 단구동 1615-10 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%86%8C%EB%82%98%EB%AC%B4%EC%A7%91+%EC%97%BC%EC%86%8C%ED%83%95+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%9B%90%EC%A3%BC%EC%8B%9C+%ED%8C%90%EB%B6%80%EB%A9%B4+%EC%84%9C%EA%B3%A1%EB%A6%AC+802" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">소나무집 염소탕</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;한식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 원주시 판부면 서곡리 802</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%8C%80%EB%B0%95%EB%A7%89%EC%B0%BD+%EC%9B%90%EC%A3%BC%EB%B3%B8%EC%A0%90+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%9B%90%EC%A3%BC%EC%8B%9C+%EB%8B%A8%EA%B5%AC%EB%8F%99+1623-2+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">대박막창 원주본점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;곱창,막창,양</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 원주시 단구동 1623-2 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%9C%98%EB%82%AD%EC%86%8C%EB%A6%AC+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%9B%90%EC%A3%BC%EC%8B%9C+%EB%AC%B4%EC%8B%A4%EB%8F%99+947-5+102%ED%98%B8" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">휘낭소리</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;카페,디저트</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 원주시 무실동 947-5 102호</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%97%AD%EC%A0%84%ED%95%A0%EB%A8%B8%EB%8B%88%EB%A7%A5%EC%A3%BC+%EC%9B%90%EC%A3%BC+%EB%8B%A8%EA%B3%84%EC%A0%90+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%9B%90%EC%A3%BC%EC%8B%9C+%EB%8B%A8%EA%B3%84%EB%8F%99+841-2" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">역전할머니맥주 원주 단계점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">술집&gt;맥주,호프</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 원주시 단계동 841-2</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">원주역 실시간 주차장 요금</h4>
        
                    <div class="parking-list-container">
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 원주역                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">600원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">300원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">6,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 강원도 원주시 지정로 364<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 031-523-2353                        </div>
                    </div>
                            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">원주역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 강원도 원주시 지정로 364</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:031-523-2353" style="color: #0052a4; font-weight: bold; text-decoration: none;">031-523-2353</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%9B%90%EC%A3%BC%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/03/원주역-기차-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="원주역-기차-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-19574" srcset="https://krailroad.co.kr/wp-content/uploads/2026/03/원주역-기차-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/03/원주역-기차-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/03/원주역-기차-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>봉양역 기차 시간표 ITX-마음 무궁화호 청량리 부전 동해 요금과 정차역</title>
		<link>https://krailroad.co.kr/%eb%b4%89%ec%96%91%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80%ec%a0%84-%eb%8f%99%ed%95%b4/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Thu, 19 Mar 2026 02:00:14 +0000</pubDate>
				<category><![CDATA[KTX 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[무궁화 시간표]]></category>
		<category><![CDATA[봉양역 기차 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=19516</guid>

					<description><![CDATA[중앙선과 충북선의 가교 역할을 하는 봉양역 기차는 매력적인 곳으로, 과거 여객 취급이 중단되었던 시기를 지나 2021년 철길을 두 줄로 넓히고 전동차가 다닐 수 있도록 현대화와 함께 현대식 역사로 재탄생하며 제천 서부권의 핵심 관문으로 다시금 우뚝 섰는데요. 이와 관련된 자료 정리는 코레일 공식 사이트 파일과 공공데이터 API와 실시간 운행 체계를 바탕으로 정리한 봉양역 열차 시간표와 새롭게 ... <a title="봉양역 기차 시간표 ITX-마음 무궁화호 청량리 부전 동해 요금과 정차역" class="read-more button" href="https://krailroad.co.kr/%eb%b4%89%ec%96%91%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80%ec%a0%84-%eb%8f%99%ed%95%b4/" aria-label="봉양역 기차 시간표 ITX-마음 무궁화호 청량리 부전 동해 요금과 정차역 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">중앙선과 충북선의 가교 역할을 하는 봉양역 기차는 매력적인 곳으로, 과거 여객 취급이 중단되었던 시기를 지나 2021년 철길을 두 줄로 넓히고 전동차가 다닐 수 있도록 현대화와 함께 현대식 역사로 재탄생하며 제천 서부권의 핵심 관문으로 다시금 우뚝 섰는데요.</p>



<p class="wp-block-paragraph">이와 관련된 자료 정리는 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a> 공식 사이트 파일과 공공데이터 API와 실시간 운행 체계를 바탕으로 정리한 봉양역 열차 시간표와 새롭게 정차를 시작한 봉양역 ITX-마음, 그리고 지역 간 연결을 돕는 무궁화호 이용 가이드입니다. 배론성지나 탁사정 등 제천의 숨은 명소들이 많으며, 봉양역 주변 맛집, 주차장 요금, 버스 도착시간, 날씨등 많은 자료들이 있으니 참고하시면 됩니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">80년 세월을 다시 달리는 봉양역</h2>



<h3 class="wp-block-heading">중앙선과 충북선의 봉양역 기차</h3>



<p class="wp-block-paragraph">1941년 보통역으로 영업을 시작한 봉양역은 중앙선과 충북선이 갈라지는 지리적 특성 덕분에 일찍이 물류와 교통의 거점 역할을 해왔습니다. 한때 여객 수요 감소로 기차가 서지 않던 부침도 겪었으나, 2021년 최신식 역사를 완공하며 화려하게 복귀했는데요. 특히 2022년 말부터는 ITX-새마을급 열차들이 정차하며 과거 간이역의 이미지를 벗고 스마트한 교통지로 변모하고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">현대 시설로 거듭난 지역의 자부심</h3>



<p class="wp-block-paragraph">새롭게 지어진 봉양역 중앙선 역사는 제천의 자연과 조화를 이루는 깔끔한 외관을 자랑하며, 이용객들을 위한 편의시설을 두루 갖추고 있습니다. 제천역을 거치지 않고도 충청권과 수도권을 유기적으로 연결하는 독보적인 노선 구조 덕분에, 효율적인 이동을 하시는 분들 사이에서 이용 빈도가 점차 높아지는 추세입니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">충북선과 중앙선을 아우르는 배차</h3>



<p class="wp-block-paragraph">봉양역 기차의 가장 큰 강점은 제천역에서 대전으로 향하는 충북선 열차를 곧바로 이용할 수 있다는 점입니다. 굳이 도심의 제천역까지 이동하지 않아도 봉양에서 대전, 청주 방면으로 연결되는 무궁화호에 몸을 실을 수 있어 인근 주민과 방문객들에게 큰 편의를 제공하는데요. 봉양역 기차 무궁화호 시간표를 확인해 보면 실무적인 이동 수요에 맞춰 배차가 이루어져 있음을 알 수 있습니다.<br><br>최신형 전동차인 봉양역 ITX-마음의 정차는 중부내륙 철도망에 활력을 불어넣었습니다. 기존 열차보다 향상된 승차감과 빠른 속도를 제공하며, 수도권 접근성을 높이는 일등 공신 역할을 수행하고 있는데요. 봉양역 기차 시간표를 미리 체크하신다면 기다림 없는 매끄러운 이동이 가능합니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>봉양역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">봉양<br>↓<br>원주</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1652호</span><div class="time-display">05:35</div><div class="arrival-info">05:54 도착</div></td><td><span class="train-detail">1678호</span><div class="time-display">21:15</div><div class="arrival-info">21:34 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">봉양<br>↓<br>청량리</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1652호</span><div class="time-display">05:35</div><div class="arrival-info">07:21 도착</div></td><td><span class="train-detail">1678호</span><div class="time-display">21:15</div><div class="arrival-info">22:40 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">봉양<br>↓<br>서울</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1182호</span><div class="time-display">9:22</div><div class="arrival-info">12:36 도착</div></td><td><span class="train-detail">1182호</span><div class="time-display">9:22</div><div class="arrival-info">12:36 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">봉양<br>↓<br>안동</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">08:05</div><div class="arrival-info">09:16 도착</div></td><td><span class="train-detail">1601호</span><div class="time-display">08:05</div><div class="arrival-info">09:16 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">봉양<br>↓<br>경주</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">08:05</div><div class="arrival-info">10:43 도착</div></td><td><span class="train-detail">1601호</span><div class="time-display">08:05</div><div class="arrival-info">10:43 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">봉양<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">08:05</div><div class="arrival-info">12:20 도착</div></td><td><span class="train-detail">1601호</span><div class="time-display">08:05</div><div class="arrival-info">12:20 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">봉양<br>↓<br>대전</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1764호</span><div class="time-display">19:21</div><div class="arrival-info">21:27 도착</div></td><td><span class="train-detail">1764호</span><div class="time-display">19:21</div><div class="arrival-info">21:27 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">봉양<br>↓<br>태백</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1673호</span><div class="time-display">11:20</div><div class="arrival-info">13:14 도착</div></td><td><span class="train-detail">1673호</span><div class="time-display">11:20</div><div class="arrival-info">13:14 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">봉양<br>↓<br>동해</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1673호</span><div class="time-display">11:20</div><div class="arrival-info">14:28 도착</div></td><td><span class="train-detail">1673호</span><div class="time-display">11:20</div><div class="arrival-info">14:28 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong><strong><strong>봉양</strong></strong></strong>역 </strong>KTX-ITX 무궁화호 <strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>운임</th></tr></thead><tbody><tr><td>충북1</td><td>무궁화</td><td class="highlight">서울</td><td class="highlight">봉양</td><td>15,500</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">봉양</td><td>8,800</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">봉양</td><td>8,800</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">청량리</td><td class="highlight">봉양</td><td>12,100</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">봉양</td><td class="highlight">경주</td><td>15,000</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">봉양</td><td class="highlight">경주</td><td>19,500</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">봉양</td><td class="highlight">태화강</td><td>17,700</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">봉양</td><td class="highlight">태화강</td><td>23,500</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">봉양</td><td class="highlight">부전</td><td>21,800</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">봉양</td><td class="highlight">부전</td><td>29,600</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">봉양</td><td class="highlight">태백</td><td>6,400</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">봉양</td><td class="highlight">동해</td><td>10,400</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>봉양역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <s>봉양역 KTX 노선 없음</s><br>✅ <s>봉양역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%eb%b4%89%ec%96%91%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80%ec%a0%84-%eb%8f%99%ed%95%b4/">봉양역 ITX, 무궁화 시간표 바로가기</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>봉양역 <strong><strong><strong>ITX-마음 무궁화호 </strong>시간표</strong></strong></strong></h2>



<h3 class="wp-block-heading">출발 : 봉양 → 도착 : 청량리-서울</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>봉양</th><th>삼탄</th><th>충주</th><th>주덕</th><th>음성</th><th>증평</th><th>청주공항</th><th>오근장</th><th>청주</th><th>오송</th><th>전의</th><th>천안</th><th>평택</th><th>수원</th><th>안양</th><th>영등포</th><th>서울</th></tr></thead><tbody><tr><td>1182</td><td>무궁화</td><td>9:22</td><td>9:34</td><td>9:49</td><td>9:57</td><td>10:07</td><td>10:24</td><td>10:34</td><td>10:38</td><td>10:46</td><td>10:54</td><td>11:09</td><td>11:23</td><td>11:37</td><td>11:57</td><td>12:10</td><td>12:25</td><td>12:36</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>봉양</th><th>원주</th><th>서원주</th><th>삼산</th><th>양동</th><th>매곡</th><th>일신</th><th>석불</th><th>지평</th><th>용문</th><th>양평</th><th>덕소</th><th>청량리</th></tr></thead><tbody><tr><td>1652</td><td>무궁화</td><td>05:35</td><td>05:54</td><td>06:02</td><td>06:08</td><td>06:13</td><td>06:18</td><td>06:27</td><td>06:32</td><td>06:37</td><td>06:43</td><td>06:51</td><td>07:08</td><td>07:21</td></tr><tr><td>1662</td><td>무궁화</td><td>06:40</td><td>06:59</td><td>07:06</td><td>07:12</td><td>07:18</td><td>07:24</td><td>07:33</td><td>07:38</td><td>07:42</td><td>07:48</td><td>07:56</td><td>08:13</td><td>08:27</td></tr><tr><td>1674</td><td>무궁화</td><td>16:45</td><td>17:04</td><td>17:12</td><td>17:19</td><td>17:24</td><td>17:28</td><td>17:35</td><td>17:41</td><td>17:50</td><td>17:56</td><td>18:04</td><td>18:21</td><td>18:35</td></tr><tr><td>1678</td><td>무궁화</td><td>21:15</td><td>21:34</td><td>21:42</td><td></td><td>21:50</td><td></td><td></td><td></td><td></td><td>22:02</td><td>22:10</td><td>22:27</td><td>22:40</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 봉양 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>봉양</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th><th>의성</th><th>군위</th><th>영천</th><th>아화</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>08:05</td><td>08:14</td><td>08:31</td><td>08:44</td><td>08:55</td><td>09:16</td><td>09:34</td><td>09:52</td><td>10:14</td><td>10:26</td><td>10:43</td><td>11:04</td><td>11:13</td><td>11:30</td><td>11:51</td><td>12:02</td><td>12:10</td><td>12:20</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 봉양 → 도착 : 동해</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차종별</th><th>열차번호</th><th>봉양</th><th>제천</th><th>영월</th><th>예미</th><th>민둥산</th><th>사북</th><th>고한</th><th>태백</th><th>동백산</th><th>도계</th><th>동해</th></tr></thead><tbody><tr><td>무궁화</td><td>1673</td><td>11:20</td><td>11:30</td><td>12:01</td><td>12:21</td><td>12:42</td><td>12:51</td><td>12:58</td><td>13:14</td><td>13:25</td><td>13:46</td><td>14:28</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 봉양 → 도착 : 대전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>봉양</th><th>삼탄</th><th>충주</th><th>주덕</th><th>음성</th><th>증평</th><th>청주공항</th><th>오근장</th><th>청주</th><th>오송</th><th>조치원</th><th>신탄진</th><th>대전</th></tr></thead><tbody><tr><td>1764</td><td>무궁화</td><td>19:21</td><td>19:33</td><td>19:48</td><td>19:56</td><td>20:06</td><td>20:23</td><td>20:33</td><td>20:37</td><td>20:45</td><td>20:52</td><td>20:58</td><td>21:15</td><td>21:27</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 봉양 → 도착 : 제천</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>봉양</th><th>제천</th></tr></thead><tbody><tr><td>1751</td><td>무궁화</td><td>08:13</td><td>08:21</td></tr><tr><td>1761</td><td>무궁화</td><td>19:52</td><td>19:59</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>봉양역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '봉양'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">봉양역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">봉양역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '33030';
            let curName = '봉양';
            let altCity = '';
            let altName = '정차';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">봉양역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">14℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">봉양역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EA%B0%93%EB%B0%94%EC%9C%84%EC%B0%90%EB%B9%B5%EB%A7%8C%EB%91%90+%EC%B6%A9%EC%B2%AD%EB%B6%81%EB%8F%84+%EC%A0%9C%EC%B2%9C%EC%8B%9C+%EB%B4%89%EC%96%91%EC%9D%8D+%EC%9E%A5%ED%8F%89%EB%A6%AC+798-8" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">갓바위찐빵만두</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;찐빵</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">충청북도 제천시 봉양읍 장평리 798-8</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%B6%88%EB%A9%8D%EB%B9%8C%EB%A6%AC%EC%A7%80+%EC%B6%A9%EC%B2%AD%EB%B6%81%EB%8F%84+%EC%A0%9C%EC%B2%9C%EC%8B%9C+%EB%B4%89%EC%96%91%EC%9D%8D+%EC%9E%A5%ED%8F%89%EB%A6%AC+816-3+2%EB%8F%99" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">불멍빌리지</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;육류,고기요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">충청북도 제천시 봉양읍 장평리 816-3 2동</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%98%A4%EB%B3%B5%EC%A0%95%EC%9C%A1%EC%8B%9D%EB%8B%B9+%EC%B6%A9%EC%B2%AD%EB%B6%81%EB%8F%84+%EC%A0%9C%EC%B2%9C%EC%8B%9C+%EB%B4%89%EC%96%91%EC%9D%8D+%EC%A3%BC%ED%8F%AC%EB%A6%AC+210-10" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">오복정육식당</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">육류,고기요리&gt;정육식당</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">충청북도 제천시 봉양읍 주포리 210-10</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%B4%89%EC%8C%80%EB%B9%B5+%EC%B6%A9%EC%B2%AD%EB%B6%81%EB%8F%84+%EC%A0%9C%EC%B2%9C%EC%8B%9C+%EB%B4%89%EC%96%91%EC%9D%8D+%EC%9E%A5%ED%8F%89%EB%A6%AC+780-1+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">봉쌀빵</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">분식&gt;종합분식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">충청북도 제천시 봉양읍 장평리 780-1 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%B4%89%EC%96%91%EB%8F%88%EA%B9%8C%EC%8A%A4+%EC%B6%A9%EC%B2%AD%EB%B6%81%EB%8F%84+%EC%A0%9C%EC%B2%9C%EC%8B%9C+%EB%B4%89%EC%96%91%EC%9D%8D+%EC%A3%BC%ED%8F%AC%EB%A6%AC+210-12" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">봉양돈까스</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;일식&gt;돈가스</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">충청북도 제천시 봉양읍 주포리 210-12</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">봉양역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">봉양역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 봉양역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EB%B4%89%EC%96%91%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/03/봉양역-기차-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="봉양역-기차-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-19552" srcset="https://krailroad.co.kr/wp-content/uploads/2026/03/봉양역-기차-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/03/봉양역-기차-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/03/봉양역-기차-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>제천역 기차 시간표 KTX ITX 무궁화호 서울/청량리 부전/동해 요금과 정차역</title>
		<link>https://krailroad.co.kr/%ec%a0%9c%ec%b2%9c%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-itx-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80%ec%a0%84-%eb%8f%99/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Mon, 16 Mar 2026 01:18:31 +0000</pubDate>
				<category><![CDATA[KTX 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[무궁화 시간표]]></category>
		<category><![CDATA[제천역 기차 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=19431</guid>

					<description><![CDATA[중앙선과 충북선, 태백선이 교차하며 중부내륙 철도 교통의 심장부 역할을 해온 제천역 기차가 최신 고속열차를 운행하면서 복합 환승 지점으로 새롭게 운행되고 있으며, 내륙의 바다라 불리는 청풍호와 유구한 역사를 간직한 의림지를 품은 제천은, 이제 수도권에서 1시간이면 닿을 수 있는 매력적인 제천 당일치기 여행지로 사랑받고 있습니다. 아래 자료들은 실시간 API와 코레일의 최신 데이터를 취합하여 제천역 KTX 시간표와 제천역 ... <a title="제천역 기차 시간표 KTX ITX 무궁화호 서울/청량리 부전/동해 요금과 정차역" class="read-more button" href="https://krailroad.co.kr/%ec%a0%9c%ec%b2%9c%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-itx-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80%ec%a0%84-%eb%8f%99/" aria-label="제천역 기차 시간표 KTX ITX 무궁화호 서울/청량리 부전/동해 요금과 정차역 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">중앙선과 충북선, 태백선이 교차하며 중부내륙 철도 교통의 심장부 역할을 해온 제천역 기차가 최신 고속열차를 운행하면서 복합 환승 지점으로 새롭게 운행되고 있으며, 내륙의 바다라 불리는 청풍호와 유구한 역사를 간직한 의림지를 품은 제천은, 이제 수도권에서 1시간이면 닿을 수 있는 매력적인 제천 당일치기 여행지로 사랑받고 있습니다.</p>



<p class="wp-block-paragraph">아래 자료들은 실시간 API와 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a>의 최신 데이터를 취합하여 제천역 KTX 시간표와 제천역 ITX-마음, 그리고 태백, 동해 등 전국 각지를 잇는 제천역 무궁화호 첫기차 마지막 기차와 실시간 버스 정보, 주변 맛집, 주차장 요금 등의 이용 정보를 정리했습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">제천역 기차의 어제와 오늘</h2>



<h3 class="wp-block-heading">세 갈래 철길이 만나는 교통지</h3>



<p class="wp-block-paragraph">1941년 영업을 시작한 제천역은 중앙선, 충북선, 태백선이 모두 모이는 독보적인 지리적 위치 덕분에 일찍이 철도 교통의 요충지로 자리매김했습니다. 2021년 초 제천역 중앙선 복선전철화와 함께 완공된 현대식 신역사는 제천의 산세를 닮은 웅장한 외관으로 방문객을 맞이하고 있는데요. 청량리에서 제천 KTX 시대를 열며 과거의 투박한 기차역 이미지를 벗고 첨단 철도 역사로 탈바꿈했습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">1시간대 진입이 가져온 관광의 변화</h3>



<p class="wp-block-paragraph">제천역 KTX-이음의 도입으로 서울 청량리에서 제천까지의 소요 시간이 획기적으로 단축되었습니다. 이는 청풍호반 케이블카 기차 여행이나 의림지 산책을 계획하는 분들에게 시간적 여유라는 큰 선물을 안겨주었는데요. 역사 내부의 쾌적한 시설과 제천역 렌트카 및 연계 교통망은 외지인들이 제천의 깊은 멋을 즐기는 데 부족함이 없는 환경을 제공하고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">KTX-이음과 ITX-마음, 고속 철도</h3>



<p class="wp-block-paragraph">현재 제천역 기차 KTX는 서울 청량리와 부산 <a href="https://krailroad.co.kr/%eb%b6%80%ec%a0%84%ec%97%ad-ktx-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%b2%ad%eb%9f%89%eb%a6%ac%c2%b7%ea%b0%95%eb%a6%89%c2%b7%ec%95%88%eb%8f%99%ed%96%89%ec%86%8d%ec%b4%88-%ed%8f%ac%ed%95%ad-%ec%a4%91/">부전</a>을 가장 빠르게 연결하며 중부내륙의 혈맥을 잇고 있습니다. 여기에 무궁화호보다 빠르고 시설이 깨끗한 제천역 ITX-마음까지 상시 운행되며 열차 선택의 폭이 매우 넓어졌는데요. 제천역 기차 시간표를 살펴보면 오전부터 늦은 밤까지 배차가 유기적으로 연결되어 있어 이동하는데 불편함이 없습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">대전, 동해, 동대구의 연결성</h3>



<p class="wp-block-paragraph">제천역 기차의 진가는 다양한 노선으로 제천역 기차를 이용해서 <a href="https://krailroad.co.kr/%eb%8f%99%eb%8c%80%ea%b5%ac%ec%97%ad-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%b5%9c%ec%8b%a0-%eb%85%b8%ec%84%a0-%ec%a0%95%eb%b3%b4%ec%99%80/">동대구</a>, 제천역에서 대전, 그리고 영동선을 타고 제천역에서 <a href="https://krailroad.co.kr/%eb%8f%99%ed%95%b4%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%eb%ac%b4%eb%a6%89%ea%b3%84%ea%b3%a1-%eb%a7%9d/">동해</a>까지 향하는 무궁화호 노선은 지역 간 교류를 돕는 소중한 발이 되어주는데요. 특히 강원권과 충청권, 영남권을 잇는 제천역 환승 꿀팁을 활용하면 전국 어디로든 효율적으로 이동할 수 있어 철도 이용객들 사이에서 만족도가 높습니다.<br><br>역을 나서면 바로 마주하는 제천역전시장은 여행의 시작과 끝을 장식할 제천역 맛집들로 가득합니다. 또한 역사 주변 버스 노선을 활용하면 우리나라 대표 수리시설인 의림지 가는법이 무척 명확해지며, 청풍호의 비경을 한눈에 담는 케이블카 승강장까지도 연계 교통이 잘 갖춰져 있는데요. 제천역 예매를 통해 역에 도착한 뒤, 아래 실시간 버스 정보 시스템을 확인하면 뚜벅이 여행자들도 불편함 없이 이동할 수 있습니다.<br></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>제천역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">제천<br>↓<br>원주</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">702호</span><div class="time-display">6:51</div><div class="arrival-info">7:08 도착</div></td><td><span class="train-detail">718호</span><div class="time-display">21:49</div><div class="arrival-info">22:07 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">제천<br>↓<br>청량리</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">702호</span><div class="time-display">6:51</div><div class="arrival-info">8:11 도착</div></td><td><span class="train-detail">718호</span><div class="time-display">21:49</div><div class="arrival-info">22:58 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">제천<br>↓<br>서울</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">702호</span><div class="time-display">6:51</div><div class="arrival-info">8:31 도착</div></td><td><span class="train-detail">714호</span><div class="time-display">17:31</div><div class="arrival-info">19:13 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">제천<br>↓<br>원주</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1612호</span><div class="time-display">08:07</div><div class="arrival-info">08:31 도착</div></td><td><span class="train-detail">1604호</span><div class="time-display">19:25</div><div class="arrival-info">19:50 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1652호</span><div class="time-display">05:27</div><div class="arrival-info">05:54 도착</div></td><td><span class="train-detail">1678호</span><div class="time-display">21:07</div><div class="arrival-info">21:34 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">제천<br>↓<br>청량리</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1612호</span><div class="time-display">08:07</div><div class="arrival-info">09:47 도착</div></td><td><span class="train-detail">1604호</span><div class="time-display">19:25</div><div class="arrival-info">20:56 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1652호</span><div class="time-display">05:27</div><div class="arrival-info">07:21 도착</div></td><td><span class="train-detail">1678호</span><div class="time-display">21:07</div><div class="arrival-info">22:40 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">제천<br>↓<br>청량리</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1612호</span><div class="time-display">08:07</div><div class="arrival-info">09:47 도착</div></td><td><span class="train-detail">1604호</span><div class="time-display">19:25</div><div class="arrival-info">20:56 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1652호</span><div class="time-display">05:27</div><div class="arrival-info">07:21 도착</div></td><td><span class="train-detail">1678호</span><div class="time-display">21:07</div><div class="arrival-info">22:40 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">제천<br>↓<br>안동</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">701호</span><div class="time-display">6:47</div><div class="arrival-info">7:34 도착</div></td><td><span class="train-detail">717호</span><div class="time-display">23:06</div><div class="arrival-info">23:51 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">제천<br>↓<br>부전</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">701호</span><div class="time-display">6:47</div><div class="arrival-info">9:24 도착</div></td><td><span class="train-detail">715호</span><div class="time-display">20:06</div><div class="arrival-info">22:54 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">제천<br>↓<br>안동</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">08:14</div><div class="arrival-info">09:16 도착</div></td><td><span class="train-detail">1613호</span><div class="time-display">19:16</div><div class="arrival-info">20:15 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">제천<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">08:14</div><div class="arrival-info">12:20 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">16:28</div><div class="arrival-info">20:28 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">제천<br>↓<br>대전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1702호</span><div class="time-display">13:58</div><div class="arrival-info">15:59 도착</div></td><td><span class="train-detail">1702호</span><div class="time-display">13:58</div><div class="arrival-info">15:59 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1752호</span><div class="time-display">05:44</div><div class="arrival-info">07:52 도착</div></td><td><span class="train-detail">1766호</span><div class="time-display">21:40</div><div class="arrival-info">23:47 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">제천<br>↓<br>동대구</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">4302호</span><div class="time-display">07:17</div><div class="arrival-info">11:30 도착</div></td><td><span class="train-detail">4304호</span><div class="time-display">18:05</div><div class="arrival-info">22:21 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">제천<br>↓<br>태백</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1641호</span><div class="time-display">18:26</div><div class="arrival-info">20:04 도착</div></td><td><span class="train-detail">1641호</span><div class="time-display">18:26</div><div class="arrival-info">20:04 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1671호</span><div class="time-display">09:31</div><div class="arrival-info">11:17 도착</div></td><td><span class="train-detail">1677호</span><div class="time-display">21:01</div><div class="arrival-info">22:44 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">제천<br>↓<br>동해</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1641호</span><div class="time-display">18:26</div><div class="arrival-info">21:08 도착</div></td><td><span class="train-detail">1641호</span><div class="time-display">18:26</div><div class="arrival-info">21:08 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1671호</span><div class="time-display">09:31</div><div class="arrival-info">12:25 도착</div></td><td><span class="train-detail">1677호</span><div class="time-display">21:01</div><div class="arrival-info">23:50 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong><strong><strong>제천</strong></strong></strong>역 </strong>KTX-ITX 무궁화호 <strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>경유지</th><th>운임</th><th>일반</th><th>우등</th></tr></thead><tbody><tr><td>충북1</td><td>무궁화</td><td class="highlight">서울</td><td class="highlight">제천</td><td>-</td><td>15,900</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">서울</td><td class="highlight">제천</td><td>기본</td><td>0</td><td>17,000</td><td>20,400</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">제천</td><td>-</td><td>9,200</td><td>0</td><td>0</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">제천</td><td>-</td><td>9,200</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">청량리</td><td class="highlight">제천</td><td>-</td><td>12,700</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">청량리</td><td class="highlight">제천</td><td>기본</td><td>0</td><td>15,400</td><td>18,500</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">제천</td><td class="highlight">경주</td><td>-</td><td>14,600</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">제천</td><td class="highlight">경주</td><td>-</td><td>18,800</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">제천</td><td class="highlight">경주</td><td>기본</td><td>0</td><td>27,500</td><td>33,000</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">제천</td><td class="highlight">태화강</td><td>-</td><td>17,300</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">제천</td><td class="highlight">태화강</td><td>-</td><td>22,900</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">제천</td><td class="highlight">태화강</td><td>기본</td><td>0</td><td>33,400</td><td>40,100</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">제천</td><td class="highlight">부전</td><td>-</td><td>21,400</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">제천</td><td class="highlight">부전</td><td>-</td><td>28,900</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">제천</td><td class="highlight">부전</td><td>기본</td><td>0</td><td>40,000</td><td>48,000</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">제천</td><td class="highlight">태백</td><td>-</td><td>6,000</td><td>0</td><td>0</td></tr><tr><td>태백1</td><td>무궁화</td><td class="highlight">제천</td><td class="highlight">동해</td><td>-</td><td>10,000</td><td>0</td><td>0</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>제천역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <a href="https://krailroad.co.kr/%ec%a0%9c%ec%b2%9c%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-itx-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80%ec%a0%84-%eb%8f%99/">제천역 KTX 시간표 바로가기</a><br>✅ <s>제천역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ec%a0%9c%ec%b2%9c%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-itx-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80%ec%a0%84-%eb%8f%99/">제천역 ITX, 무궁화 시간표</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>제천역 <strong><strong>KTX-<strong>ITX 무궁화호 </strong>시간표</strong></strong></strong></h2>



<h3 class="wp-block-heading">출발 : 제천 → 도착 : 청량리-서울</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>제천</th><th>원주</th><th>서원주</th><th>양평</th><th>덕소</th><th>상봉</th><th>청량리</th><th>서울</th><th>비고</th></tr></thead><tbody><tr><td>702</td><td>KTX-이음</td><td>6:51</td><td>7:08</td><td>7:20</td><td>7:42</td><td></td><td></td><td>8:11</td><td>8:31</td><td>매일</td></tr><tr><td>704</td><td>KTX-이음</td><td>8:43</td><td>9:00</td><td>9:12</td><td></td><td></td><td></td><td>9:59</td><td>10:19</td><td>매일</td></tr><tr><td>706</td><td>KTX-이음</td><td>10:44</td><td>11:01</td><td>11:12</td><td></td><td></td><td></td><td>11:58</td><td></td><td>매일</td></tr><tr><td>708</td><td>KTX-이음</td><td>12:53</td><td>13:11</td><td>13:23</td><td>13:45</td><td></td><td></td><td>14:13</td><td>14:33</td><td>매일</td></tr><tr><td>710</td><td>KTX-이음</td><td>14:55</td><td>15:12</td><td></td><td>15:34</td><td></td><td>15:58</td><td>16:04</td><td></td><td>매일</td></tr><tr><td>712</td><td>KTX-이음</td><td>16:03</td><td>16:20</td><td>16:32</td><td></td><td></td><td></td><td>17:21</td><td>17:41</td><td>매일</td></tr><tr><td>714</td><td>KTX-이음</td><td>17:31</td><td>17:48</td><td>18:01</td><td>18:23</td><td></td><td></td><td>18:51</td><td>19:13</td><td>매일</td></tr><tr><td>716</td><td>KTX-이음</td><td>18:57</td><td>19:14</td><td>19:27</td><td></td><td></td><td></td><td>20:15</td><td></td><td>매일</td></tr><tr><td>782</td><td>KTX-이음</td><td>20:07</td><td>20:24</td><td></td><td></td><td>20:59</td><td></td><td>21:13</td><td></td><td>토일</td></tr><tr><td>718</td><td>KTX-이음</td><td>21:49</td><td>22:07</td><td></td><td>22:29</td><td></td><td>22:52</td><td>22:58</td><td></td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>제천</th><th>봉양</th><th>삼탄</th><th>충주</th><th>주덕</th><th>음성</th><th>증평</th><th>청주공항</th><th>오근장</th><th>청주</th><th>오송</th><th>전의</th><th>천안</th><th>평택</th><th>수원</th><th>안양</th><th>영등포</th><th>서울</th></tr></thead><tbody><tr><td>1182</td><td>무궁화</td><td>9:14</td><td>9:22</td><td>9:34</td><td>9:49</td><td>9:57</td><td>10:07</td><td>10:24</td><td>10:34</td><td>10:38</td><td>10:46</td><td>10:54</td><td>11:09</td><td>11:23</td><td>11:37</td><td>11:57</td><td>12:10</td><td>12:25</td><td>12:36</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>제천</th><th>봉양</th><th>원주</th><th>서원주</th><th>삼산</th><th>양동</th><th>매곡</th><th>일신</th><th>석불</th><th>지평</th><th>용문</th><th>양평</th><th>덕소</th><th>청량리</th></tr></thead><tbody><tr><td>1652</td><td>무궁화</td><td>05:27</td><td>05:35</td><td>05:54</td><td>06:02</td><td>06:08</td><td>06:13</td><td>06:18</td><td>06:27</td><td>06:32</td><td>06:37</td><td>06:43</td><td>06:51</td><td>07:08</td><td>07:21</td></tr><tr><td>1662</td><td>무궁화</td><td>06:33</td><td>06:40</td><td>06:59</td><td>07:06</td><td>07:12</td><td>07:18</td><td>07:24</td><td>07:33</td><td>07:38</td><td>07:42</td><td>07:48</td><td>07:56</td><td>08:13</td><td>08:27</td></tr><tr><td>1612</td><td>ITX-마음</td><td>08:07</td><td></td><td>08:31</td><td>08:44</td><td></td><td>08:54</td><td></td><td></td><td></td><td></td><td>09:08</td><td>09:16</td><td>09:34</td><td>09:47</td></tr><tr><td>1672</td><td>무궁화</td><td>08:48</td><td></td><td>09:13</td><td>09:21</td><td>09:28</td><td>09:33</td><td></td><td>09:41</td><td></td><td>09:48</td><td>09:54</td><td>10:01</td><td>10:18</td><td>10:31</td></tr><tr><td>1642</td><td>ITX-마음</td><td>10:31</td><td></td><td>10:55</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td>11:46</td></tr><tr><td>1602</td><td>ITX-마음</td><td>11:19</td><td></td><td>11:44</td><td>11:52</td><td></td><td>12:00</td><td>12:05</td><td>12:10</td><td></td><td>12:16</td><td>12:22</td><td>12:29</td><td></td><td>12:56</td></tr><tr><td>1614</td><td>ITX-마음</td><td>15:31</td><td></td><td>15:55</td><td>16:04</td><td></td><td>16:14</td><td></td><td></td><td></td><td></td><td>16:28</td><td>16:36</td><td>16:53</td><td>17:06</td></tr><tr><td>1674</td><td>무궁화</td><td>16:37</td><td>16:45</td><td>17:04</td><td>17:12</td><td>17:19</td><td>17:24</td><td>17:28</td><td>17:35</td><td>17:41</td><td>17:50</td><td>17:56</td><td>18:04</td><td>18:21</td><td>18:35</td></tr><tr><td>1676</td><td>무궁화</td><td>18:02</td><td></td><td>18:27</td><td>18:35</td><td>18:43</td><td>18:53</td><td>18:59</td><td>19:03</td><td>19:08</td><td>19:12</td><td>19:17</td><td>19:25</td><td>19:42</td><td>19:55</td></tr><tr><td>1604</td><td>ITX-마음</td><td>19:25</td><td></td><td>19:50</td><td>19:58</td><td></td><td>20:08</td><td></td><td></td><td></td><td></td><td>20:21</td><td>20:29</td><td></td><td>20:56</td></tr><tr><td>1678</td><td>무궁화</td><td>21:07</td><td>21:15</td><td>21:34</td><td>21:42</td><td></td><td>21:50</td><td></td><td></td><td></td><td></td><td>22:02</td><td>22:10</td><td>22:27</td><td>22:40</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 제천 → 도착 : 안동-부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th><th>의성</th><th>영천</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th><th>비고</th></tr></thead><tbody><tr><td>701</td><td>KTX-이음</td><td>6:47</td><td>7:02</td><td></td><td>7:19</td><td>7:34</td><td></td><td></td><td>8:19</td><td></td><td>8:40</td><td></td><td></td><td></td><td></td><td>9:24</td><td>매일</td></tr><tr><td>703</td><td>KTX-이음</td><td>7:40</td><td>7:55</td><td>8:07</td><td>8:16</td><td>8:31</td><td>8:44</td><td></td><td>9:22</td><td>9:39</td><td>9:48</td><td></td><td></td><td>10:21</td><td></td><td>10:34</td><td>매일</td></tr><tr><td>705</td><td>KTX-이음</td><td>10:30</td><td></td><td></td><td>10:57</td><td>11:12</td><td></td><td></td><td>11:57</td><td></td><td>12:18</td><td></td><td></td><td></td><td></td><td>13:01</td><td>매일</td></tr><tr><td>707</td><td>KTX-이음</td><td>12:36</td><td>12:50</td><td>13:02</td><td>13:11</td><td>13:26</td><td></td><td>13:57</td><td>14:16</td><td></td><td>14:39</td><td></td><td></td><td>15:12</td><td></td><td>15:27</td><td>매일</td></tr><tr><td>709</td><td>KTX-이음</td><td>14:27</td><td>14:41</td><td></td><td>14:57</td><td>15:11</td><td></td><td></td><td>15:57</td><td></td><td>16:18</td><td></td><td></td><td></td><td></td><td>17:00</td><td>매일</td></tr><tr><td>781</td><td>KTX-이음</td><td>15:04</td><td></td><td></td><td>15:31</td><td>15:46</td><td></td><td></td><td>16:31</td><td></td><td>16:52</td><td></td><td></td><td></td><td></td><td>17:35</td><td>토일</td></tr><tr><td>711</td><td>KTX-이음</td><td>15:56</td><td></td><td></td><td>16:22</td><td>16:37</td><td></td><td>17:08</td><td>17:27</td><td>17:44</td><td>17:51</td><td></td><td>18:17</td><td>18:27</td><td></td><td>18:41</td><td>매일</td></tr><tr><td>713</td><td>KTX-이음</td><td>17:48</td><td>18:03</td><td>18:14</td><td>18:22</td><td>18:38</td><td>18:50</td><td></td><td>19:25</td><td></td><td>19:46</td><td>19:59</td><td></td><td></td><td>20:25</td><td>20:36</td><td>매일</td></tr><tr><td>715</td><td>KTX-이음</td><td>20:06</td><td>20:21</td><td>20:32</td><td>20:41</td><td>20:56</td><td></td><td>21:27</td><td>21:46</td><td></td><td>22:08</td><td></td><td></td><td>22:40</td><td></td><td>22:54</td><td>매일</td></tr><tr><td>717</td><td>KTX-이음</td><td>23:06</td><td></td><td>23:28</td><td>23:37</td><td>23:51</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th><th>의성</th><th>군위</th><th>영천</th><th>아화</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>08:14</td><td>08:31</td><td>08:44</td><td>08:55</td><td>09:16</td><td>09:34</td><td>09:52</td><td>10:14</td><td>10:26</td><td>10:43</td><td>11:04</td><td>11:13</td><td>11:30</td><td>11:51</td><td>12:02</td><td>12:10</td><td>12:20</td></tr><tr><td>1611</td><td>ITX-마음</td><td>12:13</td><td>12:30</td><td>12:43</td><td>12:53</td><td>13:13</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>1603</td><td>ITX-마음</td><td>16:28</td><td>16:45</td><td>16:58</td><td>17:10</td><td>17:31</td><td>17:49</td><td>18:06</td><td>18:27</td><td>18:38</td><td>18:55</td><td>19:15</td><td>19:23</td><td>19:39</td><td>20:00</td><td>20:10</td><td>20:17</td><td>20:28</td></tr><tr><td>1613</td><td>ITX-마음</td><td>19:16</td><td>19:32</td><td>19:45</td><td>19:56</td><td>20:15</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>1661</td><td>무궁화</td><td>23:37</td><td>23:52</td><td>00:05</td><td>00:14</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 제천 → 도착 : 동해</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차종별</th><th>열차번호</th><th>제천</th><th>쌍룡</th><th>영월</th><th>예미</th><th>민둥산</th><th>사북</th><th>고한</th><th>태백</th><th>동백산</th><th>도계</th><th>신기</th><th>동해</th></tr></thead><tbody><tr><td>무궁화</td><td>1671</td><td>09:31</td><td></td><td>10:05</td><td>10:25</td><td>10:47</td><td>10:56</td><td>11:03</td><td>11:17</td><td>11:29</td><td>11:45</td><td>12:02</td><td>12:25</td></tr><tr><td>무궁화</td><td>1673</td><td>11:30</td><td></td><td>12:01</td><td>12:21</td><td>12:42</td><td>12:51</td><td>12:58</td><td>13:14</td><td>13:25</td><td>13:46</td><td></td><td>14:28</td></tr><tr><td>무궁화</td><td>1675</td><td>14:07</td><td>14:22</td><td>14:40</td><td>15:01</td><td>15:23</td><td>15:32</td><td>15:39</td><td>15:54</td><td>16:05</td><td>16:23</td><td></td><td>17:05</td></tr><tr><td>ITX-마음</td><td>1641</td><td>18:26</td><td></td><td>18:56</td><td></td><td>19:35</td><td>19:44</td><td></td><td>20:04</td><td></td><td>20:30</td><td></td><td>21:08</td></tr><tr><td>무궁화</td><td>1677</td><td>21:01</td><td></td><td>21:32</td><td>21:52</td><td>22:13</td><td>22:22</td><td>22:29</td><td>22:44</td><td>22:56</td><td>23:12</td><td></td><td>23:50</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 제천 → 도착 : 대전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>제천</th><th>봉양</th><th>삼탄</th><th>충주</th><th>주덕</th><th>음성</th><th>증평</th><th>청주공항</th><th>오근장</th><th>청주</th><th>오송</th><th>조치원</th><th>신탄진</th><th>대전</th></tr></thead><tbody><tr><td>1752</td><td>무궁화</td><td>05:44</td><td></td><td></td><td>06:13</td><td>06:21</td><td>06:31</td><td>06:48</td><td>06:58</td><td>07:02</td><td>07:10</td><td>07:17</td><td>07:23</td><td>07:40</td><td>07:52</td></tr><tr><td>4302</td><td>무궁화</td><td>07:17</td><td></td><td></td><td>07:45</td><td>07:54</td><td>08:04</td><td>08:21</td><td>08:30</td><td>08:35</td><td>08:43</td><td>08:51</td><td>08:58</td><td></td><td>09:28</td></tr><tr><td>1754</td><td>무궁화</td><td>08:15</td><td></td><td></td><td>08:43</td><td>08:52</td><td>09:02</td><td>09:19</td><td>09:28</td><td>09:32</td><td>09:40</td><td>09:47</td><td>09:54</td><td>10:11</td><td>10:23</td></tr><tr><td>1182</td><td>무궁화</td><td>09:14</td><td>09:22</td><td>09:34</td><td>09:49</td><td>09:57</td><td>10:07</td><td>10:24</td><td>10:34</td><td>10:38</td><td>10:46</td><td>10:54</td><td></td><td></td><td></td></tr><tr><td>1756</td><td>무궁화</td><td>11:14</td><td></td><td>11:31</td><td>11:45</td><td>11:54</td><td>12:04</td><td>12:21</td><td>12:30</td><td>12:34</td><td>12:42</td><td>12:49</td><td>12:55</td><td>13:12</td><td>13:24</td></tr><tr><td>1758</td><td>무궁화</td><td>13:18</td><td></td><td></td><td>13:46</td><td>13:55</td><td>14:05</td><td>14:22</td><td>14:31</td><td>14:35</td><td>14:43</td><td>14:50</td><td>14:56</td><td>15:13</td><td>15:25</td></tr><tr><td>1702</td><td>ITX-마음</td><td>13:58</td><td></td><td></td><td>14:26</td><td></td><td>14:42</td><td>14:59</td><td>15:08</td><td>15:12</td><td>15:20</td><td>15:27</td><td>15:33</td><td></td><td>15:59</td></tr><tr><td>1760</td><td>무궁화</td><td>15:26</td><td></td><td>15:43</td><td>15:58</td><td>16:06</td><td>16:16</td><td>16:33</td><td>16:43</td><td>16:47</td><td>16:55</td><td>17:02</td><td>17:08</td><td>17:25</td><td>17:37</td></tr><tr><td>1762</td><td>무궁화</td><td>17:01</td><td></td><td></td><td>17:30</td><td>17:38</td><td>17:48</td><td>18:05</td><td>18:15</td><td>18:19</td><td>18:27</td><td>18:34</td><td>18:40</td><td>18:57</td><td>19:09</td></tr><tr><td>1764</td><td>무궁화</td><td>19:13</td><td>19:21</td><td>19:33</td><td>19:48</td><td>19:56</td><td>20:06</td><td>20:23</td><td>20:33</td><td>20:37</td><td>20:45</td><td>20:52</td><td>20:58</td><td>21:15</td><td>21:27</td></tr><tr><td>1766</td><td>무궁화</td><td>21:40</td><td></td><td></td><td>22:08</td><td>22:17</td><td>22:27</td><td>22:44</td><td>22:53</td><td>22:57</td><td>23:05</td><td>23:12</td><td>23:18</td><td>23:35</td><td>23:47</td></tr><tr><td>4304</td><td>무궁화</td><td>18:05</td><td></td><td>18:22</td><td>18:36</td><td>18:45</td><td>18:55</td><td>19:12</td><td>19:21</td><td>19:25</td><td>19:33</td><td>19:40</td><td>19:47</td><td>20:07</td><td>20:20</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 제천 → 도착 : 영주</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>제천</th><th>단양</th><th>풍기</th><th>영주</th></tr></thead><tbody><tr><td>4301</td><td>무궁화</td><td>10:13</td><td>10:32</td><td>10:51</td><td>11:02</td></tr><tr><td>4303</td><td>무궁화</td><td>22:30</td><td>22:48</td><td>23:02</td><td>23:11</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 제천 → 도착 : 동대구</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>제천</th><th>삼탄</th><th>충주</th><th>주덕</th><th>음성</th><th>증평</th><th>청주공항</th><th>오근장</th><th>청주</th><th>오송</th><th>조치원</th><th>부강</th><th>신탄진</th><th>대전</th><th>옥천</th><th>이원</th><th>심천</th><th>영동</th><th>황간</th><th>김천</th><th>구미</th><th>왜관</th><th>대구</th><th>동대구</th></tr></thead><tbody><tr><td>4302</td><td>무궁화</td><td>07:17</td><td></td><td>07:45</td><td>07:54</td><td>08:04</td><td>08:21</td><td>08:30</td><td>08:35</td><td>08:43</td><td>08:51</td><td>08:58</td><td>09:07</td><td></td><td>09:28</td><td>09:40</td><td>09:47</td><td>09:56</td><td>10:05</td><td>10:17</td><td>10:36</td><td>10:53</td><td>11:06</td><td>11:26</td><td>11:30</td></tr><tr><td>4304</td><td>무궁화</td><td>18:05</td><td>18:22</td><td>18:36</td><td>18:45</td><td>18:55</td><td>19:12</td><td>19:21</td><td>19:25</td><td>19:33</td><td>19:40</td><td>19:47</td><td>19:56</td><td>20:07</td><td>20:20</td><td>20:32</td><td>20:39</td><td>20:48</td><td>20:57</td><td>21:09</td><td>21:28</td><td>21:44</td><td>21:57</td><td>22:16</td><td>22:21</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>제천역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '제천'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">제천역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">제천역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '33030';
            let curName = '제천';
            let altCity = '';
            let altName = '정차';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">제천역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">12℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">제천역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%9C%B0%EC%9D%B4%EC%9E%88%EB%8A%94%EC%A7%91+%EC%B6%A9%EC%B2%AD%EB%B6%81%EB%8F%84+%EC%A0%9C%EC%B2%9C%EC%8B%9C+%EC%8B%A0%EC%9B%94%EB%8F%99+1163-38+%EB%9C%B0%EC%9D%B4%EC%9E%88%EB%8A%94%EC%A7%91" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">뜰이있는집</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;한정식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">충청북도 제천시 신월동 1163-38 뜰이있는집</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%81%98%EB%9D%A0%EC%83%B9%EB%93%A4%EB%A6%AC%EC%97%90+%EC%B6%A9%EC%B2%AD%EB%B6%81%EB%8F%84+%EC%A0%9C%EC%B2%9C%EC%8B%9C+%EC%8B%A0%EC%9B%94%EB%8F%99+220-10" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">쁘띠샹들리에</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;베이커리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">충청북도 제천시 신월동 220-10</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EA%B0%90%ED%83%84%EC%B9%B4%EC%B8%A0+%EC%B6%A9%EC%B2%AD%EB%B6%81%EB%8F%84+%EC%A0%9C%EC%B2%9C%EC%8B%9C+%EC%8B%A0%EC%9B%94%EB%8F%99+207-2+%EA%B0%90%ED%83%84%EC%B9%B4%EC%B8%A0" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">감탄카츠</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;일식&gt;돈가스</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">충청북도 제천시 신월동 207-2 감탄카츠</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%8C%80%EB%B3%B4%EB%AA%85%EA%B0%80+%EC%A0%9C%EC%B2%9C%EB%B3%B8%EC%A0%90+%EC%B6%A9%EC%B2%AD%EB%B6%81%EB%8F%84+%EC%A0%9C%EC%B2%9C%EC%8B%9C+%EC%8B%A0%EC%9B%94%EB%8F%99+201" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">대보명가 제천본점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;한정식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">충청북도 제천시 신월동 201</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%B7%A8%EB%9E%80+%EC%A0%9C%EC%B2%9C%EC%A0%90+%EC%B6%A9%EC%B2%AD%EB%B6%81%EB%8F%84+%EC%A0%9C%EC%B2%9C%EC%8B%9C+%EC%8B%A0%EC%9B%94%EB%8F%99+1105-7+%EC%B7%A8%EB%9E%80" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">취란 제천점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">중식&gt;중식당</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">충청북도 제천시 신월동 1105-7 취란</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">제천역 실시간 주차장 요금</h4>
        
                    <div class="parking-list-container">
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 제천역                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">450원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">150원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">6,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 충청북도 제천시 의림대로1길 10<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 031-523-2353                        </div>
                    </div>
                            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">제천역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 충청북도 제천시 의림대로1길 10</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:031-523-2353" style="color: #0052a4; font-weight: bold; text-decoration: none;">031-523-2353</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%A0%9C%EC%B2%9C%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/03/제천역-기차-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="제천역-기차-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-19470" srcset="https://krailroad.co.kr/wp-content/uploads/2026/03/제천역-기차-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/03/제천역-기차-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/03/제천역-기차-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>단양역 중앙선 시간표 KTX ITX 무궁화호 서울 청량리 부전 요금과 정차역</title>
		<link>https://krailroad.co.kr/%eb%8b%a8%ec%96%91%ec%97%ad-%ec%a4%91%ec%95%99%ec%84%a0-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-itx-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80%ec%a0%84/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Tue, 10 Mar 2026 05:27:49 +0000</pubDate>
				<category><![CDATA[KTX 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[무궁화 시간표]]></category>
		<category><![CDATA[단양역 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=19356</guid>

					<description><![CDATA[남한강의 푸른 물결과 소백산의 기암괴석이 어우러진 단양역 중앙선은 새로운 전철화가 안착되며 중부내륙 관광의 새로운 중심지로 이용되고 있습니다. &#8216;단양팔경&#8217;의 관문답게 역을 나서자마자 마주하는 수려한 자연경관은 방문객들의 마음을 설레게 하는데요. 이제는 수도권에서 1시간 초반대면 닿을 수 있어 당일치기 여행지로도 손색이 없습니다. 아래 내용은 공공데이터 API와 코레일의 최신 데이터를 바탕으로 서울, 청량리, 부전역으로 가는 단양역 중앙선 KTX 시간표와 ... <a title="단양역 중앙선 시간표 KTX ITX 무궁화호 서울 청량리 부전 요금과 정차역" class="read-more button" href="https://krailroad.co.kr/%eb%8b%a8%ec%96%91%ec%97%ad-%ec%a4%91%ec%95%99%ec%84%a0-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-itx-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80%ec%a0%84/" aria-label="단양역 중앙선 시간표 KTX ITX 무궁화호 서울 청량리 부전 요금과 정차역 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">남한강의 푸른 물결과 소백산의 기암괴석이 어우러진 단양역 중앙선은 새로운 전철화가 안착되며 중부내륙 관광의 새로운 중심지로 이용되고 있습니다. &#8216;단양팔경&#8217;의 관문답게 역을 나서자마자 마주하는 수려한 자연경관은 방문객들의 마음을 설레게 하는데요. 이제는 수도권에서 1시간 초반대면 닿을 수 있어 당일치기 여행지로도 손색이 없습니다.</p>



<p class="wp-block-paragraph">아래 내용은 공공데이터 API와 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a>의 최신 데이터를 바탕으로 서울, 청량리, 부전역으로 가는 단양역 중앙선 KTX 시간표와 단양역 ITX-마음, 그리고 청량리와 영주를 잇는 무궁화호 이용 내용을 깔끔하게 정리했습니다. 단양역을 이용하여 만천하스카이워크나 도담삼봉으로 향하는 분들께 정확한 이동 시간표와 정차역, 요금, 실시간 버스정보, 주차장 정보가 되었으면합니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">1942년부터 이어진 단양역</h2>



<h3 class="wp-block-heading">수몰의 아픔과 호반의 관문</h3>



<p class="wp-block-paragraph">1942년 처음 기차 소리가 울려 퍼진 단양역 중앙선은 원래 지금의 단성면(구단양) 자리에 있었습니다. 하지만 1985년 충주댐 건설로 시가지가 물에 잠기면서 현재의 증도리 위치로 보금자리를 옮기게 되었는데요. 2020년 말 새롭게 단장한 단양역 신역사는 단양의 기암괴석과 남한강의 물결을 형상화한 유려한 외관으로 방문객을 맞이하며 고속 철도 시대의 화려한 개막을 알렸습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">KTX-이음이 가져온 1시간대 생활권</h3>



<p class="wp-block-paragraph">서울 청량리역에서 단양역까지의 이동 시간이 획기적으로 줄어들면서 수도권과의 심리적 경계가 완전히 허물어졌습니다. 예전에는 큰맘 먹고 준비해야 했던 단양 여행이 이제는 가벼운 마음으로 떠나는 산책처럼 변한 것인데요. 단양역 KTX 소요 시간의 단축은 구경시장과 패러글라이딩 명소를 찾는 분들에게 시간적 여유라는 큰 선물을 안겨주었습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">KTX-이음과 최신형 ITX-마음</h3>



<p class="wp-block-paragraph">현재 단양역 중앙선 KTX-이음은 서울 청량리와 <a href="https://krailroad.co.kr/%eb%b6%80%ec%82%b0%ec%97%ad-ktx-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%b5%9c%ec%8b%a0-%eb%85%b8%ec%84%a0%eb%b3%84-%ec%9a%94%ea%b8%88-%eb%b0%8f-%ec%86%8c%ec%9a%94-%ec%8b%9c%ea%b0%84/">부산</a> <a href="https://krailroad.co.kr/%eb%b6%80%ec%a0%84%ec%97%ad-ktx-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%b2%ad%eb%9f%89%eb%a6%ac%c2%b7%ea%b0%95%eb%a6%89%c2%b7%ec%95%88%eb%8f%99%ed%96%89%ec%86%8d%ec%b4%88-%ed%8f%ac%ed%95%ad-%ec%a4%91/">부전</a> 사이를 오가며 중부내륙 관광의 혈맥 역할을 수행합니다. 여기에 무궁화호보다 빠르고 시설이 쾌적한 단양역 ITX-마음까지 가세하며 선택의 폭이 훨씬 넓어졌는데요. 단양역 시간표를 살펴보면 관광객들이 선호하는 오전 시간대와 야경을 즐기고 귀가하기 좋은 저녁 시간대에 배차가 적절히 나뉘어 있어 일정 짜기가 무척 수월합니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">도담삼봉과 만천하스카이워크</h3>



<p class="wp-block-paragraph">단양역에서 동대구역이나 안동, 영주 방면으로 향하는 무궁화호는 여전히 지역 주민들의 소중한 이동 수단으로, 대구의 대형 인프라를 이용하는 어르신들이나 느긋하게 창밖 풍경을 즐기려는 분들에게 이 노선은 대체 불가능한 존재입니다.<br><br>그리고 단양역을 나서자마자 마주하는 역 주변 버스 노선을 활용하면 아찔한 높이의 만천하스카이워크나 단양의 상징인 도담삼봉에 쉽게 접근할 수 있으며, 패러글라이딩이나 수상 레포츠가 활발한 시즌에는 단양역 중앙선 티켓이 평소보다 치열해지므로 일정을 미리 확정 짓는 것이 좋습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>단양역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">단양<br>↓<br>제천</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">702호</span><div class="time-display">6:35</div><div class="arrival-info">6:51 도착</div></td><td><span class="train-detail">782호</span><div class="time-display">19:52</div><div class="arrival-info">20:07 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">단양<br>↓<br>청량리</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">702호</span><div class="time-display">6:35</div><div class="arrival-info">8:11 도착</div></td><td><span class="train-detail">782호</span><div class="time-display">19:52</div><div class="arrival-info">21:13 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">단양<br>↓<br>서울</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">702호</span><div class="time-display">6:35</div><div class="arrival-info">8:31 도착</div></td><td><span class="train-detail">714호</span><div class="time-display">17:15</div><div class="arrival-info">19:13 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">단양<br>↓<br>제천</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1612호</span><div class="time-display">07:49</div><div class="arrival-info">08:07 도착</div></td><td><span class="train-detail">1604호</span><div class="time-display">19:07</div><div class="arrival-info">19:25 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1662호</span><div class="time-display">06:18</div><div class="arrival-info">06:33 도착</div></td><td><span class="train-detail">1662호</span><div class="time-display">06:18</div><div class="arrival-info">06:33 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">단양<br>↓<br>청량리</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1612호</span><div class="time-display">07:49</div><div class="arrival-info">09:47 도착</div></td><td><span class="train-detail">1604호</span><div class="time-display">19:07</div><div class="arrival-info">20:56 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1662호</span><div class="time-display">06:18</div><div class="arrival-info">08:27 도착</div></td><td><span class="train-detail">1662호</span><div class="time-display">06:18</div><div class="arrival-info">08:27 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">단양<br>↓<br>경주</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">701호</span><div class="time-display">7:02</div><div class="arrival-info">8:19 도착</div></td><td><span class="train-detail">715호</span><div class="time-display">20:21</div><div class="arrival-info">21:46 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">단양<br>↓<br>태화강</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">701호</span><div class="time-display">7:02</div><div class="arrival-info">8:40 도착</div></td><td><span class="train-detail">715호</span><div class="time-display">20:21</div><div class="arrival-info">22:08 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">단양<br>↓<br>부전</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">701호</span><div class="time-display">7:02</div><div class="arrival-info">9:24 도착</div></td><td><span class="train-detail">715호</span><div class="time-display">20:21</div><div class="arrival-info">22:54 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">단양<br>↓<br>영주</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">08:31</div><div class="arrival-info">08:55 도착</div></td><td><span class="train-detail">1613호</span><div class="time-display">19:32</div><div class="arrival-info">19:56 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1661호</span><div class="time-display">23:52</div><div class="arrival-info">00:14 도착</div></td><td><span class="train-detail">1661호</span><div class="time-display">23:52</div><div class="arrival-info">00:14 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">단양<br>↓<br>경주</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">08:31</div><div class="arrival-info">10:43 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">16:45</div><div class="arrival-info">18:55 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">단양<br>↓<br>북울산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">08:31</div><div class="arrival-info">11:04 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">16:45</div><div class="arrival-info">19:15 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">단양<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">08:31</div><div class="arrival-info">12:20 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">16:45</div><div class="arrival-info">20:28 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong><strong><strong>단양</strong></strong></strong>역 </strong>KTX-ITX 무궁화호 <strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>경유지</th><th>운임</th><th>일반</th><th>우등</th></tr></thead><tbody><tr><td>중앙K1</td><td>KTX</td><td class="highlight">서울</td><td class="highlight">단양</td><td>기본</td><td>0</td><td>20,200</td><td>24,200</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">단양</td><td>-</td><td>10,600</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">청량리</td><td class="highlight">단양</td><td>-</td><td>14,900</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">청량리</td><td class="highlight">단양</td><td>기본</td><td>0</td><td>18,600</td><td>22,300</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">단양</td><td class="highlight">경주</td><td>-</td><td>13,100</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">단양</td><td class="highlight">경주</td><td>-</td><td>16,700</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">단양</td><td class="highlight">경주</td><td>기본</td><td>0</td><td>24,400</td><td>29,300</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">단양</td><td class="highlight">태화강</td><td>-</td><td>15,800</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">단양</td><td class="highlight">태화강</td><td>-</td><td>20,700</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">단양</td><td class="highlight">태화강</td><td>기본</td><td>0</td><td>30,300</td><td>36,400</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">단양</td><td class="highlight">부전</td><td>-</td><td>19,900</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">단양</td><td class="highlight">부전</td><td>-</td><td>26,800</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">단양</td><td class="highlight">부전</td><td>기본</td><td>0</td><td>36,900</td><td>44,300</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>단양역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <a href="https://krailroad.co.kr/%eb%8b%a8%ec%96%91%ec%97%ad-%ec%a4%91%ec%95%99%ec%84%a0-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-itx-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80%ec%a0%84/">단양역 KTX 시간표 바로가기</a><br>✅ <s>단양역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%eb%8b%a8%ec%96%91%ec%97%ad-%ec%a4%91%ec%95%99%ec%84%a0-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-itx-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80%ec%a0%84/">단양역 ITX, 무궁화 시간표</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>단양역 <strong><strong>KTX-<strong>ITX 무궁화호 </strong>시간표</strong></strong></strong></h2>



<h3 class="wp-block-heading">출발 : 단양 → 도착 : 청량리-서울</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>단양</th><th>제천</th><th>원주</th><th>서원주</th><th>양평</th><th>덕소</th><th>상봉</th><th>청량리</th><th>서울</th><th>비고</th></tr></thead><tbody><tr><td>702</td><td>KTX-이음</td><td>6:35</td><td>6:51</td><td>7:08</td><td>7:20</td><td>7:42</td><td></td><td></td><td>8:11</td><td>8:31</td><td>매일</td></tr><tr><td>704</td><td>KTX-이음</td><td>8:27</td><td>8:43</td><td>9:00</td><td>9:12</td><td></td><td></td><td></td><td>9:59</td><td>10:19</td><td>매일</td></tr><tr><td>708</td><td>KTX-이음</td><td>12:38</td><td>12:53</td><td>13:11</td><td>13:23</td><td>13:45</td><td></td><td></td><td>14:13</td><td>14:33</td><td>매일</td></tr><tr><td>710</td><td>KTX-이음</td><td>14:39</td><td>14:55</td><td>15:12</td><td></td><td>15:34</td><td></td><td>15:58</td><td>16:04</td><td></td><td>매일</td></tr><tr><td>714</td><td>KTX-이음</td><td>17:15</td><td>17:31</td><td>17:48</td><td>18:01</td><td>18:23</td><td></td><td></td><td>18:51</td><td>19:13</td><td>매일</td></tr><tr><td>782</td><td>KTX-이음</td><td>19:52</td><td>20:07</td><td>20:24</td><td></td><td></td><td>20:59</td><td></td><td>21:13</td><td></td><td>토일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>단양</th><th>제천</th><th>봉양</th><th>원주</th><th>서원주</th><th>삼산</th><th>양동</th><th>매곡</th><th>일신</th><th>석불</th><th>지평</th><th>용문</th><th>양평</th><th>덕소</th><th>청량리</th></tr></thead><tbody><tr><td>1662</td><td>무궁화</td><td>06:18</td><td>06:33</td><td>06:40</td><td>06:59</td><td>07:06</td><td>07:12</td><td>07:18</td><td>07:24</td><td>07:33</td><td>07:38</td><td>07:42</td><td>07:48</td><td>07:56</td><td>08:13</td><td>08:27</td></tr><tr><td>1612</td><td>ITX-마음</td><td>07:49</td><td>08:07</td><td></td><td>08:31</td><td>08:44</td><td></td><td>08:54</td><td></td><td></td><td></td><td></td><td>09:08</td><td>09:16</td><td>09:34</td><td>09:47</td></tr><tr><td>1602</td><td>ITX-마음</td><td>11:01</td><td>11:19</td><td></td><td>11:44</td><td>11:52</td><td></td><td>12:00</td><td>12:05</td><td>12:10</td><td></td><td>12:16</td><td>12:22</td><td>12:29</td><td></td><td>12:56</td></tr><tr><td>1614</td><td>ITX-마음</td><td>15:13</td><td>15:31</td><td></td><td>15:55</td><td>16:04</td><td></td><td>16:14</td><td></td><td></td><td></td><td></td><td>16:28</td><td>16:36</td><td>16:53</td><td>17:06</td></tr><tr><td>1604</td><td>ITX-마음</td><td>19:07</td><td>19:25</td><td></td><td>19:50</td><td>19:58</td><td></td><td>20:08</td><td></td><td></td><td></td><td></td><td>20:21</td><td>20:29</td><td></td><td>20:56</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 단양 → 도착 : 안동-부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th><th>의성</th><th>영천</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>신해운대</th><th>센텀</th><th>부전</th><th>비고</th></tr></thead><tbody><tr><td>701</td><td>KTX-이음</td><td>7:02</td><td></td><td>7:19</td><td>7:34</td><td></td><td></td><td>8:19</td><td></td><td>8:40</td><td></td><td></td><td></td><td>9:24</td><td>매일</td></tr><tr><td>703</td><td>KTX-이음</td><td>7:55</td><td>8:07</td><td>8:16</td><td>8:31</td><td>8:44</td><td></td><td>9:22</td><td>9:39</td><td>9:48</td><td></td><td>10:21</td><td></td><td>10:34</td><td>매일</td></tr><tr><td>707</td><td>KTX-이음</td><td>12:50</td><td>13:02</td><td>13:11</td><td>13:26</td><td></td><td>13:57</td><td>14:16</td><td></td><td>14:39</td><td></td><td>15:12</td><td></td><td>15:27</td><td>매일</td></tr><tr><td>709</td><td>KTX-이음</td><td>14:41</td><td></td><td>14:57</td><td>15:11</td><td></td><td></td><td>15:57</td><td></td><td>16:18</td><td></td><td></td><td></td><td>17:00</td><td>매일</td></tr><tr><td>713</td><td>KTX-이음</td><td>18:03</td><td>18:14</td><td>18:22</td><td>18:38</td><td>18:50</td><td></td><td>19:25</td><td></td><td>19:46</td><td>19:59</td><td></td><td>20:25</td><td>20:36</td><td>매일</td></tr><tr><td>715</td><td>KTX-이음</td><td>20:21</td><td>20:32</td><td>20:41</td><td>20:56</td><td></td><td>21:27</td><td>21:46</td><td></td><td>22:08</td><td></td><td>22:40</td><td></td><td>22:54</td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>단양</th><th>풍기</th><th>영주</th><th>안동</th><th>의성</th><th>군위</th><th>영천</th><th>아화</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>08:31</td><td>08:44</td><td>08:55</td><td>09:16</td><td>09:34</td><td>09:52</td><td>10:14</td><td>10:26</td><td>10:43</td><td>11:04</td><td>11:13</td><td>11:30</td><td>11:51</td><td>12:02</td><td>12:10</td><td>12:20</td></tr><tr><td>1611</td><td>ITX-마음</td><td>12:30</td><td>12:43</td><td>12:53</td><td>13:13</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>1603</td><td>ITX-마음</td><td>16:45</td><td>16:58</td><td>17:10</td><td>17:31</td><td>17:49</td><td>18:06</td><td>18:27</td><td>18:38</td><td>18:55</td><td>19:15</td><td>19:23</td><td>19:39</td><td>20:00</td><td>20:10</td><td>20:17</td><td>20:28</td></tr><tr><td>1613</td><td>ITX-마음</td><td>19:32</td><td>19:45</td><td>19:56</td><td>20:15</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>1661</td><td>무궁화</td><td>23:52</td><td>00:05</td><td>00:14</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>단양역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '단양'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">단양역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">단양역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '33380';
            let curName = '단양';
            let altCity = '';
            let altName = '정차';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">단양역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">13℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">단양역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EA%B0%80%EC%97%B0+%EC%B6%A9%EC%B2%AD%EB%B6%81%EB%8F%84+%EB%8B%A8%EC%96%91%EA%B5%B0+%EB%8B%A8%EC%96%91%EC%9D%8D+%EC%83%81%EC%A7%84%EB%A6%AC+567+%EA%B0%80%EC%97%B0" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">가연</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;육류,고기요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">충청북도 단양군 단양읍 상진리 567 가연</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%A7%8C%EC%B2%9C%ED%95%98%EC%8A%A4%EC%B9%B4%EC%9D%B4%EB%9D%BC%EC%9A%B4%EC%A7%80%EC%B9%B4%ED%8E%98+%EC%B6%A9%EC%B2%AD%EB%B6%81%EB%8F%84+%EB%8B%A8%EC%96%91%EA%B5%B0+%EC%A0%81%EC%84%B1%EB%A9%B4+%EC%95%A0%EA%B3%A1%EB%A6%AC+%EC%82%B01-28+%EB%A7%8C%EC%B2%9C%ED%95%98%EC%8A%A4%EC%B9%B4%EC%9D%B4%EB%9D%BC%EC%9A%B4%EC%A7%80%EC%B9%B4%ED%8E%98+3F%7E4F" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">만천하스카이라운지카페</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;카페,디저트</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">충청북도 단양군 적성면 애곡리 산1-28 만천하스카이라운지카페 3F~4F</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%8B%A4%EC%9B%90+%EC%B6%A9%EC%B2%AD%EB%B6%81%EB%8F%84+%EB%8B%A8%EC%96%91%EA%B5%B0+%EB%8B%A8%EC%96%91%EC%9D%8D+%EC%83%81%EC%A7%84%EB%A6%AC+1018-1+%EB%B3%B8%EA%B4%80%2C+%EB%B3%84%EA%B4%80" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">다원</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;육류,고기요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">충청북도 단양군 단양읍 상진리 1018-1 본관, 별관</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%B9%84%EC%9B%90%EC%8F%98%EA%B0%80%EB%A6%AC%EB%A7%A4%EC%9A%B4%ED%83%95+%ED%9A%8C+%EC%86%8C%EB%85%B8%EB%AC%B8+%EB%B3%B8%EC%A0%90+%EC%B6%A9%EC%B2%AD%EB%B6%81%EB%8F%84+%EB%8B%A8%EC%96%91%EA%B5%B0+%EB%8B%A8%EC%96%91%EC%9D%8D+%EC%83%81%EC%A7%84%EB%A6%AC+1013" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">비원쏘가리매운탕 회 소노문 본점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;매운탕,해물탕</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">충청북도 단양군 단양읍 상진리 1013</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%8B%A8%EC%96%91%EB%AA%A8%EC%95%84+%EC%B6%A9%EC%B2%AD%EB%B6%81%EB%8F%84+%EB%8B%A8%EC%96%91%EA%B5%B0+%EB%8B%A8%EC%96%91%EC%9D%8D+%EC%83%81%EC%A7%84%EB%A6%AC+917" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">단양모아</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;한식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">충청북도 단양군 단양읍 상진리 917</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">단양역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">단양역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 단양역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EB%8B%A8%EC%96%91%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/03/단양역-중앙선-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="단양역-중앙선-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-19376" srcset="https://krailroad.co.kr/wp-content/uploads/2026/03/단양역-중앙선-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/03/단양역-중앙선-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/03/단양역-중앙선-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>풍기역 KTX-이음 ITX-마음 기차 시간표 서울 청량리 부전 정차역과 요금표</title>
		<link>https://krailroad.co.kr/%ed%92%8d%ea%b8%b0%ec%97%ad-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80%ec%a0%84-%ec%a0%95/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Tue, 10 Mar 2026 01:31:39 +0000</pubDate>
				<category><![CDATA[KTX 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[무궁화 시간표]]></category>
		<category><![CDATA[풍기역 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=19322</guid>

					<description><![CDATA[소백산의 정기를 품은 중앙선의 최근 전철 사업의 결실로 고속철도 시대를 맞이하며 경북 북부의 새로운 관문으로 부상하였으며, 인삼의 고장이라는 명성에 걸맞게 역사 광장부터 건강한 기운이 느껴지는 이곳은, 이제 수도권에서 1시간 초반대면 닿을 수 있는 매력적인 여행지가 되었는데요. 서울, 청량리, 경주, 부전을 있는 중앙선 상하행 풍기역 KTX 시간표와 ITX-마음, 그리고 청량리와 영주를 잇는 무궁화호 노선과 정차역을 코레일 ... <a title="풍기역 KTX-이음 ITX-마음 기차 시간표 서울 청량리 부전 정차역과 요금표" class="read-more button" href="https://krailroad.co.kr/%ed%92%8d%ea%b8%b0%ec%97%ad-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80%ec%a0%84-%ec%a0%95/" aria-label="풍기역 KTX-이음 ITX-마음 기차 시간표 서울 청량리 부전 정차역과 요금표 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">소백산의 정기를 품은 중앙선의 최근 전철 사업의 결실로 고속철도 시대를 맞이하며 경북 북부의 새로운 관문으로 부상하였으며, 인삼의 고장이라는 명성에 걸맞게 역사 광장부터 건강한 기운이 느껴지는 이곳은, 이제 수도권에서 1시간 초반대면 닿을 수 있는 매력적인 여행지가 되었는데요.</p>



<p class="wp-block-paragraph">서울, 청량리, <a href="https://krailroad.co.kr/%ea%b2%bd%ec%a3%bc%ec%97%ad-ktx-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%84%9c%ec%9a%b8-%eb%b6%80%ec%82%b0-%eb%85%b8%ec%84%a0%eb%b3%84-%ec%a0%95%ec%b0%a8%ec%97%ad-%ec%95%88%eb%82%b4/">경주</a>, 부전을 있는 중앙선 상하행 풍기역 KTX 시간표와 ITX-마음, 그리고 청량리와 영주를 잇는 무궁화호 노선과 정차역을 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a> 공식 자료를 정리 하였으며, 이 역을 이용한 소백산 국립공원이나 부석사로 향하는 분들께 정확한 이동 자료가 되었으면 합니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">1941년 부터 지금까지의 변화</h2>



<h3 class="wp-block-heading">증기기관차에서 KTX 정차역으로</h3>



<p class="wp-block-paragraph">1941년 문을 연 풍기역은 과거 경사가 가파른 죽령 고개를 넘기 위해 증기기관차가 물을 보충하던 급수탑이 여전히 자리를 지키고 있는 역사의 현장입니다. 세월의 흔적을 간직한 채 2020년 말 새롭게 단장한 풍기역 신역사는 소백산의 능선을 닮은 유려한 곡선미를 자랑하는데요. KTX-이음의 정차는 영주 시내를 거치지 않고도 소백산 자락에 바로 발을 내디딜 수 있게 하며 관광객 유입의 핵심 역할을 하고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">고속화가 가져온 &#8216;당일치기 인삼 여행&#8217;</h3>



<p class="wp-block-paragraph">서울, 청량리, 경주, 부전역에서 풍기까지의 소요 시간이 획기적으로 줄어들면서 수도권 생활권과의 경계가 허물어졌습니다. 예전 같으면 큰맘 먹고 준비해야 했던 경북 내륙 여행이 이제는 가벼운 마음으로 떠나는 산책처럼 변한 것인데요. 이런 소요 시간의 단축은 풍기 인삼 시장과 선비세상을 찾는 방문객들에게 시간적 여유라는 큰 선물을 안겨주었습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">서울과 부산을 잇는 쾌적한 철길</h3>



<p class="wp-block-paragraph">현재 풍기역 KTX-이음은 서울 청량리와 부산 <a href="https://krailroad.co.kr/%eb%b6%80%ec%a0%84%ec%97%ad-ktx-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%b2%ad%eb%9f%89%eb%a6%ac%c2%b7%ea%b0%95%eb%a6%89%c2%b7%ec%95%88%eb%8f%99%ed%96%89%ec%86%8d%ec%b4%88-%ed%8f%ac%ed%95%ad-%ec%a4%91/">부전</a>을 잇는 가교로서 하루에도 여러 차례 운행하고 있으며, 최신형 ITX-마음 역시 무궁화호보다 빠른 속도와 깨끗한 시설로 이용객들의 만족도를 높여주고 있는데요. 시간표를 살펴보면 등산객들이 선호하는 아침 시간대와 귀가하기 편한 저녁 시간대에 배차가 적절히 나뉘어 있어 일정 짜기가 무척 수월합니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">소백산과 부석사로 향하는 여행</h3>



<p class="wp-block-paragraph">역을 나서자마자 마주하는 역사 주변 버스 노선을 활용하면 소백산 비로봉으로 향하는 희방사 가는법이나 죽령 옛길 코스에 쉽게 접근할 수 있습니다. 또한 영주의 대표 명소인 부석사나 소수서원까지도 영주 시내를 거치는 것보다 풍기에서 이동하는 것이 시간상 유리할 때가 많습니다.<br><br>또한 지역 특산물인 인삼 산업과 관광의 결합으로 더욱 밝아질 전망입니다. 매년 열리는 풍기 인삼 축제 기간에는 열차 예매 전쟁이 벌어질 정도로 활기가 넘치는데요. 역사 내 전광판의 실시간 API 정보와 날씨를 수시로 체크하며 이동하신다면, 소백산 아래 아늑한 풍기에서의 시간을 1분 1초라도 더 알차게 보내실 수 있을 겁니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>풍기역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">풍기<br>↓<br>제천</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">702호</span><div class="time-display">6:25</div><div class="arrival-info">6:51 도착</div></td><td><span class="train-detail">782호</span><div class="time-display">19:42</div><div class="arrival-info">20:07 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">풍기<br>↓<br>청량리</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">702호</span><div class="time-display">6:25</div><div class="arrival-info">8:11 도착</div></td><td><span class="train-detail">782호</span><div class="time-display">19:42</div><div class="arrival-info">21:13 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">풍기<br>↓<br>서울</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">702호</span><div class="time-display">6:25</div><div class="arrival-info">8:31 도착</div></td><td><span class="train-detail">708호</span><div class="time-display">12:26</div><div class="arrival-info">14:33 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">풍기<br>↓<br>제천</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1612호</span><div class="time-display">07:36</div><div class="arrival-info">08:07 도착</div></td><td><span class="train-detail">1604호</span><div class="time-display">18:53</div><div class="arrival-info">19:25 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1662호</span><div class="time-display">06:06</div><div class="arrival-info">06:33 도착</div></td><td><span class="train-detail">1662호</span><div class="time-display">06:06</div><div class="arrival-info">06:33 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">풍기<br>↓<br>청량리</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1612호</span><div class="time-display">07:36</div><div class="arrival-info">09:47 도착</div></td><td><span class="train-detail">1604호</span><div class="time-display">18:53</div><div class="arrival-info">20:56 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1662호</span><div class="time-display">06:06</div><div class="arrival-info">08:27 도착</div></td><td><span class="train-detail">1662호</span><div class="time-display">06:06</div><div class="arrival-info">08:27 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">풍기<br>↓<br>경주</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">703호</span><div class="time-display">8:07</div><div class="arrival-info">9:22 도착</div></td><td><span class="train-detail">715호</span><div class="time-display">20:32</div><div class="arrival-info">21:46 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">풍기<br>↓<br>태화강</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">703호</span><div class="time-display">8:07</div><div class="arrival-info">9:48 도착</div></td><td><span class="train-detail">715호</span><div class="time-display">20:32</div><div class="arrival-info">22:08 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">풍기<br>↓<br>부전</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">703호</span><div class="time-display">8:07</div><div class="arrival-info">10:34 도착</div></td><td><span class="train-detail">715호</span><div class="time-display">20:32</div><div class="arrival-info">22:54 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">풍기<br>↓<br>영주</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">08:44</div><div class="arrival-info">08:55 도착</div></td><td><span class="train-detail">1613호</span><div class="time-display">19:45</div><div class="arrival-info">19:56 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1661호</span><div class="time-display">00:05</div><div class="arrival-info">00:14 도착</div></td><td><span class="train-detail">1661호</span><div class="time-display">00:05</div><div class="arrival-info">00:14 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">풍기<br>↓<br>경주</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">08:44</div><div class="arrival-info">10:43 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">16:58</div><div class="arrival-info">18:55 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">풍기<br>↓<br>북울산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">08:44</div><div class="arrival-info">11:04 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">16:58</div><div class="arrival-info">19:15 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">풍기<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">08:44</div><div class="arrival-info">12:20 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">16:58</div><div class="arrival-info">20:28 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong><strong><strong>풍기</strong></strong></strong>역 </strong>KTX-ITX 무궁화호 <strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>경유지</th><th>운임</th><th>일반</th><th>우등</th></tr></thead><tbody><tr><td>중앙K1</td><td>KTX</td><td class="highlight">서울</td><td class="highlight">풍기</td><td>기본</td><td>0</td><td>23,200</td><td>27,800</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">풍기</td><td>-</td><td>12,300</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">청량리</td><td class="highlight">풍기</td><td>-</td><td>17,000</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">청량리</td><td class="highlight">풍기</td><td>기본</td><td>0</td><td>21,600</td><td>25,900</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">풍기</td><td class="highlight">경주</td><td>-</td><td>11,400</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">풍기</td><td class="highlight">경주</td><td>-</td><td>14,600</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">풍기</td><td class="highlight">경주</td><td>기본</td><td>0</td><td>21,300</td><td>25,600</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">풍기</td><td class="highlight">태화강</td><td>-</td><td>14,100</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">풍기</td><td class="highlight">태화강</td><td>-</td><td>18,600</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">풍기</td><td class="highlight">태화강</td><td>기본</td><td>0</td><td>27,300</td><td>32,800</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">풍기</td><td class="highlight">부전</td><td>-</td><td>18,200</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">풍기</td><td class="highlight">부전</td><td>-</td><td>24,700</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">풍기</td><td class="highlight">부전</td><td>기본</td><td>0</td><td>33,900</td><td>40,700</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>풍기역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <a href="https://krailroad.co.kr/%ed%92%8d%ea%b8%b0%ec%97%ad-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80%ec%a0%84-%ec%a0%95/">풍기역 KTX 시간표 바로가기</a><br>✅ <s>풍기역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ed%92%8d%ea%b8%b0%ec%97%ad-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80%ec%a0%84-%ec%a0%95/">풍기역 ITX, 무궁화 시간표</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>풍기역 <strong><strong>KTX-<strong>ITX 무궁화호 </strong>시간표</strong></strong></strong></h2>



<h3 class="wp-block-heading">출발 : 풍기 → 도착 : 청량리-서울</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>풍기</th><th>단양</th><th>제천</th><th>원주</th><th>서원주</th><th>양평</th><th>덕소</th><th>상봉</th><th>청량리</th><th>서울</th><th>비고</th></tr></thead><tbody><tr><td>702</td><td>KTX-이음</td><td>6:25</td><td>6:35</td><td>6:51</td><td>7:08</td><td>7:20</td><td>7:42</td><td></td><td></td><td>8:11</td><td>8:31</td><td>매일</td></tr><tr><td>708</td><td>KTX-이음</td><td>12:26</td><td>12:38</td><td>12:53</td><td>13:11</td><td>13:23</td><td>13:45</td><td></td><td></td><td>14:13</td><td>14:33</td><td>매일</td></tr><tr><td>710</td><td>KTX-이음</td><td>14:28</td><td>14:39</td><td>14:55</td><td>15:12</td><td></td><td>15:34</td><td></td><td>15:58</td><td>16:04</td><td></td><td>매일</td></tr><tr><td>782</td><td>KTX-이음</td><td>19:42</td><td>19:52</td><td>20:07</td><td>20:24</td><td></td><td></td><td>20:59</td><td></td><td>21:13</td><td></td><td>토일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>풍기</th><th>단양</th><th>제천</th><th>봉양</th><th>원주</th><th>서원주</th><th>삼산</th><th>양동</th><th>매곡</th><th>일신</th><th>석불</th><th>지평</th><th>용문</th><th>양평</th><th>덕소</th><th>청량리</th></tr></thead><tbody><tr><td>1662</td><td>무궁화</td><td>06:06</td><td>06:18</td><td>06:33</td><td>06:40</td><td>06:59</td><td>07:06</td><td>07:12</td><td>07:18</td><td>07:24</td><td>07:33</td><td>07:38</td><td>07:42</td><td>07:48</td><td>07:56</td><td>08:13</td><td>08:27</td></tr><tr><td>1612</td><td>ITX-마음</td><td>07:36</td><td>07:49</td><td>08:07</td><td></td><td>08:31</td><td>08:44</td><td></td><td>08:54</td><td></td><td></td><td></td><td></td><td>09:08</td><td>09:16</td><td>09:34</td><td>09:47</td></tr><tr><td>1602</td><td>ITX-마음</td><td>10:46</td><td>11:01</td><td>11:19</td><td></td><td>11:44</td><td>11:52</td><td></td><td>12:00</td><td>12:05</td><td>12:10</td><td></td><td>12:16</td><td>12:22</td><td>12:29</td><td></td><td>12:56</td></tr><tr><td>1614</td><td>ITX-마음</td><td>15:00</td><td>15:13</td><td>15:31</td><td></td><td>15:55</td><td>16:04</td><td></td><td>16:14</td><td></td><td></td><td></td><td></td><td>16:28</td><td>16:36</td><td>16:53</td><td>17:06</td></tr><tr><td>1604</td><td>ITX-마음</td><td>18:53</td><td>19:07</td><td>19:25</td><td></td><td>19:50</td><td>19:58</td><td></td><td>20:08</td><td></td><td></td><td></td><td></td><td>20:21</td><td>20:29</td><td></td><td>20:56</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 풍기 → 도착 : 안동-부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>풍기</th><th>영주</th><th>안동</th><th>의성</th><th>영천</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>신해운대</th><th>센텀</th><th>부전</th><th>비고</th></tr></thead><tbody><tr><td>703</td><td>KTX-이음</td><td>8:07</td><td>8:16</td><td>8:31</td><td>8:44</td><td></td><td>9:22</td><td>9:39</td><td>9:48</td><td></td><td>10:21</td><td></td><td>10:34</td><td>매일</td></tr><tr><td>707</td><td>KTX-이음</td><td>13:02</td><td>13:11</td><td>13:26</td><td></td><td>13:57</td><td>14:16</td><td></td><td>14:39</td><td></td><td>15:12</td><td></td><td>15:27</td><td>매일</td></tr><tr><td>713</td><td>KTX-이음</td><td>18:14</td><td>18:22</td><td>18:38</td><td>18:50</td><td></td><td>19:25</td><td></td><td>19:46</td><td>19:59</td><td></td><td>20:25</td><td>20:36</td><td>매일</td></tr><tr><td>715</td><td>KTX-이음</td><td>20:32</td><td>20:41</td><td>20:56</td><td></td><td>21:27</td><td>21:46</td><td></td><td>22:08</td><td></td><td>22:40</td><td></td><td>22:54</td><td>매일</td></tr><tr><td>717</td><td>KTX-이음</td><td>23:28</td><td>23:37</td><td>23:51</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>풍기</th><th>영주</th><th>안동</th><th>의성</th><th>군위</th><th>영천</th><th>아화</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>08:44</td><td>08:55</td><td>09:16</td><td>09:34</td><td>09:52</td><td>10:14</td><td>10:26</td><td>10:43</td><td>11:04</td><td>11:13</td><td>11:30</td><td>11:51</td><td>12:02</td><td>12:10</td><td>12:20</td></tr><tr><td>1611</td><td>ITX-마음</td><td>12:43</td><td>12:53</td><td>13:13</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>1603</td><td>ITX-마음</td><td>16:58</td><td>17:10</td><td>17:31</td><td>17:49</td><td>18:06</td><td>18:27</td><td>18:38</td><td>18:55</td><td>19:15</td><td>19:23</td><td>19:39</td><td>20:00</td><td>20:10</td><td>20:17</td><td>20:28</td></tr><tr><td>1613</td><td>ITX-마음</td><td>19:45</td><td>19:56</td><td>20:15</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>1661</td><td>무궁화</td><td>00:05</td><td>00:14</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>풍기역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '풍기'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">풍기역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">풍기역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '37060';
            let curName = '풍기';
            let altCity = '';
            let altName = '정차';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">풍기역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">11℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">풍기역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%92%8D%EA%B8%B0+%ED%95%9C%EA%B2%B0%EC%B2%AD%EA%B5%AD%EC%9E%A5+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%98%81%EC%A3%BC%EC%8B%9C+%ED%92%8D%EA%B8%B0%EC%9D%8D+%EC%84%9C%EB%B6%80%EB%A6%AC+138-10+%ED%95%9C%EA%B2%B0%EC%B2%AD%EA%B5%AD%EC%9E%A5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">풍기 한결청국장</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;한식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 영주시 풍기읍 서부리 138-10 한결청국장</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%98%B8%EB%9E%91%EC%A0%9C%EA%B3%BC+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%98%81%EC%A3%BC%EC%8B%9C+%ED%92%8D%EA%B8%B0%EC%9D%8D+%EC%84%9C%EB%B6%80%EB%A6%AC+119-2+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">호랑제과</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;베이커리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 영주시 풍기읍 서부리 119-2 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%A0%95%EB%8F%84%EB%84%88%EC%B8%A0+%EB%B3%B8%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%98%81%EC%A3%BC%EC%8B%9C+%ED%92%8D%EA%B8%B0%EC%9D%8D+%EB%8F%99%EB%B6%80%EB%A6%AC+418-16+%EC%A0%95%EB%8F%84%EB%84%88%EC%B8%A0" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">정도너츠 본점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;도넛</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 영주시 풍기읍 동부리 418-16 정도너츠</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%8C%8C%EB%A6%AC%EB%B0%94%EA%B2%8C%EB%9C%A8+%EA%B2%BD%EB%B6%81%ED%92%8D%EA%B8%B0%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%98%81%EC%A3%BC%EC%8B%9C+%ED%92%8D%EA%B8%B0%EC%9D%8D+%EC%84%B1%EB%82%B4%EB%A6%AC+28-5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">파리바게뜨 경북풍기점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;베이커리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 영주시 풍기읍 성내리 28-5</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%9E%A5%EB%AA%A8%EB%8B%98%EC%8B%9C%EA%B3%A8%EB%B0%A5%EC%83%81+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%98%81%EC%A3%BC%EC%8B%9C+%ED%92%8D%EA%B8%B0%EC%9D%8D+%EC%84%9C%EB%B6%80%EB%A6%AC+139-5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">장모님시골밥상</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;한식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 영주시 풍기읍 서부리 139-5</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">풍기역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">풍기역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 풍기역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%ED%92%8D%EA%B8%B0%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/03/풍기역-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="풍기역-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-19375" srcset="https://krailroad.co.kr/wp-content/uploads/2026/03/풍기역-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/03/풍기역-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/03/풍기역-KTX-이음-ITX-마음-무궁화호-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>영주역 시간표 중앙선 KTX ITX 무궁화호 서울 부전 동해 동대구 요금 정차역</title>
		<link>https://krailroad.co.kr/%ec%98%81%ec%a3%bc%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%a4%91%ec%95%99%ec%84%a0-ktx-itx-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%84%9c%ec%9a%b8-%eb%b6%80%ec%a0%84-%eb%8f%99%ed%95%b4-%eb%8f%99/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Tue, 10 Mar 2026 00:41:44 +0000</pubDate>
				<category><![CDATA[KTX 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[무궁화 시간표]]></category>
		<category><![CDATA[영주역 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=19310</guid>

					<description><![CDATA[중앙선과 영동선, 경북선이 교차하며 대한민국 철도의 심장부 역할을 해온 영주역이 2026년 들어 새로운 전기를 맞이했습니다. 최근 40년 숙원사업이었던 도심 연결 보행교 개통과 함께, KTX-이음과 ITX-마음이 상시 운행되는 고속 철도 시대로 완전히 진입한 것인데요. 아래 영주역 시간표는 코레일의 최신 정보와 공공데이터 API를 이용한 실시간 버스 도착, 실시간 영주역 출발 시간표, 주변 맛집과 날씨 등을 취합하여 영주역 ... <a title="영주역 시간표 중앙선 KTX ITX 무궁화호 서울 부전 동해 동대구 요금 정차역" class="read-more button" href="https://krailroad.co.kr/%ec%98%81%ec%a3%bc%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%a4%91%ec%95%99%ec%84%a0-ktx-itx-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%84%9c%ec%9a%b8-%eb%b6%80%ec%a0%84-%eb%8f%99%ed%95%b4-%eb%8f%99/" aria-label="영주역 시간표 중앙선 KTX ITX 무궁화호 서울 부전 동해 동대구 요금 정차역 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">중앙선과 영동선, 경북선이 교차하며 대한민국 철도의 심장부 역할을 해온 영주역이 2026년 들어 새로운 전기를 맞이했습니다. 최근 40년 숙원사업이었던 도심 연결 보행교 개통과 함께, KTX-이음과 ITX-마음이 상시 운행되는 고속 철도 시대로 완전히 진입한 것인데요.</p>



<p class="wp-block-paragraph">아래 영주역 시간표는 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a>의 최신 정보와 공공데이터 API를 이용한 실시간 버스 도착, 실시간 영주역 출발 시간표, 주변 맛집과 날씨 등을 취합하여 영주역 KTX 시간표와 영주역 ITX-마음, 그리고 동해·동대구 방면 무궁화호 이용 정보를 정리했습니다. 영주를 방문하여 부석사나 주변 가족여행을 하시려는 분들께 유용한 자료가 되었으면 합니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">영주역 1941년부터 2026년까지</h2>



<h3 class="wp-block-heading">수해를 딛고 일어선 철도 요충지</h3>



<p class="wp-block-paragraph">1941년 보통역으로 첫발을 내디딘 영주역은 원래 영주동 중앙시장 자리에 있었습니다. 하지만 1961년 대홍수로 시가지가 잠기는 아픔을 겪은 뒤, 도시 재건 과정에서 1973년 지금의 휴천동 자리로 이전하게 되었는데요. 2023년 세워진 현대식 신역사는 유네스코 세계유산 부석사의 배흘림기둥을 형상화하여 영주의 선비 정신을 계승하고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">40년의 단절을 끝낸 &#8216;안전연결통로&#8217;</h3>



<p class="wp-block-paragraph">특히 2026년 3월 초, 철길로 나뉘어 있던 휴천2동과 3동을 잇는 영주역 안전연결통로(보행교)가 정식 개통되었습니다. 이는 단순한 통로를 넘어 영주역을 중심으로 한 역세권 활성화의 기폭제가 될 것으로 보이며, 역사 이용객들이 도심지로 진입하는 동선이 획기적으로 개선되었습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">서울·부산·동해를 잇는 철도망</h3>



<p class="wp-block-paragraph">현재 영주역 KTX-이음은 서울 청량리에서 안동을 거쳐 부산 부전까지 하루 8왕복(주말 포함 영주역 시간표 기준) 운행하며 수도권 1시간대 생활권을 현실화했습니다. 최신형 영주역 ITX-마음 역시 쾌적한 시설로 장거리 이용객들의 사랑을 받고 있는데요. 영주역 시간표를 확인해 보면 고속열차 배차가 촘촘해지면서 비즈니스나 당일치기 여행이 한층 수월해졌습니다.<br><br>영주역에서 동대구역이나 동해역, 그리고 경북선을 타고 김천역으로 향하는 무궁화호는 지역 간 촘촘한 연결을 책임지고 있으며, 대구의 대형 의료시설을 이용하거나 강원도 바다 여행을 떠나는 분들에게 이 노선은 대체 불가능한 발이 되어주는데요. 이런 영주역 시간표는(무궁화호) 기차 여행의 낭만을 유지하면서도 경북 북부권의 실질적인 생활권을 보장하는 핵심 노선입니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">부석사·소수서원 동선과 미래</h3>



<p class="wp-block-paragraph">영주역 시간표를 이용해 역에서 내리리자마자 역 주변 버스 노선을 이용하면 부석사 가는길이 쉬워지며, 유네스코 세계유산인 부석사와 우리나라 최초의 사액서원인 소수서원까지의 연계 버스가 잘 갖춰져 있어 혼행 또는 가족 여행자들도 불편함 없이 영주의 멋을 즐길 수 있는데요. 영주역 주차장 요금도 합리적으로 운영되고 있어 자차 이용객들도 안심하고 방문할 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>영주역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">영주<br>↓<br>제천</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">702호</span><div class="time-display">6:16</div><div class="arrival-info">6:51 도착</div></td><td><span class="train-detail">718호</span><div class="time-display">21:22</div><div class="arrival-info">21:49 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">영주<br>↓<br>청량리</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">702호</span><div class="time-display">6:16</div><div class="arrival-info">8:11 도착</div></td><td><span class="train-detail">718호</span><div class="time-display">21:22</div><div class="arrival-info">22:58 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">영주<br>↓<br>서울</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">702호</span><div class="time-display">6:16</div><div class="arrival-info">8:31 도착</div></td><td><span class="train-detail">714호</span><div class="time-display">16:59</div><div class="arrival-info">19:13 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">영주<br>↓<br>청량리</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1612호</span><div class="time-display">07:27</div><div class="arrival-info">09:47 도착</div></td><td><span class="train-detail">1604호</span><div class="time-display">18:43</div><div class="arrival-info">20:56 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1662호</span><div class="time-display">05:57</div><div class="arrival-info">08:27 도착</div></td><td><span class="train-detail">1662호</span><div class="time-display">05:57</div><div class="arrival-info">08:27 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">영주<br>↓<br>봉화</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1771호</span><div class="time-display">07:57</div><div class="arrival-info">08:13 도착</div></td><td><span class="train-detail">1777호</span><div class="time-display">19:32</div><div class="arrival-info">19:50 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">영주<br>↓<br>동해</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1771호</span><div class="time-display">07:57</div><div class="arrival-info">10:48 도착</div></td><td><span class="train-detail">1777호</span><div class="time-display">19:32</div><div class="arrival-info">22:30 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">영주<br>↓<br>경주</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">701호</span><div class="time-display">7:19</div><div class="arrival-info">8:19 도착</div></td><td><span class="train-detail">715호</span><div class="time-display">20:41</div><div class="arrival-info">21:46 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">영주<br>↓<br>태화강</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">701호</span><div class="time-display">7:19</div><div class="arrival-info">8:40 도착</div></td><td><span class="train-detail">715호</span><div class="time-display">20:41</div><div class="arrival-info">22:08 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">영주<br>↓<br>부전</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">701호</span><div class="time-display">7:19</div><div class="arrival-info">9:24 도착</div></td><td><span class="train-detail">715호</span><div class="time-display">20:41</div><div class="arrival-info">22:54 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">영주<br>↓<br>경주</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">08:55</div><div class="arrival-info">10:43 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">17:10</div><div class="arrival-info">18:55 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">영주<br>↓<br>북울산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">08:55</div><div class="arrival-info">11:04 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">17:10</div><div class="arrival-info">19:15 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">영주<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">08:55</div><div class="arrival-info">12:20 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">17:10</div><div class="arrival-info">20:28 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">영주<br>↓<br>동대구</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1774호</span><div class="time-display">14:00</div><div class="arrival-info">15:45 도착</div></td><td><span class="train-detail">1778호</span><div class="time-display">21:02</div><div class="arrival-info">22:47 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong><strong><strong>영주</strong></strong></strong>역 </strong>KTX-ITX 무궁화호 <strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>경유지</th><th>운임</th><th>일반</th><th>우등</th></tr></thead><tbody><tr><td>중앙K1</td><td>KTX</td><td class="highlight">서울</td><td class="highlight">영주</td><td>기본</td><td>0</td><td>25,000</td><td>30,000</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">영주</td><td>-</td><td>13,200</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">청량리</td><td class="highlight">영주</td><td>-</td><td>18,100</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">청량리</td><td class="highlight">영주</td><td>기본</td><td>0</td><td>23,300</td><td>28,000</td></tr><tr><td>중앙2</td><td>무궁화</td><td class="highlight">동해</td><td class="highlight">영주</td><td>-</td><td>9,300</td><td>0</td><td>0</td></tr><tr><td>중앙2</td><td>무궁화</td><td class="highlight">동백산</td><td class="highlight">영주</td><td>-</td><td>5,800</td><td>0</td><td>0</td></tr><tr><td>중앙2</td><td>무궁화</td><td class="highlight">봉화</td><td class="highlight">영주</td><td>-</td><td>2,600</td><td>0</td><td>0</td></tr><tr><td>중앙2</td><td>무궁화</td><td class="highlight">영주</td><td class="highlight">동대구</td><td>-</td><td>10,000</td><td>0</td><td>0</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">영주</td><td class="highlight">경주</td><td>-</td><td>10,600</td><td>0</td><td>0</td></tr><tr><td>중앙2</td><td>무궁화</td><td class="highlight">영주</td><td class="highlight">경주</td><td>-</td><td>10,600</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">영주</td><td class="highlight">경주</td><td>-</td><td>13,400</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">영주</td><td class="highlight">경주</td><td>기본</td><td>0</td><td>19,600</td><td>23,500</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">영주</td><td class="highlight">부전</td><td>-</td><td>17,400</td><td>0</td><td>0</td></tr><tr><td>중앙2</td><td>무궁화</td><td class="highlight">영주</td><td class="highlight">부전</td><td>-</td><td>17,400</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">영주</td><td class="highlight">부전</td><td>-</td><td>23,500</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">영주</td><td class="highlight">부전</td><td>기본</td><td>0</td><td>32,100</td><td>38,500</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>영주역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <a href="https://krailroad.co.kr/%ec%98%81%ec%a3%bc%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%a4%91%ec%95%99%ec%84%a0-ktx-itx-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%84%9c%ec%9a%b8-%eb%b6%80%ec%a0%84-%eb%8f%99%ed%95%b4-%eb%8f%99/">영주역 KTX 시간표 바로가기</a><br>✅ <s>영주역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ec%98%81%ec%a3%bc%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%a4%91%ec%95%99%ec%84%a0-ktx-itx-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%84%9c%ec%9a%b8-%eb%b6%80%ec%a0%84-%eb%8f%99%ed%95%b4-%eb%8f%99/">영주역 ITX, 무궁화 시간표</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>영주역 <strong><strong>KTX-<strong>ITX 무궁화호 </strong>시간표</strong></strong></strong></h2>



<h3 class="wp-block-heading">출발 : 영주 → 도착 : 청량리-서울</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>영주</th><th>풍기</th><th>단양</th><th>제천</th><th>원주</th><th>서원주</th><th>양평</th><th>덕소</th><th>상봉</th><th>청량리</th><th>서울</th><th>비고</th></tr></thead><tbody><tr><td>702</td><td>KTX-이음</td><td>6:16</td><td>6:25</td><td>6:35</td><td>6:51</td><td>7:08</td><td>7:20</td><td>7:42</td><td></td><td></td><td>8:11</td><td>8:31</td><td>매일</td></tr><tr><td>704</td><td>KTX-이음</td><td>8:10</td><td></td><td>8:27</td><td>8:43</td><td>9:00</td><td>9:12</td><td></td><td></td><td></td><td>9:59</td><td>10:19</td><td>매일</td></tr><tr><td>706</td><td>KTX-이음</td><td>10:17</td><td></td><td></td><td>10:44</td><td>11:01</td><td>11:12</td><td></td><td></td><td></td><td>11:58</td><td></td><td>매일</td></tr><tr><td>708</td><td>KTX-이음</td><td>12:17</td><td>12:26</td><td>12:38</td><td>12:53</td><td>13:11</td><td>13:23</td><td>13:45</td><td></td><td></td><td>14:13</td><td>14:33</td><td>매일</td></tr><tr><td>710</td><td>KTX-이음</td><td>14:19</td><td>14:28</td><td>14:39</td><td>14:55</td><td>15:12</td><td></td><td>15:34</td><td></td><td>15:58</td><td>16:04</td><td></td><td>매일</td></tr><tr><td>712</td><td>KTX-이음</td><td>15:35</td><td></td><td></td><td>16:03</td><td>16:20</td><td>16:32</td><td></td><td></td><td></td><td>17:21</td><td>17:41</td><td>매일</td></tr><tr><td>714</td><td>KTX-이음</td><td>16:59</td><td></td><td>17:15</td><td>17:31</td><td>17:48</td><td>18:01</td><td>18:23</td><td></td><td></td><td>18:51</td><td>19:13</td><td>매일</td></tr><tr><td>716</td><td>KTX-이음</td><td>18:30</td><td></td><td></td><td>18:57</td><td>19:14</td><td>19:27</td><td></td><td></td><td></td><td>20:15</td><td></td><td>매일</td></tr><tr><td>782</td><td>KTX-이음</td><td>19:33</td><td>19:42</td><td>19:52</td><td>20:07</td><td>20:24</td><td></td><td></td><td>20:59</td><td></td><td>21:13</td><td></td><td>토일</td></tr><tr><td>718</td><td>KTX-이음</td><td>21:22</td><td></td><td></td><td>21:49</td><td>22:07</td><td></td><td>22:29</td><td></td><td>22:52</td><td>22:58</td><td></td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>영주</th><th>풍기</th><th>단양</th><th>제천</th><th>봉양</th><th>원주</th><th>서원주</th><th>삼산</th><th>양동</th><th>매곡</th><th>일신</th><th>석불</th><th>지평</th><th>용문</th><th>양평</th><th>덕소</th><th>청량리</th></tr></thead><tbody><tr><td>1662</td><td>무궁화</td><td>05:57</td><td>06:06</td><td>06:18</td><td>06:33</td><td>06:40</td><td>06:59</td><td>07:06</td><td>07:12</td><td>07:18</td><td>07:24</td><td>07:33</td><td>07:38</td><td>07:42</td><td>07:48</td><td>07:56</td><td>08:13</td><td>08:27</td></tr><tr><td>1612</td><td>ITX-마음</td><td>07:27</td><td>07:36</td><td>07:49</td><td>08:07</td><td></td><td>08:31</td><td>08:44</td><td></td><td>08:54</td><td></td><td></td><td></td><td></td><td>09:08</td><td>09:16</td><td>09:34</td><td>09:47</td></tr><tr><td>1602</td><td>ITX-마음</td><td>10:35</td><td>10:46</td><td>11:01</td><td>11:19</td><td></td><td>11:44</td><td>11:52</td><td></td><td>12:00</td><td>12:05</td><td>12:10</td><td></td><td>12:16</td><td>12:22</td><td>12:29</td><td></td><td>12:56</td></tr><tr><td>1614</td><td>ITX-마음</td><td>14:51</td><td>15:00</td><td>15:13</td><td>15:31</td><td></td><td>15:55</td><td>16:04</td><td></td><td>16:14</td><td></td><td></td><td></td><td></td><td>16:28</td><td>16:36</td><td>16:53</td><td>17:06</td></tr><tr><td>1604</td><td>ITX-마음</td><td>18:43</td><td>18:53</td><td>19:07</td><td>19:25</td><td></td><td>19:50</td><td>19:58</td><td></td><td>20:08</td><td></td><td></td><td></td><td></td><td>20:21</td><td>20:29</td><td></td><td>20:56</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 영주 → 도착 : 동해</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>영주</th><th>봉화</th><th>춘양</th><th>임기</th><th>현동</th><th>분천</th><th>양원</th><th>승부</th><th>석포</th><th>철암</th><th>동백산</th><th>도계</th><th>신기</th><th>동해</th></tr></thead><tbody><tr><td>1771</td><td>무궁화</td><td>07:57</td><td>08:13</td><td>08:38</td><td></td><td></td><td>09:01</td><td>09:09</td><td>09:16</td><td>09:26</td><td>09:40</td><td>09:51</td><td>10:08</td><td>10:25</td><td>10:48</td></tr><tr><td>1777</td><td>무궁화</td><td>19:32</td><td>19:50</td><td>20:15</td><td>20:27</td><td>20:34</td><td>20:44</td><td>20:52</td><td>21:00</td><td>21:10</td><td>21:24</td><td>21:35</td><td>21:52</td><td></td><td>22:30</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 영주 → 도착 : 동대구</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>영주</th><th>안동</th><th>의성</th><th>군위</th><th>하양</th><th>동대구</th></tr></thead><tbody><tr><td>1774</td><td>무궁화</td><td>14:00</td><td>14:21</td><td>14:39</td><td>14:56</td><td>15:28</td><td>15:45</td></tr><tr><td>1778</td><td>무궁화</td><td>21:02</td><td>21:23</td><td>21:41</td><td>21:58</td><td>22:30</td><td>22:47</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 영주 → 도착 : 안동-부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>영주</th><th>안동</th><th>의성</th><th>영천</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th><th>비고</th></tr></thead><tbody><tr><td>701</td><td>KTX-이음</td><td>7:19</td><td>7:34</td><td></td><td></td><td>8:19</td><td></td><td>8:40</td><td></td><td></td><td></td><td></td><td>9:24</td><td>매일</td></tr><tr><td>703</td><td>KTX-이음</td><td>8:16</td><td>8:31</td><td>8:44</td><td></td><td>9:22</td><td>9:39</td><td>9:48</td><td></td><td></td><td>10:21</td><td></td><td>10:34</td><td>매일</td></tr><tr><td>705</td><td>KTX-이음</td><td>10:57</td><td>11:12</td><td></td><td></td><td>11:57</td><td></td><td>12:18</td><td></td><td></td><td></td><td></td><td>13:01</td><td>매일</td></tr><tr><td>707</td><td>KTX-이음</td><td>13:11</td><td>13:26</td><td></td><td>13:57</td><td>14:16</td><td></td><td>14:39</td><td></td><td></td><td>15:12</td><td></td><td>15:27</td><td>매일</td></tr><tr><td>709</td><td>KTX-이음</td><td>14:57</td><td>15:11</td><td></td><td></td><td>15:57</td><td></td><td>16:18</td><td></td><td></td><td></td><td></td><td>17:00</td><td>매일</td></tr><tr><td>781</td><td>KTX-이음</td><td>15:31</td><td>15:46</td><td></td><td></td><td>16:31</td><td></td><td>16:52</td><td></td><td></td><td></td><td></td><td>17:35</td><td>토일</td></tr><tr><td>711</td><td>KTX-이음</td><td>16:22</td><td>16:37</td><td></td><td>17:08</td><td>17:27</td><td>17:44</td><td>17:51</td><td></td><td>18:17</td><td>18:27</td><td></td><td>18:41</td><td>매일</td></tr><tr><td>713</td><td>KTX-이음</td><td>18:22</td><td>18:38</td><td>18:50</td><td></td><td>19:25</td><td></td><td>19:46</td><td>19:59</td><td></td><td></td><td>20:25</td><td>20:36</td><td>매일</td></tr><tr><td>715</td><td>KTX-이음</td><td>20:41</td><td>20:56</td><td></td><td>21:27</td><td>21:46</td><td></td><td>22:08</td><td></td><td></td><td>22:40</td><td></td><td>22:54</td><td>매일</td></tr><tr><td>717</td><td>KTX-이음</td><td>23:37</td><td>23:51</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>영주</th><th>안동</th><th>의성</th><th>군위</th><th>영천</th><th>아화</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>08:55</td><td>09:16</td><td>09:34</td><td>09:52</td><td>10:14</td><td>10:26</td><td>10:43</td><td>11:04</td><td>11:13</td><td>11:30</td><td>11:51</td><td>12:02</td><td>12:10</td><td>12:20</td></tr><tr><td>1611</td><td>ITX-마음</td><td>12:53</td><td>13:13</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>1603</td><td>ITX-마음</td><td>17:10</td><td>17:31</td><td>17:49</td><td>18:06</td><td>18:27</td><td>18:38</td><td>18:55</td><td>19:15</td><td>19:23</td><td>19:39</td><td>20:00</td><td>20:10</td><td>20:17</td><td>20:28</td></tr><tr><td>1613</td><td>ITX-마음</td><td>19:56</td><td>20:15</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>영주역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '영주'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">영주역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">영주역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '37060';
            let curName = '영주';
            let altCity = '';
            let altName = '정차';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">영주역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">12℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">영주역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%8C%8C%EB%A6%AC%EB%B0%94%EA%B2%8C%EB%9C%A8+%EA%B2%BD%EB%B6%81%EC%98%81%EC%A3%BC%EC%97%AD%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%98%81%EC%A3%BC%EC%8B%9C+%ED%9C%B4%EC%B2%9C%EB%8F%99+328-3+%ED%8C%8C%EB%A6%AC%EB%B0%94%EA%B2%8C%EB%9C%A8" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">파리바게뜨 경북영주역점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;베이커리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 영주시 휴천동 328-3 파리바게뜨</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%9D%BC%EB%9D%BC%EC%BD%94%EC%8A%A4%ED%8A%B8+%EC%98%81%EC%A3%BC%EC%97%AD%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%98%81%EC%A3%BC%EC%8B%9C+%ED%9C%B4%EC%B2%9C%EB%8F%99+320-19+%EC%98%81%EC%A3%BC%EB%B9%8C%EB%94%A9+2%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">라라코스트 영주역점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;패밀리레스토랑</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 영주시 휴천동 320-19 영주빌딩 2층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%9E%A5%EC%88%98%EC%8B%9D%EB%8B%B9+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%98%81%EC%A3%BC%EC%8B%9C+%ED%9C%B4%EC%B2%9C%EB%8F%99+321-8+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">장수식당</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;백반,가정식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 영주시 휴천동 321-8 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%8D%94%EB%A6%AC%ED%84%B0+%EC%98%81%EC%A3%BC%EC%97%AD%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%98%81%EC%A3%BC%EC%8B%9C+%ED%9C%B4%EC%B2%9C%EB%8F%99+303-19" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">더리터 영주역점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;테이크아웃커피</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 영주시 휴천동 303-19</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%B3%B8%EC%A3%BD+%EC%98%81%EC%A3%BC%EC%97%AD%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%98%81%EC%A3%BC%EC%8B%9C+%ED%9C%B4%EC%B2%9C%EB%8F%99+303-19" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">본죽 영주역점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;죽</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 영주시 휴천동 303-19</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">영주역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">영주역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 영주역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%98%81%EC%A3%BC%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/03/영주역-시간표-KTX-이음-ITX-마음-무궁화호-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="영주역-시간표-KTX-이음-ITX-마음-무궁화호-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-19374" srcset="https://krailroad.co.kr/wp-content/uploads/2026/03/영주역-시간표-KTX-이음-ITX-마음-무궁화호-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/03/영주역-시간표-KTX-이음-ITX-마음-무궁화호-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/03/영주역-시간표-KTX-이음-ITX-마음-무궁화호-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>안동역 기차 시간표 KTX-이음 ITX-마음 무궁화호 중앙선 요금 정차역</title>
		<link>https://krailroad.co.kr/%ec%95%88%eb%8f%99%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a4%91%ec%95%99%ec%84%a0-%ec%9a%94/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Tue, 10 Mar 2026 00:06:55 +0000</pubDate>
				<category><![CDATA[KTX 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[무궁화 시간표]]></category>
		<category><![CDATA[안동역 기차 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=19284</guid>

					<description><![CDATA[안동의 역사와 문화, 그리고 현대적인 철도 인프라가 만나는 안동역 기차 KTX-이음과 ITX-마음, 그리고 무궁화호의 중심역으로서 경북 북부권 교통의 중심 축을 담당하고 있습니다. 1930년 운행을 시작한 이래 안동의 희로애락을 함께해온 이곳은, 이제 도심 속 간이역의 정취를 넘어 수도권과 남부권을 2시간대로 연결하는 철도 역사가 되었는데요. 아래 내용들은 공공데이터 API와 코레일의 최신 운행 정보를 바탕으로 안동역 KTX 시간표와 ... <a title="안동역 기차 시간표 KTX-이음 ITX-마음 무궁화호 중앙선 요금 정차역" class="read-more button" href="https://krailroad.co.kr/%ec%95%88%eb%8f%99%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a4%91%ec%95%99%ec%84%a0-%ec%9a%94/" aria-label="안동역 기차 시간표 KTX-이음 ITX-마음 무궁화호 중앙선 요금 정차역 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">안동의 역사와 문화, 그리고 현대적인 철도 인프라가 만나는 안동역 기차 KTX-이음과 ITX-마음, 그리고 무궁화호의 중심역으로서 경북 북부권 교통의 중심 축을 담당하고 있습니다. 1930년 운행을 시작한 이래 안동의 희로애락을 함께해온 이곳은, 이제 도심 속 간이역의 정취를 넘어 수도권과 남부권을 2시간대로 연결하는 철도 역사가 되었는데요.</p>



<p class="wp-block-paragraph">아래 내용들은 공공데이터 API와 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a>의 최신 운행 정보를 바탕으로 안동역 KTX 시간표와 안동역 ITX-마음, 그리고 동해안과 대구 방면을 잇는 무궁화호 시간표를 정리했습니다. 안동역 예매를 통해 세계문화유산의 도시 안동을 찾는 여행객들과 지역 주민들께 실질적인 이동 정보를 전해드립니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">안동역 기차 1930년 부터 현재까지</h2>



<h3 class="wp-block-heading">80년 세월을 품은 의성의 관문</h3>



<p class="wp-block-paragraph">안동역은 1930년 문을 연 뒤 안동 시내 한복판에서 지역의 경제와 문화를 지탱해 왔습니다. 90여 년간 안동의 관문 역할을 하던 역사는 2020년 중앙선 복선전철화와 함께 지금의 송현동 부지로 옮겨오며 대대적인 변화를 맞이했는데요. 안동역 KTX-이음의 도입은 안동이 가진 전통의 가치에 &#8216;속도&#8217;라는 현대적 편리함을 더하며, 지역 관광 산업이 비약적으로 성장하는 토대가 되었습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">고속화로 가까워진 세계문화유산</h3>



<p class="wp-block-paragraph">서울, 청량리역에서 안동역까지 2시간이면 닿을 수 있게 되면서 안동국제탈춤축제나 하회마을을 찾는 이동이 무척 가까워졌습니다. 과거 반나절이 걸리던 이동 시간이 대폭 줄어들며, 수도권에서 당일치기로 안동의 깊은 멋을 즐기는 문화가 정착되었는데요. 이는 안동이 경북 북부권의 물류와 관광을 아우르는 핵심 지점으로 거듭나는 결정적인 계기가 되었습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">동해와 부전, 서울을 잇는 교통</h3>



<p class="wp-block-paragraph">현재 안동역 기차 ITX-마음과 KTX-이음은 서울 청량리와 부산 <a href="https://krailroad.co.kr/%eb%b6%80%ec%a0%84%ec%97%ad-ktx-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%b2%ad%eb%9f%89%eb%a6%ac%c2%b7%ea%b0%95%eb%a6%89%c2%b7%ec%95%88%eb%8f%99%ed%96%89%ec%86%8d%ec%b4%88-%ed%8f%ac%ed%95%ad-%ec%a4%91/">부전</a>을 잇는 중앙선의 심장부입니다. 최신 시설을 갖춘 고속열차는 장거리 이동의 피로를 덜어주며 안동을 남북으로 잇는 가교 역할을 하고 있으며, 안동역 기차 시간표를 살펴보면 오전부터 늦은 밤까지 배차가 유기적으로 연결되어 있어 비즈니스나 여행 일정에 맞춰 선택하기가 매우 수월합니다.<br><br>또한 안동역에서 <a href="https://krailroad.co.kr/%eb%8f%99%eb%8c%80%ea%b5%ac%ec%97%ad-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%b5%9c%ec%8b%a0-%eb%85%b8%ec%84%a0-%ec%a0%95%eb%b3%b4%ec%99%80/">동대구역</a>이나 동해역, <a href="https://krailroad.co.kr/%ea%b2%bd%ec%a3%bc%ec%97%ad-ktx-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%84%9c%ec%9a%b8-%eb%b6%80%ec%82%b0-%eb%85%b8%ec%84%a0%eb%b3%84-%ec%a0%95%ec%b0%a8%ec%97%ad-%ec%95%88%eb%82%b4/">경주역</a>으로 향하는 무궁화호 노선이 유지되는 이유는 영남권과 강원권을 잇는 실질적인 생활권 보장 때문입니다. 대구의 의료·교육 인프라를 이용하는 수요와 강원도의 수려한 자연경관을 찾는 관광 수요가 맞물려 있는데요. 안동역 무궁화호 시간표는 기차 여행의 낭만을 유지하면서도 지역 간 교류를 돕는 소중한 노선으로 자리 잡고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">하회마을과 병산서원 여행 동선</h3>



<p class="wp-block-paragraph">안동역 기차를 이용해 역에 내리자마자 안동역 주변 버스 노선을 활용하면 안동의 주요 명소에 쉽게 닿을 수 있습니다. 유네스코 세계유산인 하양 하회마을 가는법이나 서원 건축의 백미로 꼽히는 병산서원까지의 연계 교통이 잘 갖춰져 있어 가족, 또는 혼행 여행자들에게도 최적의 환경을 제공하고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>안동역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">안동<br>↓<br>제천</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">702호</span><div class="time-display">6:01</div><div class="arrival-info">6:51 도착</div></td><td><span class="train-detail">718호</span><div class="time-display">21:07</div><div class="arrival-info">21:49 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">안동<br>↓<br>청량리</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">702호</span><div class="time-display">6:01</div><div class="arrival-info">8:11 도착</div></td><td><span class="train-detail">718호</span><div class="time-display">21:07</div><div class="arrival-info">22:58 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">안동<br>↓<br>서울</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">702호</span><div class="time-display">6:01</div><div class="arrival-info">8:31 도착</div></td><td><span class="train-detail">714호</span><div class="time-display">16:43</div><div class="arrival-info">19:13 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">안동<br>↓<br>청량리</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1612호</span><div class="time-display">07:06</div><div class="arrival-info">09:47 도착</div></td><td><span class="train-detail">1604호</span><div class="time-display">18:22</div><div class="arrival-info">20:56 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">안동<br>↓<br>봉화</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1771호</span><div class="time-display">07:28</div><div class="arrival-info">08:13 도착</div></td><td><span class="train-detail">1777호</span><div class="time-display">19:09</div><div class="arrival-info">19:50 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">안동<br>↓<br>동해</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1771호</span><div class="time-display">07:28</div><div class="arrival-info">10:48 도착</div></td><td><span class="train-detail">1777호</span><div class="time-display">19:09</div><div class="arrival-info">22:30 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">안동<br>↓<br>경주</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">701호</span><div class="time-display">7:34</div><div class="arrival-info">8:19 도착</div></td><td><span class="train-detail">715호</span><div class="time-display">20:56</div><div class="arrival-info">21:46 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">안동<br>↓<br>태화강</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">701호</span><div class="time-display">7:34</div><div class="arrival-info">8:40 도착</div></td><td><span class="train-detail">715호</span><div class="time-display">20:56</div><div class="arrival-info">22:08 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">안동<br>↓<br>부전</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">701호</span><div class="time-display">7:34</div><div class="arrival-info">9:24 도착</div></td><td><span class="train-detail">715호</span><div class="time-display">20:56</div><div class="arrival-info">22:54 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">안동<br>↓<br>경주</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">09:16</div><div class="arrival-info">10:43 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">17:31</div><div class="arrival-info">18:55 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">안동<br>↓<br>북울산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">09:16</div><div class="arrival-info">11:04 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">17:31</div><div class="arrival-info">19:15 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">안동<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">09:16</div><div class="arrival-info">12:20 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">17:31</div><div class="arrival-info">20:28 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">안동<br>↓<br>동대구</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1774호</span><div class="time-display">14:21</div><div class="arrival-info">15:45 도착</div></td><td><span class="train-detail">1778호</span><div class="time-display">21:23</div><div class="arrival-info">22:47 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong><strong><strong>안동</strong></strong></strong>역 </strong>KTX-ITX 무궁화호 <strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>경유지</th><th>운임</th><th>일반</th><th>우등</th></tr></thead><tbody><tr><td>중앙K1</td><td>KTX</td><td class="highlight">서울</td><td class="highlight">안동</td><td>기본</td><td>0</td><td>29,300</td><td>35,200</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">안동</td><td>-</td><td>15,400</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">청량리</td><td class="highlight">안동</td><td>-</td><td>21,100</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">청량리</td><td class="highlight">안동</td><td>기본</td><td>0</td><td>27,700</td><td>33,200</td></tr><tr><td>중앙2</td><td>무궁화</td><td class="highlight">동해</td><td class="highlight">안동</td><td>-</td><td>11,500</td><td>0</td><td>0</td></tr><tr><td>중앙2</td><td>무궁화</td><td class="highlight">동백산</td><td class="highlight">안동</td><td>-</td><td>8,100</td><td>0</td><td>0</td></tr><tr><td>중앙2</td><td>무궁화</td><td class="highlight">봉화</td><td class="highlight">안동</td><td>-</td><td>3,200</td><td>0</td><td>0</td></tr><tr><td>중앙2</td><td>무궁화</td><td class="highlight">안동</td><td class="highlight">동대구</td><td>-</td><td>7,800</td><td>0</td><td>0</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">안동</td><td class="highlight">경주</td><td>-</td><td>8,300</td><td>0</td><td>0</td></tr><tr><td>중앙2</td><td>무궁화</td><td class="highlight">안동</td><td class="highlight">경주</td><td>-</td><td>8,300</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">안동</td><td class="highlight">경주</td><td>-</td><td>10,400</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">안동</td><td class="highlight">경주</td><td>기본</td><td>0</td><td>15,200</td><td>18,200</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">안동</td><td class="highlight">부전</td><td>-</td><td>15,100</td><td>0</td><td>0</td></tr><tr><td>중앙2</td><td>무궁화</td><td class="highlight">안동</td><td class="highlight">부전</td><td>-</td><td>15,100</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">안동</td><td class="highlight">부전</td><td>-</td><td>20,500</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">안동</td><td class="highlight">부전</td><td>기본</td><td>0</td><td>27,700</td><td>33,200</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>안동역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <a href="https://krailroad.co.kr/%ec%95%88%eb%8f%99%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a4%91%ec%95%99%ec%84%a0-%ec%9a%94/">안동역 KTX 시간표 바로가기</a><br>✅ <s>안동역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ec%95%88%eb%8f%99%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%a4%91%ec%95%99%ec%84%a0-%ec%9a%94/">안동역 ITX, 무궁화 시간표</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>안동역 <strong><strong>KTX-<strong>ITX 무궁화호 </strong>시간표</strong></strong></strong></h2>



<h3 class="wp-block-heading">출발 : 안동 → 도착 : 청량리-서울</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>안동</th><th>영주</th><th>풍기</th><th>단양</th><th>제천</th><th>원주</th><th>서원주</th><th>양평</th><th>덕소</th><th>상봉</th><th>청량리</th><th>서울</th><th>비고</th></tr></thead><tbody><tr><td>702</td><td>KTX-이음</td><td>6:01</td><td>6:16</td><td>6:25</td><td>6:35</td><td>6:51</td><td>7:08</td><td>7:20</td><td>7:42</td><td></td><td></td><td>8:11</td><td>8:31</td><td>매일</td></tr><tr><td>704</td><td>KTX-이음</td><td>7:55</td><td>8:10</td><td></td><td>8:27</td><td>8:43</td><td>9:00</td><td>9:12</td><td></td><td></td><td></td><td>9:59</td><td>10:19</td><td>매일</td></tr><tr><td>706</td><td>KTX-이음</td><td>10:02</td><td>10:17</td><td></td><td></td><td>10:44</td><td>11:01</td><td>11:12</td><td></td><td></td><td></td><td>11:58</td><td></td><td>매일</td></tr><tr><td>708</td><td>KTX-이음</td><td>12:01</td><td>12:17</td><td>12:26</td><td>12:38</td><td>12:53</td><td>13:11</td><td>13:23</td><td>13:45</td><td></td><td></td><td>14:13</td><td>14:33</td><td>매일</td></tr><tr><td>710</td><td>KTX-이음</td><td>14:03</td><td>14:19</td><td>14:28</td><td>14:39</td><td>14:55</td><td>15:12</td><td></td><td>15:34</td><td></td><td>15:58</td><td>16:04</td><td></td><td>매일</td></tr><tr><td>712</td><td>KTX-이음</td><td>15:20</td><td>15:35</td><td></td><td></td><td>16:03</td><td>16:20</td><td>16:32</td><td></td><td></td><td></td><td>17:21</td><td>17:41</td><td>매일</td></tr><tr><td>714</td><td>KTX-이음</td><td>16:43</td><td>16:59</td><td></td><td>17:15</td><td>17:31</td><td>17:48</td><td>18:01</td><td>18:23</td><td></td><td></td><td>18:51</td><td>19:13</td><td>매일</td></tr><tr><td>716</td><td>KTX-이음</td><td>18:14</td><td>18:30</td><td></td><td></td><td>18:57</td><td>19:14</td><td>19:27</td><td></td><td></td><td></td><td>20:15</td><td></td><td>매일</td></tr><tr><td>782</td><td>KTX-이음</td><td>19:18</td><td>19:33</td><td>19:42</td><td>19:52</td><td>20:07</td><td>20:24</td><td></td><td></td><td>20:59</td><td></td><td>21:13</td><td></td><td>토일</td></tr><tr><td>718</td><td>KTX-이음</td><td>21:07</td><td>21:22</td><td></td><td></td><td>21:49</td><td>22:07</td><td></td><td>22:29</td><td></td><td>22:52</td><td>22:58</td><td></td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>안동</th><th>영주</th><th>풍기</th><th>단양</th><th>제천</th><th>원주</th><th>서원주</th><th>양동</th><th>매곡</th><th>일신</th><th>지평</th><th>용문</th><th>양평</th><th>덕소</th><th>청량리</th></tr></thead><tbody><tr><td>1612</td><td>ITX-마음</td><td>07:06</td><td>07:27</td><td>07:36</td><td>07:49</td><td>08:07</td><td>08:31</td><td>08:44</td><td>08:54</td><td></td><td></td><td></td><td>09:08</td><td>09:16</td><td>09:34</td><td>09:47</td></tr><tr><td>1602</td><td>ITX-마음</td><td>10:13</td><td>10:35</td><td>10:46</td><td>11:01</td><td>11:19</td><td>11:44</td><td>11:52</td><td>12:00</td><td>12:05</td><td>12:10</td><td>12:16</td><td>12:22</td><td>12:29</td><td></td><td>12:56</td></tr><tr><td>1614</td><td>ITX-마음</td><td>14:30</td><td>14:51</td><td>15:00</td><td>15:13</td><td>15:31</td><td>15:55</td><td>16:04</td><td>16:14</td><td></td><td></td><td></td><td>16:28</td><td>16:36</td><td>16:53</td><td>17:06</td></tr><tr><td>1604</td><td>ITX-마음</td><td>18:22</td><td>18:43</td><td>18:53</td><td>19:07</td><td>19:25</td><td>19:50</td><td>19:58</td><td>20:08</td><td></td><td></td><td></td><td>20:21</td><td>20:29</td><td></td><td>20:56</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 안동 → 도착 : 동해</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>안동</th><th>영주</th><th>봉화</th><th>춘양</th><th>임기</th><th>현동</th><th>분천</th><th>양원</th><th>승부</th><th>석포</th><th>철암</th><th>동백산</th><th>도계</th><th>신기</th><th>동해</th></tr></thead><tbody><tr><td>1771</td><td>무궁화</td><td>07:28</td><td>07:57</td><td>08:13</td><td>08:38</td><td></td><td></td><td>09:01</td><td>09:09</td><td>09:16</td><td>09:26</td><td>09:40</td><td>09:51</td><td>10:08</td><td>10:25</td><td>10:48</td></tr><tr><td>1777</td><td>무궁화</td><td>19:09</td><td>19:32</td><td>19:50</td><td>20:15</td><td>20:27</td><td>20:34</td><td>20:44</td><td>20:52</td><td>21:00</td><td>21:10</td><td>21:24</td><td>21:35</td><td>21:52</td><td></td><td>22:30</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 안동 → 도착 : 동대구</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>안동</th><th>의성</th><th>군위</th><th>하양</th><th>동대구</th></tr></thead><tbody><tr><td>1774</td><td>무궁화</td><td>14:21</td><td>14:39</td><td>14:56</td><td>15:28</td><td>15:45</td></tr><tr><td>1778</td><td>무궁화</td><td>21:23</td><td>21:41</td><td>21:58</td><td>22:30</td><td>22:47</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 안동 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>안동</th><th>의성</th><th>영천</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th><th>비고</th></tr></thead><tbody><tr><td>701</td><td>KTX-이음</td><td>7:34</td><td></td><td></td><td>8:19</td><td></td><td>8:40</td><td></td><td></td><td></td><td></td><td>9:24</td><td>매일</td></tr><tr><td>703</td><td>KTX-이음</td><td>8:31</td><td>8:44</td><td></td><td>9:22</td><td>9:39</td><td>9:48</td><td></td><td></td><td>10:21</td><td></td><td>10:34</td><td>매일</td></tr><tr><td>705</td><td>KTX-이음</td><td>11:12</td><td></td><td></td><td>11:57</td><td></td><td>12:18</td><td></td><td></td><td></td><td></td><td>13:01</td><td>매일</td></tr><tr><td>707</td><td>KTX-이음</td><td>13:26</td><td></td><td>13:57</td><td>14:16</td><td></td><td>14:39</td><td></td><td></td><td>15:12</td><td></td><td>15:27</td><td>매일</td></tr><tr><td>709</td><td>KTX-이음</td><td>15:11</td><td></td><td></td><td>15:57</td><td></td><td>16:18</td><td></td><td></td><td></td><td></td><td>17:00</td><td>매일</td></tr><tr><td>781</td><td>KTX-이음</td><td>15:46</td><td></td><td></td><td>16:31</td><td></td><td>16:52</td><td></td><td></td><td></td><td></td><td>17:35</td><td>토일</td></tr><tr><td>711</td><td>KTX-이음</td><td>16:37</td><td></td><td>17:08</td><td>17:27</td><td>17:44</td><td>17:51</td><td></td><td>18:17</td><td>18:27</td><td></td><td>18:41</td><td>매일</td></tr><tr><td>713</td><td>KTX-이음</td><td>18:38</td><td>18:50</td><td></td><td>19:25</td><td></td><td>19:46</td><td>19:59</td><td></td><td></td><td>20:25</td><td>20:36</td><td>매일</td></tr><tr><td>715</td><td>KTX-이음</td><td>20:56</td><td></td><td>21:27</td><td>21:46</td><td></td><td>22:08</td><td></td><td></td><td>22:40</td><td></td><td>22:54</td><td>매일</td></tr><tr><td>717</td><td>KTX-이음</td><td>23:51</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>안동</th><th>의성</th><th>군위</th><th>영천</th><th>아화</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>09:16</td><td>09:34</td><td>09:52</td><td>10:14</td><td>10:26</td><td>10:43</td><td>11:04</td><td>11:13</td><td>11:30</td><td>11:51</td><td>12:02</td><td>12:10</td><td>12:20</td></tr><tr><td>1603</td><td>ITX-마음</td><td>17:31</td><td>17:49</td><td>18:06</td><td>18:27</td><td>18:38</td><td>18:55</td><td>19:15</td><td>19:23</td><td>19:39</td><td>20:00</td><td>20:10</td><td>20:17</td><td>20:28</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>안동역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '안동'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">안동역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">안동역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '37040';
            let curName = '안동';
            let altCity = '';
            let altName = '정차';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">안동역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">13℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">안동역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%A0%84%EC%A3%BC%EB%AA%85%EA%B0%80%EC%BD%A9%EB%82%98%EB%AC%BC%EA%B5%AD%EB%B0%A5+%EC%95%88%EB%8F%99%ED%84%B0%EB%AF%B8%EB%84%90%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%95%88%EB%8F%99%EC%8B%9C+%EC%86%A1%ED%98%84%EB%8F%99+621-3+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">전주명가콩나물국밥 안동터미널점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;국밥</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 안동시 송현동 621-3 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%AC%B5%ED%96%A5+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%95%88%EB%8F%99%EC%8B%9C+%EC%86%A1%ED%98%84%EB%8F%99+564+2%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">묵향</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;소고기구이</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 안동시 송현동 564 2층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%A1%AF%EB%8D%B0%EB%A6%AC%EC%95%84+%EC%95%88%EB%8F%99%ED%84%B0%EB%AF%B8%EB%84%90%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%95%88%EB%8F%99%EC%8B%9C+%EC%86%A1%ED%98%84%EB%8F%99+713-6" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">롯데리아 안동터미널점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">양식&gt;햄버거</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 안동시 송현동 713-6</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%8C%8C%EB%A6%AC%EB%B0%94%EA%B2%8C%EB%9C%A8+%EC%95%88%EB%8F%99%EC%86%A1%ED%98%84%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%95%88%EB%8F%99%EC%8B%9C+%EC%86%A1%ED%98%84%EB%8F%99+514-8" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">파리바게뜨 안동송현점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;베이커리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 안동시 송현동 514-8</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EA%B6%8C%EC%8B%A4%EC%9E%A5%EC%B0%B8%EB%A7%88%EC%B0%B9%EC%8C%80%EA%BD%88%EB%B0%B0%EA%B8%B0+%EC%95%88%EB%8F%99%EB%B3%B8%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%95%88%EB%8F%99%EC%8B%9C+%EC%86%A1%ED%98%84%EB%8F%99+916-5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">권실장참마찹쌀꽈배기 안동본점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;베이커리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 안동시 송현동 916-5</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">안동역 실시간 주차장 요금</h4>
        
                    <div class="parking-list-container">
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 안동역                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">500원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">200원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">10,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 경상북도 안동시 경동로 112-16<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 031-523-2353                        </div>
                    </div>
                            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">안동역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 경상북도 안동시 경동로 112-16</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:031-523-2353" style="color: #0052a4; font-weight: bold; text-decoration: none;">031-523-2353</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%95%88%EB%8F%99%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/03/안동역-기차-KTX-이음-ITX-마음-무궁하호-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="안동역-기차-KTX-이음-ITX-마음-무궁하호-시간표-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-19373" srcset="https://krailroad.co.kr/wp-content/uploads/2026/03/안동역-기차-KTX-이음-ITX-마음-무궁하호-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/03/안동역-기차-KTX-이음-ITX-마음-무궁하호-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/03/안동역-기차-KTX-이음-ITX-마음-무궁하호-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>의성역 KTX-이음 ITX-마음 무궁화호 시간표 동해 서울 동대구 부전 요금 정차역</title>
		<link>https://krailroad.co.kr/%ec%9d%98%ec%84%b1%ec%97%ad-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%8f%99%ed%95%b4-%ec%84%9c%ec%9a%b8-%eb%8f%99%eb%8c%80/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Mon, 09 Mar 2026 05:39:11 +0000</pubDate>
				<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[KTX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[무궁화 시간표]]></category>
		<category><![CDATA[의성역 기차 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=19261</guid>

					<description><![CDATA[중앙선 철도의 주요 길목인 의성역이 KTX-이음과 ITX-마음의 동시 정차로 경북 내륙의 교통 지도를 새롭게 그려나가고 있습니다. 1940년 첫 영업을 시작한 이래 80여 년간 의성의 문을 지켜온 이곳은, 이제 단순한 시골 기차역을 넘어 수도권과 남부권을 2시간대로 잇는 현대적인 철도 지점으로 탈피했는데요. 아래 내용은 공공데이터 API와 코레일의 최신 시간표와 정차역, 주변 맛집, 날씨, 의성역 주변 버스 실시간 ... <a title="의성역 KTX-이음 ITX-마음 무궁화호 시간표 동해 서울 동대구 부전 요금 정차역" class="read-more button" href="https://krailroad.co.kr/%ec%9d%98%ec%84%b1%ec%97%ad-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%8f%99%ed%95%b4-%ec%84%9c%ec%9a%b8-%eb%8f%99%eb%8c%80/" aria-label="의성역 KTX-이음 ITX-마음 무궁화호 시간표 동해 서울 동대구 부전 요금 정차역 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">중앙선 철도의 주요 길목인 의성역이 KTX-이음과 ITX-마음의 동시 정차로 경북 내륙의 교통 지도를 새롭게 그려나가고 있습니다. 1940년 첫 영업을 시작한 이래 80여 년간 의성의 문을 지켜온 이곳은, 이제 단순한 시골 기차역을 넘어 수도권과 남부권을 2시간대로 잇는 현대적인 철도 지점으로 탈피했는데요.</p>



<p class="wp-block-paragraph">아래 내용은 공공데이터 API와 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a>의 최신 시간표와 정차역, 주변 맛집, 날씨, 의성역 주변 버스 실시간 정보, 주차장 위치 등을 바탕으로 의성역 KTX-이음과 의성역 ITX-마음, 그리고 여전히 든든한 발이 되어주는 동대구~동해 무궁화호 시간표 관련 정보를 정리했습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">의성역 1940년 보통역에서 KTX 까지</h2>



<h3 class="wp-block-heading">80년 세월을 품은 의성의 관문</h3>



<p class="wp-block-paragraph">의성역은 1940년 중앙선 개통과 함께 보통역으로 첫발을 내디뎠습니다. 오랜 시간 의성 마늘과 지역 특산물이 전국으로 뻗어 나가는 통로였던 이곳은 2024년 중앙선 복선전철화 사업의 결실로 세련된 신역사로 거듭났는데요. 의성역 KTX-이음의 도입은 의성 역사상 가장 큰 변화로 꼽히며, 과거 무궁화호에 의존하던 이동 환경을 획기적으로 개선했습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">중앙선 고속화로 서울 2시간 생활권</h3>



<p class="wp-block-paragraph">청량리역에서 의성역까지 환승 없이 2시간 초반대에 닿을 수 있게 된 배경에는 중앙선 노선 개량 사업이 있습니다. 이는 지역 소멸 위기를 극복하고 수도권 관광객을 유입시키기 위한 국가적 철도망 계획의 일환인데요. 의성역 KTX 소요 시간의 단축은 비즈니스 방문객뿐만 아니라 주말 나들이객들에게도 의성을 매력적인 목적지로 바꿔놓았습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">ITX-마음과 KTX-이음의 조화</h3>



<p class="wp-block-paragraph">현재 의성역 ITX-마음과 KTX-이음은 청량리 서울 방면과 부전 부산 방면을 잇는 중앙선의 핵심 축입니다. 최신 시설을 갖춘 이 열차들은 기존 일반 열차보다 소음이 적고 승차감이 뛰어나 장거리 이동 시 피로도를 크게 줄여주는데요. 의성역 시간표를 확인해 보면 오전과 오후 시간대 골고루 배차되어 있어 라이프스타일에 맞춘 일정 짜기가 많이 편리해졌습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>의성역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">의성<br>↓<br>안동</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">704호</span><div class="time-display">7:43</div><div class="arrival-info">7:55 도착</div></td><td><span class="train-detail">710호</span><div class="time-display">13:51</div><div class="arrival-info">14:03 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">의성<br>↓<br>제천</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">704호</span><div class="time-display">7:43</div><div class="arrival-info">8:43 도착</div></td><td><span class="train-detail">710호</span><div class="time-display">13:51</div><div class="arrival-info">14:55 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">의성<br>↓<br>청량리</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">704호</span><div class="time-display">7:43</div><div class="arrival-info">9:59 도착</div></td><td><span class="train-detail">710호</span><div class="time-display">13:51</div><div class="arrival-info">16:04 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">의성<br>↓<br>서울</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">704호</span><div class="time-display">7:43</div><div class="arrival-info">10:19 도착</div></td><td><span class="train-detail">704호</span><div class="time-display">7:43</div><div class="arrival-info">10:19 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">의성<br>↓<br>안동</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1602호</span><div class="time-display">09:53</div><div class="arrival-info">10:13 도착</div></td><td><span class="train-detail">1604호</span><div class="time-display">18:04</div><div class="arrival-info">18:22 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1771호</span><div class="time-display">07:10</div><div class="arrival-info">07:28 도착</div></td><td><span class="train-detail">1777호</span><div class="time-display">18:51</div><div class="arrival-info">19:09 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">의성<br>↓<br>청량리</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1602호</span><div class="time-display">09:53</div><div class="arrival-info">12:56 도착</div></td><td><span class="train-detail">1604호</span><div class="time-display">18:04</div><div class="arrival-info">20:56 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">의성<br>↓<br>봉화</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1771호</span><div class="time-display">07:10</div><div class="arrival-info">08:13 도착</div></td><td><span class="train-detail">1777호</span><div class="time-display">18:51</div><div class="arrival-info">19:50 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">의성<br>↓<br>동해</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1771호</span><div class="time-display">07:10</div><div class="arrival-info">10:48 도착</div></td><td><span class="train-detail">1777호</span><div class="time-display">18:51</div><div class="arrival-info">22:30 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">의성<br>↓<br>태화강</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">703호</span><div class="time-display">8:44</div><div class="arrival-info">9:48 도착</div></td><td><span class="train-detail">713호</span><div class="time-display">18:50</div><div class="arrival-info">19:46 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">의성<br>↓<br>부전</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">703호</span><div class="time-display">8:44</div><div class="arrival-info">10:34 도착</div></td><td><span class="train-detail">713호</span><div class="time-display">18:50</div><div class="arrival-info">20:36 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">의성<br>↓<br>경주</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">09:34</div><div class="arrival-info">10:43 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">17:49</div><div class="arrival-info">18:55 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">의성<br>↓<br>북울산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">09:34</div><div class="arrival-info">11:04 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">17:49</div><div class="arrival-info">19:15 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">의성<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">09:34</div><div class="arrival-info">12:20 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">17:49</div><div class="arrival-info">20:28 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">의성<br>↓<br>동대구</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1774호</span><div class="time-display">14:39</div><div class="arrival-info">15:45 도착</div></td><td><span class="train-detail">1778호</span><div class="time-display">21:41</div><div class="arrival-info">22:47 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>의성</strong>역 </strong>KTX-ITX,무궁화호 <strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>경유지</th><th>운임</th><th>일반</th><th>우등</th></tr></thead><tbody><tr><td>중앙K1</td><td>KTX</td><td class="highlight">서울</td><td class="highlight">의성</td><td>기본</td><td>0</td><td>32,900</td><td>39,500</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">의성</td><td>-</td><td>17,300</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">청량리</td><td class="highlight">의성</td><td>-</td><td>23,600</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">청량리</td><td class="highlight">의성</td><td>기본</td><td>0</td><td>31,200</td><td>37,400</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">안동</td><td class="highlight">의성</td><td>-</td><td>2,600</td><td>0</td><td>0</td></tr><tr><td>중앙2</td><td>무궁화</td><td class="highlight">안동</td><td class="highlight">의성</td><td>-</td><td>2,600</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">안동</td><td class="highlight">의성</td><td>-</td><td>4,800</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">안동</td><td class="highlight">의성</td><td>기본</td><td>0</td><td>8,400</td><td>11,400</td></tr><tr><td>중앙2</td><td>무궁화</td><td class="highlight">동해</td><td class="highlight">의성</td><td>-</td><td>13,300</td><td>0</td><td>0</td></tr><tr><td>중앙2</td><td>무궁화</td><td class="highlight">동백산</td><td class="highlight">의성</td><td>-</td><td>9,900</td><td>0</td><td>0</td></tr><tr><td>중앙2</td><td>무궁화</td><td class="highlight">봉화</td><td class="highlight">의성</td><td>-</td><td>5,000</td><td>0</td><td>0</td></tr><tr><td>중앙2</td><td>무궁화</td><td class="highlight">의성</td><td class="highlight">동대구</td><td>-</td><td>6,000</td><td>0</td><td>0</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">안동</td><td class="highlight">경주</td><td>-</td><td>8,300</td><td>0</td><td>0</td></tr><tr><td>중앙2</td><td>무궁화</td><td class="highlight">안동</td><td class="highlight">경주</td><td>-</td><td>8,300</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">안동</td><td class="highlight">경주</td><td>-</td><td>10,400</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">안동</td><td class="highlight">경주</td><td>기본</td><td>0</td><td>15,200</td><td>18,200</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">안동</td><td class="highlight">부전</td><td>-</td><td>15,100</td><td>0</td><td>0</td></tr><tr><td>중앙2</td><td>무궁화</td><td class="highlight">안동</td><td class="highlight">부전</td><td>-</td><td>15,100</td><td>0</td><td>0</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">안동</td><td class="highlight">부전</td><td>-</td><td>20,500</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">안동</td><td class="highlight">부전</td><td>기본</td><td>0</td><td>27,700</td><td>33,200</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>의성역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <a href="https://krailroad.co.kr/%ec%9d%98%ec%84%b1%ec%97%ad-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%8f%99%ed%95%b4-%ec%84%9c%ec%9a%b8-%eb%8f%99%eb%8c%80/">의성역 KTX 시간표 바로가기</a><br>✅ <s>의성역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ec%9d%98%ec%84%b1%ec%97%ad-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%8f%99%ed%95%b4-%ec%84%9c%ec%9a%b8-%eb%8f%99%eb%8c%80/">의성역 ITX, 무궁화 시간표</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>의성역 KTX-<strong>ITX 무궁화호 </strong>시간표</strong></h2>



<h3 class="wp-block-heading">출발 : 의성 → 도착 : 청량리-서울</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>의성</th><th>안동</th><th>영주</th><th>풍기</th><th>단양</th><th>제천</th><th>원주</th><th>서원주</th><th>양평</th><th>상봉</th><th>청량리</th><th>서울</th><th>비고</th></tr></thead><tbody><tr><td>704</td><td>KTX-이음</td><td>7:43</td><td>7:55</td><td>8:10</td><td></td><td>8:27</td><td>8:43</td><td>9:00</td><td>9:12</td><td></td><td></td><td>9:59</td><td>10:19</td><td>매일</td></tr><tr><td>710</td><td>KTX-이음</td><td>13:51</td><td>14:03</td><td>14:19</td><td>14:28</td><td>14:39</td><td>14:55</td><td>15:12</td><td></td><td>15:34</td><td>15:58</td><td>16:04</td><td></td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>의성</th><th>안동</th><th>영주</th><th>풍기</th><th>단양</th><th>제천</th><th>원주</th><th>서원주</th><th>양동</th><th>매곡</th><th>일신</th><th>지평</th><th>용문</th><th>양평</th><th>청량리</th></tr></thead><tbody><tr><td>1602</td><td>ITX-마음</td><td>09:53</td><td>10:13</td><td>10:35</td><td>10:46</td><td>11:01</td><td>11:19</td><td>11:44</td><td>11:52</td><td>12:00</td><td>12:05</td><td>12:10</td><td>12:16</td><td>12:22</td><td>12:29</td><td>12:56</td></tr><tr><td>1604</td><td>ITX-마음</td><td>18:04</td><td>18:22</td><td>18:43</td><td>18:53</td><td>19:07</td><td>19:25</td><td>19:50</td><td>19:58</td><td>20:08</td><td></td><td></td><td></td><td>20:21</td><td>20:29</td><td>20:56</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 의성 → 도착 : 동해</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>의성</th><th>안동</th><th>영주</th><th>봉화</th><th>춘양</th><th>임기</th><th>현동</th><th>분천</th><th>양원</th><th>승부</th><th>석포</th><th>철암</th><th>동백산</th><th>도계</th><th>신기</th><th>동해</th></tr></thead><tbody><tr><td>1771</td><td>무궁화</td><td>07:10</td><td>07:28</td><td>07:57</td><td>08:13</td><td>08:38</td><td></td><td></td><td>09:01</td><td>09:09</td><td>09:16</td><td>09:26</td><td>09:40</td><td>09:51</td><td>10:08</td><td>10:25</td><td>10:48</td></tr><tr><td>1777</td><td>무궁화</td><td>18:51</td><td>19:09</td><td>19:32</td><td>19:50</td><td>20:15</td><td>20:27</td><td>20:34</td><td>20:44</td><td>20:52</td><td>21:00</td><td>21:10</td><td>21:24</td><td>21:35</td><td>21:52</td><td></td><td>22:30</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 의성 → 도착 : 동대구</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>의성</th><th>군위</th><th>하양</th><th>동대구</th></tr></thead><tbody><tr><td>1774</td><td>무궁화</td><td>14:39</td><td>14:56</td><td>15:28</td><td>15:45</td></tr><tr><td>1778</td><td>무궁화</td><td>21:41</td><td>21:58</td><td>22:30</td><td>22:47</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 의성 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>의성</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>신해운대</th><th>센텀</th><th>부전</th><th>비고</th></tr></thead><tbody><tr><td>703</td><td>KTX-이음</td><td>8:44</td><td>9:22</td><td>9:39</td><td>9:48</td><td></td><td>10:21</td><td></td><td>10:34</td><td>매일</td></tr><tr><td>713</td><td>KTX-이음</td><td>18:50</td><td>19:25</td><td></td><td>19:46</td><td>19:59</td><td></td><td>20:25</td><td>20:36</td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>의성</th><th>군위</th><th>영천</th><th>아화</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>09:34</td><td>09:52</td><td>10:14</td><td>10:26</td><td>10:43</td><td>11:04</td><td>11:13</td><td>11:30</td><td>11:51</td><td>12:02</td><td>12:10</td><td>12:20</td></tr><tr><td>1603</td><td>ITX-마음</td><td>17:49</td><td>18:06</td><td>18:27</td><td>18:38</td><td>18:55</td><td>19:15</td><td>19:23</td><td>19:39</td><td>20:00</td><td>20:10</td><td>20:17</td><td>20:28</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>의성역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '의성'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">의성역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">의성역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '37320';
            let curName = '의성';
            let altCity = '';
            let altName = '정차';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">의성역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">11℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">의성역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%9A%A9%EC%A3%BC%EB%B0%A5%EC%83%81+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9D%98%EC%84%B1%EA%B5%B0+%EC%9D%98%EC%84%B1%EC%9D%8D+%ED%9B%84%EC%A3%BD%EB%A6%AC+735-2+%EC%9A%A9%EC%A3%BC%EB%B0%A5%EC%83%81" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">용주밥상</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;백반,가정식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 의성군 의성읍 후죽리 735-2 용주밥상</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%95%A0%EB%A7%A4%EB%8B%AD%EB%B0%9C+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9D%98%EC%84%B1%EA%B5%B0+%EC%9D%98%EC%84%B1%EC%9D%8D+%EB%8F%84%EB%8F%99%EB%A6%AC+967-1+11%EB%B2%88+%ED%95%A0%EB%A7%A4%EB%8B%AD%EB%B0%9C" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">할매닭발</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;닭발</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 의성군 의성읍 도동리 967-1 11번 할매닭발</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%9B%90%EC%A1%B0%EB%8B%AD%EB%B0%9C+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9D%98%EC%84%B1%EA%B5%B0+%EC%9D%98%EC%84%B1%EC%9D%8D+%EB%8F%84%EB%8F%99%EB%A6%AC+967-1" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">원조닭발</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;닭발</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 의성군 의성읍 도동리 967-1</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%8C%8C%EB%A6%AC%EB%B0%94%EA%B2%8C%EB%9C%A8+%EA%B2%BD%EB%B6%81%EC%9D%98%EC%84%B1%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9D%98%EC%84%B1%EA%B5%B0+%EC%9D%98%EC%84%B1%EC%9D%8D+%ED%9B%84%EC%A3%BD%EB%A6%AC+615-2" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">파리바게뜨 경북의성점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;베이커리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 의성군 의성읍 후죽리 615-2</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EA%B9%80%EB%B0%A5%EB%82%98%EB%9D%BC+%EC%9D%98%EC%84%B1%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9D%98%EC%84%B1%EA%B5%B0+%EC%9D%98%EC%84%B1%EC%9D%8D+%ED%9B%84%EC%A3%BD%EB%A6%AC+628-10" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">김밥나라 의성점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;분식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 의성군 의성읍 후죽리 628-10</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">의성역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">의성역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 의성역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%9D%98%EC%84%B1%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/03/의성역-KTX-이음-ITX-마음-무궁화호-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="의성역-KTX-이음-ITX-마음-무궁화호-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-19276" srcset="https://krailroad.co.kr/wp-content/uploads/2026/03/의성역-KTX-이음-ITX-마음-무궁화호-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/03/의성역-KTX-이음-ITX-마음-무궁화호-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/03/의성역-KTX-이음-ITX-마음-무궁화호-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>군위역 열차 시간표 중앙선 ITX-마음 무궁화호 상하행 요금 노선 정차역</title>
		<link>https://krailroad.co.kr/%ea%b5%b0%ec%9c%84%ec%97%ad-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%a4%91%ec%95%99%ec%84%a0-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%83%81%ed%95%98%ed%96%89-%ec%9a%94/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Fri, 06 Mar 2026 02:05:13 +0000</pubDate>
				<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[무궁화 시간표]]></category>
		<category><![CDATA[하양역 기차 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=19237</guid>

					<description><![CDATA[중앙선 군위역 열차는 대구광역시 편입이라는 굵직한 변화 속에 군위역이 경북 내륙의 새로운 철도 중심지로 알려지고 있으며, 그동안 군위에서 대구 도심이나 강원권으로 이동하려면 버스 배차를 기다려야 했던 불편함이 컸지만, 이제는 최신형 ITX-마음 열차와 무궁화호를 타고 동대구와 동해, 그리고 청량리 부전까지 한 번에 연결되는 시대가 열렸습니다. 그래서 이번 글은 코레일의 최신 운행 데이터와 공공데이터 API를 이용하여 군위역 ... <a title="군위역 열차 시간표 중앙선 ITX-마음 무궁화호 상하행 요금 노선 정차역" class="read-more button" href="https://krailroad.co.kr/%ea%b5%b0%ec%9c%84%ec%97%ad-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%a4%91%ec%95%99%ec%84%a0-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%83%81%ed%95%98%ed%96%89-%ec%9a%94/" aria-label="군위역 열차 시간표 중앙선 ITX-마음 무궁화호 상하행 요금 노선 정차역 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">중앙선 군위역 열차는 대구광역시 편입이라는 굵직한 변화 속에 군위역이 경북 내륙의 새로운 철도 중심지로 알려지고 있으며, 그동안 군위에서 대구 도심이나 강원권으로 이동하려면 버스 배차를 기다려야 했던 불편함이 컸지만, 이제는 최신형 ITX-마음 열차와 무궁화호를 타고 동대구와 동해, 그리고 청량리 부전까지 한 번에 연결되는 시대가 열렸습니다.</p>



<p class="wp-block-paragraph">그래서 이번 글은 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a>의 최신 운행 데이터와 공공데이터 API를 이용하여 군위역 ITX-마음 시간표(청량리~부전)와 동대구~동해 무궁화호 시간표를 정리했습니다. 군위역을 이용하여 수도권 및 강원권으로 열차를 이용하는 분들에게 군위역 열차 시간표, 정차역, 노선별 요금, 종별 요금, 실시간 날씨, 주변 맛집, 주차장등 관련된 자료를 손쉽게 확인할 수 있도록 준비하였습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">군위역 열차 ITX-마음,무궁화호</h2>



<h3 class="wp-block-heading">중앙선 ITX-마음 &amp; 동해행 노선</h3>



<p class="wp-block-paragraph">군위역에서 가장 눈에 띄는 변화는 중앙선 노선에 투입된 군위역 ITX-마음입니다. 이 열차는 청량리역에서 군위역을 거쳐 부전역까지 운행하며 수도권과 영남권을 빠르게 연결하는데요. 기존 일반 열차보다 ITX-마음은 쾌적한 시설을 갖추고 있어 서울이나 안동, 부산 방면으로 장거리 이동을 하는 분들에게 더할 나위 없는 열차가 되고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">군위역 열차 동대구에서 동해까지</h3>



<p class="wp-block-paragraph">반면 대구 도심이나 강원도 해변으로 향하는 분들은 군위역 무궁화호를 이용하게 됩니다. 동대구역에서 동해역까지 운행하는 이 노선은 영천, 경주를 지나 태백산맥의 절경을 감상하며 동해안까지 이어지는 것이 특징인데요. 동대구~동해 무궁화호 시간표는 대구 시내로 출퇴근하는 주민들이나 바다 여행을 떠나는 분들에게 여전히 든든한 이동 수단이 되어주고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">통합신공항과 대구 편입과 미래</h3>



<p class="wp-block-paragraph">대구광역시 군위군으로 새롭게 출발하며 군위역의 지리적 위상은 이전과 확연히 달라졌습니다. 특히 향후 대구경북 통합신공항이 들어서면 군위역은 공항과 철도를 잇는 핵심 연결점이 될 전망인데요. 앞으로 군위역 KTX-이음 정차까지 현실화된다면, 군위는 명실상부한 남부권 교통의 요충지로서 비즈니스 수요와 관광객이 모여드는 활력 넘치는 장소가 될 것입니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>군위역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">군위<br>↓<br>안동</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1602호</span><div class="time-display">09:30</div><div class="arrival-info">10:13 도착</div></td><td><span class="train-detail">1604호</span><div class="time-display">17:41</div><div class="arrival-info">18:22 도착</div></td></tr><tr><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1771호</span><div class="time-display">06:53</div><div class="arrival-info">07:28 도착</div></td><td><span class="train-detail">1777호</span><div class="time-display">18:34</div><div class="arrival-info">19:09 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">군위<br>↓<br>청량리</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1602호</span><div class="time-display">09:30</div><div class="arrival-info">12:56 도착</div></td><td><span class="train-detail">1604호</span><div class="time-display">17:41</div><div class="arrival-info">20:56 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">군위<br>↓<br>봉화</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1771호</span><div class="time-display">06:53</div><div class="arrival-info">08:13 도착</div></td><td><span class="train-detail">1777호</span><div class="time-display">18:34</div><div class="arrival-info">19:50 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">군위<br>↓<br>동해</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1771호</span><div class="time-display">06:53</div><div class="arrival-info">10:48 도착</div></td><td><span class="train-detail">1777호</span><div class="time-display">18:34</div><div class="arrival-info">22:30 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">군위<br>↓<br>경주</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">09:52</div><div class="arrival-info">10:43 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">18:06</div><div class="arrival-info">18:55 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">군위<br>↓<br>북울산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">09:52</div><div class="arrival-info">11:04 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">18:06</div><div class="arrival-info">19:15 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">군위<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">09:52</div><div class="arrival-info">12:20 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">18:06</div><div class="arrival-info">20:28 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">군위<br>↓<br>동대구</td><td><span class="type-label type-mu">무궁화</span></td><td><span class="train-detail">1774호</span><div class="time-display">14:56</div><div class="arrival-info">15:45 도착</div></td><td><span class="train-detail">1778호</span><div class="time-display">21:58</div><div class="arrival-info">22:47 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>군위</strong>역 </strong>무궁화호 <strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>운임</th></tr></thead><tbody><tr><td>중앙1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">군위</td><td>18,800</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">청량리</td><td class="highlight">군위</td><td>25,800</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">안동</td><td class="highlight">군위</td><td>3,300</td></tr><tr><td>중앙2</td><td>무궁화</td><td class="highlight">안동</td><td class="highlight">군위</td><td>3,300</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">안동</td><td class="highlight">군위</td><td>4,800</td></tr><tr><td>중앙2</td><td>무궁화</td><td class="highlight">동해</td><td class="highlight">군위</td><td>14,800</td></tr><tr><td>중앙2</td><td>무궁화</td><td class="highlight">동백산</td><td class="highlight">군위</td><td>11,400</td></tr><tr><td>중앙2</td><td>무궁화</td><td class="highlight">봉화</td><td class="highlight">군위</td><td>6,500</td></tr><tr><td>중앙2</td><td>무궁화</td><td class="highlight">군위</td><td class="highlight">동대구</td><td>4,000</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>군위역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <s>군위역 KTX 노선 없음</s><br>✅ <s>군위역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ea%b5%b0%ec%9c%84%ec%97%ad-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%a4%91%ec%95%99%ec%84%a0-itx-%eb%a7%88%ec%9d%8c-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8-%ec%83%81%ed%95%98%ed%96%89-%ec%9a%94/">군위역 ITX, 무궁화 시간표</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>군위역 <strong>ITX-마음 무궁화호 </strong>시간표</strong></h2>



<h3 class="wp-block-heading">출발 : 군위 → 도착 : 청량리</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>군위</th><th>의성</th><th>안동</th><th>영주</th><th>풍기</th><th>단양</th><th>제천</th><th>원주</th><th>서원주</th><th>양동</th><th>매곡</th><th>일신</th><th>지평</th><th>용문</th><th>양평</th><th>청량리</th></tr></thead><tbody><tr><td>1602</td><td>ITX-마음</td><td>09:30</td><td>09:53</td><td>10:13</td><td>10:35</td><td>10:46</td><td>11:01</td><td>11:19</td><td>11:44</td><td>11:52</td><td>12:00</td><td>12:05</td><td>12:10</td><td>12:16</td><td>12:22</td><td>12:29</td><td>12:56</td></tr><tr><td>1604</td><td>ITX-마음</td><td>17:41</td><td>18:04</td><td>18:22</td><td>18:43</td><td>18:53</td><td>19:07</td><td>19:25</td><td>19:50</td><td>19:58</td><td>20:08</td><td></td><td></td><td></td><td>20:21</td><td>20:29</td><td>20:56</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 군위 → 도착 : 동해</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>군위</th><th>의성</th><th>안동</th><th>영주</th><th>봉화</th><th>춘양</th><th>임기</th><th>현동</th><th>분천</th><th>양원</th><th>승부</th><th>석포</th><th>철암</th><th>동백산</th><th>도계</th><th>신기</th><th>동해</th></tr></thead><tbody><tr><td>1771</td><td>무궁화</td><td>06:53</td><td>07:10</td><td>07:28</td><td>07:57</td><td>08:13</td><td>08:38</td><td></td><td></td><td>09:01</td><td>09:09</td><td>09:16</td><td>09:26</td><td>09:40</td><td>09:51</td><td>10:08</td><td>10:25</td><td>10:48</td></tr><tr><td>1777</td><td>무궁화</td><td>18:34</td><td>18:51</td><td>19:09</td><td>19:32</td><td>19:50</td><td>20:15</td><td>20:27</td><td>20:34</td><td>20:44</td><td>20:52</td><td>21:00</td><td>21:10</td><td>21:24</td><td>21:35</td><td>21:52</td><td></td><td>22:30</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 군위 → 도착 : 동대구</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>하양</th><th>동대구</th></tr></thead><tbody><tr><td>1774</td><td>무궁화</td><td>15:28</td><td>15:45</td></tr><tr><td>1778</td><td>무궁화</td><td>22:30</td><td>22:47</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 군위 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>군위</th><th>영천</th><th>아화</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>09:52</td><td>10:14</td><td>10:26</td><td>10:43</td><td>11:04</td><td>11:13</td><td>11:30</td><td>11:51</td><td>12:02</td><td>12:10</td><td>12:20</td></tr><tr><td>1603</td><td>ITX-마음</td><td>18:06</td><td>18:27</td><td>18:38</td><td>18:55</td><td>19:15</td><td>19:23</td><td>19:39</td><td>20:00</td><td>20:10</td><td>20:17</td><td>20:28</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>군위역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '군위'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">군위역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">군위역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '';
            let curName = '군위';
            let altCity = '';
            let altName = '정차';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">군위역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">12℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">군위역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%8F%99%EB%B0%B1+%ED%9D%91%EB%8F%BC%EC%A7%80+%EB%8C%80%EA%B5%AC%EB%B3%B8%EC%A0%90+%EB%8C%80%EA%B5%AC%EA%B4%91%EC%97%AD%EC%8B%9C+%EA%B5%B0%EC%9C%84%EA%B5%B0+%EC%82%B0%EC%84%B1%EB%A9%B4+%ED%99%94%EB%B3%B8%EB%A6%AC+823-3+%EB%8F%99%EB%B0%B1" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">동백 흑돼지 대구본점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;육류,고기요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">대구광역시 군위군 산성면 화본리 823-3 동백</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%A7%8C%EC%9E%AC%EB%8B%B9+%EB%8C%80%EA%B5%AC%EA%B4%91%EC%97%AD%EC%8B%9C+%EA%B5%B0%EC%9C%84%EA%B5%B0+%EC%82%B0%EC%84%B1%EB%A9%B4+%ED%99%94%EB%B3%B8%EB%A6%AC+820-1+%EB%A7%8C%EC%9E%AC%EB%8B%B9" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">만재당</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;카페</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">대구광역시 군위군 산성면 화본리 820-1 만재당</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%B9%B4%ED%8E%98%EB%8C%90%EB%8C%90+%EB%8C%80%EA%B5%AC%EA%B4%91%EC%97%AD%EC%8B%9C+%EA%B5%B0%EC%9C%84%EA%B5%B0+%EC%82%BC%EA%B5%AD%EC%9C%A0%EC%82%AC%EB%A9%B4+%ED%95%99%EC%84%B1%EB%A6%AC+402-8" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">카페댐댐</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;카페,디저트</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">대구광역시 군위군 삼국유사면 학성리 402-8</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EA%B5%B0%EC%9C%84%EC%B6%95%ED%98%91+%EC%B6%95%EC%82%B0%EB%AC%BC%ED%94%84%EB%9D%BC%EC%9E%90+%EB%8C%80%EA%B5%AC%EA%B4%91%EC%97%AD%EC%8B%9C+%EA%B5%B0%EC%9C%84%EA%B5%B0+%EA%B5%B0%EC%9C%84%EC%9D%8D+%EC%84%9C%EB%B6%80%EB%A6%AC+154-17" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">군위축협 축산물프라자</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;육류,고기요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">대구광역시 군위군 군위읍 서부리 154-17</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%8A%A4%EB%A7%88%EC%9D%BC%EB%AA%85%ED%92%88%EC%B0%B9%EC%8C%80%EA%BD%88%EB%B0%B0%EA%B8%B0+%EB%8C%80%EA%B5%AC%EA%B4%91%EC%97%AD%EC%8B%9C+%EA%B5%B0%EC%9C%84%EA%B5%B0+%EC%82%B0%EC%84%B1%EB%A9%B4+%ED%99%94%EB%B3%B8%EB%A6%AC+823-3" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">스마일명품찹쌀꽈배기</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;베이커리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">대구광역시 군위군 산성면 화본리 823-3</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">군위역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">군위역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 군위역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EA%B5%B0%EC%9C%84%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/03/군위역-열차-ITX-마음-무궁화호-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="군위역-열차-ITX-마음-무궁화호-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-19258" srcset="https://krailroad.co.kr/wp-content/uploads/2026/03/군위역-열차-ITX-마음-무궁화호-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/03/군위역-열차-ITX-마음-무궁화호-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/03/군위역-열차-ITX-마음-무궁화호-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>영천역 기차 시간표 KTX-이음 ITX-마음 부전 안동 청량리 서울행 중앙선 요금 정차역</title>
		<link>https://krailroad.co.kr/%ec%98%81%ec%b2%9c%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%b6%80%ec%a0%84-%ec%95%88%eb%8f%99-%ec%b2%ad%eb%9f%89%eb%a6%ac-%ec%84%9c/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Thu, 05 Mar 2026 06:13:46 +0000</pubDate>
				<category><![CDATA[KTX 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[영천역 기차 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=19181</guid>

					<description><![CDATA[그동안 대구까지 나가서 기차를 갈아타야 했던 영천 시민들과 방문객들에게 영천역 기차 KTX-이음과 ITX-마음의 동시 정차는 일상의 속도를 바꾸는 커다란 소식입니다. 이제는 영천에서 서울 청량리까지, 혹은 안동과 경주를 잇는 노선을 환승의 번거로움 없이 곧장 이용할 수 있게 된 것인데요. 이번 포스팅은 코레일의 최신 운행 데이터와 현장 상황을 대조하여 영천역 KTX 시간표와 새롭게 투입된 영천역 KTX-이음, ITX-마음 ... <a title="영천역 기차 시간표 KTX-이음 ITX-마음 부전 안동 청량리 서울행 중앙선 요금 정차역" class="read-more button" href="https://krailroad.co.kr/%ec%98%81%ec%b2%9c%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%b6%80%ec%a0%84-%ec%95%88%eb%8f%99-%ec%b2%ad%eb%9f%89%eb%a6%ac-%ec%84%9c/" aria-label="영천역 기차 시간표 KTX-이음 ITX-마음 부전 안동 청량리 서울행 중앙선 요금 정차역 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">그동안 대구까지 나가서 기차를 갈아타야 했던 영천 시민들과 방문객들에게 영천역 기차 KTX-이음과 ITX-마음의 동시 정차는 일상의 속도를 바꾸는 커다란 소식입니다. 이제는 영천에서 서울 청량리까지, 혹은 안동과 경주를 잇는 노선을 환승의 번거로움 없이 곧장 이용할 수 있게 된 것인데요.</p>



<p class="wp-block-paragraph">이번 포스팅은 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a>의 최신 운행 데이터와 현장 상황을 대조하여 영천역 KTX 시간표와 새롭게 투입된 영천역 KTX-이음, ITX-마음 이용 정보를 담았습니다. 영천역 기차 예매를 서두르는 분들이나 서울, 청량리역에서 영천역, 부전, 북울산역까지의 직통 노선 시간표와 정차역, 날씨, 주변 맛집, 주차장 요금등을 미리 확인하시고 이용하실 수 있게 정보를 작성하였습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">영천역 기차 KTX-ITX 중앙선</h2>



<h3 class="wp-block-heading">서울, 청량리, 부전에서 영천</h3>



<p class="wp-block-paragraph">중앙선 전철 사업의 결실로 영천의 철도 환경이 몰라보게 쾌적해졌으며, 청량리역에서 영천역 노선을 이용하면 수도권 진입이 한결 수월해지며, 영천역 KTX 소요 시간 역시 일반 열차 대비 압도적으로 단축되었는데요. 덕분에 영천 시내권은 물론이고 금호나 하양 등 인근 지역에서도 굳이 멀리 돌아갈 필요 없이 영천역을 중심으로 한 생활권이 형성되고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">ITX-마음의 도입과 노선</h3>



<p class="wp-block-paragraph">무궁화호의 빈자리를 채우는 영천역 기차 ITX-마음은 깨끗한 시설과 정시성으로 이용객들의 만족도가 높으며, KTX-이음과 함께 상호 보완적인 노선을 형성하며 영천역에서 청량리 서울 방면이나 영천역에서 경주, 북울산, 태화강, 부전으로 향하는 길을 더욱 넓혀주었는데요. 역 광장에 배치된 버스 노선들을 활용하면 처음 방문하는 분들도 시내 곳곳으로 어렵지 않게 이동할 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">첨단소재단지와 경마공원</h3>



<p class="wp-block-paragraph">영천역 인근의 첨단부품소재산업단지나 채신공단으로 출근하는 분들에게 기차는 정체 걱정 없이 제시간에 도착할 수 있는 가장 확실한 방법으로, 여기에 더해 조만간 들어설 영천 경마공원(렛츠런파크 영천)과의 연결성도 기대를 모으고 있어, 비즈니스 목적뿐만 아니라 주말 나들이객들에게도 영천역은 매력적인 지점이 될 전망입니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>영천역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">영천<br>↓<br>안동</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">704호</span><div class="time-display">7:22</div><div class="arrival-info">7:55 도착</div></td><td><span class="train-detail">714호</span><div class="time-display">16:12</div><div class="arrival-info">16:43 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">영천<br>↓<br>제천</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">704호</span><div class="time-display">7:22</div><div class="arrival-info">8:43 도착</div></td><td><span class="train-detail">714호</span><div class="time-display">16:12</div><div class="arrival-info">17:31 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">영천<br>↓<br>청량리</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">704호</span><div class="time-display">7:22</div><div class="arrival-info">9:59 도착</div></td><td><span class="train-detail">714호</span><div class="time-display">16:12</div><div class="arrival-info">18:51 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">영천<br>↓<br>서울</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">704호</span><div class="time-display">7:22</div><div class="arrival-info">10:19 도착</div></td><td><span class="train-detail">714호</span><div class="time-display">16:12</div><div class="arrival-info">19:13 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">영천<br>↓<br>안동</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1602호</span><div class="time-display">09:08</div><div class="arrival-info">10:13 도착</div></td><td><span class="train-detail">1604호</span><div class="time-display">17:20</div><div class="arrival-info">18:22 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">영천<br>↓<br>제천</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1602호</span><div class="time-display">09:08</div><div class="arrival-info">11:19 도착</div></td><td><span class="train-detail">1604호</span><div class="time-display">17:20</div><div class="arrival-info">19:25 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">영천<br>↓<br>청량리</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1602호</span><div class="time-display">09:08</div><div class="arrival-info">12:56 도착</div></td><td><span class="train-detail">1604호</span><div class="time-display">17:20</div><div class="arrival-info">20:56 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">영천<br>↓<br>태화강</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">707호</span><div class="time-display">13:57</div><div class="arrival-info">14:39 도착</div></td><td><span class="train-detail">715호</span><div class="time-display">21:27</div><div class="arrival-info">22:08 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">영천<br>↓<br>부전</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">707호</span><div class="time-display">13:57</div><div class="arrival-info">15:27 도착</div></td><td><span class="train-detail">715호</span><div class="time-display">21:27</div><div class="arrival-info">22:54 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">영천<br>↓<br>북울산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">10:14</div><div class="arrival-info">11:04 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">18:27</div><div class="arrival-info">19:15 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">영천<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">10:14</div><div class="arrival-info">12:20 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">18:27</div><div class="arrival-info">20:28 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>영천</strong>역 </strong>KTX-ITX-마음 <strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>경유지</th><th>운임</th><th>일반</th><th>우등</th></tr></thead><tbody><tr><td>중앙K1</td><td>KTX</td><td class="highlight">서울</td><td class="highlight">영천</td><td>기본</td><td>0</td><td>40,200</td><td>48,200</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">청량리</td><td class="highlight">영천</td><td>-</td><td>28,600</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">청량리</td><td class="highlight">영천</td><td>기본</td><td>0</td><td>38,600</td><td>46,300</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">제천</td><td class="highlight">영천</td><td>-</td><td>15,900</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">제천</td><td class="highlight">영천</td><td>기본</td><td>0</td><td>23,200</td><td>27,800</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">안동</td><td class="highlight">영천</td><td>-</td><td>7,500</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">안동</td><td class="highlight">영천</td><td>기본</td><td>0</td><td>10,900</td><td>13,900</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">영천</td><td class="highlight">북울산</td><td>-</td><td>6,100</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">영천</td><td class="highlight">북울산</td><td>기본</td><td>0</td><td>8,900</td><td>11,900</td></tr><tr><td>중앙A</td><td>ITX</td><td class="highlight">영천</td><td class="highlight">부전</td><td>-</td><td>13,100</td><td>0</td><td>0</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">영천</td><td class="highlight">부전</td><td>기본</td><td>0</td><td>16,800</td><td>20,200</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>영천역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <a href="https://krailroad.co.kr/%ec%98%81%ec%b2%9c%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%b6%80%ec%a0%84-%ec%95%88%eb%8f%99-%ec%b2%ad%eb%9f%89%eb%a6%ac-%ec%84%9c/">영천역 KTX 시간표 바로가기</a><br>✅ <s>영천역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ec%98%81%ec%b2%9c%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%b6%80%ec%a0%84-%ec%95%88%eb%8f%99-%ec%b2%ad%eb%9f%89%eb%a6%ac-%ec%84%9c/">영천역 ITX 시간표 바로가기</a><br>✅ <s>영천역 누리로 노선 없음</s></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>영천역 <strong>KTX-ITX-마음 </strong>시간표</strong></h2>



<h3 class="wp-block-heading">출발 : 영천 → 도착 : 청량리-서울</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>영천</th><th>의성</th><th>안동</th><th>영주</th><th>풍기</th><th>단양</th><th>제천</th><th>원주</th><th>서원주</th><th>양평</th><th>청량리</th><th>서울</th><th>비고</th></tr></thead><tbody><tr><td>704</td><td>KTX-이음</td><td>7:22</td><td>7:43</td><td>7:55</td><td>8:10</td><td></td><td>8:27</td><td>8:43</td><td>9:00</td><td>9:12</td><td></td><td>9:59</td><td>10:19</td><td>매일</td></tr><tr><td>708</td><td>KTX-이음</td><td>11:30</td><td></td><td>12:01</td><td>12:17</td><td>12:26</td><td>12:38</td><td>12:53</td><td>13:11</td><td>13:23</td><td>13:45</td><td>14:13</td><td>14:33</td><td>매일</td></tr><tr><td>714</td><td>KTX-이음</td><td>16:12</td><td></td><td>16:43</td><td>16:59</td><td></td><td>17:15</td><td>17:31</td><td>17:48</td><td>18:01</td><td>18:23</td><td>18:51</td><td>19:13</td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>영천</th><th>군위</th><th>의성</th><th>안동</th><th>영주</th><th>풍기</th><th>단양</th><th>제천</th><th>원주</th><th>서원주</th><th>양동</th><th>매곡</th><th>일신</th><th>지평</th><th>용문</th><th>양평</th><th>청량리</th></tr></thead><tbody><tr><td>1602</td><td>ITX-마음</td><td>09:08</td><td>09:30</td><td>09:53</td><td>10:13</td><td>10:35</td><td>10:46</td><td>11:01</td><td>11:19</td><td>11:44</td><td>11:52</td><td>12:00</td><td>12:05</td><td>12:10</td><td>12:16</td><td>12:22</td><td>12:29</td><td>12:56</td></tr><tr><td>1604</td><td>ITX-마음</td><td>17:20</td><td>17:41</td><td>18:04</td><td>18:22</td><td>18:43</td><td>18:53</td><td>19:07</td><td>19:25</td><td>19:50</td><td>19:58</td><td>20:08</td><td></td><td></td><td></td><td>20:21</td><td>20:29</td><td>20:56</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 영천 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>영천</th><th>경주</th><th>북울산</th><th>태화강</th><th>기장</th><th>신해운대</th><th>부전</th><th>비고</th></tr></thead><tbody><tr><td>707</td><td>KTX-이음</td><td>13:57</td><td>14:16</td><td></td><td>14:39</td><td></td><td>15:12</td><td>15:27</td><td>매일</td></tr><tr><td>711</td><td>KTX-이음</td><td>17:08</td><td>17:27</td><td>17:44</td><td>17:51</td><td>18:17</td><td>18:27</td><td>18:41</td><td>매일</td></tr><tr><td>715</td><td>KTX-이음</td><td>21:27</td><td>21:46</td><td></td><td>22:08</td><td></td><td>22:40</td><td>22:54</td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>영천</th><th>아화</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>10:14</td><td>10:26</td><td>10:43</td><td>11:04</td><td>11:13</td><td>11:30</td><td>11:51</td><td>12:02</td><td>12:10</td><td>12:20</td></tr><tr><td>1603</td><td>ITX-마음</td><td>18:27</td><td>18:38</td><td>18:55</td><td>19:15</td><td>19:23</td><td>19:39</td><td>20:00</td><td>20:10</td><td>20:17</td><td>20:28</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>영천역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '영천'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">영천역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">영천역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '37070';
            let curName = '영천';
            let altCity = '';
            let altName = '정차';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">영천역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">12℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">영천역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%8F%AC%ED%95%AD%ED%95%A0%EB%A7%A4%EC%A7%91+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%98%81%EC%B2%9C%EC%8B%9C+%EC%99%84%EC%82%B0%EB%8F%99+982-31" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">포항할매집</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;곰탕,설렁탕</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 영천시 완산동 982-31</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%9F%88%EB%B9%A0%EB%94%B0%EB%B2%A0%EC%9D%B4%EC%BB%A4%EB%A6%AC+%EC%98%81%EC%B2%9C%EC%99%84%EC%82%B0%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%98%81%EC%B2%9C%EC%8B%9C+%EC%99%84%EC%82%B0%EB%8F%99+1402+1%2C2%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">쟈빠따베이커리 영천완산점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;베이커리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 영천시 완산동 1402 1,2층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%95%9C%EC%9E%90%EB%A6%AC+%EA%B9%80%EB%B0%A5+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%98%81%EC%B2%9C%EC%8B%9C+%EC%99%84%EC%82%B0%EB%8F%99+930-16" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">한자리 김밥</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;한식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 영천시 완산동 930-16</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%B2%AD%EC%B6%98%EC%A7%9C%EC%9E%A5+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%98%81%EC%B2%9C%EC%8B%9C+%EC%99%84%EC%82%B0%EB%8F%99+926-24+%EC%B2%AD%EC%B6%98%EC%A7%9C%EC%9E%A5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">청춘짜장</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">중식&gt;중식당</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 영천시 완산동 926-24 청춘짜장</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%83%A4%EB%B8%8C%EB%A7%88%EB%8B%88%EC%95%84+%EC%98%81%EC%B2%9C%EB%A1%AF%EB%8D%B0%EC%8B%9C%EB%84%A4%EB%A7%88%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%98%81%EC%B2%9C%EC%8B%9C+%EC%99%84%EC%82%B0%EB%8F%99+1402+1076%ED%98%B8%2C+1013%ED%98%B8%2C+1014%ED%98%B8%2C+1015%ED%98%B8%2C+1016%ED%98%B8%2C+1017%ED%98%B8" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">샤브마니아 영천롯데시네마점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;일식&gt;샤브샤브</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 영천시 완산동 1402 1076호, 1013호, 1014호, 1015호, 1016호, 1017호</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">영천역 실시간 주차장 요금</h4>
        
                    <div class="parking-list-container">
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 영천역                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">500원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">100원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">5,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 경상북도 영천시 금완로 98<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 053-719-0270                        </div>
                    </div>
                            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">영천역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 경상북도 영천시 금완로 98</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:053-719-0270" style="color: #0052a4; font-weight: bold; text-decoration: none;">053-719-0270</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%98%81%EC%B2%9C%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/03/영천역-KTX-이음-ITX-마음-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="영천역-기차-KTX-이음-ITX-마음-시간표-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-19200" srcset="https://krailroad.co.kr/wp-content/uploads/2026/03/영천역-KTX-이음-ITX-마음-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/03/영천역-KTX-이음-ITX-마음-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/03/영천역-KTX-이음-ITX-마음-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>아화역 기차 시간표 상하행 ITX-마음 요금 중앙선 대구 청량리 부전 정차역</title>
		<link>https://krailroad.co.kr/%ec%95%84%ed%99%94%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%83%81%ed%95%98%ed%96%89-itx-%eb%a7%88%ec%9d%8c-%ec%9a%94%ea%b8%88-%ec%a4%91%ec%95%99%ec%84%a0-%eb%8c%80%ea%b5%ac/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Wed, 04 Mar 2026 00:35:22 +0000</pubDate>
				<category><![CDATA[KTX 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[정동진역]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=19071</guid>

					<description><![CDATA[과거와 현재가 공존하는 경주 외곽의 작은 기차역, 아화역 기차는 단순한 시골 간이역의 풍경을 넘어 현대적인 ITX-마음 열차가 정차하는 세련된 교통 거점으로 탈피했습니다. 중앙선 ITX-마음의 도입과 함께 경북 내륙과 대도시를 잇는 핵심적인 역할을 수행하며, 새로운 신역사 아화역에서 경주의 숨은 매력을 발견하게 해주는 소중한 통로가 되어주고 있습니다. 이번 자료는 공공데이터의 최신 철도 운행 정보와 코레일 공식 자료를 ... <a title="아화역 기차 시간표 상하행 ITX-마음 요금 중앙선 대구 청량리 부전 정차역" class="read-more button" href="https://krailroad.co.kr/%ec%95%84%ed%99%94%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%83%81%ed%95%98%ed%96%89-itx-%eb%a7%88%ec%9d%8c-%ec%9a%94%ea%b8%88-%ec%a4%91%ec%95%99%ec%84%a0-%eb%8c%80%ea%b5%ac/" aria-label="아화역 기차 시간표 상하행 ITX-마음 요금 중앙선 대구 청량리 부전 정차역 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">과거와 현재가 공존하는 경주 외곽의 작은 기차역, 아화역 기차는 단순한 시골 간이역의 풍경을 넘어 현대적인 ITX-마음 열차가 정차하는 세련된 교통 거점으로 탈피했습니다. 중앙선 ITX-마음의 도입과 함께 경북 내륙과 대도시를 잇는 핵심적인 역할을 수행하며, 새로운 신역사 아화역에서 경주의 숨은 매력을 발견하게 해주는 소중한 통로가 되어주고 있습니다.</p>



<p class="wp-block-paragraph">이번 자료는 공공데이터의 최신 철도 운행 정보와 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a> 공식 자료를 분석하여 아화역 기차 시간표와 이용자들을 위한 아화역 주차장, 연계 교통 정보를 정리하였으며, 경주 아화역의 새로운 변화를 통해 효율적인 여행을 준비하시는 분들께 이 자료가 좋은 역할을 하였으면 합니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">중앙선 아화역 기차 ITX-마음 정차</h2>



<h3 class="wp-block-heading">수도권과 영남권을 잇는 새로운 철도</h3>



<p class="wp-block-paragraph">ITX-마음 아화역 정차 소식은 인근 주민들뿐만 아니라 경주를 찾는 여행객들에게도 매우 반가운 소식입니다. 아화역 기차 시간표를 살펴보면 아화역에서 동대구, 아화역에서 포항, 아화역에서 영천 그리고 아화역에서 부전 방면까지 상하행 노선이 고르게 배차되어 있습니다. 특히 아화역 예매 시스템이 코레일톡을 통해 간편해지면서, 경북 내륙의 주요 도시를 잇는 경주 외곽 기차역으로서의 존재감을 톡톡히 드러내고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">가족과 함께하는 간이역의 추억</h3>



<p class="wp-block-paragraph">아화역은 이동 수단을 넘어 정서적인 가치도 함께 품고 있습니다. 이미 많은 분이 [<a href="https://krailroad.co.kr/%ea%b2%bd%ec%a3%bc-%ec%95%84%ed%99%94%ec%97%ad%ec%9d%98-%ea%b0%80%ec%a1%b1-%ec%97%ac%ed%96%89%ea%b3%bc-%ed%8f%90%ec%97%ad-%ea%b7%b8%eb%a6%ac%ea%b3%a0-%ed%95%a8%ea%bb%98%ed%95%9c-%ea%b0%84%ec%9d%b4/">경주 아화역의 가족 여행과 폐역, 그리고 함께한 간이역</a>] 글을 통해 이곳의 따뜻한 분위기를 접하셨을 텐데요. 최근에는 [<a href="https://krailroad.co.kr/%ed%8f%90%ec%97%ad%eb%90%9c-%ea%b2%bd%ec%a3%bc-%ec%95%84%ed%99%94%ec%97%ad%ea%b3%bc-%ea%b1%b4%ec%b2%9c%ec%97%ad%ec%97%90%ec%84%9c-%ec%b0%be%ec%9d%80-%ea%b0%80%ec%a1%b1%ec%9d%98-%eb%98%90-%eb%8b%a4/">폐역된 경주 아화역과 건천역에서 찾은 가족의 또 다른 추억</a>]을 통해 과거의 향수와 현재의 편리함이 공존하는 독특한 매력이 입소문을 타고 있습니다. 이처럼 아화역 기차는 세대를 아우르는 이야기가 흐르는 공간으로 자리매김하고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">아화역 가는법과 환승</h3>



<p class="wp-block-paragraph">아화역 위치는 경주 외곽 중심부에 자리 잡고 있어 접근성이 뛰좋으며, 아화역 가는법을 고민하시는 분들을 위해 역사 바로 앞에는 아화역 버스 시간표와 연동되는 노선들이 배치되어 있으며, 자차 이용객을 위한 아화역 주차장 시설도 쾌적하게 정비되어 있습니다. 아화역 환승 정보를 미리 숙지하면 경주 시내권이나 영천, 대구 방면으로의 이동 시간을 획기적으로 단축할 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>아화역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">아화<br>↓<br>안동</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1602호</span><div class="time-display">08:57</div><div class="arrival-info">10:13 도착</div></td><td><span class="train-detail">1604호</span><div class="time-display">17:07</div><div class="arrival-info">18:22 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">아화<br>↓<br>제천</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1602호</span><div class="time-display">08:57</div><div class="arrival-info">11:19 도착</div></td><td><span class="train-detail">1604호</span><div class="time-display">17:07</div><div class="arrival-info">19:25 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">아화<br>↓<br>청량리</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1602호</span><div class="time-display">08:57</div><div class="arrival-info">12:56 도착</div></td><td><span class="train-detail">1604호</span><div class="time-display">17:07</div><div class="arrival-info">20:56 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">아화<br>↓<br>경주</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">10:26</div><div class="arrival-info">10:43 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">18:38</div><div class="arrival-info">18:55 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">아화<br>↓<br>태화강</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">10:26</div><div class="arrival-info">11:13 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">18:38</div><div class="arrival-info">19:23 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">아화<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1601호</span><div class="time-display">10:26</div><div class="arrival-info">12:20 도착</div></td><td><span class="train-detail">1603호</span><div class="time-display">18:38</div><div class="arrival-info">20:28 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>아화</strong>역 </strong>ITX-마음 누리로 <strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>운임</th></tr></thead><tbody><tr><td>중앙1</td><td>무궁화</td><td class="highlight">청량리</td><td class="highlight">아화</td><td>22,100</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">제천</td><td class="highlight">아화</td><td>12,900</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">안동</td><td class="highlight">아화</td><td>6,700</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">아화</td><td class="highlight">경주</td><td>2,600</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">아화</td><td class="highlight">태화강</td><td>4,400</td></tr><tr><td>중앙1</td><td>무궁화</td><td class="highlight">아화</td><td class="highlight">부전</td><td>8,500</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>아화역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <s>아화역 KTX 노선 없음</s><br>✅ <s>아화역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ec%95%84%ed%99%94%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%83%81%ed%95%98%ed%96%89-itx-%eb%a7%88%ec%9d%8c-%ec%9a%94%ea%b8%88-%ec%a4%91%ec%95%99%ec%84%a0-%eb%8c%80%ea%b5%ac/">아화역 ITX-마음 누리로 시간표</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>아화역 <strong>ITX-마음 누리로 </strong>시간표</strong></h2>



<h3 class="wp-block-heading">출발 : 아화 → 도착 : 청량리</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>아화</th><th>영천</th><th>군위</th><th>의성</th><th>안동</th><th>영주</th><th>풍기</th><th>단양</th><th>제천</th><th>원주</th><th>서원주</th><th>양동</th><th>매곡</th><th>일신</th><th>지평</th><th>용문</th><th>양평</th><th>청량리</th></tr></thead><tbody><tr><td>1602</td><td>ITX-마음</td><td>08:57</td><td>09:08</td><td>09:30</td><td>09:53</td><td>10:13</td><td>10:35</td><td>10:46</td><td>11:01</td><td>11:19</td><td>11:44</td><td>11:52</td><td>12:00</td><td>12:05</td><td>12:10</td><td>12:16</td><td>12:22</td><td>12:29</td><td>12:56</td></tr><tr><td>1604</td><td>ITX-마음</td><td>17:07</td><td>17:20</td><td>17:41</td><td>18:04</td><td>18:22</td><td>18:43</td><td>18:53</td><td>19:07</td><td>19:25</td><td>19:50</td><td>19:58</td><td>20:08</td><td></td><td></td><td></td><td>20:21</td><td>20:29</td><td>20:56</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 아화 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>아화</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th></tr></thead><tbody><tr><td>1601</td><td>ITX-마음</td><td>10:26</td><td>10:43</td><td>11:04</td><td>11:13</td><td>11:30</td><td>11:51</td><td>12:02</td><td>12:10</td><td>12:20</td></tr><tr><td>1603</td><td>ITX-마음</td><td>18:38</td><td>18:55</td><td>19:15</td><td>19:23</td><td>19:39</td><td>20:00</td><td>20:10</td><td>20:17</td><td>20:28</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>아화역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '아화'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">아화역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">아화역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '';
            let curName = '아화';
            let altCity = '';
            let altName = '정차';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">아화역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">12℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">아화역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EA%B2%BD%EC%A3%BC%EC%95%84%ED%99%94%EC%A0%84%ED%86%B5%EA%B5%AD%EC%88%98+%EB%8C%80%EA%B5%AC%EC%97%AD%EB%A1%AF%EB%8D%B0%EC%A7%81%EC%98%81%EC%A0%90+%EB%8C%80%EA%B5%AC%EA%B4%91%EC%97%AD%EC%8B%9C+%EB%B6%81%EA%B5%AC+%EC%B9%A0%EC%84%B1%EB%8F%992%EA%B0%80+302-155+10%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">경주아화전통국수 대구역롯데직영점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;국수</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">대구광역시 북구 칠성동2가 302-155 10층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%95%A8%EC%9B%94%EC%BB%A4%ED%94%BC+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EA%B2%BD%EC%A3%BC%EC%8B%9C+%EC%84%9C%EB%A9%B4+%EC%95%84%ED%99%94%EB%A6%AC+703+%ED%95%A8%EC%9B%94%EC%BB%A4%ED%94%BC" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">함월커피</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;카페,디저트</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 경주시 서면 아화리 703 함월커피</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">아화역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">아화역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 아화역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%95%84%ED%99%94%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/03/아화역-기차-시간표-ITX-마음-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="아화역-기차-시간표-ITX-마음-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-19131" srcset="https://krailroad.co.kr/wp-content/uploads/2026/03/아화역-기차-시간표-ITX-마음-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/03/아화역-기차-시간표-ITX-마음-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/03/아화역-기차-시간표-ITX-마음-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>강릉역 시간표 KTX-이음 ITX-마음 누리로 서울 청량리 부전행 요금과 정차역</title>
		<link>https://krailroad.co.kr/%ea%b0%95%eb%a6%89%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80%ec%a0%84/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Thu, 26 Feb 2026 05:24:45 +0000</pubDate>
				<category><![CDATA[KTX 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[강릉역 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=18954</guid>

					<description><![CDATA[강릉역 시간표, 강원도 철도 교통의 심장이자 강릉선과 동해선의 종착역인 강릉역은 KTX-이음과 ITX-마음 그리고 누리로의 개통으로 &#8216;서울-강릉과 동대구-강릉, 강릉-부전, 강릉-동대구&#8217; 시대를 열며 동해안 여행의 지도를 완전히 새롭게 그렸습니다. 단순히 수도권을 잇는 관문을 넘어, 이제는 영덕과 포항, 부전을 연결하는 동해선의 기점이자 향후 동해북부선 개통의 전초기지로서 동해안 기차의 끝과 시작을 동시에 담당하고 있습니다. 그래서 이번 자료는 코레일 공식 ... <a title="강릉역 시간표 KTX-이음 ITX-마음 누리로 서울 청량리 부전행 요금과 정차역" class="read-more button" href="https://krailroad.co.kr/%ea%b0%95%eb%a6%89%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80%ec%a0%84/" aria-label="강릉역 시간표 KTX-이음 ITX-마음 누리로 서울 청량리 부전행 요금과 정차역 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">강릉역 시간표, 강원도 철도 교통의 심장이자 강릉선과 동해선의 종착역인 강릉역은 KTX-이음과 ITX-마음 그리고 누리로의 개통으로 &#8216;서울-강릉과 동대구-강릉, 강릉-부전, 강릉-동대구&#8217; 시대를 열며 동해안 여행의 지도를 완전히 새롭게 그렸습니다. 단순히 수도권을 잇는 관문을 넘어, 이제는 영덕과 포항, 부전을 연결하는 동해선의 기점이자 향후 동해북부선 개통의 전초기지로서 동해안 기차의 끝과 시작을 동시에 담당하고 있습니다.</p>



<p class="wp-block-paragraph">그래서 이번 자료는 <a href="https://etk.srail.kr/main.do" target="_blank" rel="noopener">코레일 공식 사이트</a> 자료와 공공데이터의 최신 실시간 API를 분석하여 강릉역 KTX 이음 ITX-마음 누리로 열차의 강릉역 시간표 현황을 정리했습니다. 강릉 당일치기 기차 여행을 계획하거나 동해안을 따라 내려가는 동해안 열차 여행을 준비하는 분들께 실제적인 자료가 될것입니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">강릉역 KTX·ITX·누리로 이용 안내</h2>



<h3 class="wp-block-heading">서울과 동해안을 잇는 레일 노선</h3>



<p class="wp-block-paragraph">서울역에서 강릉역까지, 그리고 청량리역에서 강릉역까지 이어지는 KTX 노선은 강원도 여행의 물리적 거리를 획기적으로 좁혔습니다. 강릉역 시간표를 살펴보면 수도권행 열차 외에도 강릉역에서 정동진, 강릉역에서 묵호, 강릉역에서 동해역으로 향하는 강릉역 누리로와 ITX-마음이 촘촘하게 배치되어 있습니다. 특히 동대구 부전 방면으로 향하는 남행 열차들은 영덕과 포항을 거쳐 경상권까지 발빠르게 연결하며 광역 철도망의 진면목을 보여주고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading"><strong>편의를 위한 스테이션 인프라</strong></h3>



<p class="wp-block-paragraph">강릉역 시간표를 이용해 역사에 도착한 승객들이 가장 먼저 마주하는 것은 쾌적한 역사 시설입니다. 무거운 짐을 가볍게 맡길 수 있는 강릉역 물품보관함과 강릉역 짐보관 서비스는 혼행 여행자들에게 필수이며, 역 광장에는 주요 지역을 잇는 강릉역 셔틀버스가 대기하고 있어 이동도 편하고 자유롭게 즐길 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">강릉역 시간표가 주는 도심 여행</h3>



<p class="wp-block-paragraph">강릉역에서 대중교통이나 도보로 금방 닿는 강릉중앙시장 가는법은 여행자들의 단골 질문 중 하나이며, 시장 구경과 함께 든든하게 배를 채운 뒤에는 강릉역에서 안목해변까지 이어지는 커피 향 가득한 코스를 즐기기 좋으며, 역 주변에 밀집한 강릉역 근처 카페들은 기차 시간을 기다리며 여유를 즐기기에 좋습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">강릉의 낮과 밤, 그리고 동해안 종주</h3>



<p class="wp-block-paragraph">강릉역 맛집 탐방과 해변 산책을 마친 후 마주하는 강릉역 야간기차의 정취나 화려한 조명이 빛나는 강릉의 밤 풍경은 여행의 여운을 더해줄것입니다. 동해안 종주 기차의 끝 지점인 이곳에서 정동진이나 동해로 내려가는 노선을 갈아타며 해안선을 따라가는 여행은 강릉 당일치기 기차 여행과는 또 다른 깊은 추억을 만드실 수 있을겁니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>강릉역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">강릉<br>↓<br>서원주</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">802호</span><div class="time-display">5:20</div><div class="arrival-info">6:17 도착</div></td><td><span class="train-detail">870호</span><div class="time-display">20:04</div><div class="arrival-info">21:04 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">강릉<br>↓<br>청량리</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">802호</span><div class="time-display">5:20</div><div class="arrival-info">7:03 도착</div></td><td><span class="train-detail">828호</span><div class="time-display">22:27</div><div class="arrival-info">0:05 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">강릉<br>↓<br>서울</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">802호</span><div class="time-display">5:20</div><div class="arrival-info">7:23 도착</div></td><td><span class="train-detail">828호</span><div class="time-display">22:27</div><div class="arrival-info">0:25 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">강릉<br>↓<br>포항</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1824호</span><div class="time-display">19:58</div><div class="arrival-info">22:53 도착</div></td><td><span class="train-detail">1824호</span><div class="time-display">19:58</div><div class="arrival-info">22:53 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">06:30</div><div class="arrival-info">10:17 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">12:30</div><div class="arrival-info">15:59 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">강릉<br>↓<br>서경주</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1824호</span><div class="time-display">19:58</div><div class="arrival-info">23:13 도착</div></td><td><span class="train-detail">1824호</span><div class="time-display">19:58</div><div class="arrival-info">23:13 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">06:30</div><div class="arrival-info">10:40 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">12:30</div><div class="arrival-info">16:23 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">강릉<br>↓<br>동대구</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1824호</span><div class="time-display">19:58</div><div class="arrival-info">00:04 도착</div></td><td><span class="train-detail">1824호</span><div class="time-display">19:58</div><div class="arrival-info">00:04 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">06:30</div><div class="arrival-info">11:36 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">12:30</div><div class="arrival-info">17:18 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">강릉<br>↓<br>영덕</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">752호</span><div class="time-display">09:36</div><div class="arrival-info">11:43 도착</div></td><td><span class="train-detail">756호</span><div class="time-display">18:35</div><div class="arrival-info">20:36 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">강릉<br>↓<br>포항</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">752호</span><div class="time-display">09:36</div><div class="arrival-info">12:06 도착</div></td><td><span class="train-detail">756호</span><div class="time-display">18:35</div><div class="arrival-info">20:57 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">강릉<br>↓<br>경주</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">752호</span><div class="time-display">09:36</div><div class="arrival-info">12:32 도착</div></td><td><span class="train-detail">756호</span><div class="time-display">18:35</div><div class="arrival-info">21:24 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">강릉<br>↓<br>부전</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">752호</span><div class="time-display">09:36</div><div class="arrival-info">13:36 도착</div></td><td><span class="train-detail">756호</span><div class="time-display">18:35</div><div class="arrival-info">22:29 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">강릉<br>↓<br>태화강</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1822호</span><div class="time-display">05:46</div><div class="arrival-info">09:39 도착</div></td><td><span class="train-detail">1822호</span><div class="time-display">05:46</div><div class="arrival-info">09:39 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">강릉<br>↓<br>북울산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1822호</span><div class="time-display">05:46</div><div class="arrival-info">09:31 도착</div></td><td><span class="train-detail">1822호</span><div class="time-display">05:46</div><div class="arrival-info">09:31 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">강릉<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1822호</span><div class="time-display">05:46</div><div class="arrival-info">10:49 도착</div></td><td><span class="train-detail">1822호</span><div class="time-display">05:46</div><div class="arrival-info">10:49 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>강릉</strong>역 KTX·</strong>ITX·누리로 <strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>경유지</th><th>운임</th><th>일반</th><th>우등</th></tr></thead><tbody><tr><td>강릉K1</td><td>KTX</td><td class="highlight">서울</td><td class="highlight">강릉</td><td>기본</td><td>0</td><td>27,600</td><td>33,100</td></tr><tr><td>강릉K1</td><td>KTX</td><td class="highlight">청량리</td><td class="highlight">강릉</td><td>기본</td><td>0</td><td>26,000</td><td>31,200</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">경주</td><td>-</td><td>24,800</td><td>0</td><td>0</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">강릉</td><td class="highlight">경주</td><td>기본</td><td>0</td><td>34,300</td><td>41,200</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">동대구</td><td>-</td><td>29,900</td><td>0</td><td>0</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">강릉</td><td class="highlight">동대구</td><td>-</td><td>21,300</td><td>0</td><td>0</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">태화강</td><td>-</td><td>28,800</td><td>0</td><td>0</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">강릉</td><td class="highlight">태화강</td><td>기본</td><td>0</td><td>40,200</td><td>48,200</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">북울산</td><td>-</td><td>27,900</td><td>0</td><td>0</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">부전</td><td>-</td><td>34,900</td><td>0</td><td>0</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">강릉</td><td class="highlight">부전</td><td>기본</td><td>0</td><td>46,800</td><td>56,200</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>강릉역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <s>강릉역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ea%b0%95%eb%a6%89%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%84%9c%ec%9a%b8-%ec%b2%ad%eb%9f%89%eb%a6%ac-%eb%b6%80%ec%a0%84/">강릉역 KTX, ITX-마음 누리로 시간표</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>강릉역 <strong>KTX·ITX·누리로 </strong>시간표</strong></h2>



<h3 class="wp-block-heading">출발 : 강릉 → 도착 : 청량리<strong><strong>·</strong></strong>서울</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>강릉</th><th>진부(오대산)</th><th>평창</th><th>둔내</th><th>횡성</th><th>만종</th><th>서원주</th><th>양평</th><th>덕소</th><th>상봉</th><th>청량리</th><th>서울</th><th>행신</th><th>비고</th></tr></thead><tbody><tr><td>802</td><td>KTX-이음</td><td>5:20</td><td>5:40</td><td></td><td>5:55</td><td></td><td>6:10</td><td>6:17</td><td>6:36</td><td></td><td></td><td>7:03</td><td>7:23</td><td></td><td>매일</td></tr><tr><td>804</td><td>KTX-이음</td><td>6:16</td><td>6:36</td><td>6:45</td><td></td><td>7:00</td><td>7:10</td><td>7:20</td><td>7:42</td><td></td><td></td><td>8:11</td><td>8:31</td><td></td><td>매일</td></tr><tr><td>806</td><td>KTX-이음</td><td>7:28</td><td></td><td>7:52</td><td>8:02</td><td>8:11</td><td>8:20</td><td></td><td>8:43</td><td></td><td></td><td>9:10</td><td>9:30</td><td></td><td>매일</td></tr><tr><td>808</td><td>KTX-이음</td><td>8:10</td><td>8:30</td><td>8:39</td><td></td><td>8:54</td><td>9:03</td><td>9:12</td><td></td><td></td><td></td><td>9:59</td><td>10:19</td><td></td><td>매일</td></tr><tr><td>852</td><td>KTX-이음</td><td>9:48</td><td>10:09</td><td></td><td>10:24</td><td></td><td>10:39</td><td></td><td></td><td></td><td></td><td>11:24</td><td></td><td></td><td>토일</td></tr><tr><td>854</td><td>KTX-이음</td><td>10:07</td><td></td><td>10:31</td><td></td><td></td><td>10:51</td><td></td><td></td><td></td><td>11:34</td><td>11:40</td><td></td><td></td><td>토일</td></tr><tr><td>856</td><td>KTX-이음</td><td>10:17</td><td>10:37</td><td></td><td></td><td></td><td>11:02</td><td>11:12</td><td></td><td></td><td></td><td>11:58</td><td></td><td></td><td>매일</td></tr><tr><td>810</td><td>KTX-이음</td><td>10:35</td><td></td><td></td><td></td><td>11:11</td><td></td><td>11:24</td><td></td><td></td><td></td><td>12:10</td><td>12:29</td><td></td><td>매일</td></tr><tr><td>858</td><td>KTX-이음</td><td>10:59</td><td></td><td>11:24</td><td></td><td></td><td>11:44</td><td></td><td>12:06</td><td></td><td>12:30</td><td>12:36</td><td></td><td></td><td>토일</td></tr><tr><td>812</td><td>KTX-이음</td><td>11:28</td><td>11:48</td><td></td><td>12:03</td><td></td><td>12:18</td><td></td><td>12:40</td><td></td><td></td><td>13:07</td><td>13:27</td><td></td><td>매일</td></tr><tr><td>814</td><td>KTX-이음</td><td>12:23</td><td>12:43</td><td>12:52</td><td></td><td>13:08</td><td></td><td>13:23</td><td>13:45</td><td></td><td></td><td>14:13</td><td>14:33</td><td></td><td>매일</td></tr><tr><td>860</td><td>KTX-이음</td><td>13:58</td><td></td><td></td><td></td><td></td><td></td><td>14:41</td><td>15:00</td><td></td><td>15:23</td><td>15:29</td><td></td><td></td><td>금토일</td></tr><tr><td>816</td><td>KTX-이음</td><td>15:37</td><td></td><td>16:02</td><td>16:12</td><td></td><td></td><td>16:32</td><td></td><td></td><td></td><td>17:21</td><td>17:41</td><td></td><td>매일</td></tr><tr><td>862</td><td>KTX-이음</td><td>16:00</td><td>16:21</td><td></td><td></td><td></td><td>16:46</td><td></td><td></td><td></td><td></td><td>17:32</td><td></td><td></td><td>금토일</td></tr><tr><td>818</td><td>KTX-이음</td><td>16:45</td><td>17:06</td><td></td><td>17:21</td><td></td><td></td><td>17:38</td><td></td><td></td><td>18:17</td><td>18:24</td><td>18:44</td><td></td><td>매일</td></tr><tr><td>820</td><td>KTX-이음</td><td>17:01</td><td>17:22</td><td>17:31</td><td></td><td></td><td>17:51</td><td>18:01</td><td>18:23</td><td></td><td></td><td>18:51</td><td>19:13</td><td></td><td>매일</td></tr><tr><td>864</td><td>KTX-이음</td><td>17:27</td><td></td><td>17:52</td><td>18:02</td><td>18:11</td><td>18:21</td><td></td><td></td><td></td><td>19:03</td><td>19:09</td><td></td><td></td><td>월화수목금</td></tr><tr><td>866</td><td>KTX-이음</td><td>17:52</td><td>18:13</td><td></td><td></td><td>18:33</td><td>18:42</td><td></td><td>19:05</td><td></td><td></td><td>19:31</td><td></td><td></td><td>금토일</td></tr><tr><td>868</td><td>KTX-이음</td><td>18:23</td><td></td><td>18:48</td><td>18:58</td><td>19:07</td><td>19:17</td><td>19:27</td><td></td><td></td><td></td><td>20:15</td><td></td><td></td><td>매일</td></tr><tr><td>822</td><td>KTX-이음</td><td>18:48</td><td>19:09</td><td>19:18</td><td>19:28</td><td>19:37</td><td>19:47</td><td></td><td>20:09</td><td></td><td>20:33</td><td>20:40</td><td>21:00</td><td></td><td>매일</td></tr><tr><td>870</td><td>KTX-이음</td><td>20:04</td><td>20:24</td><td>20:33</td><td>20:42</td><td>20:52</td><td></td><td>21:04</td><td></td><td>21:35</td><td>21:46</td><td>21:52</td><td></td><td></td><td>금토일</td></tr><tr><td>824</td><td>KTX-이음</td><td>20:30</td><td></td><td>20:55</td><td></td><td>21:10</td><td>21:19</td><td></td><td>21:41</td><td></td><td>22:05</td><td>22:12</td><td>22:32</td><td></td><td>매일</td></tr><tr><td>826</td><td>KTX-이음</td><td>21:33</td><td></td><td></td><td>22:03</td><td></td><td>22:19</td><td></td><td></td><td></td><td></td><td>23:06</td><td>23:31</td><td>23:48</td><td>매일</td></tr><tr><td>872</td><td>KTX-이음</td><td>22:00</td><td>22:21</td><td>22:30</td><td></td><td>22:45</td><td></td><td></td><td></td><td></td><td>23:33</td><td>23:39</td><td></td><td></td><td>금토일</td></tr><tr><td>828</td><td>KTX-이음</td><td>22:27</td><td></td><td>22:52</td><td></td><td>23:07</td><td>23:16</td><td></td><td></td><td></td><td>23:58</td><td>0:05</td><td>0:25</td><td></td><td>매일</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 강릉 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>강릉</th><th>정동진</th><th>묵호</th><th>동해</th><th>삼척</th><th>울진</th><th>영덕</th><th>포항</th><th>경주</th><th>태화강</th><th>부전</th><th>비고</th></tr></thead><tbody><tr><td>752</td><td>KTX-이음</td><td>09:36</td><td>09:53</td><td>10:13</td><td>10:23</td><td>10:42</td><td>11:09</td><td>11:43</td><td>12:06</td><td>12:32</td><td>12:53</td><td>13:36</td><td>매일</td></tr><tr><td>754</td><td>KTX-이음</td><td>14:56</td><td>15:12</td><td>15:31</td><td>15:39</td><td>15:56</td><td>16:23</td><td>16:57</td><td>17:20</td><td>17:46</td><td>18:07</td><td>18:50</td><td>매일</td></tr><tr><td>756</td><td>KTX-이음</td><td>18:35</td><td>18:51</td><td>19:10</td><td>19:18</td><td>19:35</td><td>20:02</td><td>20:36</td><td>20:57</td><td>21:24</td><td>21:46</td><td>22:29</td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>강릉</th><th>정동진</th><th>묵호</th><th>동해</th><th>삼척</th><th>울진</th><th>후포</th><th>고래불</th><th>영덕</th><th>포항</th><th>서경주</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th></tr></thead><tbody><tr><td>1822</td><td>ITX-마음</td><td>05:46</td><td>06:02</td><td>06:21</td><td>06:30</td><td>06:47</td><td>07:22</td><td>07:48</td><td>07:57</td><td>08:13</td><td>08:38</td><td>08:58</td><td>09:11</td><td>09:31</td><td>09:39</td><td>10:01</td><td>10:22</td><td>10:32</td><td>10:39</td><td>10:49</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 강릉 → 도착 : 동대구</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>강릉</th><th>정동진</th><th>묵호</th><th>동해</th><th>삼척해변</th><th>삼척</th><th>근덕</th><th>임원</th><th>옥원</th><th>흥부</th><th>죽변</th><th>울진</th><th>매화</th><th>기성</th><th>평해</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>강구</th><th>장사</th><th>월포</th><th>포항</th><th>안강</th><th>서경주</th><th>아화</th><th>영천</th><th>하양</th><th>동대구</th><th>비 고</th></tr></thead><tbody><tr><td>1852</td><td>누리로</td><td>06:30</td><td>06:47</td><td>07:11</td><td>07:21</td><td></td><td>07:45</td><td>07:57</td><td>08:06</td><td>08:13</td><td>08:23</td><td>08:30</td><td>08:38</td><td>08:48</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>월화수목금</td></tr><tr><td>1862</td><td>누리로</td><td>06:30</td><td>06:47</td><td>07:11</td><td>07:21</td><td>07:35</td><td>07:45</td><td>07:57</td><td>08:06</td><td>08:13</td><td>08:23</td><td>08:30</td><td>08:38</td><td>08:48</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>토일</td></tr><tr><td>1854</td><td>누리로</td><td>08:55</td><td>09:11</td><td>09:30</td><td>09:39</td><td></td><td>10:01</td><td></td><td>10:19</td><td>10:28</td><td>10:38</td><td>10:45</td><td>10:53</td><td></td><td></td><td></td><td>11:20</td><td>11:33</td><td>11:41</td><td>11:52</td><td>11:59</td><td>12:04</td><td>12:13</td><td>12:26</td><td>12:40</td><td>12:51</td><td>13:08</td><td>13:19</td><td>13:29</td><td>13:45</td><td>월화수목금</td></tr><tr><td>1864</td><td>누리로</td><td>08:55</td><td>09:11</td><td>09:30</td><td>09:39</td><td>09:52</td><td>10:01</td><td></td><td>10:19</td><td>10:28</td><td>10:38</td><td>10:45</td><td>10:53</td><td></td><td></td><td></td><td>11:20</td><td>11:33</td><td>11:41</td><td>11:52</td><td>11:59</td><td>12:04</td><td>12:13</td><td>12:26</td><td>12:40</td><td>12:51</td><td>13:08</td><td>13:19</td><td>13:29</td><td>13:45</td><td>토일</td></tr><tr><td>1866</td><td>누리로</td><td>12:30</td><td>12:47</td><td>13:07</td><td>13:15</td><td></td><td>13:33</td><td>13:46</td><td>13:55</td><td>14:02</td><td>14:12</td><td>14:19</td><td>14:27</td><td>14:37</td><td>14:49</td><td></td><td>15:01</td><td>15:09</td><td></td><td>15:25</td><td></td><td>15:39</td><td>15:47</td><td>15:59</td><td>16:13</td><td>16:23</td><td>16:41</td><td>16:52</td><td>17:02</td><td>17:18</td><td></td></tr><tr><td>1824</td><td>ITX-마음</td><td>19:58</td><td>20:15</td><td>20:34</td><td>20:42</td><td></td><td>20:59</td><td></td><td></td><td></td><td></td><td></td><td>21:36</td><td></td><td>21:55</td><td></td><td></td><td></td><td></td><td>22:25</td><td></td><td></td><td>22:42</td><td>22:53</td><td></td><td>23:13</td><td></td><td>23:38</td><td>23:48</td><td>00:04</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>강릉역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '강릉'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">강릉역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">강릉역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '32010';
            let curName = '강릉';
            let altCity = '';
            let altName = '정차';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">강릉역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">12℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 구름많음</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">20%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">강릉역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%97%84%EC%A7%80%EB%84%A4%ED%8F%AC%EC%9E%A5%EB%A7%88%EC%B0%A8+%EB%B3%B8%EC%A0%90+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EA%B0%95%EB%A6%89%EC%8B%9C+%ED%8F%AC%EB%82%A8%EB%8F%99+1155" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">엄지네포장마차 본점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;해물,생선요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 강릉시 포남동 1155</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EA%B0%95%EB%A6%89%EC%97%AD+%EC%98%B9%EB%A7%89+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EA%B0%95%EB%A6%89%EC%8B%9C+%EC%98%A5%EC%B2%9C%EB%8F%99+312-3+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">강릉역 옹막</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;막국수</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 강릉시 옥천동 312-3 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%92%8D%ED%98%B8%EB%A7%9B%EB%9C%A8%EB%9D%BD%EA%B0%95%EB%A6%89%EB%B3%B8%EC%A0%90+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EA%B0%95%EB%A6%89%EC%8B%9C+%EB%85%B8%EC%95%94%EB%8F%99+664-1+%ED%92%8D%ED%98%B8%EB%A7%9B%EB%9C%A8%EB%9D%BD%EA%B0%95%EB%A6%89%EB%B3%B8%EC%A0%90" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">풍호맛뜨락강릉본점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;한식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 강릉시 노암동 664-1 풍호맛뜨락강릉본점</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EA%B9%8C%EC%B9%98%EC%B9%BC%EA%B5%AD%EC%88%98+%EA%B0%95%EB%A6%89%EC%97%AD+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EA%B0%95%EB%A6%89%EC%8B%9C+%ED%8F%AC%EB%82%A8%EB%8F%99+1107-4+%EA%B9%8C%EC%B9%98%EC%B9%BC%EA%B5%AD%EC%88%98" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">까치칼국수 강릉역</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;칼국수,만두</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 강릉시 포남동 1107-4 까치칼국수</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%A7%AC%EB%BD%951%EB%B2%88%EC%A7%80+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EA%B0%95%EB%A6%89%EC%8B%9C+%EC%86%A1%EC%A0%95%EB%8F%99+216-5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">짬뽕1번지</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">중식&gt;중식당</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 강릉시 송정동 216-5</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">강릉역 실시간 주차장 요금</h4>
        
                    <div class="parking-list-container">
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 강릉역                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">500원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">300원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">10,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 강원도 강릉시 교동 118<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 031-523-2353                        </div>
                    </div>
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 강릉역2                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">500원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">300원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">10,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 강원도 강릉시 교동 118<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 031-523-2353                        </div>
                    </div>
                            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">강릉역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 강원도 강릉시 교동 118</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:031-523-2353" style="color: #0052a4; font-weight: bold; text-decoration: none;">031-523-2353</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EA%B0%95%EB%A6%89%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/02/강릉역-KTX-이음-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="강릉역-시간표-KTX-이음-ITX-마음-누리로-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-18971" srcset="https://krailroad.co.kr/wp-content/uploads/2026/02/강릉역-KTX-이음-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/02/강릉역-KTX-이음-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/02/강릉역-KTX-이음-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>정동진역 KTX-이음 ITX-마음 누리로 시간표 상하행 실시간 운행 정보와 기차표</title>
		<link>https://krailroad.co.kr/%ec%a0%95%eb%8f%99%ec%a7%84%ec%97%ad-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%83%81%ed%95%98%ed%96%89-%ec%8b%a4%ec%8b%9c%ea%b0%84/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Thu, 26 Feb 2026 02:13:19 +0000</pubDate>
				<category><![CDATA[KTX 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[정동진역]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=18941</guid>

					<description><![CDATA[대한민국에서 바다와 가장 맞닿은 철길, 정동진역은 단순한 기차역을 넘어 수많은 이들의 추억과 약속이 서린 공간입니다. 과거 드라마 &#8216;모래시계&#8217;의 배경으로 전국적인 신드롬을 일으켰던 이곳은, 이제 KTX-이음의 개통과 함께 더욱 빠르고 쾌적하게 닿을 수 있는 새벽 기차 여행의 상징이 되었습니다. 이번에 정리한 자료는 코레일의 최신 열차 운행 정보와 실시간 API를 기반으로 분석한 정동진역 시간표, 정차역, 첫차 막차, ... <a title="정동진역 KTX-이음 ITX-마음 누리로 시간표 상하행 실시간 운행 정보와 기차표" class="read-more button" href="https://krailroad.co.kr/%ec%a0%95%eb%8f%99%ec%a7%84%ec%97%ad-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%83%81%ed%95%98%ed%96%89-%ec%8b%a4%ec%8b%9c%ea%b0%84/" aria-label="정동진역 KTX-이음 ITX-마음 누리로 시간표 상하행 실시간 운행 정보와 기차표 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">대한민국에서 바다와 가장 맞닿은 철길, 정동진역은 단순한 기차역을 넘어 수많은 이들의 추억과 약속이 서린 공간입니다. 과거 드라마 &#8216;모래시계&#8217;의 배경으로 전국적인 신드롬을 일으켰던 이곳은, 이제 KTX-이음의 개통과 함께 더욱 빠르고 쾌적하게 닿을 수 있는 새벽 기차 여행의 상징이 되었습니다.</p>



<p class="wp-block-paragraph">이번에 정리한 자료는 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a>의 최신 열차 운행 정보와 실시간 API를 기반으로 분석한 정동진역 시간표, 정차역, 첫차 막차, 주변 맛집, 실시간 버스, 주차장 관련 내용입니다. 서울, 청량리에서 정동진까지 밤새 달려와 마주하는 붉은 태양, 그리고 일출을 감상하고자 하는 분들에게 이 자료가 좋은 지원군이 되리라 생각합니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">정동진역 KTX·ITX·누리로 이용 안내</h2>



<h3 class="wp-block-heading">수도권과 강원도를 잇는 일출 노선</h3>



<p class="wp-block-paragraph">정동진의 KTX 도입은 일출 여행의 문턱을 낮춰주었으며, 정동진역 예매 현황을 살펴보면 주말이나 연말연시에는 일찍이 매진될 만큼 인기가 높은데, 이는 청량리에서 정동진까지의 이동 시간이 획기적으로 단축되었기 때문입니다. 수도권뿐만 아니라 강릉역에서 정동진으로 이동하거나 동해역에서 정동진 방향으로 향하는 ITX-마음, 누리로 시간표도 잘 갖춰져 있어, 강원도 동해안을 따라 이용하는 여행객들에게 최적의 동해안 열차 노선이 되고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading"><strong>밤차의 낭만과 일출의 기다림</strong></h3>



<p class="wp-block-paragraph">정동진 일출 기차 여행의 묘미는 어둠을 뚫고 도착해 마주하는 애국가 일출의 장엄함에 있습니다. 열차 시간표를 대조하여 도착 예정 시각과 정동진 일출 시간을 미리 확인하는 것이 필수적이며, 역에서 내리자마자 바로 앞에 펼쳐지는 정동진 바다의 풍경은 밤샘 이동의 피로를 잊게 할 만큼 강렬한 첫인상을 느낄 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">레일바이크부터 조각공원까지</h3>



<p class="wp-block-paragraph">역에서 내린 후 가장 먼저 추천하는 코스는 정동진 레일바이크입니다. 바다를 옆에 끼고 달리는 이 경험은 옛날이나 지금 가족이나 연인들에게 필수 코스이며, 인기가 많아 정동진 레일바이크 예매를 사전에 하는 것이 좋습니다. 이후 도보로 이동 가능한 정동진 모래시계 공원과 정동진 박물관을 둘러보며 드라마의 추억과 시간의 의미를 되새겨보는 것도 좋습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">정동진의 랜드마크와 휴식</h3>



<p class="wp-block-paragraph">언덕 위 배 모양으로 유명한 썬크루즈 리조트는 정동진의 전경을 한눈에 담기에 가장 좋은 장소이며, 조금 더 특별한 예술적 감성을 원한다면 하슬라 아트월드를 방문해 보시길 권합니다. 푸른 정동진 해변과 어우러진 조형물들은 찍는 곳마다 인생샷을 선사하며, 낮의 활기찬 모습과는 또 다른 매력의 정동진 야경까지 감상한다면 완벽한 정동진 당일치기 여행이 가능합니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>정동진역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">정동진<br>↓<br>평창</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">840호</span><div class="time-display">7:33</div><div class="arrival-info">8:11 도착</div></td><td><span class="train-detail">848호</span><div class="time-display">22:00</div><div class="arrival-info">22:38 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">정동진<br>↓<br>청량리</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">840호</span><div class="time-display">7:33</div><div class="arrival-info">9:29 도착</div></td><td><span class="train-detail">848호</span><div class="time-display">22:00</div><div class="arrival-info">23:52 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">정동진<br>↓<br>서울</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">840호</span><div class="time-display">7:33</div><div class="arrival-info">9:49 도착</div></td><td><span class="train-detail">848호</span><div class="time-display">22:00</div><div class="arrival-info">0:12 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">정동진<br>↓<br>강릉</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">751호</span><div class="time-display">11:26</div><div class="arrival-info">11:40 도착</div></td><td><span class="train-detail">755호</span><div class="time-display">23:18</div><div class="arrival-info">23:32 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">정동진<br>↓<br>강릉</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1821호</span><div class="time-display">19:12</div><div class="arrival-info">19:27 도착</div></td><td><span class="train-detail">1831호</span><div class="time-display">19:12</div><div class="arrival-info">19:27 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">10:55</div><div class="arrival-info">11:12 도착</div></td><td><span class="train-detail">1865호</span><div class="time-display">22:58</div><div class="arrival-info">23:13 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">정동진<br>↓<br>포항</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1824호</span><div class="time-display">20:15</div><div class="arrival-info">22:53 도착</div></td><td><span class="train-detail">1824호</span><div class="time-display">20:15</div><div class="arrival-info">22:53 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">06:47</div><div class="arrival-info">10:17 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">12:47</div><div class="arrival-info">15:59 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">정동진<br>↓<br>서경주</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1824호</span><div class="time-display">20:15</div><div class="arrival-info">23:13 도착</div></td><td><span class="train-detail">1824호</span><div class="time-display">20:15</div><div class="arrival-info">23:13 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">06:47</div><div class="arrival-info">10:40 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">12:47</div><div class="arrival-info">16:23 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">정동진<br>↓<br>동대구</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1824호</span><div class="time-display">20:15</div><div class="arrival-info">00:04 도착</div></td><td><span class="train-detail">1824호</span><div class="time-display">20:15</div><div class="arrival-info">00:04 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">06:47</div><div class="arrival-info">11:36 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">12:47</div><div class="arrival-info">17:18 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">정동진<br>↓<br>영덕</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">752호</span><div class="time-display">09:53</div><div class="arrival-info">11:43 도착</div></td><td><span class="train-detail">756호</span><div class="time-display">18:51</div><div class="arrival-info">20:36 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">정동진<br>↓<br>포항</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">752호</span><div class="time-display">09:53</div><div class="arrival-info">12:06 도착</div></td><td><span class="train-detail">756호</span><div class="time-display">18:51</div><div class="arrival-info">20:57 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">정동진<br>↓<br>경주</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">752호</span><div class="time-display">09:53</div><div class="arrival-info">12:32 도착</div></td><td><span class="train-detail">756호</span><div class="time-display">18:51</div><div class="arrival-info">21:24 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">정동진<br>↓<br>부전</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">752호</span><div class="time-display">09:53</div><div class="arrival-info">13:36 도착</div></td><td><span class="train-detail">756호</span><div class="time-display">18:51</div><div class="arrival-info">22:29 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">정동진<br>↓<br>태화강</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1822호</span><div class="time-display">06:02</div><div class="arrival-info">09:39 도착</div></td><td><span class="train-detail">1822호</span><div class="time-display">06:02</div><div class="arrival-info">09:39 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">정동진<br>↓<br>북울산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1822호</span><div class="time-display">06:02</div><div class="arrival-info">09:31 도착</div></td><td><span class="train-detail">1822호</span><div class="time-display">06:02</div><div class="arrival-info">09:31 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">정동진<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1822호</span><div class="time-display">06:02</div><div class="arrival-info">10:49 도착</div></td><td><span class="train-detail">1822호</span><div class="time-display">06:02</div><div class="arrival-info">10:49 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>정동진</strong>역 KTX·</strong>ITX·누리로<strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>경유지</th><th>운임</th><th>일반</th><th>우등</th></tr></thead><tbody><tr><td>강릉K1</td><td>KTX</td><td class="highlight">서울</td><td class="highlight">정동진</td><td>기본</td><td>0</td><td>28,300</td><td>34,000</td></tr><tr><td>강릉K1</td><td>KTX</td><td class="highlight">청량리</td><td class="highlight">정동진</td><td>기본</td><td>0</td><td>26,700</td><td>32,000</td></tr><tr><td>강릉K1</td><td>KTX</td><td class="highlight">평창</td><td class="highlight">정동진</td><td>기본</td><td>0</td><td>8,700</td><td>11,700</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">정동진</td><td class="highlight">경주</td><td>-</td><td>23,200</td><td>0</td><td>0</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">정동진</td><td class="highlight">경주</td><td>기본</td><td>0</td><td>32,600</td><td>39,100</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">정동진</td><td class="highlight">동대구</td><td>-</td><td>28,400</td><td>0</td><td>0</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">정동진</td><td class="highlight">동대구</td><td>-</td><td>20,300</td><td>0</td><td>0</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">정동진</td><td>-</td><td>4,800</td><td>0</td><td>0</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">정동진</td><td>-</td><td>4,800</td><td>0</td><td>0</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">강릉</td><td class="highlight">정동진</td><td>기본</td><td>0</td><td>8,400</td><td>11,400</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">강릉</td><td class="highlight">정동진</td><td>-</td><td>2,600</td><td>0</td><td>0</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">정동진</td><td class="highlight">태화강</td><td>-</td><td>27,300</td><td>0</td><td>0</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">정동진</td><td class="highlight">태화강</td><td>기본</td><td>0</td><td>38,500</td><td>46,200</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">정동진</td><td class="highlight">북울산</td><td>-</td><td>26,300</td><td>0</td><td>0</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">정동진</td><td class="highlight">부전</td><td>-</td><td>33,400</td><td>0</td><td>0</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">정동진</td><td class="highlight">부전</td><td>기본</td><td>0</td><td>45,100</td><td>54,100</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>정동진역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <s>정동진역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ec%a0%95%eb%8f%99%ec%a7%84%ec%97%ad-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%83%81%ed%95%98%ed%96%89-%ec%8b%a4%ec%8b%9c%ea%b0%84/">정동진역 KTX, ITX-마음 누리로 시간표</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>정동진역 <strong>KTX·ITX·누리로 </strong>시간표</strong></h2>



<h3 class="wp-block-heading">출발 : 정동진 → 도착 : 강릉</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>정동진</th><th>강릉</th><th>비고</th></tr></thead><tbody><tr><td>751</td><td>KTX-이음</td><td>11:26</td><td>11:40</td><td>매일</td></tr><tr><td>753</td><td>KTX-이음</td><td>17:36</td><td>17:51</td><td>매일</td></tr><tr><td>755</td><td>KTX-이음</td><td>23:18</td><td>23:32</td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>정동진</th><th>강릉</th><th>비 고</th></tr></thead><tbody><tr><td>1851</td><td>누리로</td><td>10:55</td><td>11:12</td><td>월화수목금</td></tr><tr><td>1861</td><td>누리로</td><td>10:55</td><td>11:12</td><td>토일</td></tr><tr><td>1853</td><td>누리로</td><td>16:45</td><td>17:00</td><td>월화수목금</td></tr><tr><td>1863</td><td>누리로</td><td>16:45</td><td>17:00</td><td>토일</td></tr><tr><td>1821</td><td>ITX-마음</td><td>19:12</td><td>19:27</td><td>월화수목금</td></tr><tr><td>1831</td><td>ITX-마음</td><td>19:12</td><td>19:27</td><td>토일</td></tr><tr><td>1865</td><td>누리로</td><td>22:58</td><td>23:13</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 정동진 → 도착 : 청량리<strong><strong>·</strong></strong>서울</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>정동진</th><th>진부(오대산)</th><th>평창</th><th>둔내</th><th>횡성</th><th>만종</th><th>양평</th><th>덕소</th><th>상봉</th><th>청량리</th><th>서울</th><th>비고</th></tr></thead><tbody><tr><td>840</td><td>KTX-이음</td><td>7:33</td><td>8:03</td><td>8:11</td><td>8:21</td><td></td><td>8:36</td><td>8:58</td><td></td><td>9:22</td><td>9:29</td><td>9:49</td><td>매일</td></tr><tr><td>842</td><td>KTX-이음</td><td>10:32</td><td></td><td>11:06</td><td>11:16</td><td></td><td>11:31</td><td>11:53</td><td></td><td>12:17</td><td>12:23</td><td></td><td>매일</td></tr><tr><td>884</td><td>KTX-이음</td><td>12:49</td><td></td><td></td><td></td><td></td><td>13:43</td><td></td><td></td><td>14:25</td><td>14:31</td><td></td><td>금토일</td></tr><tr><td>844</td><td>KTX-이음</td><td>14:30</td><td>15:00</td><td></td><td></td><td>15:20</td><td>15:29</td><td>15:51</td><td></td><td></td><td>16:19</td><td>16:39</td><td>매일</td></tr><tr><td>886</td><td>KTX-이음</td><td>16:08</td><td></td><td></td><td></td><td></td><td>16:57</td><td></td><td>17:32</td><td>17:43</td><td>17:49</td><td></td><td>금토일</td></tr><tr><td>888</td><td>KTX-이음</td><td>17:13</td><td></td><td>17:52</td><td>18:02</td><td>18:11</td><td>18:21</td><td></td><td></td><td>19:03</td><td>19:09</td><td></td><td>토일</td></tr><tr><td>846</td><td>KTX-이음</td><td>19:32</td><td>20:02</td><td>20:11</td><td></td><td>20:26</td><td>20:36</td><td>20:58</td><td></td><td>21:22</td><td>21:29</td><td>21:49</td><td>매일</td></tr><tr><td>848</td><td>KTX-이음</td><td>22:00</td><td>22:29</td><td>22:38</td><td>22:47</td><td></td><td>23:02</td><td>23:23</td><td></td><td></td><td>23:52</td><td>0:12</td><td>매일</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 정동진 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>정동진</th><th>묵호</th><th>동해</th><th>삼척</th><th>울진</th><th>영덕</th><th>포항</th><th>경주</th><th>태화강</th><th>부전</th><th>비고</th></tr></thead><tbody><tr><td>752</td><td>KTX-이음</td><td>09:53</td><td>10:13</td><td>10:23</td><td>10:42</td><td>11:09</td><td>11:43</td><td>12:06</td><td>12:32</td><td>12:53</td><td>13:36</td><td>매일</td></tr><tr><td>754</td><td>KTX-이음</td><td>15:12</td><td>15:31</td><td>15:39</td><td>15:56</td><td>16:23</td><td>16:57</td><td>17:20</td><td>17:46</td><td>18:07</td><td>18:50</td><td>매일</td></tr><tr><td>756</td><td>KTX-이음</td><td>18:51</td><td>19:10</td><td>19:18</td><td>19:35</td><td>20:02</td><td>20:36</td><td>20:57</td><td>21:24</td><td>21:46</td><td>22:29</td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>정동진</th><th>묵호</th><th>동해</th><th>삼척</th><th>울진</th><th>후포</th><th>고래불</th><th>영덕</th><th>포항</th><th>서경주</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th></tr></thead><tbody><tr><td>1822</td><td>ITX-마음</td><td>06:02</td><td>06:21</td><td>06:30</td><td>06:47</td><td>07:22</td><td>07:48</td><td>07:57</td><td>08:13</td><td>08:38</td><td>08:58</td><td>09:11</td><td>09:31</td><td>09:39</td><td>10:01</td><td>10:22</td><td>10:32</td><td>10:39</td><td>10:49</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 정동진 → 도착 : 동대구</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>정동진</th><th>묵호</th><th>동해</th><th>삼척해변</th><th>삼척</th><th>근덕</th><th>임원</th><th>옥원</th><th>흥부</th><th>죽변</th><th>울진</th><th>매화</th><th>기성</th><th>평해</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>강구</th><th>장사</th><th>월포</th><th>포항</th><th>안강</th><th>서경주</th><th>아화</th><th>영천</th><th>하양</th><th>동대구</th><th>비 고</th></tr></thead><tbody><tr><td>1852</td><td>누리로</td><td>06:47</td><td>07:11</td><td>07:21</td><td></td><td>07:45</td><td>07:57</td><td>08:06</td><td>08:13</td><td>08:23</td><td>08:30</td><td>08:38</td><td>08:48</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>월화수목금</td></tr><tr><td>1862</td><td>누리로</td><td>06:47</td><td>07:11</td><td>07:21</td><td>07:35</td><td>07:45</td><td>07:57</td><td>08:06</td><td>08:13</td><td>08:23</td><td>08:30</td><td>08:38</td><td>08:48</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>토일</td></tr><tr><td>1854</td><td>누리로</td><td>09:11</td><td>09:30</td><td>09:39</td><td></td><td>10:01</td><td></td><td>10:19</td><td>10:28</td><td>10:38</td><td>10:45</td><td>10:53</td><td></td><td></td><td></td><td>11:20</td><td>11:33</td><td>11:41</td><td>11:52</td><td>11:59</td><td>12:04</td><td>12:13</td><td>12:26</td><td>12:40</td><td>12:51</td><td>13:08</td><td>13:19</td><td>13:29</td><td>13:45</td><td>월화수목금</td></tr><tr><td>1864</td><td>누리로</td><td>09:11</td><td>09:30</td><td>09:39</td><td>09:52</td><td>10:01</td><td></td><td>10:19</td><td>10:28</td><td>10:38</td><td>10:45</td><td>10:53</td><td></td><td></td><td></td><td>11:20</td><td>11:33</td><td>11:41</td><td>11:52</td><td>11:59</td><td>12:04</td><td>12:13</td><td>12:26</td><td>12:40</td><td>12:51</td><td>13:08</td><td>13:19</td><td>13:29</td><td>13:45</td><td>토일</td></tr><tr><td>1866</td><td>누리로</td><td>12:47</td><td>13:07</td><td>13:15</td><td></td><td>13:33</td><td>13:46</td><td>13:55</td><td>14:02</td><td>14:12</td><td>14:19</td><td>14:27</td><td>14:37</td><td>14:49</td><td></td><td>15:01</td><td>15:09</td><td></td><td>15:25</td><td></td><td>15:39</td><td>15:47</td><td>15:59</td><td>16:13</td><td>16:23</td><td>16:41</td><td>16:52</td><td>17:02</td><td>17:18</td><td></td></tr><tr><td>1824</td><td>ITX-마음</td><td>20:15</td><td>20:34</td><td>20:42</td><td></td><td>20:59</td><td></td><td></td><td></td><td></td><td></td><td>21:36</td><td></td><td>21:55</td><td></td><td></td><td></td><td></td><td>22:25</td><td></td><td></td><td>22:42</td><td>22:53</td><td></td><td>23:13</td><td></td><td>23:38</td><td>23:48</td><td>00:04</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>정동진역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '정동진'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">정동진역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">정동진역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '32010';
            let curName = '정동진';
            let altCity = '';
            let altName = '';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">정동진역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">11℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 구름많음</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">20%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">정동진역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%A0%95%EB%8F%99%EC%A7%84+%EA%B3%A0%EA%B8%B0%EB%9E%91%EC%A1%B0%EA%B0%9C%EB%9E%91+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EA%B0%95%EB%A6%89%EC%8B%9C+%EA%B0%95%EB%8F%99%EB%A9%B4+%EC%A0%95%EB%8F%99%EC%A7%84%EB%A6%AC+136-15" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">정동진 고기랑조개랑</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;육류,고기요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 강릉시 강동면 정동진리 136-15</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%8D%AC%ED%95%9C%EC%8B%9D+%EC%A0%95%EB%8F%99%EC%A7%84+%EB%B3%B8%EC%A0%90+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EA%B0%95%EB%A6%89%EC%8B%9C+%EA%B0%95%EB%8F%99%EB%A9%B4+%EC%A0%95%EB%8F%99%EC%A7%84%EB%A6%AC+296-7+%EC%8D%AC%ED%95%9C%EC%8B%9D" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">썬한식 정동진 본점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;한식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 강릉시 강동면 정동진리 296-7 썬한식</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%A0%95%EB%8F%99%EC%A7%84%ED%95%AD%EA%B5%AC%ED%9A%8C%EC%84%BC%ED%83%80+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EA%B0%95%EB%A6%89%EC%8B%9C+%EA%B0%95%EB%8F%99%EB%A9%B4+%EC%A0%95%EB%8F%99%EC%A7%84%EB%A6%AC+20-3" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">정동진항구회센타</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;생선회</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 강릉시 강동면 정동진리 20-3</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%9D%B4%EB%94%94%EC%95%BC%EC%BB%A4%ED%94%BC+%EC%A0%95%EB%8F%99%EC%A7%84%EC%97%AD%EC%A0%90+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EA%B0%95%EB%A6%89%EC%8B%9C+%EA%B0%95%EB%8F%99%EB%A9%B4+%EC%A0%95%EB%8F%99%EC%A7%84%EB%A6%AC+328-13" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">이디야커피 정동진역점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;카페</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 강릉시 강동면 정동진리 328-13</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%A0%95%EB%8F%99%EC%A7%84%EC%97%AD%EC%A3%BC%EC%8B%9D%ED%8F%AC%EC%B0%A8+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EA%B0%95%EB%A6%89%EC%8B%9C+%EA%B0%95%EB%8F%99%EB%A9%B4+%EC%A0%95%EB%8F%99%EC%A7%84%EB%A6%AC+312-2" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">정동진역주식포차</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;한식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 강릉시 강동면 정동진리 312-2</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">정동진역 실시간 주차장 요금</h4>
        
                    <div class="parking-list-container">
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 정동진역                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">600원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">200원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">10,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 강원도 강릉시 강동면 정동진리 303<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 031-523-2353                        </div>
                    </div>
                            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">정동진역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 강원도 강릉시 강동면 정동진리 303</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:031-523-2353" style="color: #0052a4; font-weight: bold; text-decoration: none;">031-523-2353</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%A0%95%EB%8F%99%EC%A7%84%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/02/정동진역-KTX-이음-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="정동진역-KTX-이음-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-18974" srcset="https://krailroad.co.kr/wp-content/uploads/2026/02/정동진역-KTX-이음-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/02/정동진역-KTX-이음-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/02/정동진역-KTX-이음-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>묵호역 기차 시간표 상하행 KTX-이음 ITX-마음 누리로 도째비골 논골담길 여행 요금 노선</title>
		<link>https://krailroad.co.kr/%eb%ac%b5%ed%98%b8%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%83%81%ed%95%98%ed%96%89-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%eb%8f%84%ec%a7%b8/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Thu, 26 Feb 2026 00:15:46 +0000</pubDate>
				<category><![CDATA[KTX 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[묵호역 기차]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=18923</guid>

					<description><![CDATA[동해의 분위기를 가장 가까이에서 품고 있는 묵호역 기차는 이제 단순한 간이역의 정취를 넘어, 수도권과 강원도를 잇는 핵심 기점으로 자리 잡았습니다. 과거의 투박한 항구 도시 이미지는 온데간데없고, 서울역에서 묵호역까지 단숨에 연결되는 KTX의 개통과 함께 젊은 여행자들의 활기가 넘치는 동해선 묵호역으로 거듭났는데요. 이번 자료는 공공데이터의 노선망 분석과 실시간 운행 현황을 토대로 작성되었으며, 서울, 청량리역에서 묵호역을 거쳐 강릉이나 ... <a title="묵호역 기차 시간표 상하행 KTX-이음 ITX-마음 누리로 도째비골 논골담길 여행 요금 노선" class="read-more button" href="https://krailroad.co.kr/%eb%ac%b5%ed%98%b8%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%83%81%ed%95%98%ed%96%89-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%eb%8f%84%ec%a7%b8/" aria-label="묵호역 기차 시간표 상하행 KTX-이음 ITX-마음 누리로 도째비골 논골담길 여행 요금 노선 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">동해의 분위기를 가장 가까이에서 품고 있는 묵호역 기차는 이제 단순한 간이역의 정취를 넘어, 수도권과 강원도를 잇는 핵심 기점으로 자리 잡았습니다. 과거의 투박한 항구 도시 이미지는 온데간데없고, 서울역에서 묵호역까지 단숨에 연결되는 KTX의 개통과 함께 젊은 여행자들의 활기가 넘치는 동해선 묵호역으로 거듭났는데요.</p>



<p class="wp-block-paragraph">이번 자료는 <a href="https://www.data.go.kr/index.do" target="_blank" rel="noopener">공공데이터</a>의 노선망 분석과 실시간 운행 현황을 토대로 작성되었으며, 서울, 청량리역에서 묵호역을 거쳐 강릉이나 포항, 태화강, 부전, 부산으로 향하는 분들을 위해 쓸수 있는 정보를 담았습니다. 기차 창밖으로 펼쳐지는 쪽빛 바다를 감상하며 떠나는 여행, 그 중심에 있는 묵호역 기차 시간표와 주변 인프라를 상세히 안내해 드립니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">묵호역 KTX·ITX·누리로 이용 안내</h2>



<h3 class="wp-block-heading">묵호역 기차, <strong><strong>수도권을 잇는 철도</strong></strong></h3>



<p class="wp-block-paragraph">묵호역 KTX의 도입은 강원도 동해안 여행의 패러다임을 바꿨습니다. 묵호역 누리로와 ITX-마음이 지역 간의 촘촘한 연결을 담당한다면, KTX는 서울 중심부와 포항, 부전, 부산의 시간적 거리를 획기적으로 좁혀주었는데요. 특히 묵호역에서 강릉역으로 짧은 기차 여행을 즐기려는 분들이나, 부전, 부산 방면인 남쪽으로 내려가려는 이용객들을 위한 묵호역 버스 정보와 연계 교통망도 역 광장을 중심으로 잘 갖춰져 있어 혼행 여행자들에게도 더할 나위 없는 철도 시스템입니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading"><strong>현지 분위기를 느끼는 역사 주변</strong></h3>



<p class="wp-block-paragraph">묵호역 기차 이용후 역에서 내리자마자 가장 먼저 고려하게 되는 묵호역 주차장 시설은 자차 이용객들에게도 쾌적한 접근성을 제공하며, 대중교통 이용이 어려운 명소까지 편리하게 이동할 수 있는 묵호역 렌트카 서비스도 역 근처에서 쉽게 이용할 수 있습니다. 묵호역 시간표에 맞춰 역에 도착한 후, 짐을 가볍게 맡기고 본격적인 묵호 탐방에 나서기만 하면 됩니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">논골담길부터 도째비골까지</h3>



<p class="wp-block-paragraph">묵호역 기차 이용후 역사 기점의 여행은 발길 닿는 곳마다 그림 같은 풍경을 보실 수 있으며, 가파른 골목마다 주민들의 삶과 예술이 녹아든 논골담길을 따라 오르면 탁 트인 동해를 조망할 수 있는 묵호등대에 닿게 됩니다. 그리고 최근 가장 핫한 명소로 꼽히는 도째비골 스카이밸리와 바다 위를 걷는 듯한 해랑전망대 역시 역에서 멀지 않은 곳에 위치해 있어 동해 방문시 가볼만한곳으로도 괜찮습니다.<br><br>그리고 조금 더 여유를 즐기길 원한다면 투명한 바다가 매력적인 어달해변이나 망상해수욕장 근처역으로서의 지리적 이점을 활용해 인근 해변을 순회해 보는 것도 좋습니다. 왜냐 하면 주변에 활기 넘치는 묵호항의 모습과 정겨운 묵호중앙시장의 풍경감상 하실 수 있기 때문입니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>묵호역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">묵호<br>↓<br>평창</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">840호</span><div class="time-display">7:12</div><div class="arrival-info">8:11 도착</div></td><td><span class="train-detail">848호</span><div class="time-display">21:39</div><div class="arrival-info">22:38 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">묵호<br>↓<br>청량리</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">840호</span><div class="time-display">7:12</div><div class="arrival-info">9:29 도착</div></td><td><span class="train-detail">848호</span><div class="time-display">21:39</div><div class="arrival-info">23:52 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">묵호<br>↓<br>서울</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">840호</span><div class="time-display">7:12</div><div class="arrival-info">9:49 도착</div></td><td><span class="train-detail">848호</span><div class="time-display">21:39</div><div class="arrival-info">0:12 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">묵호<br>↓<br>강릉</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">751호</span><div class="time-display">11:06</div><div class="arrival-info">11:40 도착</div></td><td><span class="train-detail">755호</span><div class="time-display">22:59</div><div class="arrival-info">23:32 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">묵호<br>↓<br>강릉</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1821호</span><div class="time-display">18:50</div><div class="arrival-info">19:27 도착</div></td><td><span class="train-detail">1831호</span><div class="time-display">18:50</div><div class="arrival-info">19:27 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">10:33</div><div class="arrival-info">11:12 도착</div></td><td><span class="train-detail">1865호</span><div class="time-display">22:37</div><div class="arrival-info">23:13 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">묵호<br>↓<br>포항</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1824호</span><div class="time-display">20:34</div><div class="arrival-info">22:53 도착</div></td><td><span class="train-detail">1824호</span><div class="time-display">20:34</div><div class="arrival-info">22:53 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">07:11</div><div class="arrival-info">10:17 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">13:07</div><div class="arrival-info">15:59 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">묵호<br>↓<br>서경주</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1824호</span><div class="time-display">20:34</div><div class="arrival-info">23:13 도착</div></td><td><span class="train-detail">1824호</span><div class="time-display">20:34</div><div class="arrival-info">23:13 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">07:11</div><div class="arrival-info">10:40 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">13:07</div><div class="arrival-info">16:23 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">묵호<br>↓<br>동대구</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1824호</span><div class="time-display">20:34</div><div class="arrival-info">00:04 도착</div></td><td><span class="train-detail">1824호</span><div class="time-display">20:34</div><div class="arrival-info">00:04 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">07:11</div><div class="arrival-info">11:36 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">13:07</div><div class="arrival-info">17:18 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">묵호<br>↓<br>영덕</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">752호</span><div class="time-display">10:13</div><div class="arrival-info">11:43 도착</div></td><td><span class="train-detail">756호</span><div class="time-display">19:10</div><div class="arrival-info">20:36 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">묵호<br>↓<br>포항</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">752호</span><div class="time-display">10:13</div><div class="arrival-info">12:06 도착</div></td><td><span class="train-detail">756호</span><div class="time-display">19:10</div><div class="arrival-info">20:57 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">묵호<br>↓<br>경주</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">752호</span><div class="time-display">10:13</div><div class="arrival-info">12:32 도착</div></td><td><span class="train-detail">756호</span><div class="time-display">19:10</div><div class="arrival-info">21:24 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">묵호<br>↓<br>부전</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">752호</span><div class="time-display">10:13</div><div class="arrival-info">13:36 도착</div></td><td><span class="train-detail">756호</span><div class="time-display">19:10</div><div class="arrival-info">22:29 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">묵호<br>↓<br>태화강</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1822호</span><div class="time-display">06:21</div><div class="arrival-info">09:39 도착</div></td><td><span class="train-detail">1822호</span><div class="time-display">06:21</div><div class="arrival-info">09:39 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">묵호<br>↓<br>북울산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1822호</span><div class="time-display">06:21</div><div class="arrival-info">09:31 도착</div></td><td><span class="train-detail">1822호</span><div class="time-display">06:21</div><div class="arrival-info">09:31 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">묵호<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1822호</span><div class="time-display">06:21</div><div class="arrival-info">10:49 도착</div></td><td><span class="train-detail">1822호</span><div class="time-display">06:21</div><div class="arrival-info">10:49 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>묵호</strong>역 KTX·</strong>ITX·누리로<strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>경유지</th><th>운임</th><th>일반</th><th>우등</th></tr></thead><tbody><tr><td>강릉K1</td><td>KTX</td><td class="highlight">서울</td><td class="highlight">묵호</td><td>기본</td><td>0</td><td>30,700</td><td>36,800</td></tr><tr><td>강릉K1</td><td>KTX</td><td class="highlight">청량리</td><td class="highlight">묵호</td><td>기본</td><td>0</td><td>29,100</td><td>34,900</td></tr><tr><td>강릉K1</td><td>KTX</td><td class="highlight">평창</td><td class="highlight">묵호</td><td>기본</td><td>0</td><td>11,000</td><td>14,000</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">묵호</td><td class="highlight">경주</td><td>-</td><td>21,100</td><td>0</td><td>0</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">묵호</td><td class="highlight">경주</td><td>기본</td><td>0</td><td>30,200</td><td>36,200</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">묵호</td><td class="highlight">동대구</td><td>-</td><td>26,300</td><td>0</td><td>0</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">묵호</td><td class="highlight">동대구</td><td>-</td><td>18,800</td><td>0</td><td>0</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">묵호</td><td>-</td><td>4,800</td><td>0</td><td>0</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">묵호</td><td>-</td><td>4,800</td><td>0</td><td>0</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">강릉</td><td class="highlight">묵호</td><td>기본</td><td>0</td><td>8,400</td><td>11,400</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">강릉</td><td class="highlight">묵호</td><td>-</td><td>2,600</td><td>0</td><td>0</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">묵호</td><td class="highlight">태화강</td><td>-</td><td>25,100</td><td>0</td><td>0</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">묵호</td><td class="highlight">태화강</td><td>기본</td><td>0</td><td>36,100</td><td>43,300</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">묵호</td><td class="highlight">북울산</td><td>-</td><td>24,200</td><td>0</td><td>0</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">묵호</td><td class="highlight">부전</td><td>-</td><td>31,200</td><td>0</td><td>0</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">묵호</td><td class="highlight">부전</td><td>기본</td><td>0</td><td>42,700</td><td>51,200</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>묵호역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <s>동해역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%eb%ac%b5%ed%98%b8%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%83%81%ed%95%98%ed%96%89-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%eb%8f%84%ec%a7%b8/">묵호역 KTX, ITX-마음 누리로 시간표</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>묵호역 <strong>KTX·ITX·누리로 </strong>시간표</strong></h2>



<h3 class="wp-block-heading">출발 : 묵호 → 도착 : 강릉</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>묵호</th><th>정동진</th><th>강릉</th><th>비고</th></tr></thead><tbody><tr><td>751</td><td>KTX-이음</td><td>11:06</td><td>11:26</td><td>11:40</td><td>매일</td></tr><tr><td>753</td><td>KTX-이음</td><td>17:15</td><td>17:36</td><td>17:51</td><td>매일</td></tr><tr><td>755</td><td>KTX-이음</td><td>22:59</td><td>23:18</td><td>23:32</td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>묵호</th><th>정동진</th><th>강릉</th><th>비 고</th></tr></thead><tbody><tr><td>1851</td><td>누리로</td><td>10:33</td><td>10:55</td><td>11:12</td><td>월화수목금</td></tr><tr><td>1861</td><td>누리로</td><td>10:33</td><td>10:55</td><td>11:12</td><td>토일</td></tr><tr><td>1853</td><td>누리로</td><td>16:24</td><td>16:45</td><td>17:00</td><td>월화수목금</td></tr><tr><td>1863</td><td>누리로</td><td>16:24</td><td>16:45</td><td>17:00</td><td>토일</td></tr><tr><td>1821</td><td>ITX-마음</td><td>18:50</td><td>19:12</td><td>19:27</td><td>월화수목금</td></tr><tr><td>1831</td><td>ITX-마음</td><td>18:50</td><td>19:12</td><td>19:27</td><td>토일</td></tr><tr><td>1865</td><td>누리로</td><td>22:37</td><td>22:58</td><td>23:13</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 묵호 → 도착 : 청량리<strong><strong>·</strong></strong>서울</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>묵호</th><th>정동진</th><th>진부(오대산)</th><th>평창</th><th>둔내</th><th>횡성</th><th>만종</th><th>양평</th><th>덕소</th><th>상봉</th><th>청량리</th><th>서울</th><th>비고</th></tr></thead><tbody><tr><td>840</td><td>KTX-이음</td><td>7:12</td><td>7:33</td><td>8:03</td><td>8:11</td><td>8:21</td><td></td><td>8:36</td><td>8:58</td><td></td><td>9:22</td><td>9:29</td><td>9:49</td><td>매일</td></tr><tr><td>842</td><td>KTX-이음</td><td>10:11</td><td>10:32</td><td></td><td>11:06</td><td>11:16</td><td></td><td>11:31</td><td>11:53</td><td></td><td>12:17</td><td>12:23</td><td></td><td>매일</td></tr><tr><td>884</td><td>KTX-이음</td><td>12:28</td><td>12:49</td><td></td><td></td><td></td><td></td><td>13:43</td><td></td><td></td><td>14:25</td><td>14:31</td><td></td><td>금토일</td></tr><tr><td>844</td><td>KTX-이음</td><td>14:10</td><td>14:30</td><td>15:00</td><td></td><td></td><td>15:20</td><td>15:29</td><td>15:51</td><td></td><td></td><td>16:19</td><td>16:39</td><td>매일</td></tr><tr><td>886</td><td>KTX-이음</td><td>15:48</td><td>16:08</td><td></td><td></td><td></td><td></td><td>16:57</td><td></td><td>17:32</td><td>17:43</td><td>17:49</td><td></td><td>금토일</td></tr><tr><td>888</td><td>KTX-이음</td><td>16:52</td><td>17:13</td><td></td><td>17:52</td><td>18:02</td><td>18:11</td><td>18:21</td><td></td><td></td><td>19:03</td><td>19:09</td><td></td><td>토일</td></tr><tr><td>846</td><td>KTX-이음</td><td>19:11</td><td>19:32</td><td>20:02</td><td>20:11</td><td></td><td>20:26</td><td>20:36</td><td>20:58</td><td></td><td>21:22</td><td>21:29</td><td>21:49</td><td>매일</td></tr><tr><td>848</td><td>KTX-이음</td><td>21:39</td><td>22:00</td><td>22:29</td><td>22:38</td><td>22:47</td><td></td><td>23:02</td><td>23:23</td><td></td><td></td><td>23:52</td><td>0:12</td><td>매일</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 묵호 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>묵호</th><th>동해</th><th>삼척</th><th>울진</th><th>영덕</th><th>포항</th><th>경주</th><th>태화강</th><th>부전</th><th>비고</th></tr></thead><tbody><tr><td>752</td><td>KTX-이음</td><td>10:13</td><td>10:23</td><td>10:42</td><td>11:09</td><td>11:43</td><td>12:06</td><td>12:32</td><td>12:53</td><td>13:36</td><td>매일</td></tr><tr><td>754</td><td>KTX-이음</td><td>15:31</td><td>15:39</td><td>15:56</td><td>16:23</td><td>16:57</td><td>17:20</td><td>17:46</td><td>18:07</td><td>18:50</td><td>매일</td></tr><tr><td>756</td><td>KTX-이음</td><td>19:10</td><td>19:18</td><td>19:35</td><td>20:02</td><td>20:36</td><td>20:57</td><td>21:24</td><td>21:46</td><td>22:29</td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>묵호</th><th>동해</th><th>삼척</th><th>울진</th><th>후포</th><th>고래불</th><th>영덕</th><th>포항</th><th>서경주</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th></tr></thead><tbody><tr><td>1822</td><td>ITX-마음</td><td>06:21</td><td>06:30</td><td>06:47</td><td>07:22</td><td>07:48</td><td>07:57</td><td>08:13</td><td>08:38</td><td>08:58</td><td>09:11</td><td>09:31</td><td>09:39</td><td>10:01</td><td>10:22</td><td>10:32</td><td>10:39</td><td>10:49</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 묵호 → 도착 : 동대구</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>묵호</th><th>동해</th><th>삼척해변</th><th>삼척</th><th>근덕</th><th>임원</th><th>옥원</th><th>흥부</th><th>죽변</th><th>울진</th><th>매화</th><th>기성</th><th>평해</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>강구</th><th>장사</th><th>월포</th><th>포항</th><th>안강</th><th>서경주</th><th>아화</th><th>영천</th><th>하양</th><th>동대구</th><th>비 고</th></tr></thead><tbody><tr><td>1852</td><td>누리로</td><td>07:11</td><td>07:21</td><td></td><td>07:45</td><td>07:57</td><td>08:06</td><td>08:13</td><td>08:23</td><td>08:30</td><td>08:38</td><td>08:48</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>월화수목금</td></tr><tr><td>1862</td><td>누리로</td><td>07:11</td><td>07:21</td><td>07:35</td><td>07:45</td><td>07:57</td><td>08:06</td><td>08:13</td><td>08:23</td><td>08:30</td><td>08:38</td><td>08:48</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>토일</td></tr><tr><td>1854</td><td>누리로</td><td>09:30</td><td>09:39</td><td></td><td>10:01</td><td></td><td>10:19</td><td>10:28</td><td>10:38</td><td>10:45</td><td>10:53</td><td></td><td></td><td></td><td>11:20</td><td>11:33</td><td>11:41</td><td>11:52</td><td>11:59</td><td>12:04</td><td>12:13</td><td>12:26</td><td>12:40</td><td>12:51</td><td>13:08</td><td>13:19</td><td>13:29</td><td>13:45</td><td>월화수목금</td></tr><tr><td>1864</td><td>누리로</td><td>09:30</td><td>09:39</td><td>09:52</td><td>10:01</td><td></td><td>10:19</td><td>10:28</td><td>10:38</td><td>10:45</td><td>10:53</td><td></td><td></td><td></td><td>11:20</td><td>11:33</td><td>11:41</td><td>11:52</td><td>11:59</td><td>12:04</td><td>12:13</td><td>12:26</td><td>12:40</td><td>12:51</td><td>13:08</td><td>13:19</td><td>13:29</td><td>13:45</td><td>토일</td></tr><tr><td>1866</td><td>누리로</td><td>13:07</td><td>13:15</td><td></td><td>13:33</td><td>13:46</td><td>13:55</td><td>14:02</td><td>14:12</td><td>14:19</td><td>14:27</td><td>14:37</td><td>14:49</td><td></td><td>15:01</td><td>15:09</td><td></td><td>15:25</td><td></td><td>15:39</td><td>15:47</td><td>15:59</td><td>16:13</td><td>16:23</td><td>16:41</td><td>16:52</td><td>17:02</td><td>17:18</td><td></td></tr><tr><td>1824</td><td>ITX-마음</td><td>20:34</td><td>20:42</td><td></td><td>20:59</td><td></td><td></td><td></td><td></td><td></td><td>21:36</td><td></td><td>21:55</td><td></td><td></td><td></td><td></td><td>22:25</td><td></td><td></td><td>22:42</td><td>22:53</td><td></td><td>23:13</td><td></td><td>23:38</td><td>23:48</td><td>00:04</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>묵호역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '묵호'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">묵호역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">묵호역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '32030';
            let curName = '묵호';
            let altCity = '';
            let altName = '';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">묵호역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">14℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 구름많음</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">20%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">묵호역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EA%B1%B0%EB%8F%99%ED%83%95%EC%88%98%EC%9C%A1+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EB%8F%99%ED%95%B4%EC%8B%9C+%EB%AC%B5%ED%98%B8%EC%A7%84%EB%8F%99+13+%EA%B1%B0%EB%8F%99%ED%83%95%EC%88%98%EC%9C%A1" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">거동탕수육</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">중식&gt;중식당</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 동해시 묵호진동 13 거동탕수육</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%A0%95%ED%9B%88%EC%88%98%EC%82%B0+%EB%B3%B8%EC%A0%90+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EB%8F%99%ED%95%B4%EC%8B%9C+%EB%AC%B5%ED%98%B8%EC%A7%84%EB%8F%99+2-2+1%EC%B8%B5+13%ED%98%B8" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">정훈수산 본점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">해물,생선요리&gt;대게요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 동해시 묵호진동 2-2 1층 13호</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%8F%99%ED%95%B4%EA%B0%80%EB%A6%AC%EB%B9%84+%EB%B3%B8%EC%A0%90+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EB%8F%99%ED%95%B4%EC%8B%9C+%EB%AC%B5%ED%98%B8%EC%A7%84%EB%8F%99+2-1+105%ED%98%B8" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">동해가리비 본점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;조개요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 동해시 묵호진동 2-1 105호</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%93%B1%EB%8C%80%EC%B9%B4%ED%8E%98+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EB%8F%99%ED%95%B4%EC%8B%9C+%EB%AC%B5%ED%98%B8%EC%A7%84%EB%8F%99+2-221" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">등대카페</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;카페</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 동해시 묵호진동 2-221</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%98%A8%EB%8B%A4+%EB%8F%99%ED%95%B4%EB%AC%B5%ED%98%B8%EB%B3%B8%EC%A0%90+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EB%8F%99%ED%95%B4%EC%8B%9C+%EB%AC%B5%ED%98%B8%EC%A7%84%EB%8F%99+2-2+%EC%98%A8%EB%8B%A4" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">온다 동해묵호본점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;한식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 동해시 묵호진동 2-2 온다</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">묵호역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">묵호역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 묵호역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EB%AC%B5%ED%98%B8%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/02/묵호역-기차-시간표-KTX-이음-ITX-마음-누리로-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="묵호역-기차-시간표-KTX-이음-ITX-마음-누리로-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-18976" srcset="https://krailroad.co.kr/wp-content/uploads/2026/02/묵호역-기차-시간표-KTX-이음-ITX-마음-누리로-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/02/묵호역-기차-시간표-KTX-이음-ITX-마음-누리로-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/02/묵호역-기차-시간표-KTX-이음-ITX-마음-누리로-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>동해역 기차 시간표 KTX-이음 ITX-마음 누리로 무릉계곡 망상해수욕장 아이들과 기차 여행</title>
		<link>https://krailroad.co.kr/%eb%8f%99%ed%95%b4%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%eb%ac%b4%eb%a6%89%ea%b3%84%ea%b3%a1-%eb%a7%9d/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Mon, 23 Feb 2026 06:52:12 +0000</pubDate>
				<category><![CDATA[KTX 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[동해역 기차 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=18851</guid>

					<description><![CDATA[강원도 철도 교통의 핵심 거점인 동해역이 동해선 완전 개통과 맞물려 영남과 수도권을 잇는 독보적인 허브로 급부상하고 있습니다. 그동안 동해안 북단으로 향하는 길목에서 중요한 역할을 했던 동해역 기차 시간표가, 이제 포항 삼척 동해선 노선의 연결로 인해 동해안 전체를 관통하는 동해안 종주 기차 여행의 중심축이 되었습니다. 단순한 경유지를 넘어 동해안 일주 기차 여행의 시작점이 된 이곳의 최신 ... <a title="동해역 기차 시간표 KTX-이음 ITX-마음 누리로 무릉계곡 망상해수욕장 아이들과 기차 여행" class="read-more button" href="https://krailroad.co.kr/%eb%8f%99%ed%95%b4%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%eb%ac%b4%eb%a6%89%ea%b3%84%ea%b3%a1-%eb%a7%9d/" aria-label="동해역 기차 시간표 KTX-이음 ITX-마음 누리로 무릉계곡 망상해수욕장 아이들과 기차 여행 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">강원도 철도 교통의 핵심 거점인 동해역이 동해선 완전 개통과 맞물려 영남과 수도권을 잇는 독보적인 허브로 급부상하고 있습니다. 그동안 동해안 북단으로 향하는 길목에서 중요한 역할을 했던 동해역 기차 시간표가, 이제 포항 삼척 동해선 노선의 연결로 인해 동해안 전체를 관통하는 동해안 종주 기차 여행의 중심축이 되었습니다.</p>



<p class="wp-block-paragraph">단순한 경유지를 넘어 동해안 일주 기차 여행의 시작점이 된 이곳의 최신 데이터를 정리했습니다. 서울역에서 동해역까지의 직행 노선은 물론, 청량리 동해역, 그리고 동해 강릉, 동해 포항, 동해 영덕, 동해 부전까지 KTX 이용 정보를 실시간 운영 현황을 토대로 정리했으니 강원도 당일치기 기차 여행을 계획하는 분들께 <a href="https://www.data.go.kr/index.do" target="_blank" rel="noopener">공공데이터</a> API 연동에 의한 시간표와 요금을 이용하실 수 있도록 자료를 수집하였습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">동해역 KTX·ITX·누리로 이용 안내</h2>



<h3 class="wp-block-heading"><strong><strong>강원과 영남, 수도권을 잇는 철도</strong></strong></h3>



<p class="wp-block-paragraph">동해역 KTX는 수도권 접근성을 획기적으로 개선하며 강원 남부권의 이동권을 넓혔습니다. 서울에서 출발해 강릉을 거쳐 내려오거나 <a href="https://krailroad.co.kr/%ed%8f%ac%ed%95%ad%ec%97%ad-ktx-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%84%9c%ec%9a%b8%c2%b7%eb%8c%80%ec%a0%84%c2%b7%eb%8f%99%eb%8c%80%ea%b5%ac-%eb%b0%8f-%ea%b0%95%eb%a6%89%c2%b7%eb%b6%80%ec%a0%84%ed%96%89/">포항</a>에서 <a href="https://krailroad.co.kr/%ec%82%bc%ec%b2%99%ec%97%ad-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%a3%bd%ec%84%9c%eb%a3%a8%ec%99%80-%ec%82%bc%ec%b2%99%ed%95%b4/">삼척</a>을 지나 올라오는 모든 수요가 이곳에서 만나며, 동해역 누리로와 무궁화호가 촘촘하게 배차되어 인근 지역으로의 연결이 편리해졌으며, 동해역 기차 시간표를 이용해서 강릉역으로 향하거나 아니면 삼척 방향으로 이동하는 환승객들을 위해 동해역 버스 환승 시스템과 연계 교통망이 최적화되어 있어 뚜벅이 여행자들에게도 매우 편리한 환경을 제공하고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading"><strong>동해역 기차 시간표, 그리고 환승</strong></h3>



<p class="wp-block-paragraph">동해선 철길이 하나로 이어지며 동해역 기차 시간표 역시 한층 다양해졌는데, 장거리 이동을 위한 KTX-이음뿐만 아니라, 지역 간을 세밀하게 연결하는 동해역 누리로와 ITX-마음이 수시로 교차하며, 과거 동해역 바다열차의 낭만을 기억하는 이들을 위해 창밖 절경을 오롯이 감상할 수 있는 노선들이 상시 운영 중입니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">동해역에서 시작하는 로컬 탐방</h3>



<p class="wp-block-paragraph">동해역 광장을 나서면 동해안의 숨겨진 보석들이 지척에 있습니다. 동해역 기차 시간표를 이용해 도착하면, 역에서 가까운 한섬해변은 산책로가 잘 정비되어 있어 가벼운 산책을 즐기기 좋으며, 조금만 이동하면 망상해수욕장의 광활한 백사장과 마주하게 됩니다. 특히 추암 촛대바위 근처역으로서의 상징성 덕분에 일출 여행객들의 발길이 끊이지 않으며, 기암괴석이 장관인 무릉계곡으로 향하는 베이스캠프로서도 손색이 없을 정도입니다.<br><br>또 역 주변에는 여행객의 발이 되어줄 동해역 렌트카 업체들이 밀집해 있어 넓은 동해시를 효율적으로 둘러볼 수 있습니다. 든든한 한 끼를 책임질 동해역 맛집들과 해안선을 따라 펼쳐지는 동해역 야경은 여행의 마무리까지 완벽하게 채워주며, 자차 이용자를 위한 동해역 주차장 시설 또한 넉넉히 확보되어 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>동해역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">동해<br>↓<br>평창</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">840호</span><div class="time-display">7:05</div><div class="arrival-info">8:11 도착</div></td><td><span class="train-detail">848호</span><div class="time-display">21:32</div><div class="arrival-info">22:38 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">동해<br>↓<br>청량리</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">840호</span><div class="time-display">7:05</div><div class="arrival-info">9:29 도착</div></td><td><span class="train-detail">848호</span><div class="time-display">21:32</div><div class="arrival-info">23:52 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">동해<br>↓<br>서울</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">840호</span><div class="time-display">7:05</div><div class="arrival-info">9:49 도착</div></td><td><span class="train-detail">848호</span><div class="time-display">21:32</div><div class="arrival-info">0:12 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">동해<br>↓<br>강릉</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">751호</span><div class="time-display">10:59</div><div class="arrival-info">11:40 도착</div></td><td><span class="train-detail">755호</span><div class="time-display">22:52</div><div class="arrival-info">23:32 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">동해<br>↓<br>강릉</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1821호</span><div class="time-display">18:42</div><div class="arrival-info">19:27 도착</div></td><td><span class="train-detail">1721호</span><div class="time-display">21:04</div><div class="arrival-info">21:47 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1781호</span><div class="time-display">07:40</div><div class="arrival-info">08:24 도착</div></td><td><span class="train-detail">1865호</span><div class="time-display">22:29</div><div class="arrival-info">23:13 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">동해<br>↓<br>포항</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1824호</span><div class="time-display">20:42</div><div class="arrival-info">22:53 도착</div></td><td><span class="train-detail">1824호</span><div class="time-display">20:42</div><div class="arrival-info">22:53 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">07:21</div><div class="arrival-info">10:17 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">13:15</div><div class="arrival-info">15:59 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">동해<br>↓<br>서경주</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1824호</span><div class="time-display">20:42</div><div class="arrival-info">23:13 도착</div></td><td><span class="train-detail">1824호</span><div class="time-display">20:42</div><div class="arrival-info">23:13 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">07:21</div><div class="arrival-info">10:40 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">13:15</div><div class="arrival-info">16:23 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">동해<br>↓<br>동대구</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1824호</span><div class="time-display">20:42</div><div class="arrival-info">00:04 도착</div></td><td><span class="train-detail">1824호</span><div class="time-display">20:42</div><div class="arrival-info">00:04 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">07:21</div><div class="arrival-info">11:36 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">13:15</div><div class="arrival-info">17:18 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">동해<br>↓<br>영덕</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">752호</span><div class="time-display">10:23</div><div class="arrival-info">11:43 도착</div></td><td><span class="train-detail">756호</span><div class="time-display">19:18</div><div class="arrival-info">20:36 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">동해<br>↓<br>포항</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">752호</span><div class="time-display">10:23</div><div class="arrival-info">12:06 도착</div></td><td><span class="train-detail">756호</span><div class="time-display">19:18</div><div class="arrival-info">20:57 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">동해<br>↓<br>경주</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">752호</span><div class="time-display">10:23</div><div class="arrival-info">12:32 도착</div></td><td><span class="train-detail">756호</span><div class="time-display">19:18</div><div class="arrival-info">21:24 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">동해<br>↓<br>부전</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">752호</span><div class="time-display">10:23</div><div class="arrival-info">13:36 도착</div></td><td><span class="train-detail">756호</span><div class="time-display">19:18</div><div class="arrival-info">22:29 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">동해<br>↓<br>태화강</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1822호</span><div class="time-display">06:30</div><div class="arrival-info">09:39 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">18:03</div><div class="arrival-info">21:34 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">동해<br>↓<br>북울산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1822호</span><div class="time-display">06:30</div><div class="arrival-info">09:31 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">18:03</div><div class="arrival-info">21:26 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">동해<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1822호</span><div class="time-display">06:30</div><div class="arrival-info">10:49 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">18:03</div><div class="arrival-info">22:33 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>동해</strong>역 KTX·</strong>ITX·누리로<strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>경유지</th><th>운임</th><th>일반</th><th>우등</th></tr></thead><tbody><tr><td>강릉K1</td><td>KTX</td><td class="highlight">서울</td><td class="highlight">동해</td><td>기본</td><td>0</td><td>31,300</td><td>37,600</td></tr><tr><td>강릉K1</td><td>KTX</td><td class="highlight">청량리</td><td class="highlight">동해</td><td>기본</td><td>0</td><td>29,700</td><td>35,600</td></tr><tr><td>강릉K1</td><td>KTX</td><td class="highlight">평창</td><td class="highlight">동해</td><td>기본</td><td>0</td><td>11,700</td><td>14,700</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">경주</td><td>-</td><td>20,500</td><td>0</td><td>0</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">동해</td><td class="highlight">경주</td><td>기본</td><td>0</td><td>29,600</td><td>35,500</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">동대구</td><td>-</td><td>25,700</td><td>0</td><td>0</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">동해</td><td class="highlight">동대구</td><td>-</td><td>18,400</td><td>0</td><td>0</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">동해</td><td>-</td><td>4,800</td><td>0</td><td>0</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">동해</td><td>-</td><td>4,800</td><td>0</td><td>0</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">강릉</td><td class="highlight">동해</td><td>기본</td><td>0</td><td>8,400</td><td>11,400</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">강릉</td><td class="highlight">동해</td><td>-</td><td>2,900</td><td>0</td><td>0</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">태화강</td><td>-</td><td>24,600</td><td>0</td><td>0</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">동해</td><td class="highlight">태화강</td><td>기본</td><td>0</td><td>35,500</td><td>42,600</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">북울산</td><td>-</td><td>23,600</td><td>0</td><td>0</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">부전</td><td>-</td><td>30,600</td><td>0</td><td>0</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">동해</td><td class="highlight">부전</td><td>기본</td><td>0</td><td>42,100</td><td>50,500</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>동해역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <a href="https://krailroad.co.kr/%eb%8f%99%ed%95%b4%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%eb%ac%b4%eb%a6%89%ea%b3%84%ea%b3%a1-%eb%a7%9d/">동해역 KTX 시간표 바로가기</a><br>✅ <s>동해역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%eb%8f%99%ed%95%b4%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%eb%ac%b4%eb%a6%89%ea%b3%84%ea%b3%a1-%eb%a7%9d/">동해역 ITX-마음 누리로 시간표</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>동해역 <strong>KTX·ITX·누리로 </strong>시간표</strong></h2>



<h3 class="wp-block-heading">출발 : 동해 → 도착 : 강릉</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>동해</th><th>묵호</th><th>정동진</th><th>강릉</th><th>비고</th></tr></thead><tbody><tr><td>751</td><td>KTX-이음</td><td>10:59</td><td>11:06</td><td>11:26</td><td>11:40</td><td>매일</td></tr><tr><td>753</td><td>KTX-이음</td><td>17:07</td><td>17:15</td><td>17:36</td><td>17:51</td><td>매일</td></tr><tr><td>755</td><td>KTX-이음</td><td>22:52</td><td>22:59</td><td>23:18</td><td>23:32</td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>동해</th><th>묵호</th><th>정동진</th><th>강릉</th><th>비 고</th></tr></thead><tbody><tr><td>1851</td><td>누리로</td><td>10:24</td><td>10:33</td><td>10:55</td><td>11:12</td><td>월화수목금</td></tr><tr><td>1861</td><td>누리로</td><td>10:24</td><td>10:33</td><td>10:55</td><td>11:12</td><td>토일</td></tr><tr><td>1853</td><td>누리로</td><td>16:16</td><td>16:24</td><td>16:45</td><td>17:00</td><td>월화수목금</td></tr><tr><td>1863</td><td>누리로</td><td>16:16</td><td>16:24</td><td>16:45</td><td>17:00</td><td>토일</td></tr><tr><td>1821</td><td>ITX-마음</td><td>18:42</td><td>18:50</td><td>19:12</td><td>19:27</td><td>월화수목금</td></tr><tr><td>1831</td><td>ITX-마음</td><td>18:42</td><td>18:50</td><td>19:12</td><td>19:27</td><td>토일</td></tr><tr><td>1865</td><td>누리로</td><td>22:29</td><td>22:37</td><td>22:58</td><td>23:13</td><td></td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>동해</th><th>묵호</th><th>정동진</th><th>강릉</th></tr></thead><tbody><tr><td>1781</td><td>누리로</td><td>07:40</td><td>07:48</td><td>08:09</td><td>08:24</td></tr><tr><td>1721</td><td>ITX-마음</td><td>21:04</td><td>21:12</td><td>21:32</td><td>21:47</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 동해 → 도착 : 청량리<strong><strong>·</strong></strong>서울</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>동해</th><th>묵호</th><th>정동진</th><th>진부(오대산)</th><th>평창</th><th>둔내</th><th>횡성</th><th>만종</th><th>양평</th><th>덕소</th><th>상봉</th><th>청량리</th><th>서울</th><th>비고</th></tr></thead><tbody><tr><td>840</td><td>KTX-이음</td><td>7:05</td><td>7:12</td><td>7:33</td><td>8:03</td><td>8:11</td><td>8:21</td><td></td><td>8:36</td><td>8:58</td><td></td><td>9:22</td><td>9:29</td><td>9:49</td><td>매일</td></tr><tr><td>842</td><td>KTX-이음</td><td>10:04</td><td>10:11</td><td>10:32</td><td></td><td>11:06</td><td>11:16</td><td></td><td>11:31</td><td>11:53</td><td></td><td>12:17</td><td>12:23</td><td></td><td>매일</td></tr><tr><td>884</td><td>KTX-이음</td><td>12:20</td><td>12:28</td><td>12:49</td><td></td><td></td><td></td><td></td><td>13:43</td><td></td><td></td><td>14:25</td><td>14:31</td><td></td><td>금토일</td></tr><tr><td>844</td><td>KTX-이음</td><td>14:02</td><td>14:10</td><td>14:30</td><td>15:00</td><td></td><td></td><td>15:20</td><td>15:29</td><td>15:51</td><td></td><td></td><td>16:19</td><td>16:39</td><td>매일</td></tr><tr><td>886</td><td>KTX-이음</td><td>15:40</td><td>15:48</td><td>16:08</td><td></td><td></td><td></td><td></td><td>16:57</td><td></td><td>17:32</td><td>17:43</td><td>17:49</td><td></td><td>금토일</td></tr><tr><td>888</td><td>KTX-이음</td><td>16:45</td><td>16:52</td><td>17:13</td><td></td><td>17:52</td><td>18:02</td><td>18:11</td><td>18:21</td><td></td><td></td><td>19:03</td><td>19:09</td><td></td><td>토일</td></tr><tr><td>846</td><td>KTX-이음</td><td>19:04</td><td>19:11</td><td>19:32</td><td>20:02</td><td>20:11</td><td></td><td>20:26</td><td>20:36</td><td>20:58</td><td></td><td>21:22</td><td>21:29</td><td>21:49</td><td>매일</td></tr><tr><td>848</td><td>KTX-이음</td><td>21:32</td><td>21:39</td><td>22:00</td><td>22:29</td><td>22:38</td><td>22:47</td><td></td><td>23:02</td><td>23:23</td><td></td><td></td><td>23:52</td><td>0:12</td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>동해</th><th>신기</th><th>도계</th><th>동백산</th><th>태백</th><th>고한</th><th>사북</th><th>민둥산</th><th>예미</th><th>영월</th><th>쌍룡</th><th>제천</th><th>봉양</th><th>원주</th><th>서원주</th><th>삼산</th><th>양동</th><th>매곡</th><th>일신</th><th>석불</th><th>지평</th><th>용문</th><th>양평</th><th>덕소</th><th>청량리</th></tr></thead><tbody><tr><td>1672</td><td>무궁화</td><td>5:55</td><td></td><td>6:34</td><td></td><td>7:01</td><td>7:17</td><td>7:24</td><td>7:33</td><td>7:54</td><td>8:14</td><td>8:30</td><td>8:48</td><td></td><td>9:13</td><td>9:21</td><td>9:28</td><td>9:33</td><td></td><td>9:41</td><td></td><td>9:48</td><td>9:54</td><td>10:01</td><td>10:18</td><td>10:31</td></tr><tr><td>1642</td><td>ITX-마음</td><td>7:43</td><td></td><td>8:23</td><td></td><td>8:49</td><td></td><td>9:10</td><td>9:19</td><td></td><td>9:58</td><td></td><td>10:31</td><td></td><td>10:55</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td>11:46</td></tr><tr><td>1674</td><td>무궁화</td><td>13:43</td><td></td><td>14:21</td><td>14:37</td><td>14:50</td><td>15:07</td><td>15:14</td><td>15:24</td><td>15:45</td><td>16:05</td><td></td><td>16:37</td><td>16:45</td><td>17:04</td><td>17:12</td><td>17:19</td><td>17:24</td><td>17:28</td><td>17:35</td><td>17:41</td><td>17:50</td><td>17:56</td><td>18:04</td><td>18:21</td><td>18:35</td></tr><tr><td>1676</td><td>무궁화</td><td>15:06</td><td>15:31</td><td>15:48</td><td>16:04</td><td>16:17</td><td>16:32</td><td>16:39</td><td>16:48</td><td>17:09</td><td>17:29</td><td>17:46</td><td>18:02</td><td></td><td>18:27</td><td>18:35</td><td>18:43</td><td>18:53</td><td>18:59</td><td>19:03</td><td>19:08</td><td>19:12</td><td>19:17</td><td>19:25</td><td>19:42</td><td>19:55</td></tr><tr><td>1678</td><td>무궁화</td><td>18:14</td><td></td><td>18:53</td><td></td><td>19:20</td><td>19:36</td><td>19:43</td><td>19:53</td><td>20:14</td><td>20:35</td><td></td><td>21:07</td><td>21:15</td><td>21:34</td><td>21:42</td><td></td><td>21:50</td><td></td><td></td><td></td><td></td><td>22:02</td><td>22:10</td><td>22:27</td><td>22:40</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 동해 → 도착 : 영주</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>동해</th><th>신기</th><th>도계</th><th>동백산</th><th>철암</th><th>석포</th><th>승부</th><th>양원</th><th>분천</th><th>현동</th><th>임기</th><th>춘양</th><th>봉화</th><th>영주</th></tr></thead><tbody><tr><td>1772</td><td>무궁화</td><td>06:08</td><td>06:32</td><td>06:49</td><td>07:05</td><td>07:16</td><td>07:31</td><td>07:42</td><td>07:49</td><td>07:57</td><td>08:06</td><td>08:13</td><td>08:25</td><td>08:49</td><td>09:03</td></tr><tr><td>1774</td><td>무궁화</td><td>11:02</td><td></td><td>11:44</td><td>12:01</td><td>12:13</td><td>12:28</td><td>12:39</td><td>12:46</td><td>12:54</td><td>13:04</td><td>13:12</td><td>13:23</td><td>13:45</td><td>14:00</td></tr><tr><td>1776</td><td>무궁화</td><td>15:54</td><td>16:19</td><td>16:36</td><td>16:52</td><td>17:04</td><td>17:20</td><td>17:31</td><td>17:38</td><td>17:46</td><td>17:55</td><td></td><td>18:12</td><td>18:35</td><td>18:49</td></tr><tr><td>1778</td><td>무궁화</td><td>17:58</td><td></td><td>18:37</td><td>18:53</td><td>19:04</td><td>19:19</td><td>19:30</td><td>19:37</td><td>19:46</td><td>19:56</td><td>20:04</td><td>20:16</td><td>20:40</td><td>21:02</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 동해 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>동해</th><th>삼척</th><th>울진</th><th>영덕</th><th>포항</th><th>경주</th><th>태화강</th><th>부전</th><th>비고</th></tr></thead><tbody><tr><td>752</td><td>KTX-이음</td><td>10:23</td><td>10:42</td><td>11:09</td><td>11:43</td><td>12:06</td><td>12:32</td><td>12:53</td><td>13:36</td><td>매일</td></tr><tr><td>754</td><td>KTX-이음</td><td>15:39</td><td>15:56</td><td>16:23</td><td>16:57</td><td>17:20</td><td>17:46</td><td>18:07</td><td>18:50</td><td>매일</td></tr><tr><td>756</td><td>KTX-이음</td><td>19:18</td><td>19:35</td><td>20:02</td><td>20:36</td><td>20:57</td><td>21:24</td><td>21:46</td><td>22:29</td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>동해</th><th>삼척</th><th>근덕</th><th>임원</th><th>옥원</th><th>흥부</th><th>죽변</th><th>울진</th><th>매화</th><th>기성</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>월포</th><th>포항</th><th>서경주</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th><th>비 고</th></tr></thead><tbody><tr><td>1822</td><td>ITX-마음</td><td>06:30</td><td>06:47</td><td></td><td></td><td></td><td></td><td></td><td>07:22</td><td></td><td></td><td>07:48</td><td>07:57</td><td></td><td>08:13</td><td></td><td>08:38</td><td>08:58</td><td>09:11</td><td>09:31</td><td>09:39</td><td>10:01</td><td>10:22</td><td>10:32</td><td>10:39</td><td>10:49</td><td></td></tr><tr><td>1802</td><td>ITX-마음</td><td>12:12</td><td>12:29</td><td></td><td></td><td></td><td>12:56</td><td>13:04</td><td>13:12</td><td></td><td>13:29</td><td></td><td>13:47</td><td>13:55</td><td>14:06</td><td></td><td>14:32</td><td>14:53</td><td>15:07</td><td>15:26</td><td>15:34</td><td></td><td>16:07</td><td>16:17</td><td></td><td>16:32</td><td></td></tr><tr><td>1814</td><td>ITX-마음</td><td>17:20</td><td>17:40</td><td></td><td></td><td>18:03</td><td>18:13</td><td>18:20</td><td>18:28</td><td>18:39</td><td>18:50</td><td>19:02</td><td>19:11</td><td></td><td>19:27</td><td></td><td>19:52</td><td>20:13</td><td>20:26</td><td>20:46</td><td>20:54</td><td>21:10</td><td>21:31</td><td>21:42</td><td>21:50</td><td>22:00</td><td>월화수목금</td></tr><tr><td>1804</td><td>ITX-마음</td><td>17:20</td><td>17:40</td><td></td><td></td><td>18:03</td><td>18:13</td><td>18:20</td><td>18:28</td><td>18:39</td><td>18:50</td><td>19:02</td><td>19:11</td><td></td><td>19:27</td><td></td><td>19:52</td><td>20:13</td><td>20:26</td><td>20:46</td><td>20:54</td><td>21:10</td><td>21:31</td><td>21:42</td><td>21:50</td><td>22:00</td><td>토일</td></tr><tr><td>1806</td><td>ITX-마음</td><td>18:03</td><td>18:21</td><td>18:33</td><td>18:41</td><td>18:48</td><td>18:57</td><td></td><td>19:08</td><td></td><td>19:25</td><td>19:38</td><td>19:47</td><td>19:55</td><td>20:06</td><td>20:23</td><td>20:34</td><td>20:54</td><td>21:07</td><td>21:26</td><td>21:34</td><td></td><td>22:02</td><td>22:18</td><td></td><td>22:33</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 동해 → 도착 : 동대구</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>동해</th><th>삼척해변</th><th>삼척</th><th>근덕</th><th>임원</th><th>옥원</th><th>흥부</th><th>죽변</th><th>울진</th><th>매화</th><th>기성</th><th>평해</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>강구</th><th>장사</th><th>월포</th><th>포항</th><th>안강</th><th>서경주</th><th>아화</th><th>영천</th><th>하양</th><th>동대구</th><th>비 고</th></tr></thead><tbody><tr><td>1852</td><td>누리로</td><td>07:21</td><td></td><td>07:45</td><td>07:57</td><td>08:06</td><td>08:13</td><td>08:23</td><td>08:30</td><td>08:38</td><td>08:48</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>월화수목금</td></tr><tr><td>1862</td><td>누리로</td><td>07:21</td><td>07:35</td><td>07:45</td><td>07:57</td><td>08:06</td><td>08:13</td><td>08:23</td><td>08:30</td><td>08:38</td><td>08:48</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>토일</td></tr><tr><td>1854</td><td>누리로</td><td>09:39</td><td></td><td>10:01</td><td></td><td>10:19</td><td>10:28</td><td>10:38</td><td>10:45</td><td>10:53</td><td></td><td></td><td></td><td>11:20</td><td>11:33</td><td>11:41</td><td>11:52</td><td>11:59</td><td>12:04</td><td>12:13</td><td>12:26</td><td>12:40</td><td>12:51</td><td>13:08</td><td>13:19</td><td>13:29</td><td>13:45</td><td>월화수목금</td></tr><tr><td>1864</td><td>누리로</td><td>09:39</td><td>09:52</td><td>10:01</td><td></td><td>10:19</td><td>10:28</td><td>10:38</td><td>10:45</td><td>10:53</td><td></td><td></td><td></td><td>11:20</td><td>11:33</td><td>11:41</td><td>11:52</td><td>11:59</td><td>12:04</td><td>12:13</td><td>12:26</td><td>12:40</td><td>12:51</td><td>13:08</td><td>13:19</td><td>13:29</td><td>13:45</td><td>토일</td></tr><tr><td>1866</td><td>누리로</td><td>13:15</td><td></td><td>13:33</td><td>13:46</td><td>13:55</td><td>14:02</td><td>14:12</td><td>14:19</td><td>14:27</td><td>14:37</td><td>14:49</td><td></td><td>15:01</td><td>15:09</td><td></td><td>15:25</td><td></td><td>15:39</td><td>15:47</td><td>15:59</td><td>16:13</td><td>16:23</td><td>16:41</td><td>16:52</td><td>17:02</td><td>17:18</td><td></td></tr><tr><td>1824</td><td>ITX-마음</td><td>20:42</td><td></td><td>20:59</td><td></td><td></td><td></td><td></td><td></td><td>21:36</td><td></td><td>21:55</td><td></td><td></td><td></td><td></td><td>22:25</td><td></td><td></td><td>22:42</td><td>22:53</td><td></td><td>23:13</td><td></td><td>23:38</td><td>23:48</td><td>00:04</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>동해역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '동해'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">동해역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">동해역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '32030';
            let curName = '동해';
            let altCity = '';
            let altName = '';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">동해역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">14℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 구름많음</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">20%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">동해역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%8F%99%ED%95%B4+%EC%95%88%EB%8F%99%EA%B0%88%EB%B9%84+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EB%8F%99%ED%95%B4%EC%8B%9C+%EB%8F%99%ED%9A%8C%EB%8F%99+101-12+%EB%8F%99%ED%95%B4+%EC%95%88%EB%8F%99%EA%B0%88%EB%B9%84" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">동해 안동갈비</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;소고기구이</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 동해시 동회동 101-12 동해 안동갈비</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/37.5+%EB%8F%99%ED%95%B4%EC%A0%90+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EB%8F%99%ED%95%B4%EC%8B%9C+%EB%8F%99%ED%9A%8C%EB%8F%99+66-4+%EA%B0%80%EB%8F%99+2%2C+3%ED%98%B8" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">37.5 동해점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;양식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 동해시 동회동 66-4 가동 2, 3호</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%B6%81%EC%84%B1%EB%A1%9C+%EC%97%B0%ED%83%84%EB%B6%88%EA%B3%A0%EA%B8%B0+%EC%9A%B0%EB%8F%99+%EB%8F%99%ED%95%B4+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EB%8F%99%ED%95%B4%EC%8B%9C+%EB%8F%99%ED%9A%8C%EB%8F%99+66-4+%EB%8F%99%EB%B3%B4%EC%83%81%EA%B0%80+%EA%B0%80%EB%8F%99+1%EC%B8%B5+7%ED%98%B8+%EB%B6%81%EC%84%B1%EB%A1%9C+%EC%97%B0%ED%83%84%EB%B6%88%EA%B3%A0%EA%B8%B0+%EC%9A%B0%EB%8F%99+%EB%8F%99%ED%95%B4" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">북성로 연탄불고기 우동 동해</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;한식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 동해시 동회동 66-4 동보상가 가동 1층 7호 북성로 연탄불고기 우동 동해</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%95%98%EB%82%A8%EB%8F%BC%EC%A7%80%EC%A7%91+%EB%8F%99%ED%95%B4%EB%8C%80%EB%8F%99%EC%A0%90+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EB%8F%99%ED%95%B4%EC%8B%9C+%EC%87%84%EC%9A%B4%EB%8F%99+141-1+%ED%95%9C%EC%9A%B8%EB%B9%8C+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">하남돼지집 동해대동점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">육류,고기요리&gt;돼지고기구이</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 동해시 쇄운동 141-1 한울빌 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%A3%BD%EC%84%B1+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EB%8F%99%ED%95%B4%EC%8B%9C+%EB%8F%99%ED%9A%8C%EB%8F%99+66-4+%EB%8F%99%EB%B3%B4%EC%83%81%EA%B0%80" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">룽성</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">중식&gt;중식당</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 동해시 동회동 66-4 동보상가</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">동해역 실시간 주차장 요금</h4>
        
                    <div class="parking-list-container">
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 동해역                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">600원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">200원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">7,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 강원도 동해시 동해역길 69<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 031-523-2353                        </div>
                    </div>
                            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">동해역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 강원도 동해시 동해역길 69</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:031-523-2353" style="color: #0052a4; font-weight: bold; text-decoration: none;">031-523-2353</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EB%8F%99%ED%95%B4%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/02/동해역-기차-시간표-KTX-이음-ITX-마음-누리로-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="동해역-기차-시간표-KTX-이음-ITX-마음-누리로-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-18874" srcset="https://krailroad.co.kr/wp-content/uploads/2026/02/동해역-기차-시간표-KTX-이음-ITX-마음-누리로-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/02/동해역-기차-시간표-KTX-이음-ITX-마음-누리로-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/02/동해역-기차-시간표-KTX-이음-ITX-마음-누리로-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>추암역 시간표(ITX-마음 누리로) 상하행 촛대바위 출렁다리 기차 여행 노선 요금 안내</title>
		<link>https://krailroad.co.kr/%ec%b6%94%ec%95%94%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9citx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%83%81%ed%95%98%ed%96%89-%ec%b4%9b%eb%8c%80%eb%b0%94%ec%9c%84-%ec%b6%9c%eb%a0%81%eb%8b%a4/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Mon, 23 Feb 2026 00:39:19 +0000</pubDate>
				<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[추암역 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=18817</guid>

					<description><![CDATA[동해안의 비경 중에서도 가장 먼저 해가 뜨는 곳, 추암역은 기차 문이 열리는 순간 애국가 첫 소절의 장엄한 풍경이 눈앞에 실현되는 특별한 장소입니다. 과거 동해안 바다열차가 달렸던 그 철길 위로 이제는 ITX-마음과 누리로가 매일 새로운 일출의 감동을 실어 나르고 있습니다. 이번 추암역 시간표는 공공데이터의 최신 철도 노선망과 코레일 공식 사이트의 실시간 API를 통해 분석된 추암역 시간표와 ... <a title="추암역 시간표(ITX-마음 누리로) 상하행 촛대바위 출렁다리 기차 여행 노선 요금 안내" class="read-more button" href="https://krailroad.co.kr/%ec%b6%94%ec%95%94%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9citx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%83%81%ed%95%98%ed%96%89-%ec%b4%9b%eb%8c%80%eb%b0%94%ec%9c%84-%ec%b6%9c%eb%a0%81%eb%8b%a4/" aria-label="추암역 시간표(ITX-마음 누리로) 상하행 촛대바위 출렁다리 기차 여행 노선 요금 안내 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">동해안의 비경 중에서도 가장 먼저 해가 뜨는 곳, 추암역은 기차 문이 열리는 순간 애국가 첫 소절의 장엄한 풍경이 눈앞에 실현되는 특별한 장소입니다. 과거 동해안 바다열차가 달렸던 그 철길 위로 이제는 ITX-마음과 누리로가 매일 새로운 일출의 감동을 실어 나르고 있습니다.</p>



<p class="wp-block-paragraph">이번 추암역 시간표는 공공데이터의 최신 철도 노선망과 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일 공식 사이트</a>의 실시간 API를 통해 분석된 추암역 시간표와 주변 인프라 정보를 바탕으로 작성되었습니다. &#8220;기차 타고 떠나는 일출 여행, 추암역에서 시작하는 완벽한 동해안 당일치기 코스&#8221;를 계획 중인 분들을 위해, 7번국도 기차 여행의 정수를 만끽할 수 있는 실질적인 데이터를 제공하고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">추암역 5분 만에 촛대바위와 출렁다리</h2>



<h3 class="wp-block-heading"><strong><strong>시간 효율을 아낄 수 있는 동선</strong></strong></h3>



<p class="wp-block-paragraph">추암역의 가장 큰 매력은 추암역 위치가 주요 관광지 한복판에 있다는 점입니다. 기차에서 내려 추암역 내려서 5분 만에 촛대바위와 출렁다리까지 닿을 수 있어, 짧은 시간 안에 동해시 가볼만한곳의 정수를 모두 경험할 수 있습니다. 바다 위를 가로지르는 추암 출렁다리에서 스릴을 만끽하고, 바로 옆 추암 촛대바위에서 자연의 신비로움을 감상하는 코스는 동해시 당일치기 방문객들에게 최고의 장소로 알려져 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading"><strong>예술과 휴식의 추암 산책로</strong></h3>



<p class="wp-block-paragraph">추암역 시간표를 이용하여 역에 도착하였다면, 조금만 발길을 옮기면 탁 트인 추암해수욕장과 기암괴석이 어우러진 추암 조각공원이 나타납니다. 가족이나 연인과 함께 조각 작품을 감상하며 걷다 보면 자연스럽게 힐링이 되며, 인근 추암 오토캠핑장에서 불어오는 바다 내음은 여행의 깊이를 더해줍니다. 삼척에서 추암역 혹은 강릉에서 추암역으로 이동하는 짧은 순간에도 창밖으로 펼쳐지는 절경을 보실 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">열차 이용 및 여행 안내</h3>



<p class="wp-block-paragraph">동해역에서 추암역으로 환승하여 들어오는 분들은 추암역 시간표를 코레일톡에서 실시간으로 대조해 보는 것이 좋으며, 동해선 신설 구간 추암 노선은 운행 횟수가 정해져 있어 시간을 미리 맞추는 것이 효율적입니다. 또한 자차 이용 시에는 추암역 주차장을 활용해 차를 세워두고 주변을 도보로 탐방하는 것이 좋습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>추암역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">추암<br>↓<br>동해</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1831호</span><div class="time-display">18:33</div><div class="arrival-info">18:42 도착</div></td><td><span class="train-detail">1831호</span><div class="time-display">18:33</div><div class="arrival-info">18:42 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1861호</span><div class="time-display">10:13</div><div class="arrival-info">10:24 도착</div></td><td><span class="train-detail">1863호</span><div class="time-display">16:07</div><div class="arrival-info">16:16 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">추암<br>↓<br>강릉</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1831호</span><div class="time-display">18:33</div><div class="arrival-info">19:27 도착</div></td><td><span class="train-detail">1831호</span><div class="time-display">18:33</div><div class="arrival-info">19:27 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1861호</span><div class="time-display">10:13</div><div class="arrival-info">11:12 도착</div></td><td><span class="train-detail">1863호</span><div class="time-display">16:07</div><div class="arrival-info">17:00 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">추암<br>↓<br>포항</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1862호</span><div class="time-display">07:31</div><div class="arrival-info">10:17 도착</div></td><td><span class="train-detail">1864호</span><div class="time-display">09:48</div><div class="arrival-info">12:26 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">추암<br>↓<br>서경주</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1862호</span><div class="time-display">07:31</div><div class="arrival-info">10:40 도착</div></td><td><span class="train-detail">1864호</span><div class="time-display">09:48</div><div class="arrival-info">12:51 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">추암<br>↓<br>동대구</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1862호</span><div class="time-display">07:31</div><div class="arrival-info">11:36 도착</div></td><td><span class="train-detail">1864호</span><div class="time-display">09:48</div><div class="arrival-info">13:45 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">추암<br>↓<br>태화강</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1804호</span><div class="time-display">17:28</div><div class="arrival-info">20:54 도착</div></td><td><span class="train-detail">1804호</span><div class="time-display">17:28</div><div class="arrival-info">20:54 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">추암<br>↓<br>북울산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1804호</span><div class="time-display">17:28</div><div class="arrival-info">20:46 도착</div></td><td><span class="train-detail">1804호</span><div class="time-display">17:28</div><div class="arrival-info">20:46 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">추암<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1804호</span><div class="time-display">17:28</div><div class="arrival-info">22:00 도착</div></td><td><span class="train-detail">1804호</span><div class="time-display">17:28</div><div class="arrival-info">22:00 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>추암</strong>역 </strong>ITX·누리로<strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>운임</th></tr></thead><tbody><tr><td>동해A</td><td>ITX</td><td class="highlight">추암</td><td class="highlight">경주</td><td>19,900</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">추암</td><td class="highlight">동대구</td><td>25,100</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">추암</td><td class="highlight">동대구</td><td>18,000</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">추암</td><td>4,900</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">추암</td><td>4,900</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">강릉</td><td class="highlight">추암</td><td>3,300</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">추암</td><td>4,800</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">추암</td><td>4,800</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">동해</td><td class="highlight">추암</td><td>2,600</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">추암</td><td class="highlight">태화강</td><td>24,000</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">추암</td><td class="highlight">북울산</td><td>23,000</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">추암</td><td class="highlight">부전</td><td>30,000</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>추암역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <s>추암역 KTX 노선 없음</s><br>✅ <s>추암역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ec%b6%94%ec%95%94%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9citx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%83%81%ed%95%98%ed%96%89-%ec%b4%9b%eb%8c%80%eb%b0%94%ec%9c%84-%ec%b6%9c%eb%a0%81%eb%8b%a4/">추암역 ITX-마음 누리로 시간표</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>추암역 <strong>ITX·누리로 </strong>시간표</strong></h2>



<h3 class="wp-block-heading">출발 : 추암 → 도착 : 동해·강릉</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>추암</th><th>동해</th><th>묵호</th><th>정동진</th><th>강릉</th><th>비 고</th></tr></thead><tbody><tr><td>1861</td><td>누리로</td><td>10:13</td><td>10:24</td><td>10:33</td><td>10:55</td><td>11:12</td><td>토일</td></tr><tr><td>1863</td><td>누리로</td><td>16:07</td><td>16:16</td><td>16:24</td><td>16:45</td><td>17:00</td><td>토일</td></tr><tr><td>1831</td><td>ITX-마음</td><td>18:33</td><td>18:42</td><td>18:50</td><td>19:12</td><td>19:27</td><td>토일</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 추암 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>추암</th><th>삼척해변</th><th>삼척</th><th>옥원</th><th>흥부</th><th>죽변</th><th>울진</th><th>매화</th><th>기성</th><th>후포</th><th>고래불</th><th>영덕</th><th>포항</th><th>서경주</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th><th>비 고</th></tr></thead><tbody><tr><td>1804</td><td>ITX-마음</td><td>17:28</td><td>17:32</td><td>17:40</td><td>18:03</td><td>18:13</td><td>18:20</td><td>18:28</td><td>18:39</td><td>18:50</td><td>19:02</td><td>19:11</td><td>19:27</td><td>19:52</td><td>20:13</td><td>20:26</td><td>20:46</td><td>20:54</td><td>21:10</td><td>21:31</td><td>21:42</td><td>21:50</td><td>22:00</td><td>토일</td></tr></tbody></table></div>



<h3 class="wp-block-heading">출발 : 추암 → 도착 : 동대구</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>추암</th><th>삼척해변</th><th>삼척</th><th>근덕</th><th>임원</th><th>옥원</th><th>흥부</th><th>죽변</th><th>울진</th><th>매화</th><th>기성</th><th>평해</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>강구</th><th>장사</th><th>월포</th><th>포항</th><th>안강</th><th>서경주</th><th>아화</th><th>영천</th><th>하양</th><th>동대구</th><th>비 고</th></tr></thead><tbody><tr><td>1862</td><td>누리로</td><td>07:31</td><td>07:35</td><td>07:45</td><td>07:57</td><td>08:06</td><td>08:13</td><td>08:23</td><td>08:30</td><td>08:38</td><td>08:48</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>토일</td></tr><tr><td>1864</td><td>누리로</td><td>09:48</td><td>09:52</td><td>10:01</td><td></td><td>10:19</td><td>10:28</td><td>10:38</td><td>10:45</td><td>10:53</td><td></td><td></td><td></td><td>11:20</td><td>11:33</td><td>11:41</td><td>11:52</td><td>11:59</td><td>12:04</td><td>12:13</td><td>12:26</td><td>12:40</td><td>12:51</td><td>13:08</td><td>13:19</td><td>13:29</td><td>13:45</td><td>토일</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>추암역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '추암'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">추암역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">추암역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '32030';
            let curName = '추암';
            let altCity = '';
            let altName = '';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">추암역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">14℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 구름많음</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">20%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">추암역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%95%A0%EB%A6%AC%EC%8A%A4+%EB%8F%99%ED%95%B4%EC%B4%9B%EB%8C%80%EB%B0%94%EC%9C%84%EC%A0%90+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EB%8F%99%ED%95%B4%EC%8B%9C+%EC%B6%94%EC%95%94%EB%8F%99+1-6" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">할리스 동해촛대바위점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;카페</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 동해시 추암동 1-6</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%8F%99%ED%95%B4%EB%9F%AC%EC%8B%9C%EC%95%84%EB%8C%80%EA%B2%8C%EB%A7%88%EC%9D%84+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EB%8F%99%ED%95%B4%EC%8B%9C+%EC%B6%94%EC%95%94%EB%8F%99+433-2" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">동해러시아대게마을</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">해물,생선요리&gt;대게요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 동해시 추암동 433-2</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%B6%94%EC%95%94%ED%9A%9F%EC%A7%91%EB%8C%80%EA%B2%8C+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EB%8F%99%ED%95%B4%EC%8B%9C+%EC%B6%94%EC%95%94%EB%8F%99+1-8+%EC%B6%94%EC%95%94%ED%9A%9F%EC%A7%91%EB%8C%80%EA%B2%8C" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">추암횟집대게</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;생선회</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 동해시 추암동 1-8 추암횟집대게</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%B2%A4%EC%B8%A0%EB%8C%80%EA%B2%8C%ED%9A%9F%EC%A7%91+%EB%B3%B8%EC%A0%90+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EB%8F%99%ED%95%B4%EC%8B%9C+%EC%B6%94%EC%95%94%EB%8F%99+1-9+%EB%B2%A4%EC%B8%A0%EB%8C%80%EA%B2%8C%ED%9A%9F%EC%A7%91%EB%B3%B8%EC%A0%90" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">벤츠대게횟집 본점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;생선회</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 동해시 추암동 1-9 벤츠대게횟집본점</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%9A%B8%EC%A7%84%EB%8C%80%EA%B2%8C%EB%B9%B5%28%EC%B6%94%EC%95%94%EC%A0%90%29+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EB%8F%99%ED%95%B4%EC%8B%9C+%EC%B6%94%EC%95%94%EB%8F%99+1-3" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">울진대게빵(추암점)</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;한식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 동해시 추암동 1-3</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">추암역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">추암역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 추암역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%B6%94%EC%95%94%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/02/추암역-시간표-ITX-마음-누리로-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="추암역-시간표-ITX-마음-누리로-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-18827" srcset="https://krailroad.co.kr/wp-content/uploads/2026/02/추암역-시간표-ITX-마음-누리로-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/02/추암역-시간표-ITX-마음-누리로-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/02/추암역-시간표-ITX-마음-누리로-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>삼척해변역 기차 시간표 상하행 누리로 ITX-마음 바다 여행 동해선 노선</title>
		<link>https://krailroad.co.kr/%ec%82%bc%ec%b2%99%ed%95%b4%eb%b3%80%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%83%81%ed%95%98%ed%96%89-%eb%88%84%eb%a6%ac%eb%a1%9c-itx-%eb%a7%88%ec%9d%8c-%eb%b0%94%eb%8b%a4-%ec%97%ac/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Sat, 21 Feb 2026 00:10:07 +0000</pubDate>
				<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[삼천해변 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=18787</guid>

					<description><![CDATA[삼척해변역 기차에서 내리는 순간 시원한 파도 소리가 마중 나오는 곳, 삼척해변역은 동해안 철길 위에서도 손꼽히는 낭만적인 장소로 알려져 있으며, 과거 큰 사랑을 받았던 바다열차 예매의 추억을 뒤로하고, 이제는 ITX-마음과 누리로가 그 빈자리를 채우고 있습니다. 이번 개통 소식은 공공데이터의 최신 노선 정보와 코레일 공식 사이트를 이용한 실시간 API 열차 시간표, 주변 맛집, 정차역, 버스 도착시간 등을 ... <a title="삼척해변역 기차 시간표 상하행 누리로 ITX-마음 바다 여행 동해선 노선" class="read-more button" href="https://krailroad.co.kr/%ec%82%bc%ec%b2%99%ed%95%b4%eb%b3%80%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%83%81%ed%95%98%ed%96%89-%eb%88%84%eb%a6%ac%eb%a1%9c-itx-%eb%a7%88%ec%9d%8c-%eb%b0%94%eb%8b%a4-%ec%97%ac/" aria-label="삼척해변역 기차 시간표 상하행 누리로 ITX-마음 바다 여행 동해선 노선 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">삼척해변역 기차에서 내리는 순간 시원한 파도 소리가 마중 나오는 곳, 삼척해변역은 동해안 철길 위에서도 손꼽히는 낭만적인 장소로 알려져 있으며, 과거 큰 사랑을 받았던 바다열차 예매의 추억을 뒤로하고, 이제는 ITX-마음과 누리로가 그 빈자리를 채우고 있습니다.</p>



<p class="wp-block-paragraph">이번 개통 소식은 공공데이터의 최신 노선 정보와 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a> 공식 사이트를 이용한 실시간 API 열차 시간표, 주변 맛집, 정차역, 버스 도착시간 등을 확인했습니다. 자동차 핸들 대신 기차 창밖의 풍경을 느끼고 싶은 분들을 위해, 삼척해수욕장의 모래사장을 밟기까지 꼭 알아야 할 정확한 자료를 준비하였습니다(삼척해변역 티켓이 없다면 <a href="https://krailroad.co.kr/%ec%82%bc%ec%b2%99%ec%97%ad-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%a3%bd%ec%84%9c%eb%a3%a8%ec%99%80-%ec%82%bc%ec%b2%99%ed%95%b4/">삼척역 시간표</a>를 참고하여 이용하세요).</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">삼척해변역 ITX·누리로 이용 안내</h2>



<h3 class="wp-block-heading"><strong><strong>삼척 쏠비치 맛집과 오션뷰 카페</strong></strong></h3>



<p class="wp-block-paragraph">기차역의 문을 열고 나가면 곧장 삼척해변 맛집들이 줄지어 선 거리와 마주하게 되며, 특히 쏠비치 삼척 투숙객이나 방문객들에게 삼척쏠비치 근처역인 이곳은 최고의 접근성을 자랑하는데요. 삼척해변역 위치 자체가 해수욕장 북쪽 끝과 맞닿아 있어, 별도의 대중교통 없이 삼척해변역 도보만으로도 충분히 이동이 가능합니다. 해변 산책로를 따라 걷다 보면 통창 너머로 푸른 바다가 보이는 삼척해변 오션뷰 카페들이 많이 있으니 참고하시면 됩니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading"><strong>삼척해변역 기차와 서핑, 모래놀이</strong></h3>



<p class="wp-block-paragraph">가족 단위 방문객이라면 아이들을 위한 삼척 모래놀이 세트를 챙겨보시는 것은 어떨까요? 드넓은 백사장은 아이들에게 안전한 놀이터가 되어주고, 파도가 좋은 날에는 삼척 서핑을 즐기는 서퍼들의 활기찬 모습도 볼 수도 있습니다. 그리고 해가 저물 무렵 광장에서 들려오는 삼척 버스킹 선율은 여행의 운치를 한껏 끌어올리며, 자차로 오기 힘든 분들에게는 쏠비치삼척가는법이 삼척해변역 기차를 이용하는 것이 편합니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">삼척해변역 기차 이용 안내</h3>



<p class="wp-block-paragraph">기존의 관광 전용 열차였던 바다열차 예매 서비스는 종료되었으나, 일반 열차로도 충분히 아름다운 해안 절경을 감상할 수 있습니다. 동해선 삼척해변역 기차 시간표는 계절이나 주말 여부에 따라 미세하게 조정될 수 있으니, 더욱 정확한 시간표는 코레일톡에서 시간을 다시 한번 체크하고 이동하는 것도 좋습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>삼척해변역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">삼척해변<br>↓<br>동해</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1831호</span><div class="time-display">18:29</div><div class="arrival-info">18:42 도착</div></td><td><span class="train-detail">1831호</span><div class="time-display">18:29</div><div class="arrival-info">18:42 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1861호</span><div class="time-display">10:09</div><div class="arrival-info">10:24 도착</div></td><td><span class="train-detail">1863호</span><div class="time-display">16:03</div><div class="arrival-info">16:16 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">삼척해변<br>↓<br>강릉</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1831호</span><div class="time-display">18:29</div><div class="arrival-info">19:27 도착</div></td><td><span class="train-detail">1831호</span><div class="time-display">18:29</div><div class="arrival-info">19:27 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1861호</span><div class="time-display">10:09</div><div class="arrival-info">11:12 도착</div></td><td><span class="train-detail">1863호</span><div class="time-display">16:03</div><div class="arrival-info">17:00 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">삼척해변<br>↓<br>포항</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1862호</span><div class="time-display">07:35</div><div class="arrival-info">10:17 도착</div></td><td><span class="train-detail">1864호</span><div class="time-display">09:52</div><div class="arrival-info">12:26 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">삼척해변<br>↓<br>서경주</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1862호</span><div class="time-display">07:35</div><div class="arrival-info">10:40 도착</div></td><td><span class="train-detail">1864호</span><div class="time-display">09:52</div><div class="arrival-info">12:51 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">삼척해변<br>↓<br>동대구</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1862호</span><div class="time-display">07:35</div><div class="arrival-info">11:36 도착</div></td><td><span class="train-detail">1864호</span><div class="time-display">09:52</div><div class="arrival-info">13:45 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">삼척해변<br>↓<br>태화강</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1804호</span><div class="time-display">17:32</div><div class="arrival-info">20:54 도착</div></td><td><span class="train-detail">1804호</span><div class="time-display">17:32</div><div class="arrival-info">20:54 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">삼척해변<br>↓<br>북울산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1804호</span><div class="time-display">17:32</div><div class="arrival-info">20:46 도착</div></td><td><span class="train-detail">1804호</span><div class="time-display">17:32</div><div class="arrival-info">20:46 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">삼척해변<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1804호</span><div class="time-display">17:32</div><div class="arrival-info">22:00 도착</div></td><td><span class="train-detail">1804호</span><div class="time-display">17:32</div><div class="arrival-info">22:00 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>삼척해변</strong>역 </strong>ITX·누리로<strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>운임</th></tr></thead><tbody><tr><td>동해A</td><td>ITX</td><td class="highlight">삼척해변</td><td class="highlight">경주</td><td>19,800</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">삼척해변</td><td class="highlight">동대구</td><td>25,000</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">삼척해변</td><td class="highlight">동대구</td><td>18,000</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">삼척해변</td><td>5,000</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">삼척해변</td><td>5,000</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">강릉</td><td class="highlight">삼척해변</td><td>3,400</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">삼척해변</td><td>4,800</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">삼척해변</td><td>4,800</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">동해</td><td class="highlight">삼척해변</td><td>2,600</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">삼척해변</td><td class="highlight">태화강</td><td>23,800</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">삼척해변</td><td class="highlight">북울산</td><td>22,900</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">삼척해변</td><td class="highlight">부전</td><td>29,900</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>삼척해변역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <s>삼척해변역 KTX 노선 없음</s><br>✅ <s>삼척해변역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ec%82%bc%ec%b2%99%ed%95%b4%eb%b3%80%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%83%81%ed%95%98%ed%96%89-%eb%88%84%eb%a6%ac%eb%a1%9c-itx-%eb%a7%88%ec%9d%8c-%eb%b0%94%eb%8b%a4-%ec%97%ac/">삼척해변역 ITX-마음 누리로 시간표</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>삼척해변역 <strong>ITX·누리로 </strong>시간표</strong></h2>



<h3 class="wp-block-heading">출발 : 삼척해변 → 도착 : 동해·강릉</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>삼척해변</th><th>추암</th><th>동해</th><th>묵호</th><th>정동진</th><th>강릉</th><th>비 고</th></tr></thead><tbody><tr><td>1861</td><td>누리로</td><td>10:09</td><td>10:13</td><td>10:24</td><td>10:33</td><td>10:55</td><td>11:12</td><td>토일</td></tr><tr><td>1863</td><td>누리로</td><td>16:03</td><td>16:07</td><td>16:16</td><td>16:24</td><td>16:45</td><td>17:00</td><td>토일</td></tr><tr><td>1831</td><td>ITX-마음</td><td>18:29</td><td>18:33</td><td>18:42</td><td>18:50</td><td>19:12</td><td>19:27</td><td>토일</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 삼척해변 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>삼척해변</th><th>삼척</th><th>옥원</th><th>흥부</th><th>죽변</th><th>울진</th><th>매화</th><th>기성</th><th>후포</th><th>고래불</th><th>영덕</th><th>포항</th><th>서경주</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th><th>비 고</th></tr></thead><tbody><tr><td>1804</td><td>ITX-마음</td><td>17:32</td><td>17:40</td><td>18:03</td><td>18:13</td><td>18:20</td><td>18:28</td><td>18:39</td><td>18:50</td><td>19:02</td><td>19:11</td><td>19:27</td><td>19:52</td><td>20:13</td><td>20:26</td><td>20:46</td><td>20:54</td><td>21:10</td><td>21:31</td><td>21:42</td><td>21:50</td><td>22:00</td><td>토일</td></tr></tbody></table></div>



<h3 class="wp-block-heading">출발 : 삼척해변 → 도착 : 동대구</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>삼척해변</th><th>삼척</th><th>근덕</th><th>임원</th><th>옥원</th><th>흥부</th><th>죽변</th><th>울진</th><th>매화</th><th>기성</th><th>평해</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>강구</th><th>장사</th><th>월포</th><th>포항</th><th>안강</th><th>서경주</th><th>아화</th><th>영천</th><th>하양</th><th>동대구</th><th>비 고</th></tr></thead><tbody><tr><td>1862</td><td>누리로</td><td>07:35</td><td>07:45</td><td>07:57</td><td>08:06</td><td>08:13</td><td>08:23</td><td>08:30</td><td>08:38</td><td>08:48</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>토일</td></tr><tr><td>1864</td><td>누리로</td><td>09:52</td><td>10:01</td><td></td><td>10:19</td><td>10:28</td><td>10:38</td><td>10:45</td><td>10:53</td><td></td><td></td><td></td><td>11:20</td><td>11:33</td><td>11:41</td><td>11:52</td><td>11:59</td><td>12:04</td><td>12:13</td><td>12:26</td><td>12:40</td><td>12:51</td><td>13:08</td><td>13:19</td><td>13:29</td><td>13:45</td><td>토일</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>삼척해변역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '삼척해변'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">삼척해변역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">삼척해변역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '32020';
            let curName = '삼척해변';
            let altCity = '';
            let altName = '';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">삼척해변역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">14℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 구름많음</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">20%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">삼척해변역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%8C%80%EA%B2%8C%EB%A8%B9%EB%B0%A9+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%82%BC%EC%B2%99%EC%8B%9C+%EA%B0%88%EC%B2%9C%EB%8F%99+14+202%ED%98%B8" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">대게먹방</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">해물,생선요리&gt;대게요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 삼척시 갈천동 14 202호</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%B3%B4%EC%82%AC%EB%85%B8%EB%B0%94+%EC%BB%A4%ED%94%BC%EB%A1%9C%EC%8A%A4%ED%84%B0%EC%8A%A4+%EC%82%BC%EC%B2%99%EC%A0%90+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%82%BC%EC%B2%99%EC%8B%9C+%EA%B5%90%EB%8F%99+413-23" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">보사노바 커피로스터스 삼척점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;카페,디저트</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 삼척시 교동 413-23</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%9B%90%ED%9D%AC%EB%84%A4%EB%8B%AD%EA%B0%88%EB%B9%84+%EC%82%BC%EC%B2%99%EC%A0%90+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%82%BC%EC%B2%99%EC%8B%9C+%EA%B0%88%EC%B2%9C%EB%8F%99+10-4" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">원희네닭갈비 삼척점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;닭갈비</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 삼척시 갈천동 10-4</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EA%B0%95%EB%A6%89%ED%95%B4%EB%B3%80%EB%A7%89%EA%B5%AD%EC%88%98+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%82%BC%EC%B2%99%EC%8B%9C+%EA%B0%88%EC%B2%9C%EB%8F%99+187-9" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">강릉해변막국수</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;막국수</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 삼척시 갈천동 187-9</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%92%8D%EC%84%B1%ED%95%9C%ED%9A%9F%EC%A7%91+%EC%82%BC%EC%B2%99+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%82%BC%EC%B2%99%EC%8B%9C+%EA%B5%90%EB%8F%99+413-22+%ED%92%8D%EC%84%B1%ED%95%9C%ED%9A%9F%EC%A7%91" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">풍성한횟집 삼척</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;생선회</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 삼척시 교동 413-22 풍성한횟집</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">삼척해변역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">삼척해변역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 삼척해변역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%82%BC%EC%B2%99%ED%95%B4%EB%B3%80%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/02/삼척해변역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="삼척해변역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-18797" srcset="https://krailroad.co.kr/wp-content/uploads/2026/02/삼척해변역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/02/삼척해변역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/02/삼척해변역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>삼척역 KTX-이음 ITX-마음 누리로 시간표 죽서루와 삼척해변 여행 요금 노선</title>
		<link>https://krailroad.co.kr/%ec%82%bc%ec%b2%99%ec%97%ad-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%a3%bd%ec%84%9c%eb%a3%a8%ec%99%80-%ec%82%bc%ec%b2%99%ed%95%b4/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Fri, 13 Feb 2026 01:47:08 +0000</pubDate>
				<category><![CDATA[KTX 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[삼척역 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=18461</guid>

					<description><![CDATA[동해안 철도 교통의 새로운 지형을 바꾸고 있는 삼척역은 단순한 종착역 이상의 가치를 지닙니다. 과거 포항에서 삼척을 잇는 기차 노선이 없어 육로에만 의존해야 했던 불편함이 이번 철도 사업을 통해 완전히 해소되었는데요. 영남권과 강원권을 잇는 동해중부선의 핵심 거점이자, 향후 강릉을 거쳐 제진까지 뻗어 나갈 동해북부선 연결의 전초기지로서 삼척은 이제 명실상부한 중부선 종착역이자 새로운 시작점이 되었습니다. 단순히 수치만 ... <a title="삼척역 KTX-이음 ITX-마음 누리로 시간표 죽서루와 삼척해변 여행 요금 노선" class="read-more button" href="https://krailroad.co.kr/%ec%82%bc%ec%b2%99%ec%97%ad-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%a3%bd%ec%84%9c%eb%a3%a8%ec%99%80-%ec%82%bc%ec%b2%99%ed%95%b4/" aria-label="삼척역 KTX-이음 ITX-마음 누리로 시간표 죽서루와 삼척해변 여행 요금 노선 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">동해안 철도 교통의 새로운 지형을 바꾸고 있는 삼척역은 단순한 종착역 이상의 가치를 지닙니다. 과거 포항에서 삼척을 잇는 기차 노선이 없어 육로에만 의존해야 했던 불편함이 이번 철도 사업을 통해 완전히 해소되었는데요. 영남권과 강원권을 잇는 동해중부선의 핵심 거점이자, 향후 강릉을 거쳐 제진까지 뻗어 나갈 동해북부선 연결의 전초기지로서 삼척은 이제 명실상부한 중부선 종착역이자 새로운 시작점이 되었습니다.</p>



<p class="wp-block-paragraph">단순히 수치만 나열한 게 아니라, 실제 운행되는 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a> 공공 데이터들을 하나씩 확인하며 삼척을 찾는 분들께 꼭 필요한 내용만 추려냈으니, KTX-이음과 ITX-마음, 그리고 누리로를 이용해 삼척의 푸른 바다를 만나러 오시는 분들에게 이 자료가 요긴하게 쓰였으면 합니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">삼척역 KTX·ITX·누리로 이용 안내</h2>



<h3 class="wp-block-heading"><strong><strong>철길로 연결된 동해안의 새로운 동력</strong></strong></h3>



<p class="wp-block-paragraph">그동안 포항과 삼척 사이는 철도가 끊겨 있어 이동이 쉽지 않았으나, 국가 철도망 구축 사업을 통해 비로소 하나로 이어지게 되었습니다. 이는 지역 간 균형 발전은 물론, 동해안의 수려한 자원을 세계적인 관광 벨트로 묶기 위한 전략적 선택이기도 한데, 현재는 KTX-이음과 ITX-마음이 정차하며 수도권과 영남권에서의 접근성을 획기적으로 높였으며, 향후 동해북부선이 제진까지 연결되면 유라시아 대륙철도로 향하는 관문 역할까지 수행하게 될 전망입니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading"><strong>삼척에서 마주하는 역사와 자연</strong></h3>



<p class="wp-block-paragraph">역에서 내려 가장 먼저 마주해야 할 곳은 국보로 승격된 죽서루입니다. 고려 시대부터 내려온 유서 깊은 누각으로, 절벽 위 자연 암반을 그대로 활용한 기둥 배치는 한국 건축미의 정수로 꼽힙니다. 관동팔경 중 유일하게 강물(오십천)을 끼고 있어 예부터 수많은 시인 묵객들이 찬탄을 보냈던 이곳은, 삼척역에서 대중교통으로 금방 닿을 수 있어 역사 여행의 출발지로 안성맞춤입니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">K-문화와 호국 정신이 깃든 명소들</h3>



<p class="wp-block-paragraph">가족 단위 당일치기 여행자라면 삼척해수욕장과 이사부사자공원을 들려 보시는 것도 좋은데, 삼척해수욕장은 부드러운 백사장과 편의시설이 잘 갖춰져 있어 남녀노소 누구나 머물기 좋으며, 인근 이사부사자공원은 신라 장군 이사부가 울릉도와 독도를 우리 영토로 편입시킬 때 사자 나무 인형을 활용했던 기개를 기리기 위해 조성되었습니다. 공원 내 전망대에서 바라보는 증산해변의 풍경은 가슴을 탁 트이게 하며, 아이들에게는 독도 수호의 역사를 자연스럽게 알려주는 교육적 장소로도 괜찮습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>삼척역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">삼척<br>↓<br>동해</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">751호</span><div class="time-display">10:43</div><div class="arrival-info">10:59 도착</div></td><td><span class="train-detail">755호</span><div class="time-display">22:35</div><div class="arrival-info">22:52 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">삼척<br>↓<br>강릉</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">751호</span><div class="time-display">10:43</div><div class="arrival-info">11:40 도착</div></td><td><span class="train-detail">755호</span><div class="time-display">22:35</div><div class="arrival-info">23:32 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">삼척<br>↓<br>동해</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1801호</span><div class="time-display">09:19</div><div class="arrival-info">09:35 도착</div></td><td><span class="train-detail">1807호</span><div class="time-display">19:52</div><div class="arrival-info">20:08 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">10:01</div><div class="arrival-info">10:24 도착</div></td><td><span class="train-detail">1865호</span><div class="time-display">22:12</div><div class="arrival-info">22:29 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">삼척<br>↓<br>강릉</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1821호</span><div class="time-display">18:22</div><div class="arrival-info">19:27 도착</div></td><td><span class="train-detail">1831호</span><div class="time-display">18:22</div><div class="arrival-info">19:27 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">10:01</div><div class="arrival-info">11:12 도착</div></td><td><span class="train-detail">1865호</span><div class="time-display">22:12</div><div class="arrival-info">23:13 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">삼척<br>↓<br>포항</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1824호</span><div class="time-display">20:59</div><div class="arrival-info">22:53 도착</div></td><td><span class="train-detail">1824호</span><div class="time-display">20:59</div><div class="arrival-info">22:53 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">07:45</div><div class="arrival-info">10:17 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">13:33</div><div class="arrival-info">15:59 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">삼척<br>↓<br>서경주</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1824호</span><div class="time-display">20:59</div><div class="arrival-info">23:13 도착</div></td><td><span class="train-detail">1824호</span><div class="time-display">20:59</div><div class="arrival-info">23:13 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">07:45</div><div class="arrival-info">10:40 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">13:33</div><div class="arrival-info">16:23 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">삼척<br>↓<br>동대구</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1824호</span><div class="time-display">20:59</div><div class="arrival-info">00:04 도착</div></td><td><span class="train-detail">1824호</span><div class="time-display">20:59</div><div class="arrival-info">00:04 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">07:45</div><div class="arrival-info">11:36 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">13:33</div><div class="arrival-info">17:18 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">삼척<br>↓<br>영덕</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">752호</span><div class="time-display">10:42</div><div class="arrival-info">11:43 도착</div></td><td><span class="train-detail">756호</span><div class="time-display">19:35</div><div class="arrival-info">20:36 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">삼척<br>↓<br>포항</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">752호</span><div class="time-display">10:42</div><div class="arrival-info">12:06 도착</div></td><td><span class="train-detail">756호</span><div class="time-display">19:35</div><div class="arrival-info">20:57 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">삼척<br>↓<br>경주</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">752호</span><div class="time-display">10:42</div><div class="arrival-info">12:32 도착</div></td><td><span class="train-detail">756호</span><div class="time-display">19:35</div><div class="arrival-info">21:24 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">삼척<br>↓<br>부전</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">752호</span><div class="time-display">10:42</div><div class="arrival-info">13:36 도착</div></td><td><span class="train-detail">756호</span><div class="time-display">19:35</div><div class="arrival-info">22:29 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">삼척<br>↓<br>태화강</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1822호</span><div class="time-display">06:47</div><div class="arrival-info">09:39 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">18:21</div><div class="arrival-info">21:34 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">삼척<br>↓<br>북울산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1822호</span><div class="time-display">06:47</div><div class="arrival-info">09:31 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">18:21</div><div class="arrival-info">21:26 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">삼척<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1822호</span><div class="time-display">06:47</div><div class="arrival-info">10:49 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">18:21</div><div class="arrival-info">22:33 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>삼척</strong>역 KTX·</strong>ITX·누리로<strong>요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>경유지</th><th>운임</th><th>일반</th><th>우등</th></tr></thead><tbody><tr><td>동해A</td><td>ITX</td><td class="highlight">삼척</td><td class="highlight">경주</td><td>-</td><td>19,300</td><td>0</td><td>0</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">삼척</td><td class="highlight">경주</td><td>기본</td><td>0</td><td>28,200</td><td>33,800</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">삼척</td><td class="highlight">동대구</td><td>-</td><td>24,500</td><td>0</td><td>0</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">삼척</td><td class="highlight">동대구</td><td>-</td><td>10,100</td><td>0</td><td>0</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">삼척</td><td>-</td><td>5,500</td><td>0</td><td>0</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">삼척</td><td>-</td><td>5,500</td><td>0</td><td>0</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">강릉</td><td class="highlight">삼척</td><td>기본</td><td>0</td><td>8,400</td><td>11,400</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">강릉</td><td class="highlight">삼척</td><td>-</td><td>3,700</td><td>0</td><td>0</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">삼척</td><td>-</td><td>4,800</td><td>0</td><td>0</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">삼척</td><td>-</td><td>4,800</td><td>0</td><td>0</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">동해</td><td class="highlight">삼척</td><td>기본</td><td>0</td><td>8,400</td><td>11,400</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">동해</td><td class="highlight">삼척</td><td>-</td><td>2,600</td><td>0</td><td>0</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">삼척</td><td class="highlight">태화강</td><td>-</td><td>23,400</td><td>0</td><td>0</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">삼척</td><td class="highlight">태화강</td><td>기본</td><td>0</td><td>34,100</td><td>40,900</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">삼척</td><td class="highlight">북울산</td><td>-</td><td>22,400</td><td>0</td><td>0</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">삼척</td><td class="highlight">부전</td><td>-</td><td>29,400</td><td>0</td><td>0</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">삼척</td><td class="highlight">부전</td><td>기본</td><td>0</td><td>40,800</td><td>49,000</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>삼척역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <a href="https://krailroad.co.kr/%ec%82%bc%ec%b2%99%ec%97%ad-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%a3%bd%ec%84%9c%eb%a3%a8%ec%99%80-%ec%82%bc%ec%b2%99%ed%95%b4/">삼척역 KTX 시간표 바로가기</a><br>✅ <s>삼척역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ec%82%bc%ec%b2%99%ec%97%ad-ktx-%ec%9d%b4%ec%9d%8c-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%a3%bd%ec%84%9c%eb%a3%a8%ec%99%80-%ec%82%bc%ec%b2%99%ed%95%b4/">삼척역 ITX-마음 누리로 시간표</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>삼척역 <strong>KTX·ITX·누리로 </strong>시간표</strong></h2>



<h3 class="wp-block-heading">출발 : 삼척 → 도착 : 동해·강릉</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>삼척</th><th>동해</th><th>묵호</th><th>정동진</th><th>강릉</th><th>비고</th></tr></thead><tbody><tr><td>751</td><td>KTX-이음</td><td>10:43</td><td>10:59</td><td>11:06</td><td>11:26</td><td>11:40</td><td>매일</td></tr><tr><td>753</td><td>KTX-이음</td><td>16:50</td><td>17:07</td><td>17:15</td><td>17:36</td><td>17:51</td><td>매일</td></tr><tr><td>755</td><td>KTX-이음</td><td>22:35</td><td>22:52</td><td>22:59</td><td>23:18</td><td>23:32</td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>삼척</th><th>삼척해변</th><th>추암</th><th>동해</th><th>묵호</th><th>정동진</th><th>강릉</th><th>비 고</th></tr></thead><tbody><tr><td>1801</td><td>ITX-마음</td><td>09:19</td><td></td><td></td><td>09:35</td><td></td><td></td><td></td><td></td></tr><tr><td>1851</td><td>누리로</td><td>10:01</td><td></td><td></td><td>10:24</td><td>10:33</td><td>10:55</td><td>11:12</td><td>월화수목금</td></tr><tr><td>1861</td><td>누리로</td><td>10:01</td><td>10:09</td><td>10:13</td><td>10:24</td><td>10:33</td><td>10:55</td><td>11:12</td><td>토일</td></tr><tr><td>1803</td><td>ITX-마음</td><td>13:58</td><td></td><td></td><td>14:15</td><td></td><td></td><td></td><td></td></tr><tr><td>1805</td><td>ITX-마음</td><td>15:03</td><td></td><td></td><td>15:19</td><td></td><td></td><td></td><td></td></tr><tr><td>1853</td><td>누리로</td><td>15:55</td><td></td><td></td><td>16:16</td><td>16:24</td><td>16:45</td><td>17:00</td><td>월화수목금</td></tr><tr><td>1863</td><td>누리로</td><td>15:55</td><td>16:03</td><td>16:07</td><td>16:16</td><td>16:24</td><td>16:45</td><td>17:00</td><td>토일</td></tr><tr><td>1821</td><td>ITX-마음</td><td>18:22</td><td></td><td></td><td>18:42</td><td>18:50</td><td>19:12</td><td>19:27</td><td>월화수목금</td></tr><tr><td>1831</td><td>ITX-마음</td><td>18:22</td><td>18:29</td><td>18:33</td><td>18:42</td><td>18:50</td><td>19:12</td><td>19:27</td><td>토일</td></tr><tr><td>1807</td><td>ITX-마음</td><td>19:52</td><td></td><td></td><td>20:08</td><td></td><td></td><td></td><td></td></tr><tr><td>1865</td><td>누리로</td><td>22:12</td><td></td><td></td><td>22:29</td><td>22:37</td><td>22:58</td><td>23:13</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 삼척 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>삼척</th><th>울진</th><th>영덕</th><th>포항</th><th>경주</th><th>태화강</th><th>부전</th><th>비고</th></tr></thead><tbody><tr><td>752</td><td>KTX-이음</td><td>10:42</td><td>11:09</td><td>11:43</td><td>12:06</td><td>12:32</td><td>12:53</td><td>13:36</td><td>매일</td></tr><tr><td>754</td><td>KTX-이음</td><td>15:56</td><td>16:23</td><td>16:57</td><td>17:20</td><td>17:46</td><td>18:07</td><td>18:50</td><td>매일</td></tr><tr><td>756</td><td>KTX-이음</td><td>19:35</td><td>20:02</td><td>20:36</td><td>20:57</td><td>21:24</td><td>21:46</td><td>22:29</td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>삼척</th><th>근덕</th><th>임원</th><th>옥원</th><th>흥부</th><th>죽변</th><th>울진</th><th>매화</th><th>기성</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>월포</th><th>포항</th><th>서경주</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th><th>비 고</th></tr></thead><tbody><tr><td>1822</td><td>ITX-마음</td><td>06:47</td><td></td><td></td><td></td><td></td><td></td><td>07:22</td><td></td><td></td><td>07:48</td><td>07:57</td><td></td><td>08:13</td><td></td><td>08:38</td><td>08:58</td><td>09:11</td><td>09:31</td><td>09:39</td><td>10:01</td><td>10:22</td><td>10:32</td><td>10:39</td><td>10:49</td><td></td></tr><tr><td>1802</td><td>ITX-마음</td><td>12:29</td><td></td><td></td><td></td><td>12:56</td><td>13:04</td><td>13:12</td><td></td><td>13:29</td><td></td><td>13:47</td><td>13:55</td><td>14:06</td><td></td><td>14:32</td><td>14:53</td><td>15:07</td><td>15:26</td><td>15:34</td><td></td><td>16:07</td><td>16:17</td><td></td><td>16:32</td><td></td></tr><tr><td>1814</td><td>ITX-마음</td><td>17:40</td><td></td><td></td><td>18:03</td><td>18:13</td><td>18:20</td><td>18:28</td><td>18:39</td><td>18:50</td><td>19:02</td><td>19:11</td><td></td><td>19:27</td><td></td><td>19:52</td><td>20:13</td><td>20:26</td><td>20:46</td><td>20:54</td><td>21:10</td><td>21:31</td><td>21:42</td><td>21:50</td><td>22:00</td><td>월화수목금</td></tr><tr><td>1804</td><td>ITX-마음</td><td>17:40</td><td></td><td></td><td>18:03</td><td>18:13</td><td>18:20</td><td>18:28</td><td>18:39</td><td>18:50</td><td>19:02</td><td>19:11</td><td></td><td>19:27</td><td></td><td>19:52</td><td>20:13</td><td>20:26</td><td>20:46</td><td>20:54</td><td>21:10</td><td>21:31</td><td>21:42</td><td>21:50</td><td>22:00</td><td>토일</td></tr><tr><td>1806</td><td>ITX-마음</td><td>18:21</td><td>18:33</td><td>18:41</td><td>18:48</td><td>18:57</td><td></td><td>19:08</td><td></td><td>19:25</td><td>19:38</td><td>19:47</td><td>19:55</td><td>20:06</td><td>20:23</td><td>20:34</td><td>20:54</td><td>21:07</td><td>21:26</td><td>21:34</td><td></td><td>22:02</td><td>22:18</td><td></td><td>22:33</td><td></td></tr></tbody></table></div>



<h3 class="wp-block-heading">출발 : 삼척 → 도착 : 동대구</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>삼척</th><th>근덕</th><th>임원</th><th>옥원</th><th>흥부</th><th>죽변</th><th>울진</th><th>매화</th><th>기성</th><th>평해</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>강구</th><th>장사</th><th>월포</th><th>포항</th><th>안강</th><th>서경주</th><th>아화</th><th>영천</th><th>하양</th><th>동대구</th><th>비 고</th></tr></thead><tbody><tr><td>1852</td><td>누리로</td><td>07:45</td><td>07:57</td><td>08:06</td><td>08:13</td><td>08:23</td><td>08:30</td><td>08:38</td><td>08:48</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>월화수목금</td></tr><tr><td>1862</td><td>누리로</td><td>07:45</td><td>07:57</td><td>08:06</td><td>08:13</td><td>08:23</td><td>08:30</td><td>08:38</td><td>08:48</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>토일</td></tr><tr><td>1854</td><td>누리로</td><td>10:01</td><td></td><td>10:19</td><td>10:28</td><td>10:38</td><td>10:45</td><td>10:53</td><td></td><td></td><td></td><td>11:20</td><td>11:33</td><td>11:41</td><td>11:52</td><td>11:59</td><td>12:04</td><td>12:13</td><td>12:26</td><td>12:40</td><td>12:51</td><td>13:08</td><td>13:19</td><td>13:29</td><td>13:45</td><td>월화수목금</td></tr><tr><td>1864</td><td>누리로</td><td>10:01</td><td></td><td>10:19</td><td>10:28</td><td>10:38</td><td>10:45</td><td>10:53</td><td></td><td></td><td></td><td>11:20</td><td>11:33</td><td>11:41</td><td>11:52</td><td>11:59</td><td>12:04</td><td>12:13</td><td>12:26</td><td>12:40</td><td>12:51</td><td>13:08</td><td>13:19</td><td>13:29</td><td>13:45</td><td>토일</td></tr><tr><td>1866</td><td>누리로</td><td>13:33</td><td>13:46</td><td>13:55</td><td>14:02</td><td>14:12</td><td>14:19</td><td>14:27</td><td>14:37</td><td>14:49</td><td></td><td>15:01</td><td>15:09</td><td></td><td>15:25</td><td></td><td>15:39</td><td>15:47</td><td>15:59</td><td>16:13</td><td>16:23</td><td>16:41</td><td>16:52</td><td>17:02</td><td>17:18</td><td></td></tr><tr><td>1824</td><td>ITX-마음</td><td>20:59</td><td></td><td></td><td></td><td></td><td></td><td>21:36</td><td></td><td>21:55</td><td></td><td></td><td></td><td></td><td>22:25</td><td></td><td></td><td>22:42</td><td>22:53</td><td></td><td>23:13</td><td></td><td>23:38</td><td>23:48</td><td>00:04</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>삼척역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '삼척'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">삼척역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">삼척역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '32020';
            let curName = '삼척';
            let altCity = '';
            let altName = '';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">삼척역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">15℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 구름많음</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">20%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">삼척역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%B9%B4%ED%8E%98%EC%98%A4%EB%B6%84%EB%8F%99+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%82%BC%EC%B2%99%EC%8B%9C+%EC%98%A4%EB%B6%84%EB%8F%99+%EC%82%B030-19+%EC%B9%B4%ED%8E%98" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">카페오분동</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;카페,디저트</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 삼척시 오분동 산30-19 카페</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%8B%A0%EB%B6%88%ED%96%A5%EC%AD%88%EA%BE%B8%EB%AF%B8%EB%B3%B6%EC%9D%8C+%EC%82%BC%EC%B2%99%EC%A0%90+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%82%BC%EC%B2%99%EC%8B%9C+%EC%A0%95%EC%83%81%EB%8F%99+261-10+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">신불향쭈꾸미볶음 삼척점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;주꾸미요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 삼척시 정상동 261-10 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%82%98%EB%93%9C%EB%A6%AC+%EA%B9%80%EB%B0%A5%EC%B2%9C%EA%B5%AD+%EB%8F%84%EA%B3%84%EC%A0%90+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%82%BC%EC%B2%99%EC%8B%9C+%EB%8F%84%EA%B3%84%EC%9D%8D+%EC%A0%84%EB%91%90%EB%A6%AC+63-8+%EB%82%98%EB%93%9C%EB%A6%AC%EA%B9%80%EB%B0%A5%EC%B2%9C%EA%B5%AD" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">나드리 김밥천국 도계점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">분식&gt;종합분식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 삼척시 도계읍 전두리 63-8 나드리김밥천국</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%9A%B0%EA%B0%80%EB%84%A4%EB%A7%9B%EC%B0%9C+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%82%BC%EC%B2%99%EC%8B%9C+%EB%8F%84%EA%B3%84%EC%9D%8D+%EC%A0%84%EB%91%90%EB%A6%AC+62-8" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">우가네맛찜</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;육류,고기요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 삼척시 도계읍 전두리 62-8</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%88%AC%EB%8B%A4%EB%A6%AC+%EB%8F%84%EA%B3%84%EC%97%AD%EC%A0%90+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%82%BC%EC%B2%99%EC%8B%9C+%EB%8F%84%EA%B3%84%EC%9D%8D+%EC%A0%84%EB%91%90%EB%A6%AC+62-9" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">투다리 도계역점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">술집&gt;오뎅,꼬치</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 삼척시 도계읍 전두리 62-9</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">삼척역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">삼척역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 삼척역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%82%BC%EC%B2%99%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/02/삼척역-KTX-이음-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="삼척역-KTX-이음-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-18483" srcset="https://krailroad.co.kr/wp-content/uploads/2026/02/삼척역-KTX-이음-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/02/삼척역-KTX-이음-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/02/삼척역-KTX-이음-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>근덕역 기차 타고 레일바이크 즐기기 ITX-마음 누리로 시간표 요금 및 궁촌해변 정차역</title>
		<link>https://krailroad.co.kr/%ea%b7%bc%eb%8d%95%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ed%83%80%ea%b3%a0-%eb%a0%88%ec%9d%bc%eb%b0%94%ec%9d%b4%ed%81%ac-%ec%a6%90%ea%b8%b0%ea%b8%b0-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%8b%9c/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Fri, 13 Feb 2026 00:43:11 +0000</pubDate>
				<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[근덕역 기차 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=18446</guid>

					<description><![CDATA[근덕역 기차를 이용해 역에 내려서면 가장 먼저 느껴지는 건 코끝을 스치는 바다 냄새와 눈앞에 펼쳐지는 평화로운 풍경인데요. 비행기의 굉음이 가득한 공항과는 다르게, 이곳 근덕역은 잔잔한 파도 소리가 여행의 시작을 차분하게 알려주는 기분이 들어서 참 좋습니다. 이번 동해선 노선 중에서도 근덕역은 단순히 스쳐 지나가는 간이역이 아니라, 전 세계 팬들이 찾아오는 K-POP 성지이자 삼척 레저의 중심지로서 특별한 ... <a title="근덕역 기차 타고 레일바이크 즐기기 ITX-마음 누리로 시간표 요금 및 궁촌해변 정차역" class="read-more button" href="https://krailroad.co.kr/%ea%b7%bc%eb%8d%95%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ed%83%80%ea%b3%a0-%eb%a0%88%ec%9d%bc%eb%b0%94%ec%9d%b4%ed%81%ac-%ec%a6%90%ea%b8%b0%ea%b8%b0-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%8b%9c/" aria-label="근덕역 기차 타고 레일바이크 즐기기 ITX-마음 누리로 시간표 요금 및 궁촌해변 정차역 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">근덕역 기차를 이용해 역에 내려서면 가장 먼저 느껴지는 건 코끝을 스치는 바다 냄새와 눈앞에 펼쳐지는 평화로운 풍경인데요. 비행기의 굉음이 가득한 공항과는 다르게, 이곳 근덕역은 잔잔한 파도 소리가 여행의 시작을 차분하게 알려주는 기분이 들어서 참 좋습니다. 이번 동해선 노선 중에서도 근덕역은 단순히 스쳐 지나가는 간이역이 아니라, 전 세계 팬들이 찾아오는 K-POP 성지이자 삼척 레저의 중심지로서 특별한 매력을 가진 곳이라는 게 실감납니다.</p>



<p class="wp-block-paragraph">방탄투어나 삼척의 푸른 바다를 보기 위해 근덕역 기차를 이용해 근덕을 찾는 분들이 헛걸음하지 않도록, <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a> 공식 데이터와 실제 운행 현황을 대조하며 내용을 정리해 보았습니다. 실제 역 현장 상황을 반영하여 정리했으니 여행 준비에 참고하시면 좋겠습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>근덕역 ITX-마음 누리로 이용 안내</strong></h2>



<h3 class="wp-block-heading">맹방해수욕장 BTS 촬영지와 K-POP 성지</h3>



<p class="wp-block-paragraph">근덕면 여행에서 절대 빼놓을 수 없는 곳이 바로 맹방해수욕장입니다. 이곳은 빌보드를 점령했던 방탄소년단(BTS)의 싱글 앨범 자켓 사진을 촬영한 장소로 알려지며 전 세계 아미(ARMY)들이 반드시 들러야 할 삼척BTS해변으로 거듭났습니다. 백사장 위에는 당시 촬영 소품이었던 알록달록한 파라솔과 선베드가 그대로 재현되어 있어, 누구나 주인공이 된 듯한 기분으로 인증샷을 남길 수 있는 버터촬영지의 매력을 온전히 느낄 수 있습니다. 덕분에 단순한 바닷가를 넘어 전 세계적인 K-POP 성지로 불리게 되었습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">가족 여행객을 위한 맹방의 장점</h3>



<p class="wp-block-paragraph">맹방해수욕장은 수심이 얕고 경사가 완만하여 아이들과 함께 오는 가족 단위 여행객에게 안성맞춤입니다. 넓게 펼쳐진 명사십리 백사장에서 아이들이 마음껏 뛰어놀기 좋고, 주변에 울창한 송림이 우거져 있어 캠핑이나 산책을 즐기기에도 최적의 환경을 갖추고 있어 복잡한 도심을 벗어나 탁 트인 바다를 배경으로 방탄투어의 설렘과 가족 간의 여유를 동시에 챙길 수 있다는 것이 장점입니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">삼척해양레일바이크와 근덕레일바이크</h3>



<p class="wp-block-paragraph">근덕역 기차를 이용해 역에 도착하면 인근에 동해안의 절경을 가장 가까이서 체험할 수 있는 삼척해양레일바이크가 운영되고 있습니다. 근덕레일바이크는 곰치항과 궁촌항 사이의 해안선을 따라 설치되어 있으며, 울창한 소나무 터널과 화려한 조명으로 꾸며진 루미나리에 터널을 지나며, 특히 페달을 밟으며 창밖으로 보이는 에메랄드빛 바다는 기차 여행과는 또 다른 속도감과 개방감을 주며, 연인이나 가족과 함께 웃으며 즐기기에 좋은 레저 코스입니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">근덕역 기차 이용시 주변 안내</h3>



<p class="wp-block-paragraph">1️⃣ <strong>위치 및 주변 관광:</strong> 근덕역은 면사무소 소재지와 인접해 있으며, 역을 기점으로 맹방해수욕장과 레일바이크 탑승장까지 이동 동선이 아주 효율적입니다. 대중교통을 이용해 BTS 해변을 구경하고 레일바이크를 타는 코스는 당일치기 여행으로도 충분히 소화할 수 있습니다.</p>



<p class="wp-block-paragraph">2️⃣ <strong>역세권의 특징:</strong> 근덕역 기차를 이용해 역에 도착하면 역 주변 상권이 아주 화려하지는 않지만, 오히려 근덕면 특유의 소박하고 정겨운 분위기가 있으며, 인근의 꽈배기 맛집이나 로컬 식당들을 찾아보는 것도 기차 여행자만이 누릴 수 있는 소소한 즐거움이 될 것입니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>근덕역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">근덕<br>↓<br>북울산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1806호</span><div class="time-display">18:33</div><div class="arrival-info">21:26 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">18:33</div><div class="arrival-info">21:26 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">근덕<br>↓<br>태화강</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1806호</span><div class="time-display">18:33</div><div class="arrival-info">21:34 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">18:33</div><div class="arrival-info">21:34 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">근덕<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1806호</span><div class="time-display">18:33</div><div class="arrival-info">22:33 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">18:33</div><div class="arrival-info">22:33 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">근덕<br>↓<br>영덕</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">07:57</div><div class="arrival-info">09:40 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">13:46</div><div class="arrival-info">15:25 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">근덕<br>↓<br>포항</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">07:57</div><div class="arrival-info">10:17 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">13:46</div><div class="arrival-info">15:59 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">근덕<br>↓<br>동대구</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">07:57</div><div class="arrival-info">11:36 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">13:46</div><div class="arrival-info">17:18 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">근덕<br>↓<br>울진</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1803호</span><div class="time-display">13:47</div><div class="arrival-info">13:15 도착</div></td><td><span class="train-detail">1807호</span><div class="time-display">19:42</div><div class="arrival-info">19:07 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1853호</span><div class="time-display">15:41</div><div class="arrival-info">15:10 도착</div></td><td><span class="train-detail">1863호</span><div class="time-display">15:41</div><div class="arrival-info">15:10 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">근덕<br>↓<br>동해</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1803호</span><div class="time-display">13:47</div><div class="arrival-info">14:15 도착</div></td><td><span class="train-detail">1807호</span><div class="time-display">19:42</div><div class="arrival-info">20:08 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1853호</span><div class="time-display">15:41</div><div class="arrival-info">16:16 도착</div></td><td><span class="train-detail">1863호</span><div class="time-display">15:41</div><div class="arrival-info">16:16 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">근덕<br>↓<br>강릉</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1853호</span><div class="time-display">15:41</div><div class="arrival-info">17:00 도착</div></td><td><span class="train-detail">1863호</span><div class="time-display">15:41</div><div class="arrival-info">17:00 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>근덕</strong>역 ITX-마음 누리로 요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>운임</th></tr></thead><tbody><tr><td>동해2</td><td>무궁화</td><td class="highlight">근덕</td><td class="highlight">서경주</td><td>11,100</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">근덕</td><td class="highlight">서경주</td><td>16,500</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">근덕</td><td class="highlight">서경주</td><td>16,500</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">근덕</td><td class="highlight">동대구</td><td>16,600</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">근덕</td><td class="highlight">동대구</td><td>22,900</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">강릉</td><td class="highlight">근덕</td><td>4,700</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">근덕</td><td>7,000</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">근덕</td><td>7,000</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">동해</td><td class="highlight">근덕</td><td>2,600</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">근덕</td><td>4,800</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">근덕</td><td>4,800</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">근덕</td><td class="highlight">태화강</td><td>21,800</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">근덕</td><td class="highlight">북울산</td><td>20,900</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">근덕</td><td class="highlight">부전</td><td>27,900</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong><strong>근덕</strong>역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <s>근덕역 KTX 노선 없음</s><br>✅ <s><s>근덕</s>역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ea%b7%bc%eb%8d%95%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ed%83%80%ea%b3%a0-%eb%a0%88%ec%9d%bc%eb%b0%94%ec%9d%b4%ed%81%ac-%ec%a6%90%ea%b8%b0%ea%b8%b0-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%8b%9c/">근덕역 ITX-마음·누리로 시간표</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>근덕역 <strong>ITX-마음 누리로</strong> 시간표</strong></h2>



<h3 class="wp-block-heading">출발 : 근덕 → 도착 : 동대구</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>근덕</th><th>임원</th><th>옥원</th><th>흥부</th><th>죽변</th><th>울진</th><th>매화</th><th>기성</th><th>평해</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>강구</th><th>장사</th><th>월포</th><th>포항</th><th>안강</th><th>서경주</th><th>아화</th><th>영천</th><th>하양</th><th>동대구</th><th>비 고</th></tr></thead><tbody><tr><td>1852</td><td>누리로</td><td>07:57</td><td>08:06</td><td>08:13</td><td>08:23</td><td>08:30</td><td>08:38</td><td>08:48</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>월화수목금</td></tr><tr><td>1862</td><td>누리로</td><td>07:57</td><td>08:06</td><td>08:13</td><td>08:23</td><td>08:30</td><td>08:38</td><td>08:48</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>토일</td></tr><tr><td>1866</td><td>누리로</td><td>13:46</td><td>13:55</td><td>14:02</td><td>14:12</td><td>14:19</td><td>14:27</td><td>14:37</td><td>14:49</td><td></td><td>15:01</td><td>15:09</td><td></td><td>15:25</td><td></td><td>15:39</td><td>15:47</td><td>15:59</td><td>16:13</td><td>16:23</td><td>16:41</td><td>16:52</td><td>17:02</td><td>17:18</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 근덕 → 도착 : 동해·강릉</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>근덕</th><th>삼척</th><th>삼척해변</th><th>추암</th><th>동해</th><th>묵호</th><th>정동진</th><th>강릉</th><th>비 고</th></tr></thead><tbody><tr><td>1853</td><td>누리로</td><td>15:41</td><td>15:55</td><td></td><td></td><td>16:16</td><td>16:24</td><td>16:45</td><td>17:00</td><td>월화수목금</td></tr><tr><td>1863</td><td>누리로</td><td>15:41</td><td>15:55</td><td>16:03</td><td>16:07</td><td>16:16</td><td>16:24</td><td>16:45</td><td>17:00</td><td>토일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>근덕</th><th>삼척</th><th>동해</th></tr></thead><tbody><tr><td>1803</td><td>ITX-마음</td><td>13:47</td><td>13:58</td><td>14:15</td></tr><tr><td>1807</td><td>ITX-마음</td><td>19:42</td><td>19:52</td><td>20:08</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 근덕 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>근덕</th><th>임원</th><th>옥원</th><th>흥부</th><th>울진</th><th>기성</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>월포</th><th>포항</th><th>서경주</th><th>경주</th><th>북울산</th><th>태화강</th><th>기장</th><th>신해운대</th><th>부전</th></tr></thead><tbody><tr><td>1806</td><td>ITX-마음</td><td>18:33</td><td>18:41</td><td>18:48</td><td>18:57</td><td>19:08</td><td>19:25</td><td>19:38</td><td>19:47</td><td>19:55</td><td>20:06</td><td>20:23</td><td>20:34</td><td>20:54</td><td>21:07</td><td>21:26</td><td>21:34</td><td>22:02</td><td>22:18</td><td>22:33</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>근덕역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '근덕'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">근덕역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">근덕역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '32020';
            let curName = '근덕';
            let altCity = '';
            let altName = '정차';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">근덕역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">13℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 구름많음</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">20%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">근덕역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%95%AD%EA%B5%AC%ED%9A%8C%ED%83%80%EC%9A%B4+%ED%8C%8C%EC%9D%B8%EB%B0%B8%EB%A6%ACCC%EB%B3%B8%EC%A0%90+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%82%BC%EC%B2%99%EC%8B%9C+%EA%B7%BC%EB%8D%95%EB%A9%B4+%EB%8D%95%EC%82%B0%EB%A6%AC+48-3" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">항구회타운 파인밸리CC본점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;생선회</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 삼척시 근덕면 덕산리 48-3</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EA%B7%BC%EB%8D%95%EC%9D%B4%EC%82%BC%EC%B2%99%EA%BD%88%EB%B0%B0%EA%B8%B0+%EB%B3%B8%EC%A0%90+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%82%BC%EC%B2%99%EC%8B%9C+%EA%B7%BC%EB%8D%95%EB%A9%B4+%EA%B5%90%EA%B0%80%EB%A6%AC+565-8" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">근덕이삼척꽈배기 본점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;도넛</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 삼척시 근덕면 교가리 565-8</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%8D%95%EC%82%B0%EB%B0%94%EB%8B%A4%ED%9A%9F%EC%A7%91+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%82%BC%EC%B2%99%EC%8B%9C+%EA%B7%BC%EB%8D%95%EB%A9%B4+%EB%8D%95%EC%82%B0%EB%A6%AC+76+%EB%8D%95%EC%82%B0%EB%B0%94%EB%8B%A4%ED%9A%9F%EC%A7%91" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">덕산바다횟집</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;생선회</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 삼척시 근덕면 덕산리 76 덕산바다횟집</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%9E%A5%ED%98%B8%EC%9A%A9%ED%99%94%EA%B4%80%EA%B4%91%EB%9E%9C%EB%93%9C%EC%8B%9D%EB%8B%B9+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%82%BC%EC%B2%99%EC%8B%9C+%EA%B7%BC%EB%8D%95%EB%A9%B4+%EC%9E%A5%ED%98%B8%EB%A6%AC+318-1+%EC%9A%A9%ED%99%94%ED%98%B8%ED%85%94" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">장호용화관광랜드식당</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;한식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 삼척시 근덕면 장호리 318-1 용화호텔</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%9D%B4%ED%99%94%EB%A3%A8+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%82%BC%EC%B2%99%EC%8B%9C+%EA%B7%BC%EB%8D%95%EB%A9%B4+%EA%B5%90%EA%B0%80%EB%A6%AC+366-6" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">이화루</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">중식&gt;중식당</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 삼척시 근덕면 교가리 366-6</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">근덕역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">근덕역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 근덕역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EA%B7%BC%EB%8D%95%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/02/근덕역-가차-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="근덕역-가차-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-18482" srcset="https://krailroad.co.kr/wp-content/uploads/2026/02/근덕역-가차-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/02/근덕역-가차-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/02/근덕역-가차-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>임원역 기차 시간표 수로부인 헌화공원행 ITX-마음 누리로 요금 노선</title>
		<link>https://krailroad.co.kr/%ec%9e%84%ec%9b%90%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%88%98%eb%a1%9c%eb%b6%80%ec%9d%b8-%ed%97%8c%ed%99%94%ea%b3%b5%ec%9b%90%ed%96%89-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Fri, 13 Feb 2026 00:00:10 +0000</pubDate>
				<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[임원역 기차 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=18434</guid>

					<description><![CDATA[임원역 기차는 강원도 삼척의 가장 아래쪽, 경북과 경계를 이루는 지점에 신설된 역으로 동해선 기차 여행의 재미를 제대로 느낄 수 있는 곳입니다. 예전에는 &#8216;비옥한 들판&#8217;이라는 뜻의 옥원이라 불리기도 했으며, 지금은 ITX-마음과 누리로가 정차하며 7번 국도 드라이브와는 또 다른 바다 풍경을 누릴 수 있는 곳이 되었습니다. 이번 정리는 임원(옥원)에서 출발해 동해와 강릉으로 향하는 북쪽 노선뿐 아니라 포항, ... <a title="임원역 기차 시간표 수로부인 헌화공원행 ITX-마음 누리로 요금 노선" class="read-more button" href="https://krailroad.co.kr/%ec%9e%84%ec%9b%90%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%88%98%eb%a1%9c%eb%b6%80%ec%9d%b8-%ed%97%8c%ed%99%94%ea%b3%b5%ec%9b%90%ed%96%89-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac/" aria-label="임원역 기차 시간표 수로부인 헌화공원행 ITX-마음 누리로 요금 노선 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">임원역 기차는 강원도 삼척의 가장 아래쪽, 경북과 경계를 이루는 지점에 신설된 역으로 동해선 기차 여행의 재미를 제대로 느낄 수 있는 곳입니다. 예전에는 &#8216;비옥한 들판&#8217;이라는 뜻의 옥원이라 불리기도 했으며, 지금은 ITX-마음과 누리로가 정차하며 7번 국도 드라이브와는 또 다른 바다 풍경을 누릴 수 있는 곳이 되었습니다.</p>



<p class="wp-block-paragraph">이번 정리는 임원(옥원)에서 출발해 동해와 강릉으로 향하는 북쪽 노선뿐 아니라 포항, 경주, 동대구, 그리고 최근 부전까지 연결된 KTX-이음 노선까지 자료를 다루고 있습니다. <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a> API 데이터를 바탕으로 임원역 기차 출발 시간표와 요금, 그리고 버스, 날씨, 주차장 요금등을 대조하였으며, 역 현장에서 실시간으로 확인할 수 있는 열차 정보들을 모았습니다. 단 아직 신설된지 얼마 안된 동해선은 주차장 요금이나, 실시간 버스 도착, 주변 맛집 기능들은 자료가 없어 출력되지 않을 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>임원역 ITX-마음 누리로 이용 안내</strong></h2>



<h3 class="wp-block-heading">임원항의 헌화공원 엘리베이터</h3>



<p class="wp-block-paragraph">임원역 기차를 이용해 역에 도착했다면 역에서 조금만 이동하면 해산물이 풍부한 임원항에 닿게 되며, 이곳의 명물인 수로부인 헌화공원도 빼놓을 수 없습니다. 특히 항구와 공원을 잇는 엘리베이터가 새로 생겨서 예전처럼 힘들게 오르막을 걷지 않아도 되니 접근성이 아주 좋아졌습니다. 공원 위에서 내려다보는 동해는 수로부인 설화가 왜 이곳을 배경으로 탄생했는지 고개를 끄덕이게 할 만큼 수려하며, 아이들과 가벼운 역사 공부를 겸해 들러보기에도 괜찮습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">해신당공원과 묘한 경계 분위기</h3>



<p class="wp-block-paragraph">임원역 인근의 해신당공원은 독특한 민속 신앙과 바다 절경이 어우러진 삼척의 숨은 명소입니다. 지리적으로 강원도 남쪽 끝이라 그런지 경상도와 강원도의 문화가 적절히 섞인 듯한 특유의 분위기가 느껴지기도 하며, 유명 관광지의 북적임에서 벗어나 한적하게 바닷바람을 맞으며 걷기에 좋습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">기차 안에서 보는 7번 국도의 절경</h3>



<p class="wp-block-paragraph">역을 기점 삼아 삼척의 해안선을 따라가다 보면 왜 이곳이 임원역 기차 여행자들의 아지트가 되었는지 금방 알게 됩니다. 7번 국도를 따라 차로 달릴 때는 운전하느라 놓치기 쉬웠던 해안 절벽과 바다의 조화로운 모습들을 열차 안에서는 아주 편안하게 감상할 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>임원역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">임원<br>↓<br>북울산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1806호</span><div class="time-display">18:41</div><div class="arrival-info">21:26 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">18:41</div><div class="arrival-info">21:26 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">임원<br>↓<br>태화강</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1806호</span><div class="time-display">18:41</div><div class="arrival-info">21:34 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">18:41</div><div class="arrival-info">21:34 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">임원<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1806호</span><div class="time-display">18:41</div><div class="arrival-info">22:33 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">18:41</div><div class="arrival-info">22:33 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">임원<br>↓<br>영덕</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">08:06</div><div class="arrival-info">09:40 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">13:55</div><div class="arrival-info">15:25 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">임원<br>↓<br>포항</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">08:06</div><div class="arrival-info">10:17 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">13:55</div><div class="arrival-info">15:59 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">임원<br>↓<br>동대구</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">08:06</div><div class="arrival-info">11:36 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">13:55</div><div class="arrival-info">17:18 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">임원<br>↓<br>울진</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">09:42</div><div class="arrival-info">09:13 도착</div></td><td><span class="train-detail">1861호</span><div class="time-display">09:42</div><div class="arrival-info">09:13 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">임원<br>↓<br>동해</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">09:42</div><div class="arrival-info">10:24 도착</div></td><td><span class="train-detail">1861호</span><div class="time-display">09:42</div><div class="arrival-info">10:24 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">임원<br>↓<br>강릉</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">09:42</div><div class="arrival-info">11:12 도착</div></td><td><span class="train-detail">1861호</span><div class="time-display">09:42</div><div class="arrival-info">11:12 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>임원</strong>역 ITX-마음 누리로 요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>운임</th></tr></thead><tbody><tr><td>동해2</td><td>무궁화</td><td class="highlight">임원</td><td class="highlight">서경주</td><td>10,500</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">임원</td><td class="highlight">서경주</td><td>15,600</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">임원</td><td class="highlight">서경주</td><td>15,600</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">임원</td><td class="highlight">동대구</td><td>16,000</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">임원</td><td class="highlight">동대구</td><td>22,000</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">강릉</td><td class="highlight">임원</td><td>5,300</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">임원</td><td>7,900</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">임원</td><td>7,900</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">동해</td><td class="highlight">임원</td><td>2,600</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">임원</td><td>4,800</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">임원</td><td>4,800</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">임원</td><td class="highlight">태화강</td><td>20,900</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">임원</td><td class="highlight">북울산</td><td>19,900</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">임원</td><td class="highlight">부전</td><td>27,000</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong><strong>임원</strong>역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <s>임원역 KTX 노선 없음</s><br>✅ <s><s>임원</s>역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ec%9e%84%ec%9b%90%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%88%98%eb%a1%9c%eb%b6%80%ec%9d%b8-%ed%97%8c%ed%99%94%ea%b3%b5%ec%9b%90%ed%96%89-itx-%eb%a7%88%ec%9d%8c-%eb%88%84%eb%a6%ac/">임원역 ITX-마음·누리로 시간표</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>임원역 <strong>ITX-마음 누리로</strong> 시간표</strong></h2>



<h3 class="wp-block-heading">출발 : 임원 → 도착 : 동대구</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>임원</th><th>옥원</th><th>흥부</th><th>죽변</th><th>울진</th><th>매화</th><th>기성</th><th>평해</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>강구</th><th>장사</th><th>월포</th><th>포항</th><th>안강</th><th>서경주</th><th>아화</th><th>영천</th><th>하양</th><th>동대구</th><th>비 고</th></tr></thead><tbody><tr><td>1852</td><td>누리로</td><td>08:06</td><td>08:13</td><td>08:23</td><td>08:30</td><td>08:38</td><td>08:48</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>월화수목금</td></tr><tr><td>1862</td><td>누리로</td><td>08:06</td><td>08:13</td><td>08:23</td><td>08:30</td><td>08:38</td><td>08:48</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>토일</td></tr><tr><td>1854</td><td>누리로</td><td>10:19</td><td>10:28</td><td>10:38</td><td>10:45</td><td>10:53</td><td></td><td></td><td></td><td>11:20</td><td>11:33</td><td>11:41</td><td>11:52</td><td>11:59</td><td>12:04</td><td>12:13</td><td>12:26</td><td>12:40</td><td>12:51</td><td>13:08</td><td>13:19</td><td>13:29</td><td>13:45</td><td>월화수목금</td></tr><tr><td>1864</td><td>누리로</td><td>10:19</td><td>10:28</td><td>10:38</td><td>10:45</td><td>10:53</td><td></td><td></td><td></td><td>11:20</td><td>11:33</td><td>11:41</td><td>11:52</td><td>11:59</td><td>12:04</td><td>12:13</td><td>12:26</td><td>12:40</td><td>12:51</td><td>13:08</td><td>13:19</td><td>13:29</td><td>13:45</td><td>토일</td></tr><tr><td>1866</td><td>누리로</td><td>13:55</td><td>14:02</td><td>14:12</td><td>14:19</td><td>14:27</td><td>14:37</td><td>14:49</td><td></td><td>15:01</td><td>15:09</td><td></td><td>15:25</td><td></td><td>15:39</td><td>15:47</td><td>15:59</td><td>16:13</td><td>16:23</td><td>16:41</td><td>16:52</td><td>17:02</td><td>17:18</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 임원 → 도착 : 동해·강릉</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>임원</th><th>삼척</th><th>삼척해변</th><th>추암</th><th>동해</th><th>묵호</th><th>정동진</th><th>강릉</th><th>비 고</th></tr></thead><tbody><tr><td>1851</td><td>누리로</td><td>09:42</td><td>10:01</td><td></td><td></td><td>10:24</td><td>10:33</td><td>10:55</td><td>11:12</td><td>월화수목금</td></tr><tr><td>1861</td><td>누리로</td><td>09:42</td><td>10:01</td><td>10:09</td><td>10:13</td><td>10:24</td><td>10:33</td><td>10:55</td><td>11:12</td><td>토일</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 임원 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>임원</th><th>옥원</th><th>흥부</th><th>울진</th><th>기성</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>월포</th><th>포항</th><th>서경주</th><th>경주</th><th>북울산</th><th>태화강</th><th>기장</th><th>신해운대</th><th>부전</th></tr></thead><tbody><tr><td>1806</td><td>ITX-마음</td><td>18:41</td><td>18:48</td><td>18:57</td><td>19:08</td><td>19:25</td><td>19:38</td><td>19:47</td><td>19:55</td><td>20:06</td><td>20:23</td><td>20:34</td><td>20:54</td><td>21:07</td><td>21:26</td><td>21:34</td><td>22:02</td><td>22:18</td><td>22:33</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>임원역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '임원'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">임원역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">임원역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '32020';
            let curName = '임원';
            let altCity = '';
            let altName = '';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">임원역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">11℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">임원역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%95%B4%EB%8F%8B%EC%9D%B4%EC%8B%9D%EB%8B%B9+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%82%BC%EC%B2%99%EC%8B%9C+%EC%9B%90%EB%8D%95%EC%9D%8D+%EC%9E%84%EC%9B%90%EB%A6%AC+125-10" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">해돋이식당</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;한식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 삼척시 원덕읍 임원리 125-10</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%AF%B8%EC%A1%B0%EB%A6%AC%ED%9A%9F%EC%A7%91+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%82%BC%EC%B2%99%EC%8B%9C+%EC%9B%90%EB%8D%95%EC%9D%8D+%EC%9E%84%EC%9B%90%EB%A6%AC+129-3+%EB%AF%B8%EC%A1%B0%EB%A6%AC%ED%9A%9F%EC%A7%91" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">미조리횟집</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;생선회</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 삼척시 원덕읍 임원리 129-3 미조리횟집</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%99%A9%EA%B8%88%EC%B0%B9%EC%8C%80%EA%BD%88%EB%B0%B0%EA%B8%B0+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%82%BC%EC%B2%99%EC%8B%9C+%EC%9B%90%EB%8D%95%EC%9D%8D+%EC%9E%84%EC%9B%90%EB%A6%AC+125" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">황금찹쌀꽈배기</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;베이커리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 삼척시 원덕읍 임원리 125</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%89%B4%EC%9A%95%EA%BD%88%EB%B0%B0%EA%B8%B0%EC%9E%84%EC%9B%90%ED%95%AD%EC%A0%90+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%82%BC%EC%B2%99%EC%8B%9C+%EC%9B%90%EB%8D%95%EC%9D%8D+%EC%9E%84%EC%9B%90%EB%A6%AC+124-10" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">뉴욕꽈배기임원항점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;도넛</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 삼척시 원덕읍 임원리 124-10</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%95%B4%EC%B4%8C%ED%9A%9F%EC%A7%91+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%82%BC%EC%B2%99%EC%8B%9C+%EC%9B%90%EB%8D%95%EC%9D%8D+%EC%9E%84%EC%9B%90%EB%A6%AC+132-1" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">해촌횟집</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;생선회</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 삼척시 원덕읍 임원리 132-1</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">임원역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">임원역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 임원역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%9E%84%EC%9B%90%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/02/임원역-기차-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="임원역-기차-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-18481" srcset="https://krailroad.co.kr/wp-content/uploads/2026/02/임원역-기차-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/02/임원역-기차-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/02/임원역-기차-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>옥원역 ITX-마음·누리로 시간표 나만 알고 싶은 조용한 동해선 여행 요금 및 정차역</title>
		<link>https://krailroad.co.kr/%ec%98%a5%ec%9b%90%ec%97%ad-itx-%eb%a7%88%ec%9d%8c%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%82%98%eb%a7%8c-%ec%95%8c%ea%b3%a0-%ec%8b%b6%ec%9d%80-%ec%a1%b0%ec%9a%a9%ed%95%9c/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Tue, 10 Feb 2026 06:01:22 +0000</pubDate>
				<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[옥원역 ITX-마음 시간표]]></category>
		<category><![CDATA[옥원역 누리로 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=18404</guid>

					<description><![CDATA[강원도의 푸른 바다와 기암괴석이 어우러진 동해선 노선 중에서도 옥원역은 강원도 삼척의 숨은 보석 같은 곳으로, 기차에서 내리는 순간 경상도와 맞닿은 강원도의 남쪽 관문임을 실감하게 하는 매력적인 정거장입니다. 현재 옥원(비옥한 들판)에는 ITX-마음과 누리로가 정차하며 7번 국도를 따라 즐기던 드라이브와는 또 다른 낭만적인 기차 여행의 기회를 제공하고 있으며, 혼자 떠나는 혼행은 물론 아이들과 함께하는 가족 단위 당일치기 ... <a title="옥원역 ITX-마음·누리로 시간표 나만 알고 싶은 조용한 동해선 여행 요금 및 정차역" class="read-more button" href="https://krailroad.co.kr/%ec%98%a5%ec%9b%90%ec%97%ad-itx-%eb%a7%88%ec%9d%8c%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%82%98%eb%a7%8c-%ec%95%8c%ea%b3%a0-%ec%8b%b6%ec%9d%80-%ec%a1%b0%ec%9a%a9%ed%95%9c/" aria-label="옥원역 ITX-마음·누리로 시간표 나만 알고 싶은 조용한 동해선 여행 요금 및 정차역 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">강원도의 푸른 바다와 기암괴석이 어우러진 동해선 노선 중에서도 옥원역은 강원도 삼척의 숨은 보석 같은 곳으로, 기차에서 내리는 순간 경상도와 맞닿은 강원도의 남쪽 관문임을 실감하게 하는 매력적인 정거장입니다. 현재 옥원(비옥한 들판)에는 ITX-마음과 누리로가 정차하며 7번 국도를 따라 즐기던 드라이브와는 또 다른 낭만적인 기차 여행의 기회를 제공하고 있으며, 혼자 떠나는 혼행은 물론 아이들과 함께하는 가족 단위 당일치기 여행지로도 충분한 메리트를 지니고 있습니다.</p>



<p class="wp-block-paragraph">이 자료가 옥원에서 동해 강릉과 대구선인 포항 경주 동대구역 구간 그리고 최근 운행중인 KTX-이음의 부전으로 가는 노선들까지 참고하여 명소들을 찾으시는 분들을 위해 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a>의 공식 실시간 API 데이터를 대조하며 정리했습니다. 옥원역 시간표와 정차역, 구간별 요금은 물론이고 역에서 실시간으로 출발하는 열차 정보를 시간대별로 정확하게 확인하실 수 있도록 자료를 수집하였습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>옥원역 ITX-마음·누리로 이용 안내</strong></h2>



<h3 class="wp-block-heading">맛집과 수로부인 헌화공원의 서사</h3>



<p class="wp-block-paragraph">옥원(비옥한 들판)에서 멀지 않은 임원항은 신선한 해산물을 맛볼 수 있는 맛집들이 즐비하여 식도락 여행객들에게 인기가 높으며, 이곳에는 설화 속 수로부인의 이야기를 테마로 한 수로부인 헌화공원이 자리 잡고 있습니다. 공원 정상에 올라 동해의 절경을 감상하다 보면 왜 이곳이 예부터 수려한 풍광으로 이름났는지 자연스럽게 이해하게 되며, 아이들에게는 역사적 배경과 함께 멋진 조형물을 보여주는 교육적인 장소로도 괜찮습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">해신당공원과 강원 남부의 숨은 명소</h3>



<p class="wp-block-paragraph">역사 인근에는 남근 조각공원으로 유명한 해신당공원이 위치해 있어 독특한 민속 신앙과 바다 풍경을 동시에 감상할 수 있습니다. 강원도의 남쪽 끝자락이라 경상북도와 근접해 있는 덕분에 두 지역의 문화가 묘하게 섞인 분위기를 풍기며, 관광객들로 북적이는 유명 명소와는 달리 여유롭고 조용한 분위기 속에서 강원도의 숨은 매력을 오롯이 느끼기에 더할 나위 없이 좋습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">장호항과 7번 국도 기차 여행</h3>



<p class="wp-block-paragraph">&#8216;한국의 나폴리&#8217;라 불리는 장호항과도 비교적 인접해 있어, 역사를 기점으로 삼척의 대표적인 해안 명소들을 두루 둘러보기에 무리가 없으며, 창밖으로 펼쳐지는 7번 국도변의 풍경을 열차 안에서 편안하게 감상하며 이동하는 것은 기차 여행자들만이 누릴 수 있는 특권이며, 복잡한 주차 걱정 없이 주요 거점으로 빠르게 이동할 수 있어 가족 여행객들에게 특히 추천할 만합니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">옥원역 이용 실전 팁</h3>



<p class="wp-block-paragraph">옥원에서 출발하는 ITX-마음, 누리리 등을 실시간 API 연동을 통해 열차의 출발 정보를 시간대별로 정확하게 확인할 수 있어, 임원항에서 식사를 하거나 공원을 산책하는 시간이 편할 수 있으며, 특히 옥원(비옥한 들판)의 경우는 ITX-마음과 누리로 열차가 그렇게 많이 운행하지 않기 때문에 첫차와 막차는 꼭 체크하시고 주변 여행을 하시는 것이 좋습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>옥원역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">옥원<br>↓<br>북울산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1814호</span><div class="time-display">18:03</div><div class="arrival-info">20:46 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">18:48</div><div class="arrival-info">21:26 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">옥원<br>↓<br>태화강</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1814호</span><div class="time-display">18:03</div><div class="arrival-info">20:54 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">18:48</div><div class="arrival-info">21:34 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">옥원<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1814호</span><div class="time-display">18:03</div><div class="arrival-info">22:00 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">18:48</div><div class="arrival-info">22:33 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">옥원<br>↓<br>영덕</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">08:13</div><div class="arrival-info">09:40 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">14:02</div><div class="arrival-info">15:25 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">옥원<br>↓<br>포항</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">08:13</div><div class="arrival-info">10:17 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">14:02</div><div class="arrival-info">15:59 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">옥원<br>↓<br>동대구</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">08:13</div><div class="arrival-info">11:36 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">14:02</div><div class="arrival-info">17:18 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">옥원<br>↓<br>울진</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">09:36</div><div class="arrival-info">09:13 도착</div></td><td><span class="train-detail">1863호</span><div class="time-display">15:30</div><div class="arrival-info">15:10 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">옥원<br>↓<br>동해</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">09:36</div><div class="arrival-info">10:24 도착</div></td><td><span class="train-detail">1863호</span><div class="time-display">15:30</div><div class="arrival-info">16:16 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">옥원<br>↓<br>강릉</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">09:36</div><div class="arrival-info">11:12 도착</div></td><td><span class="train-detail">1863호</span><div class="time-display">15:30</div><div class="arrival-info">17:00 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>옥원</strong>역 ITX-마음 누리로 요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>운임</th></tr></thead><tbody><tr><td>동해2</td><td>무궁화</td><td class="highlight">옥원</td><td class="highlight">서경주</td><td>10,100</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">옥원</td><td class="highlight">서경주</td><td>15,000</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">옥원</td><td class="highlight">서경주</td><td>15,000</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">옥원</td><td class="highlight">동대구</td><td>15,600</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">옥원</td><td class="highlight">동대구</td><td>21,400</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">강릉</td><td class="highlight">옥원</td><td>5,700</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">옥원</td><td>8,500</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">옥원</td><td>8,500</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">동해</td><td class="highlight">옥원</td><td>2,900</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">옥원</td><td>4,800</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">옥원</td><td>4,800</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">옥원</td><td class="highlight">태화강</td><td>20,300</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">옥원</td><td class="highlight">북울산</td><td>19,300</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">옥원</td><td class="highlight">부전</td><td>26,300</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong><strong>옥원</strong>역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <s>옥원역 KTX 노선 없음</s><br>✅ <s><s>옥원</s>역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ec%98%a5%ec%9b%90%ec%97%ad-itx-%eb%a7%88%ec%9d%8c%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%82%98%eb%a7%8c-%ec%95%8c%ea%b3%a0-%ec%8b%b6%ec%9d%80-%ec%a1%b0%ec%9a%a9%ed%95%9c/">옥원역 ITX-마음·누리로 시간표</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>옥원역 <strong>ITX-마음 누리로</strong> 시간표</strong></h2>



<h3 class="wp-block-heading">출발 : 옥원 → 도착 : 동대구</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>옥원</th><th>흥부</th><th>죽변</th><th>울진</th><th>매화</th><th>기성</th><th>평해</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>강구</th><th>장사</th><th>월포</th><th>포항</th><th>안강</th><th>서경주</th><th>아화</th><th>영천</th><th>하양</th><th>동대구</th><th>비 고</th></tr></thead><tbody><tr><td>1852</td><td>누리로</td><td>08:13</td><td>08:23</td><td>08:30</td><td>08:38</td><td>08:48</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>월화수목금</td></tr><tr><td>1862</td><td>누리로</td><td>08:13</td><td>08:23</td><td>08:30</td><td>08:38</td><td>08:48</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>토일</td></tr><tr><td>1854</td><td>누리로</td><td>10:28</td><td>10:38</td><td>10:45</td><td>10:53</td><td></td><td></td><td></td><td>11:20</td><td>11:33</td><td>11:41</td><td>11:52</td><td>11:59</td><td>12:04</td><td>12:13</td><td>12:26</td><td>12:40</td><td>12:51</td><td>13:08</td><td>13:19</td><td>13:29</td><td>13:45</td><td>월화수목금</td></tr><tr><td>1864</td><td>누리로</td><td>10:28</td><td>10:38</td><td>10:45</td><td>10:53</td><td></td><td></td><td></td><td>11:20</td><td>11:33</td><td>11:41</td><td>11:52</td><td>11:59</td><td>12:04</td><td>12:13</td><td>12:26</td><td>12:40</td><td>12:51</td><td>13:08</td><td>13:19</td><td>13:29</td><td>13:45</td><td>토일</td></tr><tr><td>1866</td><td>누리로</td><td>14:02</td><td>14:12</td><td>14:19</td><td>14:27</td><td>14:37</td><td>14:49</td><td></td><td>15:01</td><td>15:09</td><td></td><td>15:25</td><td></td><td>15:39</td><td>15:47</td><td>15:59</td><td>16:13</td><td>16:23</td><td>16:41</td><td>16:52</td><td>17:02</td><td>17:18</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 옥원 → 도착 : 동해·강릉</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>옥원</th><th>임원</th><th>근덕</th><th>삼척</th><th>삼척해변</th><th>추암</th><th>동해</th><th>묵호</th><th>정동진</th><th>강릉</th><th>비 고</th></tr></thead><tbody><tr><td>1851</td><td>누리로</td><td>09:36</td><td>09:42</td><td></td><td>10:01</td><td></td><td></td><td>10:24</td><td>10:33</td><td>10:55</td><td>11:12</td><td>월화수목금</td></tr><tr><td>1861</td><td>누리로</td><td>09:36</td><td>09:42</td><td></td><td>10:01</td><td>10:09</td><td>10:13</td><td>10:24</td><td>10:33</td><td>10:55</td><td>11:12</td><td>토일</td></tr><tr><td>1853</td><td>누리로</td><td>15:30</td><td></td><td>15:41</td><td>15:55</td><td></td><td></td><td>16:16</td><td>16:24</td><td>16:45</td><td>17:00</td><td>월화수목금</td></tr><tr><td>1863</td><td>누리로</td><td>15:30</td><td></td><td>15:41</td><td>15:55</td><td>16:03</td><td>16:07</td><td>16:16</td><td>16:24</td><td>16:45</td><td>17:00</td><td>토일</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 옥원 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>옥원</th><th>흥부</th><th>죽변</th><th>울진</th><th>매화</th><th>기성</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>월포</th><th>포항</th><th>서경주</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th><th>비 고</th></tr></thead><tbody><tr><td>1814</td><td>ITX-마음</td><td>18:03</td><td>18:13</td><td>18:20</td><td>18:28</td><td>18:39</td><td>18:50</td><td>19:02</td><td>19:11</td><td></td><td>19:27</td><td></td><td>19:52</td><td>20:13</td><td>20:26</td><td>20:46</td><td>20:54</td><td>21:10</td><td>21:31</td><td>21:42</td><td>21:50</td><td>22:00</td><td>월화수목금</td></tr><tr><td>1804</td><td>ITX-마음</td><td>18:03</td><td>18:13</td><td>18:20</td><td>18:28</td><td>18:39</td><td>18:50</td><td>19:02</td><td>19:11</td><td></td><td>19:27</td><td></td><td>19:52</td><td>20:13</td><td>20:26</td><td>20:46</td><td>20:54</td><td>21:10</td><td>21:31</td><td>21:42</td><td>21:50</td><td>22:00</td><td>토일</td></tr><tr><td>1806</td><td>ITX-마음</td><td>18:48</td><td>18:57</td><td></td><td>19:08</td><td></td><td>19:25</td><td>19:38</td><td>19:47</td><td>19:55</td><td>20:06</td><td>20:23</td><td>20:34</td><td>20:54</td><td>21:07</td><td>21:26</td><td>21:34</td><td></td><td>22:02</td><td>22:18</td><td></td><td>22:33</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>옥원역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '옥원'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">옥원역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">옥원역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '32020';
            let curName = '옥원';
            let altCity = '';
            let altName = '정차';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">옥원역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">9℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 구름많음</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">20%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">옥원역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%84%A4%EA%B0%80%EC%9E%88%EB%8A%94%EB%B0%94%EB%8B%A4+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%82%BC%EC%B2%99%EC%8B%9C+%EC%9B%90%EB%8D%95%EC%9D%8D+%EA%B0%88%EB%82%A8%EB%A6%AC+99-6+%EB%84%A4%EA%B0%80%EC%9E%88%EB%8A%94%EB%B0%94%EB%8B%A4" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">네가있는바다</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;카페,디저트</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 삼척시 원덕읍 갈남리 99-6 네가있는바다</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%95%B4%EB%8F%8B%EC%9D%B4%EC%8B%9D%EB%8B%B9+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%82%BC%EC%B2%99%EC%8B%9C+%EC%9B%90%EB%8D%95%EC%9D%8D+%EC%9E%84%EC%9B%90%EB%A6%AC+125-10" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">해돋이식당</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;한식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 삼척시 원덕읍 임원리 125-10</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%AF%B8%EC%A1%B0%EB%A6%AC%ED%9A%9F%EC%A7%91+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%82%BC%EC%B2%99%EC%8B%9C+%EC%9B%90%EB%8D%95%EC%9D%8D+%EC%9E%84%EC%9B%90%EB%A6%AC+129-3+%EB%AF%B8%EC%A1%B0%EB%A6%AC%ED%9A%9F%EC%A7%91" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">미조리횟집</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;생선회</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 삼척시 원덕읍 임원리 129-3 미조리횟집</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%99%A9%EA%B8%88%EC%B0%B9%EC%8C%80%EA%BD%88%EB%B0%B0%EA%B8%B0+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%82%BC%EC%B2%99%EC%8B%9C+%EC%9B%90%EB%8D%95%EC%9D%8D+%EC%9E%84%EC%9B%90%EB%A6%AC+125" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">황금찹쌀꽈배기</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;베이커리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 삼척시 원덕읍 임원리 125</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%89%B4%EC%9A%95%EA%BD%88%EB%B0%B0%EA%B8%B0%EC%9E%84%EC%9B%90%ED%95%AD%EC%A0%90+%EA%B0%95%EC%9B%90%ED%8A%B9%EB%B3%84%EC%9E%90%EC%B9%98%EB%8F%84+%EC%82%BC%EC%B2%99%EC%8B%9C+%EC%9B%90%EB%8D%95%EC%9D%8D+%EC%9E%84%EC%9B%90%EB%A6%AC+124-10" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">뉴욕꽈배기임원항점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;도넛</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">강원특별자치도 삼척시 원덕읍 임원리 124-10</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">옥원역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">옥원역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 옥원역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%98%A5%EC%9B%90%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/02/옥원역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="옥원역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-18419" srcset="https://krailroad.co.kr/wp-content/uploads/2026/02/옥원역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/02/옥원역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/02/옥원역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>흥부역 기차 시간표(ITX-마음·누리로) 흥부전 고향으로 떠나는 동해선 기차 여행 요금 노선</title>
		<link>https://krailroad.co.kr/%ed%9d%a5%eb%b6%80%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9citx-%eb%a7%88%ec%9d%8c%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ed%9d%a5%eb%b6%80%ec%a0%84-%ea%b3%a0%ed%96%a5%ec%9c%bc%eb%a1%9c/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Tue, 10 Feb 2026 03:04:17 +0000</pubDate>
				<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[흥부역 기차 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=18392</guid>

					<description><![CDATA[흥부역 기차가 멈춰 서는 이곳은 경북의 북쪽 끝머리이자 강원도로 넘어가는 길목에 위치하여, 화려한 도심의 역과는 전혀 다른 소박하고 호젓한 분위기를 자아내고 있습니다. 열차 승강장에 발을 내딛자마자 낚시꾼들의 활기찬 기운과 맑은 바다 내음이 섞여 들어오며, 행정구역상 경북 울진에 속하면서도 강원 삼척과 경계를 맞댄 지리적 특성 덕분에 두 지역의 정취를 한 번에 경험할 수 있는 독특한 출발지이기도 ... <a title="흥부역 기차 시간표(ITX-마음·누리로) 흥부전 고향으로 떠나는 동해선 기차 여행 요금 노선" class="read-more button" href="https://krailroad.co.kr/%ed%9d%a5%eb%b6%80%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9citx-%eb%a7%88%ec%9d%8c%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ed%9d%a5%eb%b6%80%ec%a0%84-%ea%b3%a0%ed%96%a5%ec%9c%bc%eb%a1%9c/" aria-label="흥부역 기차 시간표(ITX-마음·누리로) 흥부전 고향으로 떠나는 동해선 기차 여행 요금 노선 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">흥부역 기차가 멈춰 서는 이곳은 경북의 북쪽 끝머리이자 강원도로 넘어가는 길목에 위치하여, 화려한 도심의 역과는 전혀 다른 소박하고 호젓한 분위기를 자아내고 있습니다. 열차 승강장에 발을 내딛자마자 낚시꾼들의 활기찬 기운과 맑은 바다 내음이 섞여 들어오며, 행정구역상 경북 울진에 속하면서도 강원 삼척과 경계를 맞댄 지리적 특성 덕분에 두 지역의 정취를 한 번에 경험할 수 있는 독특한 출발지이기도 합니다.</p>



<p class="wp-block-paragraph">인근 역들과 열차 운행 시각또한 비슷하나, 나곡 바다낚시공원이나 덕구온천을 목적지로 둔 여행자분들을 위해 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a>의 공식 데이터를 바탕으로 열차 편성을 정성껏 검증하여 정리했습니다. 복잡한 도심에서 벗어나 평온한 어촌의 풍경 속으로 녹아들고 싶은 분들에게 흥부역에서의 이 정보가 기분 좋은 자료가 되었으면합니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>흥부역 ITX-마음·누리로 이용 안내</strong></strong></h2>



<h3 class="wp-block-heading"><strong><strong>흥부역 기차를 이용한 주변 여행</strong></strong></h3>



<p class="wp-block-paragraph"><strong>1️⃣ 낚시꾼들의 비밀 포인트, 나곡 바다낚시공원</strong>: 흥부역 기차 여행의 가장 큰 재미는 조사들 사이에서 이미 명소로 입소문 난 나곡 바다낚시공원을 가장 가깝게 만날 수 있다는 점입니다. 역에서 멀지 않은 나곡 바다는 해안 절벽의 비경과 깨끗한 수질을 자랑하며, 갯바위 낚시의 손맛을 느끼려는 분들에게는 성지나 다름없는 곳으로 흥부역이 개통하면서 접근이 더욱더 쉬워졌습니다.</p>



<p class="wp-block-paragraph"><strong>2️⃣ 나곡해수욕장 캠핑과 지리적 이점</strong>: 캠핑을 즐기는 분들이라면 울진 캠핑장 추천 장소로 꼽히는 나곡해수욕장의 접근성을 눈여겨보실 필요가 있습니다. 흥부역은 캠핑 장비를 챙겨 떠나는 뚜벅이 여행자들에게도 지리적으로 꽤 유리한 위치에 자리 잡고 있으며, 파도 소리가 바로 곁에서 들리는 해변에서의 하룻밤은 흥부역 기차를 이용한 여행이 재미있을겁니다.</p>



<p class="wp-block-paragraph"><strong>3️⃣ 경북과 강원이 교차하는 고포미역마을</strong>: 흥부역 주변에서 가장 재미있는 장소는 경북 울진과 강원 삼척의 경계가 되는 고포마을입니다. 예부터 임금님 수라상에 올랐던 고포미역의 산지로 유명한 이곳은, 마을 안의 작은 경계를 사이에 두고 두 도의 문화가 공존하는 묘한 풍경을 간직하고 있어 천천히 걷으며 마을의 느낌을 살펴보기에도 좋습니다.</p>



<p class="wp-block-paragraph"><strong>4️⃣ 부구터미널 연계와 덕구온천 가는 길</strong>: 흥부역은 울진의 명물인 덕구온천으로 향하는 중요한 베이스캠프 역할을 합니다. 역 인근의 부구터미널을 활용하면 온천까지 운행하는 대중교통을 편리하게 이용할 수 있고, 한울원자력본부 주변으로 형성된 잘 정비된 교통망과 상권 덕분에 여행의 편의성 또한 매우 높습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading"><strong>흥부역 기차 이용 안내</strong></h3>



<p class="wp-block-paragraph">흥부역은 부구 시내와 곧장 맞닿아 있어 기차에서 내리자마자 식사를 해결하거나 여행 중에 즐길 간식거리를 준비하기에 무척 수월하며, 인근 부구터미널과의 거리도 가까워 울진 북부권의 다양한 명소로 이동하려는 분들에게도 전혀 무리가 없는 지리적 이점을 갖추고 있습니다.</p>



<p class="wp-block-paragraph">따라서 흥부역을 이용할 때는 ITX-마음과 누리로 열차 시간을 미리 확인하여 여행을 짜는 것이 좋으며, 기차 시간이 그렇게 많지 않기 때문에 효율적으로 활용한다면 덕구온천의 뜨끈한 물에 몸을 담가 피로를 풀거나 나곡 바다에서 낚시를 즐기는 시간을 한층 여유롭게 보낼 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>흥부역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">흥부<br>↓<br>북울산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1802호</span><div class="time-display">12:56</div><div class="arrival-info">15:26 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">18:57</div><div class="arrival-info">21:26 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">흥부<br>↓<br>태화강</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1802호</span><div class="time-display">12:56</div><div class="arrival-info">15:34 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">18:57</div><div class="arrival-info">21:34 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">흥부<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1802호</span><div class="time-display">12:56</div><div class="arrival-info">16:32 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">18:57</div><div class="arrival-info">22:33 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">흥부<br>↓<br>영덕</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">08:23</div><div class="arrival-info">09:40 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">14:12</div><div class="arrival-info">15:25 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">흥부<br>↓<br>포항</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">08:23</div><div class="arrival-info">10:17 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">14:12</div><div class="arrival-info">15:59 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">흥부<br>↓<br>동대구</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">08:23</div><div class="arrival-info">11:36 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">14:12</div><div class="arrival-info">17:18 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">흥부<br>↓<br>울진</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1801호</span><div class="time-display">08:52</div><div class="arrival-info">08:38 도착</div></td><td><span class="train-detail">1807호</span><div class="time-display">19:19</div><div class="arrival-info">19:07 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">09:27</div><div class="arrival-info">09:13 도착</div></td><td><span class="train-detail">1863호</span><div class="time-display">15:20</div><div class="arrival-info">15:10 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">흥부<br>↓<br>동해</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1801호</span><div class="time-display">08:52</div><div class="arrival-info">09:35 도착</div></td><td><span class="train-detail">1807호</span><div class="time-display">19:19</div><div class="arrival-info">20:08 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">09:27</div><div class="arrival-info">10:24 도착</div></td><td><span class="train-detail">1863호</span><div class="time-display">15:20</div><div class="arrival-info">16:16 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">흥부<br>↓<br>강릉</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1821호</span><div class="time-display">17:56</div><div class="arrival-info">19:27 도착</div></td><td><span class="train-detail">1831호</span><div class="time-display">17:56</div><div class="arrival-info">19:27 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">09:27</div><div class="arrival-info">11:12 도착</div></td><td><span class="train-detail">1863호</span><div class="time-display">15:20</div><div class="arrival-info">17:00 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>흥부</strong>역 ITX-마음 누리로 요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>운임</th></tr></thead><tbody><tr><td>동해2</td><td>무궁화</td><td class="highlight">흥부</td><td class="highlight">서경주</td><td>9,400</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">흥부</td><td class="highlight">서경주</td><td>14,000</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">흥부</td><td class="highlight">서경주</td><td>14,000</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">흥부</td><td class="highlight">동대구</td><td>14,900</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">흥부</td><td class="highlight">동대구</td><td>20,400</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">강릉</td><td class="highlight">흥부</td><td>6,400</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">흥부</td><td>9,600</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">흥부</td><td>9,600</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">동해</td><td class="highlight">흥부</td><td>3,600</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">흥부</td><td>5,300</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">흥부</td><td>5,300</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">흥부</td><td class="highlight">태화강</td><td>19,300</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">흥부</td><td class="highlight">북울산</td><td>18,300</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">흥부</td><td class="highlight">부전</td><td>25,300</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong><strong>흥부</strong>역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <s>흥부역 KTX 노선 없음</s><br>✅ <s><s>흥부</s>역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ed%9d%a5%eb%b6%80%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9citx-%eb%a7%88%ec%9d%8c%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ed%9d%a5%eb%b6%80%ec%a0%84-%ea%b3%a0%ed%96%a5%ec%9c%bc%eb%a1%9c/#%EB%B6%80%EC%A0%84%EC%97%AD_API_%EC%8B%A4%EC%8B%9C%EA%B0%84_%EB%82%A0%EC%94%A8_%EC%98%88%EB%B3%B4">흥부역 ITX-마음·누리로 시간표</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>흥부역 <strong>ITX-마음 누리로</strong> 시간표</strong></h2>



<h3 class="wp-block-heading">출발 : 흥부 → 도착 : 동대구</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>흥부</th><th>죽변</th><th>울진</th><th>매화</th><th>기성</th><th>평해</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>강구</th><th>장사</th><th>월포</th><th>포항</th><th>안강</th><th>서경주</th><th>아화</th><th>영천</th><th>하양</th><th>동대구</th><th>비 고</th></tr></thead><tbody><tr><td>1852</td><td>누리로</td><td>08:23</td><td>08:30</td><td>08:38</td><td>08:48</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>월화수목금</td></tr><tr><td>1862</td><td>누리로</td><td>08:23</td><td>08:30</td><td>08:38</td><td>08:48</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>토일</td></tr><tr><td>1854</td><td>누리로</td><td>10:38</td><td>10:45</td><td>10:53</td><td></td><td></td><td></td><td>11:20</td><td>11:33</td><td>11:41</td><td>11:52</td><td>11:59</td><td>12:04</td><td>12:13</td><td>12:26</td><td>12:40</td><td>12:51</td><td>13:08</td><td>13:19</td><td>13:29</td><td>13:45</td><td>월화수목금</td></tr><tr><td>1864</td><td>누리로</td><td>10:38</td><td>10:45</td><td>10:53</td><td></td><td></td><td></td><td>11:20</td><td>11:33</td><td>11:41</td><td>11:52</td><td>11:59</td><td>12:04</td><td>12:13</td><td>12:26</td><td>12:40</td><td>12:51</td><td>13:08</td><td>13:19</td><td>13:29</td><td>13:45</td><td>토일</td></tr><tr><td>1866</td><td>누리로</td><td>14:12</td><td>14:19</td><td>14:27</td><td>14:37</td><td>14:49</td><td></td><td>15:01</td><td>15:09</td><td></td><td>15:25</td><td></td><td>15:39</td><td>15:47</td><td>15:59</td><td>16:13</td><td>16:23</td><td>16:41</td><td>16:52</td><td>17:02</td><td>17:18</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 흥부 → 도착 : 동해·강릉</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>흥부</th><th>옥원</th><th>임원</th><th>근덕</th><th>삼척</th><th>삼척해변</th><th>추암</th><th>동해</th><th>묵호</th><th>정동진</th><th>강릉</th><th>비 고</th></tr></thead><tbody><tr><td>1851</td><td>누리로</td><td>09:27</td><td>09:36</td><td>09:42</td><td></td><td>10:01</td><td></td><td></td><td>10:24</td><td>10:33</td><td>10:55</td><td>11:12</td><td>월화수목금</td></tr><tr><td>1861</td><td>누리로</td><td>09:27</td><td>09:36</td><td>09:42</td><td></td><td>10:01</td><td>10:09</td><td>10:13</td><td>10:24</td><td>10:33</td><td>10:55</td><td>11:12</td><td>토일</td></tr><tr><td>1853</td><td>누리로</td><td>15:20</td><td>15:30</td><td></td><td>15:41</td><td>15:55</td><td></td><td></td><td>16:16</td><td>16:24</td><td>16:45</td><td>17:00</td><td>월화수목금</td></tr><tr><td>1863</td><td>누리로</td><td>15:20</td><td>15:30</td><td></td><td>15:41</td><td>15:55</td><td>16:03</td><td>16:07</td><td>16:16</td><td>16:24</td><td>16:45</td><td>17:00</td><td>토일</td></tr><tr><td>1821</td><td>ITX-마음</td><td>17:56</td><td></td><td></td><td></td><td>18:22</td><td></td><td></td><td>18:42</td><td>18:50</td><td>19:12</td><td>19:27</td><td>월화수목금</td></tr><tr><td>1831</td><td>ITX-마음</td><td>17:56</td><td></td><td></td><td></td><td>18:22</td><td>18:29</td><td>18:33</td><td>18:42</td><td>18:50</td><td>19:12</td><td>19:27</td><td>토일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>흥부</th><th>죽변</th><th>매화</th><th>울진</th><th>죽변</th><th>흥부</th><th>근덕</th><th>삼척</th><th>삼척해변</th><th>추암</th><th>동해</th><th>비 고</th></tr></thead><tbody><tr><td>1801</td><td>ITX-마음</td><td>08:52</td><td>08:45</td><td>08:28</td><td>08:38</td><td>08:45</td><td>08:52</td><td></td><td>09:19</td><td></td><td></td><td>09:35</td><td></td></tr><tr><td>1803</td><td>ITX-마음</td><td>13:29</td><td>13:21</td><td>13:03</td><td>13:15</td><td>13:21</td><td>13:29</td><td>13:47</td><td>13:58</td><td></td><td></td><td>14:15</td><td></td></tr><tr><td>1821</td><td>ITX-마음</td><td>17:56</td><td></td><td></td><td>17:46</td><td></td><td>17:56</td><td></td><td>18:22</td><td></td><td></td><td>18:42</td><td>월화수목금</td></tr><tr><td>1831</td><td>ITX-마음</td><td>17:56</td><td></td><td></td><td>17:46</td><td></td><td>17:56</td><td></td><td>18:22</td><td>18:29</td><td>18:33</td><td>18:42</td><td>토일</td></tr><tr><td>1807</td><td>ITX-마음</td><td>19:19</td><td></td><td></td><td>19:07</td><td></td><td>19:19</td><td>19:42</td><td>19:52</td><td></td><td></td><td>20:08</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 흥부 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>흥부</th><th>죽변</th><th>울진</th><th>매화</th><th>기성</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>월포</th><th>포항</th><th>서경주</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th><th>비 고</th></tr></thead><tbody><tr><td>1802</td><td>ITX-마음</td><td>12:56</td><td>13:04</td><td>13:12</td><td></td><td>13:29</td><td></td><td>13:47</td><td>13:55</td><td>14:06</td><td></td><td>14:32</td><td>14:53</td><td>15:07</td><td>15:26</td><td>15:34</td><td></td><td>16:07</td><td>16:17</td><td></td><td>16:32</td><td></td></tr><tr><td>1814</td><td>ITX-마음</td><td>18:13</td><td>18:20</td><td>18:28</td><td>18:39</td><td>18:50</td><td>19:02</td><td>19:11</td><td></td><td>19:27</td><td></td><td>19:52</td><td>20:13</td><td>20:26</td><td>20:46</td><td>20:54</td><td>21:10</td><td>21:31</td><td>21:42</td><td>21:50</td><td>22:00</td><td>월화수목금</td></tr><tr><td>1804</td><td>ITX-마음</td><td>18:13</td><td>18:20</td><td>18:28</td><td>18:39</td><td>18:50</td><td>19:02</td><td>19:11</td><td></td><td>19:27</td><td></td><td>19:52</td><td>20:13</td><td>20:26</td><td>20:46</td><td>20:54</td><td>21:10</td><td>21:31</td><td>21:42</td><td>21:50</td><td>22:00</td><td>토일</td></tr><tr><td>1806</td><td>ITX-마음</td><td>18:57</td><td></td><td>19:08</td><td></td><td>19:25</td><td>19:38</td><td>19:47</td><td>19:55</td><td>20:06</td><td>20:23</td><td>20:34</td><td>20:54</td><td>21:07</td><td>21:26</td><td>21:34</td><td></td><td>22:02</td><td>22:18</td><td></td><td>22:33</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>흥부역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '흥부'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">흥부역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">흥부역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '1344';
            let curName = '흥부';
            let altCity = '';
            let altName = '';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">흥부역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">13℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 구름많음</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">20%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">흥부역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%AF%B8%EA%B0%80%EC%A1%B0%EA%B0%9C%EC%82%BC%ED%95%A9+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9A%B8%EC%A7%84%EA%B5%B0+%EB%B6%81%EB%A9%B4+%EB%B6%80%EA%B5%AC%EB%A6%AC+146-8" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">미가조개삼합</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;조개요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 울진군 북면 부구리 146-8</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%9A%9C%EB%A0%88%EC%A5%AC%EB%A5%B4+%EC%9A%B8%EC%A7%84%EB%B6%81%EB%A9%B4%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9A%B8%EC%A7%84%EA%B5%B0+%EB%B6%81%EB%A9%B4+%EB%B6%80%EA%B5%AC%EB%A6%AC+139-7" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">뚜레쥬르 울진북면점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;베이커리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 울진군 북면 부구리 139-7</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%82%BC%EB%8F%88%EC%9D%B4+%EC%9A%B8%EC%A7%84%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9A%B8%EC%A7%84%EA%B5%B0+%EB%B6%81%EB%A9%B4+%EB%B6%80%EA%B5%AC%EB%A6%AC+150-1" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">삼돈이 울진점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;한식&gt;육류,고기요리&gt;돼지고기구이</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 울진군 북면 부구리 150-1</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%B0%B1%EC%86%A1%EC%82%BC%EA%B3%84%ED%83%95+%EC%9A%B8%EC%A7%84%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9A%B8%EC%A7%84%EA%B5%B0+%EB%B6%81%EB%A9%B4+%EB%B6%80%EA%B5%AC%EB%A6%AC+369-26+%EB%B0%B1%EC%86%A1%EC%82%BC%EA%B3%84%ED%83%95+%EC%9A%B8%EC%A7%84%EC%A0%90" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">백송삼계탕 울진점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;백숙,삼계탕</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 울진군 북면 부구리 369-26 백송삼계탕 울진점</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%B0%95%EA%B0%80%EB%84%A4%EC%84%A4%EB%A0%81%ED%83%95+%EB%B3%B8%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9A%B8%EC%A7%84%EA%B5%B0+%EB%B6%81%EB%A9%B4+%EB%B6%80%EA%B5%AC%EB%A6%AC+991-18+%EB%B0%95%EA%B0%80%EB%84%A4%EC%84%A4%EB%A0%81%ED%83%95" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">박가네설렁탕 본점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;곰탕,설렁탕</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 울진군 북면 부구리 991-18 박가네설렁탕</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">흥부역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">흥부역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 흥부역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%ED%9D%A5%EB%B6%80%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/02/흥부역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="흥부역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-18420" srcset="https://krailroad.co.kr/wp-content/uploads/2026/02/흥부역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/02/흥부역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/02/흥부역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>죽변역에서 스카이레일 타러 가는 길 ITX-마음·누리로 열차 시간표 및 하트해변 요금 정차역</title>
		<link>https://krailroad.co.kr/%ec%a3%bd%eb%b3%80%ec%97%ad%ec%97%90%ec%84%9c-%ec%8a%a4%ec%b9%b4%ec%9d%b4%eb%a0%88%ec%9d%bc-%ed%83%80%eb%9f%ac-%ea%b0%80%eb%8a%94-%ea%b8%b8-itx-%eb%a7%88%ec%9d%8c%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Mon, 09 Feb 2026 06:26:57 +0000</pubDate>
				<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[죽변역 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=18355</guid>

					<description><![CDATA[동해의 푸른 활력이 시작되는 곳, 죽변역 동해선 열차를 타고 역에 내리면 코끝을 스치는 갯내음과 함께 어항 특유의 활기를 느낄 수 있으며, 특히 죽변은 우리나라에서 독도와 가장 가까운 직선거리에 위치한 상징적인 곳으로, 역에서 조금만 이동하면 바다 위를 달리는 죽변 해안스카이레일과 로맨틱한 곡선의 하트 해변이 펼쳐져 굳이 차를 가져오지 않아도 동해의 푸른바다를 보실 수 있습니다. 많은 분이 ... <a title="죽변역에서 스카이레일 타러 가는 길 ITX-마음·누리로 열차 시간표 및 하트해변 요금 정차역" class="read-more button" href="https://krailroad.co.kr/%ec%a3%bd%eb%b3%80%ec%97%ad%ec%97%90%ec%84%9c-%ec%8a%a4%ec%b9%b4%ec%9d%b4%eb%a0%88%ec%9d%bc-%ed%83%80%eb%9f%ac-%ea%b0%80%eb%8a%94-%ea%b8%b8-itx-%eb%a7%88%ec%9d%8c%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c/" aria-label="죽변역에서 스카이레일 타러 가는 길 ITX-마음·누리로 열차 시간표 및 하트해변 요금 정차역 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">동해의 푸른 활력이 시작되는 곳, 죽변역 동해선 열차를 타고 역에 내리면 코끝을 스치는 갯내음과 함께 어항 특유의 활기를 느낄 수 있으며, 특히 죽변은 우리나라에서 독도와 가장 가까운 직선거리에 위치한 상징적인 곳으로, 역에서 조금만 이동하면 바다 위를 달리는 죽변 해안스카이레일과 로맨틱한 곡선의 하트 해변이 펼쳐져 굳이 차를 가져오지 않아도 동해의 푸른바다를 보실 수 있습니다.</p>



<p class="wp-block-paragraph">많은 분이 궁금해하시는 죽변의 최신 열차 시간표와 역 풍경을 정리해 보았으며, 역마다 정보가 비슷해 보일 수 있으나, 죽변을 방문하시는 분들을 위해 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a>의 최신 데이터를 바탕으로 실제 열차 운행 시간을 꼼꼼하게 대조하여 작성했습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>죽변역 ITX-마음·누리로 이용 안내</strong></strong></h2>



<h3 class="wp-block-heading"><strong><strong>죽변에서 꼭 경험해야 할 것들</strong></strong></h3>



<p class="wp-block-paragraph"><strong>1️⃣ 독도와 가장 가까운 항구, 죽변의 상징성</strong>: 죽변은 우리나라에서 독도와 가장 가까운 직선거리에 위치한 항구라는 특별한 상징성을 지니고 있습니다. 역에서 내려 마을로 들어서면 &#8216;독도 최단거리&#8217;를 알리는 표지판과 함께 탁 트인 바다가 우리를 맞이하며, 굽이진 해안선을 따라 걷다 보면 자연스럽게 죽변만의 바다 색을 느끼실 수 있습니다.</p>



<p class="wp-block-paragraph"><strong>2️⃣ 드라마와 예능이 사랑한 마을 풍경</strong>: 이곳은 오래전부터 드라마 &#8216;폭풍 속으로&#8217; 촬영지로 이름을 알렸으며, 최근에는 예능 &#8216;백년손님&#8217;의 배경이 되며 정겨운 어촌 마을의 대명사로 자리 잡았습니다. 붉은 지붕의 &#8216;어부의 집&#8217;과 하얀 등대가 어우러진 풍경과, 골목 구석구석을 걷다 보면 방송에서 보던 친근한 장소들을 발견할 수 있는데 아이들과 함께 걸으며 산책하면 좋습니다.</p>



<p class="wp-block-paragraph"><strong>3️⃣ 하트 해변과 해안스카이레일의 낭만</strong>: 죽변 여행의 하이라이트는 단연 죽변 해안스카이레일입니다. 투명한 창밖으로 부서지는 파도를 감상하며 이동하다 보면 자연스레 하트 해변의 절경을 마주하게 되는데, 해안선이 그리는 완벽한 하트 모양은 연인들에게는 사랑을 약속하는 장소로, 사진가들에게는 놓칠 수 없는 출사지로 사랑받고 있습니다.</p>



<p class="wp-block-paragraph"><strong>4️⃣ 죽변항 맛집과 인생 짬뽕의 유혹</strong>: 금강산도 식후경이라는 말처럼 죽변항 근처에는 식객들의 입맛을 사로잡는 짬뽕 맛집들이 줄지어 있으니 참고하시고 특히 해산물이 듬뿍 들어간 불향 가득한 비빔 짬뽕은 죽변 여행에서 꼭 맛봐야 할 별미로 손꼽히며, 갓 잡은 싱싱한 회와 대게 등 항구 특유의 풍성한 먹거리가 가득합니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading"><strong>죽변역 이용 정보 안내</strong></h3>



<p class="wp-block-paragraph">죽변역사는 현대적인 감각으로 신축되어 대기 공간이 매우 쾌적하며, 승강장에서 내려다보는 마을 전경은 평화로움을 간직한 바다냄새와 풍경을 보실 수 있으며, 역을 이용하실 때는 ITX-마음과 누리로 열차 시각을 미리 잘 체크해 두면 죽변항에서의 식사와 스카이레일 탑승 시간을 더욱 효율적으로 이용할 수 있어 당일치기 여행으로도 부족함이 없습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>죽변역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">죽변<br>↓<br>북울산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1802호</span><div class="time-display">13:04</div><div class="arrival-info">15:26 도착</div></td><td><span class="train-detail">1804호</span><div class="time-display">18:20</div><div class="arrival-info">20:46 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">죽변<br>↓<br>태화강</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1802호</span><div class="time-display">13:04</div><div class="arrival-info">15:34 도착</div></td><td><span class="train-detail">1804호</span><div class="time-display">18:20</div><div class="arrival-info">20:54 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">죽변<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1802호</span><div class="time-display">13:04</div><div class="arrival-info">16:32 도착</div></td><td><span class="train-detail">1804호</span><div class="time-display">18:20</div><div class="arrival-info">22:00 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">죽변<br>↓<br>영덕</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">08:30</div><div class="arrival-info">09:40 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">14:19</div><div class="arrival-info">15:25 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">죽변<br>↓<br>포항</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">08:30</div><div class="arrival-info">10:17 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">14:19</div><div class="arrival-info">15:59 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">죽변<br>↓<br>동대구</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">08:30</div><div class="arrival-info">11:36 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">14:19</div><div class="arrival-info">17:18 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">죽변<br>↓<br>울진</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1801호</span><div class="time-display">08:45</div><div class="arrival-info">08:38 도착</div></td><td><span class="train-detail">1805호</span><div class="time-display">14:34</div><div class="arrival-info">14:26 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">09:20</div><div class="arrival-info">09:13 도착</div></td><td><span class="train-detail">1861호</span><div class="time-display">09:20</div><div class="arrival-info">09:13 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">죽변<br>↓<br>동해</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1801호</span><div class="time-display">08:45</div><div class="arrival-info">09:35 도착</div></td><td><span class="train-detail">1805호</span><div class="time-display">14:34</div><div class="arrival-info">15:19 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">09:20</div><div class="arrival-info">10:24 도착</div></td><td><span class="train-detail">1861호</span><div class="time-display">09:20</div><div class="arrival-info">10:24 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">죽변<br>↓<br>강릉</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">09:20</div><div class="arrival-info">11:12 도착</div></td><td><span class="train-detail">1861호</span><div class="time-display">09:20</div><div class="arrival-info">11:12 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>죽변</strong>역 ITX-마음 누리로 요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>운임</th></tr></thead><tbody><tr><td>동해2</td><td>무궁화</td><td class="highlight">죽변</td><td class="highlight">서경주</td><td>9,000</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">죽변</td><td class="highlight">서경주</td><td>13,400</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">죽변</td><td class="highlight">서경주</td><td>13,400</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">죽변</td><td class="highlight">동대구</td><td>14,500</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">죽변</td><td class="highlight">동대구</td><td>19,800</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">강릉</td><td class="highlight">죽변</td><td>6,800</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">죽변</td><td>10,200</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">죽변</td><td>10,200</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">동해</td><td class="highlight">죽변</td><td>4,000</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">죽변</td><td>5,900</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">죽변</td><td>5,900</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">죽변</td><td class="highlight">태화강</td><td>18,600</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">죽변</td><td class="highlight">북울산</td><td>17,700</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">죽변</td><td class="highlight">부전</td><td>24,700</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong><strong>죽변</strong>역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <s>죽변역 KTX 노선 없음</s><br>✅ <s><s>죽변</s>역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ec%a3%bd%eb%b3%80%ec%97%ad%ec%97%90%ec%84%9c-%ec%8a%a4%ec%b9%b4%ec%9d%b4%eb%a0%88%ec%9d%bc-%ed%83%80%eb%9f%ac-%ea%b0%80%eb%8a%94-%ea%b8%b8-itx-%eb%a7%88%ec%9d%8c%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c/">죽변역 ITX-마음·누리로 시간표</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>죽변역 <strong>ITX-마음 누리로</strong> 시간표</strong></h2>



<h3 class="wp-block-heading">출발 : 죽변 → 도착 : 동대구</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>죽변</th><th>울진</th><th>매화</th><th>기성</th><th>평해</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>강구</th><th>장사</th><th>월포</th><th>포항</th><th>안강</th><th>서경주</th><th>아화</th><th>영천</th><th>하양</th><th>동대구</th><th>비 고</th></tr></thead><tbody><tr><td>1852</td><td>누리로</td><td>08:30</td><td>08:38</td><td>08:48</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>월화수목금</td></tr><tr><td>1862</td><td>누리로</td><td>08:30</td><td>08:38</td><td>08:48</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>토일</td></tr><tr><td>1854</td><td>누리로</td><td>10:45</td><td>10:53</td><td></td><td></td><td></td><td>11:20</td><td>11:33</td><td>11:41</td><td>11:52</td><td>11:59</td><td>12:04</td><td>12:13</td><td>12:26</td><td>12:40</td><td>12:51</td><td>13:08</td><td>13:19</td><td>13:29</td><td>13:45</td><td>월화수목금</td></tr><tr><td>1864</td><td>누리로</td><td>10:45</td><td>10:53</td><td></td><td></td><td></td><td>11:20</td><td>11:33</td><td>11:41</td><td>11:52</td><td>11:59</td><td>12:04</td><td>12:13</td><td>12:26</td><td>12:40</td><td>12:51</td><td>13:08</td><td>13:19</td><td>13:29</td><td>13:45</td><td>토일</td></tr><tr><td>1866</td><td>누리로</td><td>14:19</td><td>14:27</td><td>14:37</td><td>14:49</td><td></td><td>15:01</td><td>15:09</td><td></td><td>15:25</td><td></td><td>15:39</td><td>15:47</td><td>15:59</td><td>16:13</td><td>16:23</td><td>16:41</td><td>16:52</td><td>17:02</td><td>17:18</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 죽변 → 도착 : 동해·강릉</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>죽변</th><th>흥부</th><th>옥원</th><th>임원</th><th>삼척</th><th>삼척해변</th><th>추암</th><th>동해</th><th>묵호</th><th>정동진</th><th>강릉</th><th>비 고</th></tr></thead><tbody><tr><td>1851</td><td>누리로</td><td>09:20</td><td>09:27</td><td>09:36</td><td>09:42</td><td>10:01</td><td></td><td></td><td>10:24</td><td>10:33</td><td>10:55</td><td>11:12</td><td>월화수목금</td></tr><tr><td>1861</td><td>누리로</td><td>09:20</td><td>09:27</td><td>09:36</td><td>09:42</td><td>10:01</td><td>10:09</td><td>10:13</td><td>10:24</td><td>10:33</td><td>10:55</td><td>11:12</td><td>토일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>죽변</th><th>매화</th><th>울진</th><th>죽변</th><th>흥부</th><th>근덕</th><th>삼척</th><th>동해</th></tr></thead><tbody><tr><td>1801</td><td>ITX-마음</td><td>08:45</td><td>08:28</td><td>08:38</td><td>08:45</td><td>08:52</td><td></td><td>09:19</td><td>09:35</td></tr><tr><td>1803</td><td>ITX-마음</td><td>13:21</td><td>13:03</td><td>13:15</td><td>13:21</td><td>13:29</td><td>13:47</td><td>13:58</td><td>14:15</td></tr><tr><td>1805</td><td>ITX-마음</td><td>14:34</td><td></td><td>14:26</td><td>14:34</td><td></td><td></td><td>15:03</td><td>15:19</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 죽변 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>죽변</th><th>울진</th><th>매화</th><th>기성</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>포항</th><th>서경주</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th><th>비 고</th></tr></thead><tbody><tr><td>1802</td><td>ITX-마음</td><td>13:04</td><td>13:12</td><td></td><td>13:29</td><td></td><td>13:47</td><td>13:55</td><td>14:06</td><td>14:32</td><td>14:53</td><td>15:07</td><td>15:26</td><td>15:34</td><td></td><td>16:07</td><td>16:17</td><td></td><td>16:32</td><td></td></tr><tr><td>1814</td><td>ITX-마음</td><td>18:20</td><td>18:28</td><td>18:39</td><td>18:50</td><td>19:02</td><td>19:11</td><td></td><td>19:27</td><td>19:52</td><td>20:13</td><td>20:26</td><td>20:46</td><td>20:54</td><td>21:10</td><td>21:31</td><td>21:42</td><td>21:50</td><td>22:00</td><td>월화수목금</td></tr><tr><td>1804</td><td>ITX-마음</td><td>18:20</td><td>18:28</td><td>18:39</td><td>18:50</td><td>19:02</td><td>19:11</td><td></td><td>19:27</td><td>19:52</td><td>20:13</td><td>20:26</td><td>20:46</td><td>20:54</td><td>21:10</td><td>21:31</td><td>21:42</td><td>21:50</td><td>22:00</td><td>토일</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>죽변역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '죽변'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">죽변역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">죽변역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '37420';
            let curName = '죽변';
            let altCity = '';
            let altName = '정차';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">죽변역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">13℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 구름많음</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">20%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">죽변역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%99%80%EB%94%B0%EC%9A%94+%EC%A1%B1%EB%B0%9C%EB%B3%B4%EC%8C%88+%EC%A3%BD%EB%B3%80%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9A%B8%EC%A7%84%EA%B5%B0+%EC%A3%BD%EB%B3%80%EB%A9%B4+%ED%9B%84%EC%A0%95%EB%A6%AC+295-1" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">와따요 족발보쌈 죽변점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;족발,보쌈</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 울진군 죽변면 후정리 295-1</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">죽변역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">죽변역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 죽변역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%A3%BD%EB%B3%80%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/02/죽변역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="죽변역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-18369" srcset="https://krailroad.co.kr/wp-content/uploads/2026/02/죽변역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/02/죽변역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/02/죽변역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>울진역 시간표 KTX-이음·ITX-마음·누리로 전 노선 요금 및 정차역 통합 정리</title>
		<link>https://krailroad.co.kr/%ec%9a%b8%ec%a7%84%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c%c2%b7itx-%eb%a7%88%ec%9d%8c%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%a0%84-%eb%85%b8%ec%84%a0-%ec%9a%94%ea%b8%88-%eb%b0%8f/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Mon, 09 Feb 2026 05:16:21 +0000</pubDate>
				<category><![CDATA[KTX 시간표]]></category>
		<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[울진역 KTX 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=18334</guid>

					<description><![CDATA[울진역 시간표, 울진역의 개통은 단순히 기차가 들어오는 것을 넘어, 그동안 접근하기 어려웠던 동해안의 비경을 일상의 영역으로 끌어들였다는 점에 큰 의미가 있습니다. 굽이굽이 7번 국도를 직접 운전하며 쌓였던 피로 대신, 이제는 울진역 ITX-마음과 누리로 창밖으로 펼쳐지는 윤슬을 감상하며 낭만적인 여행을 시작할 수 있게 되었으며, 현재 고속열차인 KTX-이음까지 가세하면서 울진은 명실상부한 동해안 철도 관광의 중심으로 우뚝 서게 ... <a title="울진역 시간표 KTX-이음·ITX-마음·누리로 전 노선 요금 및 정차역 통합 정리" class="read-more button" href="https://krailroad.co.kr/%ec%9a%b8%ec%a7%84%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c%c2%b7itx-%eb%a7%88%ec%9d%8c%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%a0%84-%eb%85%b8%ec%84%a0-%ec%9a%94%ea%b8%88-%eb%b0%8f/" aria-label="울진역 시간표 KTX-이음·ITX-마음·누리로 전 노선 요금 및 정차역 통합 정리 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">울진역 시간표, 울진역의 개통은 단순히 기차가 들어오는 것을 넘어, 그동안 접근하기 어려웠던 동해안의 비경을 일상의 영역으로 끌어들였다는 점에 큰 의미가 있습니다. 굽이굽이 7번 국도를 직접 운전하며 쌓였던 피로 대신, 이제는 울진역 ITX-마음과 누리로 창밖으로 펼쳐지는 윤슬을 감상하며 낭만적인 여행을 시작할 수 있게 되었으며, 현재 고속열차인 KTX-이음까지 가세하면서 울진은 명실상부한 동해안 철도 관광의 중심으로 우뚝 서게 되었습니다.</p>



<p class="wp-block-paragraph">새롭게 신설된 노선이라 열차 간격이나 울진역 시간표가 인근 역과 비슷해 보여 &#8220;혹시 틀린 정보는 아닐까&#8221; 의구심이 드실 수도 있겠으나, 이는 동해선 철도망의 특성상 역 간 거리가 좁아 나타나는 현상일 뿐입니다. 제가 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a>의 최신 시스템과 공공 데이터를 하나하나 대조하며 정리한 평해역, 기성역과는 또 다른 울진역 시간표와 노선, 첫기차 마지막 기차의 운행 자료이니 안심하고 이용하셔도 됩니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>울진역 KTX·</strong></strong>ITX·누리로 이용 안내</h2>



<h3 class="wp-block-heading"><strong><strong>고속열차로 열리는 울진 여행</strong></strong></h3>



<p class="wp-block-paragraph">KTX-이음과 ITX-마음이 가져온 혁신적인 접근성은 그동안 울진은 &#8216;육지 속의 섬&#8217;이라 불릴 만큼 오지였으나, 최신형 열차인 ITX-마음과 누리로의 도입으로 그 장벽이 완전히 허물어졌습니다. 특히 KTX-이음 운행이 되면서 강릉 동대구 부전과 수도권에서도 반나절이면 울진의 맑은 공기를 마실 수 있게 되었고, 이는 당일치기나 1박 2일 짧은 휴식을 원하는 분들에게 더할 나위 없는 소식입니다.<br><br>울진역 시간표를 확인하고 역에 내리면 읍내 중심지와 주요 명소를 잇는 핵심 거점이라는 사실을 바로 실감하게 되며, 대중교통을 이용하는 뚜벅이 여행자들에게는 더할 나위 없이 좋은 조건을 갖추고 있습니다. 역 주변 정비가 워낙 깔끔하게 잘 되어 있어 기차에서 내리자마자 울진만의 독특한 여행 코스로 곧장 진입할 수 있고, 굳이 자차가 없더라도 시내버스나 택시를 활용해 울진의 구석구석을 여유롭게 누비기에 전혀 무리가 없습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading"><strong>울진역에서 시작하는 힐링의 시간</strong></h3>



<p class="wp-block-paragraph">울진의 비경을 담는 여행 코스는 역에서 내려 가장 먼저 가볼 만한 곳은 자연의 신비를 간직한 성류굴입니다. 오랜 세월이 빚어낸 석회동굴의 웅장함을 감상한 뒤, 곧장 울진 엑스포공원으로 이동해 왕피천 케이블카를 타보시는 것이 좋으며, 발밑으로 흐르는 강물과 저 멀리 펼쳐진 수평선을 한꺼번에 마주하는 경험은 오직 울진에서만 가능하며, 인근 울진 아쿠아리움까지 묶어서 둘러본다면 아이들과 함께하는 가족 여행으로도 꽤 괜찮은 선택이 될 것입니다</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">울진역 시간표 이용 전 체크사항</h3>



<p class="wp-block-paragraph">현재 울진역에는 최신형 고속열차인 KTX-이음이 정식으로 운행되고 있으며, 여기에 ITX-마음과 누리로가 더해져 울진으로 향하는 철도망이 이전보다 훨씬 탄탄해진 느낌입니다. 노선이 점차 안정화되면서 수도권이나 영남권 어디서든 반나절이면 닿을 수 있는 거리가 되었고, 미리 열차별 노선이나 요금을 확인해 두면 조금 더 경제적이고 알찬 여행을 즐길 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>울진역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">울진<br>↓<br>동해</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">751호</span><div class="time-display">10:16</div><div class="arrival-info">10:59 도착</div></td><td><span class="train-detail">755호</span><div class="time-display">22:07</div><div class="arrival-info">22:52 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">울진<br>↓<br>강릉</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">751호</span><div class="time-display">10:16</div><div class="arrival-info">11:40 도착</div></td><td><span class="train-detail">755호</span><div class="time-display">22:07</div><div class="arrival-info">23:32 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">울진<br>↓<br>동해</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1801호</span><div class="time-display">08:38</div><div class="arrival-info">09:35 도착</div></td><td><span class="train-detail">1807호</span><div class="time-display">19:07</div><div class="arrival-info">20:08 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">09:13</div><div class="arrival-info">10:24 도착</div></td><td><span class="train-detail">1865호</span><div class="time-display">21:37</div><div class="arrival-info">22:29 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">울진<br>↓<br>강릉</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1821호</span><div class="time-display">17:46</div><div class="arrival-info">19:27 도착</div></td><td><span class="train-detail">1831호</span><div class="time-display">17:46</div><div class="arrival-info">19:27 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">09:13</div><div class="arrival-info">11:12 도착</div></td><td><span class="train-detail">1865호</span><div class="time-display">21:37</div><div class="arrival-info">23:13 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">울진<br>↓<br>포항</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1824호</span><div class="time-display">21:36</div><div class="arrival-info">22:53 도착</div></td><td><span class="train-detail">1824호</span><div class="time-display">21:36</div><div class="arrival-info">22:53 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">08:38</div><div class="arrival-info">10:17 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">14:27</div><div class="arrival-info">15:59 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">울진<br>↓<br>서경주</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1824호</span><div class="time-display">21:36</div><div class="arrival-info">23:13 도착</div></td><td><span class="train-detail">1824호</span><div class="time-display">21:36</div><div class="arrival-info">23:13 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">08:38</div><div class="arrival-info">10:40 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">14:27</div><div class="arrival-info">16:23 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">울진<br>↓<br>동대구</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1824호</span><div class="time-display">21:36</div><div class="arrival-info">00:04 도착</div></td><td><span class="train-detail">1824호</span><div class="time-display">21:36</div><div class="arrival-info">00:04 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">08:38</div><div class="arrival-info">11:36 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">14:27</div><div class="arrival-info">17:18 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">울진<br>↓<br>영덕</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">752호</span><div class="time-display">11:09</div><div class="arrival-info">11:43 도착</div></td><td><span class="train-detail">756호</span><div class="time-display">20:02</div><div class="arrival-info">20:36 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">울진<br>↓<br>포항</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">752호</span><div class="time-display">11:09</div><div class="arrival-info">12:06 도착</div></td><td><span class="train-detail">756호</span><div class="time-display">20:02</div><div class="arrival-info">20:57 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">울진<br>↓<br>경주</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">752호</span><div class="time-display">11:09</div><div class="arrival-info">12:32 도착</div></td><td><span class="train-detail">756호</span><div class="time-display">20:02</div><div class="arrival-info">21:24 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">울진<br>↓<br>부전</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">752호</span><div class="time-display">11:09</div><div class="arrival-info">13:36 도착</div></td><td><span class="train-detail">756호</span><div class="time-display">20:02</div><div class="arrival-info">22:29 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">울진<br>↓<br>태화강</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1822호</span><div class="time-display">07:22</div><div class="arrival-info">09:39 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">19:08</div><div class="arrival-info">21:34 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">울진<br>↓<br>북울산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1822호</span><div class="time-display">07:22</div><div class="arrival-info">09:31 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">19:08</div><div class="arrival-info">21:26 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">울진<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1822호</span><div class="time-display">07:22</div><div class="arrival-info">10:49 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">19:08</div><div class="arrival-info">22:33 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>울진</strong>역 KTX·</strong>ITX·누리로<strong> 요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>경유지</th><th>운임</th><th>일반</th><th>우등</th></tr></thead><tbody><tr><td>동해A</td><td>ITX</td><td class="highlight">울진</td><td class="highlight">경주</td><td>-</td><td>13,800</td><td>0</td><td>0</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">울진</td><td class="highlight">경주</td><td>기본</td><td>0</td><td>20,200</td><td>24,200</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">울진</td><td class="highlight">동대구</td><td>-</td><td>19,000</td><td>0</td><td>0</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">울진</td><td class="highlight">동대구</td><td>-</td><td>14,000</td><td>0</td><td>0</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">울진</td><td>-</td><td>10,900</td><td>0</td><td>0</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">울진</td><td>-</td><td>10,900</td><td>0</td><td>0</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">강릉</td><td class="highlight">울진</td><td>기본</td><td>0</td><td>14,000</td><td>17,000</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">강릉</td><td class="highlight">울진</td><td>-</td><td>7,300</td><td>0</td><td>0</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">울진</td><td>-</td><td>6,700</td><td>0</td><td>0</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">울진</td><td>-</td><td>6,700</td><td>0</td><td>0</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">동해</td><td class="highlight">울진</td><td>기본</td><td>0</td><td>9,300</td><td>12,300</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">동해</td><td class="highlight">울진</td><td>-</td><td>4,500</td><td>0</td><td>0</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">울진</td><td class="highlight">태화강</td><td>-</td><td>17,900</td><td>0</td><td>0</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">울진</td><td class="highlight">태화강</td><td>기본</td><td>0</td><td>26,200</td><td>31,400</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">울진</td><td class="highlight">북울산</td><td>-</td><td>17,000</td><td>0</td><td>0</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">울진</td><td class="highlight">부전</td><td>-</td><td>24,000</td><td>0</td><td>0</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">울진</td><td class="highlight">부전</td><td>기본</td><td>0</td><td>32,800</td><td>39,400</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>울진역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <a href="https://krailroad.co.kr/%ec%9a%b8%ec%a7%84%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c%c2%b7itx-%eb%a7%88%ec%9d%8c%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%a0%84-%eb%85%b8%ec%84%a0-%ec%9a%94%ea%b8%88-%eb%b0%8f/">울진역 KTX 시간표 바로가기</a><br>✅ <s>울진역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ec%9a%b8%ec%a7%84%ec%97%ad-%ec%8b%9c%ea%b0%84%ed%91%9c-ktx-%ec%9d%b4%ec%9d%8c%c2%b7itx-%eb%a7%88%ec%9d%8c%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%a0%84-%eb%85%b8%ec%84%a0-%ec%9a%94%ea%b8%88-%eb%b0%8f/">울진역 ITX-마음 누리로 시간표</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>울진역 <strong>KTX·ITX·누리로 </strong>시간표</strong></h2>



<h3 class="wp-block-heading">출발 : 울진 → 도착 : 동해·강릉</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>울진</th><th>삼척</th><th>동해</th><th>묵호</th><th>정동진</th><th>강릉</th><th>비고</th></tr></thead><tbody><tr><td>751</td><td>KTX-이음</td><td>10:16</td><td>10:43</td><td>10:59</td><td>11:06</td><td>11:26</td><td>11:40</td><td>매일</td></tr><tr><td>753</td><td>KTX-이음</td><td>16:23</td><td>16:50</td><td>17:07</td><td>17:15</td><td>17:36</td><td>17:51</td><td>매일</td></tr><tr><td>755</td><td>KTX-이음</td><td>22:07</td><td>22:35</td><td>22:52</td><td>22:59</td><td>23:18</td><td>23:32</td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>울진</th><th>죽변</th><th>흥부</th><th>옥원</th><th>임원</th><th>근덕</th><th>삼척</th><th>삼척해변</th><th>추암</th><th>동해</th><th>묵호</th><th>정동진</th><th>강릉</th><th>비 고</th></tr></thead><tbody><tr><td>1801</td><td>ITX-마음</td><td>08:38</td><td>08:45</td><td>08:52</td><td></td><td></td><td></td><td>09:19</td><td></td><td></td><td>09:35</td><td></td><td></td><td></td><td></td></tr><tr><td>1851</td><td>누리로</td><td>09:13</td><td>09:20</td><td>09:27</td><td>09:36</td><td>09:42</td><td></td><td>10:01</td><td></td><td></td><td>10:24</td><td>10:33</td><td>10:55</td><td>11:12</td><td>월화수목금</td></tr><tr><td>1861</td><td>누리로</td><td>09:13</td><td>09:20</td><td>09:27</td><td>09:36</td><td>09:42</td><td></td><td>10:01</td><td>10:09</td><td>10:13</td><td>10:24</td><td>10:33</td><td>10:55</td><td>11:12</td><td>토일</td></tr><tr><td>1803</td><td>ITX-마음</td><td>13:15</td><td>13:21</td><td>13:29</td><td></td><td></td><td>13:47</td><td>13:58</td><td></td><td></td><td>14:15</td><td></td><td></td><td></td><td></td></tr><tr><td>1805</td><td>ITX-마음</td><td>14:26</td><td>14:34</td><td></td><td></td><td></td><td></td><td>15:03</td><td></td><td></td><td>15:19</td><td></td><td></td><td></td><td></td></tr><tr><td>1853</td><td>누리로</td><td>15:10</td><td></td><td>15:20</td><td>15:30</td><td></td><td>15:41</td><td>15:55</td><td></td><td></td><td>16:16</td><td>16:24</td><td>16:45</td><td>17:00</td><td>월화수목금</td></tr><tr><td>1863</td><td>누리로</td><td>15:10</td><td></td><td>15:20</td><td>15:30</td><td></td><td>15:41</td><td>15:55</td><td>16:03</td><td>16:07</td><td>16:16</td><td>16:24</td><td>16:45</td><td>17:00</td><td>토일</td></tr><tr><td>1821</td><td>ITX-마음</td><td>17:46</td><td></td><td>17:56</td><td></td><td></td><td></td><td>18:22</td><td></td><td></td><td>18:42</td><td>18:50</td><td>19:12</td><td>19:27</td><td>월화수목금</td></tr><tr><td>1831</td><td>ITX-마음</td><td>17:46</td><td></td><td>17:56</td><td></td><td></td><td></td><td>18:22</td><td>18:29</td><td>18:33</td><td>18:42</td><td>18:50</td><td>19:12</td><td>19:27</td><td>토일</td></tr><tr><td>1807</td><td>ITX-마음</td><td>19:07</td><td></td><td>19:19</td><td></td><td></td><td>19:42</td><td>19:52</td><td></td><td></td><td>20:08</td><td></td><td></td><td></td><td></td></tr><tr><td>1865</td><td>누리로</td><td>21:37</td><td></td><td></td><td></td><td></td><td></td><td>22:12</td><td></td><td></td><td>22:29</td><td>22:37</td><td>22:58</td><td>23:13</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 울진 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>울진</th><th>영덕</th><th>포항</th><th>경주</th><th>태화강</th><th>부전</th><th>비고</th></tr></thead><tbody><tr><td>752</td><td>KTX-이음</td><td>11:09</td><td>11:43</td><td>12:06</td><td>12:32</td><td>12:53</td><td>13:36</td><td>매일</td></tr><tr><td>754</td><td>KTX-이음</td><td>16:23</td><td>16:57</td><td>17:20</td><td>17:46</td><td>18:07</td><td>18:50</td><td>매일</td></tr><tr><td>756</td><td>KTX-이음</td><td>20:02</td><td>20:36</td><td>20:57</td><td>21:24</td><td>21:46</td><td>22:29</td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>울진</th><th>매화</th><th>기성</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>월포</th><th>포항</th><th>서경주</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th><th>비 고</th></tr></thead><tbody><tr><td>1822</td><td>ITX-마음</td><td>07:22</td><td></td><td></td><td>07:48</td><td>07:57</td><td></td><td>08:13</td><td></td><td>08:38</td><td>08:58</td><td>09:11</td><td>09:31</td><td>09:39</td><td>10:01</td><td>10:22</td><td>10:32</td><td>10:39</td><td>10:49</td><td></td></tr><tr><td>1802</td><td>ITX-마음</td><td>13:12</td><td></td><td>13:29</td><td></td><td>13:47</td><td>13:55</td><td>14:06</td><td></td><td>14:32</td><td>14:53</td><td>15:07</td><td>15:26</td><td>15:34</td><td></td><td>16:07</td><td>16:17</td><td></td><td>16:32</td><td></td></tr><tr><td>1814</td><td>ITX-마음</td><td>18:28</td><td>18:39</td><td>18:50</td><td>19:02</td><td>19:11</td><td></td><td>19:27</td><td></td><td>19:52</td><td>20:13</td><td>20:26</td><td>20:46</td><td>20:54</td><td>21:10</td><td>21:31</td><td>21:42</td><td>21:50</td><td>22:00</td><td>월화수목금</td></tr><tr><td>1804</td><td>ITX-마음</td><td>18:28</td><td>18:39</td><td>18:50</td><td>19:02</td><td>19:11</td><td></td><td>19:27</td><td></td><td>19:52</td><td>20:13</td><td>20:26</td><td>20:46</td><td>20:54</td><td>21:10</td><td>21:31</td><td>21:42</td><td>21:50</td><td>22:00</td><td>토일</td></tr><tr><td>1806</td><td>ITX-마음</td><td>19:08</td><td></td><td>19:25</td><td>19:38</td><td>19:47</td><td>19:55</td><td>20:06</td><td>20:23</td><td>20:34</td><td>20:54</td><td>21:07</td><td>21:26</td><td>21:34</td><td></td><td>22:02</td><td>22:18</td><td></td><td>22:33</td><td></td></tr></tbody></table></div>



<h3 class="wp-block-heading">출발 : 울진 → 도착 : 동대구</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>울진</th><th>매화</th><th>기성</th><th>평해</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>강구</th><th>장사</th><th>월포</th><th>포항</th><th>안강</th><th>서경주</th><th>아화</th><th>영천</th><th>하양</th><th>동대구</th><th>비 고</th></tr></thead><tbody><tr><td>1852</td><td>누리로</td><td>08:38</td><td>08:48</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>월화수목금</td></tr><tr><td>1862</td><td>누리로</td><td>08:38</td><td>08:48</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>토일</td></tr><tr><td>1854</td><td>누리로</td><td>10:53</td><td></td><td></td><td></td><td>11:20</td><td>11:33</td><td>11:41</td><td>11:52</td><td>11:59</td><td>12:04</td><td>12:13</td><td>12:26</td><td>12:40</td><td>12:51</td><td>13:08</td><td>13:19</td><td>13:29</td><td>13:45</td><td>월화수목금</td></tr><tr><td>1864</td><td>누리로</td><td>10:53</td><td></td><td></td><td></td><td>11:20</td><td>11:33</td><td>11:41</td><td>11:52</td><td>11:59</td><td>12:04</td><td>12:13</td><td>12:26</td><td>12:40</td><td>12:51</td><td>13:08</td><td>13:19</td><td>13:29</td><td>13:45</td><td>토일</td></tr><tr><td>1866</td><td>누리로</td><td>14:27</td><td>14:37</td><td>14:49</td><td></td><td>15:01</td><td>15:09</td><td></td><td>15:25</td><td></td><td>15:39</td><td>15:47</td><td>15:59</td><td>16:13</td><td>16:23</td><td>16:41</td><td>16:52</td><td>17:02</td><td>17:18</td><td></td></tr><tr><td>1824</td><td>ITX-마음</td><td>21:36</td><td></td><td>21:55</td><td></td><td></td><td></td><td></td><td>22:25</td><td></td><td></td><td>22:42</td><td>22:53</td><td></td><td>23:13</td><td></td><td>23:38</td><td>23:48</td><td>00:04</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>울진역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '울진'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">울진역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">울진역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '37420';
            let curName = '울진';
            let altCity = '';
            let altName = '정차';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">울진역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">16℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">울진역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%99%80%EB%94%B0%EC%9A%94+%EC%A1%B1%EB%B0%9C%EB%B3%B4%EC%8C%88+%EC%A3%BD%EB%B3%80%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9A%B8%EC%A7%84%EA%B5%B0+%EC%A3%BD%EB%B3%80%EB%A9%B4+%ED%9B%84%EC%A0%95%EB%A6%AC+295-1" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">와따요 족발보쌈 죽변점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;족발,보쌈</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 울진군 죽변면 후정리 295-1</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EA%B0%84%EC%9D%B4%EC%97%AD+%EC%9A%B8%EC%A7%84%EC%97%AD%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9A%B8%EC%A7%84%EA%B5%B0+%EC%9A%B8%EC%A7%84%EC%9D%8D+%EC%9D%8D%EB%82%B4%EB%A6%AC+298-8" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">간이역 울진역점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">술집&gt;요리주점</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 울진군 울진읍 읍내리 298-8</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EA%B8%B0%EC%84%B1%EC%97%AD+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9A%B8%EC%A7%84%EA%B5%B0+%EA%B8%B0%EC%84%B1%EB%A9%B4+%EC%B2%99%EC%82%B0%EB%A6%AC+203-1+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">기성역</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;비빔밥</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 울진군 기성면 척산리 203-1 1층</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">울진역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">울진역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 울진역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EC%9A%B8%EC%A7%84%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/02/울진역-KTX-KTX-이음-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="울진역-시간표-KTX-KTX-이음-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-18367" srcset="https://krailroad.co.kr/wp-content/uploads/2026/02/울진역-KTX-KTX-이음-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/02/울진역-KTX-KTX-이음-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/02/울진역-KTX-KTX-이음-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>태화강역 KTX-이음 시간표 부전·동해·강릉 방면 동해선 요금 및 정차역 노선 총정리</title>
		<link>https://krailroad.co.kr/%ed%83%9c%ed%99%94%ea%b0%95%ec%97%ad-ktx-%ec%9d%b4%ec%9d%8c-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b6%80%ec%a0%84%c2%b7%eb%8f%99%ed%95%b4%c2%b7%ea%b0%95%eb%a6%89-%eb%b0%a9%eb%a9%b4-%eb%8f%99%ed%95%b4/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Mon, 09 Feb 2026 03:12:41 +0000</pubDate>
				<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[태화강역 KTX 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=18314</guid>

					<description><![CDATA[태화강역 KTX로 인해 울산에 새로운 바람이 불어오고 있습니다. 기존의 무궁화호나 누리로가 중심이었던 이곳에 동해선 KTX-이음이 본격적으로 운행을 시작하며 울산의 철도 지도가 완전히 바뀌고 있죠. 시내와 다소 떨어져 있던 언양의 울산역까지 가야 했던 번거로움이 사라지며, 이제는 도심 한복판에서 곧바로 고속열차에 몸을 싣는 시대가 열린 셈입니다. 아래 정리해 드린 태화강역 시간표와 요금 정보는 코레일의 최신 데이터를 바탕으로 ... <a title="태화강역 KTX-이음 시간표 부전·동해·강릉 방면 동해선 요금 및 정차역 노선 총정리" class="read-more button" href="https://krailroad.co.kr/%ed%83%9c%ed%99%94%ea%b0%95%ec%97%ad-ktx-%ec%9d%b4%ec%9d%8c-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b6%80%ec%a0%84%c2%b7%eb%8f%99%ed%95%b4%c2%b7%ea%b0%95%eb%a6%89-%eb%b0%a9%eb%a9%b4-%eb%8f%99%ed%95%b4/" aria-label="태화강역 KTX-이음 시간표 부전·동해·강릉 방면 동해선 요금 및 정차역 노선 총정리 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">태화강역 KTX로 인해 울산에 새로운 바람이 불어오고 있습니다. 기존의 무궁화호나 누리로가 중심이었던 이곳에 동해선 KTX-이음이 본격적으로 운행을 시작하며 울산의 철도 지도가 완전히 바뀌고 있죠. 시내와 다소 떨어져 있던 언양의 울산역까지 가야 했던 번거로움이 사라지며, 이제는 도심 한복판에서 곧바로 고속열차에 몸을 싣는 시대가 열린 셈입니다.</p>



<p class="wp-block-paragraph">아래 정리해 드린 태화강역 시간표와 요금 정보는 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a>의 최신 데이터를 바탕으로 한 자료이며, 노선이 신설되거나 정비되는 과정에서 정보가 겹쳐 보일 수 있으나, 이는 실제 운행 계통을 정확히 반영한 것이니 안심하고 확인하셔도 좋습니다. 울산 도심에서 더 빠르고 편하게 기차 여행을 준비하시는 분들께 이 정보가 도움이 되었으면 합니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>태화강역 KTX-이음, 울산의 변화</strong></strong></h2>



<h3 class="wp-block-heading"><strong><strong>무궁화호에서 고속열차 시대로의 전환</strong></strong></h3>



<p class="wp-block-paragraph">과거 태화강역은 주로 느릿느릿한 무궁화호나 누리로가 오가던 곳이었으나, 동해선 복선 사업과 맞물려 KTX-이음이 도입되며 그 위상이 완전히 달라졌습니다. 이는 단순한 열차 교체를 넘어, 울산 도심에서 서울과 수도권을 잇는 고속 철도망이 구축되었다는 중요한 의미를 지닙니다. 이음 열차가 달리기 시작하면서 울산 시민들의 생활권은 한층 넓어졌으며, 철도 이용의 편의성은 이전과 비교할 수 없을 정도로 좋아졌습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading"><strong>울산역(언양) vs 태화강역(삼산)</strong></h3>



<p class="wp-block-paragraph">흔히 &#8216;울산역&#8217;이라 하면 언양에 있는 KTX 역을 떠올리지만, 지리적 이점만큼은 태화강역이 압도적입니다. 울산역은 시내에서 버스로 40~50분 이상 나가야 하는 불편함이 있는 반면, 태화강역은 울산의 심장부인 삼산동과 바로 맞닿아 있습니다. 쇼핑몰, 호텔, 터미널이 밀집한 시내에서 택시나 버스로 5~10분이면 도착할 수 있어, 시간 효율성을 중시하는 비즈니스 고객이나 여행객들에게 최고의 선택지가 되고 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">도심 속 태화강역 KTX-이음</h3>



<p class="wp-block-paragraph">1️⃣ <strong>삼산동과 연결된 최고의 접근성</strong>: 태화강역 기차 여행의 가장 큰 장점은 열차에서 내리자마자 울산의 가장 번화한 거리로 곧장 진입할 수 있다는 점입니다. 멀리 언양까지 갈 필요 없이 집 앞이나 직장 근처에서 바로 KTX를 타는 &#8216;내 집 앞 고속철도&#8217; 시대가 열린 것이죠. 특히 수도권에서 울산을 찾는 분들이라면 역 근처의 숙소나 맛집을 이용하기에 이보다 더 좋은 위치는 없습니다.<br><br>2️⃣ <strong>동해선 KTX-이음의 쾌적함과 이점</strong>: KTX-이음은 모든 좌석에 무선 충전기와 개별 창문이 설치된 최신형 열차로, 기존 무궁화호의 정겨운 맛은 덜할지 몰라도 압도적인 쾌적함을 자랑합니다. 동해안 노선을 따라 달리며 창밖으로 펼쳐지는 풍경을 감상하는 즐거움은 덤이며, 정시성이 뛰어난 고속열차의 특성상 출장이나 중요한 약속이 있을 때 마음 편히 이용할 수 있다는 장점이 뚜렷합니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>태화강역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">태화강<br>↓<br>포항</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">751호</span><div class="time-display">08:34</div><div class="arrival-info">09:20 도착</div></td><td><span class="train-detail">755호</span><div class="time-display">20:24</div><div class="arrival-info">21:11 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">태화강<br>↓<br>영덕</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">751호</span><div class="time-display">08:34</div><div class="arrival-info">09:42 도착</div></td><td><span class="train-detail">755호</span><div class="time-display">20:24</div><div class="arrival-info">21:33 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">태화강<br>↓<br>동해</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">751호</span><div class="time-display">08:34</div><div class="arrival-info">10:59 도착</div></td><td><span class="train-detail">755호</span><div class="time-display">20:24</div><div class="arrival-info">22:52 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">태화강<br>↓<br>강릉</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">751호</span><div class="time-display">08:34</div><div class="arrival-info">11:40 도착</div></td><td><span class="train-detail">755호</span><div class="time-display">20:24</div><div class="arrival-info">23:32 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">태화강<br>↓<br>안동</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">704호</span><div class="time-display">6:41</div><div class="arrival-info">7:55 도착</div></td><td><span class="train-detail">718호</span><div class="time-display">20:00</div><div class="arrival-info">21:07 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">태화강<br>↓<br>제천</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">704호</span><div class="time-display">6:41</div><div class="arrival-info">8:43 도착</div></td><td><span class="train-detail">718호</span><div class="time-display">20:00</div><div class="arrival-info">21:49 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">태화강<br>↓<br>청량리</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">704호</span><div class="time-display">6:41</div><div class="arrival-info">9:59 도착</div></td><td><span class="train-detail">718호</span><div class="time-display">20:00</div><div class="arrival-info">22:58 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">태화강<br>↓<br>서울</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">704호</span><div class="time-display">6:41</div><div class="arrival-info">10:19 도착</div></td><td><span class="train-detail">714호</span><div class="time-display">15:30</div><div class="arrival-info">19:13 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">태화강<br>↓<br>부전</td><td><span class="type-label type-ktx">KTX</span></td><td><span class="train-detail">701호</span><div class="time-display">8:40</div><div class="arrival-info">9:24 도착</div></td><td><span class="train-detail">715호</span><div class="time-display">22:08</div><div class="arrival-info">22:54 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>태화강</strong>역 KTX-이음 요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>경유지</th><th>일반</th><th>우등</th></tr></thead><tbody><tr><td>중앙K1</td><td>KTX</td><td class="highlight">서울</td><td class="highlight">태화강</td><td>기본</td><td>50,500</td><td>60,600</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">청량리</td><td class="highlight">태화강</td><td>기본</td><td>48,800</td><td>58,600</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">제천</td><td class="highlight">태화강</td><td>기본</td><td>33,400</td><td>40,100</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">안동</td><td class="highlight">태화강</td><td>기본</td><td>21,100</td><td>25,300</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">강릉</td><td class="highlight">태화강</td><td>기본</td><td>40,200</td><td>48,200</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">동해</td><td class="highlight">태화강</td><td>기본</td><td>35,500</td><td>42,600</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">영덕</td><td class="highlight">태화강</td><td>기본</td><td>16,900</td><td>20,300</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">포항</td><td class="highlight">태화강</td><td>기본</td><td>11,500</td><td>14,500</td></tr><tr><td>중앙K1</td><td>KTX</td><td class="highlight">태화강</td><td class="highlight">부전</td><td>기본</td><td>8,400</td><td>11,400</td></tr><tr><td>동해K3</td><td>KTX</td><td class="highlight">태화강</td><td class="highlight">부전</td><td>기본</td><td>8,400</td><td>11,400</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>태화강역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <a href="https://krailroad.co.kr/%ed%83%9c%ed%99%94%ea%b0%95%ec%97%ad-ktx-%ec%9d%b4%ec%9d%8c-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b6%80%ec%a0%84%c2%b7%eb%8f%99%ed%95%b4%c2%b7%ea%b0%95%eb%a6%89-%eb%b0%a9%eb%a9%b4-%eb%8f%99%ed%95%b4/">태화강역 KTX 시간표 바로가기</a><br>✅ <s>태화강역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ed%83%9c%ed%99%94%ea%b0%95%ec%97%ad-itx-%eb%a7%88%ec%9d%8c-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%9a%94%ea%b8%88-%eb%8f%99%eb%8c%80%ea%b5%ac%c2%b7%ed%8f%ac%ed%95%ad%c2%b7%ea%b0%95%eb%a6%89/">태화강역 ITX 시간표 바로가기</a><br>✅ <a href="https://krailroad.co.kr/%ed%83%9c%ed%99%94%ea%b0%95%ec%97%ad-%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%8c%80%ea%b5%ac%ec%84%a0-%eb%8f%99%eb%8c%80%ea%b5%ac%c2%b7/">태화강역 무궁화호 누리로 시간표</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>태화강역 <strong>KTX-이음 </strong>시간표</strong></h2>



<h3 class="wp-block-heading">출발 : 태화강 → 도착 : 동해·강릉</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>태화강</th><th>경주</th><th>포항</th><th>영덕</th><th>울진</th><th>삼척</th><th>동해</th><th>묵호</th><th>정동진</th><th>강릉</th><th>비고</th></tr></thead><tbody><tr><td>751</td><td>KTX-이음</td><td>08:34</td><td>08:56</td><td>09:20</td><td>09:42</td><td>10:16</td><td>10:43</td><td>10:59</td><td>11:06</td><td>11:26</td><td>11:40</td><td>매일</td></tr><tr><td>753</td><td>KTX-이음</td><td>14:41</td><td>15:04</td><td>15:28</td><td>15:49</td><td>16:23</td><td>16:50</td><td>17:07</td><td>17:15</td><td>17:36</td><td>17:51</td><td>매일</td></tr><tr><td>755</td><td>KTX-이음</td><td>20:24</td><td>20:45</td><td>21:11</td><td>21:33</td><td>22:07</td><td>22:35</td><td>22:52</td><td>22:59</td><td>23:18</td><td>23:32</td><td>매일</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 태화강 → 도착 : 청량리·서울</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>태화강</th><th>북울산</th><th>경주</th><th>영천</th><th>의성</th><th>안동</th><th>영주</th><th>풍기</th><th>단양</th><th>제천</th><th>원주</th><th>서원주</th><th>양평</th><th>덕소</th><th>상봉</th><th>청량리</th><th>서울</th><th>비고</th></tr></thead><tbody><tr><td>704</td><td>KTX-이음</td><td>6:41</td><td></td><td>7:04</td><td>7:22</td><td>7:43</td><td>7:55</td><td>8:10</td><td></td><td>8:27</td><td>8:43</td><td>9:00</td><td>9:12</td><td></td><td></td><td></td><td>9:59</td><td>10:19</td><td>매일</td></tr><tr><td>706</td><td>KTX-이음</td><td>8:50</td><td>8:59</td><td>9:17</td><td></td><td></td><td>10:02</td><td>10:17</td><td></td><td></td><td>10:44</td><td>11:01</td><td>11:12</td><td></td><td></td><td></td><td>11:58</td><td></td><td>매일</td></tr><tr><td>708</td><td>KTX-이음</td><td>10:50</td><td></td><td>11:12</td><td>11:30</td><td></td><td>12:01</td><td>12:17</td><td>12:26</td><td>12:38</td><td>12:53</td><td>13:11</td><td>13:23</td><td>13:45</td><td></td><td></td><td>14:13</td><td>14:33</td><td>매일</td></tr><tr><td>710</td><td>KTX-이음</td><td>12:53</td><td></td><td>13:16</td><td></td><td>13:51</td><td>14:03</td><td>14:19</td><td>14:28</td><td>14:39</td><td>14:55</td><td>15:12</td><td></td><td>15:34</td><td></td><td>15:58</td><td>16:04</td><td></td><td>매일</td></tr><tr><td>712</td><td>KTX-이음</td><td>14:13</td><td></td><td>14:35</td><td></td><td></td><td>15:20</td><td>15:35</td><td></td><td></td><td>16:03</td><td>16:20</td><td>16:32</td><td></td><td></td><td></td><td>17:21</td><td>17:41</td><td>매일</td></tr><tr><td>714</td><td>KTX-이음</td><td>15:30</td><td>15:39</td><td>15:56</td><td>16:12</td><td></td><td>16:43</td><td>16:59</td><td></td><td>17:15</td><td>17:31</td><td>17:48</td><td>18:01</td><td>18:23</td><td></td><td></td><td>18:51</td><td>19:13</td><td>매일</td></tr><tr><td>716</td><td>KTX-이음</td><td>17:07</td><td></td><td>17:29</td><td></td><td></td><td>18:14</td><td>18:30</td><td></td><td></td><td>18:57</td><td>19:14</td><td>19:27</td><td></td><td></td><td></td><td>20:15</td><td></td><td>매일</td></tr><tr><td>782</td><td>KTX-이음</td><td>18:11</td><td></td><td>18:33</td><td></td><td></td><td>19:18</td><td>19:33</td><td>19:42</td><td>19:52</td><td>20:07</td><td>20:24</td><td></td><td></td><td>20:59</td><td></td><td>21:13</td><td></td><td>토일</td></tr><tr><td>718</td><td>KTX-이음</td><td>20:00</td><td></td><td>20:22</td><td></td><td></td><td>21:07</td><td>21:22</td><td></td><td></td><td>21:49</td><td>22:07</td><td></td><td>22:29</td><td></td><td>22:52</td><td>22:58</td><td></td><td>매일</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 태화강 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>



<p class="box1 wp-block-paragraph"><strong>💡 중앙선과 동해선 전체 노선 시간표</strong></p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>태화강</th><th>부전</th><th>비고</th></tr></thead><tbody><tr><td>752</td><td>KTX-이음</td><td>12:53</td><td>13:36</td><td>매일</td></tr><tr><td>754</td><td>KTX-이음</td><td>18:07</td><td>18:50</td><td>매일</td></tr><tr><td>756</td><td>KTX-이음</td><td>21:46</td><td>22:29</td><td>매일</td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>편성</th><th>태화강</th><th>부전</th><th>비고</th></tr></thead><tbody><tr><td>701</td><td>KTX-이음</td><td>8:40</td><td>9:24</td><td>매일</td></tr><tr><td>703</td><td>KTX-이음</td><td>9:48</td><td>10:34</td><td>매일</td></tr><tr><td>705</td><td>KTX-이음</td><td>12:18</td><td>13:01</td><td>매일</td></tr><tr><td>707</td><td>KTX-이음</td><td>14:39</td><td>15:27</td><td>매일</td></tr><tr><td>709</td><td>KTX-이음</td><td>16:18</td><td>17:00</td><td>매일</td></tr><tr><td>781</td><td>KTX-이음</td><td>16:52</td><td>17:35</td><td>토일</td></tr><tr><td>711</td><td>KTX-이음</td><td>17:51</td><td>18:41</td><td>매일</td></tr><tr><td>713</td><td>KTX-이음</td><td>19:46</td><td>20:36</td><td>매일</td></tr><tr><td>715</td><td>KTX-이음</td><td>22:08</td><td>22:54</td><td>매일</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>태화강역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '태화강'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">태화강역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">태화강역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '26';
            let curName = '태화강';
            let altCity = '';
            let altName = '정차';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">태화강역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">14℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">태화강역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%B4%9D%EA%B0%81%EC%A7%AC%EB%BD%95+%EC%9A%B8%EC%82%B0%EA%B4%91%EC%97%AD%EC%8B%9C+%EB%82%A8%EA%B5%AC+%EC%82%BC%EC%82%B0%EB%8F%99+187-3+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">총각짬뽕</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">중식&gt;중식당</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">울산광역시 남구 삼산동 187-3 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%99%8D%EC%9D%B5%EB%8F%88%EA%B9%8C%EC%8A%A4+%EC%9A%B8%EC%82%B0%EC%82%BC%EC%82%B0%EC%A0%90+%EC%9A%B8%EC%82%B0%EA%B4%91%EC%97%AD%EC%8B%9C+%EB%82%A8%EA%B5%AC+%EC%82%BC%EC%82%B0%EB%8F%99+171-4" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">홍익돈까스 울산삼산점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;일식&gt;돈가스</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">울산광역시 남구 삼산동 171-4</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%82%BC%EC%82%B0%EB%B0%80%EB%A9%B4%EC%A0%84%EB%AC%B8%EC%A0%90+%EC%9A%B8%EC%82%B0%EA%B4%91%EC%97%AD%EC%8B%9C+%EB%82%A8%EA%B5%AC+%EC%82%BC%EC%82%B0%EB%8F%99+1645-1" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">삼산밀면전문점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;국수</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">울산광역시 남구 삼산동 1645-1</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%95%84%EB%9D%BC%EC%88%AF%EB%B6%88%EB%8B%AD%EA%B0%88%EB%B9%84%26amp%3B%EC%AD%88%EA%BE%B8%EB%AF%B8+%EB%B3%B8%EC%A0%90+%EC%9A%B8%EC%82%B0%EA%B4%91%EC%97%AD%EC%8B%9C+%EB%82%A8%EA%B5%AC+%EC%82%BC%EC%82%B0%EB%8F%99+200-3+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">아라숯불닭갈비&amp;쭈꾸미 본점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;주꾸미요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">울산광역시 남구 삼산동 200-3 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%83%A4%EB%B8%8C%EC%98%AC%EB%8D%B0%EC%9D%B4+%EC%9A%B8%EC%82%B0%EC%82%BC%EC%82%B0%EC%A0%90+%EC%9A%B8%EC%82%B0%EA%B4%91%EC%97%AD%EC%8B%9C+%EB%82%A8%EA%B5%AC+%EC%82%BC%EC%82%B0%EB%8F%99+189-1+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">샤브올데이 울산삼산점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;일식&gt;샤브샤브</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">울산광역시 남구 삼산동 189-1 1층</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">태화강역 실시간 주차장 요금</h4>
        
                    <div class="parking-list-container">
                                    <div style="background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0; margin-bottom: 20px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); font-family: 'Noto Sans KR', sans-serif;">
                        <div style="font-size: 1.1rem; font-weight: 700; color: #0052a4; border-bottom: 2px solid #f1f5f9; padding-bottom: 10px; margin-bottom: 15px;">
                            📍 태화강역                        </div>
                        
                        <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 15px;">
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">기본 요금</span>
                                <strong style="font-size: 1.05rem;">500원</strong> 
                                <small style="color: #94a3b8;">/ 30분</small>
                            </div>
                            <div style="background: #f8fafc; padding: 12px; border-radius: 8px;">
                                <span style="font-size: 0.8rem; color: #64748b; display: block;">추가 요금</span>
                                <strong style="font-size: 1.05rem;">200원</strong>
                                <small style="color: #94a3b8;">/ 10분</small>
                            </div>
                            <div style="background: #fff1f2; padding: 15px; border-radius: 8px; border: 1px solid #ffe4e6;">
                                <span style="font-size: 0.85rem; color: #e11d48; font-weight: 600; display: block; margin-bottom: 4px;">📅 1일 최대</span>
                                <strong style="font-size: 1.2rem; color: #e11d48;">10,000원</strong>
                            </div>
                            <div style="background: #f0fdf4; padding: 15px; border-radius: 8px; border: 1px solid #dcfce7;">
                                <span style="font-size: 0.85rem; color: #166534; font-weight: 600; display: block; margin-bottom: 4px;">💳 월 정기권</span>
                                <strong style="font-size: 1.2rem; color: #166534;">정보없음</strong>
                            </div>
                        </div>

                        <div style="font-size: 0.85rem; color: #475569; line-height: 1.7; background: #f1f5f9; padding: 12px; border-radius: 8px;">
                            🏠 <b>주소:</b> 울산광역시 남구 산업로 654<br>
                            🕒 <b>운영시간:</b> 24시간<br>
                            ⏱️ <b>무료회차시간:</b> 0분 이내<br>
                            🎁 <b>할인정보:</b> 코레일 기본 할인 규정 적용<br>
                            📞 <b>문의:</b> 051-441-7782                        </div>
                    </div>
                            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">태화강역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 울산광역시 남구 산업로 654</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:051-441-7782" style="color: #0052a4; font-weight: bold; text-decoration: none;">051-441-7782</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%ED%83%9C%ED%99%94%EA%B0%95%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/02/태화강역-KTX-KTX-이음-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="태화강역-KTX-KTX-이음-시간표-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-18364" srcset="https://krailroad.co.kr/wp-content/uploads/2026/02/태화강역-KTX-KTX-이음-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/02/태화강역-KTX-KTX-이음-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/02/태화강역-KTX-KTX-이음-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>매화역 열차 시간표 ITX-마음·누리로 동해선 이현세 만화거리 벽화마을 요금 및 정차역</title>
		<link>https://krailroad.co.kr/%eb%a7%a4%ed%99%94%ec%97%ad-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-itx-%eb%a7%88%ec%9d%8c%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%eb%8f%99%ed%95%b4%ec%84%a0-%ec%9d%b4%ed%98%84%ec%84%b8-%eb%a7%8c/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Mon, 09 Feb 2026 02:04:32 +0000</pubDate>
				<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[매화역 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=18300</guid>

					<description><![CDATA[매화역 열차 승강장에 발을 내딛는 순간, 여러분은 마치 과거로 가는 타임머신을 탄 듯한 묘한 기분에 사로잡힐지도 모릅니다. 왜냐하면 기성역이 하늘을 가르는 비행기의 굉음으로 여행의 시작을 알린다면, 이곳 매화역은 담벼락마다 촘촘히 새겨진 추억의 그림들이 우리를 반겨주기 때문입니다. 이번 동해선 개통으로 새롭게 문을 연 매화역은 단순한 환승지가 아니며, 울진의 남북을 연결하는 길목에서 &#8216;이현세 만화거리&#8217;라는 낭만적인 테마를 입고 ... <a title="매화역 열차 시간표 ITX-마음·누리로 동해선 이현세 만화거리 벽화마을 요금 및 정차역" class="read-more button" href="https://krailroad.co.kr/%eb%a7%a4%ed%99%94%ec%97%ad-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-itx-%eb%a7%88%ec%9d%8c%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%eb%8f%99%ed%95%b4%ec%84%a0-%ec%9d%b4%ed%98%84%ec%84%b8-%eb%a7%8c/" aria-label="매화역 열차 시간표 ITX-마음·누리로 동해선 이현세 만화거리 벽화마을 요금 및 정차역 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">매화역 열차 승강장에 발을 내딛는 순간, 여러분은 마치 과거로 가는 타임머신을 탄 듯한 묘한 기분에 사로잡힐지도 모릅니다. 왜냐하면 기성역이 하늘을 가르는 비행기의 굉음으로 여행의 시작을 알린다면, 이곳 매화역은 담벼락마다 촘촘히 새겨진 추억의 그림들이 우리를 반겨주기 때문입니다. 이번 동해선 개통으로 새롭게 문을 연 매화역은 단순한 환승지가 아니며, 울진의 남북을 연결하는 길목에서 &#8216;이현세 만화거리&#8217;라는 낭만적인 테마를 입고 재탄생한 특별한 문화 정거장입니다.</p>



<p class="wp-block-paragraph">포스팅 특성상 시간표 데이터가 중복처럼 보일 수 있어 우려되기도 하지만, 이용자분들의 소중한 시간을 위해 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a> 공식 자료와 실제 열차 운행 정보를 하나하나 찾아서 정성껏 정리했으니, 매화역 열차를 이용해 만화 속 주인공들을 만나러 가는 길에 저의 자료가 도움이 되었으면 합니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>매화역 ITX-마음·누리로 이용 안내</strong></strong></h2>



<h3 class="wp-block-heading"><strong><strong>매화역 열차 만의 스토리텔링</strong></strong></h3>



<p class="wp-block-paragraph">왜 매화역에 만화가 피어났을까? 울진 매화리는 이름 그대로 매화나무가 지천인 마을입니다. 이 예쁜 마을이 기차역 신설과 함께 주목받게 된 결정적 이유는 바로 이현세 작가와의 인연 덕분입니다. 작가의 고향인 이곳에 그의 대표작 &lt;공포의 외인구단&gt; 벽화가 조성되면서, 조용했던 시골 마을은 전국적인 매화리 벽화마을로 이름을 알리게 되었습니다.</p>



<p class="wp-block-paragraph">까치와 엄지, 그리고 매화꽃 향기 이곳이 국내 매화 명소로 손꼽히는 이유는 단순히 꽃 때문만은 아니며, 3월, 은은한 매화 향기가 코끝을 간지럽힐 때 벽면의 &#8216;까치&#8217;와 &#8216;엄지&#8217;의 모습도 낭만적이기 때문입니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading"><strong>매화역 열차 이용시 포인트</strong></h3>



<p class="wp-block-paragraph">1️⃣ <strong>위치 및 성류굴 가는 법:</strong> 매화역은 매화면 중심지에 위치해 있으며, 울진의 보물 성류굴까지는 차로 약 10~15분이면 닿을 수 있습니다. 역 앞에서 대중교통이나 택시를 이용해 &#8216;만화거리-성류굴&#8217; 코스를 묶어 당일치기 여행을 즐기기에 아주 좋습니다.<br><br>2️⃣ <strong>역세권의 특징:</strong> 기성역과 마찬가지로 주변 상권이 크지 않습니다. 하지만 만화거리를 따라 걷다 보면 만나는 아기자기한 동네 가게들이 오히려 매화역만의 소박한 매력을 더해 주기도 합니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>매화역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">매화<br>↓<br>북울산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1814호</span><div class="time-display">18:39</div><div class="arrival-info">20:46 도착</div></td><td><span class="train-detail">1804호</span><div class="time-display">18:39</div><div class="arrival-info">20:46 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">매화<br>↓<br>태화강</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1814호</span><div class="time-display">18:39</div><div class="arrival-info">20:54 도착</div></td><td><span class="train-detail">1804호</span><div class="time-display">18:39</div><div class="arrival-info">20:54 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">매화<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1814호</span><div class="time-display">18:39</div><div class="arrival-info">22:00 도착</div></td><td><span class="train-detail">1804호</span><div class="time-display">18:39</div><div class="arrival-info">22:00 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">매화<br>↓<br>영덕</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">08:48</div><div class="arrival-info">09:40 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">14:37</div><div class="arrival-info">15:25 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">매화<br>↓<br>포항</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">08:48</div><div class="arrival-info">10:17 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">14:37</div><div class="arrival-info">15:59 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">매화<br>↓<br>동대구</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">08:48</div><div class="arrival-info">11:36 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">14:37</div><div class="arrival-info">17:18 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">매화<br>↓<br>울진</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1801호</span><div class="time-display">08:28</div><div class="arrival-info">08:38 도착</div></td><td><span class="train-detail">1803호</span><div class="time-display">13:03</div><div class="arrival-info">13:15 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1853호</span><div class="time-display">15:00</div><div class="arrival-info">15:10 도착</div></td><td><span class="train-detail">1865호</span><div class="time-display">21:28</div><div class="arrival-info">21:37 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">매화<br>↓<br>동해</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1801호</span><div class="time-display">08:28</div><div class="arrival-info">09:35 도착</div></td><td><span class="train-detail">1803호</span><div class="time-display">13:03</div><div class="arrival-info">14:15 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1853호</span><div class="time-display">15:00</div><div class="arrival-info">16:16 도착</div></td><td><span class="train-detail">1865호</span><div class="time-display">21:28</div><div class="arrival-info">22:29 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">매화<br>↓<br>강릉</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1853호</span><div class="time-display">15:00</div><div class="arrival-info">17:00 도착</div></td><td><span class="train-detail">1865호</span><div class="time-display">21:28</div><div class="arrival-info">23:13 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>매화</strong>역 ITX-마음 누리로 요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>운임</th></tr></thead><tbody><tr><td>동해2</td><td>무궁화</td><td class="highlight">매화</td><td class="highlight">서경주</td><td>7,700</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">매화</td><td class="highlight">서경주</td><td>11,600</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">매화</td><td class="highlight">서경주</td><td>11,600</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">매화</td><td class="highlight">동대구</td><td>13,200</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">매화</td><td class="highlight">동대구</td><td>17,900</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">강릉</td><td class="highlight">매화</td><td>8,100</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">매화</td><td>12,000</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">매화</td><td>12,000</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">동해</td><td class="highlight">매화</td><td>5,200</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">매화</td><td>7,700</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">매화</td><td>7,700</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">울진</td><td class="highlight">매화</td><td>4,800</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">울진</td><td class="highlight">매화</td><td>4,800</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">울진</td><td class="highlight">매화</td><td>2,600</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">매화</td><td class="highlight">태화강</td><td>16,800</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">매화</td><td class="highlight">북울산</td><td>15,900</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">매화</td><td class="highlight">부전</td><td>22,900</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong><strong>매화</strong>역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <s>매화역 KTX 노선 없음</s><br>✅ <s><s>매화</s>역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%eb%a7%a4%ed%99%94%ec%97%ad-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-itx-%eb%a7%88%ec%9d%8c%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%eb%8f%99%ed%95%b4%ec%84%a0-%ec%9d%b4%ed%98%84%ec%84%b8-%eb%a7%8c/">매화역 ITX-마음·누리로 시간표</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>매화역 <strong>ITX-마음 누리로</strong> 시간표</strong></h2>



<h3 class="wp-block-heading">출발 : 매화 → 도착 : 동대구</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>매화</th><th>기성</th><th>평해</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>강구</th><th>장사</th><th>월포</th><th>포항</th><th>안강</th><th>서경주</th><th>아화</th><th>영천</th><th>하양</th><th>동대구</th><th>비 고</th></tr></thead><tbody><tr><td>1852</td><td>누리로</td><td>08:48</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>월화수목금</td></tr><tr><td>1862</td><td>누리로</td><td>08:48</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>토일</td></tr><tr><td>1866</td><td>누리로</td><td>14:37</td><td>14:49</td><td></td><td>15:01</td><td>15:09</td><td></td><td>15:25</td><td></td><td>15:39</td><td>15:47</td><td>15:59</td><td>16:13</td><td>16:23</td><td>16:41</td><td>16:52</td><td>17:02</td><td>17:18</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 매화 → 도착 : 동해·강릉</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>매화</th><th>울진</th><th>흥부</th><th>옥원</th><th>근덕</th><th>삼척</th><th>삼척해변</th><th>추암</th><th>동해</th><th>묵호</th><th>정동진</th><th>강릉</th><th>비 고</th></tr></thead><tbody><tr><td>1853</td><td>누리로</td><td>15:00</td><td>15:10</td><td>15:20</td><td>15:30</td><td>15:41</td><td>15:55</td><td></td><td></td><td>16:16</td><td>16:24</td><td>16:45</td><td>17:00</td><td>월화수목금</td></tr><tr><td>1863</td><td>누리로</td><td>15:00</td><td>15:10</td><td>15:20</td><td>15:30</td><td>15:41</td><td>15:55</td><td>16:03</td><td>16:07</td><td>16:16</td><td>16:24</td><td>16:45</td><td>17:00</td><td>토일</td></tr><tr><td>1865</td><td>누리로</td><td>21:28</td><td>21:37</td><td></td><td></td><td></td><td>22:12</td><td></td><td></td><td>22:29</td><td>22:37</td><td>22:58</td><td>23:13</td><td></td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>매화</th><th>울진</th><th>죽변</th><th>흥부</th><th>근덕</th><th>삼척</th><th>동해</th></tr></thead><tbody><tr><td>1801</td><td>ITX-마음</td><td>08:28</td><td>08:38</td><td>08:45</td><td>08:52</td><td></td><td>09:19</td><td>09:35</td></tr><tr><td>1803</td><td>ITX-마음</td><td>13:03</td><td>13:15</td><td>13:21</td><td>13:29</td><td>13:47</td><td>13:58</td><td>14:15</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 매화 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>매화</th><th>기성</th><th>후포</th><th>고래불</th><th>영덕</th><th>포항</th><th>서경주</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th><th>비 고</th></tr></thead><tbody><tr><td>1814</td><td>ITX-마음</td><td>18:39</td><td>18:50</td><td>19:02</td><td>19:11</td><td>19:27</td><td>19:52</td><td>20:13</td><td>20:26</td><td>20:46</td><td>20:54</td><td>21:10</td><td>21:31</td><td>21:42</td><td>21:50</td><td>22:00</td><td>월화수목금</td></tr><tr><td>1804</td><td>ITX-마음</td><td>18:39</td><td>18:50</td><td>19:02</td><td>19:11</td><td>19:27</td><td>19:52</td><td>20:13</td><td>20:26</td><td>20:46</td><td>20:54</td><td>21:10</td><td>21:31</td><td>21:42</td><td>21:50</td><td>22:00</td><td>토일</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>매화역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '매화'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">매화역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">매화역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '';
            let curName = '매화';
            let altCity = '';
            let altName = '정차';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">매화역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">16℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">매화역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%97%94%EC%A0%9C%EB%A6%AC%EB%84%88%EC%8A%A4+%EB%A7%9D%EC%96%91%ED%9C%B4%EA%B2%8C%EC%86%8C%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9A%B8%EC%A7%84%EA%B5%B0+%EB%A7%A4%ED%99%94%EB%A9%B4+%EB%8D%95%EC%8B%A0%EB%A6%AC+119-5+%EB%A7%9D%EC%96%91%ED%9C%B4%EA%B2%8C%EC%86%8C2%EC%B8%B5+%EC%97%94%EC%A0%9C%EB%A6%AC%EB%84%88%EC%8A%A4%EC%BB%A4%ED%94%BC" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">엔제리너스 망양휴게소점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;카페</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 울진군 매화면 덕신리 119-5 망양휴게소2층 엔제리너스커피</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%A7%9D%EC%96%91%ED%9C%B4%EA%B2%8C%EC%86%8C+%EC%8B%9D%EB%8B%B9+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9A%B8%EC%A7%84%EA%B5%B0+%EB%A7%A4%ED%99%94%EB%A9%B4+%EB%8D%95%EC%8B%A0%EB%A6%AC+119-5+%EB%8D%95+%EC%8B%A0%EB%A6%AC%2C+%EB%A7%9D%EC%96%91%ED%9C%B4%EA%B2%8C%EC%86%8C+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">망양휴게소 식당</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;한식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 울진군 매화면 덕신리 119-5 덕 신리, 망양휴게소 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%B9%B4%ED%8E%98%EC%A0%9C%EB%8B%88%EC%97%98+%EC%9A%B8%EC%A7%84+%EB%A7%A4%ED%99%94%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9A%B8%EC%A7%84%EA%B5%B0+%EB%A7%A4%ED%99%94%EB%A9%B4+%EB%8D%95%EC%8B%A0%EB%A6%AC+33-3+%EC%B9%B4%ED%8E%98%EC%A0%9C%EB%8B%88%EC%97%98+%EB%A7%A4%ED%99%94" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">카페제니엘 울진 매화점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;카페,디저트</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 울진군 매화면 덕신리 33-3 카페제니엘 매화</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%A7%9D%EC%96%91%EC%B9%B4%ED%8E%98+%EB%A7%9D%EC%96%91%ED%9C%B4%EA%B2%8C%EC%86%8C%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9A%B8%EC%A7%84%EA%B5%B0+%EB%A7%A4%ED%99%94%EB%A9%B4+%EB%8D%95%EC%8B%A0%EB%A6%AC+119-5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">망양카페 망양휴게소점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;카페</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 울진군 매화면 덕신리 119-5</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%8B%A8%EB%B0%A4%ED%98%B8%EB%91%90%EA%B3%BC%EC%9E%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9A%B8%EC%A7%84%EA%B5%B0+%EB%A7%A4%ED%99%94%EB%A9%B4+%EB%8D%95%EC%8B%A0%EB%A6%AC+119-5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">단밤호두과자</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;호두과자</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 울진군 매화면 덕신리 119-5</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">매화역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">매화역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 매화역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EB%A7%A4%ED%99%94%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/02/매화역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="매화역-열차-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-18361" srcset="https://krailroad.co.kr/wp-content/uploads/2026/02/매화역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/02/매화역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/02/매화역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>기성역 ITX-마음·누리로 기차 시간표 울진비행훈련원 및 기성망양해변 요금 정차역</title>
		<link>https://krailroad.co.kr/%ea%b8%b0%ec%84%b1%ec%97%ad-itx-%eb%a7%88%ec%9d%8c%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%9a%b8%ec%a7%84%eb%b9%84%ed%96%89%ed%9b%88%eb%a0%a8%ec%9b%90/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Mon, 09 Feb 2026 01:37:12 +0000</pubDate>
				<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[기성역 ITX-마음 시간표]]></category>
		<category><![CDATA[기성역 누리로 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=18289</guid>

					<description><![CDATA[기성에 내리면 먼저 들리는 소리는 기차의 소리가 아니라, 하늘을 가르는 경비행기의 엔진 소리일지 모릅니다. 왜냐하면 이곳은 울진비행훈련원과 나란히 자리 잡고 있어 기차역 승강장에서 비행기가 뜨고 내리는 장면을 볼 수 있는 국내에서 몇 안 되는 아주 특별한 역이며, 푸른 동해바다와 활주로가 공존하는 매력 덕분에 남들과 다른 여행 장소로 사람들에게 많이 추천받는 곳입니다. 특히 중복 데이터처럼 보일 ... <a title="기성역 ITX-마음·누리로 기차 시간표 울진비행훈련원 및 기성망양해변 요금 정차역" class="read-more button" href="https://krailroad.co.kr/%ea%b8%b0%ec%84%b1%ec%97%ad-itx-%eb%a7%88%ec%9d%8c%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%9a%b8%ec%a7%84%eb%b9%84%ed%96%89%ed%9b%88%eb%a0%a8%ec%9b%90/" aria-label="기성역 ITX-마음·누리로 기차 시간표 울진비행훈련원 및 기성망양해변 요금 정차역 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">기성에 내리면 먼저 들리는 소리는 기차의 소리가 아니라, 하늘을 가르는 경비행기의 엔진 소리일지 모릅니다. 왜냐하면 이곳은 울진비행훈련원과 나란히 자리 잡고 있어 기차역 승강장에서 비행기가 뜨고 내리는 장면을 볼 수 있는 국내에서 몇 안 되는 아주 특별한 역이며, 푸른 동해바다와 활주로가 공존하는 매력 덕분에 남들과 다른 여행 장소로 사람들에게 많이 추천받는 곳입니다.</p>



<p class="wp-block-paragraph">특히 중복 데이터처럼 보일 수 있는 시간표 부분은 실제 운영 시간표에 맞춰 꼼꼼하게 대조하며 작성한 것이므로 안심하고 요금이나 열차 출발 시간을 참고하시면 됩니다. 제가 정리한 이 기록들이 기성을 이용하는 분들에게 작게나마 보탬이 되기를 바라는 마음으로 정리했습니다(<a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a> 자료 참고).</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>기성역 ITX-마음·누리로 이용 안내</strong></strong></h2>



<h3 class="wp-block-heading"><strong><strong>비행기가 보이는 기차역의 낭만</strong></strong></h3>



<p class="wp-block-paragraph">기성은 기차 여행과 항공기 관람의 재미를 한곳에서 누릴 수 있는 특별한 곳으로, 역 주변으로 넓게 펼쳐진 활주로에서 훈련용 비행기들이 힘차게 비상하는 모습은 아이들에게는 신기한 볼거리가 되고, 어른들에게는 이국적인 해안 풍경을 선사하며 복잡한 도시의 기차역에서는 결코 만날 수 없는 기성만의 이색적인 즐거움을 볼 수 있습니다.</p>



<p class="wp-block-paragraph">또한 역에서 조금만 걸어나가면 탁 트인 기성망양해수욕장과 기성희망해수욕장이 반겨주는데, 이곳은 동해안의 숨은 차박 성지로도 유명하여 시끄러운 상업 시설 대신 파도 소리와 맑은 별빛을 벗 삼아 조용히 캠핑을 즐기기에 아주 좋습니다. 특히 백사장이 넓고 수심이 완만하여 여름철 가족 단위로 물놀이를 즐기기에도 부족함이 없으며, 비행기가 오가는 하늘과 푸른 바다를 동시에 즐길 수 있어 여행의 깊이가 한층 더해집니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading"><strong>기성역 방문 시 알아두어야 할 점</strong></h3>



<p class="wp-block-paragraph">1️⃣ <strong>상권 이용의 현실적 정보: </strong>역 주변은 아직 개발이 덜 된 마을이라 역 근처에서 식당이나 편의점을 찾기가 매우 어렵습니다. &#8220;역 앞에 내리면 뭐라도 있겠지&#8221;라는 생각으로 오시면 당황하실 수 있으니, 필요한 간식이나 생필품은 기차에 오르기 전 미리 챙기시는 것이 좋습니다. 식사는 해수욕장 인근의 횟집이나 식당으로 이동해야 하므로 미리 계획을 짜두시는게 좋습니다.<br><br>2️⃣ <strong>해파랑길 25코스</strong>: 역을 거점으로 걷는 해파랑길 25코스는 울진 바다의 진면목을 보여줍니다. 기차역에서 시작해 해안선을 따라 걷다 보면 끝없이 이어지는 수평선과 마주하게 되며, 인위적인 꾸밈이 없는 어촌의 소박한 풍경을 감상할 수 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>기성역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">기성<br>↓<br>북울산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1802호</span><div class="time-display">13:29</div><div class="arrival-info">15:26 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">19:25</div><div class="arrival-info">21:26 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">기성<br>↓<br>태화강</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1802호</span><div class="time-display">13:29</div><div class="arrival-info">15:34 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">19:25</div><div class="arrival-info">21:34 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">기성<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1802호</span><div class="time-display">13:29</div><div class="arrival-info">16:32 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">19:25</div><div class="arrival-info">22:33 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">기성<br>↓<br>영덕</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1824호</span><div class="time-display">21:55</div><div class="arrival-info">22:25 도착</div></td><td><span class="train-detail">1824호</span><div class="time-display">21:55</div><div class="arrival-info">22:25 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">08:58</div><div class="arrival-info">09:40 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">14:49</div><div class="arrival-info">15:25 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">기성<br>↓<br>포항</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1824호</span><div class="time-display">21:55</div><div class="arrival-info">22:53 도착</div></td><td><span class="train-detail">1824호</span><div class="time-display">21:55</div><div class="arrival-info">22:53 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">08:58</div><div class="arrival-info">10:17 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">14:49</div><div class="arrival-info">15:59 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">기성<br>↓<br>동대구</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1824호</span><div class="time-display">21:55</div><div class="arrival-info">00:04 도착</div></td><td><span class="train-detail">1824호</span><div class="time-display">21:55</div><div class="arrival-info">00:04 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">08:58</div><div class="arrival-info">11:36 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">14:49</div><div class="arrival-info">17:18 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">기성<br>↓<br>울진</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1801호</span><div class="time-display">08:19</div><div class="arrival-info">08:38 도착</div></td><td><span class="train-detail">1807호</span><div class="time-display">18:49</div><div class="arrival-info">19:07 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">08:57</div><div class="arrival-info">09:13 도착</div></td><td><span class="train-detail">1865호</span><div class="time-display">21:18</div><div class="arrival-info">21:37 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">기성<br>↓<br>동해</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1801호</span><div class="time-display">08:19</div><div class="arrival-info">09:35 도착</div></td><td><span class="train-detail">1807호</span><div class="time-display">18:49</div><div class="arrival-info">20:08 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">08:57</div><div class="arrival-info">10:24 도착</div></td><td><span class="train-detail">1865호</span><div class="time-display">21:18</div><div class="arrival-info">22:29 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">기성<br>↓<br>강릉</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">08:57</div><div class="arrival-info">11:12 도착</div></td><td><span class="train-detail">1865호</span><div class="time-display">21:18</div><div class="arrival-info">23:13 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>기성</strong>역 ITX-마음 누리로 요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>운임</th></tr></thead><tbody><tr><td>동해2</td><td>무궁화</td><td class="highlight">기성</td><td class="highlight">서경주</td><td>7,000</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">기성</td><td class="highlight">서경주</td><td>10,500</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">기성</td><td class="highlight">서경주</td><td>10,500</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">기성</td><td class="highlight">동대구</td><td>12,500</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">기성</td><td class="highlight">동대구</td><td>16,900</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">강릉</td><td class="highlight">기성</td><td>8,800</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">기성</td><td>13,100</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">기성</td><td>13,100</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">동해</td><td class="highlight">기성</td><td>5,900</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">기성</td><td>8,800</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">기성</td><td>8,800</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">울진</td><td class="highlight">기성</td><td>4,800</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">울진</td><td class="highlight">기성</td><td>4,800</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">울진</td><td class="highlight">기성</td><td>2,600</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">기성</td><td class="highlight">태화강</td><td>15,800</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">기성</td><td class="highlight">북울산</td><td>14,800</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">기성</td><td class="highlight">부전</td><td>21,800</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong><strong>기성</strong>역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <s>기성역 KTX 노선 없음</s><br>✅ <s><s>기성</s>역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ea%b8%b0%ec%84%b1%ec%97%ad-itx-%eb%a7%88%ec%9d%8c%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ec%9a%b8%ec%a7%84%eb%b9%84%ed%96%89%ed%9b%88%eb%a0%a8%ec%9b%90/">기성역 ITX-마음·누리로 시간표</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>기성역 <strong>ITX-마음 누리로</strong> 시간표</strong></h2>



<h3 class="wp-block-heading">출발 : 기성 → 도착 : 동대구</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>기성</th><th>평해</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>강구</th><th>장사</th><th>월포</th><th>포항</th><th>안강</th><th>서경주</th><th>아화</th><th>영천</th><th>하양</th><th>동대구</th><th>비 고</th></tr></thead><tbody><tr><td>1852</td><td>누리로</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>월화수목금</td></tr><tr><td>1862</td><td>누리로</td><td>08:58</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>토일</td></tr><tr><td>1866</td><td>누리로</td><td>14:49</td><td></td><td>15:01</td><td>15:09</td><td></td><td>15:25</td><td></td><td>15:39</td><td>15:47</td><td>15:59</td><td>16:13</td><td>16:23</td><td>16:41</td><td>16:52</td><td>17:02</td><td>17:18</td><td></td></tr><tr><td>1824</td><td>ITX-마음</td><td>21:55</td><td></td><td></td><td></td><td></td><td>22:25</td><td></td><td></td><td>22:42</td><td>22:53</td><td></td><td>23:13</td><td></td><td>23:38</td><td>23:48</td><td>00:04</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 기성 → 도착 : 동해·강릉</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>기성</th><th>매화</th><th>울진</th><th>죽변</th><th>흥부</th><th>옥원</th><th>임원</th><th>근덕</th><th>삼척</th><th>삼척해변</th><th>추암</th><th>동해</th><th>묵호</th><th>정동진</th><th>강릉</th><th>비 고</th></tr></thead><tbody><tr><td>1851</td><td>누리로</td><td>08:57</td><td></td><td>09:13</td><td>09:20</td><td>09:27</td><td>09:36</td><td>09:42</td><td></td><td>10:01</td><td></td><td></td><td>10:24</td><td>10:33</td><td>10:55</td><td>11:12</td><td>월화수목금</td></tr><tr><td>1861</td><td>누리로</td><td>08:57</td><td></td><td>09:13</td><td>09:20</td><td>09:27</td><td>09:36</td><td>09:42</td><td></td><td>10:01</td><td>10:09</td><td>10:13</td><td>10:24</td><td>10:33</td><td>10:55</td><td>11:12</td><td>토일</td></tr><tr><td>1853</td><td>누리로</td><td>14:50</td><td>15:00</td><td>15:10</td><td></td><td>15:20</td><td>15:30</td><td></td><td>15:41</td><td>15:55</td><td></td><td></td><td>16:16</td><td>16:24</td><td>16:45</td><td>17:00</td><td>월화수목금</td></tr><tr><td>1863</td><td>누리로</td><td>14:50</td><td>15:00</td><td>15:10</td><td></td><td>15:20</td><td>15:30</td><td></td><td>15:41</td><td>15:55</td><td>16:03</td><td>16:07</td><td>16:16</td><td>16:24</td><td>16:45</td><td>17:00</td><td>토일</td></tr><tr><td>1865</td><td>누리로</td><td>21:18</td><td>21:28</td><td>21:37</td><td></td><td></td><td></td><td></td><td></td><td>22:12</td><td></td><td></td><td>22:29</td><td>22:37</td><td>22:58</td><td>23:13</td><td></td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>기성</th><th>매화</th><th>울진</th><th>죽변</th><th>흥부</th><th>근덕</th><th>삼척</th><th>동해</th></tr></thead><tbody><tr><td>1801</td><td>ITX-마음</td><td>08:19</td><td>08:28</td><td>08:38</td><td>08:45</td><td>08:52</td><td></td><td>09:19</td><td>09:35</td></tr><tr><td>1805</td><td>ITX-마음</td><td>14:07</td><td></td><td>14:26</td><td>14:34</td><td></td><td></td><td>15:03</td><td>15:19</td></tr><tr><td>1807</td><td>ITX-마음</td><td>18:49</td><td></td><td>19:07</td><td></td><td>19:19</td><td>19:42</td><td>19:52</td><td>20:08</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 기성 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>기성</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>월포</th><th>포항</th><th>서경주</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th><th>비 고</th></tr></thead><tbody><tr><td>1802</td><td>ITX-마음</td><td>13:29</td><td></td><td>13:47</td><td>13:55</td><td>14:06</td><td></td><td>14:32</td><td>14:53</td><td>15:07</td><td>15:26</td><td>15:34</td><td></td><td>16:07</td><td>16:17</td><td></td><td>16:32</td><td></td></tr><tr><td>1814</td><td>ITX-마음</td><td>18:50</td><td>19:02</td><td>19:11</td><td></td><td>19:27</td><td></td><td>19:52</td><td>20:13</td><td>20:26</td><td>20:46</td><td>20:54</td><td>21:10</td><td>21:31</td><td>21:42</td><td>21:50</td><td>22:00</td><td>월화수목금</td></tr><tr><td>1804</td><td>ITX-마음</td><td>18:50</td><td>19:02</td><td>19:11</td><td></td><td>19:27</td><td></td><td>19:52</td><td>20:13</td><td>20:26</td><td>20:46</td><td>20:54</td><td>21:10</td><td>21:31</td><td>21:42</td><td>21:50</td><td>22:00</td><td>토일</td></tr><tr><td>1806</td><td>ITX-마음</td><td>19:25</td><td>19:38</td><td>19:47</td><td>19:55</td><td>20:06</td><td>20:23</td><td>20:34</td><td>20:54</td><td>21:07</td><td>21:26</td><td>21:34</td><td></td><td>22:02</td><td>22:18</td><td></td><td>22:33</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>기성역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '기성'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">기성역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">기성역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '';
            let curName = '기성';
            let altCity = '';
            let altName = '정차';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">기성역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">16℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">기성역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EA%B8%B0%EC%84%B1%EC%97%AD+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9A%B8%EC%A7%84%EA%B5%B0+%EA%B8%B0%EC%84%B1%EB%A9%B4+%EC%B2%99%EC%82%B0%EB%A6%AC+203-1+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">기성역</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">한식&gt;비빔밥</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 울진군 기성면 척산리 203-1 1층</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">기성역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">기성역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 기성역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%EA%B8%B0%EC%84%B1%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/02/기성역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="기성역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-18359" srcset="https://krailroad.co.kr/wp-content/uploads/2026/02/기성역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/02/기성역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/02/기성역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>평해역 기차 시간표 백암온천·월송정 나들이용 ITX-마음 누리로 요금 및 정차역</title>
		<link>https://krailroad.co.kr/%ed%8f%89%ed%95%b4%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%b1%ec%95%94%ec%98%a8%ec%b2%9c%c2%b7%ec%9b%94%ec%86%a1%ec%a0%95-%eb%82%98%eb%93%a4%ec%9d%b4%ec%9a%a9-itx-%eb%a7%88/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Sat, 07 Feb 2026 01:57:05 +0000</pubDate>
				<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[평해역 누리로 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=18265</guid>

					<description><![CDATA[평해역 기차를 이용해 역사에 도착하면, 맑은 공기와 함께 울진이 자랑하는 백암온천의 기운이 느껴지는 듯하며, 이곳은 관동팔경 중 으뜸인 월송정을 품고 있어 예부터 많은 이들이 쉬어가던 유서 깊은 곳입니다. 평해역 ITX-마음·누리로 시간표를 확인하며 계획을 세우면, 바쁜 일상에서 벗어나 몸과 마음을 동시에 치유하는 시간을 보낼 수 있습니다. 아래 자료를 보다 보면 &#8220;어? 아까 본 내용이랑 똑같네?&#8221;라고 생각하실 ... <a title="평해역 기차 시간표 백암온천·월송정 나들이용 ITX-마음 누리로 요금 및 정차역" class="read-more button" href="https://krailroad.co.kr/%ed%8f%89%ed%95%b4%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%b1%ec%95%94%ec%98%a8%ec%b2%9c%c2%b7%ec%9b%94%ec%86%a1%ec%a0%95-%eb%82%98%eb%93%a4%ec%9d%b4%ec%9a%a9-itx-%eb%a7%88/" aria-label="평해역 기차 시간표 백암온천·월송정 나들이용 ITX-마음 누리로 요금 및 정차역 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">평해역 기차를 이용해 역사에 도착하면, 맑은 공기와 함께 울진이 자랑하는 백암온천의 기운이 느껴지는 듯하며, 이곳은 관동팔경 중 으뜸인 월송정을 품고 있어 예부터 많은 이들이 쉬어가던 유서 깊은 곳입니다. 평해역 ITX-마음·누리로 시간표를 확인하며 계획을 세우면, 바쁜 일상에서 벗어나 몸과 마음을 동시에 치유하는 시간을 보낼 수 있습니다.</p>



<p class="wp-block-paragraph">아래 자료를 보다 보면 &#8220;어? 아까 본 내용이랑 똑같네?&#8221;라고 생각하실 수 있으나, 동해선은 역별 정보가 흡사한 경우가 많으니 중복 데이터로 오해하지 마시고, 역별 간격도 가까워 시간표 차이가 크게 없고, 노선도 많지않아 그렇습니다. 아래 시간표, 요금, 정차역, API 평해역 날씨등은 신뢰할 수 있는 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a> 공식자료와 실시간 데이터 연동이니 믿으셔도 됩니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>평해</strong>역 ITX-마음·누리로 이용 안내</strong></h2>



<h3 class="wp-block-heading"><strong>평해역 기차와 온천 여행</strong></h3>



<p class="wp-block-paragraph">1️⃣ <strong>기차 타고 떠나는 백암온천 여행</strong>: 평해역 기차를 이용하면 국내 온천 여행의 최고지로 꼽히는 백암온천으로 빠르게 갈 수 있습니다. 역에서 내려 버스나 택시로 조금만 이동하면 수질 좋기로 유명한 온천 단지에 닿게 되는데, 뜨끈한 물에 몸을 담그면 여행의 피로가 눈 녹듯 사라지며 부모님과 함께하는 효도 여행이나 아이 동반 가족 여행지로도 손색이 없습니다.<br><br>2️⃣ <strong>ITX-마음 노선과 요금의 미래 동향</strong>: 현재 평해역 ITX-마음 노선은 부전 방향이 주를 이루고 있지만, 향후 동해선 전 구간이 정비되면 더 다양한 지역과 연결될 것으로 보입니다. 특히 요금표에 동대구-평해 구간이 미리 편성되어 있는 것을 보면 조만간 노선이 확대될 가능성이 매우 높으며, 기차 여행을 선호하는 분들을 위해 ITX-마음 요금과 운행 구간을 미리 정리해 두었으니 참고하시면 좋을듯합니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading"><strong>평해역 기차와 월송정 그리고 시장</strong></h3>



<p class="wp-block-paragraph">1️⃣ <strong>월송정의 풍경과 해파랑길 24코스</strong>: 관동팔경 중에서도 최고라는 찬사를 받는 월송정은 평해역에서 꼭 들러야 할 명소입니다. 소나무 숲 사이로 보이는 푸른 바다는 한 폭의 그림 같으며, 트레킹을 즐긴다면 해파랑길 24코스를 따라 걸으며 울진의 자연을 오롯이 느껴보는 것도 추천합니다. 특히 평해역 기차를 이용해 가족여행을 즐기기에는 여름철 월송정 인근의 해수욕장에서 조용하게 파도를 즐기기에도 아주 좋습니다.<br><br>2️⃣ <strong>평해 전통시장과 소박한 여행의 재미</strong>: 평해역 근처의 평해 전통시장은 모든 시골마을 장터가 그렇치만 작지만 알찬 시골 장터의 매력을 간직하고 있습니다. 장날에 맞춰 방문하면 산지 직송된 신선한 재료들을 구경하는 재미가 쏠쏠하며, 많치는 않지만 평해만의 맛깔스러운 현지 음식을 맛보며 여행을 즐기는 것도 추천해드립니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>평해역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">평해<br>↓<br>포항</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">09:06</div><div class="arrival-info">10:17 도착</div></td><td><span class="train-detail">1862호</span><div class="time-display">09:06</div><div class="arrival-info">10:17 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">평해<br>↓<br>동대구</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">09:06</div><div class="arrival-info">11:36 도착</div></td><td><span class="train-detail">1862호</span><div class="time-display">09:06</div><div class="arrival-info">11:36 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">평해<br>↓<br>울진</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1803호</span><div class="time-display">12:49</div><div class="arrival-info">13:15 도착</div></td><td><span class="train-detail">1803호</span><div class="time-display">12:49</div><div class="arrival-info">13:15 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">08:49</div><div class="arrival-info">09:13 도착</div></td><td><span class="train-detail">1865호</span><div class="time-display">21:10</div><div class="arrival-info">21:37 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">평해<br>↓<br>동해</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1803호</span><div class="time-display">12:49</div><div class="arrival-info">14:15 도착</div></td><td><span class="train-detail">1803호</span><div class="time-display">12:49</div><div class="arrival-info">14:15 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">08:49</div><div class="arrival-info">10:24 도착</div></td><td><span class="train-detail">1865호</span><div class="time-display">21:10</div><div class="arrival-info">22:29 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">평해<br>↓<br>강릉</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">08:49</div><div class="arrival-info">11:12 도착</div></td><td><span class="train-detail">1865호</span><div class="time-display">21:10</div><div class="arrival-info">23:13 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>평해</strong>역 ITX-마음 누리로 요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>운임</th></tr></thead><tbody><tr><td>동해2</td><td>무궁화</td><td class="highlight">평해</td><td class="highlight">서경주</td><td>6,500</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">평해</td><td class="highlight">서경주</td><td>9,800</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">평해</td><td class="highlight">서경주</td><td>9,800</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">평해</td><td class="highlight">동대구</td><td>12,000</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">평해</td><td class="highlight">동대구</td><td>16,200</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">강릉</td><td class="highlight">평해</td><td>9,300</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">평해</td><td>13,800</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">평해</td><td>13,800</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">동해</td><td class="highlight">평해</td><td>6,400</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">평해</td><td>9,500</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">평해</td><td>9,500</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">울진</td><td class="highlight">평해</td><td>4,800</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">울진</td><td class="highlight">평해</td><td>4,800</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">울진</td><td class="highlight">평해</td><td>2,600</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">평해</td><td class="highlight">태화강</td><td>15,000</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">평해</td><td class="highlight">북울산</td><td>14,100</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">평해</td><td class="highlight">부전</td><td>21,100</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong><strong>평해</strong>역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <s>평해역 KTX 노선 없음</s><br>✅ <s><s>평해</s>역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ed%8f%89%ed%95%b4%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%b1%ec%95%94%ec%98%a8%ec%b2%9c%c2%b7%ec%9b%94%ec%86%a1%ec%a0%95-%eb%82%98%eb%93%a4%ec%9d%b4%ec%9a%a9-itx-%eb%a7%88/">평해역 ITX-마음·누리로 시간표</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>평해역 <strong>ITX-마음 누리로</strong> 시간표</strong></h2>



<h3 class="wp-block-heading">출발 : 평해 → 도착 : 동대구</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>평해</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>강구</th><th>장사</th><th>월포</th><th>포항</th><th>안강</th><th>서경주</th><th>아화</th><th>영천</th><th>하양</th><th>동대구</th><th>비 고</th></tr></thead><tbody><tr><td>1852</td><td>누리로</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>월화수목금</td></tr><tr><td>1862</td><td>누리로</td><td>09:06</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>토일</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 평해 → 도착 : 동해·강릉</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>평해</th><th>기성</th><th>매화</th><th>울진</th><th>죽변</th><th>흥부</th><th>옥원</th><th>임원</th><th>근덕</th><th>삼척</th><th>삼척해변</th><th>추암</th><th>동해</th><th>묵호</th><th>정동진</th><th>강릉</th><th>비 고</th></tr></thead><tbody><tr><td>1851</td><td>누리로</td><td>08:49</td><td>08:57</td><td></td><td>09:13</td><td>09:20</td><td>09:27</td><td>09:36</td><td>09:42</td><td></td><td>10:01</td><td></td><td></td><td>10:24</td><td>10:33</td><td>10:55</td><td>11:12</td><td>월화수목금</td></tr><tr><td>1861</td><td>누리로</td><td>08:49</td><td>08:57</td><td></td><td>09:13</td><td>09:20</td><td>09:27</td><td>09:36</td><td>09:42</td><td></td><td>10:01</td><td>10:09</td><td>10:13</td><td>10:24</td><td>10:33</td><td>10:55</td><td>11:12</td><td>토일</td></tr><tr><td>1853</td><td>누리로</td><td>14:42</td><td>14:50</td><td>15:00</td><td>15:10</td><td></td><td>15:20</td><td>15:30</td><td></td><td>15:41</td><td>15:55</td><td></td><td></td><td>16:16</td><td>16:24</td><td>16:45</td><td>17:00</td><td>월화수목금</td></tr><tr><td>1863</td><td>누리로</td><td>14:42</td><td>14:50</td><td>15:00</td><td>15:10</td><td></td><td>15:20</td><td>15:30</td><td></td><td>15:41</td><td>15:55</td><td>16:03</td><td>16:07</td><td>16:16</td><td>16:24</td><td>16:45</td><td>17:00</td><td>토일</td></tr><tr><td>1865</td><td>누리로</td><td>21:10</td><td>21:18</td><td>21:28</td><td>21:37</td><td></td><td></td><td></td><td></td><td></td><td>22:12</td><td></td><td></td><td>22:29</td><td>22:37</td><td>22:58</td><td>23:13</td><td></td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>평해</th><th>매화</th><th>울진</th><th>죽변</th><th>흥부</th><th>근덕</th><th>삼척</th><th>동해</th></tr></thead><tbody><tr><td>1803</td><td>ITX-마음</td><td>12:49</td><td>13:03</td><td>13:15</td><td>13:21</td><td>13:29</td><td>13:47</td><td>13:58</td><td>14:15</td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>평해역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '평해'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">평해역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">평해역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '5340158';
            let curName = '평해';
            let altCity = '';
            let altName = '정차';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">평해역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">16℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">평해역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%9B%84%ED%8F%AC%EB%A6%AC%EB%8C%80%EA%B2%8C+%EB%8C%80%EA%B4%91%EC%88%98%EC%82%B0+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9A%B8%EC%A7%84%EA%B5%B0+%ED%8F%89%ED%95%B4%EC%9D%8D+%EA%B1%B0%EC%9D%BC%EB%A6%AC+104+2%EC%B8%B5+%EB%8C%80%EA%B4%91%EC%88%98%EC%82%B0" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">후포리대게 대광수산</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">해물,생선요리&gt;대게요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 울진군 평해읍 거일리 104 2층 대광수산</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%9B%94%EC%86%A1%EC%A0%95+%EB%85%B8%EB%B0%94+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9A%B8%EC%A7%84%EA%B5%B0+%ED%8F%89%ED%95%B4%EC%9D%8D+%EC%9B%94%EC%86%A1%EB%A6%AC+401+%EB%85%B8%EB%B0%94" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">월송정 노바</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">카페,디저트&gt;카페</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 울진군 평해읍 월송리 401 노바</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%A7%8C%EC%9B%94%EA%B2%BD%EC%96%91%EC%8B%9D+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9A%B8%EC%A7%84%EA%B5%B0+%ED%8F%89%ED%95%B4%EC%9D%8D+%EC%9B%94%EC%86%A1%EB%A6%AC+487-3" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">만월경양식</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;양식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 울진군 평해읍 월송리 487-3</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%B0%B1%EC%95%94%EA%B3%A8%EA%B0%80%EB%A7%88%EC%86%A5%EA%B5%AD%EB%B0%A5+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9A%B8%EC%A7%84%EA%B5%B0+%ED%8F%89%ED%95%B4%EC%9D%8D+%ED%8F%89%ED%95%B4%EB%A6%AC+813-4" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">백암골가마솥국밥</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">음식점&gt;한식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 울진군 평해읍 평해리 813-4</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%A0%95%EB%B6%84%EC%8B%9D+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9A%B8%EC%A7%84%EA%B5%B0+%ED%8F%89%ED%95%B4%EC%9D%8D+%ED%8F%89%ED%95%B4%EB%A6%AC+873-1" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">정분식</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">분식&gt;종합분식</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 울진군 평해읍 평해리 873-1</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">평해역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">평해역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 평해역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%ED%8F%89%ED%95%B4%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/02/평해역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="평해역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-18276" srcset="https://krailroad.co.kr/wp-content/uploads/2026/02/평해역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/02/평해역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/02/평해역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>후포역 기차 시간표 등기산 스카이워크·출렁다리 나들이용 ITX-마음·누리로 요금·정차역</title>
		<link>https://krailroad.co.kr/%ed%9b%84%ed%8f%ac%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%93%b1%ea%b8%b0%ec%82%b0-%ec%8a%a4%ec%b9%b4%ec%9d%b4%ec%9b%8c%ed%81%ac%c2%b7%ec%b6%9c%eb%a0%81%eb%8b%a4%eb%a6%ac-%eb%82%98/</link>
		
		<dc:creator><![CDATA[운영자]]></dc:creator>
		<pubDate>Thu, 05 Feb 2026 06:20:03 +0000</pubDate>
				<category><![CDATA[ITX 시간표]]></category>
		<category><![CDATA[누리로 시간표]]></category>
		<category><![CDATA[후포역 ITX-마음 시간표]]></category>
		<category><![CDATA[후포역 누리로 시간표]]></category>
		<guid isPermaLink="false">https://krailroad.co.kr/?p=18241</guid>

					<description><![CDATA[후포역 기차를 이용한 ITX-마음이나 누리로 시간표를 확인하고 기차를 타면, 코끝을 스치는 짭조름한 바다 냄새가 후포와 울릉도로 향하는 여행의 즐거움을 더해줍니다. 후포역은 붉은 대게의 고향답게 입구에서부터 활기찬 어촌 에너지가 느껴지며, 동해안을 배경으로 가족들과 시간을 보내기에도 참 괜찮은 곳이죠. 아래 정리해 드린 정보가 혹시 잘못된 건 아닐까 걱정하실 수도 있겠으나, 동해선 열차들이 분 단위로 촘촘하게 운행되다 보니 ... <a title="후포역 기차 시간표 등기산 스카이워크·출렁다리 나들이용 ITX-마음·누리로 요금·정차역" class="read-more button" href="https://krailroad.co.kr/%ed%9b%84%ed%8f%ac%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%93%b1%ea%b8%b0%ec%82%b0-%ec%8a%a4%ec%b9%b4%ec%9d%b4%ec%9b%8c%ed%81%ac%c2%b7%ec%b6%9c%eb%a0%81%eb%8b%a4%eb%a6%ac-%eb%82%98/" aria-label="후포역 기차 시간표 등기산 스카이워크·출렁다리 나들이용 ITX-마음·누리로 요금·정차역 전체 읽기">자세히 보기</a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">후포역 기차를 이용한 ITX-마음이나 누리로 시간표를 확인하고 기차를 타면, 코끝을 스치는 짭조름한 바다 냄새가 후포와 울릉도로 향하는 여행의 즐거움을 더해줍니다. 후포역은 붉은 대게의 고향답게 입구에서부터 활기찬 어촌 에너지가 느껴지며, 동해안을 배경으로 가족들과 시간을 보내기에도 참 괜찮은 곳이죠.</p>



<p class="wp-block-paragraph">아래 정리해 드린 정보가 혹시 잘못된 건 아닐까 걱정하실 수도 있겠으나, 동해선 열차들이 분 단위로 촘촘하게 운행되다 보니 자칫 비슷비슷한 내용처럼 보일 뿐입니다. 하지만 이는 제가 직접 <a href="https://www.korail.com/ticket/main" target="_blank" rel="noopener">코레일</a> 공식 사이트와 공공데이터를 기반으로 시스템을 구축해 하나하나 저장하고 불러오는 자료이므로 안심하고 확인하셔도 됩니다. 후포역 기차를 이용하는 분들에게 이 정보가 유용한 자료로 도움이 되었으면합니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>후포</strong>역 ITX-마음·누리로 이용 안내</strong></h2>



<h3 class="wp-block-heading"><strong>후포역 기차와 울릉도 배편 여행</strong></h3>



<p class="wp-block-paragraph">기차 여행과 섬 여행을 동시에 즐기고 싶다면 후포역 기차를 이용하시는게 좋습니다. 왜냐하면 역에서 내려 택시로 5분 정도만 달리면 후포항 여객선터미널에 도착하는데, 여기서 출발하는 울릉도행 크루즈는 동해안 노선 중에서도 소요 시간이 짧고 배가 커서 멀미 걱정이 적다는 큰 장점이 있습니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading"><strong>백년손님 남서방 마을과 벽화 거리</strong></h3>



<p class="wp-block-paragraph">후포역 기차를 이용해 도착하면 역사에서 멀지 않은 곳에 TV 속 그 장소, 백년손님 남서방 마을이 있습니다. 골목마다 정겨운 벽화가 그려져 있어 아이들과 숨은 그림 찾듯 사진 찍으며 걷기에 좋고, 마을 어르신들의 넉살 좋은 웃음 덕분에 여행의 재미가 배가 됩니다. 인위적인 관광지 느낌보다는 사람 냄새 나는 어촌의 일상을 엿볼 수 있어 마음이 편안해지는 곳입니다.</p>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">아이와 함께 즐기는 후포의 푸른 절경</h3>



<p class="wp-block-paragraph">1️⃣ <strong>등기산 스카이워크와 갓바위 산책</strong>: 발밑으로 투명한 바다가 펼쳐지는 등기산 스카이워크는 후포 여행의 필수 코스입니다. 처음엔 조금 아찔하지만, 끝자락에서 마주하는 동해의 수평선은 가슴을 뻥 뚫리게 해주며, 근처에 있는 후포 갓바위까지 천천히 걷다 보면 왜 이곳이 가족 여행지로 인기 있는지 금방 알게 됩니다.</p>



<p class="wp-block-paragraph">2️⃣ <strong>후포 붉은 대게와 홍게의 맛</strong>: 후포까지 왔는데 대게를 빼놓을 수 없죠. 후포역 인근 식당가에서는 제철을 맞은 붉은 대게와 홍게를 합리적인 가격에 맛볼 수 있으며, 갓 쪄낸 대게 다리 살을 발라 아이들 입에 넣어주다 보면, 기차 타고 오길 참 잘했다는 생각이 절로 들겁니다.</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>후포역 첫차 &amp; 막차 운행 정보</strong></h2>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">후포<br>↓<br>포항</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">09:13</div><div class="arrival-info">10:17 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">15:01</div><div class="arrival-info">15:59 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">후포<br>↓<br>동대구</td><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1852호</span><div class="time-display">09:13</div><div class="arrival-info">11:36 도착</div></td><td><span class="train-detail">1866호</span><div class="time-display">15:01</div><div class="arrival-info">17:18 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">후포<br>↓<br>울진</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1801호</span><div class="time-display">08:07</div><div class="arrival-info">08:38 도착</div></td><td><span class="train-detail">1807호</span><div class="time-display">18:35</div><div class="arrival-info">19:07 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">08:42</div><div class="arrival-info">09:13 도착</div></td><td><span class="train-detail">1865호</span><div class="time-display">21:03</div><div class="arrival-info">21:37 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">후포<br>↓<br>동해</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1801호</span><div class="time-display">08:07</div><div class="arrival-info">09:35 도착</div></td><td><span class="train-detail">1807호</span><div class="time-display">18:35</div><div class="arrival-info">20:08 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">08:42</div><div class="arrival-info">10:24 도착</div></td><td><span class="train-detail">1865호</span><div class="time-display">21:03</div><div class="arrival-info">22:29 도착</div></td></tr><tr><td class="route-info" rowspan="2" style="border-top:1px solid #ddd;">후포<br>↓<br>강릉</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1821호</span><div class="time-display">17:22</div><div class="arrival-info">19:27 도착</div></td><td><span class="train-detail">1831호</span><div class="time-display">17:22</div><div class="arrival-info">19:27 도착</div></td></tr><tr><td><span class="type-label type-mu">누리로</span></td><td><span class="train-detail">1851호</span><div class="time-display">08:42</div><div class="arrival-info">11:12 도착</div></td><td><span class="train-detail">1865호</span><div class="time-display">21:03</div><div class="arrival-info">23:13 도착</div></td></tr></tbody></table></div>


<style>
        .ktx-sum-container { margin: 15px 0; font-family: -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif; }
        .ktx-sum-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #ddd; table-layout: fixed; }
        .ktx-date-info { text-align: right; font-size: 12px; color: #777; margin-bottom: 5px; font-weight: 500; }
        .ktx-sum-table th { background:#f1f3f5; color:#333; font-size:16px; font-weight:800; padding:12px 4px; border-bottom:2px solid #dee2e6; }
        .ktx-sum-table td { padding:14px 4px; border-bottom:1px solid #eee; text-align:center; vertical-align:middle; }
        .route-info { background:#fcfcfc; font-weight:400; color:#000; font-size:15px; border-right:1px solid #ddd; line-height:1.3; }
        .type-label { display:inline-block; padding:3px 8px; border-radius:4px; font-size:12px; font-weight:700; color:#fff; margin-bottom:4px; }
        .type-ktx { background:#1e40af; } 
        .type-itx { background:#be123c; } 
        .type-mu { background:#047857; }
        .type-default { background:#52525b; }
        .time-display { font-size:18px; font-weight:800; color:#000; letter-spacing:-0.5px; line-height:1; }
        .train-detail { display:block; font-size:12px; color:#444; font-weight:600; margin-bottom:3px; }
        .arrival-info { font-size:12px; color:#555; font-weight:500; margin-top:3px; }
        @media (max-width: 380px) {
            .time-display { font-size: 16px; }
            .route-info { font-size: 13px; }
            .ktx-sum-table th { font-size: 13px; }
            .train-detail, .arrival-info { font-size: 11px; }
        }
    </style><p class="ktx-date-info" style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-sum-container"><table class="ktx-sum-table"><thead><tr><th style="width:22%;">구간</th><th style="width:23%;">종별</th><th>첫차</th><th>막차</th></tr></thead><tbody><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">후포<br>↓<br>태화강</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1822호</span><div class="time-display">07:48</div><div class="arrival-info">09:39 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">19:38</div><div class="arrival-info">21:34 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">후포<br>↓<br>북울산</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1822호</span><div class="time-display">07:48</div><div class="arrival-info">09:31 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">19:38</div><div class="arrival-info">21:26 도착</div></td></tr><tr><td class="route-info" rowspan="1" style="border-top:1px solid #ddd;">후포<br>↓<br>부전</td><td><span class="type-label type-itx">ITX-마음</span></td><td><span class="train-detail">1822호</span><div class="time-display">07:48</div><div class="arrival-info">10:49 도착</div></td><td><span class="train-detail">1806호</span><div class="time-display">19:38</div><div class="arrival-info">22:33 도착</div></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong><strong>후포</strong>역 ITX-마음 누리로 요금표</strong></h2>



<p class="wp-block-paragraph">👈 <strong><mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 스크롤하여 요금 확인</strong></mark></strong><br>💳 <a href="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/" data-type="link" data-id="https://krailroad.co.kr/ktx-%EC%A0%84-%EB%85%B8%EC%84%A0-%EC%9A%94%EA%B8%88%ED%91%9C-%ED%95%9C%EB%88%88%EC%97%90-%EB%B3%B4%EA%B8%B0/">KTX 전체 요금표 한눈에 보기</a><br>🔎 <strong><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 요금 검색 바로가기</mark></a></strong></p>


<p style="text-align: right; font-size: small; color: #777; margin: 0;">최신 요금표 기준: 2026년 05월 24일</p><p style="text-align: right; font-size: small; color: #777; margin: 0;">(요금이 동일한 열차는 [무궁화·ITX·KTX] 3종으로 단순화)</p><div style="margin-top: 30px;"><div style="max-width: 100%; overflow-x: auto; margin: 20px 0;"><table class="train-table"><thead><tr><th>노선</th><th>종별</th><th>출발</th><th>도착</th><th>운임</th></tr></thead><tbody><tr><td>동해2</td><td>무궁화</td><td class="highlight">후포</td><td class="highlight">서경주</td><td>6,200</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">후포</td><td class="highlight">서경주</td><td>9,300</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">후포</td><td class="highlight">서경주</td><td>9,300</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">후포</td><td class="highlight">동대구</td><td>11,700</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">후포</td><td class="highlight">동대구</td><td>15,700</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">강릉</td><td class="highlight">후포</td><td>9,600</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">후포</td><td>14,200</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">강릉</td><td class="highlight">후포</td><td>14,200</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">동해</td><td class="highlight">후포</td><td>6,700</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">후포</td><td>10,000</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">동해</td><td class="highlight">후포</td><td>10,000</td></tr><tr><td>동해B</td><td>ITX</td><td class="highlight">울진</td><td class="highlight">후포</td><td>4,800</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">울진</td><td class="highlight">후포</td><td>4,800</td></tr><tr><td>동해2</td><td>무궁화</td><td class="highlight">울진</td><td class="highlight">후포</td><td>2,600</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">후포</td><td class="highlight">태화강</td><td>14,600</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">후포</td><td class="highlight">북울산</td><td>13,600</td></tr><tr><td>동해A</td><td>ITX</td><td class="highlight">후포</td><td class="highlight">부전</td><td>20,700</td></tr></tbody></table></div></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading has-medium-font-size"><strong><strong>후포</strong>역 다른 열차 시간표</strong></h2>



<p class="wp-block-paragraph">✅ <s>후포역 KTX 노선 없음</s><br>✅ <s><s>후포</s>역 SRT 노선 없음</s><br>✅ <a href="https://krailroad.co.kr/%ed%9b%84%ed%8f%ac%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%93%b1%ea%b8%b0%ec%82%b0-%ec%8a%a4%ec%b9%b4%ec%9d%b4%ec%9b%8c%ed%81%ac%c2%b7%ec%b6%9c%eb%a0%81%eb%8b%a4%eb%a6%ac-%eb%82%98/">후포역 ITX-마음·누리로 시간표</a></p>



<p class="has-text-align-center has-text-color has-link-color wp-elements-88704de2ad28f76052113e79b539e929 wp-block-paragraph" style="color:#fe0000"><strong>[ <a href="https://krailroad.co.kr/ktx%c2%b7srt%c2%b7itx%c2%b7%ec%83%88%eb%a7%88%ec%9d%84%ed%98%b8%c2%b7%eb%ac%b4%ea%b6%81%ed%99%94%ed%98%b8%c2%b7%eb%88%84%eb%a6%ac%eb%a1%9c-%ec%97%b4%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%ea%b2%80/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0606" class="has-inline-color">전체 시간표 조회</mark></a> ]</strong> <strong>[ <a href="https://krailroad.co.kr/train-schedule-search/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">실시간 열차 조회</mark></a> ]</strong><br><strong><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color">[ </mark><a href="https://krailroad.co.kr/ktx-srt-itx-money-table/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">전체 요금표 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0a0a" class="has-inline-color"> ] [ </mark><a href="https://krailroad.co.kr/%ec%b6%9c%eb%b0%9c%ec%97%ad%ec%97%90%ec%84%9c-%eb%8f%84%ec%b0%a9%ec%97%ad-%ea%b8%b0%ec%b0%a8-%ec%8b%9c%ea%b0%84%ed%91%9c-%eb%b0%8f-%ec%86%8c%ec%9a%94%ec%8b%9c%ea%b0%84-%ea%b2%80%ec%83%89/"><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">열차 런타임 조회</mark></a><mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> ]</mark></strong></p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><strong>후포역 <strong>ITX-마음 누리로</strong> 시간표</strong></h2>



<h3 class="wp-block-heading">출발 : 후포 → 도착 : 동대구</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>강구</th><th>장사</th><th>월포</th><th>포항</th><th>안강</th><th>서경주</th><th>아화</th><th>영천</th><th>하양</th><th>동대구</th><th>비 고</th></tr></thead><tbody><tr><td>1852</td><td>누리로</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>월화수목금</td></tr><tr><td>1862</td><td>누리로</td><td>09:13</td><td>09:21</td><td>09:29</td><td>09:40</td><td>09:47</td><td>09:53</td><td>10:01</td><td>10:17</td><td>10:30</td><td>10:40</td><td>10:58</td><td>11:10</td><td>11:20</td><td>11:36</td><td>토일</td></tr><tr><td>1854</td><td>누리로</td><td>11:20</td><td>11:33</td><td>11:41</td><td>11:52</td><td>11:59</td><td>12:04</td><td>12:13</td><td>12:26</td><td>12:40</td><td>12:51</td><td>13:08</td><td>13:19</td><td>13:29</td><td>13:45</td><td>월화수목금</td></tr><tr><td>1864</td><td>누리로</td><td>11:20</td><td>11:33</td><td>11:41</td><td>11:52</td><td>11:59</td><td>12:04</td><td>12:13</td><td>12:26</td><td>12:40</td><td>12:51</td><td>13:08</td><td>13:19</td><td>13:29</td><td>13:45</td><td>토일</td></tr><tr><td>1866</td><td>누리로</td><td>15:01</td><td>15:09</td><td></td><td>15:25</td><td></td><td>15:39</td><td>15:47</td><td>15:59</td><td>16:13</td><td>16:23</td><td>16:41</td><td>16:52</td><td>17:02</td><td>17:18</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 후포 → 도착 : 동해·강릉</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>후포</th><th>평해</th><th>기성</th><th>매화</th><th>울진</th><th>죽변</th><th>흥부</th><th>옥원</th><th>임원</th><th>근덕</th><th>삼척</th><th>삼척해변</th><th>추암</th><th>동해</th><th>묵호</th><th>정동진</th><th>강릉</th><th>비 고</th></tr></thead><tbody><tr><td>1851</td><td>누리로</td><td>08:42</td><td>08:49</td><td>08:57</td><td></td><td>09:13</td><td>09:20</td><td>09:27</td><td>09:36</td><td>09:42</td><td></td><td>10:01</td><td></td><td></td><td>10:24</td><td>10:33</td><td>10:55</td><td>11:12</td><td>월화수목금</td></tr><tr><td>1861</td><td>누리로</td><td>08:42</td><td>08:49</td><td>08:57</td><td></td><td>09:13</td><td>09:20</td><td>09:27</td><td>09:36</td><td>09:42</td><td></td><td>10:01</td><td>10:09</td><td>10:13</td><td>10:24</td><td>10:33</td><td>10:55</td><td>11:12</td><td>토일</td></tr><tr><td>1853</td><td>누리로</td><td>14:35</td><td>14:42</td><td>14:50</td><td>15:00</td><td>15:10</td><td></td><td>15:20</td><td>15:30</td><td></td><td>15:41</td><td>15:55</td><td></td><td></td><td>16:16</td><td>16:24</td><td>16:45</td><td>17:00</td><td>월화수목금</td></tr><tr><td>1863</td><td>누리로</td><td>14:35</td><td>14:42</td><td>14:50</td><td>15:00</td><td>15:10</td><td></td><td>15:20</td><td>15:30</td><td></td><td>15:41</td><td>15:55</td><td>16:03</td><td>16:07</td><td>16:16</td><td>16:24</td><td>16:45</td><td>17:00</td><td>토일</td></tr><tr><td>1821</td><td>ITX-마음</td><td>17:22</td><td></td><td></td><td></td><td>17:46</td><td></td><td>17:56</td><td></td><td></td><td></td><td>18:22</td><td></td><td></td><td>18:42</td><td>18:50</td><td>19:12</td><td>19:27</td><td>월화수목금</td></tr><tr><td>1831</td><td>ITX-마음</td><td>17:22</td><td></td><td></td><td></td><td>17:46</td><td></td><td>17:56</td><td></td><td></td><td></td><td>18:22</td><td>18:29</td><td>18:33</td><td>18:42</td><td>18:50</td><td>19:12</td><td>19:27</td><td>토일</td></tr><tr><td>1865</td><td>누리로</td><td>21:03</td><td>21:10</td><td>21:18</td><td>21:28</td><td>21:37</td><td></td><td></td><td></td><td></td><td></td><td>22:12</td><td></td><td></td><td>22:29</td><td>22:37</td><td>22:58</td><td>23:13</td><td></td></tr></tbody></table></div>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>후포</th><th>평해</th><th>기성</th><th>매화</th><th>울진</th><th>죽변</th><th>흥부</th><th>근덕</th><th>삼척</th><th>삼척해변</th><th>추암</th><th>동해</th><th>비 고</th></tr></thead><tbody><tr><td>1801</td><td>ITX-마음</td><td>08:07</td><td></td><td>08:19</td><td>08:28</td><td>08:38</td><td>08:45</td><td>08:52</td><td></td><td>09:19</td><td></td><td></td><td>09:35</td><td></td></tr><tr><td>1803</td><td>ITX-마음</td><td>12:42</td><td>12:49</td><td></td><td>13:03</td><td>13:15</td><td>13:21</td><td>13:29</td><td>13:47</td><td>13:58</td><td></td><td></td><td>14:15</td><td></td></tr><tr><td>1821</td><td>ITX-마음</td><td>17:22</td><td></td><td></td><td></td><td>17:46</td><td></td><td>17:56</td><td></td><td>18:22</td><td></td><td></td><td>18:42</td><td>월화수목금</td></tr><tr><td>1831</td><td>ITX-마음</td><td>17:22</td><td></td><td></td><td></td><td>17:46</td><td></td><td>17:56</td><td></td><td>18:22</td><td>18:29</td><td>18:33</td><td>18:42</td><td>토일</td></tr><tr><td>1807</td><td>ITX-마음</td><td>18:35</td><td></td><td>18:49</td><td></td><td>19:07</td><td></td><td>19:19</td><td>19:42</td><td>19:52</td><td></td><td></td><td>20:08</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">출발 : 후포 → 도착 : 부전</h3>



<p class="tip-box wp-block-paragraph">👉 <mark style="background-color:rgba(0, 0, 0, 0);color:#007bff" class="has-inline-color"><strong>좌우로 밀면 전체 표를 볼 수 있습니다.!</strong></mark><br> ❗ 빈칸은 열차가 정차하지 않는 역입니다.</p>


<style>
            .ktx-schedule-wrapper { overflow-x: auto; position: relative; }
            .ktx-schedule-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 0px 0px 15px rgba(0,0,0,0.1); }
            .ktx-schedule-table th, .ktx-schedule-table td { border: 1px solid #ccc; padding: 8px 5px; text-align: center; white-space: nowrap; background-color: #fff; }
            .ktx-schedule-table th { background-color: #f2f2f2; font-weight: bold; }
            .ktx-schedule-table thead tr th { position: sticky; top: 0; z-index: 10; background-color: #f2f2f2; }
            .ktx-schedule-table td:nth-child(3) { position: sticky; left: 0; z-index: 5; background-color: #fff; border-right: 1px solid #ddd; }
            .ktx-schedule-table th:nth-child(3) { position: sticky; top: 0; left: 0; z-index: 20; background-color: #f2f2f2; border-right: 1px solid #ddd; }
            .scrolled-highlight { background-color: #e6f2ff !important; }
        </style>
            <script>
                document.addEventListener("DOMContentLoaded", function() {
                    const wrappers = document.querySelectorAll(".ktx-schedule-wrapper");
                    wrappers.forEach(wrapper => {
                        wrapper.addEventListener("scroll", function() {
                            const cells = wrapper.querySelectorAll(".ktx-schedule-table th:nth-child(3), .ktx-schedule-table td:nth-child(3)");
                            if (wrapper.scrollLeft > 10) {
                                cells.forEach(cell => { cell.classList.add("scrolled-highlight"); });
                            } else {
                                cells.forEach(cell => { cell.classList.remove("scrolled-highlight"); });
                            }
                        });
                    });
                });
            </script>
        <p style="text-align: right; font-size: small; color: #777;">최신 시간표 기준: 2026년 05월 24일</p><div class="ktx-schedule-wrapper"><table class="ktx-schedule-table"><thead><tr><th>열차번호</th><th>열차종별</th><th>후포</th><th>고래불</th><th>영해</th><th>영덕</th><th>월포</th><th>포항</th><th>서경주</th><th>경주</th><th>북울산</th><th>태화강</th><th>남창</th><th>기장</th><th>신해운대</th><th>센텀</th><th>부전</th><th>비 고</th></tr></thead><tbody><tr><td>1822</td><td>ITX-마음</td><td>07:48</td><td>07:57</td><td></td><td>08:13</td><td></td><td>08:38</td><td>08:58</td><td>09:11</td><td>09:31</td><td>09:39</td><td>10:01</td><td>10:22</td><td>10:32</td><td>10:39</td><td>10:49</td><td></td></tr><tr><td>1814</td><td>ITX-마음</td><td>19:02</td><td>19:11</td><td></td><td>19:27</td><td></td><td>19:52</td><td>20:13</td><td>20:26</td><td>20:46</td><td>20:54</td><td>21:10</td><td>21:31</td><td>21:42</td><td>21:50</td><td>22:00</td><td>월화수목금</td></tr><tr><td>1804</td><td>ITX-마음</td><td>19:02</td><td>19:11</td><td></td><td>19:27</td><td></td><td>19:52</td><td>20:13</td><td>20:26</td><td>20:46</td><td>20:54</td><td>21:10</td><td>21:31</td><td>21:42</td><td>21:50</td><td>22:00</td><td>토일</td></tr><tr><td>1806</td><td>ITX-마음</td><td>19:38</td><td>19:47</td><td>19:55</td><td>20:06</td><td>20:23</td><td>20:34</td><td>20:54</td><td>21:07</td><td>21:26</td><td>21:34</td><td></td><td>22:02</td><td>22:18</td><td></td><td>22:33</td><td></td></tr></tbody></table></div>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 열차 시간표 검색</h2>



<h3 class="wp-block-heading">실시간 시간표 음성 안내 켜기</h3>


<!-- Begin Dable 본문중단_300x250 / For inquiries, visit http://dable.io -->
<div id="dablewidget_GlYqm4xl" data-widget_id="GlYqm4xl">
<script>
      (function(d,a,b,l,e,r) {
if(d[b]&&d[b].q)return;d[b]=function(){(d[b].q=d[b].q||[]).push(arguments)};e=a.createElement(l);
e.async=1;e.charset='utf-8';e.src='//static.dable.io/dist/plugin.min.js';
r=a.getElementsByTagName(l)[0];r.parentNode.insertBefore(e,r);
})(window,document,'dable','script');
      dable('setService', 'krailroad.co.kr');
      dable('sendLogOnce');
      dable('renderWidget', 'dablewidget_GlYqm4xl');
</script>
</div>
<!-- End 본문중단_300x250 / For inquiries, visit http://dable.io -->

    
    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }

        /* 알림 버튼 튀게 수정 (명령 외 기존 CSS 유지) */
        .voice-toggle { 
            background: #ffeb3b; /* 밝은 노란색 */
            border: 2px solid #fbc02d; 
            color: #0045e6; 
            padding: 5px 12px; 
            border-radius: 8px; 
            font-size: 11px; 
            font-weight: 800; 
            cursor: pointer; 
            transition: 0.2s; 
            margin-right: 8px; 
            box-shadow: 0 0 8px rgba(255,235,59,0.5);
            animation: pulse-yellow 1.5s infinite; /* 반짝임 효과 */
        }
        .voice-toggle.active { 
            background: #4caf50; /* 활성 시 초록색 */
            border-color: #388e3c; 
            color: #fff; 
            animation: none; 
            box-shadow: none;
        }
        @keyframes pulse-yellow {
            0% { transform: scale(1); opacity: 1; }
            50% { transform: scale(1.03); opacity: 0.8; box-shadow: 0 0 15px rgba(255,235,59,0.8); }
            100% { transform: scale(1); opacity: 1; }
        }

        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        #train-list-body { transition: opacity 0.4s ease-in-out; min-height: 650px; }
        .refresh-flash { opacity: 0.3; }
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; }
        .bus-table th { font-size: 13px; color: #666; padding: 10px; background: #f8f9fa; border-top: 1px solid #eee; text-align: center; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; }
        .route-num { font-size: 18px; font-weight: 800; color: #0045e6; display: block; margin-bottom: 2px; }
        .train-no { font-size: 12px; color: #666; display: block; margin-bottom: 4px; }
        .verify-tag { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; }
        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .time-main { color: #e11d48; font-weight: bold; font-size: 15px; margin-bottom: 2px; }
        .time-sub { color: #333; font-size: 14px; font-weight: bold; }
        .dest-name { font-size: 14px; font-weight: bold; color: #333; }
        .search-inner { padding: 8px 10px; background: #f8fafc; border-bottom: 1px solid #eee; display: flex; gap: 5px; }
        #ktx-arr-input { flex: 1; padding: 12px; border-radius: 6px; border: 1px solid #ddd; outline: none; font-size: 16px !important; }
        #ktx-search-btn { padding: 0 20px; background: #0045e6; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px; }
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }

        .train-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 15px; background: #f8fafc; border-top: 1px solid #eee; }
        .p-btn { padding: 5px 12px; background: #fff; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; cursor: pointer; color: #0045e6; font-weight: bold; }
        .p-btn:disabled { color: #ccc; cursor: not-allowed; }
        .p-info { font-size: 12px; color: #666; }
    </style>

    <div id="bus-live-area">
        <header class="station-header">
            <span>후포역 시간표 검색</span>
            <div style="display:flex; align-items:center;">
                <button id="voice-toggle-btn" class="voice-toggle" onclick="toggleVoice()">알림 켜기</button>
                <div id="live-indicator" class="live-dot-bus">LIVE</div>
            </div>
        </header>
        <div class="search-inner">
            <input type="text" id="ktx-arr-input" placeholder="도착역 입력 (예: 부산, 동대구)" onkeypress="if(event.keyCode==13) updateKtxBoard(true);">
            <button id="ktx-search-btn" onclick="updateKtxBoard(true)">조회</button>
        </div>
        <table class="bus-table">
            <thead>
                <tr>
                    <th style="width:35%;">노선정보</th>
                    <th style="width:30%;">출발예정</th>
                    <th style="width:35%;">목적지</th>
                </tr>
            </thead>
            <tbody id="train-list-body">
                <tr><td colspan="3" style="padding:300px 0; color:#999; font-size:13px;">도착역을 입력하고 조회를 눌러주세요.</td></tr>
            </tbody>
        </table>

        <div id="train-pagination-area" class="train-pagination" style="display:none;">
            <button id="prev-page" class="p-btn" onclick="movePage(-1)">이전</button>
            <span class="p-info"><span id="curr-p">1</span> / <span id="total-p">1</span></span>
            <button id="next-page" class="p-btn" onclick="movePage(1)">다음</button>
        </div>

        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 업데이트됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>국가교통정보 공식 API 연동</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>
    </div>

    <script>
    const ktxKeyFinal = "X7F%2FMhVuiV1lCs97QEbUzX3bSxRSsKro2roj5wdq%2FESJtqWJtRtvrBCCHVWuAvbY0T%2F84rusVFgvnQshHe7XBQ%3D%3D";
    let stationMaster = [];
    const currentDepName = '후포'; 
    
    let allTrainData = [];
    let currentP = 1;
    const perPage = 10;

    window.ktxVoiceEnabled = false;
    window.ktxAnnounced = new Set();

    function toggleVoice() {
        window.ktxVoiceEnabled = !window.ktxVoiceEnabled;
        const btn = document.getElementById('voice-toggle-btn');
        if(window.ktxVoiceEnabled) {
            btn.classList.add('active'); 
            btn.innerText = "알림 끄기"; 
            const msg = new SpeechSynthesisUtterance("실시간 음성 안내가 활성화되었습니다. 출발 15분 전 열차를 안내합니다.");
            msg.lang = "ko-KR"; window.speechSynthesis.speak(msg);
        } else {
            btn.classList.remove('active'); 
            btn.innerText = "알림 켜기"; 
            window.speechSynthesis.cancel();
        }
    }

    async function initMaster() {
        stationMaster.push({ name: "여수EXPO", id: "NAT041993" });
        const codes = ['11','21','22','23','24','25','26','31','32','33','34','35','36','37','38'];
        try {
            const results = await Promise.all(codes.map(c => 
                fetch(`https://apis.data.go.kr/1613000/TrainInfo/GetCtyAcctoTrainSttnList?serviceKey=${ktxKeyFinal}&pageNo=1&numOfRows=200&_type=xml&cityCode=${c}`).then(r => r.text())
            ));
            const parser = new DOMParser();
            results.forEach(xmlText => {
                const xml = parser.parseFromString(xmlText, "text/xml");
                xml.querySelectorAll('item').forEach(item => {
                    const name = item.querySelector('nodename').textContent.trim();
                    const id = item.querySelector('nodeid').textContent.trim();
                    if (!stationMaster.find(s => s.id === id)) stationMaster.push({ name, id });
                });
            });
        } catch (e) { console.log("Master Load Error"); }
    }

    async function updateKtxBoard(isManual = false) {
        const inputEl = document.getElementById('ktx-arr-input');
        let arrival = inputEl.value.trim().replace('역', '');
        if (!arrival) { if(isManual) alert("도착역을 입력해주세요."); return; }

        const tbody = document.getElementById('train-list-body');
        tbody.classList.add('refresh-flash');
        if (isManual) { tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">실시간 데이터를 불러오는 중...</td></tr>'; }

        const findS = (n) => {
            if (n === "여수" || n === "여수엑스포" || n === "여수EXPO") return { name: "여수EXPO", id: "NAT041993" };
            if (n === "울산") return stationMaster.find(s => s.name === "울산(통도사)");
            return stationMaster.find(s => s.name === n || s.name === n + '역');
        }

        const dep = findS(currentDepName);
        const arr = findS(arrival);
        if (!dep || !arr) { if(isManual) alert("역 이름을 정확히 입력해주세요."); tbody.classList.remove('refresh-flash'); return; }

        const fd = new FormData();
        fd.append('action', 'fetch_ktx_live');
        fd.append('dep_id', dep.id);
        fd.append('arr_id', arr.id);

        try {
            const response = await fetch('https://krailroad.co.kr/wp-admin/admin-ajax.php', { method: 'POST', body: fd });
            allTrainData = await response.json();
            
            if (allTrainData.length > 0) {
                const nowTs = Math.floor(Date.now() / 1000);
                let targetIdx = allTrainData.findIndex(t => t.ts >= nowTs - 300);
                if (targetIdx === -1) targetIdx = 0;
                
                if (isManual) currentP = Math.floor(targetIdx / perPage) + 1;
                renderPage();
            } else {
                tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">검색된 열차가 없습니다.</td></tr>';
                document.getElementById('train-pagination-area').style.display = 'none';
            }
            tbody.classList.remove('refresh-flash');
        } catch (e) { 
            tbody.classList.remove('refresh-flash');
            tbody.innerHTML = '<tr><td colspan="3" style="padding:300px 0; font-size:13px;">데이터 통신 중 오류가 발생했습니다.</td></tr>';
        }
    }

    function renderPage() {
        const tbody = document.getElementById('train-list-body');
        const nowTs = Math.floor(Date.now() / 1000);
        const totalP = Math.ceil(allTrainData.length / perPage);
        
        const start = (currentP - 1) * perPage;
        const pageData = allTrainData.slice(start, start + perPage);

        let html = '';
        let delay = 0;
        
        pageData.forEach(r => {
            const diffMin = Math.round((r.ts - nowTs) / 60);
            
            // 음성 안내 로직
            if (window.ktxVoiceEnabled && diffMin === 15) {
                const key = r.no + "_" + r.dep_time;
                if (!window.ktxAnnounced.has(key)) {
                    const speech = new SpeechSynthesisUtterance(`안내드립니다. ${r.dep_time}분에 출발하는 ${r.arr_n}행 ${r.grade} ${r.no}열차가 15분 뒤에 출발할 예정입니다.`);
                    speech.lang = "ko-KR"; window.speechSynthesis.speak(speech);
                    window.ktxAnnounced.add(key);
                }
            }

            let soonBadge = (diffMin <= 10 && diffMin >= 0) ? `<span class="soon-badge">출발임박</span>` : '';
            
            // --- 색상 및 문구 로직 시작 ---
            let timeStyle = ""; 
            let timeMain = "";

            if (diffMin <= 0) {
                if (diffMin < -5) {
                    timeMain = '운행 종료';
                    timeStyle = 'style="color: #94a3b8;"'; 
                } else {
                    timeMain = '출발 대기 중';
                }
            } else {
                timeMain = diffMin + '분 후 출발';
            }

            html += `
                <tr class="bus-arrival-row" style="animation-delay: ${delay}s;">
                    <td style="padding: 10px 5px;">
                        <span class="train-no">${r.no}호</span>
                        <span class="route-num">${r.grade}</span>
                        <span class="verify-tag">공식정보연동</span>
                    </td>
                    <td>
                        ${soonBadge}<br>
                        <div class="time-main" ${timeStyle}>${timeMain}</div>
                        <div class="time-sub">${r.dep_time} 출발</div>
                    </td>
                    <td>
                        <div class="dest-name">${r.arr_n}역</div>
                        <div class="verify-tag" style="font-size:13px; background:#f1f5f9; color:#0045e6; border:1px solid #e2e8f0; margin-top:4px; font-weight:bold;">도착 ${r.arr_time}</div>
                        <div style="font-size:13px; color:#666; margin-top:2px;">(${r.duration} 소요)</div>
                    </td>
                </tr>`;
            delay += 0.03;
        });
        
        tbody.innerHTML = html;
        document.getElementById('train-pagination-area').style.display = 'flex';
        document.getElementById('curr-p').innerText = currentP;
        document.getElementById('total-p').innerText = totalP;
        document.getElementById('prev-page').disabled = (currentP === 1);
        document.getElementById('next-page').disabled = (currentP === totalP);

        const now = new Date();
        document.getElementById('last-sync').innerText = 
            now.getHours().toString().padStart(2, '0') + ':' + 
            now.getMinutes().toString().padStart(2, '0') + ':' + 
            now.getSeconds().toString().padStart(2, '0');
    }

    function movePage(step) {
        currentP += step;
        renderPage();
    }

    initMaster();
    setInterval(() => { if(allTrainData.length > 0) updateKtxBoard(false); }, 60000);
    </script>
    



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading">실시간 API 버스 도착 시간표</h2>


    <style>
        #bus-live-area { margin: 20px auto; max-width: 600px; background: #fff; border-radius: 12px; font-family: -apple-system, sans-serif; border: 2px solid #0045e6; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
        /* CLS 최적화: 10개 출력 시의 예상 높이인 750px를 선점 */
        #bus-content-view { min-height: 750px; transition: height 0.3s ease; position: relative; } 

        .station-header { background: #0045e6; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
        .station-header span { font-weight: bold; }
        .live-dot-bus { background: #fff; color: #0045e6; padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 800; animation: blink_live 1.5s infinite; }
        @keyframes blink_live { 50% { opacity: 0.5; } }
        
        .bus-table { width: 100%; border-collapse: collapse; text-align: center; table-layout: fixed; }
        .bus-table th { font-size: 13px; color: #666; padding: 12px 5px; background: #f8f9fa; border-top: 1px solid #eee; }
        .bus-table td { padding: 15px 5px; border-bottom: 1px solid #f0f0f0; text-align: center; vertical-align: middle; overflow: hidden; }
        
        .bus-arrival-row { animation: slideUp 0.6s ease-out forwards; opacity: 0; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
        .soon-badge { background: #e11d48; color: #fff; padding: 2px 5px; border-radius: 4px; font-size: 11px; animation: pulse 1.5s infinite; font-weight: bold; }
        .route-path { width: 60px; height: 3px; background: #e2e8f0; margin: 8px auto 0; position: relative; }
        .bus-icon { position: absolute; top: -9px; font-size: 12px; transition: all 0.5s; }
        .verify-badge { font-size: 10px; color: #059669; background: #ecfdf5; padding: 1px 4px; border-radius: 3px; border: 1px solid #d1fae5; display: inline-block; margin-top: 4px; }
        
        #bus-announcement { background: #fffbe6; border-top: 1px dashed #ffe58f; padding: 10px 15px; font-size: 12px; color: #856404; line-height: 1.6; text-align: center; }
    </style>

    <div id="bus-live-area">
        <div class="station-header">
            <span id="bus-header-name">후포역 버스 도착판</span>
            <div class="live-dot-bus">LIVE</div>
        </div>
        
        <div id="bus-content-view">
            <div id="bus-loading-overlay" style="padding:150px 0; text-align:center; color:#999; line-height:1.6;">
                <div style="display:inline-block; margin-bottom:12px; font-size:24px; animation: pulse 1.5s infinite;">🔍</div>
                <p style="margin:0;">
                    <strong id="loading-name">후포역</strong> 버스 API 연결 중...<br>
                    <span style="font-size:12px;">10초 간 최대 3번 접속시도 하오니 기다려 주세요....</span>
                </p>
            </div>
        </div>
        
        <div id="bus-announcement">
            <span style="display:inline-block; margin-right:5px; animation: pulse 1s infinite;">📢</span> 
            <span id="announcement-text">실시간 정보는 1분 단위로 자동 갱신됩니다.</span>
        </div>

        <div style="display:flex; justify-content:space-between; padding: 8px 15px; background: #f8fafc; font-size:11px; color:#94a3b8; border-top: 1px solid #eee;">
            <span>연계 교통 실시간 모드</span>
            <span>최근 갱신: <span id="last-sync">--:--:--</span></span>
        </div>

        <script type="text/javascript">
        (function($) {
            "use strict";
            let curCity = '37420';
            let curName = '후포';
            let altCity = '';
            let altName = '요금·정차';
            let hasTriedAlt = false;

            function loadBus() {
                if (document.hidden) return;
                
                const $view = $('#bus-content-view');
                // 갱신 시 현재 높이를 잠시 고정하여 화면 떨림 방지
                if ($view.height() > 0) {
                    $view.css('min-height', $view.height() + 'px');
                }

                $.ajax({
                    url: 'https://krailroad.co.kr/wp-admin/admin-ajax.php',
                    type: 'POST',
                    data: { action: 'get_bus_universal_final', city: curCity, name: curName },
                    success: function(res) { 
                        if (res.indexOf('정류소 정보를 찾지 못했습니다') !== -1 && altName !== '' && !hasTriedAlt) {
                            curCity = altCity;
                            curName = altName;
                            hasTriedAlt = true;
                            $('#bus-main-title').text(curName + '역 실시간 버스 도착 안내');
                            $('#bus-header-name').text(curName + '역 버스 도착판');
                            $('#loading-name').text(curName + '역');
                            loadBus();
                            return;
                        }
                        
                        $view.html(res);
                        
                        // 데이터 로드 후 최소 높이를 다시 750px로 일관성 있게 유지
                        setTimeout(() => { $view.css('min-height', '750px'); }, 100);

                        const now = new Date();
                        const timeStr = now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0') + ':' + now.getSeconds().toString().padStart(2, '0');
                        $('#last-sync').text(timeStr);
                    }
                });
            }
            $(document).ready(function() { loadBus(); setInterval(loadBus, 60000); });
        })(jQuery);
        </script>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 날씨 및 맛집 정보</h3>



    <div class="weather-section-wrap" style="margin: 40px 0;">
        <h4 style="margin-bottom: 25px !important;">후포역 API 실시간 날씨 예보</h4>
        <div class="weather-info-box" style="padding: 20px; border-radius: 12px; background: #f8fafc; border: 1px solid #e2e8f0; margin-top: 15px;">
            <div style="display: flex; gap: 10px; text-align: center;">
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">기온</span>
                    <b style="font-size: 1.3em; color: #2d3748;">16℃</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">상태</span>
                    <b style="font-size: 1.1em; color: #2d3748;">☁️ 흐림</b>
                </div>
                <div style="flex: 1; background: #ffffff; padding: 12px; border-radius: 8px; border: 1px solid #edf2f7;">
                    <span style="font-size: 0.85em; color: #718096; display: block; margin-bottom: 4px;">강수확률</span>
                    <b style="font-size: 1.3em; color: #3182ce;">30%</b>
                </div>
            </div>
        </div>
    </div>


    <div class="station-food-wrap" style="margin: 30px 0; padding-top: 5px;">
        <h4 style="margin-bottom: 25px !important;">후포역 API 실시간 맛집 정보</h4>
        <ul style="list-style: none !important; padding: 0 !important; margin: 0 !important; font-family: 'Noto Sans KR', sans-serif;">
                                                <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EB%8C%80%EA%B2%8C%EC%95%A4%EC%BF%A1+%ED%9B%84%ED%8F%AC%EB%A6%AC%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9A%B8%EC%A7%84%EA%B5%B0+%ED%9B%84%ED%8F%AC%EB%A9%B4+%ED%9B%84%ED%8F%AC%EB%A6%AC+316-109+%EB%8C%80%EA%B2%8C%EC%95%A4%EC%BF%A1" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">대게앤쿡 후포리점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">해물,생선요리&gt;대게요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 울진군 후포면 후포리 316-109 대게앤쿡</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%ED%9B%84%ED%8F%AC%EB%A6%AC+%ED%95%9C%EB%A7%88%EC%9D%8C%EB%8C%80%EA%B2%8C%EC%88%98%EC%82%B0+%EC%9A%B8%EC%A7%84%EB%8C%80%EA%B2%8C+%ED%9B%84%ED%8F%AC%EB%B3%B8%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9A%B8%EC%A7%84%EA%B5%B0+%ED%9B%84%ED%8F%AC%EB%A9%B4+%ED%9B%84%ED%8F%AC%EB%A6%AC+581-14+%ED%9B%84%ED%8F%AC%EB%A6%AC+%ED%95%9C%EB%A7%88%EC%9D%8C%EB%8C%80%EA%B2%8C%EC%88%98%EC%82%B0+%ED%9B%84%ED%8F%AC%EB%B3%B8%EC%A0%90" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">후포리 한마음대게수산 울진대게 후포본점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">해물,생선요리&gt;대게요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 울진군 후포면 후포리 581-14 후포리 한마음대게수산 후포본점</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%9B%90%EC%A1%B0%EB%8C%80%EA%B2%8C%ED%9B%84%ED%8F%AC%EB%A6%AC+1%ED%98%B8%EC%A0%90+%EB%B3%B8%EC%A0%90+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9A%B8%EC%A7%84%EA%B5%B0+%ED%9B%84%ED%8F%AC%EB%A9%B4+%ED%9B%84%ED%8F%AC%EB%A6%AC+316-84+%EC%9B%90%EC%A1%B0%EB%8C%80%EA%B2%8C+%ED%9B%84%ED%8F%AC%EB%A6%AC+1%EC%B8%B5" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">원조대게후포리 1호점 본점</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">해물,생선요리&gt;대게요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 울진군 후포면 후포리 316-84 원조대게 후포리 1층</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%B2%AD%ED%92%8D%EC%88%98%EC%82%B0+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9A%B8%EC%A7%84%EA%B5%B0+%ED%9B%84%ED%8F%AC%EB%A9%B4+%EC%82%BC%EC%9C%A8%EB%A6%AC+250-48+%EC%B2%AD%ED%92%8D%EC%88%98%EC%82%B0" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">청풍수산</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">해물,생선요리&gt;대게요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 울진군 후포면 삼율리 250-48 청풍수산</div>
                        </a>
                    </li>
                                    <li style="margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #eee !important;">
                        <a href="https://map.naver.com/v5/search/%EC%9C%A4%EC%A0%95%EB%8C%80%EA%B2%8C%EC%88%98%EC%82%B0+%EA%B2%BD%EC%83%81%EB%B6%81%EB%8F%84+%EC%9A%B8%EC%A7%84%EA%B5%B0+%ED%9B%84%ED%8F%AC%EB%A9%B4+%ED%9B%84%ED%8F%AC%EB%A6%AC+581-13" target="_blank" style="text-decoration: none !important; display: block; color: inherit !important;" rel="noopener">
                            <div style="display: flex; align-items: center; gap: 10px; margin-bottom: 5px;">
                                <strong style="font-size: 1.1rem !important; color: #222 !important;">윤정대게수산</strong>
                                <span style="background: #f1f3f5; color: #666; font-size: 0.7rem; padding: 2px 6px; border-radius: 4px;">해물,생선요리&gt;대게요리</span>
                            </div>
                            <div style="font-size: 0.9rem !important; color: #888 !important;">경상북도 울진군 후포면 후포리 581-13</div>
                        </a>
                    </li>
                                    </ul>
    </div>
    



<p class="wp-block-paragraph"></p>



<h3 class="wp-block-heading">실시간 주차장 요금 및 위치</h3>


    <div class="station-parking-section" style="margin: 30px 0; padding-top: 10px; min-height: 400px;">
        <h4 style="margin-bottom: 20px !important;">후포역 실시간 주차장 요금</h4>
        
                    <div style="text-align: center; padding: 50px 20px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; font-family: 'Noto Sans KR', sans-serif;">
                <p style="color: #64748b; margin: 0;">해당 역의 공식 주차 정보가 없습니다.</p>
            </div>
            </div>
    


    <div class="station-location-info" style="margin: 20px 0; font-family: 'Noto Sans KR', sans-serif;">
        <h4 style="margin-bottom: 20px !important;">후포역 주차장 위치 및 문의</h4>
        
        <div style="margin-bottom: 25px; line-height: 1.8; background: #f8fafc; padding: 20px; border-radius: 12px; border: 1px solid #e2e8f0;">
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📍 주차장 주소 :</strong> 후포역 인근 공영 및 노상주차장 이용 권장</p>
            <p style="margin: 5px 0; font-size: 1.05rem; color: #334155;"><strong>📞 문의전화 :</strong> <a href="tel:1544-7788" style="color: #0052a4; font-weight: bold; text-decoration: none;">1544-7788</a></p>
        </div>

        <div style="text-align: center; margin: 30px 0;">
            <a href="https://map.naver.com/v5/search/%ED%9B%84%ED%8F%AC%EC%97%AD+%EC%A3%BC%EC%B0%A8%EC%9E%A5" target="_blank" rel="noopener noreferrer" style="display: inline-block; background: #03c75a; color: white; padding: 15px 35px; border-radius: 8px; text-decoration: none; font-weight: bold; font-size: 1.1rem; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
                  네이버 지도에서 실시간 위치 확인
            </a>
        </div>
    </div>
    



<p class="wp-block-paragraph"></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="450" height="450" src="https://krailroad.co.kr/wp-content/uploads/2026/02/후포역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg" alt="후포역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표" class="wp-image-18258" srcset="https://krailroad.co.kr/wp-content/uploads/2026/02/후포역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표.jpg 450w, https://krailroad.co.kr/wp-content/uploads/2026/02/후포역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-300x300.jpg 300w, https://krailroad.co.kr/wp-content/uploads/2026/02/후포역-ITX-마음-누리로-시간표-정차역-노선도-첫기차-마지막기차-요금표-150x150.jpg 150w" sizes="auto, (max-width: 450px) 100vw, 450px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
