@charset "utf-8";
/*境論空間設計*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+TC:wght@200..900&display=swap');



/*預設解除背景輪播*/
#content_main { margin:0;}
.bannerindex { position:relative; height:auto;}
.swiper-banner { position:static; margin:0; height:auto;} 
.swiper-slide img { height:auto;} 



/*版面*/
.services_page  .main_part{
    width: 100%;
    max-width: 100%;
    margin: auto;
    padding: 0;
}
.album_page .main_part,.album_class_page .main_part,.album_info_page .main_part,.case_page  .main_part,.contact_page .main_part{
    width: 100%;
    max-width: 100%;
    margin: auto;
    padding: 0;
}
#content{
    min-height: 80vh;
    overflow: hidden;
    z-index: 60;
    position: relative;
    background-color: #ffffff;
}
#content_main { 
    margin:0;    
    top: 0;
    left: 0;
    background-color: #ffffff;
}

 
.bannerindex::before {
    content: '';
    position: absolute;
    right: 0;
    top: 0;
    background-color: #ffffff;
    width: 3rem;
    height: 100%;
    z-index: 2;
}
.bannerindex::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    background-color: #ffffff;
    width: 3rem;
    height: 100%;
    z-index: 2;
}


.navigation{
    grid-template-columns: 1fr;
    justify-items: center;
}
.header_area{
    width: 100%;
    position: fixed;
    background-color: #ffffff;
    top: 0;
}
.header_area.sticky{
    width: 100%;
    position: fixed;
    background: #ffffff;
    top: 0;
}
.stellarnav > ul > li > a {
    font-size: 14px;
    font-family: "Noto Sans TC", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    color: #222222;
    letter-spacing: 1px;
}
.stellarnav ul{
    display: flex;
    justify-content: center;
}
.nav-brand{
    padding: 10% 0 0 0;
}
.stellarnav > ul > li{
    width: 100%;
    text-align: center;
}
.stellarnav li.has-sub > a:after{
    display: none;
}
/*相簿-全部隱藏*/
.stellarnav > ul > li.drop-left > ul  >li:first-child{
    display: none;
}
.stellarnav > ul > li.has-sub > a{
    padding-right: 0;
}
.stellarnav > ul > li > a:hover::after{
    content: "";
    position: absolute;
    background: #ccc;
    bottom: 0;
    display: block;
    left: 0;
    right: auto;
    margin: 0;
    width: 8px;
    height:8px;
    border-radius: 25px;
    animation-name: top_effects;
    animation-duration: 2s;
    animation-timing-function: cubic-bezier(.19,1,.22,1);
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
}
@keyframes top_effects{
0% {
    transform: translateZ(0);
    opacity: 1;
}
100% {
    transform: translate3d(500%, 0, 0);
    opacity: 0;
}
}

/*內頁BANNER 設定*/
.banner {
    background: #ffffff;
}
.banner h5 {
    display: none;
}
.banner.banA { background-image:none; }
.banner.banB {display: none; background-image:none;  }
.banner.banC { background-image:none; }
.banner.banD { background-image:none;  }
.banner.banE { background-image:none; }
.banner.banblog {  background-image:none; }


/*麵包屑*/
.path{
    display: none;
}


/*相簿*/
.album_class_page  .subalbum-menu{
    margin: 0;
    padding: 0;
}
.subalbum-menu h2 {
    color: #222222;
    font-size: 28px;
    margin: 0 auto;
    width: 100%;
    text-align: center;
    font-family: "Noto Serif TC", serif;
    letter-spacing: 6px;
    font-weight: 400;
    padding-bottom: 4%;
}
.album_page  .show-list .show_pic,.album_class_page .show-list .show_pic,.album_info_page .pic-list .show_pic{
    aspect-ratio: 4 / 2.8;
}

.album_page .show-list{
    grid-template-columns: repeat(auto-fill, minmax(48%, 1fr));
    grid-gap: 40px;
    padding: 0 4%;
}
.show-list{
    grid-template-columns: repeat(auto-fill, minmax(25%, 1fr));
    grid-gap: 40px;
    padding: 0 4%;
}
.album_info_page .pic-list{
    grid-template-columns: repeat(auto-fill, minmax(25%, 1fr));
    grid-gap: 40px;
    padding: 0 4%;
}
.show-list .item:hover .show_name{
    color: #878787;
    font-weight: 400;
}
.show-list .show_name{
    font-family: 'Noto Sans TC';
   font-weight: 400;
   text-align: center;
}

