/* 메인 시작 */
.main-swiper { width: 100vw; height: 100vh; } 
.main-swiper .swiper-slide { width: 100vw; height: 100vh; } 
.main-swiper .swiper-slide img { width: 100vw; height: 100vh; object-position: 50% 50%; object-fit: cover; } 
/* 메인 끝 */

/* about 시작 */
.tit-line { display: flex; align-items: center; justify-content: space-between; } 
.tit-line .tit { font-weight: bold; } 
.tit-line .line { width: 100%; height: 1px; background: #000; margin-left: 15px; } 
.inner-txt { text-align: center; padding: 100px 0 50px; font-size: 20px; line-height: 35px; font-weight: 500; } 
/* about 끝 */

/* contact 시작 */
.input_txt { position: relative; margin-top: 50px; } 
.input_txt label { top: 5px; left: 0; } 
.input_txt input:focus ~ label { top: -17px !important; } 
.input_bx { padding: 0 0 30px; max-width: 500px; margin: 0 auto; } 
.input_txt_area { padding: 0; } 
.input_bx input { outline: none; padding-bottom: 5px; width: 100%; font-size: 18px; color: #000; border: none; border-bottom: 1px solid #000; transition: 0.1s; } 
.input_bx input:focus { border: none; } 
.input_txt label { position: absolute; font-size: 18px; color: #000; top: 0px; transition: 0.4s; } 
.input_txt input:focus ~ label { top: -22px !important; font-size: 14px !important; color: #aaa; transition: 0.4s; } 
.input_txt input:focus { border-bottom: 1px solid #aaa; } 

input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button { -webkit-appearance: none; } 
input[type=number] { -moz-appearance: textfield; } 

#message { margin-top: 40px; font-weight: 400; border-bottom: 1px solid #000; height: 100px; font-family: "Noto Sans KR", sans-serif; } 
#message::-webkit-scrollbar { width: 3px; } 
#message::-webkit-scrollbar-thumb { background-color: #2f3542; border-radius: 10px; } 
#sBtn { transition: .3s; margin-top: 25px; border: none; outline: none; background: #fff; cursor: pointer; padding: 10px 20px; font-size: 25px; font-weight: bold; } 
#sBtn:hover { color: #aaa; } 
.cur-cc { cursor: pointer; transition: .3s; } 
.cur-cc:hover { color: #aaa; } 
/* contact 끝 */

/* instagram 시작 */
.insta-bbx { position: absolute; display: flex; align-items: center; justify-content: center; width: 100%; height: 95%; } 
.insta-bbx i { padding: 20px; cursor: pointer; font-size: 100px; transition: .3s; } 
.insta-bbx i:hover { color: #aaa; } 
/* instagram 끝 */

/* works 시작 */
.works-fbx { margin-top: 80px; display: flex; flex-wrap: wrap; width: 100%; position: relative; height: auto; } 
.works-fbx .works-bx { cursor: pointer; width: 32%; margin: 0 2% 2% 0; aspect-ratio: 16/12; position: relative; overflow: hidden; } 
.works-fbx .works-bx:nth-child(3n) { margin-right: 0; } 
.works-fbx .works-bx img { width: 100%; height: 100%; object-fit: cover; object-position: center; transition: .5s; } 
.works-fbx .works-bx .works-bx-tbx { transition: .5s; opacity: 0; width: 100%; height: 100%; background: #00000081; position: absolute; top: 0; left: 0; } 
.works-fbx .works-bx .works-bx-tbx p { text-align: right; position: absolute; bottom: 10px; right: 10px; color: #fff; } 

.works-fbx .works-bx:hover img { transform: scale(1.1); } 
.works-fbx .works-bx:hover .works-bx-tbx { opacity: 1; } 

.works-fbx .works-bx .hover-underline-animation { display: inline-block; position: relative; color: #ffffff; } 
.works-fbx .works-bx .hover-underline-animation::after { content: ''; position: absolute; width: 100%; transform: scaleX(0); height: 2px; bottom: -7px; left: 0; background-color: rgb(255, 255, 255); transform-origin: bottom right; transition: transform .3s; } 
.works-fbx .works-bx:hover .hover-underline-animation::after { transform: scaleX(1); transform-origin: bottom left; } 

@media screen and (max-width: 1210px){
 .works-fbx .works-bx { width: 49%; } 
 .works-fbx .works-bx:nth-child(3n) { margin-right: 2%; } 
 .works-fbx .works-bx:nth-child(2n) { margin-right: 0%; } 
 .works-fbx .works-bx .works-bx-tbx { opacity: 1; background: #00000000; } 
 .works-fbx { margin-top: 0; } 
 }

@media screen and (max-width: 500px){
 .works-fbx .works-bx { width: 100%; margin: 0 0 4%; } 
 .works-fbx .works-bx:nth-child(3n) { margin-right: 0; } 
 }
/* works 끝 */

/* works-info 시작 */
.works-info-tbx { text-align: center; margin-top: 80px; } 
.works-info-tbx p:nth-child(1) { font-weight: bold; font-size: 20px; } 
.works-info-tbx p:nth-child(2) { margin-top: 30px; font-weight: bold; font-size: 18px; } 
.works-info-tbx p:nth-child(3) { margin-top: 30px; font-size: 16px; } 

.works-info-fbx { display: flex; flex-wrap: wrap; width: 100%; margin-top: 100px; padding-bottom: 50px; } 
.works-info-fbx .works-info-bx { box-sizing: border-box; margin-bottom: 1%; width: 49.5%; aspect-ratio: 16/12; } 
.works-info-fbx .works-info-bx:nth-child(odd) { margin-right: 1%; } 
.works-info-fbx .works-info-bx img { width: 100%; height: 100%; object-position: center; object-fit: cover; } 

/* listTop */
.listTop { padding-bottom: 80px; display: flex; justify-content: center; align-items: center; } 
.listTop .ltline { margin: 0 10px; width: 1px; height: 20px; background: #000; position: relative; } 
.listTop p { cursor: pointer; transition: .3s; padding: 5px; } 
.listTop p:hover { color: #aaa; } 

@media screen and (max-width: 1210px){
 .works-info-tbx { margin-top: 0; } 
 .works-info-fbx { margin-top: 50px; } 
 }
@media screen and (max-width: 500px){
 .works-info-fbx .works-info-bx:nth-child(odd) { margin-right: 0; } 
 .works-info-fbx .works-info-bx { width: 100%; margin-bottom: 4%; } 
 }
/* works-info 끝 */

/* cursor 시작 */
/* .cursor { z-index: 99999999999; position: relative; } 
.cursor .text { position: fixed; pointer-events: none; font-family: "Noto Sans KR", sans-serif; font-size: 60px; -webkit-text-stroke: 1px #fff; color: #161616; } 
.cursor .text span { color: transparent; } 
.cursor .center { position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); } 
@media screen and (max-width: 1210px){
 .cursor { display: none; } 
 } */
/* cursor 끝 */

/* 아래는 공통 */
@media screen and (max-width: 1210px){
 .inner-txt { padding: 20px 0; } 
 .tit-line { padding: 50px 0 20px; } 
 .cont-b.first { padding: 50px 0; } 
 }