/* 裝修需求計算機 */ /* request Start */ .request-content { // display: none; background-color: #FAFAFA; .accordion-button:not(.collapsed) { font-weight: 500; color: #EE751B; background-color: #fff; &::after { filter: invert(68%) sepia(41%) saturate(6755%) hue-rotate(350deg) brightness(96%) contrast(93%); } } .accordion-button:focus { box-shadow: none; } .accordion-body { font-size: .8rem; line-height: 1.4rem; letter-spacing: 1px; font-weight: 500; } // 規格區塊 .accordion.spec { h6 { padding-top: 1.5rem; margin-bottom: 1rem; border-top: 1px solid rgba(0, 0, 0, .125); &:first-child { padding-top: .5rem; border-top: none; } } } .ad-list { padding: 0 50px; @media (min-width: 767px) { position: fixed; bottom: 50px; } .img-item { display: flex; justify-content: center; max-width: 700px; margin: auto; @media (max-width: 1200px) { max-width: 400px; flex-direction: column; } a { padding-top: 15px; display: inline-block; border-top: 1px solid #fff; @media (max-width: 1200px) { border-top: none; } &:first-child { @media (max-width: 1200px) { border-top: 1px solid #fff; } } } } @media (max-width: 767px) { width: 100%; padding: 0; margin-top: 50px; } p { padding-bottom: 10px; text-align: center; @media (max-width: 767px) { padding-bottom: 15px; border-bottom: 1px solid #000; } } img { width: 100%; padding: 0 8px; box-shadow: 0px 3px 6px #00000029; @media (max-width: 767px) { padding: 0; } } } .main { position: relative; // width: 70%; // @media (max-width: 1400px) { // width: 60%; // } // @media (max-width: 1200px) { // width: 55%; // } // @media (max-width: 991px) { // width: 50%; // } // @media (max-width: 767px) { // width: 100% // } h2, h3 { font-weight: normal; } .info-block { height: 100%; padding: 100px 50px; display: flex; flex-direction: column; align-items: center; justify-content: space-between; position: absolute; left: 0; right: 0; z-index: 100; color: #fff; @media (max-width: 767px) { justify-content: center; } .headline { @media (min-width: 767px) { position: fixed; top: 100px; padding: 0 50px; } } h2 { font-size: 70px; font-weight: bold; @media (max-width: 1200px) { font-size: 38px; } @media (max-width: 575px) { font-size: 26px; line-height: 36px; } } h3 { font-size: 20px; margin-top: 30px; line-height: 30px; letter-spacing: 1px; @media (max-width: 767px) { font-size: 16px; } @media (max-width: 575px) { font-size: 14px; line-height: 24px; } } } .img-block { width: 70%; height: 100%; position: fixed; // position: relative; // display: inline-block; @media (max-width: 1400px) { width: 60%; } @media (max-width: 1200px) { width: 55%; } @media (max-width: 991px) { width: 50%; } @media (max-width: 767px) { width: 100%; position: unset; } /* 設置灰色遮罩 */ &::before { content: ""; position: absolute; top: 0; left: 0; width: 99.9%; // img-slider 33.3% x 3 height: 100%; z-index: 1; background-color: rgba(0, 0, 0, 0.7); } .img-slider { width: 33.3%; height: 100vh; min-height: 100%; overflow: hidden; @media (max-width: 767px) { height: 50vh; } @media (max-width: 575px) { height: 40vh; } .img-slider-list { // height: 500px; position: relative; img { width: 100%; height: 330px; // height: 500px; object-fit: cover; @media (min-height: 1300px) { height: 38vh; } } } } } .logo { display: block; width: 100%; text-align: center; img { width: 100%; max-width: 300px; } } } .form-block { // width: 30%; padding: 2rem; margin-left: auto; border: none; background-color: #FAFAFA; @media (max-width: 1400px) { padding: 2rem 1rem; } // @media (max-width: 1200px) { // width: 45%; // } // @media (max-width: 991px) { // width: 50%; // padding: 2rem; // } // @media (max-width: 767px) { // width: 100%; // padding: 2rem 4rem; // } // @media (max-width: 575px) { // width: 100%; // padding: 2rem; // } .card { border: none; max-width: 365px; @media (max-width: 767px) { max-width: 435px; } .logo, .card-body { background-color: #FAFAFA; } // .logo { // display: flex; // justify-content: center; // img { // width: 100%; // max-width: 150px; // } // } } form { color: #34404B; ::placeholder { color: #d3d3d3; opacity: 1; /* Firefox */ } .invalid-feedback { display: none; height: 0px; text-align: end; } .submit { padding: 10px; background-color: #EE751B; border: none; } .type-items { height: 70px; padding: 5px 10px; align-items: center; border: 1px solid #aaaaaa; border-radius: 5px; transition: all 0.3s; &:hover { border-color: #ee751b; } span { width: 100px; h4 { margin-bottom: 0; font-size: 18px; } p { margin-bottom: 0; font-size: 12px; color: #ee751b; } } small { max-width: 180px; display: inline-block; font-size: 12px; color: #959595; @media (max-width: 991px) { max-width: 150px; } @media (max-width: 767px) { max-width: 100%; } @media (max-width: 400px) { max-width: 140px; } } label, input { cursor: pointer; } input { margin: 0 5px; border: 2px solid white; box-shadow: 0 0 0 1px #EE751B; appearance: none; border-radius: 50%; width: 12px; height: 12px; background-color: #fff; transition: all ease-in 0.2s; @media (max-width: 991px) { width: 11px; height: 11px; } @media (max-width: 575px) { height: 10px; } } input:checked { background-color: #EE751B; } } .disclaimer { margin-top: 5px; font-size: 12px; text-align: center; a { color: #EE751B; text-decoration: underline; } } // 自訂 checkbox input[type="checkbox"] { position: relative; border-color: #000; cursor: pointer; &:focus { box-shadow: unset; } &:checked { background-color: white; &::before { content: "\2713"; // Unicode 編碼 position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); font-size: 14px; color: black; } } } } } // .square-footage { // position: relative; // p { // top: 40px; // right: 12px; // position: absolute; // } // } .loading-block { width: 100vw; height: 100vh; display: none; // display: flex; align-items: center; flex-direction: column; justify-content: center; background: #fff; position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 100; p { font-size: 16px; color: #EE751B; letter-spacing: 4.8px; } .spinner { /* Size and position */ font-size: 100px; /* 1em */ width: 1em; height: 1em; margin-bottom: 20px; position: relative; /* Styles */ list-style: none; border-radius: 50%; border: 0.01em solid rgba(150, 150, 150, 0.2); /* Subtle white line circling the dots */ li { width: 0.2em; height: 0.2em; position: absolute; border-radius: 50%; &:nth-child(1) { background: #EE751B; /* Blue */ top: 0; left: 50%; margin-left: -0.1em; transform-origin: 50% 250%; animation: rota 1.13s linear infinite, opa 3.67s ease-in-out infinite alternate; } &:nth-child(2) { background: #FF505E; /* Red */ top: 50%; right: 0; margin-top: -0.1em; transform-origin: -150% 50%; animation: rota 1.86s linear infinite, opa 4.29s ease-in-out infinite alternate; } &:nth-child(3) { background: #FFCD26; /* Yellow */ bottom: 0; left: 50%; margin-left: -0.1em; transform-origin: 50% -150%; animation: rota 1.45s linear infinite, opa 5.12s ease-in-out infinite alternate; } &:nth-child(4) { background: #AAD647; /* Green */ top: 50%; left: 0; margin-top: -0.1em; transform-origin: 250% 50%; animation: rota 1.72s linear infinite, opa 5.25s ease-in-out infinite alternate; } } } } @keyframes rota { to { transform: rotate(360deg); } } @keyframes opa { 12.0% { opacity: 0.8; } 19.5% { opacity: 0.88; } 37.2% { opacity: 0.64; } 40.5% { opacity: 0.52; } 52.7% { opacity: 0.69; } 60.2% { opacity: 0.6; } 66.6% { opacity: 0.52; } 70.0% { opacity: 0.63; } 79.9% { opacity: 0.6; } 84.2% { opacity: 0.75; } 91.0% { opacity: 0.87; } } } .request-content, .result-content { .logo { display: flex; justify-content: center; img { width: 100%; max-width: 150px; @media (max-width: 767px) { max-width: 110px; } } } } .result-content { // display: none; padding: 20px 0 50px; a { text-decoration: none; } p { margin-bottom: 0; } ul { list-style: none; padding: 0; } .logo { margin-bottom: 25px; } .line { position: relative; z-index: 100; padding: 25px 0; border-top: 1px solid #959595; border-bottom: 1px solid #959595; @media (max-width: 767px) { border-bottom: none; } } .bg-text { position: absolute; font-size: 20em; top: 20px; left: 0; color: #fff; @media (max-width: 767px) { display: none; } } .tab-list { margin: 0; padding: 0; // display: flex; display: none; // 只有全室裝修顯示 justify-content: center; position: absolute; z-index: 1000; top: 15px; left: 0; right: 0; @media (max-width: 575px) { top: 10px; } li { margin: 0 20px; a { color: #959595; // color: #fff; } } #underline { position: absolute; bottom: -1px; left: 40px; width: 40px; height: 1px; z-index: 1000; background-color: #fff; transition: width 0.3s; } } .card-item { position: relative; width: 100%; height: 550px; background-image: url('../img/result-bg.png'); background-size: auto; background-position: center; background-repeat: no-repeat; border-radius: 20px; @media (max-width: 991px) { height: 690px; } @media (max-width: 575px) { height: 800px; } &::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius: 20px; background-color: rgba(5, 13, 21, 0.8); // 遮罩 backdrop-filter: blur(2px); // 模糊效果 } .main-info { height: 80%; justify-content: center; @media (max-width: 991px) { align-items: center; flex-direction: column; } &.type { .chart-box { @media (max-width: 991px) { top: -28%; } } } &.type { .chart-text { @media (max-width: 991px) { top: 18.5%; } } } } .chart-box { position: absolute; z-index: 100; height: 100%; display: flex; align-items: center; justify-content: center; @media (max-width: 991px) { top: -30%; } #chart { width: 300px !important; @media (max-width: 991px) { width: 200px !important; } } } } .chart-text { position: absolute; z-index: 100; font-size: 42px; font-weight: 500; color: #fff; text-align: center; @media (max-width: 991px) { top: 17%; font-size: 30px; } &.range { display: none; @media (max-width: 991px) { top: 10%; } @media (max-width: 575px) { top: 11.5%; } .tilde { position: absolute; left: 50px; transform: rotate(90deg); @media (max-width: 767px) { left: 35px; } } } } .price-card { position: absolute; z-index: 100; color: #fff; @media (max-width: 991px) { top: 39%; left: 0; right: 0; display: flex; flex-direction: column; align-items: center; } @media (max-width: 575px) { padding: 0 15px; } ul { width: 250px; max-width: 100%; margin-bottom: 0; padding: 15px 0 25px; display: flex; flex-direction: column; align-items: center; font-size: 20px; border-radius: 10px; border: 1px solid #fff; @media (max-width: 991px) { // max-width: 480px; width: 100%; padding: 10px 0; display: flex; flex-wrap: wrap; flex-direction: row; justify-content: space-evenly; } @media (max-width: 575px) { max-width: 450px; width: 95%; margin: auto; font-size: 14px; } li { span { width: 90px; display: inline-block; text-align: center; border-bottom: 1px solid #fff; font-size: 28px; font-weight: 500; @media (max-width: 575px) { width: 70px; font-size: 20px; } } } } small { margin-top: 20px; display: block; color: #B7B7B7; text-align: center; @media (max-width: 991px) { margin-top: 10px; } @media (max-width: 767px) { width: 90%; text-align: end; } } .main { @media (max-width: 991px) { max-width: 480px; } @media (max-width: 575px) { max-width: 430px; } } .partial { width: 280px; display: none; @media (max-width: 991px) { /* Grid */ width: 600px; max-width: 100%; grid-template-columns: repeat(auto-fit, minmax(220px, max-content)); padding: initial; } @media (max-width: 767px) { width: 500px; grid-template-columns: repeat(auto-fit, minmax(180px, max-content)); font-size: 16px; } @media (max-width: 575px) { width: 350px; grid-template-columns: repeat(auto-fit, minmax(300px, max-content)); font-size: 14px; } li { display: flex; align-items: end; justify-content: center; @media (max-width: 991px) { padding: 0px 10px 10px; } span { margin: 0 5px; width: 120px; @media (max-width: 767px) { width: 100px; font-size: 24px; } } p { width: 80px; text-align: center; } } } } .info-item { display: flex; flex-direction: column; align-items: center; justify-content: space-around; h3 { font-size: 24px; line-height: 32px; text-align: center; @media (max-width: 1200px) { font-size: 20px; } } h4 { font-size: 16px; font-weight: 300; color: #34404B; @media (max-width: 1200px) { font-size: 15px; } } &, img { @media (max-width: 991px) { margin-top: 25px; } } img { width: 100%; height: 450px; max-width: 330px; object-fit: cover; border-radius: 0 0 50% 0; } .img-block { position: relative; a { display: block; position: absolute; bottom: 0; right: 0; z-index: 1000; img { width: 150px; height: 150px; } .btn { position: relative; z-index: 100; transition: all .3s; &:hover { opacity: .9; } } .text { width: 140px; height: 140px; position: absolute; left: 5px; top: 2px; animation: rotate 15s linear infinite; } .bg { position: absolute; left: 0px; top: -3px; z-index: -1; } @keyframes rotate { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } } } } .info-card { width: 93%; margin: 30px; position: absolute; bottom: 0; background: #fff; border-radius: 10px; @media (max-width: 767px) { margin: 20px; } @media (max-width: 575px) { padding: 0 20px; } .row { padding: 20px 0; @media (max-width: 991px) { padding: 0 0 15px; justify-content: center; } div:first-child { @media (max-width: 991px) { width: 400px; } } ul { margin: 0; padding: 0; @media (max-width: 991px) { width: 100%; display: flex; justify-content: space-between; } li { font-weight: 500; } } .caption { display: flex; align-items: center; justify-content: space-around; @media (max-width: 1200px) { flex-direction: column; } @media (max-width: 991px) { width: 400px; flex-direction: row; justify-content: space-between; } h3 { font-size: 18px; color: #34404B; margin-bottom: 0; } small { font-size: 14px; color: #EE751B; } p { max-width: 220px; font-size: 14px; color: #959595; // 超過三行省略 overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; } section { @media (max-width: 575px) { width: 100%; } } } .border-end { @media (max-width: 991px) { padding: 10px; border-right: none !important; border-bottom: 2px solid #dddddd; } } .reset-btn { width: 100%; height: 100%; border: none; border-radius: 10px; background-color: #B7B7B7; color: #fff; transition: all .3s; @media (max-width: 991px) { width: 180px; height: 50px; margin: 15px auto 0; } &:hover { background-color: #959595; } } } } .style-list { @media (max-width: 767px) { border-top: 1px solid #959595; } p { padding: 20px; margin-bottom: 0; font-size: 20px; font-weight: 500; color: #34404B; text-align: center; } a { display: block; position: relative; overflow: hidden; border-radius: 10px; &:hover { img { transform: scale(1.1); } } p { padding: 5px; position: absolute; bottom: 0; left: 0; right: 0; font-size: 18px; background: rgba(255, 255, 255, 0.75); } img { width: 100%; height: 180px; object-fit: cover; border-radius: 10px; transition: all .5s; box-shadow: 2px 2px 6px rgba(0, 0, 0, .2); @media (max-width: 575px) { height: 120px; } } } } } /* request End */ .column-list { a { text-decoration: none; } button { width: 100%; display: flex; justify-content: center; border: none; background-color: transparent; } .bg-img { width: 100%; height: 15vw; object-fit: cover; // background-repeat: no-repeat; // background-size: cover; // background-position: center; // position: relative; @media (max-width: 991px) { height: 30vw; width: 50vw; } @media (max-width: 767px) { width: 100%; } @media (max-width: 575px) { height: 35vw; width: 85vw; } } .card-title { font-size: 1.125rem; font-weight: 600; color: #727679; letter-spacing: 1px; line-height: 1.5; text-align: left; } .card-body { display: flex; flex-direction: column; justify-content: space-between; } .badge-list { display: flex; flex-wrap: wrap; p { margin: 4px 7px 4px 0; padding: 3px 6px; font-size: 12px; font-weight: 500; border: 1px solid #ee751b; border-radius: 5px; color: #ee751b; } // .badge { // margin: 3px 3px 3px 0; // padding: 5px 10px; // font-weight: 500; // background-color: #ee751b; // } } } #columnModal { .modal-title { color: #34404b; font-size: 1.5rem; font-weight: 700; margin-bottom: .5rem; } .cover-img { max-width: 80%; @media (max-width:991px) { max-width: 100%; } } pre { line-height: 2; code { color: #727679; letter-spacing: 2px; font-size: 16px; font-family: "Noto Sans TC", sans-serif; } } .content { h1, h2, h3 { display: flex; margin: 1.5rem 0; font-weight: bold; } h2 { color: #800000; font-size: 20px; } h3 { font-size: 18px; } p { color: #727679; line-height: 2; } ul { // padding: 0; // margin: 3rem 0; // list-style: none; li { margin-bottom: 10px; color: #727679; &:last-child { margin-bottom: 0; } } } } a { font-size: 1rem; text-decoration: none; color: #3366ff; } } #rightSidebar { position: sticky; @media (max-width: 767px) { padding: 0; } } .text-primary { color: #ee751b !important; } .main-title { padding: 20px 40px; margin: 25px auto; background-image: url("../img/banner-05.png"); background-color: rgba(0, 0, 0, 0.6); background-blend-mode: multiply; background-size: cover; background-position: center center; color: #fff; @media (max-width: 767px) { padding: 20px; margin: 5px auto 25px; } h2, h3 { line-height: 1.5; letter-spacing: 1px; } h3 { margin-top: 1rem; font-size: 1.25rem; @media (max-width: 767px) { font-size: 1rem; } } } .btn-outline-primary { color: #ee751b; background-color: transparent; border-color: #ee751b; &:hover { color: #fff; border-color: #ee751b; background-color: #ee751b; } }