Files
dnssash/theme/rb.basic/rb.custom/submenu/css/subpage.css
T
2026-06-11 18:47:38 +09:00

358 lines
6.9 KiB
CSS

@charset "utf-8";
/* ==========================================================================
서브 페이지 공통 레이아웃 (subpage common layout)
========================================================================== */
/* --- 상단 비주얼 (Top Visual) --- */
.sub-visual {
position: relative;
height: 250px;
background-size: cover;
background-position: 50% 50%;
background-repeat: no-repeat;
color: #fff;
}
/* 각 페이지별 배경 이미지 설정 (경로는 테마에 맞게 수정해주세요) */
.sub-visual.bg1 { background-image: url('../../../img/sub/sub/visual_bg_01.jpg'); } /* Hi창호는? */
.sub-visual.bg2 { background-image: url('../img/sub/visual_bg_02.jpg'); } /* Hi 고객스토리 */
.sub-visual .inner {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
text-align: center;
width: 100%;
}
.sub-visual .inner h2 {
font-size: 40px;
font-weight: 700;
}
/* --- 로컬 네비게이션 (LNB) --- */
.lnb-wrap {
position: relative;
border-bottom: 1px solid #ddd;
background: #fff;
}
.lnb {
max-width: 1200px;
margin: 0 auto;
}
.lnb .swiper-wrapper {
display: flex;
justify-content: center; /* PC에서는 중앙 정렬 */
}
.lnb .swiper-slide {
flex-shrink: 0; /* 모바일 스와이프를 위해 축소 방지 */
width: auto; /* 내용에 맞게 너비 자동 조절 */
}
.lnb .swiper-slide a {
display: block;
padding: 18px 30px;
font-size: 17px;
color: #333;
font-weight: 500;
text-align: center;
position: relative;
transition: color 0.3s;
text-decoration: none;
white-space: nowrap;
}
.lnb .swiper-slide.active a,
.lnb .swiper-slide a:hover {
color: #1c6a2f; /* 활성/호버 시 색상 */
font-weight: 700;
}
.lnb .swiper-slide.active a::after {
content: '';
position: absolute;
bottom: -1px;
left: 0;
width: 100%;
height: 3px;
background: #1c6a2f; /* 활성 메뉴 하단 바 */
}
/* --- 메인 콘텐츠 영역 (Main Contents Area) --- */
#container {
padding: 80px 20px; /* 상하, 좌우 여백 */
}
#contArea {
max-width: 1200px;
margin: 0 auto;
}
.sub-title {
text-align: center;
margin-bottom: 60px;
}
.sub-title h2 {
font-size: 36px;
font-weight: 700;
color: #222;
}
/* ==========================================================================
콘텐츠 스타일 (Contents Style)
========================================================================== */
.greetings .heading {
}
/* --- 소개 페이지 (greetings) --- */
.greetings .heading {
position: relative;
height: 350px;
padding: 50px;
margin-bottom: 60px;
display: flex;
align-items: center;
color: #fff;
background-image: linear-gradient(to right, #2e67a7, #55a13f);
}
.greetings .heading .img img {
position: absolute;
bottom: 0;
left: 108px;
}
.greetings .heading .txt {
position: relative;
margin-left: 440px;
}
.greetings .heading .txt .t2 {
font-size: 24px;
font-weight: 700;
line-height: 1.5;
margin: 0;
}
.greetings .content {
font-size: 16px;
line-height: 1.8;
color: #555;
}
.greetings .content p {
margin-bottom: 1.5em;
}
.greetings .content .lg-txt {
font-size: 1.2em;
font-weight: 600;
color: #333;
margin-top: 40px;
}
.greetings .content .text-green {
color: #1c6a2f;
}
/* --- 페이지 이동 링크 (doc-cnt) --- */
.doc-cnt {
margin-top: 80px;
border-top: 1px solid #eee;
padding-top: 40px;
}
.link-group {
display: flex;
justify-content: space-between;
}
.link-group .col a {
display: inline-flex;
align-items: center;
text-decoration: none;
color: #333;
font-size: 16px;
transition: color 0.3s;
}
.link-group .col a:hover {
color: #1c6a2f;
}
.link-group .col a i {
font-size: 20px;
margin: 0 10px;
}
/* --- 아이콘 리스트 (sub01_3.php) --- */
.icon-list {
list-style: none;
padding: 0;
margin: 0;
}
.icon-list li {
display: flex;
align-items: flex-start;
margin-bottom: 1em;
}
.icon-list i {
margin-right: 10px;
font-size: 1.2em;
line-height: 1.5;
color: #1c6a2f; /* 아이콘 색상 */
}
.icon-list .text {
flex: 1;
}
/* --- 견적 폼 (sub02.php) --- */
.form-group {
margin-bottom: 20px;
padding-bottom: 20px;
border-bottom: 1px solid #eee;
}
.form-group:last-child {
border-bottom: 0;
}
.form-group label {
font-weight: bold;
display: block;
margin-bottom: 8px;
font-size: 18px;
}
.form-group input[type="text"],
.form-group textarea {
width: 100%;
padding: 10px;
font-size: 1em;
border: 1px solid #ccc;
border-radius: 4px;
box-sizing: border-box;
}
.form-group .options {
display: flex;
flex-wrap: wrap;
gap: 10px;
margin-top: 8px;
align-items: center;
}
.form-group .options label {
display: flex;
align-items: center;
background: #f9f9f9;
border: 1px solid #ddd;
border-radius: 20px;
padding: 8px 15px;
cursor: pointer;
font-size: 15px;
font-weight: normal;
margin-bottom: 0;
}
.form-group .options input[type="radio"],
.form-group .options input[type="checkbox"] {
margin-right: 8px;
}
.form-group .sub-text {
font-size: 0.9em;
color: #666;
margin-top: 5px;
}
.well3 {
border: 1px solid #ddd;
padding: 20px;
border-radius: 8px;
margin-top: 20px;
background-color: #f5f5f5;
}
/* --- 버튼 스타일 --- */
.btn-group {
text-align: center;
margin-top: 40px;
}
.btn-group button {
padding: 12px 30px;
font-size: 16px;
margin: 0 10px;
border: none;
border-radius: 6px;
cursor: pointer;
transition: opacity 0.3s;
}
.btn-group button[type="submit"] {
background-color: #1c6a2f;
color: white;
}
.btn-group button[type="button"] {
background-color: #666;
color: white;
}
.btn-group button:hover {
opacity: 0.9;
}
/* ==========================================================================
반응형 스타일 (Responsive Style)
========================================================================== */
@media screen and (max-width: 992px) {
.sub-visual .inner h2 {
font-size: 32px;
}
.sub-title h2 {
font-size: 28px;
}
#container {
padding: 60px 15px;
}
}
@media screen and (max-width: 768px) {
.sub-visual {
height: 200px;
}
.sub-visual .inner h2 {
font-size: 28px;
}
.lnb .swiper-wrapper {
justify-content: flex-start; /* 모바일에서는 왼쪽부터 정렬 */
}
.lnb .swiper-slide a {
padding: 15px 20px;
font-size: 15px;
}
.greetings .heading .txt .t2 {
font-size: 18px;
}
.link-group {
flex-direction: column;
gap: 20px;
}
.link-group .col {
text-align: center;
}
.form-group .options {
flex-direction: column;
align-items: flex-start;
}
}