@charset "UTF-8";

/* 기본 색상 */
:root {
	--main-color: #232323;
	--conC-bg: #ffffff;
	--history-bg: #ffffff;
	--accent-color: #a1a1a1;
	--dark-main-color: #494949;
	--text-bright-color: #fff;
	--icon-color: #fff;
	--icon-bk-color: #ddd;
	--gray-color: #ddd;
	--large-width: 1000px;
	--middle-width: 800px;
}


/* 기본 설정: 폰트 크기 */
@media (max-width: 599px) {
	:root {
		font-size: 14px;
	}
}

@media (min-width: 600px) and (max-width: 799px) {
	:root {
		font-size: 16px;
	}
}

@media (min-width: 800px) {
	:root {
		font-size: 18px;
	}
}

body {
	font-size: 16px;
}



/* 기본 설정: 페이지 전체 */
body {
	margin: 0;
	font-family: '맑은 고딕',
		'Apple SD Gothic Neo','sans-serif';
}

/* header 헤더 */
header {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 100; /*헤더를 중첩하는 순서 숫자가 '100' 높을수록 가장 위에 보임*/
	width: 100%;
	background-color: rgba(255, 255, 255, 0.9); /* Alpha 1= 붙투명 Alpha */
}
.nohero header {
	position: static;
	border-bottom: solid 1px #ddd;
	border-bottom: solid 1px var(--gray-color);
}
.nohero .about-banner {
	margin-top: 10px;
}

/* head A 사이트 이름 */
.headA {
	display: inline-block;
	line-height: 70px;
	padding-left: 20px;
	padding-right: 20px;
	background-color: #66CBE5;
	background-color: var(--main-color);
	color: #fff;
	color: var(--text-bright-color);
	font-family: 'Montserrat',sans-serif;
	font-size: 24px;
	text-decoration: none;
}

/* head B: 네비게이션 메뉴 */
.headB ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.headB a{
	display: block;
	padding: 15px;
	color: inherit;
	font-size: 12px;
	text-decoration: none;
}

.headB a:hover {
	background-color: rgba(0, 0, 0, 0.3);
}

@media (min-width:768px) {
	header .container {
		display: flex;
		align-items: center;
		justify-content: space-between;
		max-width: 1000px;
		max-width: var(--large-width);
		margin-left: auto;
		margin-right: auto;
	}

	.headB ul {
		display: flex;

	}
}

