@import url(http://fonts.googleapis.com/earlyaccess/notosanstc.css);
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}
body {line-height: 1;}
ol, ul {list-style: none;}
blockquote, q {quotes: none;}
blockquote:before, blockquote:after, q:before, q:after {content: '';content: none;}
table {border-collapse: collapse;border-spacing: 0;}

/*--- Naka UI ---*/
.clear {clear:both;}
.left {float:left;}
.right {float:right;}

/*--- Page Set ---*/
html {
	height:100%;
	margin:0px;
	padding:0px;
}
body {
	height:100%;
	margin:0px;
	padding:0px;
	/*font-family: ‘Noto Sans TC’, sans-serif; 100、300、400、500、700、900*/
    font-family: 'Noto Sans TC' ,sans-serif;
	font-size:16px;
	color:#FFF;
	overflow:visible;
}
a {
	color:#FFF;
	text-decoration:none;
}
a:hover {
	color:#FFF;
}
::selection {
	background:#666;
	color:#FFF;
}
/*font-family: 'Noto Sans TC' ,sans-serif;*/
.center {text-align: center;}
.borderbox {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
}
.bgpoint {
    width: 100%;
    height: 100%;
    background: url(../images/bgpoing.png) center repeat;
}
.contant {
    max-width: 1000px;
    margin: 0 auto;
}
article {}
section {
    padding-top: 66px;
}
article, section {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
}
.font1 {
    font-size: 3em;
}
.font2 {
    font-size: 2em;
}
.font3 {
    font-size: 1.5em;
}
.font4 {
    font-size: 1em;
}
.font5 {
    font-size: 0.875em;
}
.font6 {
    font-size: 0.813em;
}
.font1, .font2, .font3, .font4, .font5, .font6 {
    -webkit-transition: 0.2s linear;
    -moz-transition: 0.2s linear;
    -ms-transition: 0.2s linear;
    -o-transition: 0.2s linear;
    transition: 0.2s linear;
}
.section h2 {
    background: #333;
    padding: 10px 0 10px 16px;
    color: #FFF;
    font-size:1.25em;
    font-weight: 400;
}
.section h3 {
    padding:40px 0 30px 0;
    font-size:2.25em;
    font-weight:700;
    line-height: 1.2;
    color:#FFF;
}
.section h3 > span {
    display: inline-block;
    font-size: 0.35em;
    font-weight: 400;
}
.section h4 {
    font-size:1.5em;
    font-weight:700;
    line-height: 1.2;
    color:#FFF;
}
.section .header {}
.section .note {
    margin: 0 0 30px 0;
    font-size:0.875em;
    line-height: 1.3;
    color:#000;
}


