@charset "utf-8";

/* **************************************** *
* 공통 레이아웃
* **************************************** */
#content{margin:0 auto; padding-top:80rem; padding-bottom:110rem; max-width:450rem;}
#content h3 {margin-bottom: 15rem; font-size: var(--font-20); font-weight: 700; color: var(--b-01);}
#content h3 strong {color: var(--c-01);}
#content:has(#footer){padding-bottom:0;}
#content:has(.kakaomap) {padding-top: 0;}
#content:has(.product-view) #footer {padding-bottom: 170rem;}
#content:is(.map-list){height: 100vh; padding-top: 55rem; padding-bottom: 70rem;}
.content-wrap{position:relative; overflow:hidden; width:100%; min-height: 420rem; margin-right:auto; margin-left:auto; padding-right:20rem; padding-bottom:25rem; padding-left:20rem; /* z-index:2; :*/;}

/* **************************************** *
* 서브페이지
* **************************************** */
/* 위치 */
.map h3 {margin-top: 10rem;}
.map-search .select-wrap:not(:last-child) {margin-bottom: 5rem;}
.map-search .select-btn {height: 50rem;}
.map-search .btn-basic {margin-top: 15rem;}
.map-list .content-wrap {height: 100%; padding-bottom: 0;}
.map-list .total {z-index: 1; position: absolute; left:0; top:0; display: flex; align-items: center; width: 100%; height: 50rem; padding: 0 20rem; font-size: var(--font-14); font-weight: 600; color: var(--b-01); border-bottom: 1px solid var(--bd-01); background: var(--f);}
.map-loctaion {width: 100%; height: 100%; background: url(../img/map.jpg) no-repeat center center / cover;}
.map-box {overflow: auto; position: absolute; left:0; bottom:0; width: 100%; height: 50%; padding:18rem 20rem 20rem; border-radius: 20rem 20rem 0 0; background: #fff; box-shadow: 0 -1px 13rem rgba(0, 0, 0, .07); transition: .3s ease;}
.map-box.up {height: calc(100% - 50rem); border-radius: 0;}
.mylocation {text-align: center;}
.mylocation span{display: inline-flex; justify-content: center; margin: 0 auto; padding:10rem 15rem 8rem; font-size: var(--font-12); font-weight: 600; color: var(--b-01); border-radius: 50rem; border: 1px solid var(--bd-01);}
.mylocation span::before {display: block; content:''; width: 14rem; height: 14rem; margin-right: 4rem; background: url(../img/common/ic-location.svg) no-repeat center / contain;}
.map-list__item {padding: 20rem 0;}
.map-list__item:not(:last-child) {border-bottom: 1px solid var(--bd-01);}
.map-list__logo {overflow: hidden; flex-shrink: 0; width: 100rem; height: 100rem; margin-right: 20rem; border-radius: 5rem; border: 1px solid var(--bd-02);}
.map-list__logo:not(:has(img)) {position: relative; background: #f6f6f6;}
.map-list__logo:not(:has(img))::after {opacity: .1; filter: grayscale(1); -webkit-filter: grayscale(1); position: absolute; left:50%; top: 50%; content:''; width: 62rem; height: 50rem; background: url(../img/common/logo-v.svg) no-repeat center / contain; transform: translate(-50%, -50%);}
.map-list__logo img {width: 100%; height: 100%; object-fit: cover; object-position: center center;}
.map-list__txt {position: relative; width: 100%; padding-right: 30rem;}
.map-list__txt::after {position: absolute; right: 0; top: 50%; content:''; width: 6rem; height: 10rem; background: url(../img/common/arrow-prev.svg) no-repeat center / contain; transform: translateY(-50%) scaleX(-1);}
.map-list__txt p {display: block; margin-bottom: 4rem; font-weight: 600; color: var(--b-01);}
.map-list__txt span {display: block; font-size: var(--font-12); color: #888; word-break: keep-all;}
.map-list__txt .tag-list {margin-top: 10rem;}
.map-list .btn-basic {margin-top: 10rem;}
.kakaomap {height: 100vh;}
.kakaomap .root_daum_roughmap {width: 100%; height: 100%;}
.kakaomap .root_daum_roughmap .wrap_map {height: 100%;}

/* 장비리스트 */
.product:not(:is(.company)) .sec-line--line {margin-top: 35rem;}

/* 장비 뷰 */
.product-view__title {position: relative; margin-top: 18rem; padding-right: 45%;}
.product-view__title h3 {margin-bottom: 8rem !important; font-size: 18rem !important;}
.product-view__title .product-view__price {position: absolute; right: 0; top: 0; text-align: right;}
.product-view__price .product-list__price {align-items: flex-end; margin-top: 1px; font-size: 17rem;}

.product-view__img {overflow: hidden; position: relative; border-radius: var(--br-12); border: 1px solid var(--bd-01);}
.product-view__img .slide-sec {overflow: hidden;}
.product-view__img .btn-good {top: 210rem;}

.product-view .sec-line--line {margin: 22rem 0 !important;}
.product-view .tabs {gap: 0; text-align: center; margin-top: 30rem; border:solid var(--bd-02); border-width: 1px 0 1px 0;}

.product-view__company {margin-top: 10rem; padding:20rem 15rem; background: #fafafa; border-radius: 5rem;}
.product-view__company .between-list {gap: 6rem;}
.product-view__company .between-list li:has(a) {align-items: flex-start;}
.product-view__company .between-list li i:has(a) {display:flex; flex-direction: column; align-items: flex-end;}
.product-view__company .between-list a {display: inline-block; margin-top: 5rem; padding: 4rem 8rem; font-size: 11rem; color: var(--b-02); border: 1px solid var(--bd-01); border-radius: 3rem;}

.product-view__spec {padding: 20rem 15rem; border-bottom: 1px solid var(--bd-02);}
.product-view__spec > p {display: block; margin-bottom: 10rem; font-size: var(--font-15); font-weight: 600; color: var(--b-01);}
.product-view__detail {margin-top: 30rem;}
.product-view .board-list li strong span {margin-left: auto; font-size: var(--font-12); font-weight: 300; color: var(--b-03);}
.product-view .btn-wrap--fix {z-index: 9; left: 0; width: 100%; padding: 20rem; background: var(--f); border-radius: 20rem 20rem 0 0; box-shadow: 0 -1px 14rem rgba(0, 0, 0, .1);}

/*장바구니*/
.cart-list__top input[type="checkbox"] + label {font-weight: 600; color: var(--b-01);}
.cart-list__top .check-box + p {margin-left: 12rem; padding-left: 12rem; line-height: 1; color: var(--b-01); border-left: 1px solid var(--bd-01);}
.cart-list-wrap *.btn-basic--line.gray {display: inline-block; width: auto; height: auto; font-size: var(--font-12); font-weight: 500; padding: 8rem 10rem; margin-left: auto; border-radius: 3rem; border: 1px solid var(--bd-01);}
.cart-list__item {padding: 20rem 0;}
.cart-list__item:not(:last-child) {border-bottom: 1px solid var(--bd-02);}
.cart-list__item input[type="checkbox"] + label {display: flex; align-items: flex-start;}
.cart-list__item input[type="checkbox"] + label::before,
.cart-list__item input[type="checkbox"] + label::after {top: 0; transform: none;}
.cart-list__item .product-list__img {flex-shrink: 0; position: relative; width: 110rem; height: 110rem; margin-bottom: 0; border-radius: 3rem;}
.cart-list__item .btn-good {right: 10rem; top: auto; bottom: 10rem; width: 15rem; height: 15rem;}
.cart-list__info {width: 100%; padding-left: 17rem;}
.cart-list__info .product-list__name {margin-bottom: 5rem; font-weight: 500;}
.cart-list__info .product-list__price {margin-top: 0;}
.cart-list__info *.btn-basic--line.gray {margin-left: 0; padding: 5rem 10rem; color: var(--b-03);}
.cart-list__count {margin-top: 13rem;}
.cart-list-wrap .count-wrap {margin-left: auto; border-radius: 3rem;}
.cart-list-wrap .count-wrap button {width: 25rem; min-height: 25rem; background: none; color: var(--b-03); font-weight: 500;}
.cart-list-wrap .count-wrap input[type="text"] {width: 30rem; min-height: 25rem; font-size: var(--font-12); color: var(--b-01); font-weight: 600;}

.cart-list__total {margin-top: 30rem;}
.cart-list__total > div { color: var(--b-01);}
.cart-list__total > div strong {margin-top: 12rem; padding-top: 12rem; font-weight: 600; border-top: 1px solid var(--bd-02);}
.cart-list__total *.btn-basic {margin-top: 40rem;}

.pay-form .cart-list__total {margin-top: 0; padding: 20rem; background: #fafafa; border-radius: 5rem;}
.pay-form .cart-list__item:first-child {padding-top: 0;}
.pay-form .pay-tit {display: block; margin-bottom: 12rem; color: var(--b-01); font-size:16rem;}
.pay-form .sec-line {margin: 20rem 0;}
.pay-form .btn-basic {margin-top: 30rem;}

.rent .cart-list__info .product-list__name {margin-bottom: 1px;}

/* 장비임대 */
.rent .cart-list__item {padding-bottom: 0;}
.rent-banner {width: 100%; height: 100rem; margin-bottom: 10rem; border-radius: var(--br-12); background: url(../img/main-banner02.jpg) no-repeat center / cover;}

