#container{max-width:100%;}
.sub_content p{word-break: keep-all;}

/* About Page 공통 스타일 */
.sub_content { line-height: 1.7; color: #333; font-family: 'Pretendard', sans-serif; word-break: keep-all; }
.sub_content .inner { max-width: 1200px; margin: 0 auto; padding: 0 20px; }
.pc_only { display: block; }

/* 섹션 공통 */
.info_section { padding: 120px 0;overflow:hidden;}
.grey_bg { background: #f9f9f9; }
.sec_label { font-size: 14px; font-weight: 700; color: #999; margin-bottom: 10px; }
.sec_title { font-size: 40px; font-weight: 700; margin-bottom: 60px; color: #000; position: relative; padding-bottom: 20px; }
.sec_title::after { content: ''; position: absolute; left: 0; bottom: 0; width: 40px; height: 4px; background: #28427a; }

/* 본문 레이아웃 */
/* .content_box { max-width: 900px; } */
.main_statement { margin-bottom: 40px; }
.main_statement_txt{display:flex;flex-flow:row nowrap;justify-content:center;align-items:center;gap: 40px;padding: 40px 16px;border-top: 1px solid #ddd;border-bottom: 1px solid #ddd;}
.main_statement_txt img{width:50%;min-width:200px;}
.main_statement h4 { font-size: 18px; color: #28427a; margin-bottom: 15px; font-weight: 600; }
.main_statement p { font-size: clamp(22px, 2.5vw, 32px); font-weight: 700; color: #111; line-height: 1.4; }
.detail_text p { font-size: 18px; color: #555; margin-bottom: 25px; }

/* 01. 연결 구조 다이어그램 */
.connection_structure { display: flex; align-items: center; gap: 15px; margin: 50px 0; padding: 30px; font-size:clamp(16px, 1.8vw, 32px);background: #fff url(/img/0101_01.jpg) no-repeat center/cover;border-radius: 8px; }
.struct_item { flex: 1; text-align: center; }
.struct_item strong { display: block; font-size:clamp(17px, 1.8vw, 22px); margin-bottom: 8px; color: #fff; }
.struct_item span { font-size: clamp(15px, 1.4vw, 18px); color: #888; display: block; line-height: 1.3; }
.struct_arrow { color: #717171; font-weight: 300; }

/* 02. 비전 사이클 */
.vision_cycle { margin: 40px 0; border-left: 3px solid #28427a; padding-left: 25px; }
.cycle_item { font-size: 20px; font-weight: 600; color: #28427a; margin-bottom: 20px; position: relative; }

/* 요약 카드 */
.summary_card { background: #eee; padding: 40px; margin-top: 50px; border-radius:50px 12px; }
.summary_card h5 { font-size: clamp(14px, 1.4vw, 20px); text-transform: uppercase; margin-bottom: 15px; color: #28427a; }
.summary_card p { font-size: 17px; font-weight: 500; color: #333; }
.summary_card.black { background: #28427a; color: #fff; }
.summary_card.black h5 { color: #fff; }
.summary_card.black p { color: #fff; opacity: 0.9; }

/* 03. 철학 테이블 스타일 */
.philosophy_table { margin-top: 60px; border-top: 2px solid #28427a; }
.p_row.main_p { padding: 25px 0; font-size: 20px; font-weight: 700; color: #000; }
.p_table_grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: #eee; border: 1px solid #eee; }
.p_item { background: #fff; padding: 40px; }
.p_label { display: block; font-size: 13px; font-weight: 800; color: #999; text-transform: uppercase; margin: 15px 0; }
.p_item p { font-size: 17px; font-weight: 600; color: #222; }
.p_item img{width:60px;}

/* 반응형 */
@media (max-width: 980px) {
    .info_section { padding: 80px 0; }
    .pc_only { display: none; }
    .sec_title { font-size: 32px; }
    .connection_structure { flex-direction: column; text-align: left; align-items: center; }
    .struct_arrow { transform: rotate(90deg); margin-left: 4px; }
    .p_table_grid { grid-template-columns: 1fr; }
    .p_item { padding: 30px; }
}


@media (max-width: 767px) {
  .main_statement_txt{flex-direction:column;}
}



/* ============================================================ */


/* Business Page 공통 */
.business_page .main_statement p { color: #28427a; }

/* 01. 비즈니스 개요 다이어그램 */
.business_top{display:flex;flex-flow:row nowrap;align-items: center;gap:40px;}
.biz_cycle_diagram {position:relative; display: flex; flex-flow: row wrap; align-items: center; justify-content: space-between; width: 70%; max-width: 600px;margin: 60px 0; padding:10px;border: 1px solid #e1e1e1; border-radius: 30px; text-align: center; background: #f8f8f8; 
background:radial-gradient(circle farthest-corner at 32% 106%, rgb(244, 243, 238) 0%, rgb(244, 239, 230) 10%, rgb(239, 229, 221) 28%, rgb(240, 214, 214) 42%, transparent 82%), linear-gradient(135deg, rgb(219, 224, 244) 12%, rgb(233, 211, 232) 58%);
background:url(/img/0201_01.jpg) no-repeat center/cover}
.biz_cycle_diagram:before{content:'';display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:70%;aspect-ratio: 1 / 1;border:1px solid rgba(255,255,255,0.2);border-radius:50%;}
.biz_cycle_diagram:after{content:'';display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100px;height:100px;background:url(/img/infinity.png) no-repeat center/cover;}
.cycle_step { flex: 0 0 50%;display: flex;flex-flow: column nowrap;justify-content: center;align-items: center;aspect-ratio: 1 / 1;}
.cycle_step .step_name { display: inline-block; font-size: 14px; font-weight: 800; color: #28427a; background: #fff; padding: 4px 15px; border-radius: 20px; margin-bottom: 15px; }
.cycle_step p { font-size: clamp(14px, 1rem, 18px); font-weight:400; color: #fff; line-height: 1.4; }
.cycle_arrow { color: #28427a; font-size: 24px; animation: rotateInfinite 10s linear infinite; }

@keyframes rotateInfinite {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

/* 02. 비즈니스 영역 그리드 */
.biz_grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px; margin-top: 50px; }
.biz_card { background: #fff; border: 1px solid #eee; padding: 50px 40px; border-radius: 15px; transition: all 0.4s ease; display: flex; flex-direction: column; }
.biz_card:hover { transform: translateY(-10px); box-shadow: 0 20px 40px rgba(0,0,0,0.05); border-color: #28427a; }

/* 카드 헤더 */
.card_header { display: flex; align-items: center; gap: 15px; margin-bottom: 30px; border-bottom: 1px solid #f0f0f0; padding-bottom: 20px; }
.biz_num { font-size: 20px; font-weight: 800; color: #28427a; opacity: 0.3; }
.card_header h4 { font-size: 24px; font-weight: 700; color: #111; }

/* 카드 바디 */
.biz_card .point_txt { font-size: 19px; font-weight: 700; color: #000; line-height: 1.5; margin-bottom: 20px; word-break: keep-all; }
.biz_card .desc_txt { font-size: 16px; color: #666; margin-bottom: 15px; line-height: 1.6; }
.biz_card .bottom_slogan { margin-top: auto; padding-top: 25px; font-size: 15px; font-weight: 600; color: #28427a; border-top: 1px dashed #ddd; }

/* 강조 카드 (06. Offline) */
.biz_card.highlight { background: #28427a; border-color: #28427a; }
.biz_card.highlight.highlight2 { background: #58616d; border-color: #58616d; }
.biz_card.biz_card2{background:#28427a url(/img/0201_area_bg_01.jpg) no-repeat center/cover;}
.biz_card.highlight .card_header h4,
.biz_card.highlight .biz_num,
.biz_card.highlight .point_txt,
.biz_card.highlight .desc_txt,
.biz_card.highlight .bottom_slogan { color: #fff; }
.biz_card.highlight .biz_num { opacity: 0.5; }
.biz_card.highlight .card_header { border-bottom-color: rgba(255,255,255,0.1); }
.biz_card.highlight .bottom_slogan { border-top-color: rgba(255,255,255,0.2); }

/* 반응형 */
@media (max-width: 1024px) {
    .biz_grid { grid-template-columns: 1fr; }
    .business_top{flex-direction:column;align-items: flex-start;gap:0;}
    .biz_cycle_diagram { width:100%;border-radius:12px; }
    .cycle_arrow { transform: rotate(90deg); }
}

@media (max-width: 768px) {
    .biz_card { padding: 40px 25px; }
    .card_header h4 { font-size: 20px; }
    .biz_card .point_txt { font-size: 17px; }
  }
  
  
  @media (max-width: 460px) {
    .biz_cycle_diagram:after{transform: translate(-50%, -59%);}
  .cycle_step{aspect-ratio: 1 / 1.4;}

}


/* ============================================================ */


/* OUR SPACE 페이지 전용 */
.space_page .main_statement p { color: #111; }

/* 메인 비주얼 그리드 */
.main_visual_grid { display: flex; gap: 20px; margin: 50px 0; height: 600px; }
.v_left { flex: 1.5; }
.v_left img { width: 100%; height: 100%; object-fit: cover; border-radius: 10px; }
.v_right { flex: 1; display: flex; flex-direction: column; gap: 20px; }
.v_item { flex: 1; overflow: hidden; border-radius: 10px; }
.v_item img { width: 100%; height: 100%; object-fit: cover; transition: 0.5s; }
.v_item:hover img { transform: scale(1.1); }

/* 투어 섹션 레이아웃 */
.tour_row { display: flex; align-items: center; gap: 60px; margin-bottom: 100px; }
.tour_row.reverse { flex-direction: row-reverse; }
.tour_txt { flex: 1; }
.tour_txt h5 { font-size: 24px; font-weight: 700; color: #28427a; margin-bottom: 15px; }
.tour_txt p { font-size: 17px; color: #666; }

.tour_imgs { flex: 2; display: grid; grid-template-columns: repeat(2, 1fr); gap: 15px; }
.tour_imgs img { width: 100%; height: 250px; object-fit: cover; border-radius: 8px; box-shadow: 0 10px 20px rgba(0,0,0,0.05); }

/* 스페셜 존 4분할 그리드 */
.grid_small { grid-template-columns: repeat(2, 1fr); }

/* 역할 리스트 스타일 */
.role_list { margin: 50px 0; }
.role_item { 
    display: flex; 
    align-items: flex-start; 
    gap: 20px; 
    padding: 25px 0; 
    border-bottom: 1px solid #ddd; 
}
.role_num { 
    font-size: 18px; 
    font-weight: 800; 
    color: #28427a; 
    font-family: 'Montserrat', sans-serif;
    margin-top: 4px;
}
.role_item p { font-size: 19px; font-weight: 600; color: #333; }

/* 하단 블랙 메시지 섹션 */
.black_bg { background: #000 url(/img/0301_01.jpg) no-repeat center/cover; padding: 150px 0; text-align: center; }
.message_box { color: #fff; }
.msg_label { font-size: 14px; letter-spacing: 5px; text-transform: uppercase; color: #666; margin-bottom: 30px; }
.msg_main { margin-bottom: 40px; }
.msg_main .light { font-size: clamp(24px, 3vw, 40px); font-weight: 300; opacity: 0.8; }
.msg_main .bold { font-size: clamp(28px, 4vw, 52px); font-weight: 800; margin-top: 10px; }
.msg_sub p { font-size: 18px; line-height: 1.8; color: #aaa; }



/* 반응형 보정 */
@media (max-width: 980px) {
    .main_visual_grid { height: auto; flex-direction: column; }
    .tour_row, .tour_row.reverse { flex-direction: column; align-items: flex-start;gap: 30px; margin-bottom: 60px; }
    .tour_imgs { grid-template-columns: 1fr 1fr; }
    .tour_imgs img { height: 180px; }.space_feature_img { height: 400px; }
    .role_item p { font-size: 17px; }
    .black_bg { padding: 100px 0; }
}



/* ============================================================ */



/* 아티스트 소개 섹션 전용 */
.artist_intro { padding-bottom: 60px; } /* 목록과의 간격을 위해 하단 패딩 조절 */
.artist_intro .sec_title { margin-bottom: 30px; }
.artist_intro .main_statement p { color: #28427a; font-size: clamp(20px, 2vw, 28px); }

/* 아티스트 가치 키워드 박스 */
.artist_value_box { 
    display: flex; 
    align-items: center; 
    justify-content: space-between; 
    margin-top: 50px; 
    padding: 30px 50px; 
    background: #f9f9f9 url(/img/0401_01.jpg) no-repeat center/cover; 
    border-radius: 100px; /* 둥근 형태의 세련된 디자인 */
    text-align: center;
}
.value_item strong { display: block; font-size: 18px; font-weight: 800; color: #111; margin-bottom: 5px; }
.value_item span { font-size: 14px; color: #888; font-weight: 500; }
.value_divider { width: 1px; height: 30px; background: #ddd; }

/* 반응형 */
@media (max-width: 768px) {
    .artist_value_box { 
        flex-direction: column; 
        gap: 20px; 
        padding: 40px 20px; 
        border-radius: 20px; 
    }
    .value_divider { width: 40px; height: 1px; }
}





/* ============================================================ */
/* 파트너십 소개 섹션 전용 */
.partner_intro { padding-bottom: 60px; }
.partner_intro .main_statement p { color: #28427a; font-size: clamp(20px, 2vw, 28px); }

/* 파트너십 프로세스 박스 */
.partner_process_box { 
    display: flex; 
    align-items: center; 
    justify-content: space-between; 
    margin-top: 60px; 
    padding: 40px; 
    background: #f9f9f9 url(/img/0501_01.jpg) no-repeat center/cover; ; 
    border-radius: 12px;
}
.proc_item { text-align: center; flex: 1; }
.proc_tag { display: inline-block; font-size: 12px; font-weight: 800; color: #28427a; border: 1px solid #28427a; padding: 2px 10px; border-radius: 4px; margin-bottom: 12px; }
.proc_item strong { display: block; font-size: 18px; color: #111; word-break: keep-all; }
.proc_arrow { color: #777; font-weight: 300; font-size: 20px; }

/* 반응형 보정 */
@media (max-width: 768px) {
    .partner_process_box { 
        flex-direction: column; 
        gap: 20px; 
        padding: 30px 20px; 
    }
    .proc_arrow { transform: rotate(90deg); }
}








/* ============================================================ */










/* ============================================================ */