/* reset-css
---------------------------------------------- */
@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@300;400;500&family=Roboto:wght@300;400;500&display=swap');

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,
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,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    vertical-align: baseline;
    font-weight: normal;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

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;
}


html {
    font-size: 62.5%;
}

* {
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    box-sizing: border-box;
}

a,
a:visited {
    color: inherit;
    text-decoration: none;
}

img {
    max-width: 100%;
    border: none;
    height: auto;
}


article {
    text-align: center;
    line-height: 2.4rem;
}


h1,
h3,
h4 {
    color: #333;
    letter-spacing: 0.2rem;
}

h1 {
    font-size: 3.6rem;
}

h3 {
    font-size: 2.4rem;
    line-height: 3.2rem;
}

h4 {
    font-weight: 500;
    font-size: 2.4rem;
    line-height: 6rem;
}

body {
    font-family: 'Noto Sans TC', '微軟正黑體', sans-serif;
    background: #f8eae4;
    color: #4f4f4f;
    font-weight: 400;
    letter-spacing: 1px;
    font-size: 1.3rem;
}
.kv{
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 56.25%;
    background-color: #000;
}
.kv-box1{display: flex;justify-content: center;align-items: center;}
.kv-area1{
    position: relative;
    width: 62.291667vw;
    height: 33.3333vw;
    background: rgb(252 93 7 / .66);
    padding: 2.5vw 2.29167vw;
}
.kv-area1 > p{font-size: 4.1667vw;color: #fff;transform: scaleY(1.1);}
.kv-area1 > p span,.kv-tip p span{display: inline-block;}
.kv-area1 h1{font-size: 13.90625vw;color: #fff;font-weight: 900;display: flex;line-height: 1em;margin-bottom: .25em;}
small{font-weight: bold;vertical-align: top;display: inline-block;top: -.5em;position: relative;}
.kv-area1 h1 small{font-size: .5em;line-height: 1em;position: relative;top: -.5em;margin-left: -.25em;}
.kv-area1 h1 span{font-weight: bold;display: inline-block;width: 1em;letter-spacing: 0;transform: scaleY(1.1);}
.kv-tip {display: flex;justify-content: flex-end;margin-top: 0em;}
.kv-tip p{font-size: 2.5vw;color: #fff;background: #000;display: inline-block;padding: 0 1.5em;}


.kv-slide{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.slide-box{
    position: relative;
    width: 100%;
    height: 100%;
}
.kv-box1{
    background: url(../images/kv-pic1.jpg) center center no-repeat;
    background-size: contain;
}
.kv-box2{
    background: url(../images/kv-pic2.jpg) center center no-repeat;
    background-size: contain;
}
.kv-box3{
    background: url(../images/kv-pic3.jpg) center center no-repeat;
    background-size: contain;
}
.kv-box4{
    background: url(../images/kv-pic4.jpg) center center no-repeat;
    background-size: contain;
}
.slider{
    position: relative;
    width: 100%;
    overflow: initial;
    min-height: 100vh;
    height: auto;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    background:#25418F;
    /*margin-bottom: 40px;*/
    padding: 10vh 0;
}

.slide-area{
    position: relative;
    display: flex;
    align-items: center;
    min-height: 80vh;
    height: 100%;
    width: 100%;
    max-width: 1660px;
}
.slide-pic{
    width: 50%;
    display: flex;
    
    justify-content: flex-end;
    flex-direction: column;
    position: relative;
    height: 100%;
    padding-right: 0vw;
}
.slide-pic .swiper-container{
    height: 100%;width: 73.73vh;
}
.slide-list {height: 100%;margin:0 auto;}
.slide-list .slide-box{height: 100%;}
.slide-list .slide-box img{width:100%;height: automax-width: initial;}

.slider.reverse .slide-area .slide-list .slide-box {text-align: right;}

.slider.reverse .slide-area{
    flex-direction: row-reverse;
}
.slider.reverse .slide-area .slide-box {text-align: left;}

.slider.reverse .slide-area .slide-list .slick-slide,.slide-area .slide-list .slick-slide{
    text-align: right;
    display: flex;
    justify-content: flex-end;
}

.slider.reverse .slide-area .slide-list .slick-slide,.slide-area.reverse .slide-list .slick-slide{
    text-align: left;
    display: flex;
    justify-content: center;
}
.slide-main{width: 50%;display: flex;justify-content: center;
align-items: flex-start;flex-direction: column;padding-left: 5vw;}


.slider.reverse{background:#F95600; }
.slider.reverse .slide-area .slide-main{padding-left: 5vw;padding-right: 0;}
.slide-main h2{font-size: 100px;position: relative;z-index: 1;color: #fff;font-weight: 700;}
.slide-main h3{font-size: 69px;color: #fff;line-height: 1.5em;margin-bottom: .5em;z-index: 1;font-weight: 500;}
.slide-main p{font-size: 30px;line-height: 1.5em;margin-bottom: 2em;color: #fff;z-index: 1;font-weight: 300}

.form-btn{
    color: #25418F;
    background:#fff;
    width: 299px;
    height: 65px;
    line-height: 65px;
    font-size: 40px;
    text-align: center;
    border-radius: 5px;
    padding-right: 1.5em;
    position: relative;
    cursor: pointer;
}
.form-btn i{width: 60px;position: absolute;top: 40%;right: .5em;  
    -webkit-animation:moveHand 0.4s ease 0s infinite alternate both;
    animation:moveHand 0.4s ease 0s infinite alternate both;}
.form-btn i img{width: 100%;height: auto;}

.slider.reverse .form-btn{color: #F95600; }
@keyframes moveHand{
    0%{
       transform: translateY(0);
    }
    100%{
        transform: translateY(5px);
    }
}
@-webkit-keyframes moveHand{
    0%{
       transform: translateY(0);
    }
    100%{
        transform: translateY(5px);
    }
}
.form {
    background: #25418F;

    position: relative;
    padding: 5rem 0;
}

.form .title {
    font-size: 9vw;
    padding: 0 5vw;
    color: #F95600;
    vertical-align: middle;
}

.form .title span {
    font-size: 2vw;
    color: #fff;
    background: #000;
    padding: 0 .5em;
    line-height: 1.5em;
    display: inline-block;
    vertical-align: middle;
}

.form>.con {
    width: 90%;
    /*max-width: 1350px;*/
    /*border:2px solid #A98036;*/
    /*padding: 35px 44px;*/
    display: flex;
    justify-content: space-between;
    /*flex-wrap: wrap;*/
    /*height: 450px;*/
    margin: 0 auto;
}

.form h3 {
    width: calc(50% - 22px);
    margin-right: 10%;
    font-size: 51px;
    color: #fff;
}

.form>div .form-content {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: flex-end;
}

.form>div .form-content ul {
    width: 60%;
    padding-right: 5%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.form>div .form-content li {
    width: 100%;
    color: #fff;
    font-size: 22px;
    text-align: center;
    margin: .75em 0;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.form>div .form-content li.xs-6 {
    width: 48%;
}

.form>div .form-content ul li:first-child,
.form>div .form-content ul li:last-child {
    /*border:1px solid #C5E7FF;*/
    /*border-radius: 5px;*/
}

.form>div .form-content li input[type="text"],
.form>div .form-content li input[type="tel"],
.form>div .form-content li input[type="email"] {
    background: #F8F4F1;
    outline: none;
    border: none;
    /*border-radius: 5px;*/
    padding: 0 1em;
    color: #000;
    font-size: 20px;
    line-height: 50px;
    height: 50px;
}

.form>div .form-content li>*:nth-child(2) {
    width: 67%;
    height: 100%;
    max-width: 624px;
}

.form>div .form-content li select {
    background: #F8F4F1;
    outline: none;
    border: none;
    padding: 0 1em;
    color: #000;
    font-size: 20px;
    line-height: 5rem;
    height: 50px;
}

.form label {
    display: block;
    position: relative;
    text-align: right;
    font-size: 30px;
    padding-right: 1em;
    /*margin-bottom: .8em;*/
}

.form-content textarea {
    font-size: 20px;
    line-height: 1.5em;
    height: 12em;
    width: 45%;
    /*padding-left: 5%;*/
    margin-left: 5%;
    position: relative;
    background: #F8F4F1;
    border-radius: 10px;
    /*border:2px solid #491e47;*/
    padding: 15px;

}

.form-bottom {
    text-align: center;
    margin: 0 auto;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
    /*border: 1px solid #fff;*/
    /*-webkit-text-fill-color: #fff;*/
    /*-webkit-box-shadow: 0 0 0px 1000px #A97F36 inset;*/
    transition: background-color 5000s ease-in-out 0s;
}

.form>div .form-content li input[type="checkbox"] {
    width: 18px;
    height: 18px;
    border-radius: 2px;
    border: none;
    outline: none;
}

.form .demand-check {
    color: #fff;
    font-size: 18px;
    text-align: left;
    /*margin-top: 2em;*/
}

.form .demand-check span {
    color: #fff;
}

.form>div .form-content li.demand-check p:first-child {
    line-height: 1.5em;
}

.form>div .form-content li:last-child {
    /*margin-top: 1em;   */
}

/*::placeholder {
  color: #fff;
  font-size: 1em;
  letter-spacing: .25em;
}*/

.form button.send {
    width: 100%;
    height: 100%;
    background: #F95600;
    color: #fff;
    border: none;
    line-height: 5rem;
    font-size: 30px;
    padding: 0.25em 2em;
    border-radius: 5px;
    cursor: pointer;
    margin-top: 1.5em;
}

.form button.send:focus {
    outline: none;
}

.form .grass {
    position: absolute;
    right: -20px;
    top: 0;
}

.demand-check {
    /*line-height: 70px;*/
}

.demand-check a {
    text-decoration: underline;
}

.btns {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex-direction: column;
    max-width: 1150px;
    margin: 0 auto;
}

.btn {
    width: 100%;
    max-width: 500px;
    /*border:5px solid #fff;*/
    position: relative;
    display: flex;
    background: #fff;
    text-align: center;
    color: #491e47;
    font-size: 2.5rem;
    line-height: 2.5em;
    border-radius: 10px;
    margin-top: 1em;
}

.btn i {
    /*height: 50%;*/
    width: 30%;
    display: inline-block;
    background-size: 50% 50% !important;
}

.btn i.icon1 {
    background: url(../img/icon_1.svg) center center no-repeat;
}

.btn i.icon2 {
    background: url(../img/icon_2.svg) center center no-repeat;
}

.btn i.icon3 {
    background: url(../img/icon_3.svg) center center no-repeat;
}

.btn i.icon4 {
    background: url(../img/icon_4.svg) center center no-repeat;
}

.btn p {
    width: 80%;
    margin-left: -2em;
    color: #491e47;
    font-weight: 500;
}

.btn.map-btn p {
    color: #fff;
}

.btn.map-btn {
    background: #491e47;
    border: none;
    color: #fff;
    margin-top: 0em;
    max-width: 32%;
}

.btn-list {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.btn-list .btn {
    width: 32%;
}

.btn-google {
    border-radius: 10px;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #fff;
    margin: 1em 0;
}

.btn-google>p {
    font-size: 2em;
    font-weight: 500;
    padding-left: 1em;
}

.maps {
    width: 100%;
    padding: 0 0px;
    position: relative;
}

.maps>.map-con {
    max-width: 1200px;
    width: 70%;
    height: 28vw;
    max-height: 759px;
    margin: 0 auto;
    position: relative;
}


footer {
    background: #B8BAB9;

}

footer p {
    font-weight: 300;
    text-align: center;
    font-size: 24px;
    color: #000;
    line-height: 1.5em;
    padding: 1em 0;
}




.swiper-button-prev {
    position: absolute;
    display: block;
    width: 31px;
    height: 116px;
    background: url(../images/arrow.png) no-repeat;
    background-position: bottom;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    opacity: 1;
    top: 50%;
    left: 0px;
    transform: translateX(0%) scaleX(-1);
}
.swiper-button-next {
    position: absolute;
    display: block;
    width: 31px;
    height: 116px;
    background: url(../images/arrow.png) no-repeat;
    background-position: bottom;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    opacity: 1;
    top: 50%;
    right: 0px;
    transform: translateX(0%);
}

.slick-arrow:hover:after {
    opacity: .8;
}

.news{
    position: relative;
    width: 100%;
    overflow: initial;
    /*min-height: 100vh;*/
    height: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    padding: 10vh 0;
    background: #F95600;
}

.news-con{
    width: 100%;
    /*max-width: */
}
.news-list{
    display: flex;
    justify-content: center;
    margin: 0 auto;
}
.news-list li{
    width: 28.125%;
    margin: 0 15px;
}
.news-list li .news-pic{height: 28vw;overflow: hidden;position: relative;}
.news-list li .news-pic img{position: absolute;height: 100%;width: auto;max-width: initial;left: 50%;transform: translateX(-50%);}

.news-list li h3{color: #fff;font-size: 36px;line-height: 1.25em;margin: .5em 0;font-weight: 500;}
.news-list li p{color: #fff;font-size: 26px;line-height: 1.25em;}

.news-list li a{width: 240px;display: block;margin-top: 20px;}


@media screen and (max-width:1680px) {
    .slide-area{max-width: 1500px;}
    .slide-main h2{font-size: 80px;}
    .slide-main h3{font-size: 56px;}
    .slide-main p{font-size: 24px;}
    .form-btn {
        width: 240px;
        height: 52px;
        line-height: 52px;
        font-size: 32px;
    }
    .form-btn i{width: 48px;}
    .slide-pic {
        /*margin-right: 3vw;*/
    }
    .news-list li h3{font-size: 34px;}
    .news-list li p{font-size: 24px;}
    .news-list li a{width: 200px;margin-top: 20px;}
}

@media screen and (max-width:1500px) {
    .slide-area{max-width: 1440px;}
    .slide-main h2{font-size: 70px;}
    .slide-main h3{font-size: 49px;}
    .slide-main p{font-size: 21px;}
    .form-btn {
        width: 210px;
        height: 46px;
        line-height: 46px;
        font-size: 28px;
    }
    .form-btn i{width: 42px;}
}

@media screen and (max-width:1440px) {
    .slide-area{max-width: 1366px;}
    .slide-main h2{font-size: 70px;}
    .slide-main h3{font-size: 49px;}
    .slide-main p{font-size: 21px;}
    .form-btn {
        width: 210px;
        height: 46px;
        line-height: 46px;
        font-size: 28px;
    }
    .form-btn i{width: 42px;}
    .news-list li h3{font-size: 32px;}
    .news-list li p{font-size: 22px;}
    .news-list li a{width: 180px;margin-top: 15px;}
}

@media screen and (max-width:1366px) {
    .slide-area{max-width: 1280px;}
    .slide-main h2{font-size: 70px;}
    .slide-main h3{font-size: 49px;}
    .slide-main p{font-size: 21px;}
    .form-btn {
        width: 210px;
        height: 46px;
        line-height: 46px;
        font-size: 28px;
    }
    .form-btn i{width: 42px;}
    .news-list li h3{font-size: 30px;}
    .news-list li p{font-size: 18px;}
    .news-list li a{width: 180px;margin-top: 15px;}
}

@media screen and (max-width:1280px) {
    .slide-area{max-width: 1150px;}
    .slide-main h2{font-size: 60px;}
    .slide-main h3{font-size: 42px;}
    .slide-main p{font-size: 18px;}
    .form-btn {
        width: 180px;
        height: 39px;
        line-height: 39px;
        font-size: 24px;
    }
    .form-btn i{width: 36px;}

    .form>div .btns {
        /*width: calc(40% - 22px);*/
    }

    .form>div .form-content {
        /*width: calc(60% - 22px);*/
    }

    .form h3 {
        /*width: calc(60% - 22px);*/
    }

    .form>div .form-content ul {
        width: 100%;
    }

}

.pc {}

.mb {
    display: none;
}

.fixed-btns {
    /*display: none;*/
}
.fixed-btns {
    /*display: flex;*/
    position: fixed;
    right: 0;
    top: 50px;
    /*width: 100%;*/
    z-index: 9;
    right: 25px;
}

.fixed-btns>a {
    width: 70px;
    height: 70px;
    position: relative;
    display: block;
    margin-bottom: 20px;
}
.fixed-btns>a img{width: 100%;height: auto;}
@media screen and (max-width:1024px) {
    .pc {
        display: none;
    }

    .mb {
        display: block;
    }
    .fixed-btns{right: 10px;top: 28vw;transform: translateY(-50%);}
    .slide-pic{width: 100%;}
    .swiper-button-prev{transform: translateX(50%) scaleX(-1);}
    .swiper-button-next{transform: translateX(-50%);}
    .slide-area{
        flex-direction: column;
    }
    .slide-pic .swiper-container{
        width: 80vw;
        height:auto;
    }
   .slider.reverse .slide-area{
        flex-direction: column;
    }
    .slide-main,.slider.reverse .slide-area .slide-main{padding-left: 0;padding-top:50px;width: 80vw;}
  
    .form h3 {
        width: 100%;
    }

    .form h3 p {
        display: inline-block;
        width: 77.43%;
    }

    .form h3 span {
        width: 33.46%;
    }

    .form .grass {
        width: 15vw;
        top: 60px;
    }

    .form .grass img {
        width: 100%;
    }

    .form>div {
        flex-direction: column;
        flex-wrap: nowrap;
        height: auto;
    }

    .form>div .form-content {
        width: 100%;
    }

    .form>div .map {
        width: 100%;
        margin-top: 2em;
    }

    .form h3 span {
        display: block;
        margin-top: 1em;
        margin-left: 0em;
    }

    footer {
        /*display: none;*/
        padding: 2em 0;
    }

    .form>div .form-content li.xs-6 {
        width: 100%;
    }

    .form>div .form-content li.demand-check,
    .form>div .form-content li:last-child {
        margin-top: .5em;
    }

    .form label {
        margin-bottom: .5em;
    }

    .demand-check {
        line-height: 2em;
    }

    .form>div .form-content li.demand-check p:first-child {
        /*line-height: 2em;*/
        margin-bottom: .5em;
    }

    .form>div .btns {
        width: 100%;
        flex-wrap: wrap;
        flex-direction: initial;
        justify-content: space-between;
    }

    .btn {
        width: 49%;
    }

    .btn p {}

    footer ul {
        width: 100%;
        padding: 1em;
        padding-bottom: 18vw;
    }

    footer li {
        font-size: 16px;
        width: 100%;
        /*left:calc(50% - 7em);*/
        margin-left: 1em;
        position: relative;
    }

    .form-content {
        flex-direction: column;
    }

    .form>div .form-content ul {
        border-right: none;
        padding-right: 0%;
    }

    .form-content textarea {
        width: 100%;
        margin-left: 0;
        margin-top: 2em;
    }

    .news-list li h3{font-size: 26px;}
    .news-list li p{font-size: 16px;}
    .news-list li a{width: 180px;margin-top: 15px;}
}

@media screen and (max-width:850px) {}

@media screen and (max-width:768px) {
    .btn {
        font-size: 1.8em;
    }
    .news-list{flex-direction: column;padding: 0 28px;}
    .news-list li{width: 100%;margin:20px 0;display: flex;}
    .news-list li .news-pic{width: 50%;height: 35vw;}
    .news-txt{
        width: 50%;
        padding-left: 1em;
    }
    .news-list li h3{font-size: 20px;}
    .news-list li p{font-size: 14px;}
    .news-list li a{width: 50%;margin-top: 15px;}
}

@media screen and (max-width:640px) {
    .fixed-btns{top: 10%;}
    .fixed-btns>a{width: 40px;height: 40px;}
    .swiper-button-prev,.swiper-button-next{
        width: 22px;
        height: 81px;
        background-size: cover;
    }
    .slide-main h2{font-size: 45px;}
    .slide-main h3{font-size: 27px;}
    .slide-main p{font-size: 16px;}

    .form-btn {
        width: 150px;
        height: 40px;
        line-height: 40px;
        font-size: 20px;
    }
    .form-btn i{width: 30px;}

    .form .title{
        font-size: 10vw;
    }
    .form h3 {
        width: 80%;
    }
    .form label{font-size: 24px;}

    .form>div .form-content li select,
    .form>div .form-content li input[type="text"],
    .form>div .form-content li input[type="tel"],
    .form>div .form-content li input[type="email"] {
        font-size: 16px;
        line-height: 2em;
        height: 2.5em;
    }
    .form button.send{font-size: 24px;}
    .form>div .form-content li>*:nth-child(2){width: 100%;height: 2.5em;}
    .form-content textarea {
        margin-top: 1em;
        height: 4em;
    }

    .form .demand-check {
        /*margin-top: 1em;*/
    }

    .form {
        padding: 2rem 0;
    }

    .form>div .form-content li {
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
    }

    .form>div .form-content li select,
    .form>div .form-content li input[type="text"],
    .form>div .form-content li input[type="tel"],
    .form>div .form-content li input[type="email"] {
        max-width: 100%;
    }


    footer {
        padding: 0;
    }

    footer p{
        font-size: 14px;
    }
    .news{padding: 5vw 0;}
    .news-list{padding: 0 10px;}
    .news-list li{margin:10px 0;}
    .news-list li h3{font-size: 16px;margin-top: 0;}
    .news-list li .news-pic{height: 40vw;}
    .news-list li p{font-size: 10px;}
    .news-list li a{width: 50%;margin-top: 5px;}
}


@media screen and (max-width:375px) {

    .slide-main h2{font-size: 36px;}
    .slide-main h3{font-size: 22px;}
    .slide-main p{font-size: 15px;}
    .form label{font-size: 22px;}
    .slide-pic .swiper-container{width: 75vw;}
    .swiper-button-prev,.swiper-button-next{
        width: 19px;
        height: 70px;
        background-size: cover;
    }
    .slide-main, .slider.reverse .slide-area .slide-main{width: 75vw;padding-top: 30px;}
    .slider{padding: 5vh 0;min-height: initial;}
    .form button.send{margin-top: .5em;}
}