diff --git a/public/assets/images/layout/modal_header_icon03.svg b/public/assets/images/layout/modal_header_icon03.svg
new file mode 100644
index 0000000..e15a12c
--- /dev/null
+++ b/public/assets/images/layout/modal_header_icon03.svg
@@ -0,0 +1,5 @@
+
+
+
+
+
diff --git a/public/assets/images/sub/compliance_bx_icon.svg b/public/assets/images/sub/compliance_bx_icon.svg
new file mode 100644
index 0000000..57c5593
--- /dev/null
+++ b/public/assets/images/sub/compliance_bx_icon.svg
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/public/assets/images/sub/compliance_check_icon.svg b/public/assets/images/sub/compliance_check_icon.svg
new file mode 100644
index 0000000..4943e6f
--- /dev/null
+++ b/public/assets/images/sub/compliance_check_icon.svg
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/public/assets/images/sub/compliance_quest_icon.svg b/public/assets/images/sub/compliance_quest_icon.svg
new file mode 100644
index 0000000..b168463
--- /dev/null
+++ b/public/assets/images/sub/compliance_quest_icon.svg
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/public/assets/images/sub/compliance_tip_icon.svg b/public/assets/images/sub/compliance_tip_icon.svg
new file mode 100644
index 0000000..6d7524c
--- /dev/null
+++ b/public/assets/images/sub/compliance_tip_icon.svg
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/public/assets/images/sub/compliance_x_icon.svg b/public/assets/images/sub/compliance_x_icon.svg
new file mode 100644
index 0000000..1b6268c
--- /dev/null
+++ b/public/assets/images/sub/compliance_x_icon.svg
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/src/app/main/page.tsx b/src/app/main/page.tsx
index 26ce6d3..5c0375e 100644
--- a/src/app/main/page.tsx
+++ b/src/app/main/page.tsx
@@ -14,7 +14,7 @@ export default function MainPage(){
{/* 회원정보 팝업 */}
-
+ {/* */}
>
)
}
\ No newline at end of file
diff --git a/src/app/roofcompliance/page.tsx b/src/app/roofcompliance/page.tsx
new file mode 100644
index 0000000..12c2bb4
--- /dev/null
+++ b/src/app/roofcompliance/page.tsx
@@ -0,0 +1,29 @@
+import Footer from "@/components/layouts/Footer";
+import Header from "@/components/layouts/Header";
+import RoofCompliance from "@/components/roofcompliance/RoofCompliance";
+import RoofComplianceDetailPop from "@/components/roofcompliance/RoofComplianceDetailPop";
+
+export default function RoofCompliancePage(){
+ return(
+ <>
+
+
+
+
+
+
+
この適合表は参考資料として使用してください.
+
詳細やお問い合わせは1:1お問い合わせをご利用ください.
+
屋根材の選択or屋根材名を直接入力してください.
+
+
+
+
+
+
+
+
+
+ >
+ )
+}
\ No newline at end of file
diff --git a/src/components/PublishList/PublishList.tsx b/src/components/PublishList/PublishList.tsx
index cd3574f..8e0c822 100644
--- a/src/components/PublishList/PublishList.tsx
+++ b/src/components/PublishList/PublishList.tsx
@@ -188,6 +188,18 @@ export default function PublishList (){
2025/04/30
+
+ 지붕재 적합성성
+ 지붕재 적합성 페이지
+
+ RoofCompliancePage.tsx
+
+
+
+
+
+ 2025/05/08
+
diff --git a/src/components/roofcompliance/RoofCompliance.tsx b/src/components/roofcompliance/RoofCompliance.tsx
new file mode 100644
index 0000000..419d1b5
--- /dev/null
+++ b/src/components/roofcompliance/RoofCompliance.tsx
@@ -0,0 +1,80 @@
+'use client'
+import { useState } from "react"
+import RoofComplianceNodata from "./nodata/RoofCompliaceNodata";
+import RoofComplianceNoSearch from "./nosearch/RoofComplianceNoSearch";
+import RoofComplianceCheckData from "./RoofComplianceCheckData";
+
+export default function RoofCompliance(){
+ const [reference, setReference] = useState(false);
+ return(
+
+
+
+ 屋根材を選択してください.
+ 屋根材を選択してください.
+ 屋根材を選択してください.
+ 屋根材を選択してください.
+ 屋根材を選択してください.
+
+
+
+
+
+
+
凡例
+
+ setReference(!reference)}>
+
+
+
+
+
+ 設置可能
+
+
+
+
+ 設置可能
+
+
+
+
+ 設置可能
+
+
+
+
+ 設置可能
+
+
+
+
+ {/* checkData */}
+
+
+
+
+
+
+
+ 全選択
+
+
+ 詳細を見る
+
+
+ 選択ダウンロード
+
+
+ {/* 데이터 없을때 */}
+ {/*
*/}
+ {/* 검색기록 없을떄 */}
+ {/*
*/}
+
+ )
+}
\ No newline at end of file
diff --git a/src/components/roofcompliance/RoofComplianceCheckData.tsx b/src/components/roofcompliance/RoofComplianceCheckData.tsx
new file mode 100644
index 0000000..7762c3a
--- /dev/null
+++ b/src/components/roofcompliance/RoofComplianceCheckData.tsx
@@ -0,0 +1,64 @@
+export default function RoofComplianceCheckData(){
+ return(
+
+
+
+
+
+
+
+ 屋根技研 支持瓦
+
+
+
+
+
+
+
+
+
+
+
+ 屋根技研 支持金具
+
+
+
+
+
+
+
+
+
+
+
+ 屋根技研YGアンカー
+
+
+
+
+
+
+
+
+
+
+
+ ダイドハント支持瓦Ⅱ
+
+
+
+
+
+
+
+
+ )
+}
\ No newline at end of file
diff --git a/src/components/roofcompliance/RoofComplianceDetailPop.tsx b/src/components/roofcompliance/RoofComplianceDetailPop.tsx
new file mode 100644
index 0000000..2c8e001
--- /dev/null
+++ b/src/components/roofcompliance/RoofComplianceDetailPop.tsx
@@ -0,0 +1,32 @@
+export default function RoofComplianceDetailPop(){
+ return(
+
+
+
+
+
+
+
+
+
+
屋根材適合性詳細
+
+
+
+
+
+
+
+
+ )
+}
\ No newline at end of file
diff --git a/src/components/roofcompliance/nodata/RoofCompliaceNodata.tsx b/src/components/roofcompliance/nodata/RoofCompliaceNodata.tsx
new file mode 100644
index 0000000..f586288
--- /dev/null
+++ b/src/components/roofcompliance/nodata/RoofCompliaceNodata.tsx
@@ -0,0 +1,7 @@
+export default function RoofComplianceNodata(){
+ return(
+
+ 屋根材の選択or屋根材名を直接入力してください.
+
+ )
+}
\ No newline at end of file
diff --git a/src/components/roofcompliance/nosearch/RoofComplianceNoSearch.tsx b/src/components/roofcompliance/nosearch/RoofComplianceNoSearch.tsx
new file mode 100644
index 0000000..45512ac
--- /dev/null
+++ b/src/components/roofcompliance/nosearch/RoofComplianceNoSearch.tsx
@@ -0,0 +1,11 @@
+export default function RoofComplianceNoSearch(){
+ return(
+
+ 検索結果はありません。
+ 屋根材適合性表にない製品の情報を入力してください。 今後返信いたします。
+
+ お問い合わせ登録
+
+
+ )
+}
\ No newline at end of file
diff --git a/src/styles/components/_pop-contents.scss b/src/styles/components/_pop-contents.scss
index 88180a2..3eb796b 100644
--- a/src/styles/components/_pop-contents.scss
+++ b/src/styles/components/_pop-contents.scss
@@ -33,4 +33,11 @@
.btn-flex-wrap{
margin-top: 20px;
}
+}
+
+// 지붕재 적합성 상세
+.compliance-check-pop-contents{
+ padding: 14px;
+ border-top: 1px solid #ECECEC;
+ margin-top: 10px;
}
\ No newline at end of file
diff --git a/src/styles/components/_sub.scss b/src/styles/components/_sub.scss
index 9e4d04f..9f52715 100644
--- a/src/styles/components/_sub.scss
+++ b/src/styles/components/_sub.scss
@@ -29,6 +29,14 @@
.btn-bx{
flex: 1;
}
+ &.com{
+ .btn-bx{
+ flex: 1 1 auto;
+ button{
+ font-size: 12px;
+ }
+ }
+ }
}
// 매물 common
@@ -462,6 +470,145 @@
}
}
+// 지붕재 적합성
+.compliance-icon{
+ display: block;
+ width: 22px;
+ height: 22px;
+ background-size: cover;
+ background-repeat: no-repeat;
+ background-position: center;
+ &.check{
+ background-image: url(/assets/images/sub/compliance_check_icon.svg);
+ }
+ &.x{
+ background-image: url(/assets/images/sub/compliance_x_icon.svg);
+ }
+ &.quest{
+ background-image: url(/assets/images/sub/compliance_quest_icon.svg);
+ }
+ &.tip{
+ background-image: url(/assets/images/sub/compliance_tip_icon.svg);
+ }
+}
+.compliance-check-wrap{
+ padding-top: 10px;
+}
+.compliance-check-bx{
+ position: relative;
+ padding: 14px 18px;
+ border: 1px solid #EFEFEF;
+ border-radius: 4px;
+ margin-bottom: 10px;
+ &:last-child{
+ margin-bottom: 0;
+ }
+ &.act{
+ .bx-btn{
+ transform: rotate(0) !important;
+ }
+ .reference-list{
+ display: block
+ }
+ }
+}
+.check-name-wrap{
+ @include flex(0px);
+ align-items: center;
+ .check-name{
+ @include defaultFont($font-s-13, $font-w-500, $font-c);
+ }
+ .check-name-btn{
+ margin-left: auto;
+ .bx-btn{
+ display: block;
+ width: 22px;
+ height: 22px;
+ background: url(/assets/images/sub/compliance_bx_icon.svg)no-repeat center;
+ transform: rotate(180deg);
+ }
+ }
+}
+.reference-list{
+ display: none;
+ margin-top: 10px;
+ padding-top: 14px;
+ border-top: 1px solid #ECECEC;
+ transition: all .15s ease-in-out;
+ .reference-item{
+ margin-bottom: 8px;
+ padding-left: 14px;
+ .reference-item-bx{
+ @include flex(10px);
+ @include defaultFont($font-s-13, $font-w-400, $font-c);
+ align-items: center;
+ }
+ &:last-child{
+ margin-bottom: 0;
+ }
+ }
+ &.check{
+ .reference-item{
+ margin-bottom: 14px;
+ }
+ }
+}
+.compliace-nodata{
+ margin-top: 24px;
+ padding: 30px 0;
+ @include defaultFont($font-s-13, $font-w-400, $font-c);
+ text-align: center;
+}
+.compliace-nosearch{
+ padding: 30px 0;
+ span{
+ display: block;
+ @include defaultFont($font-s-13, $font-w-400, $font-c);
+ text-align: center;
+ }
+}
+.check-form-box{
+ &.com-tit{
+ label{
+ &:before{
+ width: 20px;
+ height: 20px;
+ top: 0;
+ }
+ }
+ input[type="checkbox"]:checked + label{
+ font-weight: 500;
+ &::after{
+ left: -1px;
+ }
+ }
+ }
+ &.com-txt{
+ label{
+ @include defaultFont($font-s-13, $font-w-400, #8595A7);
+ &:before{
+ width: 20px;
+ height: 20px;
+ top: 0;
+ }
+ }
+ input[type="checkbox"]:checked + label{
+ &::after{
+ left: -1px;
+ }
+ }
+ }
+}
+.check-item-wrap{
+ display: flex;
+ align-items: center;
+}
+.compliance-icon-wrap{
+ margin-left: auto;
+ display: flex;
+ align-items: center;
+}
+
@media screen and (max-width: 360px){
.btn-flex-wrap{
flex-direction: column;