* { box-sizing: border-box; }

@font-face {
    font-family: 'Pretendard';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-Thin.woff2') format('woff2');
    font-weight: 100;
    font-display: swap;
}
@font-face {
    font-family: 'Pretendard';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-ExtraLight.woff2') format('woff2');
    font-weight: 200;
    font-display: swap;
}
@font-face {
    font-family: 'Pretendard';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-Light.woff2') format('woff2');
    font-weight: 300;
    font-display: swap;
}
@font-face {
    font-family: 'Pretendard';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-Regular.woff2') format('woff2');
    font-weight: 400;
    font-display: swap;
}
@font-face {
    font-family: 'Pretendard';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-Medium.woff2') format('woff2');
    font-weight: 500;
    font-display: swap;
}
@font-face {
    font-family: 'Pretendard';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-SemiBold.woff2') format('woff2');
    font-weight: 600;
    font-display: swap;
}
@font-face {
    font-family: 'Pretendard';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-Bold.woff2') format('woff2');
    font-weight: 700;
    font-display: swap;
}
@font-face {
    font-family: 'Pretendard';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-ExtraBold.woff2') format('woff2');
    font-weight: 800;
    font-display: swap;
}
@font-face {
    font-family: 'Pretendard';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-Black.woff2') format('woff2');
    font-weight: 900;
    font-display: swap;
}




/*main*/
.wrap { width: 1440px; margin: 0 auto; }
#RemainWrap {margin-top:136px;font-family: 'Pretendard';font-size:17px;}

