@charset "utf-8";

/* **************************************** *
 * SUB set
 * **************************************** */

/* Sub title  */
.page-title-wrap {position: relative;}
.page-title-wrap:has(.page-notice-wrap) {display: flex; align-items: center; gap: 17rem;}
#page-title{}

/* SUB VISUAL */
#sub-visual {position:relative;height:310rem; color: var(--w); font-family: var(--lang-ko2)}
#sub-visual .wrap {height: 100%; justify-content: center; padding-top: 20rem;}
.sub-visual__bg{position:absolute;top:0;left:0;width:100%;height:100%;background:#000;overflow: hidden;}
.sub-visual__bg > i{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:50% 50%;transition:var(--trans-01);background-repeat:no-repeat;opacity: 1 !important;}
.sub-visual__bg img {width: 100%; height: 100%; object-fit: cover; object-position: center;}
.sub-visual__desc {font-size: 20rem; font-weight: 400; letter-spacing: 30%;}
#sub-visual h2 {margin-top: 7rem; font-size: 57rem; font-family: var(--lang-ko2); font-weight: 700;}

#sub-container:has(.inception-page) #sub-visual h2 {background: linear-gradient(180deg, #FFE6BA 0%, #EA903F 100%); background-clip: text; -webkit-background-clip: text; -webkit-text-fill-color: transparent;}

@media (max-width: 860px){
	#sub-visual {height: 250rem;}
	#sub-visual .wrap {padding-top: 8rem;}
	#sub-visual h2 {font-size: 42rem;}
	.sub-visual__desc {font-size: 18rem;}
}

@media (max-width: 540px){
	#sub-visual {height: 230rem;}
	#sub-visual .wrap {padding-top: 0;}
	.sub-visual__bg > i::after {position: absolute; left:0; top:0; content:''; width: 100%; height: 100%; background: var(--op-b20);}
	.sub-visual__desc {font-size: 14rem;}
	#sub-visual h2 {margin-top: 10rem; font-size: 34rem; line-height: 1.3;}
	
}

/* **************************************** *
 * SUB layout
 * **************************************** */
#sub-container:has(.inception-page, .business-page) + #footer{margin-top: 0 !important;}
#header{}
#footer{margin-top: var(--space150);}

@media (max-width: 540px){
	#footer {margin-top:var(--space120);}
}

/* **************************************** *
 * SUB content
 * **************************************** */
.sub-content {position:relative; min-height: 300rem; padding-top: 85rem; font-family: var(--lang-ko); word-break: keep-all;}
.sub-content:has(.inception-page, .od_prd_list){padding-top: 0 !important;}

@media all and (max-width:1023px){
	.sub-content:has(.board-page){padding-top:110rem;}
}

@media (max-width:860px){
	.sub-content{padding-top: 70rem;}
}

@media (max-width: 540px){
	.sub-content{padding-top: 40rem;}
}

/* **************************************** *
 * SUB common
 * **************************************** */
 /* 페이지 대 타이틀 */
 .page-title-wrap + * {margin-top: var(--space60);}

 /* 섹션 타이틀 */
 .page-box:not(:last-child) {margin-bottom: var(--space100);}

@media (max-width:540px){
	.page-title-wrap + * {margin-top: 20rem;}
	.page-box:not(:last-child) {margin-bottom: var(--space120);}
}

 /* 클릭했을때 나오는 유의사항 */
 .page-notice-wrap {position: relative;}
.page-notice-wrap > p {opacity: 0; position: absolute; left: -15rem; display: inline-block; padding: 4rem 12rem; font-size: var(--font-13); font-weight: 600; color: var(--w); white-space: nowrap; border-radius: 100rem; background: var(--bg-dark); transform: translateY(-100%); transition: var(--trans-01);}
.page-notice-wrap > p::before {position: absolute; left: 17rem; bottom:-5rem; content:''; width: 0; height: 0; border-style: solid; border-width: 6rem 6rem 0 6rem; border-color: var(--bg-dark) transparent transparent transparent;}
.page-notice-wrap > p.active{opacity: 1; transform: translateY(-32rem);}
.page-notice {position: relative; display: inline-flex; align-items: center; font-size: var(--font-13); font-weight: 500; color: var(--b-light02);}
.page-notice::before {content:'!'; display: inline-flex; align-items: center; justify-content: center; width: 15rem; height: 15rem; margin-right: 3rem; font-size: 11rem; font-weight: 600; line-height: 1; color: var(--b-light02); border-radius: 100%; border: 1px solid var(--b-light02);}

 /* 타이틀 위에 들어가는 분홍색 작은 글씨 */
 .page-title__dec {display: block; margin-bottom: 12rem; font-size: var(--font-15); font-weight: 600; color: var(--c-primary);}
 
 @media (max-width:540px){
	.page-title__dec {margin-bottom: 8rem;font-family: var(--lang-ko);font-weight: 600;}
	.page-notice-wrap > p {left: -17rem; transform: translateY(-30rem);}
	.page-notice::before {width: 13rem; height: 13rem; font-size: 9rem;}
}

/* ========================================
 * 페이지 칼럽 공통
 * ======================================== */

 /* 페이지 칼럼 */
 .page-column{width:100%}
 .page-column > [data-flex] {gap: 60rem;} 
 .page-con {width: calc(100% - 360rem - 60rem);}

/* 페이지 칼럼--오른쪽 */
.page-aside {flex-shrink: 0; width: 360rem;}
.page-aside__inr {position: sticky !important; top: 0;}               
.page-aside__card {padding: 22rem 20rem 24rem; border-radius:max(1.0417vw, 10rem); background: var(--bg-default);}
.page-aside__bottom {margin-top: 10rem;}
.page-aside__part + .page-aside__part {margin-top: 44rem;}
.page-aside__part strong {display: block; margin-bottom: 12rem; font-size: var(--font-19); font-weight: 600;}
.page-box__title{ display: flex;flex-direction: column;}
.page-box__title.is_center{align-items: center;}

 @media all and (max-width:1023px){
	.page-column > [data-flex] {gap: 40rem;}
	.page-con {width: calc(100% - 290rem - 40rem);}
	.page-aside {width: 290rem;}
	.page-aside__inr {top: 180rem;}
}

@media (max-width:860px){
	.page-column > [data-flex] {flex-direction: column;}
	.page-con {width: 100%; padding: 0 0 var(--space80); border-right: 0;}
	.page-aside {z-index: 1; position: sticky; bottom: 20rem; width: 100%; padding-left: 0; margin-bottom: var(--space130);}
	.page-aside__inr {position: relative; padding:30rem; border-radius:max(1.0417vw, 10rem); border: 1px solid var(--op-b10); background: var(--w);}
}

@media (max-width:540px){
	.page-column > [data-flex] {gap: 20rem;}
	.page-aside {bottom: 0;}
	.page-aside__inr {padding: 20rem;}
}

/* 대쉬 라인 */
.dash-line{border-top: 1px dashed var(--br-default); display: block; width: 100%; height: 1px;}

/* ========================================
 * gray card 공통
 * ======================================== */

/* side-card */
.aside-card__box {display: flex; flex-direction: column; align-items: flex-start; gap: 24rem; padding: 20rem 20rem 26rem; border-radius: max(0.6250vw, 5rem); background: var(--w);}
.aside-card__box:has(.aside-card__caption) {padding-bottom: 20rem;}
.aside-card__box > * {width: 100%;}
.aside-card__line {width: 100%; height: 1px; border-top: 1px dashed var(--br-default);}
.page-aside__con .aside-card__line {margin: 30rem 0;}
.aside-card__btn-wrap {display: flex; gap: 5rem; margin-top: 24rem;}

/* aside 버튼 공통 */
.aside-card__btn { align-items:center; border-radius:10rem; display:flex; height:60rem; justify-content:center; transition:var(--trans-04); }
.aside-card__btn--apply { background:var(--c-primary); border:1px solid var(--c-primary); color:#fff; flex:1 0 0; font-weight:600; line-height:1.412; }
.aside-card__btn--apply:hover { background:#d93b41; border-color:#d93b41; }
.aside-card__btn--kako { background:#231815; flex-shrink:0; padding:15rem 16rem; width:60rem; }
.aside-card__btn--kako:hover { background:#3a2825; }
.aside-card__btn-wrap { display:flex; gap:5rem; }

 .agency-logo { width: 34rem; height: 34rem; border-radius: 54rem; overflow: hidden; }
 .agency-logo img { width: 100%; height: 100%; object-fit: cover; display: block; }
 .aside-card__divider { height: 1rem; border-top: 1px dashed var(--br-default); }
 .aside-card__title { display: flex; flex-direction: column; gap: 8rem; margin-bottom: 16rem; }
 .aside-card__title__text { font-size: var(--font-22); font-weight: 600; color: #231815; line-height: 1.5; white-space: nowrap; }
 
  /* 페이지 칼럼--가격 쪽 */
 .option-item { display: flex; flex-direction: column; gap: 4rem; }
 .option-item__label { font-size: var(--font-13); font-weight: 400; color: rgba(0, 0, 0, 0.5); line-height: 1.69; }
 .option-item__name { font-size: var(--default); font-weight: 600; color: #231815; line-height: 1.41; }
 .option-item__price {font-size: var(--font-15);font-weight: 300;color: var(--b-light02);line-height: 23rem;}
 .option-item__row { display: flex; justify-content: space-between; align-items: flex-start; }
 
 .price-option__amount { font-size: 25rem; line-height: 1.15; }
 .price-option__amount strong { font-weight: 700; }
 .price-option__item {width: 100%; display: flex; justify-content: space-between; align-items: center; white-space: nowrap; }
 .price-option__item + .price-option__item {margin-top: 17rem;}
 .price-option__item:has(.price-option__val){align-items: flex-start;}
 .price-option__item.column {flex-direction: column; align-items: flex-start; gap: 4rem;}
 .price-option__item em {font-size: var(--font-13); color: var(--b-light01);}
 .price-option__item p {display: inline-flex;align-items: center;justify-content: flex-end;color: var(--b-title);font-weight: 600;font-size: var(--font-15);}
 .price-option__item p em {display: inline-block; margin-left: 5rem;}
 .price-option__item.column p {display: flex; justify-content: space-between;}
 .price-option__label { font-size: var(--font-13); font-weight: 400; color: var(--b-light01); line-height: 1.69; }
 .price-option__unit { font-size: var(--font-19); line-height: 1.47; }
 .price-option__value { display: flex; align-items: flex-end; gap: 4rem; color: #f5464d; font-weight: 600; }
 .price-option__list { display: flex; flex-direction: column; width: 100%; }
 .price-option__val { display: flex; flex-direction: column; align-items: flex-end; gap: 2rem; }
 .price-option__total { display: flex; flex-direction: column; gap: 8rem; width: 100%; }
 .price-total__num { font-size: var(--font-27); font-weight: 700; color: var(--b-title, #231815); line-height: 1.3; }
 .price-option__val{flex-direction: column;}

 .original-price {display: flex; flex-direction: column; align-items: flex-end; gap: 2rem; margin-bottom: 7rem;}
 .original-price__origin{font-size: 15rem; text-decoration:line-through; color:var(--op-b30); font-weight: 500;}
 .aside-card__btn--icon { background: var(--w, #fff); border: 1rem solid #e6e6e6; flex-shrink: 0; width: 60rem; transition: var(--trans-01); display: flex; align-items: center; justify-content: center; }
 .aside-card__btn--icon::before {content: '';display: block;width: 22rem;height: 22rem;background-color: var(--b-light02);transition: var(--trans-01);}
 .aside-card__btn--cart::before { -webkit-mask: url(../img/sub/ic-cart.svg) no-repeat center / contain; mask: url(../img/sub/ic-cart.svg) no-repeat center / contain; }
 .aside-card__btn--wish::before { -webkit-mask: url(../img/sub/ic-heart.svg) no-repeat center / contain; mask: url(../img/sub/ic-heart.svg) no-repeat center / contain; }
.aside-card__btn--icon.on{border-color:var(--c-primary)}
.aside-card__btn--wish.on::before{background-color: var(--c-primary);}

 @media (hover: hover) and (pointer: fine){
    .aside-card__btn--icon:hover { border-color: var(--c-primary); }
    .aside-card__btn--wish.on::before{ background-color: var(--c-primary); -webkit-mask: url(../img/sub/ic-heart-fill.svg) no-repeat center / contain; mask: url(../img/sub/ic-heart-fill.svg) no-repeat center / contain;}
 }

 @media (max-width: 540px){
	.price-option__item.column {gap: 2rem;}
	.price-option__item + .price-option__item {margin-top: 15rem;}
	.aside-card__btn-wrap {margin-top: 10rem;}
	.aside-card__btn--apply,
	.aside-card__btn {border-radius: 5rem;}
	.aside-card__btn--icon::before {width: 18rem; height: 18rem;}
}

 /* ========================================
 * gray card 공통
 * ======================================== */

 /* 칼라 선택 */
.color-select { display: flex; gap: 12rem; align-items: center; }
.color-item {display: flex;padding: 4rem;border-radius: 90rem;cursor: pointer;border: 1rem solid transparent;}
.color-item i.item-color{ width: 42rem; height: 42rem; border-radius: 50%; display: block; object-fit: cover; }
.item-color[style="background:;"] { border:1px solid var(--op-b10); }
.color-item input[type="radio"] { display: none; }
.color-item:has(input:checked) { border-color: var(--c-primary, #f5464d); }

/* 라디오 select  공통 */
 /*
  fill형
  <label class="comm-select fill">
    <input type="radio" name="carrier" value="all" checked>
    <span class="select-item__text">3사 호환가능</span>
  </label>

  그림자형
  <label class="comm-select card">
    <input type="radio" name="carrier" value="skt">
    <span class="select-item__logo">
      <img src="<?php echo G5_THEME_IMG_URL ?>/" alt="SKT">
    </span>
  </label>
*/
.comm-select { display: flex; height: 60rem; border-radius: 10rem; border: 1rem solid rgba(0,0,0,0.1); background: #fff; cursor: pointer; }
.comm-select input:is([type="radio"], [type="checkbox"]) { display: none; }
.comm-select:has(input:checked) { border-color: var(--c-primary, #f5464d); }
.comm-select.card { align-items: center; justify-content: center; flex: 1 0 0; min-width: 1rem; padding: 17rem 43rem; }
.comm-select.card:has(input:checked) { background: var(--w, #fff); box-shadow: 5rem 7rem 12rem 0 #ffeaeb; }
.comm-select.fill { flex-direction: column; justify-content: center; padding: 0 24rem; }
.comm-select.fill:has(input:checked) { background: var(--c-secondary, rgba(245,70,77,0.07)); }

.level-item__inner { display: flex; justify-content: space-between; align-items: center; width: 100%; }
.level-item__info { display: flex; gap: 10rem; align-items: center; }
.level-item__grade { font-size: var(--font-16); font-weight: 500; color: #231815; min-width: 42rem; white-space: nowrap; }
.level-item__sep { width: 1rem; height: 10rem; background: rgba(35,24,21,0.3); }
.level-item__capacity { font-size: var(--font-16); font-weight: 500; color: #231815; white-space: nowrap; }
.level-item__price { font-size: var(--font-15); font-weight: 400; color: rgba(0,0,0,0.5); white-space: nowrap; }

.select-item__logo { display: flex; align-items: center; justify-content: center; }
.select-item__logo img { max-width: 32rem; max-height: 32rem; object-fit: cover; display: block; }
.select-item__text { font-size: var(--font-15); font-weight: 500; color: #231815; line-height: 1.33; text-align: center; white-space: nowrap; }

.page-aside__select {  gap: 6rem 7rem; width: 100%; }
.page-aside__part { display: flex; flex-direction: column; gap: 12rem; width: 100%; }
.part-aside__select { display: flex; flex-direction: column; gap: 10rem; width: 100%; }
.part-aside__select.level_ver { gap: 4rem; }
.part-aside__title { width: 100%; }
.part-aside__title:has(.color_name){display: flex; justify-content: space-between;}
.part-aside__title .color_name{font-size: 14rem; color: var(--b-light02); }

.aside-anchor__list {position: relative;}
.aside-anchor__list::before {position: absolute; left: 12rem; top: 0; content:''; width: 1px; height: 100%; background: var(--op-b10);}
.aside-anchor__item:not(:last-child) {margin-bottom: 15rem;}
.aside-anchor__item i {position: relative; flex-shrink: 0; display: flex; align-items: center; justify-content: center; width: 24rem; height: 24rem; margin-right: 12rem; border-radius: 100%; background: var(--w); border: 2rem solid var(--br-default); transition: var(--trans-01);}
.aside-anchor__item i::after {filter: grayscale(1); opacity: .5; position: absolute; left: 50%; top: 50%; content:''; width: 10rem; height: 10rem; background-repeat: no-repeat; background-position: center; background-size: contain; background-image: url(../img/sub/inception-check.svg); transform: translate(-50%, -50%); transition: var(--trans-01);}
.aside-anchor__item a {display: flex; align-items: center; font-size: var(--font-15); color: var(--b-light01); transition: var(--trans-01);}
.aside-anchor__item.active i {border-color: var(--c-primary); background: var(--bg-light);}
.aside-anchor__item.active i::after {filter: grayscale(0); opacity: 1;}
.aside-anchor__item.active a {font-size: var(--default); font-weight: 600; color: var(--b-title);}

@media all and (max-width:1023px){  
    .aside-anchor__list::before {left: 10rem;}
    .aside-anchor__item:not(:last-child) {margin-bottom: 10rem;}
    .aside-anchor__item i {width: 20rem; height: 20rem; margin-right: 10rem;}
}

@media (max-width: 860px){
	.part-aside__select.level_ver {display: grid; grid-template-columns: repeat(2, 1fr);}
}

@media (max-width: 540px){
	.comm-select {border-radius: 7rem;}
	.comm-select.fill {padding: 0 20rem;}
	.color-select {gap: 6rem;}
	.color-item i.item-color {width: 27rem; height: 27rem;}

	.part-aside__select.level_ver {grid-template-columns: 1fr;}
}


/* 배너 */
.page-banner {overflow: hidden; background-repeat: no-repeat; background-position: center; background-size: cover; border-radius:max(1.0417vw, 10rem);}
.page-banner img {width: 100%;}

/* 절차 */
.process-list {display: flex;justify-content: center;align-items: center;flex-wrap: wrap;padding: 40rem 60rem;border-radius:max(1.0417vw, 10rem);border: 1px solid var(--br-dark);gap: 40rem 60rem;}
.process-list__item {/* min-width: calc((100% - 120rem)/4); *//* padding: 0; */text-align: center;}
.process-list__txt {margin-bottom: 20rem;}
.process-list__txt .caption-box {margin-bottom: 14rem;}
.process-list__txt p {font-weight: 600; color: var(--b-title); line-height: 1.45;}
.process-list__icon {display: inline-flex; justify-content: center; align-items: center; width: 70rem; height: 70rem;}
.process-list__arrow {width: 40rem; height: 40rem; background: url(../../new/img/sub/ic-step-arrow.svg) no-repeat center / 30rem;}

@media all and (max-width:1023px){
	.process-list {gap: 40rem;}
}

@media (max-width:860px){
	.process-list {gap: 32rem 30rem;}
    .process-list__arrow {width: 30rem; height: 30rem;}

	.process-list__icon {width: 42rem; height: 42rem;}
    .process-list__icon img {max-width: 100%; max-height: 100%;}
}

@media (max-width: 540px){
	.process-list {padding: 25rem; gap: 24rem 20rem;}
    .process-list br {display: none;}
    .process-list__txt {margin-bottom: 12rem;}
    .process-list__arrow {width: 20rem; height: 20rem; background-size: contain;}
	.process-list__icon {width: 32rem; height: 32rem;}
	.process-list__txt p {font-size: 14rem;}
}

/* 말풍선 박스 */
.talk-box {position: relative; padding: 40rem 20rem; text-align: center; border-radius:max(1.0417vw, 10rem); background: var(--c-primary);}
.talk-box * {color: var(--w);}
.talk-box::before {position: absolute; left: 50%; top: 0; content:''; width: 25rem; height: 25rem; background: var(--c-primary); transform: translate(-50%, -50%) rotate(45deg);}
.talk-box.black,
.talk-box.black::before {background: var(--b-title);}
.talk-box.bottom::before {top: auto; bottom: 0; transform: translate(-50%, 50%) rotate(45deg);}

@media (max-width: 540px){
	.talk-box::before {width: 12rem; height: 12rem;}
	.talk-box {padding: 30rem 20rem;}
}

/* table */
table.table tr {border-bottom: 1px solid var(--op-b10);}

/* 인풋 박스 */
.side-form:not(:is([data-form="agree"])) {overflow: hidden; position: relative; display: flex; align-items: center; height: 60rem; border-radius: 10rem; border: 1px solid var(--op-b10); background: var(--w); transition: var(--trans-01);}

.side-form:has(*:focus) {border-color: var(--c-primary);}
.side-form.w50 {width: calc((100% - 24rem)/2);}
.side-form.w100 {width: 100%;}
.side-form:not(:has(input[type="checkbox"], input[type="radio"])) label {flex-shrink: 0; min-width: 100rem; padding-left: 15rem; padding-right: 5rem; font-size: var(--font-13); font-weight: 600; color: var(--b-light01);}
.side-form input[type="text"] {width: 100%; height: 100%; padding:0 15rem; font-size: var(--font-15); color: var(--b-title); border: 0; border-radius: 0; outline: 0;}
.side-form input[type="text"]::placeholder {color: var(--op-b30);}
.side-form input[type="text"]:focus,
.side-form select:focus {box-shadow: none; border: 0 !important; outline: 0;}
.side-form select {width: 100%; height: 100%; padding-left: 15rem; font-size: var(--font-15); color: var(--b-title); border: 0; background: none !important; -webkit-appearance: none;-moz-appearance:none;appearance:none;}
.side-form select::-ms-expand { display: none;}
.side-form__select {position: relative; width: 100%;}
.side-form__select::after {position: absolute; right: 17rem; top: 50%; content:''; width: 12rem; height: 12rem; background: url(../img/layout/arrow-basic.svg) no-repeat center / contain; transform:translateY(-50%) rotate(90deg);}
.side-form[data-form="agree"] em {font-weight: 400;}
.side-form[data-form="agree"] a {display: inline-block; margin-left: 5rem; font-size: var(--font-13); color: var(--b-light01); text-decoration: underline; text-underline-offset: 2rem;}

@media all and (max-width:1023px){}

@media (max-width:860px){
	.side-form:not(:has(input[type="checkbox"], input[type="radio"])) label {min-width: 80rem;}
	.side-form__select::after {right: 12rem;}
}

@media (max-width:540px){
	.side-form[data-form="agree"] a {margin-top: 5rem;margin-left: 0;display: none;}
	.side-form:not(:is([data-form="agree"])) {height: 47rem; border-radius: 5rem;}
	.side-form:not(:has(input[type="checkbox"], input[type="radio"])) label {min-width: 70rem; padding-left: 12rem;}
	.side-form select {padding-left: 12rem;}
	.side-form__select::after {right: 10rem; width: 10rem; height: 10rem;}
}

/* 카카오채널 아이콘 */
.ic-kakao {display: inline-flex; justify-content: center; align-items: center;}
.ic-kakao::after {content:''; display: block; width: 30rem; height: 30rem; background: #000; mask: url(../img/sub/ic-kakao.svg) no-repeat center / contain;}


/* ========================================
 * form 공통
 * ======================================== */

 /* 
	<div class="form-area w100" data-ani="top" data-form="name">
		<em>이름 <i class="mark">*</i></em>
		<div class="form-body">
			<input type="text" name="variable_1" class="required" placeholder="이름을 입력하세요." title="Name">
		</div>
	</div>

	<div class="form-area w50" data-ani="top" data-form="phone">
		<em>연락처 <i class="mark">*</i></em>
		<div class="form-body">
			<div class="form-select">
				<select name="phone1" class="required" title="Phone">
					<option value="">선택</option>
					<option value="010">SKT</option>
					<option value="011">KT</option>
					<option value="019">U+</option>
					<option value="070">알뜰폰</option>
				</select>
			</div>
			<input type="text" name="phone2" class="required" placeholder="'-'없이 숫자만 입력하세요." title="Phone">
			<a href="javascript:execDaumPostcode()" class="btn-form btn-phone">인증 요청</a>
		</div>
	</div>
 */
 .form-style .form-area {flex-direction: column; align-items: flex-start; gap: 6rem; margin-bottom: 32rem;}
 .form-style .form-area:last-child {margin-bottom: 0;}
 .form-style .form-area > em {min-width: auto; font-size: 14rem; font-weight: 600; color: var(--b-light01);}
 .form-style .form-area > em .mark {margin-left: 1px; font-size: 14rem; font-weight: 400;}
 .form-style .form-area .required,
 .form-style .form-area textarea.required {background-image: none !important;}
 .form-style .form-area input:is([type="text"], [type="password"]),
 .form-style .form-select select,
 .form-style .form-area textarea {padding: 0 15rem; font-size: var(--font-15); border: 1px solid var(--br-default) !important; border-radius: 7rem; box-shadow: none !important;}
 .form-style .form-area input:is([type="text"],[type="password"]):focus,
 .form-style .form-select select:focus, .form-area textarea:focus {border-color: var(--c-primary) !important; box-shadow: none;}
 .form-style .form-area *::placeholder {font-size: var(--font-15) !important; color: var(--b-light02);}
 .form-style .form-select,
 .form-style .form-select select {width: auto; min-width: 100rem; max-width: none; -webkit-appearance: none;-moz-appearance:none;appearance:none; color: var(--b-title); background: url(../img/board/arrow-select.svg) no-repeat center right 15rem !important;background-size: 9rem !important;}
 .form-style select::-ms-expand { display: none;}
 .form-body:has(.btn-phone) {gap: 6rem;}
 .form-caption {display: flex; align-items: center; margin-top: 3rem; color: var(--b-light02); font-size: var(--font-13);}
 .form-caption.error {color: var(--c-primary);}
 .form-caption.error::before {flex-shrink: 0; content:'!'; display: inline-flex; align-items: center; justify-content: center; width: 14rem; height: 14rem; margin-right: 4rem; line-height: 1; font-size: 10rem; font-weight: 600; color: var(--w); border-radius: 100%; background: var(--c-primary);}
 .form-body:has(.form-caption) {flex-direction: column;}
 [data-form="agree-all"] {padding: 20rem 22rem; border-radius: 10rem; background: var(--bg-default);}
 .form-style .check-box input[type="checkbox"]:not(:checked) + .checkmark {border-color: var(--br-default); background: var(--w);}
 .form-style .privacy-box {height: 150rem; margin-top: 12rem; padding: 15rem 20rem; border-radius: 10rem;}
 .form-style .privacy-box div {font-size: var(--font-13) !important; font-weight: 300; color: var(--b-light02); line-height: 1.6 !important; }
 .form-style .form-part {position: relative;} 
 .form-style .form-body {gap: 6rem;}
 .form-style [data-form="address"] .form-body {flex-direction: column;}
 .form-style .form-area[data-form="address"] .form-part {flex-direction: row; gap: 6rem;}
 .form-style .form-area[data-form="address"] .btn-address {position: relative; top: auto; right: auto; padding: 0 15rem; color: var(--b-title); font-size: var(--font-15); background: var(--w);}
 [data-form="account"] .form-body input[type="text"]:last-child {min-width: 55%;}
 [data-form="visit"] .form-select,
 [data-form="visit"] .form-select select {width: 100%;}
 .form-style .form-area:has(.form-caption.error) input[type="text"], 
 .form-style .form-area:has(.form-caption.error) select {border-color: var(--c-primary) !important; background: var(--bg-light) !important;}
 .form-style .form-area:has(.form-caption.error) input[type="text"]::placeholder, 
 .form-style .form-area:has(.form-caption.error) select::placeholder {color: var(--c-primary) !important;}
 
 @media (hover: hover) and (pointer: fine){
	.form-style .form-area[data-form="address"] .btn-address:hover {color: var(--w); background: var(--b-title);}
}

@media all and (max-width:1023px){
	.form-style .form-area {gap: 8rem;}
	.form-style .form-area > em {margin-bottom: 0;}
}

@media (max-width: 540px){
	.form-style .form-area {margin-bottom: 20rem;}
	.form-style .privacy-box {margin-top: 3rem; border-radius: 5rem;}
	[data-form="agree-all"] {padding: 15rem; border-radius: 7rem;}
	[data-form="account"] .form-body input[type="text"]:last-child {min-width: auto; width: 100%;}
}


/* ========================================
 * 복사 버튼이 있는 경우
 * ======================================== */
.btn-copy-wrap {display: inline-flex; align-items: center; gap: 8rem;}

/* ── 공통 구분선 ── */
hr { display: block; border:none; border-top:1px solid var(--br-default); display:block; margin:0; width:100%; }
hr.dashed { border-top-style:dashed; }

/* ========================================
 * 중고판매 아코디언
 * ======================================== */
 .sale-accordion {gap: 16rem; counter-reset:title;}
.sale-accordion .accordion-custom__item {counter-increment:title; border: 1px solid transparent; border-radius: max(1.0417vw, 10rem);}
.sale-accordion .accordion-custom__tit {padding: 26rem 30rem; color: var(--op-b50); font-size: var(--font-22); background: var(--bg-default);}
.sale-accordion .accordion-custom__tit::after {right: 26rem;}
.sale-accordion .accordion-custom__tit::before {content:counter(title); display: inline-flex; align-items: center; justify-content: center; width: 26rem; height: 26rem; font-size: var(--font-13); font-weight: 800; line-height: 1; color: var(--w); text-align: center; border-radius: 100%; background: var(--op-b10);}
.sale-accordion .accordion-custom__tit .page-notice {margin-left: auto;}
.sale-accordion .accordion-custom__tit:has(.page-notice) {padding-right: 63rem;}
.sale-accordion .accordion-custom__tit .selected {position: absolute; right: 60rem; top: 50%; font-size: var(--default); font-weight: 600; color: var(--b-light02); text-align: right; transform: translateY(-50%);}
.sale-accordion .accordion-custom__cont {padding: 10rem 30rem 30rem; background: var(--w);}

.sale-accordion .accordion-custom__item.on {border-color: var(--br-default);}
.sale-accordion .accordion-custom__item.on .accordion-custom__tit {color: var(--b-title); background: var(--w);}
.sale-accordion .accordion-custom__item.on .accordion-custom__tit::before {background: var(--c-primary);}

.sale-accordion [data-form="agree-all"] {margin-bottom: 0;}
.sale-form__privacy {padding:22rem;}
.sale-form__privacy .form-area:not(:last-child) {margin-bottom: 30rem;}

@media all and (max-width:1023px){
	.sale-accordion .w50 {width: 100% !important;}
	.sale-accordion .sale-accordion__list {grid-template-columns: repeat(2, 1fr);}
}

@media (max-width:860px){
	.sale-accordion {gap: 10rem;}
    .sale-accordion .comm-select{gap: 10rem;}
    .sale-accordion .sale-accordion__list label {padding: 30rem 20rem;}
	.sale-form__privacy .form-area[data-form="agree"]:first-child {margin-top: 0;}
}

@media (max-width:540px){
	.sale-accordion {gap: 5rem;}
    .sale-form__privacy {padding: 15rem;}
    .sale-form__privacy .form-area:not(:last-child) {margin-bottom: 0;}
    .sale-accordion .accordion-custom__tit {padding:17rem 15rem; font-size: var(--font-19);}
    .sale-accordion .accordion-custom__tit::before {width: 18rem; height: 18rem;}
    .sale-accordion .accordion-custom__tit .page-notice {display: none;}
    .sale-accordion .accordion-custom__tit .selected {right: 50rem;}
    .sale-accordion .accordion-custom__cont{padding:5rem 20rem 20rem}
    .sale-accordion .sale-accordion__list {gap: 8rem;}
    .sale-accordion .sale-accordion__list label {padding:17rem 20rem; border-radius: 5rem;}
}