/* header C:토글 버튼 */
@media(max-width: 767px) {
	/* 작은 화면 전용 설정 Mobile */
	header .container-small {
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

	.headC {
		margin-right: 10px;
		padding: 0;
		border: none;
		outline: none;
		background: none;
		font-size: 28px;
		opacity: 0.5;
		cursor: pointer;
	}

	.headerC:hover {
		opacity: 0.3;
	}

	.headB {
		display: none;
	}
}

@media(min-width: 768px) {
	/* 큰 화면 전용 설정 PC */
	.headC {
		display: none;
	}
	.headB {
		display: block !important;
	}
}
/* 콘텐츠A: main-banner-image 히어로 이미지 Mobile*/

/* 메인 배너: 기존 conA 수정 최소화 버전 */
.conA {
    display: flex;
    flex-direction: column;     /* 글씨 위아래 배치 */
    justify-content: flex-end;  /* 글씨 아래 정렬 */
    align-items: center;        /* 글씨 가로 중앙 */
    height: 100vh;              /* 화면 꽉 차게 */
    background-image: url(img/main_img.jpg); /* 너가 쓰는 경로 유지 */
    background-size: cover;
    background-position: center;
    color: #fff;
    text-align: center;
    padding-bottom: 80px;       /* 글씨를 아래쪽으로 내리는 핵심 */
}

/* 작은 글씨 (sub title) */
.conA .sub {
    font-size: 2.8vw;
    letter-spacing: 2px;
    margin-bottom: 20px;
}

/* 큰 글씨 (메인 타이틀) */
.conA h1 {
    font-size: 10vw;
    font-weight: 700;
    margin: 0;
}

/* 모바일에서 글씨 너무 크게 나오지 않게 조절 */
@media (max-width: 768px) {
    .conA .sub {
        font-size: 5vw;
    }
    .conA h1 {
        font-size: 14vw;
    }
}

/* Mobile size -콘텐츠A: main-banner-image*/

/* 콘텐츠B: 개요(icon+text) */
.conB .container {
	padding-top: 80px;
	padding-bottom: 20px;
}
.conB .text {
	padding: 0 20px 60px 20px;
	text-align: center;
}
.conB h2 {
	margin-top: 0;
	margin-bottom: 10px;
	font-size: 20px;
}
.conB p {
	margin-top: 0;
	margin-bottom: 20px;
	font-size: 14px;
	line-height: 1.8;
	opacity: 0.8;
}
.conB a{
	color: #66CBE5;
	color: var(--main-color);
	text-decoration: none;
	transform: scale(0.98);
	transition: 0.3s;
}
.conB a:hover {
	transform: scale(1.2);
}
.conB i{
	font-size: 50px;
	color: #31523c;
	margin-bottom: 10px;
	transform: scale(0.98);
	transition: 0.3s;
}
.conB i :hover {
	transform: scale(1.2);
}

/*M콘텐츠C: 개요 (icon=text)*/

section.conC{
	background-color: #66CBE5;
	background-color: var(--conC-bg);
	background-color: url(img/conC_bg.jpg)fixed;
	min-height: 500px;
	color: #000000;
	background-size: cover;
}
.conC .text {
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 20px;
	padding-bottom: 20px;
}
.conC h2{
	margin-top: 0;
	margin-bottom: 10px;
	font-size: 20px;
}
.conC p {
	margin-top: 0;
	margin-bottom: 20px;
	font-size: 14px;
	line-height: 1.8;
	opacity: 0.8;
}
.conC a{
	display: inline-block;
	margin-top: 0px;
	padding: 10px 30px;
	border: solid 3px currentColor;
	border-radius: 6px;
	background-color: #B2A83D;
	background-color: var(--accent-color);
	color: #fff;
	color: var(--text-bright-color);
	font-size: 14px;
	text-decoration: none;
}
.conC a:hover {
	background-image: linear-gradient(rgba(255,255,255,0.2));
}
.conC .photo {
	min-height: 300px;
	background-image: url("img/art.jpg");
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	


}
 /*M 콘텐츠 D개요 (icon=text)*/
 .conD .container {
	padding-top: 2px;
}
.conD .text {
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 20px;
	padding-bottom: 20px;
}
.conD h2{
	margin-top: 0;
	margin-bottom: 10px;
	font-size: 20px;
}
.conD p {
	margin-top: 0;
	margin-bottom: 20px;
	font-size: 14px;
	line-height: 1.8;
	opacity: 0.8;
}
.conD a{
	display: inline-block;
	margin-top: 0px;
	padding: 10px 30px;
	border: solid 3px currentColor;
	border-radius: 6px;
	background-color: #B2A83D;
	background-color: var(--accent-color);
	color: #fff;
	color: var(--text-bright-color);
	font-size: 14px;
	text-decoration: none;
}
.conD a:hover {
	background-image: linear-gradient(rgba(255,255,255,0.2),rgba(255,255,255,0.2));
}
.conD .photo {
	min-height: 200px;
	background-image: url("img/h.jpg"); 
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}

/*footer 푸터 */
footer{
	color: #fff;
	color: var(--text-bright-color);
	background-color: #89b4bf;
	background-color: var(--dark-main-color);
}
footer .container {
	padding: 40px 20px;
}

/* 푸터A: 사이트 정보*/
.footA {
	margin-bottom: 30px;
}
.footA h2 {
	margin-top: 0;
	margin-bottom: 10px;
	font-family: 'Montserrat',sans-serif;
	font-size: 30px;
	letter-spacing: 0.2em;
}
.footA p {
	margin-top: 0;
	margin-bottom: 0;
	font-size: 14px;
}
.footA a {
	color: inherit;
	text-decoration: none;
}

/*footer B: 푸터 메뉴*/

.footB div {
	margin-bottom: 20px;
}
.footB h3 {
	margin-top: 0;
	margin-bottom: 10px;
	border-bottom: solid 1px currentColor;
	font-size: 14px;
}
.footB ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
.footB a {
	display: block;
	padding: 5px;
	color: inherit;
	font-size: 12px;
	text-decoration: none;
}
.footB a:hover {
	background-color: rgba(0,0,0,0.3);
}

/* 푸터C: 저작권 */
.footC {
	font-size: 12px;
	text-align: center;
	font-family: 'Montserrat',sans-serif;
}

/* 푸터D: SNS 메뉴 */

.footD {
	margin-top: 20px;
}
.footD ul {
	display: flex;
	margin: 0;
	padding: 0;
	list-style: none;
}
.footD a {
	display: block;
	margin-right: 8px;
	padding: 0;
	color: inherit;
	font-size: 16px;
	text-decoration: none;
	border: solid 1px currentColor;
	width: 2em;
	line-height: 2em;
	border-radius: 50%;
	text-align: center;
}
.footD a:hover {
	background-color: rgba(0,0,0,0.3);
}
/* PC-콘텐츠B: 개요 (아이콘 + 글자) [width=768px]를 기준으로*/
@media (min-width: 768px) {
	.conB .container {
		display: flex;
		max-width: 1000px;
		max-width: var(--large-width);
		margin-left: auto;
		margin-right: auto;
	}
	.conB .text {
		flex: 1;
	}
}
.conB i {
	font-size: 50px;
	color: #31523c;
	margin-bottom: 10px;
	transform: scale(0.98);
	transition: 0.5s;
}
.conB i:hover {
	transform: scale(1.2);
}
 /* PC-콘텐츠C: 개요 (아이콘+글자) [width=768px]를 기준으로 */
 @media (min-width: 768px) {
	.conC .container {
		display: flex;
		max-width: 1000px;
		max-width: var(--large-width);
		margin-left: auto;
		margin-right: auto;
	}
	.conC .photo {
		flex: 3;
		padding-top: 100px;
	}
	.conC .text {
		flex: 2;
		padding: 120px 0;
		/*padding: 50px;*/
	}
 }
/* PC-콘텐츠D 개요 (아이콘+글자) [width=768px]를 기준으로 */
@media (min-width: 768px) {
	.conD .container {
		display: flex;
		flex-direction: row-reverse;
		max-width: 1000px;
		max-width: var(--large-width);
		margin-left: auto;
		margin-right: auto;
		padding-top: 40px;
		padding-bottom: 40px;
	}
	.conD .photo {
		flex: 1;
		padding: 50px;
	}
}

/* pc-footer: 구조 레이아웃 [width=768px]를 기준으로*/
@media (min-width: 768px) {
	footer .container {
		display: flex;
		flex-wrap: wrap;
		max-width: 1000px;
		max-width: var(--large-width);
		margin-left: auto;
		margin-right: auto;
	}
		.footA {
		flex: 0 0 40%;
	}
	.footB {
		flex: 0 0 60%;
	}
	.footC {
		flex: 0 0 100%;
	}
}
 /* PC-footer B: 구조 레이아웃 [width=768px]를 기준으로 */
 @media (min-width: 768px) {
	.footB {
		display: flex;
	}
	.footB div {
		flex: 1;
	}
	.footB div:not(:first-child) {
		margin-left: 40px;
	}
 }
/* about 페이지: post 작성 */

.about-banner {
    width: 100%;
    height: 250px; /* 원하는 높이로 조절 가능 (200~400px 추천) */
    overflow: hidden;
    margin-top: 30px ;
    
}

.about-banner img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* 비율 유지하면서 꽉 채우기 */
    object-position: center; /* 중앙 기준으로 자르기 */
    display: block;
}
.post .container {
	max-width: 800px;
	max-width: var(--middle-width);
	margin-left: auto;
	margin-right: auto;
	padding: 30px 10px;

}
.post h1 {
	padding-left: 20px ;
	font-size: 2rem;
}
.post p {
	font-size: 1rem;
	padding-left: 20px ;
	padding-right: 20px ;
	line-height: 2;
}
/* 소개 페이지: 이미지와 연혁 */
/* ABOUT – HISTORY 섹션을 포스터처럼 */
.history {
  background-color: #a9d7f3;   /* 파란 배경 */
  color: #fff;
}