/*--- header ---*/
nav {
    width: 100%;
    height: 66px;
    background: rgba(0,0,0,0.7);
    position: fixed;
    left: 0;
    top: 0;
    z-index: 99999;
    -webkit-box-shadow: 0px 0px 14px rgba(0,0,0,0.5);
    -moz-box-shadow: 0px 0px 14px rgba(0,0,0,0.5);
    -ms-box-shadow: 0px 0px 14px rgba(0,0,0,0.5);
    -o-box-shadow: 0px 0px 14px rgba(0,0,0,0.5);
    box-shadow: 0px 0px 14px rgba(0,0,0,0.5);
    -webkit-transition: 0.2s linear;
    -moz-transition: 0.2s linear;
    -ms-transition: 0.2s linear;
    -o-transition: 0.2s linear;
    transition: 0.2s linear;
}
nav:hover {
    background: rgba(0,0,0,1);
}
nav h1.title {}
nav h1.title a {
    display: block;
    width: 188px;
    height: 44px;
    background: url(../images/sofa-logo-w2.svg) no-repeat center;
    -moz-background-size:188px 44px;
    -webkit-background-size:188px 44px;
    -ms-background-size:188px 44px;
    -o-background-size:188px 44px;
    background-size:188px 44px;
    -webkit-transition: 0.2s linear;
    -moz-transition: 0.2s linear;
    -ms-transition: 0.2s linear;
    -o-transition: 0.2s linear;
    transition: 0.2s linear;
    position: absolute;
    left: 11px;
    top: 11px;
}
nav h1.title a span {
    display: block;
    text-indent:-5000px !important;
}
nav span.description {}
@media screen and (min-width: 641px) {
    nav .menu {
        position: absolute;
        left: 210px;
    }
    nav .menubtn {
        display: none;
    }
    nav .menulist {
        display: block !important;
    }
    nav .menulist ul {}
    nav .menulist li {
        float: left;
    }
    nav .menulist li a {
        display: block;
        height: 66px;
        padding: 0 12px;
        line-height: 66px;
        -webkit-transition: 0.2s linear;
        -moz-transition: 0.2s linear;
        -ms-transition: 0.2s linear;
        -o-transition: 0.2s linear;
        transition: 0.2s linear;
    }
    nav .menulist li a:hover {
        background: #FFF;
        color: #000;
    }
}
@media screen and (min-width: 700px) {
    nav .menu {
        left: 240px;
    }
    nav .menulist li a {
        padding: 0 15px;
    }
}
@media screen and (max-width: 640px) {
    nav .menu {
        position: absolute;
        top: 0px;
        right: 0px;
    }
    nav .menu .menubtn {
        padding: 15px;
        position: absolute;
        top: 0px;
        right: 0px;
        z-index: 1;
    }
    nav .menu .menubtn img.menubtnpic {
        width: 36px;
        height: 36px;
    }
    nav .menulist {
        display: none;
        width: 230px;
        height: 100%;
        padding: 50px 0 0 0;
        background: rgba(38,38,38,0.9);
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -ms-box-sizing: border-box;
        -o-box-sizing: border-box;
        box-sizing: border-box;
        -webkit-box-shadow: 0px 0px 100px rgba(0,0,0,1);
        -moz-box-shadow: 0px 0px 100px rgba(0,0,0,1);
        -ms-box-shadow: 0px 0px 100px rgba(0,0,0,1);
        -o-box-shadow: 0px 0px 100px rgba(0,0,0,1);
        box-shadow: 0px 0px 100px rgba(0,0,0,1);
        position: fixed;
        top: 0px;
        right: 0px;
    }
    nav .menulist ul {}
    nav .menulist li {}
    nav .menulist li a {
        display: block;
        padding: 13px 0 13px 15px;
        border-bottom: 1px dotted rgba(150,150,150,0.2);
        -webkit-transition: 0.2s linear;
        -moz-transition: 0.2s linear;
        -ms-transition: 0.2s linear;
        -o-transition: 0.2s linear;
        transition: 0.2s linear;
    }
    nav .menulist li a:hover {
        background: #FFF;
        color: #000;
    }
}


/*--- menulist ---*/
.menulist {}




/*--- article1 ---*/
.article1 {
    width: 100%;
    height: 100%;
    background: url(../images/bg1.jpg) center no-repeat ;
    -moz-background-size: cover;
    -webkit-background-size: cover;
    -ms-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    position: relative;
}
.section1 {
    min-height: 100%;
}
.article1 .font1 {
    margin: 0 auto;
    padding-bottom:0.3em;
    font-weight: 700;
    text-align: center;
    line-height: 1.2;
}
.article1 .line {
    width: 28%;
    height: 2px;
    margin: 0 auto;
    margin-bottom:1em;
    background: #FFF;
}
.article1 .font3 {
    font-weight: 500;
    text-align: center;
    line-height: 1.4;
}
.article1 .more,
.article2 .more {
    width:100%;
    text-align: center;
    position: absolute;
    left: 0px;
    bottom: 3%;
}
.article1 .more .font6,
.article2 .more .font6 {
    margin-bottom: 1em;
    letter-spacing: 3px;
}
.article1 .more .arrow,
.article2 .more .arrow {
    animation-name: arrow-am;
    animation-duration: 12s;
    position: relative;
}
@keyframes arrow-am {
    0% {
        top: 5px;
    }
    5% {
        top: -5px;
    }
    10% {
        top: 5px;
    }
    15% {
        top: -5px;
    }
    20% {
        top: 5px;
    }
    25% {
        top: -5px;
    }
    30% {
        top: 5px;
    }
    35% {
        top: -5px;
    }
    40% {
        top: 5px;
    }
    45% {
        top: -5px;
    }
    50% {
        top: 5px;
    }
    55% {
        top: -5px;
    }
    60% {
        top: 5px;
    }
    65% {
        top: -5px;
    }
    70% {
        top: 5px;
    }
    75% {
        top: -5px;
    }
    80% {
        top: 5px;
    }
    85% {
        top: -5px;
    }
    90% {
        top: 5px;
    }
    95% {
        top: -5px;
    }
    100% {
        top: 0px;
    }
}


