@charset "UTF-8";
@import 'global.css';
.content {
  margin: auto;

}
.content_wrapper {
  margin: 23px auto 0;
}
@media screen and (max-width: 525px) {
  .content,
  .content_wrapper {
    width: calc(100% - (11px * 2));
  }
  .content {
    padding-top: calc(60px + 78px);
  }
}
@media screen and (min-width: 526px) and (max-width: 959px) {
  .content,
  .content_wrapper {
    width: calc(100% - (36px * 2));
  }
  .content {
    padding-top: calc(60px + 78px);
  }
}
@media screen and (min-width: 960px) and (max-width: 1279px) {
  .content,
  .content_wrapper {
    width: calc(100% - (50px * 2));
  }
  .content {
    padding-top: calc(70px + 78px);
  }
}
@media screen and (min-width: 1280px) and (max-width: 1439px) {
  .content,
  .content_wrapper {
    width: calc(100% - (111px * 2));
  }
  .content {
    padding-top: 166px;
  }
}
@media screen and (min-width: 1440px) {
  .content,
  .content_wrapper {
    width: calc(100% - (111px * 2));
    max-width: 1490px;
  }
  .content {
    padding-top: 166px;
  }
}

/* BANNER */
.content_banner {
  position: relative;
  margin-bottom: 21px;
}
.content_banner img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.content_banner::after {
  content: '';
  width: 9.792vw;
  height: 9.792vw;
  position: absolute;
  right: -1.09377vw;
  bottom: -1.09377vw;
  z-index: 2;
  background: linear-gradient(
    to left top,
    #FCFCFC 50%,
    #707070 51%,
    transparent 0
  ) no-repeat 0% 0%/9.792vw 9.792vw;
}
/* FOR 最新消息內頁 */
.content_banner div {
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  /* aspect-ratio: 1490/838; */
  aspect-ratio: 1490/700;
    /* 計算比例
        1. 只有數字；
        2. 斜線與數字間不可有空白
    */
}

/* 單元頁BANNER */
@media screen and (max-width: 1279px) {
  /* 單元頁BANNER */
  .main_title + .content_banner {
    margin-top: -7.81858vw;
  }
  /* 子選單BANNER */
  .sub_title + .content_banner {
    margin-top: -12.11888vw;
  }
}

@media screen and (min-width: 1280px) {
  /* 單元頁BANNER */
  .main_title + .content_banner {
    margin-top: -100px;
  }
  /* 子選單BANNER */
  .sub_title + .content_banner {
    margin-top: -155px;
  }
}