/* 전체 레이아웃: 왼쪽 텍스트 / 오른쪽 포스터 */

/* HISTORY 전체 박스: 흰색 배경 */
.history-section {
  background-color: #ffffff;
  padding: 40px 20px;
  text-align: left;
}

/* 사진을 위로 */
.history-photo {
  width: 100%;
  max-width: 380px;
  margin: 0 auto 30px auto;
  display: block;
  border-radius: 6px;
}

/* 연도 타이틀 */
.history-year {
  font-size: 32px;
  font-weight: 700;
  margin-top: 40px;
  margin-bottom: 10px;
  color: #000;
}

/* 설명 텍스트 */
.history-desc {
  font-size: 17px;
  margin-bottom: 30px;
  line-height: 1.5;
  color: #333;
}

/* 구분선 */
.history-line {
  width: 100%;
  height: 1px;
  background-color: #ddd;
  margin: 20px 0;
}

/* product 소개 */
.lsitA h1 {
	font-size: 2rem;
	text-align: center;
}
.listA .container {
	display: flex;
	flex-wrap: wrap;
	max-width: 1000px;
	max-width: var(--large-width);
	margin: 30px auto;
}
.listA article {
	flex: 1 1 300px;
	display: flex;
}
.lsitA a{
	flex: 1;
	margin: 10px;
	display: block;
	border: solid 1px #ddd;
	border: solid 1px var(--gray-color);
	color: inherit;
	text-decoration: none;
}
.listA a:hover {
	opacity: 0.8;
}
.listA .photo {
	min-height: 200px;
	background-position: center;
	background-size: cover;
}
.ilstA .text {
	margin: 10px;
}
.listA h2 {
	font-size: 18px;
}
.listA p {
	font-size: 14px;
	opacity: 0.8;
}