/*--- article2 ---*/
.article2 {
    background: rgba(88,112,156,1);
    position: relative;
}
.article2 .font1 {
     margin: 1em 0 1em 0;
     font-weight: 300;
     text-align: center;
}
.article2 ul {
}
.article2 li {
    width: calc( 100% / 3 );
    padding: 1em 0 auto;
    margin-bottom: 1em;
    line-height: 1.4;
    text-align: center;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
    float: left;
    -webkit-transition: 0.2s linear;
    -moz-transition: 0.2s linear;
    -ms-transition: 0.2s linear;
    -o-transition: 0.2s linear;
    transition: 0.2s linear;
}
.article2 .icon {
    margin-bottom: 1em;
}
.article2 .icon img {
    width: 30%;
}
.article2 .line {
    margin: 0 auto;
    margin-bottom:1em;
    width: 28%;
    height: 2px;
    background: #9EC9DF;
}
.article2 .contant .font4 {
    color: #9EC9DF;
}
@media screen and (max-width: 720px) {
    .article2 ul {
        width: calc( 100% - 20px );
        margin: auto;
    }
    .article2 li {
        width: calc( 100% / 2 );
        margin-bottom: 0.5em;
        padding: 0.5em 0;
    }
    .article2 .icon {
        margin-bottom: 0.5em;
    }
    .article2 .icon img {
        width: 35%;
    }
    .article2 .line {
        margin-bottom: 0.5em;
    }
    .article2 .font4 {
        font-size: 0.813em;
    }
}



/*--- article3 ---*/
.article3 {
    background: url(../images/bg2.jpg) center no-repeat fixed;
    -moz-background-size:cover;
    -webkit-background-size:cover;
    -ms-background-size:cover;
    -o-background-size:cover;
    background-size:cover;
}
.article3 .font1 {
    margin: 1em 0 0.3em 0;
    font-weight: 300;
}
.remotecontrol li a.btn {
    display: inline-block;
    padding-bottom: 1px;
    margin-bottom: 5px;
    border-bottom: 2px solid rgba(255,255,255,0.3);
    font-weight: 700;
    cursor: pointer;
    -webkit-transition: 0.2s linear;
    -moz-transition: 0.2s linear;
    -ms-transition: 0.2s linear;
    -o-transition: 0.2s linear;
    transition: 0.2s linear;
}
.remotecontrol li a.btn:hover {
    border-bottom: 2px solid rgba(255,255,255,1);
}