.fa-right-from-bracket::before{
    display: none;
}
.other_album_choice li a i.fa-solid.fa-right-from-bracket{
    margin: 0;
}
.other_album_choice li{
    background: transparent;
}
.other_album_choice li a{
    color: #222222;
}
.overlay{
    background: transparent;
}
.album_class_page  .other_album_choice{
    margin: 7px auto;
    width: 100%;
    display: flex;
    justify-content: center;
}
.other_album_choice li a {
    color: #222222;
    font-size: 20px;
    letter-spacing: 4px;
}
.album_fixed_title i{
    display: none;
}
.album_fixed_title {
    padding: 0 2%;
    margin: 0 auto;
    width: 100%;
    max-width: max-content;
    display: flex;
    justify-content: center;
    border-bottom: 1px solid #666666;
    padding-bottom: 1%;
}
.album_fixed_title span:before{
    content: '觀看更多';
    color: #222222;
    font-size: 18px;
    margin: 0 auto;
    letter-spacing: 1px;
    text-align: center;
    font-family: "Noto Serif TC", serif;
}
.album_class_page .other_album,.album_info_page .other_album{
    padding-bottom: 4%;
    padding-top: 4%;
}
.album_info_page .other_album_choice {
    text-align: center;
    margin: 7px auto;
    width: 100%;   
}
.page strong, .page a:hover{
    background: #ffffff;
    border: 1px solid #c5c5c5;
    color: #222;
}
.page li.pre_page a{
    padding: 0 16px;
}
.show-list .show_pic img, .other_subalbum li a img{
    transition: 0.8s;
    filter: grayscale(0.7);
}
.other_subalbum li a div:hover img, .show-list .show_pic:hover img{
    transform: scale(1.05);
    filter: grayscale(0);
}
.other_subalbum li p,.show-list .show_name{
    text-align: center;
    letter-spacing: 2px;
    width: fit-content;
    margin: 40px auto 0;
    position: relative;
    padding-bottom: 10px;
}




/*聯絡我們*/
.contact_page .contact_content{
    width: 100%;
    max-width: 74%;
    margin: 0 auto;
    padding: 0 0 6% 0;
}
.blank_letter {
    color: #222222;
   font-family: "Noto Serif TC", serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-size: 22px;
    letter-spacing: 2px;
    display: flex;
    justify-content: space-between;
    padding-top: 0;
    padding-bottom: 4%;
}
.contact_form li{
    grid-template-columns: 1fr;
}
.contact_form li .form__label{
    text-align: left;
    width: 100%;
    max-width: 100%;
    display: flex;
    padding-top: 2%;
}
.red{
    order: 1;
}
.info_PHONE:before{
    content: 'PHONE';
    letter-spacing: 2px;
}
.info_MAIL:before{
    content: 'MAIL';
    letter-spacing: 2px;
}
.info_ADD:before{
    content: 'ADD';
    letter-spacing: 2px;
}
.list_before.info li{
    padding-left: 0;
}
.info_TEL:before, .info_TEL2:before, .info_PHONE:before, .info_LINE:before, .info_FAX:before, .info_TAXID:before, .info_MAIL:before, .info_ADD:before, .info_ADD2:before{
    position: relative;
}
.list_before li{
    margin: 0 0 8% 0;
}
.contact_form li.last cite{
    background: #707070;
}
.contact_form li.last blockquote{
   border: 1px #cdcdcd solid;
}
.contact_content .information_left{
    width: 28%;
}
.contact_content .information_right {
    width: calc(100% - 29%);
    padding-left: 4%;
}
.contact_page .contact_form{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0px 50px;
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
}
.contact_form li:nth-of-type(n+5){
    grid-column: auto / span 2;
    text-align: left;
}
.contact_form li .form__label:first-child{
    padding-top: 8%;
}
.contact_form li input.noborder{
    border: none;
    background: #f3f3f3;
}
.contact_form li:has(input[type=checkbox]) .form__insert, .contact_form li:has(input[type=radio]) .form__insert{
    background: #f3f3f3;
    padding: 2%;
}
.contact_form li textarea.noborder{
    border: none;
    background: #f3f3f3;
}
.contact_form li.last{
    justify-content: space-between;
}


/*頁腳*/
/*改*/
.bodyDesktop .footer {
   font-size: 14px;
    background: #f9f9f9;
    height: 100vh;
    padding: 8% 0 0 0;
    position: relative;
    width: 100%;
    bottom: 0;
    z-index: 0;
    display: flex;
    flex-direction: column;
    
}
.headerSticky .footer {
    font-size: 14px;
    background: #f9f9f9;
    height: 100vh;
    position: sticky;
    width: 100%;
    bottom: 0;
    z-index: 0;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
}
.footer .center{
    max-width: 78%;
    max-height: 100%;
    top: 26%;
}
.footer_menu a{
    background: transparent;
    border: none;
}
.footer_menu {
    width: 100%;
    position: relative;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}
