.arch02-template-03 {
    height: auto;
    position: relative;
    display: block;
    overflow: hidden;
    font-family: 'Noto Sans TC', 'Microsoft JhengHei', sans-serif;
    font-weight: 300;
}
.arch02-template-03 .this_box{
    width: 100%;
    position: relative;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}
.arch02-template-03 .main_map{

    position: relative;
    width: 54%;
    overflow: hidden;
    
}

.arch02-template-03 .main_map .map_link{
    position: relative;
    transform: scale(1.2);
    transition: all .8s ease;
    opacity: 0;
}
.arch02-template-03 .main_map.-scroll-active .map_link{
    transform: scale(1);
    opacity: 1;
}
.arch02-template-03 .main_map .map_link img{
    width: 100%;
    transition: 1s ease;
}
.arch02-template-03 .main_map .map_link img:nth-child(1){
    opacity: 1;
}
.arch02-template-03 .main_map .map_link img:nth-child(2){
    position: absolute;
    top: 0;
    left: 0;
    
}
.arch02-template-03 .main_map .map_link img:nth-child(2).wait{
    opacity: 0;
    transform: translateY(-20px);
}
.arch02-template-03 .main_map .map_link img:nth-child(1).wait{
  opacity: 0;
    transform: translateY(-20px);
}
.arch02-template-03 .this_box .wrap{
    display: flex;
    flex-direction: column;
    width: 46%;
    padding: 10% 0  10% 5%;
    position: relative;
}
.arch02-template-03 .this_box .wrap > .title{
    position: relative;
    top: 0%;
    margin-bottom: 10%;
}
.arch02-template-03 .this_box .wrap .title h2{
    font-size: calc(50/1920*100vw);
    color: #004f4f;
    font-weight: 900;
    position: relative;
    left: 4%;
}
.arch02-template-03 .this_box .wrap .bigBox {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    
}
.arch02-template-03 .this_box  .wrap .box{
    display: flex;
    width: 32%;
    align-items: center;
    margin-bottom: 30px;
    position: relative;
    cursor: pointer;
    margin-right: 100px;
}

.arch02-template-03 .this_box .wrap .box .mark{
    
    width: 42px;
    height: 43px;
}
.arch02-template-03 .this_box .wrap .box:hover .mark path{
    fill:#004f4f;
}
.arch02-template-03 .this_box .wrap .box:hover .mark g rect{
    fill: #004f4f;
}
.arch02-template-03 .this_box .wrap .box .mark  path{
    fill:#bcbdbe;
}
.arch02-template-03 .this_box .wrap .box .mark  rect{
    fill:#bcbdbe;
}

.mark  path.gray {
    fill: #bcbdbe !important;
}
.mark  rect.gray{
    fill: #bcbdbe  !important;
}
 .mark  path.live{
    fill:#004f4f !important;
}

 .mark  rect.live{
    fill: #004f4f  !important;
}
.arch02-template-03 .this_box  .wrap .box:hover::before{
    width: 100%;
}
.arch02-template-03 .this_box .wrap .box:hover p{
    color: #004f4f;
}
.arch02-template-03 .this_box .wrap .box::before{
    content: ' ';
    position: absolute;
    width: 0%;
    height: 1px;
    background-color: #004f4f;
    bottom: -5px;
    transition: 1s ease;
}
.arch02-template-03 .this_box .wrap .box.short::before{
    width: 0%;
}
.arch02-template-03 .this_box .wrap .box.long::before{
    width: 100%;
}
.arch02-template-03 .this_box .wrap .box p{
    font-size: calc(30/1920*100vw);
    color: #bcbdbe;
   position: absolute;
    font-weight: 700;
    left: 100px;
    transition: 1s ease;
}
.arch02-template-03 .this_box .wrap .box:nth-child(1) p{
    color: #004f4f;
}