@media screen and (min-width: 641px) {
    .article3 .font3 {
        margin-bottom:1em;
    }
    .article3 .contant {
        width: 680px;
        margin: auto;
    }
    .remotecontrol {
        max-width: 320px;
        margin-top:80px;
        float: left;
    }
    .remotecontrol li {
        margin-bottom: 23px;
    }
    .remotecontrol li a.stepbtn {
        display: block;
        margin-bottom: 15px;
        padding: 0px 30px 0px 13px;
        font-size: 1.5em;
        color: rgba(255,255,255,0.5);
        -moz-border-radius-topleft: 8px;
        -moz-border-radius-topright:0px;
        -moz-border-radius-bottomleft:8px;
        -moz-border-radius-bottomright:0px;
        -webkit-border-top-left-radius:8px;
        -webkit-border-top-right-radius:0px;
        -webkit-border-bottom-left-radius:8px;
        -webkit-border-bottom-right-radius:0px;
        border-top-left-radius:8px;
        border-top-right-radius:0px;
        border-bottom-left-radius:8px;
        border-bottom-right-radius:0px;
        -webkit-transition: 0.2s linear;
        -moz-transition: 0.2s linear;
        -ms-transition: 0.2s linear;
        -o-transition: 0.2s linear;
        transition: 0.2s linear;
        cursor: pointer;
    }
    .remotecontrol li a.stepbtn:hover {
        color: rgba(255,255,255,1);
    }
    .remotecontrol li a.stepbtn.select {
        background: url(../images/videoremote.png) no-repeat right center;
        padding: 10px 30px 10px 13px;
        color: rgba(255,255,255,1);
        font-weight: 700;
    }
    .remotecontrol li a i {
        font-size: 0.875em;
        font-style: italic;
        font-family: Arial;
        font-weight: 300;
        margin-right: 5px;
    }
    .remotecontrol li p {
        display: none;
        margin-left: 15px;
        padding-left: 9px;
        line-height: 1.5;
        font-size: 0.938em;
        border-left: 3px solid rgba(255,255,255,0.2);
    }
    .remotecontrol li p button {
        margin: 8px 0 8px 0;
        padding: 0;
        background: transparent;
        border:none;
        color:#fffd51;
        font-size: 1em;
    }

    .videoplayer {
        width: 350px;
        height: 687px;
        background: url(../images/phoneframe.png) no-repeat center;
        float: right;
    }
    .videoplayer video {
        margin: 76px 0 0 25px;
        -webkit-box-shadow: 0px 0px 6px rgba(0,0,0,0.5);
        -moz-box-shadow: 0px 0px 6px rgba(0,0,0,0.5);
        -ms-box-shadow: 0px 0px 6px rgba(0,0,0,0.5);
        -o-box-shadow: 0px 0px 6px rgba(0,0,0,0.5);
        box-shadow: 0px 0px 6px rgba(0,0,0,0.5);
    }
    .videoplayer a.btn {
        display: none;
    }
}
@media screen and (max-width: 640px) {
    .article3 .font3 {
        margin-bottom:1.5em;
    }
    .article3 .contant {
        width: 90%;
        margin: auto;
        position: relative;
    }
    .remotecontrol {
        padding-bottom:70px;
        position: relative;
    }
    .remotecontrol li {
        margin-bottom: 16px;
    }
    .remotecontrol li a.stepbtn {
        display: block;
        margin-bottom: 10px;
        font-size: 1.25em;
        font-weight: 700;
        color: rgba(255,255,255,0.5);
        cursor: pointer;
    }
    .remotecontrol li a.stepbtn:hover {
        color: rgba(255,255,255,1);
    }
    .remotecontrol li a.stepbtn.select {
        background: rgba(0,0,0,0.3);
        font-size: 1.35em;
        padding: 6px 15px 6px 8px;
        color: rgba(255,255,255,1);
        font-weight: 700;
    }
    .remotecontrol li a i {
        font-size: 0.875em;
        font-style: italic;
        font-family: Arial;
        font-weight: 300;
        margin-right: 3px;
    }
    .remotecontrol li p {
        display: none;
        width: calc( 100% - 110px );
        line-height: 1.5;
        font-size: 0.875em;
    }
    .remotecontrol li p button {
        background: transparent;
        border:none;
        color:#FFF;
        font-size: 1em;
    }

    .videoplayer {
        width: 100px;
        height: 204px;
        margin: auto;
        -webkit-box-shadow: 0px 0px 50px rgba(0,0,0,0.5);
        -moz-box-shadow: 0px 0px 50px rgba(0,0,0,0.5);
        -ms-box-shadow: 0px 0px 50px rgba(0,0,0,0.5);
        -o-box-shadow: 0px 0px 50px rgba(0,0,0,0.5);
        box-shadow: 0px 0px 50px rgba(0,0,0,0.5);
        overflow: hidden;
        position: absolute;
        right: 0px;
        bottom: 70px;
        z-index: 1;
    }
    .videoplayer video {
        width: 100px;
        height: 178px;
        /*margin-top: -39px;*/
    }
    .section3 div[style] {
        display: none;
    }
    .videoplayer a.btn {
        display: block;
        font-weight: 500;
        font-size: 1em;
        text-align: center;
        line-height: 26px;
        background: rgba(0,0,0,0.5);
    }
}