.footer_info{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    grid-template-columns: 32% 1fr;
    position: absolute;
    padding: 0;
}
.footer_info ul{
   width: 74%;
    display: flex;
    justify-content: space-around;
    order: 2;
    margin: 0 auto;
}
.footer_info li p,.footer_info li p a{
    color: #222;
}
.box_link{
    display: none;
}
.copy {
    border-top: none;
    position: absolute;
    bottom: 0;
    padding: 0 0 1% 0;
    font-size: 12px;
    width: 100%;
    left: 0;
    display: flex;
    justify-content: center;
    flex-direction: row;
    letter-spacing: 1px;
    line-height: 150%;
}
.copy  p{
    text-transform: uppercase;
}
.copy a{
    color: #999;
    position: relative;
}
.copy a:hover{
    color: #222;
}
.footer_logo {
    max-width: 100%;
    margin: 0 auto;
    order: 2;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    left: 4%;
}
.footer_logo img {
    max-width: 72%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
}
.footer_menu a:hover{
    background: #e6e6e6;
    color: #222222;
}
.footer_info li:nth-child(1){
    padding-left: 10%;
    position: relative;
}
.footer_info li:nth-child(1)::before {
    content: '境論空間設計';
    white-space: pre-line;
    position: relative;
    left: 0;
    font-weight: 400;
    letter-spacing: 2px;
    top: -8px;
    writing-mode: lr;
    font-family: 'Noto Sans TC';
}
.footer_info li:nth-child(2){
    position: relative;
    display: flex;
    justify-content: space-between;
    
}
.footer_info li p.phone:before{
    content: 'PHONE：';
}
.footer_info li p.mail:before{
    content: 'MAIL：';
}
.footer_info li p.add:before{
     content: 'ADD：';
}
.footer_menu a {
    color: #222222;
    font-family: 'Noto Sans TC';
    width: 104px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
}
.footer_info li p {
    color: #222;
    font-family: 'Noto Sans TC';
}
.privacyContent{
    font-size: 0.9rem;
    color: #222;
    font-family: 'Noto Sans TC';
    letter-spacing: 1px;
}
.footer_menu a:first-child{
    color: transparent;
}
.footer_menu a:first-child::before{
    position: absolute;
    content: 'Index';
    color: #222222;
    font-family: "Noto Sans TC", sans-serif;
    font-size: 14px;
    font-weight: 400;
}