.arch02-template-03 .text_box{
    position: absolute;
    bottom: 19.5%;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    opacity: 0;
    transition: 1s ease;
}
.arch02-template-03 .text_box.active{
    opacity: 1;
}
.arch02-template-03 .text_box .title{
    color: #004f4f;
    font-size: 30px;
    display: block;
    position: relative;
    margin-bottom: 10px;
    font-weight: 700;
    opacity: 0;
    transition: all .8s ease .5s;
    transform: translateY(20px);
}
.arch02-template-03 .text_box .memo{
    color: #000;
    font-size: calc(21/1920*100vw);
    display: block;
    position: relative;
    line-height: 32px;
    opacity: 0;
    transition: all .8s ease .8s;
    transform: translateY(20px);
    letter-spacing: 1px;
    padding-right: 30%
}

.arch02-template-03 .-scroll-active .text_box .title,
.arch02-template-03 .-scroll-active .text_box .memo{
    opacity: 1;
    transform: translateY(0);
}

@media (max-width: 1800px){
    .arch02-template-03 .this_box .wrap .title h2{
        left: 5%;
    }
}
@media (max-width: 1700px){
    .arch02-template-03 .this_box .wrap .title h2{
        left: 6%;
    }
}
@media (max-width: 1600px){
    .arch02-template-03 .this_box .wrap{
        padding: 10% 0 10% 4%;
    }
    .arch02-template-03 .this_box .wrap .box {
        width: 35%;
        margin-right: 80px;
        margin-bottom: 20px;
    }
    .arch02-template-03 .this_box .wrap .title h2{
        left:5%;
    }
    .arch02-template-03 .this_box .wrap .box p{
        left: 80px;
    }
}
@media (max-width: 1550px){
    .arch02-template-03 .this_box .wrap .title h2{
        left:5.5%;
    }
}
@media (max-width: 1500px){
    .arch02-template-03 .this_box .wrap .title h2{
        left:6%;
    }
}
@media (max-width: 1440px) {
    .arch02-template-03 .this_box .wrap{
        padding: 8% 0 8% 3%;
    }
    .arch02-template-03 .this_box .wrap .box{
        margin-right: 60px;
    }
    .arch02-template-03 .text_box{
        bottom:15.5%;
    }
    .arch02-template-03 .this_box .wrap .title h2{
        left: 5%;
    }
}


@media (max-width: 1400px){
    .arch02-template-03 .this_box .wrap .title h2{
        left: 6%;
    } 
}




@media (max-width:1280px) {
    .arch02-template-03 .this_box{
        
    }
    .arch02-template-03 .this_box .wrap{
        padding:8% 0 8% 3%
    }
    .arch02-template-03 .this_box .wrap .title h2{
        left: 3.5%;
    } 
    .arch02-template-03 .text_box{
        width:80%;
        bottom: 15.5%;
    }
    .arch02-template-03 .this_box .wrap .box{
        margin-right: 30px;
        width: 35%;
    }
    .arch02-template-03 .text_box .title {
        font-size: 22px;
        margin-bottom: 11px;
    }

    .arch02-template-03 .text_box .memo {
       
        line-height: 28px;
        padding-right: 20%;
    }




}
@media (max-width:1200px){
    .arch02-template-03 .this_box .wrap .title h2{
        left: 4.5%;
    } 
}
@media (max-width:1200px){
    .arch02-template-03 .this_box .wrap .title h2{
        left: 5.5%;
    } 
}
 @media (max-width: 1024px) and (min-width:1024px){
    .arch02-template-03 .this_box .wrap .box{
        margin-bottom: 30px;
    }
    .arch02-template-03 .text_box{
        bottom: 8%;
    }
    .arch02-template-03 .text_box .title{
        font-size: 30px;
    }
    .arch02-template-03 .text_box .memo{
        line-height: 38px;
    }
    .arch02-template-03 .text_box{
        bottom: 16%;
    }
 }