/* 單元頁 */
.container {
  display: flex;
  justify-content: flex-end;
  align-items: flex-start;

}
/* 單元文章 */
.article_container {
  width: 100%;
}
.page_article {
  background: linear-gradient(180deg,#EFEFEF 0%, #FFFFFF 2%, #FFFFFF 100%);
  box-shadow: 0px 20px 30px #0000001A;
  border: 1px solid #FFFFFF;
  border-radius: 10px;

  margin-bottom: 65px;
  box-sizing: border-box;
}
@media screen and (max-width: 1279px) {
  .container {
    padding-top: 7.03123vw;
    padding-bottom: 6.09378vw;
  }
  .page_article {
    padding: 20px 24px 50px 22px;
  }
}
@media screen and (min-width: 1280px) {
  .container {
    padding-top: 90px;
    padding-bottom: 78px;
  }
  .article_container {
    max-width: 1058px;
  }
  .page_article {
    padding: 32px 50px 65px 43px;
  }
}

p {
  margin-bottom: 1em;
  line-height: 2;
}
main ul, main ol, main dl {
  margin: 1em 0 2em;
}
main ul, main ol {
  padding-left: 1.25em;
}
main li, main dd {
  margin-bottom: 0.75em;
}
main dt {
  font-weight: 700;
  font-size: 1.125em;
  margin-bottom: 0.25em;
}
main header {
  font-size: 1.25em;
}

.page_article .case {
  width: 100%;
  max-width: 600px;
  margin: 2em auto;
}
.page_article figcaption {
  font-size: 1.125rem;
  margin-top: 25px;
  line-height: 1.5;
  padding-left: 1.5em;
  margin-bottom: 1.5em;
  border-left: 5px solid #eeeeee;
}
.page_article figcaption header {
  font-size: 1.75em;
  margin-bottom: 0.5em;
}
.page_article figcaption .tag {
  font-size: 0.9em;
}

/*dt*/.header_color {
  color: #0066cc;
}
/*strong*/.year_color {
  display: block;
  color: #6633ff;
}
.border_bottom_dashed {
  border-bottom: 1px dashed #000;
}
.feature_color {
  color: #438d5e;
}

mark {
  background-color: #ccffcc;
}

article a {
  color: #00B5AD;
  background-image: linear-gradient(
		to right,
		#00B5AD 60%,
		rgba(255, 255, 255, 0) 0%
	);
	background-position: bottom;
	background-size: 15px 1px;
	background-repeat: repeat-x;
  transition: background-size 0.3s;
}
article a:hover,
article a:focus {
  background-image: linear-gradient(
		to right,
		#00B5AD 100%,
		rgba(255, 255, 255, 0) 0%
	);
  background-size: 100% 2px;
}

hr {
  width: 50%;
  max-width: 280px;
  text-align: left;
  margin: 3em 0;
  border: 0;
  height: 2px;
  background-image: linear-gradient(
		to right,
		#000 60%,
		rgba(255, 255, 255, 0) 0%
	);
	background-position: bottom;
	background-size: 15px 1px;
	background-repeat: repeat-x;
}

.emphasis {
  display: block;
  color: #cc3333;
  font-size: 1.25em;
}
.emphasis:first-letter {
  font-size: 2em;
}

article header {
  color: #0066cc;
  margin-bottom: 1em;
  font-weight: 700;
}

.embed_container {
  position: relative;
  height: 0;
  overflow: hidden;
  width: 100%;
  margin-bottom: 1.5em;
}
.iframe_container {
  padding-bottom: 56.25%;
}
.embed_container img,
.embed_container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.iframe_wrapper {
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
}


/* 聯絡我們(表單頁) */
.form_contain {
  width: 100%;
  margin: auto;
  padding-top: 23px;
  box-sizing: border-box;
}
.form_contain .aside_container {
  width: 100%;
  box-sizing: border-box;
}
.form_contain h2.main_title {
  margin-left: 0;
}
.map_container {
  width: 100%;
  max-width: 578px;
  margin: 47px auto;
  padding-bottom: min(100%, 578px);
  box-shadow: 0px 3px 10px rgba(0, 0, 0, 0.16);
  border: 5px solid #FFFFFF;
  border-radius: 10px;
}

@media screen and (max-width: 1679px) {
  .form_contain .article_container {
    max-width: 100%;
  }
}
@media screen and (max-width: 959px) {
  form.page_article {
    padding: 44px 35px 40px;
  }
}
@media screen and (min-width: 960px) and (max-width: 1279px) {
  form.page_article {
    padding: 44px 70px 61px;
  }
  .page_article header {
    font-size: 1.5rem;
  }
}
@media screen and (min-width: 1280px) {
  form.page_article {
    padding: 44px 141px 82px;
  }
}
@media screen and (min-width: 1680px) {
  .form_contain {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
  .form_contain .aside_container {
    max-width: calc(100% - 1058px);
    padding-right: 2em;
  }
}

.form_contain .article_container {
  position: sticky;
  top: 0;
}
.required_item {
  position: relative;
}
.required_item::before {
  content: '*';
  color: #FF0000;
}
form.page_article header {
  font-weight: 700;
  margin-bottom: 0.25em;
}
@media screen and (max-width: 767px) {
  form.page_article header {
    font-size: 1.5rem;
  }
}
@media screen and (min-width: 768px) {
  form.page_article header {
    font-size: 1.875rem;
  }
}
.text_center {
  text-align: center;
}
form.page_article div.fieldset {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  padding: 15px 0;
  box-sizing: border-box;
}
@media screen and (max-width: 599px) {
  form.page_article div.fieldset {
    flex-wrap: wrap;
    flex-direction: column;
  }
  form.page_article input,
  form.page_article textarea {
    width: 100%;
  }
}
@media screen and (min-width: 600px) {
  form.page_article div.fieldset {
    flex-wrap: nowrap;
  }
  form.page_article label {
    text-align: right;
    width: 8em;
    padding-right: 6px;
  }
  form.page_article input,
  form.page_article textarea {
    width: calc(100% - 9em);
  }
  form.page_article .short_input {
    width: calc(((100% - 9em) / 3) * 2);
  }
}
label {
  padding-top: 8px;
  box-sizing: border-box;
}
input, textarea {
  border: 1px solid #9193A8;
  border-radius: 4px;
  font-size: 1.125rem;
  box-sizing: border-box;
}

@media screen and (max-width: 599px) {
  .btn_wrapper {
    padding: 30px 0 3em;
    text-align: center;
  }
  .btn_wrapper button + button {
    margin: 13px 7px 0;
  }
}
@media screen and (min-width: 600px) {
  .btn_wrapper button + button {
    margin-left: 13px;
  }
}
@media screen and (max-width: 599px), (min-width: 960px) and (max-width: 1069px) {
  input, textarea {
    padding: 8px 16px;
  }
}
@media screen and (min-width: 600px) and (max-width: 959px), (min-width: 1070px) {
  input, textarea {
    padding: 8px 23px;
  }

}
@media screen and (min-width: 600px) and (max-width: 1279px) {
  .btn_wrapper {
    padding: 30px 0 3em 8em;
  }
}
@media screen and (min-width: 1280px) {
  .btn_wrapper {
    padding: 100px 0 0 8em;
  }
}
.btn_wrapper button {
  border: 2px solid transparent;
  border-radius: 11px;
  font-size: 1.125rem;
  color: #FFFFFF;
  padding: 8px 56px;
  box-sizing: border-box;
}

[type="submit"] {
  background-color: #00B5AD;
}
[type="submit"]:hover,
[type="submit"]:focus {
  border: 2px solid #00B5AD;
  color: #00B5AD;
  background-color: transparent;
}
[type="reset"] {
  background-color: #959595;
}
[type="reset"]:hover,
[type="reset"]:focus {
  border: 2px solid #959595;
  color: #959595;
  background-color: transparent;
}


/* 最新消息列表頁 */

@media screen and (max-width: 767px) {
  .list_container {
    padding-top: 51px;
    padding-bottom: 51px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1279px) {
  .list_container {
    padding-bottom: 103px;
  }
}
@media screen and (min-width: 1280px) {
  .list_container {
    padding-bottom: 206px;
  }
}
.news_list {
  margin-bottom: 43px;
}
.news_list a {
  display: block;
  width: 100%;
  margin-bottom: 81px;
}
.news_list /*figure*/.subject {
  background-color: #ffffff;
  color: #1E1118;
  position: relative;
  box-sizing: border-box;
}
@media screen and (max-width: 959px) {
  .news_list /*figure*/.subject {
    width: 95%;
    margin: auto;
    padding: 48px 0 49px;
  }
}
@media screen and (max-width: 959px) {
  .news_list /*figure*/.subject {
    padding: 48px 0 25px;
  }
}
@media screen and (min-width: 960px) and (max-width: 1439px) {
  .news_list /*figure*/.subject {
    /* width: 100%;
    max-width: 1303px;
    height: 504px; */
    width: 79%;
    /* aspect-ratio: 1303/504; */
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    margin-left: auto;
    margin-right: 0;
    padding: 48px 0 49px;
  }
}
@media screen and (min-width: 1440px) {
  .news_list /*figure*/.subject {
    /* width: 100%;
    max-width: 1303px;
    height: 504px; */
    width: 87.45%;
    /* aspect-ratio: 1303/504; */
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    margin-left: auto;
    margin-right: 0;
    padding: 48px 0 49px;
  }
}
.news_list .subject::before,
.news_list .subject::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  z-index: -1;
  transition: width 0.3s, height 0.3s, box-shadow 0.3s;
}
.news_list .subject::before {
  width: calc(100% - 70px);
  height: 100%;
  box-shadow: 0 0 0 1px #B2B2B2;
}
.news_list .subject::after {
  height: calc(100% - 70px);
  width: 100%;
  box-shadow: 0 0 0 1px #B2B2B2;
}
.news_list a:hover .subject::before,
.news_list a:hover .subject::after,
.news_list a:focus .subject::before,
.news_list a:focus .subject::after {
  width: 100%;
  height: 100%;
  box-shadow: 0 0 0 1px #111111;
}

.news_list .subject .img {
  position: relative;
  overflow: hidden;
  justify-content: center;
  align-items: center;
  border: 1px solid #FFFFFF;
  border-radius: 10px;
  transition: box-shadow 0.3s;
}
@media screen and (max-width: 959px) {
  .news_list .subject .img {
    width: 60%;
    aspect-ratio: 872/450;
    display: flex;
    margin-left: auto;
    margin-top: -90px;
    margin-bottom: -1.5em;
    margin-right: -2.5%;
  }
}
@media screen and (min-width: 960px) and (max-width: 1439px) {
  .news_list .subject .img {
    /* width: 872px;
    height: 407px;*/

    width: 60%;
    aspect-ratio: 872/507;
    display: inline-flex;
    margin-left: -187px;
  }
}
@media screen and (min-width: 1440px) {
  .news_list .subject .img {
    width: calc(100% - 618px + 187px);
    aspect-ratio: 872/408;
    display: inline-flex;
    margin-left: -187px;
  }
}
.news_list .subject .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.news_list a:hover .img,
.news_list a:focus .img {
  box-shadow: 0px 20px 20px rgba(0, 0, 0, 0.16);
}
.news_list .img img {
  width: 100%;
  height: auto;
  position: absolute;
}
.news_list figcaption {
  /* width: calc(100% - 870px + 187px); */

  width: 100%;
  font-weight: 500;
  line-height: 1.7;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  background-image: url('../images/arrow_forList.svg');
  background-repeat: no-repeat;
  background-position: center 90%;
}
.news_list a:hover .figcaption,
.news_list a:focus .figcaption {
  text-decoration: underline;
}
.news_list figcaption > div {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}
.news_list .date {
  color: #9193A8;
  text-decoration: none;
  margin-bottom: 20px;
}

@media screen and (max-width: 959px) {
  .news_list figcaption {
    padding: 0 1.5rem 2em 1.5rem;
  }
}
@media screen and (min-width: 425px) and (max-width: 767px) {
  .news_list .date,
  .news_list figcaption {
    font-size: 1.25rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .news_list .date,
  .news_list figcaption {
    font-size: 1.625rem;
  }
}
@media screen and (min-width: 960px) and (max-width: 1439px) {
  .news_list .date,
  .news_list figcaption {
    font-size: 1.75rem;
  }
  .news_list figcaption {
    width: 60%;
    padding: 0 4rem 2em 3rem;
  }
}
@media screen and (min-width: 1440px) {
  .news_list .date,
  .news_list figcaption {
    font-size: 1.875rem;
  }
  .news_list figcaption {
    max-width: 618px;
    padding: 0 69px 0 43px;
  }
}



/* 首頁 */
.news_wrapper,
.work_wrapper,
.form_wrapper,
.case_wrapper {
  box-sizing: border-box;
}
.news_wrapper {
  padding-top: 2em;
  padding-bottom: 0;
}
@media screen and (max-width: 959px) {
  .news_wrapper,
  .case_wrapper,
  .form_contain {
    padding-left: 25px;
    padding-right: 25px;
  }
  .case_wrapper {
    padding-top: 22px;
    padding-bottom: 37px;
  }
  .form_contain {
    padding-bottom: 25px;
  }
  .form_wrapper {
    width: calc(100% - (25px * 2));
    margin: 22px auto 37px;
  }
}
@media screen and (min-width: 960px) and (max-width: 1279px) {
  .news_wrapper,
  .case_wrapper,
  .form_contain {
    padding-left: 55px;
    padding-right: 55px;
  }
  .case_wrapper {
    padding-top: 43px;
    padding-bottom: 74px;
  }
  .form_contain {
    padding-bottom: 51px;
  }
  .form_wrapper {
    width: calc(100% - (55px * 2));
    margin: 43px auto 74px;
  }
}
@media screen and (min-width: 1280px) {
  .news_wrapper,
  .case_wrapper,
  .form_contain {
    padding-left: 111px;
    padding-right: 111px;
  }
  .case_wrapper {
    padding-top: 86px;
    padding-bottom: 148px;
  }
  .form_contain {
    padding-bottom: 102px;
  }
  .form_wrapper {
    width: calc(100% - (111px * 2));
    margin: 86px auto 148px;
  }
}

.home_title {
  color: #1e1e1e;
  /* font-size: clamp(1.75rem, 3vw, 2.6875rem); */
  position: relative;
}
.home_title.news::after,
.home_title.work::before,
.home_title.contactUs::before {
  color: transparent;
  font-family: 'Times New Roman';
  -webkit-text-stroke: 1px #E8E8E8;
  line-height: 1;
}
.home_title.news::after {
  content: 'News';
}
.home_title.work::before {
  content: 'Work';
}
.home_title.contactUs::before {
  content: 'Contact';
  display: block;
  position: relative;
  z-index: -1;
  margin-bottom: -0.35em;
}
.home_title.contactUs {
  margin-bottom: 1em;
}
@media screen and (max-width: 959px) {
  .home_title {
    font-size: min(6.5vw, 1.75rem);
  }
  .home_title.news::after,
  .home_title.work::before,
  .home_title.contactUs::before {
    font-size: 2.907em;
  }
  .home_title.news::after,
  .home_title.contactUs::after {
    margin-left: 0.125em;
  }
  .home_title.work::before {
    margin-left: 0;
    margin-right: 0.25em;
  }
}
@media screen and (min-width: 960px) {
  .home_title {
    font-size: 2.6875rem;
  }
  .home_title.news::after,
  .home_title.work::before,
  .home_title.contactUs::before {
    font-size: 3.907em;
  }
  .home_title.news::after {
    margin-left: 31px;
  }
  .home_title.work::before {
    margin-left: -40px;
    margin-right: 44px;
  }
}
@media screen and (min-width: 960px) {
  .section {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
  }
}
.section.news {
  padding-top: 36px;
}
.section.news {
  /* margin-bottom: 115px; */
  margin-bottom: 6vw;
}


/* FB粉專 */
.fb_page, .lastest_wrapper {
  box-sizing: border-box;
}

@media screen and (max-width: 460px) {
  .fb_page {
    display: none;
  }
  .fb_mobile {
    width: 100%;
    text-align: center;
    margin: 0 0 3em;
  }
}
@media screen and (min-width: 461px) {
  .fb_mobile {
    display: none;
  }
  .fb_page {
    width: 400px;
    margin: 0 auto 3em;
  }
  .fb_iframe_widget {
    width: 100% !important;
    text-align: center;
  }
}
@media screen and (max-width: 959px) {
  .lastest_wrapper {
    width: 100%;
  }
}
@media screen and (min-width: 960px) {
  .fb_iframe_widget {
    vertical-align: top;
  }
  .lastest_wrapper {
    width: calc(100% - 400px);
  }
}
@media screen and (min-width: 960px) and (max-width: 1279px) {
  .lastest_wrapper {
    padding: 0 0 0 20px;
  }
}
@media screen and (min-width: 1280px) and (max-width: 1439px) {
  .lastest_wrapper {
    padding: 0 0 0 40px;
  }
}
@media screen and (min-width: 1440px) {
  .lastest_wrapper {
    padding: 0 0 0 60px;
  }
}
.lastest_list {
  margin-bottom: 31px;
}
.lastest_list a,
.lastest_list figure {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
}
.lastest_list a {
  background-color: #ffffff;
  border-top: 0;
  border-right: 1px solid #B2B2B2;
  border-bottom: 1px solid #B2B2B2;
  margin-bottom: 3px;
}
.lastest_list a:first-of-type {
  border-top: 1px solid #B2B2B2;
}
.lastest_list .date,
.lastest_list figcaption {
  display: flex;
  align-items: center;
}
.lastest_list .date {
  color: #1e1e1e;
  /* font-family: 'Futura PT'; */
  font-family: 'Jost', sans-serif;
  font-weight: 500;
  font-size: clamp(1.25rem, 1.5vw, 1.5rem);
  justify-content: center;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 959px) {
  .lastest_list .date {
    width: 110px;
  }
  .lastest_list figure {
    width: calc(100% - 110px);
  }
}
@media screen and (max-width: 424px) {
  .lastest_list a {
    flex-wrap: wrap;
    flex-direction: column;
    margin-bottom: 5px;
  }
  .lastest_list figure {
    border-left: 1px solid #B2B2B2;
    margin-top: 5px;
    width: 100%;
  }
}
@media screen and (min-width: 425px) {
  .lastest_list a,
  .lastest_list figure {
    flex-wrap: nowrap;
  }
}
@media screen and (min-width: 960px) and (max-width: 1279px) {
  .lastest_list .date {
    width: 110px;
  }
  .lastest_list figure {
    width: calc(100% - 110px);
  }
}
@media screen and (min-width: 1280px) {
  .lastest_list .date {
    width: 169px;
  }
  .lastest_list figure {
    width: calc(100% - 169px);
  }
}
.lastest_list .date::before {
  content: '';
  position: absolute;
  top: -1px;
  left: -5px;
  z-index: -1;
  width: 5px;
  height: calc(100% + 2px);
  border-radius: 5px;
  background-color: #21BA45;
  transition: width 0.3s;
}
.lastest_list .date::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 0;
  z-index: -2;
  height: calc(100% - 20px);
  border-right: 1px solid #E8E8E8;
}
.lastest_list a:hover .date,
.lastest_list a:focus .date {
  color: #FFFFFF;
}
.lastest_list a:hover .date::before,
.lastest_list a:focus .date::before {
  width: calc(100% + 10px);
}

.lastest_list figcaption {
  color: #1E1E1E;
  font-size: clamp(1.125rem, 1.75vw, 1.25rem);
  font-weight: 500;
  width: max(calc(100% - 78px - 5vw), calc(100% - 78px - 50px));
  line-height: 1.5;
  padding-right: min(2vw, 28px);
  box-sizing: border-box;
  justify-content: flex-start;
  align-items: center;
}
.lastest_list figcaption div {
  overflow : hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    height: 3em; /* for IE */
  }
}

.lastest_list .img {
  width: 78px;
  height: 78px;
  border-radius: 78px;
  overflow: hidden;
  margin: 10px min(2.5vw, 25px);
}
.lastest_list .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.lastest_list a:hover figcaption,
.lastest_list a:focus figcaption {
  text-decoration: underline;
}


/* 精選作品 */
.work_wrapper {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  position: relative;
  background-color: #F5F5F5;
}
@media screen and (max-width: 959px) {
  .work_wrapper {
    flex-direction: column;
  }

}
.work.home_title,
.work_subtitle {
  position: relative;
  z-index: 2;
}
.work.home_title {
  margin-top: 3vw;
}
@media screen and (max-width: 959px) {
  .work.home_title {
    margin-left: 4.79167vw;
  }
}
@media screen and (min-width: 960px) and (max-width: 1279px) {
  .work.home_title {
    margin-left: -3.5em;
  }
}
.work_subtitle {
  color: #1E1118;
  font-weight: 500;
  box-sizing: border-box;
}
.work_contain {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding-bottom: 50px;
  box-sizing: border-box;
  position: relative;
}
@media screen and (max-width: 959px) {
  .work_img {
    width: 100%;
    position: relative;
  }
  .work_img::before {
    content: '';
    width: 100%;
    height: 50%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    background-color: #FCFCFC;
  }
  .work_img img {
    width: 75%;
    position: relative;
    z-index: 2;
  }
  .work_img + div {
    width: 100%;
    padding: 1.5em 8%;
    box-sizing: border-box;
  }
}
@media screen and (min-width: 960px) {
  .work_img,
  .work_img + div {
    width: 50%;
  }
  .work_img + div {
    position: relative;
  }
  .work_img + div::before {
    content: '';
    width: 100%;
    height: 50%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    background-color: #FCFCFC;
  }
}


.work_text {
  box-sizing: border-box;
  display: flex;
}
.work_text .readMore {
  margin-top: auto;
}
@media screen and (max-width: 1279px) {
  .work_subtitle {
    font-size: 1.5rem;
    margin-top: 2.41667vw;
    padding-left: 4.79167vw;
  }
  .work_contain {
    padding-right: 6.5vw;
  }
  .work_text {
    padding: 16px 0 5vw 4.79167vw;
  }
}
@media screen and (min-width: 1280px) {
  .work_subtitle {
    font-size: 1.875rem;
    margin-top: 5.12vw;
    padding-left: 9.79167vw;
  }
  .work_contain {
    padding-right: 13.011vw;
    /* background-color: #f00; */
  }
  .work_text {
    padding: 1vw 0 11vw 9.79167vw;
  }
}


/* 全自動靜態網頁 實績案例 */
.case_wrapper {
  background-color: #F5F5F5;
  box-sizing: border-box;
}
.case_wrapper h2 {
  text-align: center;
  font-size: 1.875rem;
}
.case_title {
  font-size: 1.35em;
  padding: 0 0.25em;
}
.case_wrapper h2 > span {
  display: inline-block;
}
.case_wrapper h2 span span {
  color: #21BA45;
}

@media screen and (max-width: 599px) {
  .case_wrapper h2 {
    font-size: 1.125rem;
  }
}
.case_wrapper .row {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
}
.case_wrapper .row,
.case_wrapper .row > .column {

  box-sizing: border-box;
}
.case_wrapper .row:after {
  content: "";
  display: table;
  clear: both;
}
.case_wrapper .column {
  float: left;
}

@media screen and (max-width: 1279px) {
  .case_wrapper .row {
    margin: 23px 0;
  }
  .case_wrapper .row,
  .case_wrapper .row > .column {
    padding: 0;
  }
  .case_wrapper .column {
    width: 100%;
    max-width: 600px;
    margin: 23px auto;
  }
}
@media screen and (min-width: 1280px) {
  .case_wrapper .row {
    margin: 23px -44px;
  }
  .case_wrapper .row,
  .case_wrapper .row > .column {
    padding: 0 22px;
  }
  .case_wrapper .column {
    width: calc(100% / 3);
  }
}

.figure {
  background-color: rgba(255, 255, 255, 0.6);
  padding: 30px 0;
  border-radius: 10px;
  border: 1px solid #FFFFFF;
  box-shadow: 0px 20px 30px rgba(0, 0, 0, 0.1);
}
.case_wrapper .embed_container {
  padding-bottom: 64%;
}
.case_wrapper figcaption {
  margin-top: 35px;
  text-align: center;
}
.case_wrapper .title {
  font-size: 1.5rem;
  font-weight: 500;
  margin-bottom: 15px;
}
.case_wrapper .desc {
  font-size: 1.125rem;
}

/* 首頁主視覺輪播 progress bar */
.home .banner {
  padding-top: 4px;
}
.slick-dots {
  top: 0;
  left: 0;
  bottom: auto;
}
.slick-dots li {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  height: 4px;
  width: 100%;
  margin: 0;
  background-color: transparent;
}

.slick-dots li.slick-active::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 0%;
  animation-name: progress;
  animation-duration: 5s;
  animation-iteration-count: 1;
  animation-timing-function: ease-in-out;
  animation-fill-mode: forwards;
  background-color: #8EC40E;
}
.banner:hover .slick-dots li::before,
.banner:focus .slick-dots li::before {
  animation-play-state: paused;
}

