:root { --site-width:1080px; }
/*
========================================================================
RESET
========================================================================
*/
html, body { height: 100%;}
body { }
br { letter-spacing:0; }
body::-webkit-scrollbar { width: 8px; }
body::-webkit-scrollbar-thumb { height: 10%; background: #b7b7b7; border-radius: 5px;}
body::-webkit-scrollbar-track { background: #dcdcdc; }
html, body, pre,h1, h2, h3, h4, h5, h6,
dl, dt, dd, ul, li, ol,th, td, p, blockquote,
form, fieldset, legend,menu, nav, section, hgroup, article, header, aside, footer,
input, select, textarea, button { margin: 0; padding: 0;  text-rendering:optimizeSpeed; }
body,h1, h2, h3, h4, h5, h6, table,
input, select, textarea, a {
    font-size: 16px; line-height: 2; color: #333; font-family: "Jost", "pretendard","Noto Sans KR", Nanum Gothic, AppleGothic, Helvetica, sans-serif;}
h1, h2, h3, h4, h5, h6 { font-weight: normal; }
img, fieldset,button { border:0 none; }
img { vertical-align: top; }
li { list-style: none; }
hr, caption, legend { display: none; }
a { color: #333; text-decoration: none; }
a:hover { }
button { overflow: hidden; cursor: pointer;}
button span { visibility: hidden;}
address, em {font-style: normal; }
button, input, select, textarea { vertical-align: middle;}
select {line-height: 44px;height: 44px;border: 1px solid #999;font-size: 16px;padding-left: 15px;}
input:focus { outline: none; }
table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    table-layout: fixed;
    word-wrap: break-word;
    word-break: keep-all;
}
/*
========================================================================
공통 class
========================================================================
*/
.ir *,
.blind { z-index:-1; position: absolute; display: block; left: 0; top: 0; overflow: hidden; visibility: hidden; width: 0; height: 0; text-indent: -9999px; }
/* block, inline */
.d-block { display: block;}
.d-inline { display: inline;}
/* form */
.txt-right { text-align: right; }
.txt-input1 { padding: 2px 0 0 2px; height: 17px; line-height: 17px; border: 1px solid #e2e9ef; border-top: 1px solid #aaadb2; }
.txt-input2 { padding: 2px 0 0 2px; height: 17px; line-height: 17px; border: 1px solid #dcdcdc; }
.MS_input_txt {height:38px;padding: 5px;line-height: 27px;border: 1px solid #ccc;}
.txt-disabled { background-color: #f6f6f6; }
.chk-rdo { width: 13px; height: 13px; vertical-align: middle; }
.txt-area1 { overflow-y: scroll; padding: 2px 0 0 2px; line-height: 17px; border: 1px solid #e2e9ef; border-top: 1px solid #aaadb2; }
/* file add trick */
.file-wrap { display: inline-block; overflow: hidden; position: relative; height: 23px; width: 280px; vertical-align: middle; background: url(/images/btn/h20_trick_fileadd.gif) no-repeat right 0; }
.file-wrap .file-txt { float: left; border: 0 none; height: 18px; font-size: 12px; line-height: 18px; width: 198px; border: 1px solid #ccc; }
.file-wrap .file-trick { cursor: pointer; position: absolute; right: 0px; top: 0; right: 0; width: 100px; height: 20px; background: none; border: 0 none; opacity: 0; filter: alpha(opacity=0); }
/* font-color */
.fc-red { color: #bd101b; }
.fc-blue { color: #2c6b9e; }
.MS_option_price { color: #FF3C00; }
/* bold */
.bold { font-weight: bold; }
/* float clear */
.clear {zoom: 1;}
.clear:after {content: ""; display: block; clear: both;}
/* margin */
.mr-5 { margin-right: 5px;}
.mr-10 { margin-right: 10px; }
.mr-15 { margin-right: 15px; }
.mr-20 { margin-right: 20px; }
.ml-5 { margin-left: 5px; }
.ml-10 { margin-left: 10px; }
.ml-15 { margin-left: 15px; }
.ml-20 { margin-left: 20px; }
.mt-5 { margin-top: 5px; }
.mt-10 { margin-top: 10px; }
.mt-15 { margin-top: 15px; }
.mt-20 { margin-top: 20px; }
.mb-5 { margin-bottom: 5px; }
.mb-10 { margin-bottom: 10px; }
.mb-15 { margin-bottom: 15px; }
.mb-20 { margin-bottom: 20px; }
/* padding */
.pr-5 { padding-right: 5px; }
.pr-10 { padding-right: 10px; }
.pr-15 { padding-right: 15px; }
.pr-20 { padding-right: 20px; }
.pl-5 { padding-left: 5px; }
.pl-10 { padding-left: 10px; }
.pl-15 { padding-left: 15px; }
.pl-20 { padding-left: 20px; }
.pl-30 { padding-left: 30px; }
.pt-5 { padding-top: 5px; }
.pt-10 { padding-top: 10px; }
.pt-15 { padding-top: 15px; }
.pt-20 { padding-top: 20px; }
.pb-5 { padding-bottom: 5px; }
.pb-10 { padding-bottom: 10px; }
.pb-15 { padding-bottom: 15px; }
.pb-20 { padding-bottom: 20px; }
/* table */
table img { vertical-align: middle; }
.tb-bold { font-weight: bold; }
.tb-center_02,
.tb-btn_02  { text-align: center; }
.tb-left,
.tb-center,
.tb-right { padding:5px; }
.tb-btn { padding: 0; }
.tb-left { text-align: left; }
.tb-center {text-align: center;font-weight: 500;}
.tb-right { text-align: right; }
.tb-label-r5 label { margin-right: 5px; }
.tb-label-r10 label { margin-right: 10px; }
.tb-label-r10 label.last,
.tb-label-r5 label.last{ margin-right: 0; }
.p_s { padding-right: 15px; }
/* table-type-1 */
.table-type-1 { border-top: 1px solid #b7b7b7; border-bottom: 1px solid #b7b7b7; }
.table-type-1 th,
.table-type-1 td { padding: 8px 0 8px; background: url(/images/d3/modern_simple/common/dot_h1_w10.gif) repeat-x 0 bottom; }
.table-type-1 tr.nbg th,
.table-type-1 tr.nbg td { background-image: none; }
.table-type-1 tr.bg th,
.table-type-1 tr.bg td { background-color: #f8f8f8; }
.table-type-1 th { font-weight: normal; }
/* table-type-2 */
.table-type-2 { border-top: 1px solid #b7b7b7; border-bottom: 1px solid #b7b7b7; }
.table-type-2 th,
.table-type-2 td { padding: 8px 0 8px; background: url(/images/d3/modern_simple/common/dot_h1_w10.gif) repeat-x 0 bottom; }
.table-type-2 th { font-weight: normal; }
.table-type-2 tr.nbg th,
.table-type-2 tr.nbg td { background-image: none; }
/* 상품리스트 (메인/검색/상품리스트) */
.prd-list { margin-top: 10px; }
.prd-list table { table-layout: fixed; }
.prd-list table td { border: 0; vertical-align: top; }
.prd-list table .tb-center { /*padding: 0 10px;*/ }
.prd-list table .info { /*padding: 10px 0;*/ }
.prd-list .thumb { /*width: 180px; margin-left: auto; margin-right: auto;*/ font-size:0; line-height: 0; border: 0px solid #f2f4f3; }
.prd-list .thumb a,
.prd-list .thumb img { display: block; width: 100%; /*height: 100%;*/ }
.prd-list .dsc { margin-top: 15px; }
.prd-list .price { display: block; font-size:17px;  color: #999; }
/* 장바구니 리스트, 주문상품 리스트 */
.table-cart { margin-top: 10px; margin-bottom:10px; border-bottom: 1px solid #b7b7b7; }
.table-cart thead th { padding: 7px 0 6px; background-color: #ededed; }
.table-cart tbody td,
.table-cart tfoot { }
.table-cart tbody td { padding: 3px 0 3px; }
.table-cart tbody td .thumb { width: 100px; height: 100px; margin-left: auto; margin-right: auto; font-size: 0; line-height: 0; border: 2px solid #f6f6f6; }
.table-cart tbody td .thumb a,
.table-cart tbody td .thumb img { display:block; width:100px; height:100px; }
.table-cart tbody td .thumb a { font-size: 0; line-height: 0; }
.table-cart tbody td .d-block { padding-bottom: 3px; }
.table-cart tbody tr.nbg td { background-image: none; }
.table-cart tfoot td { border-top: 1px solid #ededed; padding: 5px 0; font-weight: bold; }
.table-cart tfoot strong { color: #e74174; font-size: x-large; }
/* 수량 컨트롤 */
.table-cart .opt-spin { position: relative; width: 60px; height: 26px; margin-left: auto; margin-right: auto; }
.table-cart .opt-spin .txt-spin,
.table-cart .opt-spin .btns { float: right; }
.table-cart .opt-spin .txt-spin { float:left; width: 40px; height: 28px; border: 1px solid #999999; font-size: 14px; text-align: center; margin-top:4px; }
.table-cart .opt-spin .btns { width: 12px; height: 20px; }
.table-cart .opt-spin .btns img { overflow: hidden; float: left; text-indent: -999px; background: none; margin-top:4px; }
/* 주문 - 주문정보 테이블 */
.table-order-info { margin-top: 10px; border-top: 1px solid #b7b7b7; border-bottom: 1px solid #b7b7b7; }
.table-order-info tbody th,
.table-order-info tbody td { padding: 8px 0 7px; background: url(/images/d3/modern_simple/common/dot_h1_w10.gif) repeat-x 0 0; }
.table-order-info tbody th { letter-spacing: -1px; background-color: #ededed; }
.table-order-info tbody th .d-block { font-weight: normal; letter-spacing: 0; }
.table-order-info tbody tr.nbg th,
.table-order-info tbody tr.nbg td { background-image: none; }
/* 마이페이지 디자인 타입2 테이블 리스트, 타이틀 */
.tit-tb-list { margin-top: 30px; font-size: 12px; color: #5f5f5f; padding-left: 10px; background: url(/images/d3/modern_simple/common/bull_h3_sqr_gray.gif) no-repeat 0 45%; }
.table-d2-list { border-top: 2px solid #cdcdcd; border-bottom: 1px solid #cdcdcd; }
.table-d2-list thead th { padding: 6px 0; background-color: #ededed; border-bottom: 2px solid #cdcdcd; }
.table-d2-list tbody td { padding: 6px 0 5px; border-bottom: 1px solid #e3e3e3; }
/* 마이페이지 디자인 타입2 테이블 뷰 */
.table-d2-view { margin-top: 5px; border: 2px solid #cdcdcd; border-bottom: 1px solid #cdcdcd; }
.table-d2-view th, 
.table-d2-view td { padding: 6px 0 5px; border-bottom: 1px solid #cdcdcd; }
.table-d2-view th { font-weight: bold; border-right: 1px solid #e3e3e3; background-color: #ededed; }
/* paging */
.paging { text-align: center; line-height: 0; vertical-align: top; display:inherit; padding: 5px 0; height: 32px; }
.paging li { display: inline; line-height: 32px; }
.paging li a { overflow: hidden; width: auto; height: 15px; padding: 0 7px; color: #999; cursor: pointer; }
.paging li a:hover,
.paging li strong,
.paging li.now a { font-weight: bold; padding: 0 7px; }
.paging li.first a,
.paging li.prev a,
.paging li.next a,
.paging li.last a { padding: 0 3px; }
.paging li.prev { margin-right: 10px; }
.paging li.next { margin-left: 10px; }
/* 현재위치 */
.loc-navi { text-align: right; }
.loc-navi,
.loc-navi a { color: #999; text-transform: capitalize; }
/* 현재위치 */
.navi { text-align: right; }
.navi,
.navi a { color: #999; text-transform: capitalize; font-size:15px; }
/* 페이지 타이틀 */
/* 타입 1*/
#content .tit-page { position: relative; margin-top: 20px; font-size: 0; line-height:0; padding-bottom: 12px; border-bottom: 1px solid #d0d0d0; }
#content .tit-page .dsc { position: absolute; right: 0px; top: 15px; font-size: 11px; color: #a5a5a5; letter-spacing: -1px; }
#content .tit-page .dsc em { color:#333; }
/* 타입 2 */
#content .tit-page-2 { position: relative; margin-top: 15px; padding-bottom: 6px; border-bottom: 1px solid #d0d0d0; }
#content .tit-page-2 .dsc { letter-spacing: -1px; display: inline-block; padding-top: 2px; margin-left: 30px; color: #9b9b9b; }
/* 상품 total/정렬 */
.total-sort { zoom: 1; overflow: hidden; padding-bottom: 5px; border-bottom: 1px solid #e5e5e5; }
/* total */
.total-sort .total { float: left; width: auto; }
.total-sort .total dt,
.total-sort .total dd { display: inline; }
.total-sort .total dd { font-weight: bold; }
.total-sort .total dt { text-transform: capitalize; }
/* sort */
.total-sort .sort { float: right; width: auto; display: inline; margin-right: 20px; }
.total-sort .sort li,
.total-sort .sort li a { float: left; width: auto; }
.total-sort .sort li { display: inline; margin-left: 10px; }
/* 게시판 총게시글,PAGE */
.total-page { zoom: 1; overflow: hidden; }
.total-page .total { float: left; width: auto; }
.total-page .page { float: right; width: auto;}
/* 회원 등급 표시 */
/* 타입 1 */
.mem-lvl { zoom: 1; overflow: hidden; padding: 15px 45px 15px 175px; background-color: #ededed; }
.mem-lvl .lvl-img,
.mem-lvl p { position: relative; float: left; }
.mem-lvl .lvl-img { left: -120px; margin-right: -120px; width: 120px; }
.mem-lvl p { width: 100%; line-height: 22px; }
.mem-lvl p em { color: #be101a; font-weight: bold; }
.mem-lvl span.MS_group_reserve_msg,
.mem-lvl span.MS_group_dc_msg {
    color:#F26622;
}
/* 타입 2 */
.mem-lvl-2 { zoom: 1; overflow: hidden; padding: 15px 45px 15px 175px; border: 5px solid #ededed; }
.mem-lvl-2 .lvl-img,
.mem-lvl-2 p { position: relative; float: left; }
.mem-lvl-2 .lvl-img { left: -130px; margin-right: -130px; width: 120px; border-right: 1px solid #ededed; }
.mem-lvl-2 p { width: 100%; padding-top: 10px; line-height: 16px; }
.mem-lvl-2 p em { color: #be101a; font-weight: bold; }
.mem-lvl-2 span.MS_group_reserve_msg,
.mem-lvl-2 span.MS_group_dc_msg {
    color:#F26622;
}
/* 마이페이지 상단 메시지 박스 */
.t-box-msg { padding: 10px 20px; border: 5px solid #ededed; }
.t-box-msg strong { color: #0178d3; }
/*
========================================================================
공통 - 레이어
========================================================================
*/
/*
========================================================================
공통 - 레아웃
========================================================================
*/
/* z-index */
#layerWrap { z-index: 1; }
/* layout */
#header,
#layerWrap,
#ftLink .link,
#footer { position: relative; width:var(--site-width,1080px); margin-left: auto; margin-right: auto; }
#contentWrapper { position:relative; width:100%; }
#contentWrap:after { content: ""; display: block; clear: both; }
#contentWrapper #contentWrap { width:var(--site-width,1080px); margin:0 auto; }
#aside,
#content { position: relative;float:left  ;}
#contentWrapper #content { position:relative; width:100%; }
#mypage_content { position: relative; float: left; }
#mypage_content { width: 900px;}
/* 상품 미리보기 레이어 */
#detailpage { position: absolute; top: 100px; display: block; width: 640px; padding: 10px 10px 40px; border: 3px solid #93a4b3; background-color: #fff; }
#detailpage .loc { zoom: 1; overflow: hidden; display:none; }
#detailpage .loc span { float: right; width: auto; }
/*
#detailpage .loc span { float: right; width: auto; padding-left: 10px; background: url(/images/d3/modern_simple/common/bull_h5_arow_blue.gif) no-repeat 0 6px; }
*/
#detailpage .hd {display:none;
    margin-top: 10px; padding: 5px 10px 5px 30px; border: 1px solid #becbd7; background: #e0e6ec url(/images/d3/modern_simple/common/bull_h11_sqr_arow.gif) no-repeat 10px 10px;
    -moz-border-radius: 3px; -webkit-border-radius: 3px; border-radius: 3px; }
#detailpage .hd h2 { font-weight: bold; font-size: 16px; color: #666; }
#detailpage .detail { zoom: 1; overflow: hidden; margin-top: 20px; padding-left: 300px; }
#detailpage .thumb-wrap,
#detailpage .txt-wrap { position: relative; float: left; }
#detailpage .close-layer { position: absolute; right: 0px; bottom: 0px; _bottom: -1px; }
/* thumb-wrap */
#detailpage .thumb-wrap { width: 300px; left: -300px; margin-right: -300px; text-align: center; display:none; }
#detailpage .thumb-wrap .btns { margin-top: 10px; font-size: 0; line-height: 0;}
#detailpage .thumb-wrap .btns a { margin-left: 5px; }
#detailpage .thumb-wrap .thumb img { width: 250px; }
/* txt-wrap */
#detailpage .txt-wrap { width: 100%; }
#detailpage .txt-wrap .ptit { font-weight: bold; font-size: 14px; color: #333; border-bottom:2px solid #ccc; }
#detailpage .txt-wrap .opt { margin-top: 5px; }
#detailpage .txt-wrap .opt li { padding: 3px 0; }
#detailpage .txt-wrap .opt li.s-price { color: #a00000; }
#detailpage .txt-wrap .f-btns { margin-top: 10px; padding-top: 10px; border-top: 1px solid #ccc; font-size: 0; line-height: 0; }
#detailpage .txt-wrap .f-btns a { margin-right: 5px; }
/* opt-spin */
#detailpage .opt-spin { display: inline-block; position: relative; width: 36px; height: 20px; }
#detailpage .opt-spin .txt-spin { width: 22px; height: 18px; padding-right: 2px padding-top: 2px; border: 1px solid #acacac; font-size: 11px; text-align: right; }
#detailpage .opt-spin .btns { position:absolute; left: 35px; top:0px; width: 12px; height: 20px; }
#detailpage .opt-spin .btns img { overflow: hidden; float: left; text-indent: -999px; background: none; }
#detailpage .thumb-wrap .btns { margin-top: 10px; font-size: 0; line-height: 0;}
#detailpage .thumb-wrap .btns a { margin-left: 5px; }
/* 게시판 상단 메뉴 */
.board-category-wrap { width: 100%;  margin: 40px 0 30px 0;box-sizing: border-box; }
.board-category { display: grid;  grid-template-columns: repeat(8, 1fr); max-width: var(--site-width,1080px); margin: 0 auto;  border: 2px solid #f8d7de;
 border-radius: 10px; background: #fff; overflow: hidden; }
.board-category-item { position: relative; min-width: 0; }
.board-category-item a { display: flex; min-height: 140px; padding: 20px 10px; box-sizing: border-box; flex-direction: column; align-items: center;
 justify-content: flex-start;  gap: 8px; color: #222; text-align: center; text-decoration: none; transition: background-color 0.2s ease, color 0.2s ease; }
.board-category-item a:hover { background: #fff8f9; color: var(--main-color); }
.board-category-icon { display: flex; width: 50px; height: 50px;  align-items: center; justify-content: center; }
.board-category-icon svg { width: 47px; height: 47px;  fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.board-category-name { display: flex; min-height: 48px; align-items: center;  justify-content: center;
    font-size: 17px; line-height: 1.3; word-break: keep-all;}
.board-category-item.active a { color: var(--main-color);  background: linear-gradient(to bottom, #fff 0%, #fff8f9 100%); font-weight: bold; }
.board-category-item.active::after { position: absolute; right: 28%; bottom: 0;  left: 28%; height: 3px; border-radius: 3px 3px 0 0;  background: #e86578; content: ""; }
select {line-height: 44px;height: 44px; font-size: 16px;padding: 0 15px;border: none;}
.MS_input_txt {line-height: 44px;height: 44px;border-left: 1px solid #ccc;font-size: 16px;padding: 0 15px;border-right: none;border-top: none;border-bottom: none;}
.bbs-tit .bbs-sch .key-wrap a { background:#fff; }
.list_productname { font-weight:bold; }
/* 게시판 공통 - 일반, 겔러리, 컨텐츠링크, 자료실, 미니홈피, 방명록, 동영상 */
#bbsData { width:1100px; margin:0 auto; }
#bbsData .bbs-link { position: relative; }
#bbsData .bbs-link-btm { position:absolute;}
#bbsData .bbs-link-btm { margin: 30px 80px 0 0; text-align: right; display:inline-block; position:absolute; right:0; }
.notice_ico { width:75px; height:30px; background:#e74174; margin:0 auto; border-radius:25px; color:#fff; line-height:29px; }
.tb-right span { font-size:18px; }
.brd-st { width:100px; }
/* 상단 */
.bbs-hd { padding-top:15px; padding-bottom:35px; }
.bbs-hd .link { text-align: center; font-size: 0; line-height: 0; }
.bbs-hd .link li { display: inline; }
.bbs-hd .link li a { padding: 0 12px; font-size:18px; color: #666; letter-spacing: -0.5px; background: url(/images/d3/modern_simple/common/bull_bbs_hd_link.gif) no-repeat left 50%; }
.bbs-hd .link li.last a { background-image: none; }
.bbs-hd .link li a:hover { color:#e74174; }
/* 타이틀 */
.bbs-tit { display:flex; justify-content:space-between; padding: 20px 0 10px 0; }
.bbs-tit strong { display:block; font-size: 36px; }
/* 검색 */
.bbs-tit .bbs-sch { margin-top: 20px; margin-bottom: 10px; text-align: right; border:1px solid #ccc; }
.bbs-tit .bbs-sch label { margin-right: 10px; }
.bbs-tit .bbs-sch .key-wrap { font-size: 0; line-height: 0; }
.bbs-tit .bbs-sch .key-wrap,
.bbs-tit .bbs-sch .keyword,
.bbs-tit .bbs-sch img { vertical-align: middle; }
.bbs-tit .bbs-sch .keyword { width: 125px; height: 14px; padding: 2px 0 0 2px; margin-right: 3px; line-height: 14px; border: 1px solid #ededed; }
.bbs-tit .bbs-sch .key-wrap a { width:44px; background:#fff; padding:11px 20px; position:relative; top:4px; color:#fff; }
.bbs-tit .bbs-sch .key-wrap a img { width:20px; }
.bbs-tit .braket { padding: 0 15px; font-weight: bold; color: #cfcfcf; font-size: 18px; vertical-align: middle; }
.bbs-tit em { margin-left: 10px; font-size: 11px; color: #898989;}
/* 게시판 글쓰기, 목록 이동 링크 */
.bbs-link { font-size: 0; line-height: 0; }
.bbs-link a { color:#333; border:1px solid #999; padding:12px 27px; font-size:17px; margin: 0 5px; }
.bbs-link a.write {color: #fff; background: #333; padding: 12px 27px;font-size: 17px;border: none;}
/* 게시판 글쓰기, 목록 이동 링크 */
.bbs-link a.none { background: url("");}
.bbs-link span { font-size:11px; color:#555; line-height:14px;}
/* 게시판 한줄공지 */
.bbs-online-notice { margin-top: 10px; margin-bottom: -10px; padding: 7px 10px; color: #9d9d9d; border-top: 1px solid #e5e5e5; border-bottom: 1px solid #e5e5e5; }
/* 게시판 타입 - 리스트 */
.bbs-table-list {  }
.bbs-table-list thead th,
.bbs-table-list tbody td  {padding: 8px 0;} 
.bbs-table-list thead th {color: #333;font-size: 18px;border-top: 1px solid #ccc;border-bottom: 1px solid #ccc;}
.bbs-table-list tbody td {border-bottom: 1px solid #ccc;border-top: 1px solid #ccc;font-size:16px;color: #333;}
/* 게시판 타입 - 보기 */
.bbs-table-view { margin-top: 10px; }
.bbs-table-view thead th,
.bbs-table-view tbody td  { padding: 5px;} 
.bbs-table-view thead th {color: #000;font-weight: 600;font-size: 20px;border-top: 1px solid #999;border-bottom: 1px solid #e5e5e5;}
.bbs-table-view tbody td.line { background: url("/images/d3/modern_simple/common/dot_bbs_list.gif") repeat-x 0 bottom;}
.bbs-table-view .btn-dwn { margin-top:15px;}
/* 미니홈피, 방명록 게시글 뷰 */
/* 상단 */
.visit-vhd { margin-top: 10px; border-top: 1px solid #e5e5e5; }
.visit-vhd th,
.visit-vhd td { padding: 3px 0; border-bottom: 1px solid #e5e5e5; font-family: "pretendard", "Noto Sans KR",Nanum Gothic; } 
.visit-vhd .tb-left{ padding: 0 3px; }
.visit-vhd td .tb-no { color: #9c9c9c; }
.visit-vhd td .tb-ctrl,
.visit-vhd td .tb-ctrl a { font-size: 11px; color: #9c9c9c; }
/* 내용*/
.visit-vcont { background: url("/images/d3/modern_simple/common/dot_bbs_list.gif") repeat-x 0 bottom; }
.visit-vcont th,
.visit-vcont td { padding: 6px 0; border-bottom: 1px solid #e5e5e5;} 
.visit-vcont th { font-weight: normal; font-family:  "pretendard","Noto Sans KR",Nanum Gothic; color: #9d9d9d; }
.visit-vcont tr.no-line th,
.visit-vcont tr.no-line td { padding-bottom: 0; border-bottom: 0; }
.visit-vcont tr.dot-line th,
.visit-vcont tr.dot-line td { padding-top: 2px; border-bottom: 1px dotted #e5e5e5; }
.visit-vcont tr.info td .tb-left { padding-left: 0; color: #555;}
.visit-vcont .tb-left{ padding: 0 3px; }
.visit-vcont td .tb-cont { padding: 5px 0; min-height: 250px; _height: 250px; }
.visit-vcont td .tb-cont img { max-width: 100%; }
/* 코멘트 */
.visit-vcmt th,
.visit-vcmt td { padding: 6px 0; vertical-align: top; border-bottom: 1px solid #e5e5e5; }
.visit-vcmt th { color: #c5c5c5; }
.visit-vcmt .tb-tit { font-weight: bold; background: url("/images/d3/modern_simple/common/bull_bbs_hd_link.gif") repeat-y right 0; }
.visit-vcmt td .tb-txt { min-height: 30px; _height: 30px; padding-left: 10px; color: #555; }
.visit-vcmt td .date,
.visit-vcmt td .ctrl { display: block; font-size: 11px; }
.visit-vcmt td .date { color: #555; }
.visit-vcmt td .ctrl { margin-top: 5px; }
.visit-vcmt td .ctrl a { margin-left: 2px; margin-right: 2px; color: #999; font-size: 11px; }
/* 작성 */
.vist-vcmt-reg { margin-top: 10px; border-bottom: 1px solid #e5e5e5; }
.vist-vcmt-reg th,
.vist-vcmt-reg td ,#comment_reply_input th { padding: 6px 0;}
.vist-vcmt-reg th ,#comment_reply_input th { font-weight: normal; color: #9d9d9d; font-family:  "pretendard","Noto Sans KR",Nanum Gothic; }
.vist-vcmt-reg .tb-left ,#comment_reply_input .tb-left{ padding: 0 3px; }
.vist-vcmt-reg th .tb-left { padding-left: 10px; background: url("/images/d3/modern_simple/common/bull_join_required.gif") no-repeat 0 45%; }
/* 게시판 타입 - 쓰기 */
.bbs-table-write { margin-top:10px;}
.bbs-table-write tbody th,
.bbs-table-write tbody td  {padding:10px 0;border-top:1px solid #e5e5e5;border-bottom:1px solid #e5e5e5;color: #333;font-weight:normal;font-size: 17px;} 
/* 게시판 타입 - 비밀번호찾기 */
.bbs-table-pwd { margin-top:25px;}
.bbs-table-pwd table { width:260px; margin-left:auto; margin-right:auto;}
.bbs-table-pwd tbody th,
.bbs-table-pwd tbody td  { padding:6px 0;  border-top:1px solid #e5e5e5; border-bottom:1px solid #e5e5e5; color:#9d9d9d; font-weight:normal; font-size:11px;} 
/* 공통으로 쓰는거 */
textarea { width:600px; height:47px; padding:2px; border:1px solid #EDEDED;}        
.input-style { padding:2px; height:14px; line-height:14px; border:1px solid #EDEDED;}
.cont-sub-des { position:relative;}
.cont-sub-des .writer {  margin:15px 10px; color:#000; padding-right:10px; }
.cont-sub-des span { color:#666;}
.cont-sub-des span em { font-size:11px; color:#9c9c9c;}
.cont-sub-des .hit { position:absolute; top:15px; right:0;}
.cont-sub-des .hit span { margin-right:0;}
.comment-box { border-bottom:2px solid #e5e5e5;}
.bbs-table-view .comment-box td { padding-bottom:20px; border-top:1px solid #e5e5e5; vertical-align:top;}
.comment-box .com-name { margin-right:8px; padding:0 8px; background: url("/images/d3/modern_simple/common/bull_bbs_hd_link.gif") repeat-y 100% 0; font-weight:bold; color:#c5c5c5;}
.bbs-table-view td.com-wrt-box { border:0;}
.com-wrt-box label { padding-left:7px; color:#9d9d9d; background: url("/images/d3/modern_simple/common/bull_join_required.gif") no-repeat 0 50%;}
.com-wrt-box .input-style { margin:0 10px 0 7px; padding:2px; height:14px; line-height:14px; border:1px solid #EDEDED;}
.com-wrt-box .wrt { margin-top:7px;}
.view-link { padding:20px 0;}
/* 게시판 회원 게시글 검색 */
.search_id { background: none repeat scroll 0 0 #FFFFFF; border: 1px solid #DADADA; display: block; padding: 3px; position: absolute; width: 90px; }
/* 개인정보보호정책 동의 */
.new-privercy-contract { text-align: left; }
.new-privercy-contract p { font-weight: bold; margin: 0; margin-bottom: 10px; margin-top: 20px; text-align: left; }
.privercy-contract-tap { position: relative; height:40px; }
.privercy-contract-tap ul { list-style: none; margin: 0; padding: 0; position: absolute; bottom: -1px;  }
.privercy-contract-tap li { border: 1px solid #ccc; border-right: none; background: #F4F4F4; float:left; display: inline-block; }
.privercy-contract-tap li a { display: block; padding: 10px 10px; text-decoration: none; }
.privercy-contract-tap li.end { border-right: 1px solid #ccc; }
.privercy-contract-tap li.sel { background: #FFFFFF; border-bottom: 1px solid #FFFFFF; }
.privercy-contract { clear: both; }
.privercy-contract textarea { clear: both; border: 1px solid #CCC; height: 60px; background: #FFFFFF; padding: 10px; width: 660px; }
.privercy-agree { margin: 10px 0; }
.privercy-agree label{ margin-right: 10px; }
/* item-wrap */

.item-wrap .item-hd{ margin:10px 0; padding:5px 10px; border-top:1px solid #ddd; border-bottom:1px solid #ddd; background:#f9f9f9; }
.item-wrap .item-info{ padding:15px; border:1px solid #eaeaea; color:#000; font-size:18px; overflow:hidden; zoom:1; }
.item-wrap .item-info::after{ display:block; clear:both; content:""; }
.item-wrap .item-info .item-total{ float:left; padding-left:10px; }
.item-wrap .item-info .item-order{ float:right; }
.item-wrap .item-info .item-order li{ float:left; padding:0 15px; background:url("/design/kichmom/djds/bottom/ico_util_footer.gif") no-repeat 0 12px; }
.item-wrap .item-info .item-order li.first{ background:none; }
/* 페이징 list_pagenation */
.list_pagenation { margin:10px 0; font-size:0; line-height:0; text-align:center; }
.list_pagenation .first, .list_pagenation .last, .list_pagenation .next, .list_pagenation .prev { display:inline-block; padding:17px 6px 0; }
.list_pagenation ol { display:inline-block; margin:0; font-size:0; line-height:0; vertical-align:top; }
.list_pagenation li { display:inline-block; margin-left:-1px; color:#757575; vertical-align:top; }
.list_pagenation li:first-child { margin-left:0; }
.list_pagenation img { vertical-align:top; }
.list_pagenation li a { display:block; width:33px; padding:15px 2px; color:#666; font-size:17px; line-height:17px; }
.list_pagenation li a:hover { background:#f0f2f2; text-decoration:none; }
.list_pagenation li a.now { padding-bottom:6px; border-bottom:3px solid #e74174; color:#e74174; font-weight:bold; }
.list_pagenation a.nolink { cursor:default; }
:root { --point-color1:#e74174; }

/* 공통 상품 그리드도 1080px 내부에서 유연하게 */




/* 공통 상품 목록: 메인 / 선물하기 / 베스트50 */
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) { position:relative; display:block; width:100%; min-width:0; padding:0 0 20px; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .prdList { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:30px 18px; width:100%; min-width:0; margin:0; padding:0; list-style:none; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .prdList.grid3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .prdList>li { display:block; position:relative; float:none; width:auto; min-width:0; margin:0; padding:0; box-sizing:border-box; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .prame_box { position:relative; width:100%; max-width:none; background:#fff; box-sizing:border-box; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .thumbnail { position:relative; width:100%; height:auto; overflow:hidden; aspect-ratio:1; background:rgba(0,0,0,.02); }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .thumbnail>a { display:block; width:100%; height:100%; margin:0; line-height:normal; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .thumbnail>a>img { display:block; width:100%; height:100%; border:0; object-fit:cover; mix-blend-mode:multiply; transition:transform .2s; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .thumbnail>a:hover>img { transform:scale(1.03); }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .thumbnail .icon { position:absolute; right:10px; bottom:10px; z-index:1; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .thumb { position:relative; width:100%; min-width:0; overflow:hidden; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .thumb img { display:block; max-width:100%; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .description { display:flex; flex-direction:column; align-items:stretch; gap:5px; margin:0; padding:10px 0; color:#222; font-size:16px; line-height:24px; text-align:left; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .description .brand { display:block; margin:0; color:#222; font-size:16px; font-weight:500; line-height:24px; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .description .brand:empty { display:none; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .description .product-benefit { height:auto; min-height:0; max-height:none; margin:0; padding:0; overflow:hidden; font-size:16px; line-height:24px; white-space:nowrap; text-overflow:ellipsis; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .description .product-benefit:empty { display:none; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .description .etc,:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .description .sub { color:var(--main-color,#e74174); font-size:16px; font-weight:500; line-height:24px; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .description .name { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; width:100%; height:auto; min-height:0; max-height:48px; margin:0; padding:0; overflow:hidden; color:#222; font-size:16px; font-weight:400; line-height:24px; overflow-wrap:anywhere; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .description .name a { color:inherit; font:inherit; text-decoration:none; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .description .spec { display:block; float:none; width:100%; margin:0; padding:0; list-style:none; font-weight:400; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .description .prd-price { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-start; gap:4px 10px; margin:0; padding:5px 0 0; color:#999; font-size:16px; line-height:24px; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .description .prd-price p { margin:0; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .description .discount_rate { float:none; margin:0; color:var(--main-color,#e74174); font-size:20px; font-weight:500; line-height:26px; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .description .prd-price2 { display:inline-block; float:none; margin:0; padding:0; color:#000; font-size:20px; font-weight:600; line-height:26px; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .description .prd-price2-login { float:none; margin:0; color:var(--main-color,#e74174); font-size:19px; font-weight:500; line-height:26px; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .description .consumer,:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .description strike { margin:0; color:#999; font-size:15px; font-weight:400; line-height:18px; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .description strike { text-decoration:line-through; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .description .soldout-price { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .description .sold_out { color:red; font-size:19px; font-weight:500; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .description .ori_price { color:#999; text-decoration:line-through; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .description .icon { margin:0; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .promotion img { width:auto; max-width:100%; height:auto; vertical-align:middle; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .product-colors { display:flex; flex-wrap:wrap; gap:4px; line-height:16px; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .prdList.ranked { counter-reset:product-rank; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .prdList.ranked>li { counter-increment:product-rank; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .product-rank { position:absolute; top:0; left:0; z-index:2; display:flex; align-items:center; justify-content:center; min-width:44px; height:44px; padding:0 8px; box-sizing:border-box; background:#222; color:#fff; font-size:20px; font-weight:600; line-height:1; pointer-events:none; font-variant-numeric:tabular-nums; }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .product-rank::before { content:counter(product-rank,decimal-leading-zero); }
:is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) a:focus-visible { outline:2px solid var(--main-color,#e74174); outline-offset:-2px; }
@media (prefers-reduced-motion:reduce) { :is(.item-wrap,.ec-base-product_main_01_left,.ec-base-product_main_01,.ec-base-product_main_02,.product_main_keyword,.sale-wrap) .thumbnail>a>img { transition:none; } }

.ipo-catalog-toolbar { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; margin:0 0 22px; padding:18px 0; border-top:1px solid #ddd; border-bottom:1px solid #eee; color:#555; font-size:14px; line-height:24px; }
.ipo-catalog-total { margin:0; }
.ipo-catalog-total strong { color:var(--main-color,#e74174); font-weight:600; }
.ipo-catalog-order { display:flex; flex-wrap:wrap; gap:18px; margin:0; padding:0; list-style:none; }
.ipo-catalog-order li { float:none; margin:0; padding:0; background:none; }
.ipo-catalog-order a { color:#777; text-decoration:none; }
.ipo-catalog-order a:hover,.ipo-catalog-order a.is-current { color:var(--main-color,#e74174); }
.ipo-catalog-empty { margin:0; padding:70px 0; color:#888; text-align:center; }


/* 공통 페이지 타이틀: 아래 클래스를 사용하는 페이지에만 적용 */
#content .ipo-page-heading { box-sizing:border-box; width:100%; margin:0; padding:64px 20px 44px; text-align:center; font-family:Pretendard,"Noto Sans KR","Malgun Gothic",sans-serif; }
#content .ipo-page-heading .ipo-page-title { display:block; margin:0; padding:0; border:0; background:none; color:#222; font-family:inherit; font-size:30px; font-weight:700; line-height:1.4; letter-spacing:-.04em; text-align:center; }
#content .ipo-page-heading .ipo-page-subtitle { display:block; margin:10px 0 0; padding:0; color:#777; font-family:inherit; font-size:16px; font-weight:400; line-height:1.6; letter-spacing:-.025em; text-align:center; word-break:keep-all; overflow-wrap:break-word; }
@media (max-width:767px) { #content .ipo-page-heading { padding:40px 16px 32px; } #content .ipo-page-heading .ipo-page-title { font-size:26px; } #content .ipo-page-heading .ipo-page-subtitle { font-size:14px; } }


/* 재사용 배너: 가운데 1080px + 양옆 미리보기, 전체 영역 최대 1600px */
.ipo-banner { position:relative; left:50%; width:100vw; max-width:1600px; transform:translateX(-50%); }
.ipo-banner .ipo-banner-slider { position:relative; width:100%; margin:0; padding:0; overflow:hidden; }
.ipo-banner .swiper-wrapper { display:flex; align-items:stretch; }
.ipo-banner .swiper-slide { position:relative; flex:0 0 auto; width:calc(100% - 96px); max-width:var(--site-width,1080px); height:auto; }
.ipo-banner .swiper-slide>a { display:block; width:100%; }
.ipo-banner .swiper-slide>a>img { display:block; width:100%; height:auto; aspect-ratio:16/5; object-fit:cover; border:0; }
.ipo-banner .ipo-banner-slider.is-single { max-width:var(--site-width,1080px); margin:0 auto; }
.ipo-banner .is-single .swiper-slide { width:100%; max-width:none; }
.ipo-banner .ipo-banner-controls { position:absolute; right:0; bottom:18px; left:0; z-index:5; display:flex; align-items:center; justify-content:flex-end; gap:4px; width:calc(100% - 96px); max-width:var(--site-width,1080px); margin:auto; padding:0 18px; box-sizing:border-box; pointer-events:none; }
.ipo-banner .ipo-banner-controls[hidden],.ipo-banner .ipo-banner-controls [hidden] { display:none!important; }
.ipo-banner .ipo-banner-control-group { display:flex; align-items:center; padding:2px 5px; border-radius:22px; background:rgba(0,0,0,.4); color:#fff; pointer-events:auto; }
.ipo-banner .ipo-banner-controls button { display:flex; align-items:center; justify-content:center; width:30px; height:30px; margin:0; padding:0; border:0; background:transparent; color:#fff; cursor:pointer; }
.ipo-banner .ipo-banner-prev::before,.ipo-banner .ipo-banner-next::before { content:""; width:8px; height:8px; border-top:1.5px solid currentColor; border-right:1.5px solid currentColor; transform:rotate(225deg); }
.ipo-banner .ipo-banner-next::before { transform:rotate(45deg); }
.ipo-banner .ipo-banner-fraction { position:static; width:auto; min-width:48px; margin:0 4px; color:#fff; font-family:inherit; font-size:13px; line-height:30px; text-align:center; font-variant-numeric:tabular-nums; }
.ipo-banner .ipo-banner-pause::before { content:""; width:5px; height:11px; border-right:2px solid currentColor; border-left:2px solid currentColor; }
.ipo-banner .ipo-banner-pause[aria-pressed="true"]::before { width:0; height:0; border:0; border-top:6px solid transparent; border-bottom:6px solid transparent; border-left:9px solid currentColor; }
.ipo-banner .ipo-banner-controls button:focus-visible { outline:2px solid #fff; outline-offset:-2px; }
.ipo-banner .ipo-banner-slider:not(.is-ready) .swiper-wrapper { gap:24px; overflow-x:auto; scroll-snap-type:x mandatory; }
.ipo-banner .ipo-banner-slider:not(.is-ready) .swiper-slide { scroll-snap-align:center; }
.ipo-banner .ipo-banner-slider:not(.is-ready) .ipo-banner-controls { display:none; }




/* 이벤트 본문 공통: 헤더·푸터는 기존 사이트 너비 유지 */
#contentWrapper #content.ipo-event-page { --event-width:750px; --event-bar-height:104px; --event-cta-width:600px; --event-cta-color:#ff3f70; position:relative; float:none; width:var(--event-width); max-width:100%; margin:0 auto; padding:0 0 calc(var(--event-bar-height) + 24px); text-align:center; box-sizing:border-box; }
.ipo-event-page>img,.ipo-event-page>a>img,.ipo-event-page .dday-content img,.ipo-event-page .ipo-event-map>img,.ipo-event-page .intro>img { display:block; width:100%; height:auto; border:0; }
.ipo-event-page .dday-content { width:100%; margin:0 auto; }
.ipo-event-page .ipo-event-map { position:relative; width:100%; container-type:inline-size; }
.ipo-event-page .ipo-event-map>a { position:absolute; display:block; }
.ipo-event-page a:focus-visible,.ipo-event-page button:focus-visible { outline:2px solid #222; outline-offset:3px; }
/* 공통 하단 신청 버튼 */
.ipo-event-page .fixed_bt { position:fixed; bottom:0; left:50%; z-index:999; display:flex; flex-direction:column; align-items:center; justify-content:flex-start; gap:8px; width:var(--event-width); max-width:100%; min-height:var(--event-bar-height); margin:0; padding:15px 16px; box-sizing:border-box; transform:translateX(-50%); background:rgba(255,255,255,.85); box-shadow:0 -5px 15px -8px rgba(0,0,0,.2); -webkit-backdrop-filter:brightness(1.2) blur(10px); backdrop-filter:brightness(1.2) blur(10px); }
.ipo-event-page .ipo-event-cta { display:block; box-sizing:border-box; width:100%; max-width:var(--event-cta-width); margin:0; padding:13px 20px; border:0; border-radius:18px; background:var(--event-cta-color); color:#fff; font-family:inherit; font-size:30px; font-weight:700; line-height:1.4; text-align:center; text-decoration:none; cursor:pointer; }
.ipo-event-page .fixed_bt .sub { margin:0; font-size:24px; font-weight:600; line-height:1.4; }
/* 접이식 상세 안내·FAQ: 세 이벤트에서 재사용 */
.ipo-event-page .dday-seo-section { width:100%; margin:0 auto; background:#fff; text-align:left; }
.ipo-event-page .dday-seo-details { width:100%; margin:0; padding:0; border:0; border-top:1px solid #e7e7e7; border-bottom:1px solid #e7e7e7; background:#fff; }
.ipo-event-page .dday-seo-details>summary { list-style:none; }
.ipo-event-page .dday-seo-details>summary::-webkit-details-marker { display:none; }
.ipo-event-page .dday-seo-summary { display:flex; align-items:center; justify-content:center; margin:0; padding:20px 26px; background:#454545; color:#fff; font-size:16px; font-weight:600; line-height:1.5; cursor:pointer; transition:background .2s; }
.ipo-event-page .dday-seo-summary:hover { background:#383838; }
.ipo-event-page .dday-seo-summary:focus-visible { outline:2px solid #222; outline-offset:-2px; }
.ipo-event-page .dday-seo-arrow { display:block; flex:0 0 auto; width:9px; height:9px; margin-left:20px; border-right:2px solid #fff; border-bottom:2px solid #fff; transform:rotate(45deg); transition:transform .2s; }
.ipo-event-page .dday-seo-details[open] .dday-seo-arrow { transform:rotate(225deg); }
.ipo-event-page .dday-seo-body { padding:32px 38px 40px; color:#555; font-size:15px; line-height:1.8; text-align:left; overflow-wrap:break-word; }
.ipo-event-page .dday-seo-body h1 { margin:0 0 18px; color:#222; font-size:24px; font-weight:700; line-height:1.45; word-break:keep-all; }
.ipo-event-page .dday-seo-body h2 { margin:30px 0 10px; color:#333; font-size:18px; font-weight:700; line-height:1.5; word-break:keep-all; }
.ipo-event-page .dday-seo-body p { margin:0 0 12px; color:#666; font-size:14px; line-height:1.85; word-break:keep-all; }
.ipo-event-page .dday-seo-feature { margin:14px 0 0; padding:17px 20px 17px 38px; border:1px solid #ededed; border-radius:6px; background:#fafafa; }
.ipo-event-page .dday-seo-feature li { margin:4px 0; color:#555; font-size:14px; line-height:1.7; }
.ipo-event-page .dday-seo-faq { margin-top:34px; padding-top:4px; border-top:1px solid #e8e8e8; }
.ipo-event-page .dday-faq-item { padding:18px 0; border-bottom:1px solid #eee; }
.ipo-event-page .dday-faq-item:last-child { border-bottom:0; }
.ipo-event-page .dday-faq-item h3 { position:relative; margin:0 0 6px; padding-left:24px; color:#333; font-size:15px; font-weight:700; line-height:1.6; word-break:keep-all; }
.ipo-event-page .dday-faq-item h3::before { position:absolute; top:0; left:0; color:#555; font-weight:700; content:"Q."; }
.ipo-event-page .dday-faq-item p { margin:0; padding-left:24px; color:#777; font-size:14px; line-height:1.75; word-break:keep-all; }
/* 앱 신청 QR 팝업 */
.ipo-event-page .app-qr-modal { display:none; position:fixed; inset:0; z-index:2000; align-items:center; justify-content:center; }
.ipo-event-page .app-qr-modal.is-open { display:flex; }
.ipo-event-page .app-qr-backdrop { position:absolute; inset:0; background:rgba(0,0,0,.55); }
.ipo-event-page .app-qr-dialog { position:relative; z-index:1; width:460px; max-width:calc(100vw - 32px); max-height:calc(100vh - 32px); overflow-y:auto; padding:48px 45px 36px; box-sizing:border-box; border-radius:24px; background:#fff; text-align:center; box-shadow:0 15px 45px rgba(0,0,0,.22); }
.ipo-event-page .app-qr-close { position:absolute; top:14px; right:18px; width:40px; height:40px; padding:0; border:0; background:none; color:#777; font-size:34px; line-height:40px; cursor:pointer; }
.ipo-event-page .app-qr-dialog h2 { margin:0 0 16px; color:#222; font-size:26px; font-weight:700; line-height:1.4; }
.ipo-event-page .app-qr-description { margin:0 0 24px; color:#555; font-size:17px; line-height:1.65; }
.ipo-event-page .app-qr-image { width:254px; max-width:100%; margin:0 auto 22px; padding:12px; border:1px solid #eee; border-radius:14px; box-sizing:border-box; background:#fff; }
.ipo-event-page .app-qr-image img { width:100%; height:auto; aspect-ratio:1; }
.ipo-event-page .app-qr-guide { margin:0 0 26px; color:#777; font-size:15px; line-height:1.65; }
.ipo-event-page .app-qr-confirm { width:100%; padding:13px 20px; border:0; border-radius:10px; background:var(--event-cta-color); color:#fff; font-family:inherit; font-size:17px; font-weight:700; cursor:pointer; }
@media (prefers-reduced-motion:reduce) { .ipo-event-page *, .ipo-event-page *::before,.ipo-event-page *::after { animation:none!important; transition:none!important; } }





/* IPOOMGO PLAN COMMON START — 기존 공통 CSS 맨 아래 1회 추가 */
/* 공통 레이아웃은 공통 CSS 사용 / 기획전 상품 영역만 1000px */
#productPlan { width:1000px; max-width:100%; margin:0 auto; }
/* page-hd */
#productPlan .page-hd { width:750px; max-width:100%; margin:0 auto; }
#productPlan .page-hd h2 { margin:40px 0 20px 0; color: #333; font-size: 24px; font-weight:600; border-bottom:1px solid #ccc; }
/* page-body */
#productPlan .page-body { padding-bottom: 80px; text-align:center; }
#productPlan .page-body .visual { width:750px; max-width:100%; margin:0 auto; }
#productPlan .page-body .visual > * { max-width:100%; box-sizing:border-box; }
#productPlan .page-body .visual img { max-width:100%; height:auto; }
#productPlan .page-body .bn_area { width:750px;max-width:100%;margin:0 auto;padding-top:30px;display:flex;flex-wrap:wrap;gap:10px 0; }
#productPlan .page-body .bn_area img { display:block; width:100%; height:auto; }
#productPlan .page-body .bn_area a { width:100%; }
/*상품 분류 메뉴: 한 줄 최대 4개, 스크롤 시 화면 최상단 고정 */
#productPlan .plan-category-nav { width: 1000px; max-width: 100%; margin: 30px auto 0; padding: 12px 0; background: rgba(255,255,255,0.97); box-sizing: border-box; }
#productPlan .plan-category-nav.is-fixed { position: fixed; top: 0; left: 50%; z-index: 99999; margin: 0; transform: translateX(-50%); box-shadow: 0 5px 14px rgba(0,0,0,0.08); }
#productPlan .plan-category-nav-spacer { display: none; width: 100%; }
/* 분류 메뉴 고정 중 기존 쇼핑몰 상단 메뉴 숨김 */
html body .plan-global-header-hidden { opacity: 0 !important; visibility: hidden !important; pointer-events: none !important; transition: opacity .15s ease !important; }
#productPlan .plan-category-nav ul { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0; padding: 0; border-top: 1px solid #222; border-left: 1px solid #ddd; list-style: none; }
#productPlan .plan-category-nav li { min-width: 0; margin: 0; border-right: 1px solid #ddd; border-bottom: 1px solid #ddd; box-sizing: border-box; }
#productPlan .plan-category-nav a { display: flex; align-items: center; justify-content: center; min-height: 58px; padding: 10px 12px; color: #444; font-size: 16px; line-height: 1.35; text-align: center; word-break: keep-all; box-sizing: border-box; background: #fff; transition: color .2s, background-color .2s; }
#productPlan .plan-category-nav a:hover,
#productPlan .plan-category-nav a.on { color: #fff; font-weight: 600; background: #222; }
#productPlan .page-body .p-hd { width: 100%; padding: 60px 0 0; text-align: left; box-sizing: border-box; }
#productPlan .page-body .p-hd h3 { margin: 0; color: #111; font-size: 24px; font-weight: 600; line-height: 1.45; letter-spacing: -0.5px; border-top: 1px solid #222; padding: 20px 0; }
#productPlan .page-body .plst { width:100%; table-layout:fixed; margin:26px auto 0; }
#productPlan .prd-list { width:1000px; max-width:100%; margin:30px auto 0; }
#productPlan .prd-list tr { display:table-row; }
#productPlan .prd-list td { width:25%; padding:0 8px 28px; vertical-align:top; box-sizing:border-box; }
#productPlan .tb-left { padding:0; }
/* 상품진열 스타일 2 - 1줄 4개 / 기본정보 좌측정렬 */
#productPlan .prdList .thumb { width:100%; height:auto; aspect-ratio:1 / 1; overflow:hidden; text-align:center; }
#productPlan .prdList .thumb a { width:100%; height:100%; justify-content:center; align-items:center; display:flex; }
#productPlan .prdList .thumb a img { width:100%; height:100%; object-fit:contain; }
#productPlan .prdList .name { display:block; width:100%; padding:10px 0; font-size:17px; color:#222; line-height:24px; letter-spacing:-0.3px; box-sizing:border-box; }
#productPlan .prdList .name .sub { padding:0 5px 10px 0; color: #e74174; }
#productPlan .prd-list .info { width:100%; line-height:22px; margin-bottom:20px; }
#productPlan .prdList .discount_rate { display:inline-block; padding-right:5px; color:#ff398d; font-size:20px; font-weight:bold; }
#productPlan .prdList .prd-price { display:block; font-size:17px; color: #333; margin-top:0; }
#productPlan .prdList .prd-price strike { display:inline-block;line-height: 21px;margin-right: 10px;font-weight: 300;color: #999; }
#productPlan .prdList .prd-price .prd-price2 { display:inline-block; font-size: 19px; color: #000; margin-right:10px; font-weight: 500; }
#productPlan .prdList .prd-price .prd-price2-login { display:inline-block; font-size: 19px; color: #e74174; margin-right:10px; font-weight: 500; }
#productPlan .prdList .prd-price .sold_out { color:red; font-size:19px; font-weight:500; }
#productPlan .prdList .listPrice { display:inline-block; }

/* IPOOMGO PLAN COMMON END */



/* 장바구니 옵션 변경 새 창 전용. 공통 CSS 하단에 한 번만 추가 */
html:has(body>#layer-opt-ctrl),body:has(>#layer-opt-ctrl) { min-width:0; width:auto; height:auto; background:#fff; }
body #layer-opt-ctrl { box-sizing:border-box; width:100%; max-width:600px; margin:0 auto; background:#fff; color:#333; font:14px/1.6 Pretendard,"Noto Sans KR","Malgun Gothic",sans-serif; }
body #layer-opt-ctrl *,body #layer-opt-ctrl *::before,body #layer-opt-ctrl *::after { box-sizing:border-box; }
body #layer-opt-ctrl a { color:inherit; text-decoration:none; }
body #layer-opt-ctrl h2 { height:auto; margin:0; padding:20px 24px; border:0; border-bottom:1px solid #eceef0; background:#fff; color:#222; font:600 20px/1.5 Pretendard,"Noto Sans KR","Malgun Gothic",sans-serif; letter-spacing:-.4px; }
body #layer-opt-ctrl .lcont { padding:24px; }
body #layer-opt-ctrl .prd-w { display:flex; align-items:center; gap:14px; width:100%; margin-bottom:20px; overflow:visible; }
body #layer-opt-ctrl .prd-w::after { content:none; }
body #layer-opt-ctrl .prd-w .thumb { flex:0 0 72px; float:none; width:72px; }
body #layer-opt-ctrl .prd-w .thumb img { display:block; width:72px; height:72px; border:0; border-radius:6px; background:#f7f7f7; object-fit:contain; }
body #layer-opt-ctrl .prd-w .pinfo { flex:1; float:none; width:auto; min-width:0; padding:0; }
body #layer-opt-ctrl .prd-w .pinfo .prd_name { margin:0; overflow:visible; white-space:normal; color:#333; font-size:14px; font-weight:500; line-height:1.6; overflow-wrap:anywhere; }
body #layer-opt-ctrl .prd-w .pinfo .price { margin:6px 0 0; color:#222; font-size:16px; font-weight:600; }
body #layer-opt-ctrl .scr-box { height:auto; max-height:320px; margin:0; padding:16px; overflow-x:hidden; overflow-y:auto; border:1px solid #e5e7eb; border-radius:8px; background:#fff; }
body #layer-opt-ctrl .scr-box table { width:100%; border-collapse:collapse; table-layout:fixed; }
body #layer-opt-ctrl .scr-box th,body #layer-opt-ctrl .scr-box td { padding:6px 0; border:0; font-size:13px; line-height:1.6; vertical-align:middle; }
body #layer-opt-ctrl .scr-box th { color:#777; font-weight:400; text-align:left; }
body #layer-opt-ctrl .scr-box td select { width:100%; max-width:100%; height:40px; padding:0 9px; border:1px solid #dfe2e6; border-radius:4px; background:#fff; color:#333; font-family:inherit; font-size:13px; }
body #layer-opt-ctrl .scr-box td input[type=text] { max-width:100%; height:36px; padding:0 8px; border:1px solid #dfe2e6; border-radius:4px; color:#333; font-family:inherit; font-size:13px; line-height:34px; }
body #layer-opt-ctrl input:focus-visible,body #layer-opt-ctrl select:focus-visible,body #layer-opt-ctrl button:focus-visible,body #layer-opt-ctrl a:focus-visible { outline:2px solid var(--main-color,#e74174); outline-offset:2px; }
body #layer-opt-ctrl .opt-wrap { margin-top:16px; border:1px solid #e5e7eb; border-radius:8px; background:#fafbfc; }
body #layer-opt-ctrl .opt-scroll { max-height:320px; overflow-y:auto; }
body #layer-opt-ctrl .opt-wrap .MK_inner-opt-cm { margin:0; padding:0; list-style:none; }
body #layer-opt-ctrl .opt-wrap .MK_inner-opt-cm li { display:grid; grid-template-columns:minmax(0,1fr) 24px; gap:12px; position:relative; min-height:0; margin:0; padding:16px; border-bottom:1px solid #e5e7eb; }
body #layer-opt-ctrl .opt-wrap .MK_inner-opt-cm li .MK_p-name { grid-column:1; grid-row:1; width:auto; color:#555; font-size:13px; font-weight:400; white-space:normal; overflow:visible; overflow-wrap:anywhere; }
body #layer-opt-ctrl .opt-wrap .MK_inner-opt-cm li .MK_qty-ctrl { grid-column:1; grid-row:2; position:relative; inset:auto; width:66px; height:32px; }
body #layer-opt-ctrl .opt-wrap .MK_inner-opt-cm li .MK_qty-ctrl input { float:none; width:44px; height:32px; padding:0 3px; border:1px solid #dfe2e6; border-radius:4px 0 0 4px; background:#fff; color:#333; font-size:13px; line-height:30px; text-align:center; }
body #layer-opt-ctrl .opt-wrap .MK_inner-opt-cm li .MK_qty-ctrl a { display:flex; align-items:center; justify-content:center; position:absolute; right:0; width:22px; height:16px; border:1px solid #dfe2e6; border-left:0; background:#fff; }
body #layer-opt-ctrl .opt-wrap .MK_inner-opt-cm li .MK_qty-ctrl a.MK_btn-up { top:0; border-radius:0 4px 0 0; }
body #layer-opt-ctrl .opt-wrap .MK_inner-opt-cm li .MK_qty-ctrl a.MK_btn-dw { top:auto; bottom:0; border-top:0; border-radius:0 0 4px 0; }
body #layer-opt-ctrl .opt-wrap .MK_inner-opt-cm li .MK_qty-ctrl a img { display:block; width:11px; height:auto; }
body #layer-opt-ctrl .opt-wrap .MK_inner-opt-cm li .MK_price { grid-column:1; grid-row:2; justify-self:end; align-self:center; position:static; color:#222; font-size:14px; font-weight:600; line-height:32px; }
body #layer-opt-ctrl .opt-wrap .MK_inner-opt-cm li .MK_btn-del { grid-column:2; grid-row:1; position:static; width:24px; height:24px; padding:6px; }
body #layer-opt-ctrl .opt-wrap .MK_inner-opt-cm li .MK_btn-del img { display:block; width:12px; height:12px; }
body #layer-opt-ctrl .opt-total { display:flex; align-items:baseline; justify-content:flex-end; gap:5px; padding:18px 16px; color:#333; font-size:14px; text-align:right; }
body #layer-opt-ctrl .opt-total .opt-p-tit { margin-right:auto; color:#666; font-size:13px; }
body #layer-opt-ctrl .opt-total .opt-p-total { color:var(--main-color,#e74174); font-size:20px; font-weight:700; }
body #layer-opt-ctrl .opt-total .opt-p-won { color:#333; font-size:13px; }
body #layer-opt-ctrl .btn { display:flex; flex-direction:row-reverse; gap:10px; margin-top:20px; }
body #layer-opt-ctrl .btn>span { display:block; flex:1; }
body #layer-opt-ctrl .btn span button { display:block; width:100%; height:44px; margin:0; padding:0 12px; border:1px solid var(--main-color,#e74174); border-radius:5px; background:var(--main-color,#e74174); color:#fff; font-family:inherit; font-size:14px; font-weight:600; line-height:42px; cursor:pointer; }
body #layer-opt-ctrl .btn span button.btn-close { border-color:#dfe2e6; background:#fff; color:#777; }
body #layer-opt-ctrl .lcont .hy_opts { margin-top:16px; padding:12px; border:1px solid #e5e7eb; border-radius:8px; background:#fafbfc; color:#666; font-size:13px; }
body #layer-opt-ctrl .lcont .hy_opts .option-box .list { display:flex; flex-wrap:wrap; gap:12px; padding:0; }
body #layer-opt-ctrl .lcont .hy_opts .option-box .list li { float:none; width:calc((100% - 36px)/4); }