.main-visual-wrap {width: 100%;padding: 40px 0 0;background: #f9f9f9;}
.main-visual-wrap .wrap { display: flex; width: 1440px; margin: 0 auto; }
.schedule-container {flex: 0 0 380px;height: 560px;background: #6d5244;padding: 50px 30px 40px;box-sizing: border-box;display: flex;flex-direction: column;}
.list-header {margin-bottom: 18px;text-align: center;}
.header-title {font-family:'Pretendard';font-size: 26px;font-weight:600;color: #fff6e0;display: inline-block;word-break: keep-all;line-height: 140%;letter-spacing: -1px;}
.month-nav { margin-bottom: 25px; color: #d6ccc2; display: flex;align-items: center;gap: 20px;justify-content: center;margin-bottom: 45px;}
.current-month { color: #82ccd1; font-size: 1.25em; font-weight: 600; }
.schedule-list {height: 380px;background: #796459;overflow-y: auto;padding: 0;}
a.toduk {display: flex;padding: 22px 10px;border-bottom: 1px solid rgba(255,255,255,0.1);text-decoration: none;color: #93eff5;transition: 0.3s;align-items: center;}
.toduk:hover {background: rgba(255,255,255,0.08);padding-left: 15px;border-left: 3px solid #82ccd1;}
.toduk .wr_date {width: 30%;font-weight: 500;font-size: 0.95em;opacity: 0.9;padding: 0 0 0 15px;font-variant-numeric: tabular-nums;letter-spacing: 0;}
.toduk .wr_title {width: 65%;font-size: 1.05em;color: #fff5d8;}
.schedule-list::-webkit-scrollbar {width: 6px;}
.schedule-list::-webkit-scrollbar-thumb {background: rgba(255, 255, 255, 0.2);border-radius: 3px;}
.schedule-list::-webkit-scrollbar-thumb:hover {background: rgba(255, 255, 255, 0.5);}
.nav-btn {flex-shrink: 0;background: rgba(255,255,255,0.1);border: none;color: #82ccd1;cursor: pointer;width: 32px;height: 32px;display: flex;align-items: center;justify-content: center;border-radius: 50%;transition: 0.3s;}
.nav-btn:hover {background: rgba(255,255,255,0.3);color: #fff;}

.bottom-container {background: #f9f9f9;padding: 0 0 40px;}
.bottom-grid { display: flex; gap: 0; margin-bottom: 30px; width: 1440px; }
.left-section { flex: 0 0 1060px; display: flex; gap: 0; border-left: 1px solid #dcdcdc; }
.left-section .info-card {flex: 1;padding: 40px 30px;background: #fff;}
.right-section {position: relative;flex: 0 0 380px;background: url(/img/main/templestay.jpg) no-repeat;background-size: cover;}
.right-section .info-card {padding: 40px 30px;position: absolute;left: 0;bottom: 0;}
.info-card.bgc1 {background: #EFE8DA;}
.info-card.bgc2 {background: #A98555;}
.info-card h3 {font-size: 24px;color: #fff6e0;margin-bottom: 20px;padding-bottom: 10px;display: inline-block;font-weight: 500;}

.board-list { list-style: none; padding: 0; margin: 0; }
.board-list li {display: flex;justify-content: space-between;padding: 12px 0;border-bottom: 1px solid rgba(255,255,255,.15);font-size: 18px;}
.board-list li a {color: #fff6e0;text-decoration: none;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;width: 75%;}
.board-list li span {color: rgba(255,255,255,.65);font-size: 15px;}
.board-list li:last-child {border-bottom:0;}

.info-card.bgc1 h3 {color:#222;font-weight:600}
.info-card.bgc1 .board-list li {border-bottom: 1px solid rgba(0,0,0,.1);}
.info-card.bgc1 .board-list li a {color: #222; font-weight:500;}
.info-card.bgc1 .board-list li span {color: rgba(0,0,0,.5);}
.info-card.bgc1 .board-list li:last-child {border-bottom:0;}

.right-section {}
.gallery-card {}
.gallery-card > h3 {line-height: 100%;margin-bottom: 10px;padding-bottom: 0;}
.gallery-card > p {font-size: 19px;color: #fff6e0;font-weight: 600;}

.gallery-thumb img { width: 100%; height: 200px; object-fit: cover; background: #ddd; }
.gallery-thumb p { margin-top: 15px; font-size: 16px; color: #666; text-align: center; }


.banner-grid {display: flex;gap: 0;width: 1440px;margin: 0 auto 30px;}
.big-banner { flex: 1; background: #fff; display: flex; align-items: center; justify-content: center; font-size: 20px; color: #6d5244; font-weight: 600; border-right: 1px solid #dcdcdc;}
.big-banner:last-child { border-right: none; }

.shuttle-section { background: #fff; padding: 0; margin: 0 auto 30px; border: 1px solid #dcdcdc; width: 1440px;}
.section-title { margin: 0; padding: 20px; background: #6d5244; color: #fff; font-size: 20px; text-align: left; }
.shuttle-table { width: 100%; border-collapse: collapse; }
.shuttle-table th { background: #f9f9f9; padding: 15px; border-bottom: 1px solid #ddd; border-right: 1px solid #ddd; }
.shuttle-table td { padding: 15px; border-bottom: 1px solid #eee; border-right: 1px solid #ddd; text-align: center; }

.gallery-video-section {padding: 0;background: #f9f9f9;}
.content-grid {display: flex;gap: 0; justify-content: space-between; width: 1440px; margin: 0 auto; }

.section-header {display: flex;justify-content: space-between;align-items: center;margin-bottom: 25px;padding: 0 0 0 5px;}
.section-header h3 {font-size: 26px;color: #6d5244;font-weight: 600;margin: 0;}
.more-btn { color: #a98555; font-size: 15px; text-decoration: none; font-weight: 500; }

.gallery-box {flex: 0 0 520px;}
.gallery-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }

.imgA { overflow: hidden; cursor: pointer; }
.imgA img { transition: transform 0.5s ease;}
.imgA:hover img { transform: scale(1.05);}
.sbjA {margin-top: 20px;font-size: 19px;color: #222;font-weight: 500;text-align: center;}

.video-box {flex: 0 0 380px;}
.video-wrapper { background: #efe8da; padding: 15px; border-radius: 8px; }
.video-desc {margin-top: 20px;text-align: left;}
.video-desc h4 { font-size: 18px; color: #6d5244; margin-bottom: 5px; }
.video-desc p {font-size: 16px;color: #fff6e0;line-height: 1.2;}

.content-grid {display: flex;gap: 10px;justify-content: space-between;margin: 0 auto;}
.gallery-bg { padding: 0; flex: 0 0 1060px;}
.video-box {flex: 0 0 380;}
.thumb-item img, .video-wrapper, .gallery-bg,.thumb-item { border-radius: 0 !important; }
.gallery-list {display: grid;grid-template-columns: 1fr 1fr;gap: 20px;background: #fff;padding: 30px 30px 31px;box-shadow: 0 0 20px 1px rgba(0, 0, 0, .1);}
.thumb-item img {width: 100%;height: 259px;object-fit: cover;display: block;}
.thumb-item p {}

.video-wrapper {background: #454545;padding: 30px;margin: 48px 0 0;text-align: center;}
.video-desc h4 {font-size: 24px;margin-bottom: 10px;color: #fff6e0;font-weight: 500;}


.gallery-box > ul {background: #fff;box-sizing: border-box;padding: 30px 0;height: 356px;text-align: center;box-shadow: 0 0 10px 0px rgba(0, 0, 0, .1);}

.banner-section {padding: 110px 0 80px;background: #f9f9f9;}
.banner-grid {display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; width: 1440px; margin: 0 auto;}
.banner-item {background: #fbfbfb;padding: 50px 20px;text-align: center;text-decoration: none;display: block;transition: all 0.5s ease;border: 1px solid #eaeaea;position: relative;overflow: hidden; z-index: 1;box-shadow: 0 0 0 rgba(0,0,0,0);}
.item-01 {border-top: 5px solid #6d5244;}
.item-02 { border-top: 5px solid #a98555; }
.item-03 {border-top: 5px solid #359299;}
.item-04 { border-top: 5px solid #d6ccc2; }

.banner-item .icon-box {margin-bottom: 25px; display: flex;justify-content: center;align-items: center;}
.banner-item .icon-box svg {transition: stroke 0.3s ease;}
.banner-item:hover .icon-box svg {stroke: #ffffff;}
.banner-item h4 { font-size: 20px; color: #222; margin-bottom: 15px; font-weight: 600; transition: color 0.3s ease;}
.banner-item p {font-size: 17px;color: #777;line-height: 1.5;transition: color 0.3s ease;font-weight: 400;}
.banner-item > * { position: relative; z-index: 1; }
.banner-item::before {content: "";position: absolute;top: 0;left: 0;width: 100%;height: 0%;transition: height 0.5s ease;z-index: -1;}

.item-01:hover::before { background-color: #6d5244; height: 100%; }
.item-02:hover::before { background-color: #a98555; height: 100%; }
.item-03:hover::before { background-color: #359299; height: 100%; }
.item-04:hover::before { background-color: #d6ccc2; height: 100%; }

.banner-item:hover { box-shadow: 0 10px 20px rgba(0,0,0,0.1);border-color: transparent;}
.banner-item:hover h4, .banner-item:hover p, .banner-item:hover .icon-box svg { color: #fff !important; stroke: #fff !important;}
.banner-item:hover h4, .banner-item:hover p { color: #fff; }
.banner-item:hover p { opacity: 0.9; }
.temple-container {max-width: 800px;margin: 40px auto;font-family: 'Pretendard', sans-serif;color: #3e2723; }
.temple-title {text-align: center;font-size: 24px;font-weight: bold;margin-bottom: 20px;color: #263238;}
.tab-group {display: flex;justify-content: center;gap: 10px;margin-bottom: 20px;}
.btn {padding: 10px 25px;cursor: pointer;border: 1px solid #8d6e63;background-color: #fff;color: #5d4037;transition: all 0.3s;}
.btn.active {background-color: #5d4037;color: #fff;}

.timetable {padding: 100px 0 120px;background:url(/img/main/mainbg.jpg) no-repeat;}
.shuttle-wrapper {max-width: 1440px;margin: 0 auto;padding: 0 20px;font-family: 'Pretendard', sans-serif;color: #3e2723;}
.shuttle-title {text-align: center;font-size: 28px;font-weight: bold;margin-bottom: 60px;color: #263238;}
.shuttle-grid {display: flex;gap: 40px; justify-content: center;}

.table-box { flex: 1; min-width: 0; }
.table-subtitle {font-size: 22px;font-weight: 600;margin-bottom: 20px;color: #5d4037;display: inline-block;padding: 0 0 0 6px;line-height: 100%;border-left: 4px solid #5d4037;}
.table-subtitle.bgc1 {border-left:4px solid #f98b16;}
.table-subtitle.bgc2 {border-left:4px solid #359299;}

.shuttle-table {width: 100%;border-collapse: collapse;border-top: 2px solid #5d4037;border-left: 1px solid #efebe9;}
.shuttle-table th {background-color: #f5f5f0;padding: 12px;border-bottom: 1px solid #d7ccc8;text-align: center;font-weight: 600;font-size: 1.1em;}
.shuttle-table td { padding: 10px; text-align: center; border-bottom: 1px solid #efebe9;background: #fff;}


.season-info { margin-top: 30px; padding: 20px; background-color: #f9f7f2; border-left: 4px solid #8d6e63; text-align: left; }

/* 모바일 대응 */
@media (max-width: 768px) {
	.shuttle-grid { flex-direction: column; }
}




/* swiper begin */

 .swiper {
	width: 100%;
	height: 100%;
  }

  .swiper-slide {
	text-align: center;
	font-size: 18px;
	background: #444;
	display: flex;
	justify-content: center;
	align-items: center;
  }

  .swiper-slide img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
  }

  .swiper-button-next, .swiper-button-prev{border-radius:50%;background-color:rgba(0,0,0,0.5)}

  .swiper-pagination {bottom:30px;}
  
  .swiper-pagination-bullet {
	width: 20px;
	height: 20px;
	text-align: center;
	line-height: 20px;
	font-size: 12px;
	color: #000;
	opacity: 1;
	background: rgba(0, 0, 0, 0.2);
  }

  .swiper-pagination-bullet-active {
	color: #fff;
	background: #007aff;
  }
/* swiper end */  