@keyframes progress {
  0% {
    width: 0%;
  }
  100% {
    width: 100%;
  }
}



/* 滾動後 縮小 + 黏著 */
@media screen and (min-width: 1280px) {
  .scale_box {
    padding-bottom: 9.6051vh;
    transform: scale(1);
    transform-origin: left bottom;
    transition: transform 0.5s;    position: sticky;
    z-index: 10;
  }
  .scale_box + .container {
    padding-top: 0;
  }
  .scale_box + .container .article_container {
    width: calc((100% / 3 ) * 2);
  }
  .scale {
    transform: scale(0.3);
  }
  .scale .main_title,
  .scale .sub_title {
    transform: scale(1.85);
    transform-origin: left top;
  }
}
@media screen and (min-width: 1280px) and (max-width: 1439px) {
  .scale_box {
    top: -40vh;
  }
}
@media screen and (min-width: 1440px) {
  .scale_box {
    top: -50vh;
  }
}

/* 首頁聯絡我們表單 */
.form_wrapper {
  padding: 5%;
  background-color: rgba(0,0,0,0.09);
}
@media screen and (max-width: 499px) {
  .form_wrapper {
    border-radius: 50px 5px 50px 5px;
  }
}
@media screen and (min-width: 500px) and (max-width: 959px) {
  .form_wrapper {
    border-radius: 100px 10px 100px 10px;
  }
}
@media screen and (min-width: 960px) {
  .form_wrapper {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    border-radius: 150px 15px 150px 15px;
  }
  .form_wrapper .contact_detail {
    width: 45%;
  }
  .form_wrapper form {
    width: 55%;
  }
}
.form_wrapper .contact_detail {
  padding-right: 2em;
  box-sizing: border-box;
}
.form_wrapper .fieldset {
  padding: 0.5em 0;
}
.form_wrapper label {
  display: block;
}
.form_wrapper input,
.form_wrapper textarea {
  width: 100%;
}
@media screen and (min-width: 500px) {
  .two_col {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .form_wrapper .short_input {
    width: calc(50% - 0.25em);
  }
}
.form_wrapper .btn_wrapper {
  padding: 1.5em 0 2em;
}
.contact_detail span {
  display: inline-block;
}