@charset "utf-8";

.inner{ width: 1200px; margin: 0 auto;}
h4 { font-size: 40px; font-weight: 700;}

/*main*/
.mainSlide{position:relative;}
.mainSlideSwiper{width:100%;height:100%;max-height:800px;}
.mainSlide .swiper-slide{overflow:hidden;}

.mainSlide_item{position:relative;height:850px;overflow:hidden;}
.mainSlide_item::before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(255,255,255,.15);opacity:.35;transition:opacity 1.2s ease;z-index:2;}
.mainSlide_item::after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,rgba(0,0,0,.48) 0%,rgba(0,0,0,.22) 35%,rgba(0,0,0,.08) 60%,rgba(0,0,0,0) 100%);z-index:3;}

.mainSlide_item img{display:block;width:100%;height:100%;object-fit:cover;transform:scale(1.08);transition:transform 7s ease;position:relative;z-index:1;}

.mainSlide .swiper-slide.swiper-slide-active .mainSlide_item img{transform:scale(1);}
.mainSlide .swiper-slide.swiper-slide-active .mainSlide_item::before{opacity:.15;}

.mainSlide .swiper-pagination{bottom:50px!important;}
.mainSlide .swiper-pagination-bullet{width:12px;height:12px;background:#fff;opacity:.5;}
.mainSlide .swiper-pagination-bullet-active{background:#13294b;opacity:1;}
.mainSlide .swiper-button-prev,
.mainSlide .swiper-button-next{display:none;}

.mainSlide>.mainSlideSwiper>.swiper-wrapper>.swiper-slide>.mainSlide_item>.mainSlide_txt{position:absolute;left:50%;top:40%;transform:translate(-600px,-45%);width:620px;z-index:10;color:#fff;}
.mainSlide>.mainSlideSwiper>.swiper-wrapper>.swiper-slide>.mainSlide_item>.mainSlide_txt>.line{display:block;width:0;height:2px;background:#d9c7a2;margin-bottom:26px;transition:width .9s ease;}
.mainSlide>.mainSlideSwiper>.swiper-wrapper>.swiper-slide>.mainSlide_item>.mainSlide_txt>.sub{display:inline-block;font-size:14px;font-weight:600;letter-spacing:5px;text-transform:uppercase;color:rgba(255,255,255,.85);margin-bottom:18px;opacity:0;transform:translateY(25px);transition:all .8s ease;}
.mainSlide>.mainSlideSwiper>.swiper-wrapper>.swiper-slide>.mainSlide_item>.mainSlide_txt>h2{margin:0;font-size:46px;font-weight:700;line-height:1.35;letter-spacing:-1.5px;color:#fff;text-shadow:0 5px 20px rgba(0,0,0,.35);opacity:0;transform:translateY(35px);transition:all .9s ease .2s;}
.mainSlide>.mainSlideSwiper>.swiper-wrapper>.swiper-slide>.mainSlide_item>.mainSlide_txt>p{margin:28px 0 0;font-size:20px;font-weight:400;line-height:1.8;color:rgba(255,255,255,.92);text-shadow:0 2px 10px rgba(0,0,0,.3);opacity:0;transform:translateY(35px);transition:all .9s ease .45s;}

.mainSlide>.mainSlideSwiper>.swiper-wrapper>.swiper-slide.swiper-slide-active>.mainSlide_item>.mainSlide_txt>.line{width:90px;}
.mainSlide>.mainSlideSwiper>.swiper-wrapper>.swiper-slide.swiper-slide-active>.mainSlide_item>.mainSlide_txt>.sub{opacity:1;transform:translateY(0);}
.mainSlide>.mainSlideSwiper>.swiper-wrapper>.swiper-slide.swiper-slide-active>.mainSlide_item>.mainSlide_txt>h2{opacity:1;transform:translateY(0);}
.mainSlide>.mainSlideSwiper>.swiper-wrapper>.swiper-slide.swiper-slide-active>.mainSlide_item>.mainSlide_txt>p{opacity:1;transform:translateY(0);}

/* 바로가기 (차분한 미디엄 다크 차콜 톤) */
.quick-menu-section { position: relative; padding: 60px 0; background-color: #343a46; }
.quick-menu-section > .inner { width: 1200px; margin: 0 auto; box-sizing: border-box; }
.quick-menu-wrap { display: flex; gap: 12px; width: 100%; }
.quick-item { flex: 1; background: #131416; border-radius: 8px; padding: 22px 18px; text-decoration: none; color: inherit; box-shadow: 0 4px 15px rgba(0,0,0,0.15); transition: all 0.3s ease; display: flex; flex-direction: column; justify-content: space-between; border: 1px solid #3f8d34; box-sizing: border-box; min-height: 170px; position: relative; overflow: hidden; }
.quick-item:hover { transform: translateY(-5px); background-color: #3e4655; border-color: #53a633; box-shadow: 0 8px 25px rgba(0,0,0,0.3); }
.quick-icon { width: 40px; height: 40px; background: rgba(83, 166, 51, 0.15); color: #53a633; border-radius: 8px; display: flex; align-items: center; justify-content: center; font-size: 16px; margin-bottom: 12px; transition: all 0.3s ease; }
.quick-item:hover .quick-icon { background: #53a633; color: #fff; }
.quick-text h3 { font-size: 16px; font-weight: 700; color: #ffffff; margin: 0 0 5px 0; transition: color 0.3s ease; }
.quick-item:hover .quick-text h3 { color: #53a633; }
.quick-text p { font-size: 12px; color: #b0bec5; margin: 0; line-height: 1.4; transition: color 0.3s ease; }
.quick-item:hover .quick-text p { color: #eceff1; }
.quick-arrow { position: absolute; bottom: 18px; right: 18px; width: 26px; height: 26px; background: rgba(255,255,255,0.08); color: #b0bec5; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 11px; transition: all 0.3s ease; }
.quick-item:hover .quick-arrow { background: #53a633; color: #fff; transform: rotate(90deg); }

/* 고인현황 */
.deceased-section * { box-sizing: border-box; }
.deceased-section { position: relative; padding: 80px 0 100px; background-color: #ffffff;overflow: hidden; background: linear-gradient(rgba(255,255,255,.1), rgba(255,255,255,.4)), url('/images/main/s1Bg.png') no-repeat center center / cover;}

.deceased-section > .inner { position: relative; z-index: 3; width: 1200px; margin: 0 auto; }
.deceased-section > .inner > .section-header { display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 25px; }
.deceased-section > .inner > .section-header > .header-left { display: flex; align-items: center; }
.deceased-section > .inner > .section-header > .header-left > .flower-icon { width: 65px; height: auto; margin-right: 15px; }
.deceased-section > .inner > .section-header > .header-left > .title-group > h2 { font-size: 32px; font-weight: 700; color: #1c2742; margin: 0 0 5px 0; line-height: 1; }
.deceased-section > .inner > .section-header > .header-left > .title-group > p { font-size: 16px; color: #555555; margin: 0; font-weight: 500; }
.deceased-section > .inner > .section-header > .btn-detail { display: inline-block; padding: 8px 30px; border: 1px solid #444; border-radius: 30px; color: #333; font-size: 15px; font-weight: 600; text-decoration: none; background: rgba(255, 255, 255, 0.7); transition: all 0.3s; }
.deceased-section > .inner > .section-header > .btn-detail:hover { background: #444; color: #fff; }

.deceased-section > .inner > .deceased-table { width: 100%; border-collapse: collapse; border-top: 2px solid #3e3e3e; table-layout: fixed; }

.deceased-section > .inner > .deceased-table > thead > tr > th { background: #3e3e3e; color: #ffffff; padding: 16px 0; font-size: 15px; font-weight: 400; border-left: 1px solid #555; border-right: 1px solid #555; text-align: center; }
.deceased-section > .inner > .deceased-table > thead > tr > th:first-child { border-left: none; }
.deceased-section > .inner > .deceased-table > thead > tr > th:last-child { border-right: none; }

.deceased-section > .inner > .deceased-table > tbody > tr > td { padding: 25px 15px; border: 1px solid #e5e5e5; text-align: center; vertical-align: middle; font-size: 14px; color: #333333; line-height: 1.6; }
.deceased-section > .inner > .deceased-table > tbody > tr > td:first-child { border-left: none; }
.deceased-section > .inner > .deceased-table > tbody > tr > td:last-child { border-right: none; }

.deceased-section > .inner > .deceased-table > tbody > tr > td.room-name { font-weight: 600; font-size: 15px; }
.deceased-section > .inner > .deceased-table > tbody > tr > td.deceased-name { font-size: 15px; }
.deceased-section > .inner > .deceased-table > tbody > tr > td.mourner-list { color: #555; line-height: 1.7; }
.deceased-section > .inner > .deceased-table > tbody > tr > td > .info-list-wrapper { display: inline-block; text-align: left; }
.deceased-section > .inner > .deceased-table > tbody > tr > td > .info-list-wrapper > .info-list { list-style: none; padding: 0; margin: 0; color: #555; }
.deceased-section > .inner > .deceased-table > tbody > tr > td > .info-list-wrapper > .info-list > li { position: relative; padding-left: 12px; margin-bottom: 3px; }
.deceased-section > .inner > .deceased-table > tbody > tr > td > .info-list-wrapper > .info-list > li::before { content: '•'; position: absolute; left: 0; top: 0; font-size: 14px; }
.deceased-section > .inner > .deceased-table > tbody > tr > td.room-name  .room-number{ font-weight:900; color:#111;}

/* video */
.memorial-section { position: relative; padding: 50px 0; background: linear-gradient(rgba(0,0,0,0.1), rgba(0,0,0,0.3)), url('/images/main/videoBg.png') no-repeat center center / cover; background-size: cover; background-position: center; background-repeat: no-repeat; background-attachment: fixed; background-color: #f9f9f9; }

.memorial-section .content-wrap { position: relative; z-index: 2; width: 1200px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 40px; }

.memorial-section .content-text { flex: 1; }
.memorial-section .content-text h2 { font-size: 40px; font-weight: 700; line-height: 1.4; margin-bottom: 20px; color: #1a1a1a; }
.memorial-section .content-text h2 > span {display: block; color: #876f64;}
.memorial-section .content-text p { font-size: 20px; line-height: 1.6; margin-bottom: 30px; color: #4a4a4a; font-weight: 600;}
.memorial-section .btn-more { display: inline-block; padding: 12px 45px; font-size: 20px; font-weight: 500; color: #333; text-decoration: none; border: 2px solid #333; border-radius: 8px; background-color: rgba(245, 245, 240, 0.8); transition: all 0.3s ease; }
.memorial-section .btn-more:hover { background-color: #333; color: #fff; }

.memorial-section .content-video { flex: 1; width: 100%; }
.memorial-section .video-wrapper { position: relative; width: 100%; padding-bottom: 56.25%; border-radius: 16px; overflow: hidden; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15); }
.memorial-section .video-wrapper iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: none; pointer-events: none; transform: scale(1.5); }


/* special */
.facility-section { width:1200px; margin:80px auto; }
.facility-inner { width:100%; }
.facility-top-bar { display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:30px; }
.facility-title-area { text-align:left; }
.facility-main-title { font-size:2rem; font-weight:700; color:#1a1a1a; margin-bottom:10px; }
.facility-sub-title { font-size:1.1rem; color:#666; }

.facility-control-area { display:flex; align-items:center; gap:15px; }
.facility-prev-btn,.facility-next-btn { width:40px; height:40px; border:1px solid #ddd; background:#fff; border-radius:4px; cursor:pointer; transition:.3s; }
.facility-prev-btn:hover,.facility-next-btn:hover { background:#8cb24a; border-color:#8cb24a; color:#fff; }
.facility-pagination { min-width:65px; text-align:center; font-size:14px; font-weight:600; color:#666; }

.facilitySwiper { width:100%; overflow:hidden; }
.facilitySwiper > .swiper-wrapper { align-items:stretch; }
.facilitySwiper > .swiper-wrapper > .swiper-slide { height:auto; }

.facility-card-item { display:block; height:100%; background:#333; border-radius:12px; overflow:hidden; text-decoration:none; color:inherit; box-shadow:0 5px 15px rgba(0,0,0,.08); transition:.3s; }
.facility-card-item:hover { transform:translateY(-5px); }

.facility-img-wrap { width:100%; height:200px; overflow:hidden; }
.facility-img-wrap > img { width:100%; height:100%; object-fit:cover; transition:.4s; }
.facility-card-item:hover .facility-img-wrap > img { transform:scale(1.05); }

.facility-card-info { display:flex; align-items:center; gap:15px; padding:20px; }
.facility-icon-wrap { width:40px; height:40px; display:flex; align-items:center; justify-content:center; color:#8aacc7; flex-shrink:0; }
.facility-icon-wrap i { font-size:20px; }
.facility-text-wrap { flex:1; }
.facility-card-title { font-size:20px; color:#fff; margin-bottom:6px; }
.facility-card-desc { font-size:15px; color:#d3d3d3; }



/* 문의 */
.cs-banner{width: 100%; background-color: #b5b5b5; padding: 80px 0; margin: 0 auto;}
.cs-banner-wrap { width: 1200px; margin: 0 auto;display: flex; align-items: center; justify-content: space-between;}
.cs-banner-wrap .cs-box { flex: 1; display: flex; align-items: center; justify-content: center; gap: 20px; padding: 10px 0; box-sizing: border-box; }
.cs-banner-wrap .cs-box.border-left { border-left: 1px solid #e5e5e5; }
.cs-banner-wrap .cs-box .icon-area { font-size: 46px; color: #4697d9; display: flex; align-items: center; justify-content: center; }
.cs-banner-wrap .cs-box .text-area { display: flex; flex-direction: column; justify-content: center; }
.cs-banner-wrap .cs-box .text-area h4 { font-size: 20px; font-weight: 700; color: #0c304d; margin: 0 0 6px 0; letter-spacing: -0.5px; }
.cs-banner-wrap .cs-box .text-area p { font-size: 17px; color: #000; margin: 0; line-height: 1.45; letter-spacing: -0.3px; }
.cs-banner-wrap .cs-box .tel-area { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; }
.cs-banner-wrap .cs-box .tel-area .tel-num { font-size: 34px; font-weight: 800; color: #0c304d; text-decoration: none; letter-spacing: -0.5px; margin-bottom: 8px; line-height: 1; }
.cs-banner-wrap .cs-box .tel-area .tel-sub { display: flex; align-items: center; gap: 14px; font-size: 14px; color: #000; font-weight: 500; }
.cs-banner-wrap .cs-box .tel-area .tel-sub i { color: #4697d9; font-size: 14px; }


@media (max-width:1200px) {
	.main{min-height:0;}
	
	/* main */
	.mainSlide_item { height: 350px; }
    .mainSlide>.mainSlideSwiper>.swiper-wrapper>.swiper-slide>.mainSlide_item>.mainSlide_txt { left: 20px; right: 20px; top: 45%; transform: translateY(-50%); width: auto; }
    .mainSlide>.mainSlideSwiper>.swiper-wrapper>.swiper-slide>.mainSlide_item>.mainSlide_txt>.line { margin-bottom: 16px; }
    .mainSlide>.mainSlideSwiper>.swiper-wrapper>.swiper-slide>.mainSlide_item>.mainSlide_txt>.sub { font-size: 12px; letter-spacing: 3px; margin-bottom: 10px; }
    .mainSlide>.mainSlideSwiper>.swiper-wrapper>.swiper-slide>.mainSlide_item>.mainSlide_txt>h2 { font-size: 26px; line-height: 1.4; letter-spacing: -1px; }
    .mainSlide>.mainSlideSwiper>.swiper-wrapper>.swiper-slide>.mainSlide_item>.mainSlide_txt>p { font-size: 14px; margin-top: 15px; line-height: 1.6; }
    .mainSlide .swiper-pagination { bottom: 20px !important; }
	
	/* 바로가기 */
	.quick-menu-section{padding:20px 12px;background:#343a46;}
	.quick-menu-section>.inner{width:100%;}
	.quick-menu-wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;}
	.quick-item{background:none;border:0;box-shadow:none;padding:0;min-height:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;}
	.quick-item:hover{transform:none;background:none;border:0;box-shadow:none;}
	.quick-item:nth-child(5){display:none;}
	.quick-icon{width:52px;height:52px;margin:0 0 10px 0;border-radius:50%;background:rgba(255,255,255,.08);color:#53a633;font-size:18px;display:flex;align-items:center;justify-content:center;}
	.quick-item:hover .quick-icon{background:rgba(83,166,51,.18);color:#6fc54f;}
	.quick-text{width:100%;}
	.quick-text h3{margin:0;font-size:12px;font-weight:600;line-height:1.4;color:#fff;}
	.quick-text p{display:none;}
	.quick-arrow{display:none;}
	
	/* 고인현황 */
	.deceased-section{padding:45px 0 60px;}
	.deceased-section>.inner{width:100%;padding:0 15px;}
	.deceased-section>.inner>.section-header{align-items:center;margin-bottom:20px;}
	.deceased-section>.inner>.section-header>.header-left>.flower-icon{width:42px;margin-right:10px;}
	.deceased-section>.inner>.section-header>.header-left>.title-group>h2{font-size:24px;}
	.deceased-section>.inner>.section-header>.header-left>.title-group>p{font-size:13px;}
	.deceased-section>.inner>.section-header>.btn-detail{padding:6px 14px;font-size:12px;}
	.deceased-section>.inner>.deceased-table{border:0;}
	.deceased-section>.inner>.deceased-table>colgroup{display:none;}
	.deceased-section>.inner>.deceased-table>thead{display:none;}
	.deceased-section>.inner>.deceased-table>tbody>tr{display:block;background:#fff;border:1px solid #e5e5e5;border-radius:12px;margin-bottom:18px;padding:8px 0;box-shadow:0 5px 18px rgba(0,0,0,.05);overflow:hidden;}
	.deceased-section>.inner>.deceased-table>tbody>tr>td{display:flex;align-items:flex-start;padding:12px 15px;border:0;border-bottom:1px dashed #ececec;text-align:left;font-size:13px;line-height:1.7;}
	.deceased-section>.inner>.deceased-table>tbody>tr>td:last-child{border-bottom:0;}
	.deceased-section>.inner>.deceased-table>tbody>tr>td::before{display:block;width:72px;flex-shrink:0;font-size:12px;font-weight:700;color:#1c2742;}
	.deceased-section>.inner>.deceased-table>tbody>tr>td.room-name::before{content:"빈소";}
	.deceased-section>.inner>.deceased-table>tbody>tr>td.deceased-name::before{content:"고인명";}
	.deceased-section>.inner>.deceased-table>tbody>tr>td.mourner-list::before{content:"상주명";}
	.deceased-section>.inner>.deceased-table>tbody>tr>td:last-child::before{content:"장례정보";}
	.deceased-section>.inner>.deceased-table>tbody>tr>td.room-name{font-size:14px;font-weight:700;color:#222;}
	.deceased-section>.inner>.deceased-table>tbody>tr>td.deceased-name{font-size:14px;font-weight:700;}
	.deceased-section>.inner>.deceased-table>tbody>tr>td.mourner-list{white-space:pre-line;color:#555;}
	.deceased-section>.inner>.deceased-table>tbody>tr>td>.info-list-wrapper{display:block;width:100%;}
	.deceased-section>.inner>.deceased-table>tbody>tr>td>.info-list-wrapper>.info-list{width:100%;}
	.deceased-section>.inner>.deceased-table>tbody>tr>td>.info-list-wrapper>.info-list>li{padding-left:0;margin-bottom:6px;font-size:13px;}
	.deceased-section>.inner>.deceased-table>tbody>tr>td>.info-list-wrapper>.info-list>li::before{display:none;}

	/* video */
	.memorial-section{padding:28px 15px;background-position:5% center;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;}
	.memorial-section>.content-wrap{width:100%;display:flex;flex-direction:column;gap:16px;}
	.memorial-section>.content-wrap>.content-text{width:100%;text-align:center;order:1;}
	.memorial-section>.content-wrap>.content-text>h2{margin-bottom:8px;font-size:24px;line-height:1.4;}
	.memorial-section>.content-wrap>.content-text>h2>span{margin-top:3px;}
	.memorial-section>.content-wrap>.content-text>p{margin-bottom:14px;font-size:14px;line-height:1.7;}
	.memorial-section>.content-wrap>.content-text>.btn-more{padding:8px 22px;font-size:13px;border-radius:30px;}
	.memorial-section>.content-wrap>.content-video{width:100%;order:2;}
	.memorial-section>.content-wrap>.content-video>.video-wrapper{width:100%; max-width:340px; margin:0 auto; padding-bottom:56.25%; border-radius:12px; overflow:hidden; box-shadow:0 6px 18px rgba(0,0,0,.18);}
	.memorial-section>.content-wrap>.content-video>.video-wrapper>iframe{pointer-events:auto; transform:scale(1.12); }
	
	/* special */
	.facility-section{width:100%;margin:50px 0;padding:0 15px;}
	.facility-inner{position:relative;}
	.facility-top-bar{display:block;margin-bottom:18px;}
	.facility-title-area{text-align:center;}
	.facility-main-title{font-size:25px;line-height:1.35;margin-bottom:8px;}
	.facility-sub-title{font-size:14px;line-height:1.6;}
	.facility-control-area{position:absolute;left:0;top:53%;width:100%;transform:translateY(-50%);pointer-events:none;z-index:30;}
	.facility-prev-btn{position:absolute;left:5px;width:40px;height:40px;border:none;border-radius:50%;background:rgba(255,255,255,.95);color:#444;box-shadow:0 5px 15px rgba(0,0,0,.15);pointer-events:auto;}
	.facility-next-btn{position:absolute;right:5px;width:40px;height:40px;border:none;border-radius:50%;background:rgba(255,255,255,.95);color:#444;box-shadow:0 5px 15px rgba(0,0,0,.15);pointer-events:auto;}
	.facility-prev-btn:hover,.facility-next-btn:hover{background:#8cb24a;color:#fff;}
	.facility-pagination{position:static;margin-top:18px;text-align:center;}
	.facilitySwiper{overflow:visible;}
	.facilitySwiper>.swiper-wrapper>.swiper-slide{opacity:.45;transition:.35s;}
	.facilitySwiper>.swiper-wrapper>.swiper-slide-active{opacity:1;}
	.facility-card-item{border-radius:16px;}
	.facility-img-wrap{height:200px;}
	.facility-card-info{padding:16px;}
	.facility-icon-wrap{width:38px;height:38px;}
	.facility-icon-wrap i{font-size:18px;}
	.facility-card-title{font-size:18px;margin-bottom:5px;}
	.facility-card-desc{font-size:13px;line-height:1.5;}
	.facility-pagination{display:none;}
	
	.cs-banner{padding:10px 15px;}
	.cs-banner-wrap{width:100%;flex-direction:column;}
	.cs-banner-wrap .cs-box{width:100%;padding:15px 0;justify-content:center;gap:15px;}
	.cs-banner-wrap .cs-box.border-left{border-left:0;border-top:1px solid rgba(255,255,255,0.2);}
	.cs-banner-wrap .cs-box .icon-area{width:40px;min-width:40px;font-size:30px;}
	.cs-banner-wrap .cs-box .text-area{align-items:flex-start;text-align:left;}
	.cs-banner-wrap .cs-box .text-area h4{font-size:16px;margin-bottom:4px;}
	.cs-banner-wrap .cs-box .text-area p{font-size:13px;line-height:1.45;}
	.cs-banner-wrap .cs-box .tel-area{align-items:center;}
	.cs-banner-wrap .cs-box .tel-area .tel-num{font-size:28px;margin-bottom:5px;}
	.cs-banner-wrap .cs-box .tel-area .tel-sub{font-size:12px;}


}