@charset 'utf-8';


/* [Tablet] 768px 이상 */
@media screen and (min-width: 768px) {
	.web-only { display:block !important; }
	.mobile-only { display:none !important; }
	.web-only-flex { display:flex !important; }
	
	.wrap { padding-top: 100px; }
	.site-header { height:100px; /* background-color:transparent; */ }
	.site-header__logo-link { width:210px; height:59px; }
	.site-nav { display:block; }
		
	.site-footer__inner { padding:50px; }
	.site-footer__content { display:flex; gap:150px; }
	.site-footer__info { border-top:0; margin-top:0; padding-top:0; }
	.site-footer__nav-item { font-size:16px; }
	
	/* 1. DRESS */
	.bride-dress__list { grid-template-columns: repeat(3, 1fr); gap: 35px 30px; }
	.brand__name { font-size:24px; margin-top:10px; }
	.brand-detail__visual .swiper-wrapper { display: grid; grid-template-columns: repeat(2, 1fr); gap:32px; }
	.brand-detail__visual .swiper-slide { aspect-ratio: 844 / 1070; }
	.dress-page .brand-detail__visual .swiper-pagination { display:none !important; }
	.brand-detail__title { font-size:48px; }
	.brand-detail__name { font-size:28px; }
	.brand-detail__desc { font-size:19px; }
	.related-collection__title { font-size:46px; }
	.related-collection__desc { font-size:19px; color: #484643; }
	.related-collection__name { font-size:24px; line-height:1.1; }
	
	/* modal-contact */
	.modal-contact__panel,
	.modal-contact.is-open .modal-contact__panel { transform: translateY(-50%); }
	.modal-contact__panel { max-width:520px; margin:0 auto; bottom:auto; top:50%; }
	.modal-contact__head { background-color:#fff; padding:40px 40px 0 40px; justify-content: flex-start; }
	.modal-contact__head > div { display: flex; flex-direction: column-reverse;  align-items: flex-start; gap:4px; }
	.modal-contact__brand { color:#1C1A18; text-align:left; font-size:48px; line-height: 1.2; }
	.modal-contact__title { color:#C9A96E; text-align:left; font-size:24px; }
	.modal-contact__close { display:block; }
	.modal-contact__body { padding:40px; }
	.contact-calendar__panel { max-width: 380px; }
	.contact-calendar { padding:24px; }
	
	/* 2. STUDIO */
	.sub-header__title { font-size:48px; }
	.studio-card__name { font-size:23px; }
	.brand-detail__visual.brand-visual--masonry .swiper-wrapper { gap:20px; grid-template-columns: repeat(10, 1fr); grid-auto-rows: min-content; }
	.brand-detail__visual.brand-visual--masonry .swiper-slide:nth-child(4n+1) { grid-column: span 6; }
	.brand-detail__visual.brand-visual--masonry .swiper-slide:nth-child(4n+2) { grid-column: span 4; }
	.brand-detail__visual.brand-visual--masonry .swiper-slide:nth-child(4n+3) { grid-column: span 4; }
	.brand-detail__visual.brand-visual--masonry .swiper-slide:nth-child(4n+4) { grid-column: span 6; }
	.brand-detail__visual.brand-visual--masonry .swiper-pagination { display:none; }
	
	/* 3. HALL */
	.hall-list { grid-template-columns: repeat(2, 1fr); gap: 32px 8px; }
	.hall-list__thumb { aspect-ratio: 1 / 1; }
	.hall-list__info { margin-top:10px; }
	.hall-list__name { font-size:25px; }
	.hall-list__details {  font-size:20px; margin-top: 4px; }
	.hall-list.is-all-view .hall-list__info { margin-top:10px; }
	.hall-list.is-all-view .hall-list__name { font-size: 25px; }
	.hall-list.is-all-view .hall-list__details { font-size:20px; gap: 15px; }
	.hall-list.is-all-view .hall-list__tag:after { right: -10px; }
	.hall-more { margin-top:74px; }
	.btn-history-back { font-size:19px; } 
	.brand-detail__category { font-size:18px; }
	.sub-contents__title { font-size:25px; }
	.info-list { gap:30px; grid-template-columns: repeat(2, 1fr); }
	.info-list .info-list__group { gap:30px; }
	.info-list__label { font-size:25px; }
	.info-list__value { font-size:19px; }
	.info-list__group .page-cta { margin:0 auto; }
	.common-tab.is-swiper .common-tab__item { width: auto; }
	
	.map-toggle-box { margin-top:14px; border-bottom:1px solid #1C1A1833; }
	.btn-map-toggle { font-size:22px; height:55px; }
	.btn-map-toggle span { gap:14px; }
	.btn-map-toggle span::after { width:34px; height:34px; }
	
	/* 4. PARTNERS */
	.brand-detail__visual.is-partners { margin-top:62px; }
	.brand-detail__summary { font-size:19px; margin-top:20px; padding-right:300px; }
	.brand-detail__visual.is-partners .swiper-wrapper { display:flex; gap:0; }
	.brand-detail__visual.is-partners .swiper-slide { aspect-ratio:auto; }
	.brand-detail__visual.is-partners .swiper-pagination { top:auto; right:48px; bottom:48px; width:73px; height:35px; font-size:24px; }
	.follow-instagram__name { font-size: 24px; line-height: 1.1; }
	
	/* 5. MOMENT */
	.moment-list { grid-template-columns:repeat(2, 1fr); gap:24px; }
	.moment-list__info { padding:24px; }
	.moment-list__date { font-size:19px; }
	.moment-list__subject { font-size:22px; margin-top:10px; }
	.moment-list__desc { font-size:17px; margin-top:10px; }
	.view-article__body { margin-top:52px; }
	.view-article__date { font-size:32px; line-height:1.1; }
	.view-article__title { font-size:32px; line-height:1.1; margin-top:10px; }
	.view-article__img { margin-bottom:44px; }
	.view-article__text { font-size:17px; line-height:2.2; }
	.view-article__footer { margin-top:36px; }
	.btn--white { width:160px; height:50px; font-size:20px; }
	.post-nav { margin:0; padding:0; margin-top:36px; padding-top:36px; border-top:1px solid #1C1A1833; background-color:transparent; }
	.post-nav__item { height:auto; margin-bottom:15px; grid-template-columns: 110px 1fr 85px; }
	.post-nav__label { font-size:13px; }
	.post-nav__link { font-size:16px; }
	.post-nav__date { font-size:13px; }
	
	/* 6. EVENT */
	.sub-header__location { display:block; }
	
	.event-info { gap:88px; }
	.event-info__card:before { top:-44px; }
	.event-info__title { font-size:30px; }
	.event-info__desc { font-size:19px; }
	.event-info__list { margin-top:33px; } 
	.event-info__num { font-size:22px; }
	.event-info__item .event-info__num:after { width:34px; height:34px; left: 35px; }
	.event-info__content { padding-left:35px; }
	.event-info__platform { font-size:22px;  }
	.event-info__benefit { font-size:22px; }
	.review-event-banner { margin-top:56px; }
	.event-notice__title { font-size:30px; }
	.event-notice__list { display: grid;  grid-template-columns: repeat(2, 1fr); gap: 24px 56px; margin-top:19px; }
	.event-notice__list li { font-size:15px; border-bottom: 1px solid #1C1A1833; padding: 15px 0; display: grid; grid-template-columns: 30px 1fr; gap:15px; margin-top: 0; align-items:center; }
	.event-notice__list li .num { display: flex; align-items: center; justify-content: center; width: 30px; height: 30px; border: 1px solid #C9A96E; font-size: 15px; text-align: center; font-family: 'Cormorant Garamc-application__titleond', serif; }
	.event-notice__list li .num:before { content: "0"; }
	.event-notice__list li .num:after { display:none; } 
	.c-application__title { font-size:48px; }
	.c-application__summary { font-size:20px; margin-top:27px; }
	.input-item__label { font-size:24px; }
	.c-input { height:75px; font-size:20px; }
	.custom-placeholder { font-size:20px; }
	.custom-placeholder small { font-size:18px; }
	.c-form__agree label { font-size:20px; }
	.c-form__agree label span:before { top:3px; }
	.submit-btn { height:65px; font-size:28px; }
	
	
	/* 7. ABOUT */
	.story-intro__content { margin-top:36px; padding-top:66px; border-top:1px solid #1C1A18; display:flex; justify-content:space-between; gap:50px; }
	.story-intro__slogan { font-size:25px; width:300px; flex-shrink: 0; }
	.story-intro__description { font-size:19px; margin-top:0; }
	
	.philosophy-card__content { margin-top:40px; }
	.philosophy-card__label { font-size:25px; }
	.philosophy-card__desc { font-size:19px; margin-top: 16px; }
	
	.story-cta__title { font-size:145px; }
	.story-cta__title .t-line1 { }
	.story-cta__title .t-line2 { }
	.story-cta__sub-text { font-size:29px; margin-top:0; }
	
	.story-cta__action { margin-top:60px; }
	.story-cta__action .btn-contact { max-width:442px; margin:0 auto; }
	.location-intro__eng { font-size:46px; }
	.location-intro__kor { font-size:21px; }
	.location-info { display:flex; gap:70px; justify-content:flex-end; margin-top:48px; }
	.location-info__item { margin-top:0; }
	.location-info__item dt { font-size:25px; }
	.location-info__item dd { font-size:19px; }
	.location-info__item.tel dt { font-size:19px; }
	
	.location-action { display:flex !important; justify-content:flex-end; margin-top:40px; } 
	
	#map .map-inner { height:450px; }
	
	/* 8. CONTACT */
	.c-form .modal-contact__date .modal-contact__input { height: 75px; font-size: 20px; }
	.c-form .modal-contact__calendar { height:75px; }
}

@media screen and (min-width: 970px) {
	.story-cta__title .t-line2 { text-align:right; }
	.story-cta__sub-text { text-align:right; padding-right: 267px; }
}

/* [Laptop] 1024px 이상 */
@media screen and (min-width: 1024px) {
	/* 태블릿 가로 모드 및 소형 노트북 대응 */
	.site-header__logo { padding-left:50px; }
	.site-nav { right:50px; }
	.site-nav__list { gap:40px; } 
	.site-nav__item:last-of-type .site-nav__col { left:auto; right:-50px; }
	
	.site-footer__content { margin-top:0; gap:75px; }
	.site-footer__inner { display:flex; justify-content:space-between; margin:0 auto; }
	
	/* 6. EVENT */
	.c-application { display:grid; grid-template-columns:repeat(2, 1fr); margin-top:60px; padding-bottom:60px; }
	.c-application__title br { display:block; } 
	
	
}

/* [Desktop] 1280px ~ 1440px */
@media screen and (min-width: 1280px) {
	/* 일반적인 웹사이트 컨텐츠 영역(Container)의 최대 폭을 정의 */
	.site-header { border-bottom:0; }
	.site-header__logo { padding-left:100px; }
	.site-nav { right:100px; }
	
	.site-footer__inner { padding:67px 100px 80px 100px; }
	.site-footer__brand-name { font-size:60px; }
	.site-footer__content { gap:180px; padding-top:25px; } 
	
	.container.sub-page { padding: 0 100px 116px 100px; }
	
	.btn-history-back { font-size:24px; height:48px; gap:0; }
	.btn-history-back:before { width:48px; height:48px; background-size:17px auto; }
	.sub-header__title { font-size:56px; margin-top:24px; }
	.site-footer__nav-cont { margin-top:24px; }
	.site-footer__nav-item { margin-top:16px; }
	.site-footer__nav-item .web-only { display: inline !important; }
	.site-footer__info-text { font-size:14px; }
	.site-footer__info-text span { margin-bottom:8px; }
	.site-footer__policy { font-size:14px; border-top:0; padding-top:0; margin-top:40px; }
	.site-footer__copyright { font-size:14px; }
	
	/* 1. DRESS */
	.sub-header { padding-top:48px; }
	.sub-header.is-brand-mode { padding-bottom:0; }
	.dress-tab { top:100px; margin:0; margin-top: 48px; gap:42px; height:100px; padding:8px 0; border-top:1px solid #1C1A1833; border-bottom:1px solid #1C1A1833; }
	.dress-tab .button { font-size:32px; padding: 0 24px; }
	.dress-tab li::after { content: ''; position: absolute; left: 4px; right: 4px; bottom: 0; height: 2px; background: #C9A96E; opacity:0;  transition: opacity 0.2s ease; } 
	.dress-tab li:hover:after { opacity:1; } 
	.dress-tab [data-target].is-active::before { left:0; right:0; }
	.dress-tab__fixed-list { border-right:0; }
	.dress-tab__list { gap:42px; }
	.bride-dress__list { grid-template-columns: repeat(3, 1fr); gap: 74px 80px; }
	.brand__name { font-size:32px; margin-top:16px; }
	
	.dress-contents-group .contents { margin-top:80px; }
	.brand-detail__title { font-size:56px; }
	.brand-detail__name { font-size:40px; margin-top:32px; }
	.brand-detail__desc { font-size:24px; margin-top:16px; }
	
	.brand-detail__visual { margin-top:80px; }
	
	.related-collection { padding-top:116px; margin-top:116px; }
	.related-collection__title { font-size:64px; }
	.related-collection__desc { font-size:24px; margin-top:8px; }
	.related-collection__name { font-size:32px; margin-top:16px; }
	.related-collection__list .swiper-pagination { gap:16px; margin-top:48px; }
	.related-collection__list .swiper-pagination .swiper-pagination-bullet { width:60px; }
	
	.page-cta { max-width:442px; height:72px; font-size:32px; }
	
	/* 2. STUDIO */
	.sub-contents { margin-top:80px; }
	.studio-card__cover { }
	.studio-card__cover img { transition:all 0.4s ease; filter: grayscale(100%); scale: 1; }
	.studio-card__cover:hover img { scale: 1.03; filter: grayscale(0%); }
	.studio-list { gap:48px 24px; }
	.studio-card__name { font-size:32px; margin-top:16px; }
	.brand-detail__visual { margin-top:80px; }
	
	/* 3. HALL */
	.common-tab { margin:0; padding:16px 0; margin-top:48px; border-bottom:1px solid #1C1A1833; border-top:1px solid #1C1A1833; }
	.common-tab__list { justify-content: space-between; }
	.common-tab__item  { flex:none; font-size:32px; }
	.common-tab__item:after { left:0; right:0; }
	.common-tab__item:hover:after { opacity:1; }
	.common-tab__link { width:fit-content; height:60px; margin:0 auto; padding:0 24px; }
		
	.hall-list { gap:48px 24px; }
	.hall-list__info { margin-top:16px; }
	.hall-list__name { font-size:32px; }
	.hall-list__details { font-size:24px; margin-top:8px; gap:30px; }
	.hall-list__tag:after { right:-18px; }
	
	.hall-list.is-all-view { gap:48px 24px; }
	.hall-list.is-all-view .hall-list__info { margin-top:16px; }
	.hall-list.is-all-view .hall-list__name { font-size:32px; }
	.hall-list.is-all-view .hall-list__details { font-size:24px; margin-top:8px; gap:30px; }
	.hall-list.is-all-view .hall-list__tag:after { right:-18px; }
	
	.hall-more { margin-top:116px; }
	.btn-view-more { width:342px; height:60px; font-size:32px; margin:0 auto; }
	.hall-gallery .swiper-pagination { top:auto; right:48px; bottom:48px; }
	.sub-header .brand-detail { margin-top:24px; }
	.brand-detail__category { font-size:24px; }
	.hall-details .brand-detail__name { margin-top:16px; }
	.sub-contents__title { display:none; }
	.info-list { }
	.info-list .info-list__group { height: fit-content; gap:40px 24px; }
	.info-list__label { font-size:32px; } 
	.info-list__value { font-size:24px; }
	.info-list__group .page-cta { margin:0; }
		
	.section-hall-location { margin-top:116px; }
	.map-container { max-width:1280px; height: 598px; margin:0 auto; }
	.map-container .root_daum_roughmap .wrap_map { height: 597px !important; }
	.map-toggle-box { margin-top:24px; }
	.btn-map-toggle { font-size:32px; height:65px; }
	.btn-map-toggle span { gap:24px; }
	.btn-map-toggle span::after { width:44px; height:44px; }
	
	/* 4. PARTNERS */
	.brand-detail__visual.is-partners { margin-top:80px; }
	.brand-detail__summary { font-size:24px; margin-top:16px; padding-right:480px; }
	.event-banner { 	width: 100vw; position: relative; left: 50%; right: 50%; margin-left: -50vw; margin-right: -50vw; margin-top:276px; }
	.follow-instagram { margin-top:160px; }
	.follow-instagram__title { font-size:32px; }
	.follow-instagram__list { margin-top:24px; }
	.follow-instagram__name { font-size: 32px; margin-top: 16px; }
	
	/* 5. MOMENT */
	.moment-list { grid-template-columns:repeat(3, 1fr); }
	.moment-list__info { padding:32px; }
	.moment-list__date { font-size:20px; }
	.moment-list__subject { font-size:24px; margin-top:16px; }
	.moment-list__desc { font-size:18px; margin-top:16px; }
	.view-article__body { margin-top:80px; }
	.view-article__date { font-size:40px; line-height:1.1; }
	.view-article__title { font-size:40px; line-height:1.1; margin-top:16px; }
	.view-article__img { margin-bottom:64px; }
	.view-article__text { font-size:20px; line-height:2.2; }
	.view-article__footer { margin-top:40px; }
	.btn--white { width:200px; height:55px; font-size:24px; }
	.post-nav { margin:0; padding:0; margin-top:40px; padding-top:40px; border-top:1px solid #1C1A1833; background-color:transparent; }
	.post-nav__item { height:auto; margin-bottom:24px; grid-template-columns: 150px 1fr 100px; }
	.post-nav__label { font-size:16px; }
	.post-nav__link { font-size:18px; }
	.post-nav__date { font-size:16px; }
	
	
	/* 6. EVENT */
	.sub-header--custom { margin:0; padding:0; width: 100vw; position: relative; left: 50%; right: 50%; margin-left: -50vw; margin-right: -50vw; }
	.sub-header--custom .sub-header__inner { padding:48px 100px; max-width:1920px; margin:0 auto; }
	.sub-header__location .sub-header__location-item { font-size: 32px; padding-left: 27px; margin-left: 16px; }
	
	.event-info { gap:160px; }
	.event-info__card { padding:24px 0; }
	.event-info__card:before { left:0; right:0; top:-80px; }
	.event-info { padding-top:24px; }
	.event-info__title { font-size:40px; }
	.event-info__desc { font-size:24px; margin-top:4px; }
	.event-info__list { margin-top:56px; }
	.event-info__num { font-size:32px; padding-left:24px; }
	.event-info__item .event-info__num:after { width:44px; height:44px; left:74px; }
	.event-info__content { padding-left:74px; }
	.event-info__platform { font-size:32px; }
	.event-info__benefit { font-size:32px; }
	
	.review-event-banner { position: relative; width: 100vw; left: 50%; right: 50%; margin-left: -50vw; margin-right: -50vw; margin-top:80px; }
	
	.event-notice { position: relative; width: 100vw; left: 50%; right: 50%; margin-left: -50vw; margin-right: -50vw; margin-top:80px; padding:100px; }
	.event-notice__title { font-size:40px; }
	.event-notice__list { gap:24px 56px; margin-top:30px; }
	.event-notice__list li { position:relative; grid-template-columns:36px 1fr; gap:16px; font-size:18px; padding: 20px 0; align-items:center; margin-top:0; }
	.event-notice__list li .num { width:36px; height:36px; font-size:24px; }
	
	.c-application { display:grid; grid-template-columns:repeat(2, 1fr); margin-top:120px; padding-bottom:120px; }
	.c-application__title { font-size:56px; }
	.c-application__summary { font-size:24px; margin-top:38px; }
	.input-item { margin-bottom:32px ;}
	.input-item__label { font-size:30px; }
	.c-input { height:92px; font-size:24px; padding: 0 32px; }
	.c-textarea { padding:32px; }
	.custom-placeholder { left:32px; top:32px; font-size:24px; }
	.custom-placeholder small { font-size:20px; }
	.c-form__agree label { font-size:24px; }
	.c-form__agree label span:before { top: 6px; }
	.submit-btn { max-width:442px; height:75px; font-size:32px; }
	
	/* 7. ABOUT */
	.container.our-story { padding-bottom:280px; }
	.story-intro .contents { padding:48px 0 120px 0; }
	.story-intro__img { margin:0; } 
	.story-intro__content { margin-top:36px; padding-top:66px; }
	.story-intro__slogan { width:370px; font-size:32px; }
	.story-intro__description { font-size:24px; margin-top:0; grid-template-columns:repeat(2, 1fr); max-width:845px; }
	
	.story-philosophy .contents { padding:120px 0; }
	
	.story-philosophy__slider { margin-top:134px; }
	.philosophy-card { padding:0 29px; }
	.philosophy-card:after { content:""; position:absolute; right:-20px; top:0; bottom:0; display:block; width:1px; background-repeat:no-repeat; background-position:center top; background-image:url('../img/contents/line.png'); background-size:100% auto; }
	.philosophy-card__content { margin-top:56px; }
	.philosophy-card__visual img { height:100%; object-fit:cover; }
	.philosophy-card:hover .philosophy-card__visual { aspect-ratio: 80 / 97; }
	.philosophy-card__label { font-size:32px; line-height:1.2; word-break:break-all; }
	.philosophy-card__desc { font-size:24px; margin-top:32px; color:#1C1A18CC; }
	.story-philosophy__title { font-size:96px; }
	.story-philosophy__sub-text { font-size:32px; margin-top:16px; }
	
	.story-cta { position: relative; width: 100vw; left: 50%; right: 50%; margin-left: -50vw; margin-right: -50vw; margin-top:80px; }
	.story-cta .contents { padding:120px 100px; }
	.story-cta__title { font-size:240px; line-height: 1.02; }
	.story-cta__title .t-line1 { }
	.story-cta__title .t-line2 { }	
	.story-cta__sub-text { font-size:40px; padding-right: 535px; }
	
	.story-cta__action { margin-top:80px; }
	.story-cta__action .btn-contact { height:72px; font-size:32px; }
	
	.location-intro__eng { font-size:64px; line-height:1.2; }
	.location-intro__kor { font-size:24px; margin-top:16px; }
	.location-info { gap:150px; }
	.location-info__item dt { font-size:32px; }
	.location-info__item dd { font-size:24px; }
	.location-info__item.tel dt { font-size:24px; }
	
	.location-action { margin-top:68px; } 
	#map { margin-top:68px; padding-top:68px; }
	#map .map-inner { height:706px; }
	
	/* 8. CONTACT */
	.c-form .modal-contact__date .modal-contact__input { height: 92px; font-size: 24px; padding: 0 32px; }
	.c-form .modal-contact__calendar { height:92px; }
	.c-form .c-textarea { font-size:24px; }
}

/* [Full HD] 1920px 디자인 기준 */
@media screen and (min-width: 1920px) {
	/* 1920px 디자인 파일의 여백과 배치를 완벽하게 구현하는 시점 */
	.site-nav__item:last-of-type .site-nav__col { left:-75px; right:auto; }
	

	
	
 	
	
}