/** 탑 비쥬얼 공통 모듈 **/ #top--visual{ display: flex; align-items: center; justify-content: center; height:100%; width: 100%; &.contact{ background: url(/img/top_ban_contact.jpg) no-repeat top; background-attachment: fixed; background-size: contain; } .inner--content{ max-height: 440px; min-height: 440px; display: flex; align-items: center; justify-content: center; position: relative; > h1{ color:#FFF; text-align: center; font-size: 48px; font-weight: 800; display: flex; align-items: center; justify-content: center; } nav{ position: absolute; bottom:0px; left:50%; transform: translateX(-50%); >ul{ display: flex; align-items: center; justify-content: center; >li{ position: relative; padding:24px 0px; margin-right:81px; &:last-child{ margin-right:0px; &:after{ display: none; } } &:after{ content:''; display: block; width:1px; height:12px; opacity: .5; background: #fff; position: absolute; top:50%; transform: translateY(-50%); right:-41px; } a{ color:#FFF; font-size: 14px; font-style: normal; font-weight: 700; white-space: nowrap; display: flex; align-items: center; justify-content: center; flex-wrap: nowrap; gap:4px; i{ min-width:20px; height:20px; width:20px; svg{ transition: transform 0.3s ease; } &.active svg { transform: rotate(180deg); transition: transform 0.3s ease; } } } > ul{ position: absolute; top:60px; left:50%; transform: translateX(-50%); background: #fff; box-shadow: 0 8px 16px 0 rgba(31, 33, 40, 0.12); padding:16px; max-height: 0; overflow: hidden; opacity: 0; visibility: hidden; transition: all 0.3s ease; &.show { max-height: 200px; opacity: 1; visibility: visible; } li{ display: flex; align-items: center; justify-content: flex-start; width:100%; margin-bottom:16px; &:last-child{ margin-bottom:0px; } a{ color:#515973; font-size: 14px; font-style: normal; font-weight: 700; text-align: left; &:hover{ color:#00A654; } } } } } } } } } /** 중앙 컨텐츠 **/ #out--container{ width:100%; display: flex; align-items: center; justify-content: center; padding-top:100px; .out--container{ max-width:844px; .m--title{ text-align: center; color:#1F2128; text-align: center; font-family: Pretendard; font-size: 48px; font-style: normal; font-weight: 700; display: flex; align-items: center; justify-content: center; margin-bottom:60px; } .form--contents--wrap { margin-top: 40px; border-top:1px solid #1F2128; padding-top:40px; display: flex; align-items: center; justify-content: center; gap:20px; .form--contents { margin-bottom: 30px; &.half--cont{ max-width:100%; } } } .form--contents h3 { font-size: 16px; font-weight: 600; margin-bottom: 10px; } .form--contents h3 .required { color: #ff0000; margin-left: 4px; } .form--contents input[type="text"], .form--contents input[type="email"], .form--contents select, .form--contents textarea { width: 100%; padding: 10px; border: 1px solid #ddd; border-radius: 4px; font-size: 14px; } .tel-group { display: flex; align-items: center; gap: 10px; } .tel-group select { width: 100px; } .tel-group input { flex: 1; } .tel-group span { font-weight: 500; } .radio-group { display: flex; gap: 20px; align-items: center; } .radio-group label { display: flex; align-items: center; cursor: pointer; } .radio-group input[type="radio"] { width: auto; margin-right: 5px; } .privacy-box { border: 1px solid #ddd; border-radius: 4px; padding: 20px; background-color: #f9f9f9; } .privacy-content { height: 300px; overflow-y: auto; padding: 15px; background-color: #fff; border: 1px solid #e0e0e0; border-radius: 4px; margin-bottom: 20px; line-height: 1.8; } .agree-check { padding: 15px; background-color: #fff; border: 1px solid #e0e0e0; border-radius: 4px; } .agree-check h4 { font-size: 14px; font-weight: 600; margin-bottom: 10px; } .btn--wrap { text-align: center; margin-top: 40px; } .btn-submit { padding: 12px 40px; background-color: #00a651; color: #fff; border: none; border-radius: 4px; font-size: 16px; font-weight: 600; cursor: pointer; transition: background-color 0.3s; } .btn-submit:hover { background-color: #008840; } .btn-submit:disabled { background-color: #ccc; cursor: not-allowed; } .map-section { margin-top: 80px; padding-top: 40px; border-top: 1px solid #ddd; } .map-section h3 { font-size: 24px; font-weight: 600; margin-bottom: 20px; } .info-list, .contact-list { list-style: none; padding: 0; margin: 0 0 20px 0; } .info-list li, .contact-list li { font-size: 14px; line-height: 1.8; } .map-container { height: 450px; border: 1px solid #ddd; border-radius: 4px; overflow: hidden; } } }