/* product_B 소개 */

.lsitB h1 {
	font-size: 2rem;
	text-align: center;
}
.listB .container {
	display: flex;
	flex-wrap: wrap;
	max-width: 1000px;
	max-width: var(--large-width);
	margin: 30px auto;
}
.listB article {
	flex: 1 1 384px;
	display: flex;
}
.lsitB a{
	flex: 1;
	margin: 10px;
	display: flex;
	border: solid 1px #ddd;
	border: solid 1px var(--gray-color);
	color: inherit;
	text-decoration: none;
}
.listB a:hover {
	opacity: 0.8;
}
.listB .photo {
	min-height: 0px;
	background-position: center;
	background-size: cover;
}
.ilstB .text {
	flex: 3;
	margin: 10px;
}
.listB h2 {
	font-size: 18px;
}
.listB p {
	font-size: 14px;
	opacity: 0.8;
}

/*너비가 600px 이하의 미디어에서*/
@media (max-width: 384px) {
	.listB .photo {
		flex: 1;
	}
	.listB p {
		display: none;
	}
}
/* 문의 페이지: 문의 대상*/
.contact {
	margin-top: 20px;
	margin-bottom: 20px;
	padding: 20px;
	border: solid 1px #ddd;
	border: solid 1px var(--gray-color);
	text-align: center;
}
.contact span {
	display: inline-block;
	margin-bottom: 20px;
	font-size: 2.2rem;
	width: 2em;
	line-height: 2em;
	border-radius: 50%;
	text-align: center;
	background-color: #66CBE5;
	background-color: var(--main-color);
	color: #fff;
	color: var(--icon-color);
}
.contact h2 {
	margin-top: 0;
	font-size: 1.2rem;
}
.contact a{
	font-size: 1.4rem;
	color: inherit;
	text-decoration: none;
}
@media (min-width: 768px) {
	.contact-wrap {
		display: flex;
	}
	.contact {
		flex: 1;
		margin-right: 20px;
	}
	.contact:last-child {
		margin-right: 0;
	}
}