@media (max-width:1024px) {
    .arch02-template-03 {
        
    }
    .arch02-template-03 .this_box {
        width: 100%;
        display: block;
    }
    .arch02-template-03 .main_map{
        width: 100%;
    }
    .arch02-template-03 .text_box{
        width: 80%;
        display: block;
        margin-top: 26px;
    }
    .arch02-template-03 .text_box .title{
        margin-bottom: 15px;
        font-size: 36px;
    }
    .arch02-template-03 .this_box .wrap > .title{
        bottom:10vw;
        margin-bottom: 7%;
    }
    .arch02-template-03 .this_box .wrap .title h2{
        font-size: calc(48/1024*100vw);
        left:9%;
    }
    
    .arch02-template-03 .this_box .wrap{
        width: 100%;
        padding: 22% 0 24% 15% ;
    }

    .arch02-template-03 .this_box .wrap .box{
        width: 45%;
        bottom: 10vw;
        margin-right: 30px;
    }
    .arch02-template-03 .this_box .wrap .box p{
        font-size: calc(70/1920*100vw);
    }
    .arch02-template-03 .text_box .memo{
        font-size: calc(24/1024*100vw);
    }
    .arch02-template-03 .text_box{
        bottom: 16%;
    }
}
@media (max-width: 1000px){
    .arch02-template-03 .this_box .wrap .title h2{
        
        left:9.5%;
    }
}
@media (max-width: 900px){
    .arch02-template-03 .this_box .wrap .title h2{
        left: 10%;
    }
}
@media (max-width: 768px){
    .arch02-template-03 .this_box .wrap .box{
        margin-right: 10px;
    }
    .arch02-template-03 .this_box .wrap .box p{
        left: 80px;
    }
    .arch02-template-03 .this_box .wrap .title h2{
        font-size: calc(36/768*100vw);
        left: 11%;
    }
    .arch02-template-03 .this_box .wrap > .title{
        bottom: 12vw
    }
    .arch02-template-03 .text_box .title{
        font-size: calc(28/768*100vw);
    }
    .arch02-template-03 .text_box{
        bottom: 12%;
    }
    .arch02-template-03 .text_box .memo{
        font-size: calc(22/1024*100vw);
    }
}

@media (max-width: 700px){
    .arch02-template-03 .this_box .wrap .title h2{
        left: 10.5%;
    }
}
@media (max-width:600px) {
    .arch02-template-03 .text_box{
        width: 67%;
    }
    .arch02-template-03 .text_box .title {
        margin-bottom: 6px;
        
    }
    .arch02-template-03 .this_box .wrap .title h2{
        left: 11%
    }
    .arch02-template-03 .text_box .memo {
        font-size: 13px;
        line-height: 24px;
        letter-spacing: 1px;
        padding-right:10%;
    }
    .arch02-template-03 .this_box .wrap .box{
        margin-right: 30px;
        width: 40%;
    }

    
}

@media (max-width: 500px) and (min-width: 400px){
    .arch02-template-03 .this_box .wrap{
        padding: 22% 0 32% 10%;
    }
    .arch02-template-03 .this_box .wrap .box p{
        font-size: 22px;
        left: 60px;
    }
    .arch02-template-03 .this_box .wrap .box{
        width: 43%;
    }
    .arch02-template-03 .this_box .wrap .box:nth-child(even){
        margin-right: 0;
    }
    .arch02-template-03 .this_box .wrap .title h2{
        font-size: calc(32/500*100vw);
        left: 6.5vw;
    }
    .arch02-template-03 .text_box{
        width: 85%;
    }
    .arch02-template-03 .text_box .title{
        font-size: 22px;
    }
    .arch02-template-03 .text_box .memo{
        font-size: 16px;
    }
}
@media (max-width: 400px) and (min-width:300px){
    .arch02-template-03 .this_box .wrap{
        padding: 24% 0 40% 8%;
    }
    .arch02-template-03 .this_box .wrap .box{
        margin-right: 30px;
        margin-bottom: 10px;
        width: 42%;
    }
    .arch02-template-03 .this_box .wrap .box:nth-child(even){
        margin-right: 0;
    }

    .arch02-template-03 .this_box .wrap .box p{
        font-size:calc(100/1920*100vw);
        left: 55px;
    }
    .arch02-template-03 .this_box .wrap .title h2{
        font-size: calc(32/500*100vw);
        left: 8vw;
    }
    .arch02-template-03 .text_box{
        width: 85%;
    }
    .arch02-template-03 .text_box .title{
        font-size: 20px;
    }
    .arch02-template-03 .text_box .memo{
        font-size: 14px;
    }
}