@charset "UTF-8";
/* CSS Document */

section, article, aside, footer, header, nav, h2 { display:block;}

body { padding:0; margin:0 auto; color: #414141; font:1em "微軟正黑體", sans-serif, Arial; background-color: #fff; display: block; position: relative;}
img { border:0;}

html, body { width: 100%; height: 100%;}

.clearfix:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0;}
.clearfix { display: inline-block; }
* html .clearfix { height: 1%; }
.clearfix { display: block; }

div.brk { clear: both; display: block;}


/************ video box ************/

.video-container { position:relative; padding-bottom:56.25%; padding-top:30px; width:100%; height: 0px; overflow:hidden;}
.video-container iframe, .video-container object, .video-container embed { position:absolute; top:0; left:0; width:100%; height:100%; }


@media screen and (min-width: 1280px) {
    
    body { background-repeat: no-repeat; background-size: 100%; background-position: top center;}

    /*************** header ***************/
    
    header { clear: both; width: 100%; position: relative; z-index: 99;}

    header img.pp-index-img { width: 59vw; height: auto; float: left;}
    header img.pp-about-img { width: 95%; height: auto;}
    header img.pp-video-img { width: 95%; height: auto;}
    header img.pp-article-img { width: 95%; height: auto;}

    nav#mo { display: none;}

    header nav#pc { width: 50%; position: absolute; top: 2vw; right: 0; z-index: 99;}
    header nav#pc .nav-icon-mo { display: none;}
    header nav#pc .header-nav-social { width: 100%; display: flex; justify-content: flex-start; align-items: center;}
    header nav#pc .header-nav-social .nav-close-icon { display: none;}
    header nav#pc .header-nav-social ul.top-nav { padding: 0; margin: 0 2vw 0 0; list-style-type: none; display: flex; justify-content: flex-start; align-items: center;}
    header nav#pc .header-nav-social ul.top-nav li { padding: 0; margin: 0 0.2vw;}
    header nav#pc .header-nav-social ul.top-nav li a { padding: 0.2vw 1vw; color: #414141; font-size: 1.3vw; font-weight: 600; text-decoration: none;}
    header nav#pc .header-nav-social ul.top-nav li a:hover { color: #fff; border-radius: 1vw; background-color: #e29904;}
    header nav#pc .header-nav-social .social-icon { display: flex; justify-content: flex-start; align-items: center;}
    header nav#pc .header-nav-social .social-icon a { margin: 0 0.3vw;}
    header nav#pc .header-nav-social .social-icon a img { width: 1.6vw; height: auto;}
    header nav#pc .header-nav-social .social-icon a:hover img { opacity: 0.5;}
    header nav#pc .header-nav-social .social-icon-mo { display: none;}

    header img.header-title { width: 42vw; height: auto; position: absolute; top: 11vw; right: 3vw; z-index: 9;}
    
    
    /*************** section #page-index ***************/
    
    section#index-intro { width: 100%; padding: 0 calc(50% - 27vw); box-sizing: border-box; position: relative; z-index: 100;}
    img.index-intro-title { width: 14vw; height: auto; margin: -28vw 0 0 18vw; float: left;}
    .index-intro-content { width: 39vw; margin: -20vw 0 0 0; float: right;}
    .index-intro-content div.intro-text { font-size: 1.3vw; font-weight: 600; line-height: 2.2vw; margin: 0 0 1vw 0;}
    .index-intro-content img.index-more-bt { clear: both; width: 9vw; height: auto; margin: -15vw 0 0 0;}
    .index-intro-service { clear: both; width: 25vw; margin: -15vw 0 2.5vw 20vw; display: flex; justify-content: flex-start; align-items: flex-start; flex-wrap: wrap; box-sizing: border-box;}
    .index-intro-service .star { width: 0.9vw; padding: 0.2vw 0 0 0; margin: 0 0.3vw 1.2vw 0;}
    .index-intro-service .star img { width: 100%; height: auto; margin: 0 0 1.2vw 0;}
    .index-intro-service .list { width: calc(100% - 1.2vw); font-size: 1.3vw; font-weight: 600; line-height: 1.3vw;}

    section#index-article { clear: both; width: 100%; padding: 3.5vw calc(50% - 27vw) 0 calc(50% - 27vw); box-sizing: border-box; position: relative; z-index: 100;}
    img.index-title-article { width: 11vw; height: auto; margin: 0 0 0.5vw 0;}
    .index-article-title { width: 100%; font-size: 1.2vw; font-weight: 600; margin: 0 0 0.3vw 0;}
    .index-article-date { width: 100%; font-size: 1vw; margin: 0 0 1vw 0;}
    .index-article-content { width: 100%; font-size: 1.1vw; font-weight: 500; line-height: 1.8vw;}
    img.index-more-bt2 { clear: both; width: 9vw; height: auto; margin: 1.5vw 0 3vw 0; float: right; position: relative; z-index: 10;}
    img.index-article-illu { width: 21vw; height: auto; position: absolute; bottom: 1vw; right: 3vw; z-index: 9;}

    section#index-video { clear: both; width: 100%; padding: 3vw 0; text-align: center;}
    .index-video-text { width: 100%; padding: 0 calc(50% - 27vw); margin: 0 0 2vw 0; box-sizing: border-box;}
    img.index-title-video { width: 12.5vw; height: auto; margin: 0 0 0.3vw 0; float: left;}
    .index-video-text .text { clear: both; width: 100%; font-size: 1.1vw; font-weight: 500; line-height: 1.8vw; text-align: left;}
    .index-video-content { clear: both; width: 100%; padding: 0 calc(50% - 30vw); box-sizing: border-box;}
    img.index-more-bt3 { clear: both; width: 9vw; height: auto; margin: 3vw auto 0 auto;}

    .index-line { clear: both; width: calc(100% - 44vw); margin: 0 auto; border-bottom: 1px #ffcccc dashed; display: block;}


    /*************** section #page-about ***************/

    section#about-intro { clear: both; width: 100%; padding: 3vw calc(50% - 27vw); box-sizing: border-box;}
    .about-text { width: calc(100% - 17vw); font-size: 1.3vw; font-weight: 600; line-height: 2.2vw; float: left;}
    img.about-intor-title { width: 14vw; height: auto; margin: 0 0 0 3vw; float: right;}

    .about-line { clear: both; width: calc(100% - 44vw); margin: 0 auto; border-bottom: 1px #a7a7a7 dashed; display: block;}

    section#about-career { clear: both; width: 100%; padding: 2vw calc(50% - 27vw) 0 calc(50% - 27vw); box-sizing: border-box;}
    img.about-title-s2 { width: 16vw; height: auto; margin: 0 0 2vw 0;}
    .about-career-list { clear: both; width: 100%; display: flex; justify-content: flex-start; align-items: flex-start; flex-wrap: wrap;}
    .about-career-list .star {width: 0.9vw; padding: 0.2vw 0 0 0; margin: 0 0.3vw 1vw 0;}
    .about-career-list .star img { width: 100%; height: auto; margin: 0 0 1vw 0;}
    .about-career-list .list { width: calc(100% - 1.2vw); margin: 0 0 1vw 0; font-size: 1.3vw; font-weight: 600; line-height: 1.5vw;}
    ul.about-list { width: 100%; padding: 0; margin: 0 0 1vw 0; list-style: none; display: block;}
    ul.about-list li { width: 100%; padding: 0; margin: 0 0 1vw 0; font-size: 1.3vw; font-weight: 600; line-height: 1.5vw;}
    section#about-career:last-of-type { padding-bottom: 5vw;}


    /*************** section #page-videos ***************/

    section#videos-showbox { clear: both; width: 100%; padding: 3vw calc(50% - 27vw) 0 calc(50% - 27vw); box-sizing: border-box;}

    img.videos-title-s3 { width: 12.5vw; height: auto; margin: 0 auto 2vw auto; display: block;}

    .videos-line {clear: both; width: 80%; margin: 0 auto; border-bottom: 1px #a7a7a7 dashed; display: block;}

    .videos-single-show { clear: both; width: 100%; margin: 2vw 0;}
    .videos-single-show .video-infor-box { clear: both; width: 70%; margin: 0 auto;}
    .videos-single-show .video-infor-box .title { width: 100%; margin: 1.5vw 0 0.5vw 0; font-size: 1.5vw; font-weight: 600; text-align: center;}
    .videos-single-show .video-infor-box .view-date { width: 100%; margin: 0 0 2vw 0; color: #993366; font-size: 1vw; text-align: center;}
    .videos-single-show .video-infor-box .description { width: 100%; font-size: 1.1vw; font-weight: 500; line-height: 1.6vw; text-align: center;}

    .videos-full-list { clear: both; width: 100%; margin: 2vw 0; display: flex; justify-content: flex-start;}
    .videos-full-list .video { width: 36%;}
    .videos-full-list .infor { width: 64%; padding: 0 0 0 2vw; box-sizing: border-box;}
    .videos-full-list .infor .title { width: 100%; margin: 0 0 0.5vw 0; font-size: 1.5vw; font-weight: 600;}
    .videos-full-list .infor .view-date { width: 100%; margin: 0 0 1vw 0; color: #993366; font-size: 1vw;}
    .videos-full-list .infor .description { width: 100%; font-size: 1.1vw; font-weight: 500; line-height: 1.6vw;}


    /*************** section #page-articles ***************/

    section#page-articles { clear: both; width: 100%; padding: 3vw calc(50% - 27vw) 0 calc(50% - 27vw); box-sizing: border-box;}

    img.article-title-s4 { width: 11vw; height: auto; margin: 0 auto 2vw auto; display: block;}

    .sort-nav-icon { display: none;}
    .articles-sort { clear: both; width: 90%; margin: 0 auto 2vw auto; display: flex; justify-content: flex-start; align-items: center; flex-wrap: wrap;}
    .articles-sort .sort-box { width: calc(100% / 3 - 2vw); padding: 0.3vw; margin: 0 1vw; font-size: 1.4vw; letter-spacing: 0.1vw; line-height: 2.2vw; text-align: center; border: 1px transparent dashed; border-radius: 10vw; box-sizing: border-box;}
    .articles-sort .sort-box a { width: 100%; padding:0.3vw 0; color: #414141; text-decoration: none; border-radius: 10vw; box-sizing: border-box; display: block;}
    .articles-sort .sort-box a.dark { background-color: #63d4c7;}
    .articles-sort .sort-box a.light { background-color: #d0f2ee;}
    .articles-sort .sort-box.sel { border: 1px #63d4c7 dashed;}
    .articles-sort .sort-box.sel a { font-weight: 600;}
    .articles-sort .sort-box:hover { border: 1px #63d4c7 dashed;}
    .articles-sort .sort-line { clear: both; width: 100%; margin: 1vw auto; border-bottom: 1px #414141 dashed; display: block;}

    .articles-full-list { clear: both; width: 100%; padding: 2vw; border-top: 1px #414141 solid; box-sizing: border-box;}
    .articles-full-list .articles-list-table { clear: both; width: 100%; display: flex; justify-content: flex-start; align-items: stretch;}
    .articles-full-list .articles-list-table:nth-child(odd) { background-color: #e7d5d0;}
    .articles-full-list .articles-list-table:last-child { border-bottom: 9px #e7d5d0 solid;}
    .articles-full-list .articles-list-table .sort { width: 20%; padding: 1.2vw; font-size: 1.2vw; font-weight: 550; border-right: 1px #ab395a solid; box-sizing: border-box;}
    .articles-full-list .articles-list-table .sort a { color: #414141; text-decoration: none;}
    .articles-full-list .articles-list-table .title { width: 80%; padding: 1.2vw; font-size: 1.2vw; font-weight: 550; box-sizing: border-box;}
    .articles-full-list .articles-list-table .title a { color: #414141; text-decoration: none;}

    .articles-con-title { clear: both; width: 100%; padding: 0.5vw 1vw; border-radius: 10vw; background-color: #e7d5d0; box-sizing: border-box;}
    .articles-con-title span.title { font-size: 1.6vw; font-weight: 600; letter-spacing: 0.1vw;}

    .articles-con-line { clear: both; width: 96%; margin: 0.8vw auto; border-bottom: 1px #414141 dashed; display: block;}

    .articles-con-date { clear: both; width: 100%; padding: 0 1vw; font-size: 1vw; text-align: right; box-sizing: border-box;}

    .articles-con-text { clear: right; width: 100%; padding: 3vw 3vw 2vw 3vw; font-size: 1.2vw; line-height: 2vw; box-sizing: border-box;}
    .articles-con-text .title { width: 100%; margin: 0 0 2vw 0; font-size: 1.8vw; text-align: center;}

    img.articles-title-bt { clear: both; width: 9vw; height: auto; margin: 0 auto 0 auto; display: block;}


    /************ page number ************/

    #pagenum-box { clear: both; width: 100%; padding: 2vw 0; border-top: 1px #414141 solid; display: flex; justify-content: center; align-items: center;}
    #pagenum-box .arrow-lf, #pagenum-box .arrow-rt { width: 3vw; font-size: 1.5vw; text-align: center;}
    #pagenum-box ul.page { padding: 0; margin: 0; list-style: none; display: flex; justify-content: center; flex-wrap: wrap;}
    #pagenum-box ul.page li { padding: 0 0.2vw; margin: 0;}
    #pagenum-box ul.page li a { width: 2vw; height: 2vw; padding: 0.3vw 0 0 0; color: #414141; font-size: 1vw; font-weight: 600; text-align: center; text-decoration: none; border-radius: 100%; display: block; box-sizing: border-box;}
    #pagenum-box ul.page li a:hover { color: #fff; background-color: #ab395a; overflow: hidden;}
    #pagenum-box ul.page li a.sel { color: #fff; background-color: #ab395a; overflow: hidden;}


    /************ site map ************/

    .sitemap-list-box { clear: both; width: 100%; padding: 3vw; box-sizing: border-box;}
    .sitemap-list-box ul.sitemap { width: 100%; padding: 0; margin: 0; list-style: none; display: flex; justify-content: center; flex-wrap: wrap;}
    .sitemap-list-box ul.sitemap li { padding: 0; margin: 20px; text-align: center;}
    .sitemap-list-box ul.sitemap li a { padding: 3px 0; color: #414141; font-size: 1.4vw; font-weight: 600; text-decoration: none; display: block;}
    .sitemap-list-box ul.sitemap li a:hover { border-bottom: 1px #414141 solid;}
    .sitemap-list-box ul.sitemap li ul.sitemap-c2 { padding: 0 0 15px 0; margin: 0; list-style: none; display: block;}
    .sitemap-list-box ul.sitemap li ul.sitemap-c2 li { padding: 0; margin: 6px 0;}
    .sitemap-list-box ul.sitemap li ul.sitemap-c2 li a { padding: 3px 0; color: #414141; font-size: 1.2vw; font-weight: 600; text-decoration: none; display: block;}


    /*************** 404 ***************/

    .page-404-title { clear: both; width: 100%; color: #444; font-size: 6em; font-weight: 800; text-align: center; border-bottom: 2px #ccc solid;}
    .page-404-text { clear: both; width: 100%; padding: 40px 0 60px 0; font-size: 2em; font-weight: 600; text-align: center;}

    
    /*************** footer ***************/
    
    footer { clear: both; width: 100%; margin: 8vw 0 0 0; background-color: #1b1b1b; position: relative;}
    
    img.index-footer-illu { width: 25vw; height: auto; position: absolute; top: -14vw; left: 8vw; z-index: 9;}
    img.about-footer-illu { width: 16vw; height: auto; position: absolute; top: -7.5vw; left: 9vw; z-index: 9;}

    footer .footer-nav-infor { width: 100%; padding: 3vw calc(50% - 30vw); color: #ffcccc; font-size: 1.1vw; font-weight: 500; box-sizing: border-box; position: relative; z-index: 10;}
    footer .footer-nav-infor .footer-nav { width: 100%; padding: 0 0 0.8vw 0; display: flex; justify-content: center; align-items: center; position: relative; z-index: 10;}
    footer .footer-nav-infor .footer-nav ul.ft-nav { padding: 0; margin: 0 2vw 0 0; list-style: none; display: flex; justify-content: center;}
    footer .footer-nav-infor .footer-nav ul.ft-nav li { padding: 0 0.8vw; margin: 0;}
    footer .footer-nav-infor .footer-nav ul.ft-nav li a { color: #ffcccc; text-decoration: none;}
    footer .footer-nav-infor .footer-nav ul.ft-nav li a:hover { color: #ea68a2;}
    footer .footer-nav-infor .footer-nav .ft-social-icon { display: flex; justify-content: center; align-items: center;}
    footer .footer-nav-infor .footer-nav .ft-social-icon img { width: 1.5vw; height: auto; margin: 0 0.3vw;}
    footer .footer-nav-infor .footer-nav .ft-social-icon img:hover { opacity: 0.8;}
    footer .footer-nav-infor .footer-infor { width: 100%; padding: 0.8vw 0 0 0; text-align: center; position: relative; z-index: 10;}
    footer .footer-nav-infor .footer-infor-mo { display: none;}

    footer hr.footer-line { width: 100%; border: 1px #7d7d7d solid; position: relative; z-index: 10;}

    footer .footer-copyright { clear: both; width: 100%; padding: 1vw 0; color: #666; font-size: 0.8vw; text-align: center; background-color: #fff;}


}


@media screen and (min-width: 768px) and (max-width: 1279px) {
    
    body { background-repeat: no-repeat; background-size: 100%; background-position: top center;}

    /*************** header ***************/
    
    header { clear: both; width: 100%; position: relative; z-index: 99; overflow-x: hidden;}

    header img.pp-index-img { width: 59vw; height: auto; margin: 0 0 0 -5vw; float: left;}
    header img.pp-about-img { width: 150%; height: auto; margin: 0 0 0 -30vw;}
    header img.pp-video-img { width: 150%; height: auto; margin: 0 0 0 -30vw;}
    header img.pp-article-img { width: 150%; height: auto; margin: 0 0 0 -30vw;}

    nav#pc { display: none;}

    nav#mo { width: 100%; position: absolute; top: 0; left: 0; z-index: 9999;}
    nav#mo .nav-icon { width: 70px; margin: 20px 0 0 0; font-size: 3em; float: right;}
    nav#mo .header-nav-social { width: 360px; max-width: 100%; padding: 40px 40px 60px 40px; box-sizing: border-box; background-color: #1b1b1b; position: absolute; top: 0; right: -360px; display: none;}
    nav#mo .header-nav-social .nav-close-icon { width: 70px; margin: 0 -20px 20px 0; color: #fff; font-size: 3.5em; float: right;}
    nav#mo .header-nav-social ul.top-nav { clear: both; width: 100%; padding: 0; margin: 0 0 30px 0; list-style-type: none; display: block;}
    nav#mo .header-nav-social ul.top-nav li { width: 100%; padding: 0; margin: 0; text-align: center;}
    nav#mo .header-nav-social ul.top-nav li a { width: 100%; padding: 15px 0; color: #fff; font-size: 1.4em; font-weight: 600; text-decoration: none; box-sizing: border-box; display: block;}
    nav#mo .header-nav-social .social-icon { clear: both; width: 100%; display: flex; justify-content: center;}
    nav#mo .header-nav-social .social-icon a { margin: 0 15px;}

    header img.header-title { width: 52vw; height: auto; position: absolute; top: 12vw; right: 2vw; z-index: 9;}
    
    
    /*************** section #page-index ***************/
    
    section#index-intro { width: 100%; padding: 0 calc(50% - 350px); margin: -15vw 0 0 0; box-sizing: border-box; position: relative; z-index: 100;}
    img.index-intro-title { width: 200px; height: auto; margin: 0 30px 0 50px; float: left;}
    .index-intro-content { width: calc(100% - 280px); margin: -5vw 0 0 0; float: right;}
    .index-intro-service { width: 100%; margin: 0 0 0 0; display: flex; justify-content: flex-start; align-items: flex-start; flex-wrap: wrap; box-sizing: border-box;}
    .index-intro-service .star { width: 30px; padding: 10px 0 0 0; margin: 0 0 20px 0;}
    .index-intro-service .star img { }
    .index-intro-service .list { width: calc(100% - 30px); margin: 0 0 20px 0; font-size: 1.5em; font-weight: 600; line-height: 1.7em;}

    section#index-article { clear: both; width: 100%; padding: 3.5vw calc(50% - 350px) 0 calc(50% - 350px); box-sizing: border-box; position: relative; z-index: 100; overflow: hidden;}
    img.index-title-article { margin: 0 0 20px 0;}
    .index-article-title { width: 100%; font-size: 1.4em; font-weight: 600; margin: 0 0 10px 0;}
    .index-article-date { width: 100%; font-size: 1.2em; margin: 0 0 30px 0;}
    .index-article-content { width: 100%; font-size: 1.4em; font-weight: 500; line-height: 1.8em;}
    img.index-more-bt2 { clear: both; margin: 20px 0 40px 40vw; position: relative; z-index: 10;}
    img.index-article-illu { width: 360px; height: auto; position: absolute; bottom: 30px; left: 70vw; z-index: 9;}

    section#index-video { clear: both; width: 100%; padding: 3vw 0; text-align: center;}
    .index-video-text { width: 100%; padding: 0 calc(50% - 350px); margin: 0 0 20px 0; box-sizing: border-box;}
    img.index-title-video { margin: 0 0 20px 0; float: left;}
    .index-video-text .text { clear: both; width: 100%; font-size: 1.4em; font-weight: 500; line-height: 1.8em; text-align: left;}
    .index-video-content { clear: both; width: 100%; padding: 0 calc(50% - 350px); box-sizing: border-box;}
    img.index-more-bt3 { clear: both; margin: 40px auto 0 auto;}

    .index-line { clear: both; width: 700px; margin: 0 auto; border-bottom: 1px #ffcccc dashed; display: block;}


    /*************** section #page-about ***************/

    section#about-intro { clear: both; width: 100%; padding: 20px calc(50% - 350px); box-sizing: border-box;}
    .about-text { width: calc(100% - 200px); font-size: 1.2em; font-weight: 600; line-height: 1.8em; float: left;}
    img.about-intor-title { width: 180px; height: auto; margin: 0 0 0 20px; float: right;}

    .about-line { clear: both; width: 700px; margin: 0 auto; border-bottom: 1px #a7a7a7 dashed; display: block;}

    section#about-career { clear: both; width: 100%; padding: 40px calc(50% - 350px) 20px calc(50% - 350px); box-sizing: border-box;}
    img.about-title-s2 { width: 200px; height: auto; margin: 0 0 20px 0;}
    .about-career-list { clear: both; width: 100%; display: flex; justify-content: flex-start; align-items: flex-start; flex-wrap: wrap;}
    .about-career-list .star { width: 30px; padding: 2px 0 0 0; margin: 0 0 20px 0;}
    .about-career-list .star img { width: 19px; height: auto;}
    .about-career-list .list { width: calc(100% - 30px); font-size: 1.4em; font-weight: 600; line-height: 1em;}
    ul.about-list { width: 100%; padding: 0; margin: 0 0 20px 0; list-style: none; display: block;}
    ul.about-list li { width: 100%; padding: 0; margin: 0 0 15px 0; font-size: 1.2em; font-weight: 600; line-height: 1.8em;}
    section#about-career:last-child { padding-bottom: 60px;}


    /*************** section #page-videos ***************/

    section#videos-showbox { clear: both; width: 100%; padding: 3vw calc(50% - 350px) 0 calc(50% - 350px); box-sizing: border-box;}

    img.videos-title-s3 { clear: both; margin: 0 auto 30px auto; display: block;}

    .videos-line {clear: both; width: 90%; margin: 0 auto; border-bottom: 1px #a7a7a7 dashed; display: block;}

    .videos-single-show { clear: both; width: 100%; margin: 30px 0;}
    .videos-single-show .video-infor-box { clear: both; width: 85%; margin: 0 auto;}
    .videos-single-show .video-infor-box .title { width: 100%; margin: 20px 0 10px 0; font-size: 1.5em; font-weight: 600; text-align: center;}
    .videos-single-show .video-infor-box .view-date { width: 100%; margin: 0 0 20px 0; color: #993366; font-size: 1em; text-align: center;}
    .videos-single-show .video-infor-box .description { width: 100%; font-size: 1.2em; font-weight: 500; line-height: 1.4em; text-align: center;}

    .videos-full-list { clear: both; width: 100%; margin: 30px 0; display: flex; justify-content: flex-start;}
    .videos-full-list .video { width: 36%;}
    .videos-full-list .infor { width: 64%; padding: 0 0 0 30px; box-sizing: border-box;}
    .videos-full-list .infor .title { width: 100%; margin: 0 0 10px 0; font-size: 1.5em; font-weight: 600;}
    .videos-full-list .infor .view-date { width: 100%; margin: 0 0 20px 0; color: #993366; font-size: 1em;}
    .videos-full-list .infor .description { width: 100%; font-size: 1.2em; font-weight: 500; line-height: 1.4em;}


    /*************** section #page-articles ***************/

    section#page-articles { clear: both; width: 100%; padding: 30px calc(50% - 350px) 60px calc(50% - 350px); box-sizing: border-box;}

    img.article-title-s4 { clear: both; margin: 0 auto 30px auto; display: block;}

    .sort-nav-icon { display: none;}
    .articles-sort { clear: both; width: 100%; margin: 0 auto 20px auto; display: flex; justify-content: flex-start; align-items: center; flex-wrap: wrap;}
    .articles-sort .sort-box { width: calc(100% / 3 - 20px); padding: 5px; margin: 0 10px; font-size: 1.6em; letter-spacing: 0.1em; line-height: 1.8em; text-align: center; border: 1px transparent dashed; border-radius: 30px; box-sizing: border-box;}
    .articles-sort .sort-box a { width: 100%; padding: 0; color: #414141; text-decoration: none; border-radius: 30px; box-sizing: border-box; display: block;}
    .articles-sort .sort-box a.dark { background-color: #63d4c7;}
    .articles-sort .sort-box a.light { background-color: #d0f2ee;}
    .articles-sort .sort-box.sel { border: 1px #63d4c7 dashed;}
    .articles-sort .sort-box.sel a { font-weight: 600;}
    .articles-sort .sort-box:hover { border: 1px #63d4c7 dashed;}
    .articles-sort .sort-line { clear: both; width: 100%; margin: 10px auto; border-bottom: 1px #414141 dashed; display: block;}

    .articles-full-list { clear: both; width: 100%; padding: 20px; border-top: 1px #414141 solid; box-sizing: border-box;}
    .articles-full-list .articles-list-table { clear: both; width: 100%; display: flex; justify-content: flex-start; align-items: stretch;}
    .articles-full-list .articles-list-table:nth-child(odd) { background-color: #e7d5d0;}
    .articles-full-list .articles-list-table:last-child { border-bottom: 9px #e7d5d0 solid;}
    .articles-full-list .articles-list-table .sort { width: 20%; padding: 15px; font-size: 1.2em; font-weight: 550; border-right: 1px #ab395a solid; box-sizing: border-box;}
    .articles-full-list .articles-list-table .sort a { color: #414141; text-decoration: none;}
    .articles-full-list .articles-list-table .title { width: 80%; padding: 15px; font-size: 1.2em; font-weight: 550; box-sizing: border-box;}
    .articles-full-list .articles-list-table .title a { color: #414141; text-decoration: none;}

    .articles-con-title { clear: both; width: 100%; padding: 10px 20px; border-radius: 60px; background-color: #e7d5d0; box-sizing: border-box;}
    .articles-con-title span.title { font-size: 1.6em; font-weight: 600; letter-spacing: 0.1em;}

    .articles-con-line { clear: both; width: 96%; margin: 15px auto; border-bottom: 1px #414141 dashed; display: block;}

    .articles-con-date { clear: both; width: 100%; padding: 0 10px; font-size: 1em; text-align: right; box-sizing: border-box;}

    .articles-con-text { clear: right; width: 100%; padding: 30px 30px 20px 30px; font-size: 1.1em; line-height: 2em; box-sizing: border-box;}
    .articles-con-text .title { width: 100%; margin: 0 0 20px 0; font-size: 1.6em; text-align: center;}

    img.articles-title-bt { clear: both; margin: 0 auto; display: block;}


    /************ page number ************/

    #pagenum-box { clear: both; width: 100%; padding: 30px 0; border-top: 1px #414141 solid; display: flex; justify-content: center; align-items: center;}
    #pagenum-box .arrow-lf, #pagenum-box .arrow-rt { width: 50px; font-size: 2em; text-align: center;}
    #pagenum-box ul.page { padding: 0; margin: 0; list-style: none; display: flex; justify-content: center; flex-wrap: wrap;}
    #pagenum-box ul.page li { padding: 0 3px; margin: 0;}
    #pagenum-box ul.page li a { width: 40px; height: 40px; padding: 7px 0 0 0; color: #414141; font-size: 1.1em; font-weight: 600; text-align: center; text-decoration: none; border-radius: 100%; display: block; box-sizing: border-box;}
    #pagenum-box ul.page li a:hover { color: #fff; background-color: #ab395a; overflow: hidden;}
    #pagenum-box ul.page li a.sel { color: #fff; background-color: #ab395a; overflow: hidden;}


    /************ site map ************/

    .sitemap-list-box { clear: both; width: 100%; padding: 40px 0; box-sizing: border-box;}
    .sitemap-list-box ul.sitemap { width: 100%; padding: 0; margin: 0; list-style: none; display: flex; justify-content: center; flex-wrap: wrap;}
    .sitemap-list-box ul.sitemap li { padding: 0; margin: 20px; text-align: center;}
    .sitemap-list-box ul.sitemap li a { padding: 3px 0; color: #414141; font-size: 1.4em; font-weight: 600; text-decoration: none; display: block;}
    .sitemap-list-box ul.sitemap li a:hover { border-bottom: 1px #414141 solid;}
    .sitemap-list-box ul.sitemap li ul.sitemap-c2 { padding: 0 0 15px 0; margin: 0; list-style: none; display: block;}
    .sitemap-list-box ul.sitemap li ul.sitemap-c2 li { padding: 0; margin: 6px 0;}
    .sitemap-list-box ul.sitemap li ul.sitemap-c2 li a { padding: 3px 0; color: #414141; font-size: 1.2em; font-weight: 600; text-decoration: none; display: block;}


    /*************** 404 ***************/

    .page-404-title { clear: both; width: 100%; color: #444; font-size: 6em; font-weight: 800; text-align: center; border-bottom: 2px #ccc solid;}
    .page-404-text { clear: both; width: 100%; padding: 40px 0 60px 0; font-size: 2em; font-weight: 600; text-align: center;}

    
    /*************** footer ***************/
    
    footer { clear: both; width: 100%; margin: 8vw 0 0 0; background-color: #1b1b1b; position: relative;}
    
    img.index-footer-illu { width: 25vw; height: auto; position: absolute; top: -14vw; left: 5vw; z-index: 9;}
    img.about-footer-illu { width: 22vw; height: auto; position: absolute; top: -10vw; left: 3vw; z-index: 9;}

    footer .footer-nav-infor { width: 100%; padding: 50px calc(50% - 350px); color: #ffcccc; font-size: 1em; font-weight: 500; box-sizing: border-box; position: relative; z-index: 10;}
    footer .footer-nav-infor .footer-nav { width: 100%; padding: 0 0 10px 0; display: flex; justify-content: center; align-items: center; position: relative; z-index: 10;}
    footer .footer-nav-infor .footer-nav ul.ft-nav { padding: 0; margin: 0 20px 0 0; list-style: none; display: flex; justify-content: center;}
    footer .footer-nav-infor .footer-nav ul.ft-nav li { padding: 0 15px; margin: 0;}
    footer .footer-nav-infor .footer-nav ul.ft-nav li a { color: #ffcccc; text-decoration: none;}
    footer .footer-nav-infor .footer-nav ul.ft-nav li a:hover { color: #ea68a2;}
    footer .footer-nav-infor .footer-nav .ft-social-icon { display: flex; justify-content: center; align-items: center;}
    footer .footer-nav-infor .footer-nav .ft-social-icon img { margin: 0 10px;}
    footer .footer-nav-infor .footer-nav .ft-social-icon img:hover { opacity: 0.8;}
    footer .footer-nav-infor .footer-infor { width: 100%; padding: 10px 0 0 0; text-align: center; position: relative; z-index: 10;}
    footer .footer-nav-infor .footer-infor-mo { display: none;}

    footer hr.footer-line { width: 100%; border: 1px #7d7d7d solid; position: relative; z-index: 10;}

    footer .footer-copyright { clear: both; width: 100%; padding: 15px 0; color: #666; font-size: 0.9em; text-align: center; background-color: #fff;}
    
    
}


@media screen and (max-width: 767px) {
     
    body { background-repeat: no-repeat; background-size: 100%; background-position: top center;}

    /*************** header ***************/
    
    header { clear: both; width: 100%; position: relative; z-index: 99; overflow-x: hidden;}

    header img.pp-index-img { width: 100vw; height: auto; margin-left: -40vw; float: left;}
    header img.pp-about-img { width: 220%; height: auto; margin: 0 0 40px -60%;}
    header img.pp-video-img { width: 220%; height: auto; margin: 0 0 40px -60%;}
    header img.pp-article-img { width: 220%; height: auto; margin: 0 0 40px -65%;}

    nav#pc { display: none;}

    nav#mo { width: 100%; position: absolute; top: 0; left: 0; z-index: 9999;}
    nav#mo .nav-icon { width: 70px; margin: 0; font-size: 3em; float: right;}
    nav#mo .header-nav-social { width: 360px; max-width: 100%; padding: 40px 40px 60px 40px; box-sizing: border-box; background-color: #1b1b1b; position: absolute; top: 0; right: -360px; display: none;}
    nav#mo .header-nav-social .nav-close-icon { width: 70px; margin: 0 -20px 20px 0; color: #fff; font-size: 3.5em; float: right;}
    nav#mo .header-nav-social ul.top-nav { clear: both; width: 100%; padding: 0; margin: 0 0 30px 0; list-style-type: none; display: block;}
    nav#mo .header-nav-social ul.top-nav li { width: 100%; padding: 0; margin: 0; text-align: center;}
    nav#mo .header-nav-social ul.top-nav li a { width: 100%; padding: 15px 0; color: #fff; font-size: 1.4em; font-weight: 600; text-decoration: none; box-sizing: border-box; display: block;}
    nav#mo .header-nav-social .social-icon { clear: both; width: 100%; display: flex; justify-content: center;}
    nav#mo .header-nav-social .social-icon a { margin: 0 15px;}

    header img.header-title { width: 62vw; height: auto; position: absolute; top: 100px; right: 0; z-index: 9;}
    
    
    /*************** section #page-index ***************/
    
    section#index-intro { width: 100%; padding: 0 20px; box-sizing: border-box; position: relative; z-index: 98;}
    img.index-intro-title { width: 200px; height: auto; margin: -40vw auto 30px auto; display: block;}
    .index-intro-content { width: 100%;}
    .index-intro-service { clear: both; width: 100%; margin: 30px 0 20px 0; display: flex; justify-content: flex-start; align-items: flex-start; flex-wrap: wrap;}
    .index-intro-service .star { width: 30px; padding: 2px 0 0 0; margin: 0 0 20px 0;}
    .index-intro-service .star img { width: 19px; height: auto; margin: 0 0 20px 0;}
    .index-intro-service .list { width: calc(100% - 30px); font-size: 1.4em; font-weight: 600; line-height: 1.2em;}

    section#index-article { clear: both; width: 100%; padding: 40px 20px 0 20px; box-sizing: border-box; position: relative; z-index: 100; overflow: hidden;}
    img.index-title-article { margin: 0 0 20px 0;}
    .index-article-title { width: 100%; font-size: 1.4em; font-weight: 600; margin: 0 0 10px 0;}
    .index-article-date { width: 100%; font-size: 1.2em; margin: 0 0 30px 0;}
    .index-article-content { width: 100%; font-size: 1.4em; font-weight: 500; line-height: 1.8em;}
    img.index-more-bt2 { clear: both; margin: 20px 0 40px 0; float: right; position: relative; z-index: 10;}
    img.index-article-illu { display: none;}

    section#index-video { clear: both; width: 100%; padding: 40px 20px 20vw 20px; text-align: center; box-sizing: border-box;}
    .index-video-text { width: 100%; margin: 0 0 20px 0; box-sizing: border-box;}
    img.index-title-video { margin: 0 0 20px 0; float: left;}
    .index-video-text .text { clear: both; width: 100%; font-size: 1.4em; font-weight: 500; line-height: 1.8em; text-align: left;}
    .index-video-content { clear: both; width: 100%;}
    img.index-more-bt3 { clear: both; margin: 40px auto 0 auto;}

    .index-line { clear: both; width: calc(100% - 40px); margin: 0 auto; border-bottom: 1px #ffcccc dashed; display: block;}


    /*************** section #page-about ***************/

    section#about-intro { clear: both; width: 100%; padding: 0 20px 40px 20px; box-sizing: border-box;}
    .about-text { clear: both; width: 100%; font-size: 1.2em; font-weight: 600; line-height: 1.8em; float: left;}
    img.about-intor-title { width: 200px; height: auto; margin: 0 auto 30px auto; display: block;}

    .about-line { clear: both; width: calc(100% - 40px); margin: 0 auto; border-bottom: 1px #a7a7a7 dashed; display: block;}

    section#about-career { clear: both; width: 100%; padding: 40px 20px 20px 20px; box-sizing: border-box;}
    img.about-title-s2 { width: 200px; height: auto; margin: 0 auto 30px auto;}
    .about-career-list { clear: both; width: 100%; display: flex; justify-content: flex-start; align-items: flex-start; flex-wrap: wrap;}
    .about-career-list .star { width: 30px; padding: 2px 0 0 0; margin: 0 0 20px 0;}
    .about-career-list .star img { width: 19px; height: auto;}
    .about-career-list .list { width: calc(100% - 30px); margin: 0 0 20px 0; font-size: 1.4em; font-weight: 600; line-height: 1em;}
    ul.about-list { width: 100%; padding: 0; margin: 0 0 20px 0; list-style: none; display: block;}
    ul.about-list li { width: 100%; padding: 0; margin: 0 0 15px 0; font-size: 1.2em; font-weight: 600; line-height: 1.8em;}
    section#about-career:last-of-type { padding-bottom: 100px;}


    /*************** section #page-videos ***************/

    section#videos-showbox { clear: both; width: 100%; padding: 0 20px 100px 20px; box-sizing: border-box;}

    img.videos-title-s3 { clear: both; margin: 0 auto 30px auto; display: block;}

    .videos-line {clear: both; width: 90%; margin: 0 auto; border-bottom: 1px #a7a7a7 dashed; display: block;}

    .videos-single-show { clear: both; width: 100%; margin: 30px 0;}
    .videos-single-show .video-infor-box { clear: both; width: 100%; margin: 0 auto;}
    .videos-single-show .video-infor-box .title { width: 100%; margin: 20px 0 10px 0; font-size: 1.5em; font-weight: 600; text-align: center;}
    .videos-single-show .video-infor-box .view-date { width: 100%; margin: 0 0 20px 0; color: #993366; font-size: 1em; text-align: center;}
    .videos-single-show .video-infor-box .description { width: 100%; font-size: 1.2em; font-weight: 500; line-height: 1.4em; text-align: center;}

    .videos-full-list { clear: both; width: 100%; margin: 30px 0;}
    .videos-full-list .video { width: 100%; margin: 0 0 20px 0;}
    .videos-full-list .infor { width: 100%;}
    .videos-full-list .infor .title { width: 100%; margin: 0 0 10px 0; font-size: 1.5em; font-weight: 600;}
    .videos-full-list .infor .view-date { width: 100%; margin: 0 0 20px 0; color: #993366; font-size: 1em;}
    .videos-full-list .infor .description { width: 100%; font-size: 1.2em; font-weight: 500; line-height: 1.4em;}


    /*************** section #page-articles ***************/

    section#page-articles { clear: both; width: 100%; padding: 30px 20px 100px 20px; box-sizing: border-box;}

    img.article-title-s4 { clear: both; margin: 0 auto 30px auto; display: block;}

    .sort-nav-icon { clear: both; width: 100%; padding: 5px; margin: 0 0 20px 0; font-size: 2em; font-weight: 600; text-align: center; box-sizing: border-box;}
    .articles-sort { clear: both; width: 100%; margin: 0 auto 20px auto; display: none;}
    .articles-sort .sort-box { width: 100%; padding: 5px; margin: 10px 0; font-size: 1.6em; letter-spacing: 0.1em; line-height: 1.8em; text-align: center; border: 1px transparent dashed; border-radius: 30px; box-sizing: border-box;}
    .articles-sort .sort-box a { width: 100%; padding: 0; color: #414141; text-decoration: none; border-radius: 30px; box-sizing: border-box; display: block;}
    .articles-sort .sort-box a.dark { background-color: #63d4c7;}
    .articles-sort .sort-box a.light { background-color: #d0f2ee;}
    .articles-sort .sort-box.sel { border: 1px #63d4c7 dashed;}
    .articles-sort .sort-box.sel a { font-weight: 600;}
    .articles-sort .sort-box:active { border: 1px #63d4c7 dashed;}
    .articles-sort .sort-line { display: none;}

    .articles-full-list { clear: both; width: 100%; padding: 20px 0; border-top: 1px #414141 solid; box-sizing: border-box;}
    .articles-full-list .articles-list-table { clear: both; width: 100%;}
    .articles-full-list .articles-list-table:last-child { border-bottom: 9px #e7d5d0 solid;}
    .articles-full-list .articles-list-table .sort { width: 100%; padding: 15px; font-size: 1.2em; font-weight: 550; background-color: #e7d5d0; box-sizing: border-box;}
    .articles-full-list .articles-list-table .sort a { color: #414141; text-decoration: none;}
    .articles-full-list .articles-list-table .title { width: 100%; padding: 15px; font-size: 1.2em; font-weight: 550; border-bottom: 1px #ab395a dashed; box-sizing: border-box;}
    .articles-full-list .articles-list-table .title a { color: #414141; text-decoration: none;}
    
    .articles-con-title { clear: both; width: 100%; padding: 10px 20px; border-radius: 60px; background-color: #e7d5d0; box-sizing: border-box;}
    .articles-con-title span.title { font-size: 1.6em; font-weight: 600; letter-spacing: 0.1em;}

    .articles-con-line { clear: both; width: 96%; margin: 15px auto; border-bottom: 1px #414141 dashed; display: block;}

    .articles-con-date { clear: both; width: 100%; padding: 0 10px; font-size: 0.9em; text-align: right; box-sizing: border-box;}

    .articles-con-text { clear: right; width: 100%; padding: 30px 0 20px 0; font-size: 1.1em; line-height: 2em; box-sizing: border-box;}
    .articles-con-text .title { width: 100%; margin: 0 0 20px 0; font-size: 1.6em; text-align: center;}

    img.articles-title-bt { clear: both; margin: 0 auto; display: block;}


    /************ page number ************/

    #pagenum-box { clear: both; width: 100%; padding: 30px 0; border-top: 1px #414141 solid; display: flex; justify-content: center; align-items: center; position: relative; z-index: 999;}
    #pagenum-box .arrow-lf, #pagenum-box .arrow-rt { width: 50px; font-size: 2em; text-align: center;}
    #pagenum-box ul.page { padding: 0; margin: 0; list-style: none; display: flex; justify-content: center; flex-wrap: wrap;}
    #pagenum-box ul.page li { padding: 0; margin: 0;}
    #pagenum-box ul.page li a { width: 40px; height: 40px; padding: 7px 0 0 0; color: #414141; font-size: 1.1em; font-weight: 600; text-align: center; text-decoration: none; border-radius: 100%; display: block; box-sizing: border-box;}
    #pagenum-box ul.page li a:hover { color: #fff; background-color: #ab395a; overflow: hidden;}
    #pagenum-box ul.page li a.sel { color: #fff; background-color: #ab395a; overflow: hidden;}


    /************ site map ************/

    .sitemap-list-box { clear: both; width: 100%; padding: 40px 0; box-sizing: border-box;}
    .sitemap-list-box ul.sitemap { width: 100%; padding: 0; margin: 0; list-style: none; display: flex; justify-content: center; flex-wrap: wrap;}
    .sitemap-list-box ul.sitemap li { padding: 0; margin: 20px; text-align: center;}
    .sitemap-list-box ul.sitemap li a { padding: 3px 0; color: #414141; font-size: 1.4em; font-weight: 600; text-decoration: none; display: block;}
    .sitemap-list-box ul.sitemap li a:hover { border-bottom: 1px #414141 solid;}
    .sitemap-list-box ul.sitemap li ul.sitemap-c2 { padding: 0 0 15px 0; margin: 0; list-style: none; display: block;}
    .sitemap-list-box ul.sitemap li ul.sitemap-c2 li { padding: 0; margin: 6px 0;}
    .sitemap-list-box ul.sitemap li ul.sitemap-c2 li a { padding: 3px 0; color: #414141; font-size: 1.2em; font-weight: 600; text-decoration: none; display: block;}


    /*************** 404 ***************/

    .page-404-title { clear: both; width: 100%; color: #444; font-size: 6em; font-weight: 800; text-align: center; border-bottom: 2px #ccc solid;}
    .page-404-text { clear: both; width: 100%; padding: 40px 0 60px 0; font-size: 2em; font-weight: 600; text-align: center;}

    
    /*************** footer ***************/
    
    footer { clear: both; width: 100%; margin: 10vw 0 0 0; background-color: #1b1b1b; position: relative;}
    
    img.index-footer-illu { width: 40vw; height: auto; position: absolute; top: -22vw; left: 0; z-index: 9;}
    img.about-footer-illu { width: 40vw; height: auto; position: absolute; top: -25vw; left: 0; z-index: 9;}

    footer .footer-nav-infor { width: 100%; padding: 50px 20px; color: #ffcccc; font-size: 1em; font-weight: 500; box-sizing: border-box; position: relative; z-index: 10;}
    footer .footer-nav-infor .footer-nav { width: 100%; padding: 0 0 10px 0; position: relative; z-index: 10;}
    footer .footer-nav-infor .footer-nav ul.ft-nav { padding: 0; margin: 0 0 30px 0; list-style: none; display: flex; justify-content: center; flex-wrap: wrap;}
    footer .footer-nav-infor .footer-nav ul.ft-nav li { padding: 0 10px; margin: 0 0 10px 0;}
    footer .footer-nav-infor .footer-nav ul.ft-nav li a { color: #ffcccc; text-decoration: none;}
    footer .footer-nav-infor .footer-nav ul.ft-nav li a:hover { color: #ea68a2;}
    footer .footer-nav-infor .footer-nav .ft-social-icon { clear: both; width: 100%; display: flex; justify-content: center; align-items: center;}
    footer .footer-nav-infor .footer-nav .ft-social-icon img { margin: 0 10px;}
    footer .footer-nav-infor .footer-nav .ft-social-icon img:hover { opacity: 0.8;}
    footer .footer-nav-infor .footer-infor-mo { width: 100%; padding: 10px 0 0 0; text-align: center; position: relative; z-index: 10;}
    footer .footer-nav-infor .footer-infor { display: none;}

    footer hr.footer-line { width: 100%; border: 1px #7d7d7d solid; position: relative; z-index: 10;}

    footer .footer-copyright { clear: both; width: 100%; padding: 15px 0; color: #666; font-size: 0.9em; text-align: center; background-color: #fff;}
    

}