@media screen and (max-width: 1600px) {
.footer .center{
    max-width: 90%;
    max-height: 100%;
}
.footer_info li:nth-child(1){
    padding-left: 0;
}
.footer_info ul{
    width: 60%;
}
.bodyDesktop .footer{
   padding: 4% 0 0 0;
}
   
}
@media screen and (max-width: 1400px) {
.footer_logo{
    left: 2%;
}
}
@media screen and (max-width: 1280px) {
.header_area{
    position: relative;
}
.header_area.sticky{
    position: relative;
}
.stellarnav ul{
    width: 100%;
    max-width: 76%;
    margin: 0 auto; 
}
.banner {
    min-height: 100px;
}
/*聯絡我們*/
.contact_content .information_left {
    width: 36%;
}
.contact_content .information_right{
    width: calc(100% - 37%);
}
.contact_page .contact_content{
    padding: 0;
}


/*頁腳*/

.footer{
   position: relative !important;
   height: 100%!important;
}
.footer_info ul{
    width: 60%;
}
/*頁腳改*/
.headerSticky .footer {
    height: 100vh!important;
}
.bodyDesktop .footer{
   padding: 0;
}

.footer_info{
    grid-template-columns: 38% 1fr;  
    padding: 0 0 4% 0;
}
.footer_info li:nth-child(1) {
    padding-left: 0;
}
.footer_info li:nth-child(2){
    right: 0;
}
.footer_logo{
    left: 0;
}

}
@media screen and (max-width: 1024px) {
/*聯絡我們*/
.contact_content .information_left {
    width: 40%;
}
.contact_content .information_right{
    width: calc(100% - 41%);
}
.ct_01{
    padding: 0 4px 2px; 
}
.contact_form li.last blockquote, .contact_form li.last cite{
    width: 50%;
}
/*頁腳*/    
.footer{
    height: 100%!important;
    padding-top: 4%  !important;
    position: relative;
}
.footer_info{
    grid-template-columns: 1fr;
    flex-direction: column;
}
.footer_info ul {
    width: 84%;
    margin: 0 auto;
}
.footer_logo {
    max-width: 100%;
    margin: 0 auto 4% auto;
}
.footer_info li:nth-child(1) {
    padding-left: 0;
}
.footer_info li:nth-child(2){
    position: relative;
    display: flex;
    width: 100%;
}
.footer_menu{
    grid-template-columns: repeat(6, 1fr);
}
.footer_info ul{
    padding-bottom: 4%;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
}
.footer_logo {
    max-width: 25%;
    margin: 0 auto 0 auto;
}
.copy{
    flex-direction: row;
    justify-content: center;
}
.footer_info{
    padding: 0;
}
.footer_info li:nth-child(1){
    text-align: center;
}
.footer .center{
    top: 10%;
}

}
@media screen and (max-width: 980px) {
/*頁腳*/    
.footer_info ul {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
}
.footer_info ul {
    width: 90%;
    margin: 0 auto;
}



}
@media screen and (max-width: 768px) {
/* 開啟手機板下方按鈕所需設定 */

.footer.with_shopping_mode { padding:30px 0 70px;       }
#to_top { bottom:60px;}
.bannerindex { padding:0; margin:0;}
#bottom_menu li a em{display: none;}
.fa-house::before,.fa-phone-volume::before,.fa-square-facebook:before{color: #222;}
#bottom_menu li a{padding: 8% 0;}
.bannerindex::after,.bannerindex::before{width: 0;}

/*產品*/
.product_menu_list,
.products-list,
.product-wrapper { width: 100%;}
.product-layer-two { margin-right: 0; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); grid-gap: 5px;}
.product_page .product-layer-two,
.product_page .products-list { width: 100%; border-right: none;}
.product_page .product_menu_list>h5{display: block;}
.product_page .show_content > a { order: 1;}
.product_page ul.products-list { order: 2;}
.product_page ul.page { order: 3;}
.product_page .product_menu_list {width: 100%; order: 0; min-height: unset;}

/*聯絡我們*/
.contact_content .information_left {
    width: 100%;
    padding: 0;
}
.contact_content .information_right {
    width: 100%;
    padding: 0;
}

/*頁腳*/
.copy{
    padding: 0 0 10% 0; 
}

}
@media screen and (max-width: 600px) {
/*大圖*/
.swiper-wrapper .swiper-slide img{
    width: 100%;
    height: 60vh;
    object-fit: cover;
    object-position: center;
    position: relative;
}
.nav-brand{
    padding: 4% 0 0 0;
    max-width: 84%;
}

/*相簿*/
.show-list,.pic-list,.album_info_page .pic-list {
    grid-template-columns: repeat(auto-fill, minmax(100%, 1fr));
    grid-gap: 40px;
    padding: 0 4%;
}
.album_class_page .subalbum-menu,.album_info_page  .show_content {
    margin: 0;
    padding: 0 4%;
}

/*聯絡我們*/
.contact_page .contact_form{
    display: flex;
    flex-direction: column;
}
.contact_form li .form__label{
    background: transparent;
}
.contact_page .contact_content{
    padding:0;
    width: 100%;
    max-width: 86%;
}


/*頁腳*/   
.footer_menu{
    grid-template-columns: repeat(2, 1fr);
}
.footer .center{
    top: 0;
}
.footer_logo{
    max-width: 50%;
}
.footer_logo img{
    max-width: 100%;
}
.footer_info li:nth-child(1){
    text-align: left;
}
.footer_info li:nth-child(1)::before{
    right: 0;
    left: unset;
    letter-spacing: 1px;
}
.footer.with_shopping_mode {
    padding: 16% 0 10% 0;
}
.footer_menu a{
   text-align: left; 
   justify-content: flex-start;
}
.footer_menu{
    justify-items: center;
}
.copy {
  
    padding: 0 0 10% 0;
  
}
.footer_info li:nth-child(1)::before {
    right: 0;
    left: 0;
    letter-spacing: 1px;
    position: relative;
}
}
@media screen and (max-width: 480px) {
/*聯絡我們*/
.ct_01 p{
    padding-left: 2% !important;
}
.blank_letter.f{
    padding-top: 12%!important;
}
/*頁腳*/    
.footer_info li:nth-child(1) {
    text-align: left;
    width: 94%;
} 
.footer_logo {
    max-width: 64%;
    margin: 10% auto 10% auto;
}
.footer_info ul{
    width: 100%;
}
.footer_menu a{
    background: #e6e6e6;
    width: 90%;
}
.footer_menu a:hover{
    background: transparent;
}


}
@media screen and (max-width: 380px) {

/*頁腳改*/
.headerSticky .footer {
    height: 120vh !important;
}

}