/*문의 페이지: 지도*/
.location iframe {
	width: 100%;
	height: 400px;
	vertical-align: bottom;
}
.location h2 {
	margin: 0;
	padding-top: 20px;
	padding-bottom: 20px;
	background-color: #66CBE5;
	background-color: var(--main-color);
	color: #fff;
	color: var(--text-bright-color);
	font-size: 1.5rem;
	text-align: center;
}
/*콘텐츠E 비디오*/
.conE {
	background-color: #66CBE5;
	background-color: var(--main-color);
	color: #fff;
	color: var(--text-bright-color);
}
.conE .text {
	padding: 20px;
}
.conE h2 {
	margin-top: 0;
	margin-bottom: 10px;
	font-size: 20px;
}
.conE p {
	margin-top: 0;
	margin-bottom: 20px;
	font-size: 14px;
	line-height: 1.8;
	opacity: 0.8;
}
.conE video {
	width: 100%;
	position: center;
}
/*PC- 콘텐츠E 개요 (image=text) [width=768 기준으로*/
@media (min-width: 768px) {
	.conE .container {
		display: block;
		width: 1500px;
		margin-left: auto;
		margin-right: auto;
	}
}
/* Hero 이미지 */
.artist-hero img {
    width: 100%;
    height: 280px;
    object-fit: cover;
	margin-top: 80px;
}

/* 기본 정보 */
.artist-name {
    font-size: 40px;
    font-weight: 700;
    margin-top: 30px;
	padding-left: 20px;
}
.artist-sub {
    font-size: 20px;
    color: #777;
    margin-bottom: 20px;
	padding-left: 20px;
}

.follow-btn {
    border: 2px solid #000;
    padding: 10px 40px;
    border-radius: 40px;
    font-size: 18px;
    background: none;
    margin-bottom: 25px;
	margin-left: 20px;
}
.artist-desc {
    font-size: 17px;
    line-height: 1.6;
    color: #444;
	padding-left: 20px;
}
.sub-desc {
	padding-left: 20px;
	padding-bottom: 20px;
}

/* 탭 메뉴 */
.tabs {
    display: flex;
    gap: 30px;
    border-bottom: 1px solid #ddd;
    margin-top: 40px;
    padding-bottom: 12px;
}
.tab {
    font-size: 19px;
    color: #777;
}
.tab.active {
    color: #000;
    border-bottom: 3px solid #000;
    padding-bottom: 12px;
}

/* Artworks 상단 */
.artwork-header h2 {
    font-size: 30px;
    font-weight: bold;
    margin: 30px 0 15px;
}
.artwork-tools {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
}
.alert, .filter {
    color: #666;
    font-size: 16px;
}
.art-count {
    font-size: 17px;
    margin-bottom: 20px;
}


/* 작품 그리드 */
.art-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 25px;
}
.art-card img {
    width: 100%;
    border-radius: 6px;
}
.art-info {
    margin-top: 8px;
}
.art-info h3 {
    font-size: 17px;
    font-weight: 600;
}
.year {
    font-size: 15px;
    color: #555;
}
.price {
    font-size: 15px;
    color: #000;
}
.artwork-header {
	padding-left: 20px;
	padding-right: 20px;
}
.art-grid {
padding: 20px;
padding-right: 20px;
}
.swiper {
  width: 100%;
  height: 300px; /* 원하는 높이로 변경 */
  margin-bottom: 40px;
}

.swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.swiper-button-next,
.swiper-button-prev {
    color: #fff !important;   /* 화살표 색 흰색 */
}
.swiper-pagination-bullet {
    background: #fff !important;   /* 기본 불릿 색상 흰색 */
    opacity: 0.5;                  /* 흐릿하게 */
}

.swiper-pagination-bullet-active {
    background: #fff !important;   /* 활성된 불릿도 흰색 */
    opacity: 1;                    /* 더 선명하게 */
}
.museum-video {
    width: 100%;
    padding: 20px 0; /* 이미지랑 사이 여백 */
    display: flex;
    justify-content: center;
}

.museum-video video {
    width: 90%;       /* 필요하면 100%도 가능 */
    max-width: 800px; /* 너무 커지는 것 방지 */
    border-radius: 10px; /* 모서리 둥글게(optional) */
}