/*--- article4 ---*/
.article4 {
    background: rgba(88,112,156,1);
}
.article4 .contant {
    width: 90%;
    margin: auto;
}
.article4 .contant ol {
    width: 60%;
    margin: auto;
    margin-bottom: 50px;
}
.article4 .contant ol li {
    width: 50%;
    float: left;
    text-align: center;
    font-size: 1.5em;
}
.article4 .contant ol li a {
    display: inline-block;
    color: rgba(255,255,255,0.5);
    -webkit-transition: 0.2s linear;
    -moz-transition: 0.2s linear;
    -ms-transition: 0.2s linear;
    -o-transition: 0.2s linear;
    transition: 0.2s linear;
    cursor: pointer;
}
.article4 .contant ol li a:hover {
    color:#FFF;
}
.article4 .contant ol li a.select {
    color: rgba(255,255,255,1);
}
.article4 .contant ol li a.select .line {
    width: 100%;
    height: 3px;
    background: #FFF;
    margin-top: 10px;
}
.article4 .contant ul {
}
.article4 .contant ul li {
    margin-bottom: 2px;
}
.article4 .contant ul.qna2 {
    display: none;
}
.article4 .contant .qa {
}
.article4 .contant .qa .font3 {
    padding: 12px 34px 12px 12px;
    background: rgba(0,0,0,0.1);
    cursor: pointer;
    position: relative;
}
.article4 .contant .qa .font3 .arrow {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 6px 0 6px;
    border-color: rgba(255,255,255,0.5) transparent transparent transparent;
    position: absolute;
    right: 14px;
    top: 20px;
}
.article4 .contant .qa .font3 .arrow.up {
    border-width: 0 6px 6px 6px;
    border-color: transparent transparent rgba(255,255,255,0.5) transparent;
}
.article4 .contant .qa .font4 {
    display: none;
    margin: 8px 0 22px 12px;
    padding-left: 10px;
    font-size: 1em;
    border-left: 3px solid rgba(255,255,255,0.1);
    line-height: 2;
}
.article4 .contant .qa .font4 p {
    margin-bottom: 0.9em;
}
.article4 .contant .qa .font4 b {
    font-weight: bold;
}
.article4 > .section4 > .font3 {
    width: 90%;
    border-top: 2px solid rgba(0,0,0,0.1);
    max-width: 1000px;
    margin: auto;
    margin-top: 20px;
    padding-top: 20px;
    font-size:0.875em;
    line-height: 1.5;
    text-align: left;
}
.article4 a.btn {
    display: inline-block;
    padding-bottom: 1px;
    margin-bottom: 5px;
    border-bottom: 2px solid rgba(255,255,255,0.3);
    font-weight: 700;
    cursor: pointer;
    -webkit-transition: 0.2s linear;
    -moz-transition: 0.2s linear;
    -ms-transition: 0.2s linear;
    -o-transition: 0.2s linear;
    transition: 0.2s linear;
}
.article4 a.btn:hover {
    border-bottom: 2px solid rgba(255,255,255,1);
}
@media screen and (max-width: 640px) {
    .article4 .contant ol {
        width: 100%;
        margin-bottom: 20px;
    }
    .article4 .contant ol li {
        font-size: 1em;
    }
    .article4 .contant .qa .font3 {
        line-height: 1.3;
    }
    .article4 .contant .qa .font4 {
        font-size: 0.938em;
        line-height: 1.8;
    }
}







/*--- footer ---*/
.footer {
    background: rgba(88,112,156,1);
}
.footer .explain {
    padding: 30px 0 40px 0;
    font-size: 0.813em;
    text-align: center;
    color:#FFF;
}
.footer .explain a {
    color:#FFF;
    text-decoration: underline;
}
.footer .explain a:hover {
    color:#FFF;
}



@media screen and (max-width: 1000px) {
}

@media screen and (max-width: 640px) {
    nav {
        height: 50px;
    }
    nav h1.title a {
        width: 144px;
        height: 34px;
        -webkit-background-size:144px 34px;
        -moz-background-size:144px 34px;
        -ms-background-size:144px 34px;
        -o-background-size:144px 34px;
        background-size:144px 34px;
        left: 8px;
        top: 8px;
    }
    nav .menu .menubtn {
        padding: 7px;
    }
    section {
        padding-top: 50px;
    }
    
    .font1 {
        font-size:2.5em;
    }
    .font2 {
        font-size:2em;
    }
    .font3 {
        font-size:1.5em;
    }
    .font4 {
        font-size:1em;
    }
    .font5 {
        font-size:0.875em;
    }
    .font6 {
        font-size:0.813em;
    }

    .section h2 {
        padding: 8px 0 8px 16px;
        font-size:1em;
    }
    .section h3 {
        padding:20px 0 20px 0;
        font-size:1.5em;
    }
    .section h3 > span {
        display: block;
        margin-top: 10px;
        font-size: 0.55em;
    }
    .section h4 {
        font-size:1.25em;
    }
}
@media screen and (max-width: 414px) {
    
    .font1 {
        font-size:2em;
    }
    .font2 {
        font-size:1.5em;
    }
    .font3 {
        font-size:1em;
    }
    .font4 {
        font-size:1em;
    }
    .font5 {
        font-size:0.875em;
    }
    .font6 {
        font-size:0.813em;
    }
}