@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100..900&display=swap');

@font-face {
  font-family: Manrope;
  font-display: swap;
  src: url(../font/Manrope-Medium.ttf);
  unicode-range: U+0030-007A;
}

@font-face {
  font-family: Manrope;
  font-display: swap;
  src: url(../font/Manrope-ExtraLight.ttf);
  font-weight: 100;
  unicode-range: U+0020-007A;
}

@font-face {
  font-family: Manrope;
  font-display: swap;
  src: url(../font/Manrope-Light.ttf);
  font-weight: 200;
  unicode-range: U+0020-007A;
}

@font-face {
  font-family: Manrope;
  font-display: swap;
  src: url(../font/Manrope-Regular.otf);
  font-weight: 400;
  unicode-range: U+0020-007A;
}

@font-face {
  font-family: Manrope;
  font-display: swap;
  src: url(../font/Manrope-Medium.ttf);
  font-weight: 500;
  unicode-range: U+0020-007A;
}

@font-face {
  font-family: Manrope;
  font-display: swap;
  src: url(../font/Manrope-Bold.ttf);
  font-weight: 600;
  unicode-range: U+0020-007A;
}

@font-face {
    font-family: Manrope;
    font-display: swap;
    src: url(../font/Manrope-Bold.ttf);
   font-weight: 500;
    unicode-range: U+0020-007A;
  }

@font-face {
  font-family: Manrope;
  font-display: swap;
  src: url(../font/Manrope-ExtraBold.ttf);
  font-weight: 900;
  unicode-range: U+0020-007A;
}

@font-face {
    font-family: JasonHandwriting5;
    font-display: swap;
    src: url(../font/JasonHandwriting5.ttf);
    unicode-range: U+3400-4DBF, U+4E00-9FFF, U+F900-FAFF, U+3000, U+FE30-FE4F, U+3001-303F, U+FF00-FFEF ;
}

@font-face {
    font-family: ChocolateClassicalSans;
    font-display: swap;
    src: url(../font/ChocolateClassicalSans.otf);
    unicode-range: U+3400-4DBF, U+4E00-9FFF, U+F900-FAFF, U+3000, U+FE30-FE4F, U+3001-303F, U+FF00-FFEF ;
}

/*@font-face {
    font-family: NotoSansTC;
    font-display: swap;
    src: url(../font/NotoSansTC-Medium.otf);
    unicode-range: U+3400-4DBF, U+4E00-9FFF, U+F900-FAFF, U+3000, U+FE30-FE4F, U+3001-303F, U+FF00-FFEF ;
}

@font-face {
    font-family: NotoSansTC;
    font-display: swap;
    src: url(../font/NotoSansTC-Thin.otf);
    font-weight: 100;
	unicode-range: U+3400-4DBF, U+4E00-9FFF, U+F900-FAFF, U+3000, U+FE30-FE4F, U+3001-303F, U+FF00-FFEF ;
}

@font-face {
    font-family: NotoSansTC;
    font-display: swap;
    src: url(../font/NotoSansTC-Light.otf);
    font-weight: 200;
	unicode-range: U+3400-4DBF, U+4E00-9FFF, U+F900-FAFF, U+3000, U+FE30-FE4F, U+3001-303F, U+FF00-FFEF ;
}

@font-face {
    font-family: NotoSansTC;
    font-display: swap;
    src: url(../font/NotoSansTC-Regular.otf);
    font-weight: 400;
	unicode-range: U+3400-4DBF, U+4E00-9FFF, U+F900-FAFF, U+3000, U+FE30-FE4F, U+3001-303F, U+FF00-FFEF ;
}

@font-face {
    font-family: NotoSansTC;
    font-display: swap;
    src: url(../font/NotoSansTC-Medium.otf);
    font-weight: 500;
	unicode-range: U+3400-4DBF, U+4E00-9FFF, U+F900-FAFF, U+3000, U+FE30-FE4F, U+3001-303F, U+FF00-FFEF ;
}

@font-face {
    font-family: NotoSansTC;
    font-display: swap;
    src: url(../font/NotoSansTC-Bold.otf);
    font-weight: 600;
	unicode-range: U+3400-4DBF, U+4E00-9FFF, U+F900-FAFF, U+3000, U+FE30-FE4F, U+3001-303F, U+FF00-FFEF ;
}

@font-face {
    font-family: NotoSansTC;
    font-display: swap;
    src: url(../font/NotoSansTC-Bold.otf);
   font-weight: 500;
	unicode-range: U+3400-4DBF, U+4E00-9FFF, U+F900-FAFF, U+3000, U+FE30-FE4F, U+3001-303F, U+FF00-FFEF ;
}

@font-face {
    font-family: NotoSansTC;
    font-display: swap;
    src: url(../font/NotoSansTC-Black.otf);
    font-weight: 900;
	unicode-range: U+3400-4DBF, U+4E00-9FFF, U+F900-FAFF, U+3000, U+FE30-FE4F, U+3001-303F, U+FF00-FFEF ;
}*/

.header-o .contact-button a, 
.button-sm, 
.button-big, 
.button-sm::before, 
.button-big::before, 
.contact .contact-form .btn, 
.contact .google-map .google-map-btn{
    -webkit-transition: all .3s ease 0s;
    transition: all .3s ease 0s;
}


html{
	font-size: 10px;
}


body{
    height: 100%;
    max-height: 100%;
    min-width: 320px;
    background-color: #f6f6f6;
    font-family: Manrope, 'Noto Sans TC';
    font-size: 1.6rem;
}

body::before {
	content: "";
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgb(0 0 0 / 50%);
    backdrop-filter: blur(10px);
    position: fixed;
    z-index: -10;
    opacity: 0;
    transition: opacity 375ms ease-out;
    -webkit-transition: opacity 375ms ease-out;
}

a{
	color: #000;
	text-decoration: none;
}

.header{
    width: 100%;
	height: 80px;
    background: #fff;
    left: 0;
    top: 0;
    position: absolute;
    z-index: 999;
}

.header.fixed{
    /*box-shadow: 0px 0px 10px 0px rgb(0 0 0 / 30%);*/
    position: fixed;
}

.header .header-o{
    display: flex;
    max-width: 1320px;
    height: 100%;
    padding: 0 20px;
    margin: 0 auto;
}

.header .header-o .logo{
    display: flex;
    width: 100%;
    max-width: 260px;
    justify-content: center;
    align-items: center;
}

.header .header-o .logo img{
	width: 100%;
}

.header .header-o nav{
    width: 100%;
    height: 100%;
}

.header .header-o nav>ul{
    display: flex;
    width: 100%;
    height: 100%;    
    justify-content: flex-end;
    align-items: center;
    list-style-type: none;
    padding: 0;
    margin: 0;
    position: relative;
}

.header-o nav>ul>li{
	display: flex;
    height: 100%;
    padding: 0px 15px;
}


.header-o nav>ul>li>a{
	display: flex;
    color: #000;
    padding: 0 10px;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}

.header-o nav>ul>li>a:hover{
	color: #ffcd4d;
}

.header-o nav>ul>li>ul{
	display: none;
    flex-direction: column;
    background: #fff;
    list-style-type: none;
    padding: 0;
    box-shadow: 0px 0px 20px 0px rgb(0 0 0 / 15%);
    border-radius: 10px;
    width: 100%;
    max-width: 215px;
	top: 70px;
    position: absolute;
}

.header-o nav>ul>li:hover>ul{
	display: flex;
}

.header-o nav>ul>li>ul>li{
    margin: 8px;
    border-radius: 8px;
    overflow: hidden;
}

.header-o nav>ul>li>ul>li>a{
    display: flex;
    width: 100%;
    padding: 10px 10px;
    color: #000;
    text-decoration: none;
}

.header-o nav>ul>li>ul>li>a:hover{
    background: #ffcd4d;
}

.header-o .contact-button{
    background: #ffcd4d;
    border-radius: 50px;
    padding: 10px 25px;
}

.header-o a:hover .contact-button{
    background: #000;
   	color: #fff;
    -webkit-transition: all .3s ease 0s;
    transition: all .3s ease 0s;
}

.header-o .mobile-nav{
	display: none;
	width: 100%;
    padding: 0;
    justify-content: flex-end;
    align-items: center;
}

.header-o .mobile-nav .mobile-button{
	display: flex;
	justify-content: center;
	align-items: center;
    width: 45px;
    height: 45px;
    line-height: 45px;
	text-align: center;
    background: #ffcd4d;
    position: relative;
    font-family: bootstrap-icons !important;
    font-size: 2.8rem;
    border-radius: 5px;
}

.header-o .mobile-nav .mobile-button::before{
	display: inline-block;
    font-family: bootstrap-icons !important;
    font-style: normal;
    font-weight: normal !important;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    vertical-align: -0.125em;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.header-o .mobile-nav .mobile-button::before{
	content: "\F479";
}

.header-o .mobile-nav .mobile-button.open::before{
	content: "\F659";
}

/*共通*/
.jarallax{
	position: relative;
}

.jarallax .jarallax-img{
   background-repeat: no-repeat;
   background-size: cover;
   background-position: 50%;
   /*width: 100% !important;
   height: 100% !important;*/
    position: absolute;
}

.jarallax::before {
	content: "";
    width: 100%;
    height: 100%;
    background: rgb(0 0 0 / 30%);
    top: 0;
    left: 0;
    position: absolute;
    z-index: -1;
	backdrop-filter: grayscale(0.3);
}

.signboard-box{
    display: flex;
    justify-content: center;
    align-items: center;
    height: 400px;
    padding-top: 80px;
    background: #efefef;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 50%;
	position: relative;
}

.signboard-box .title{
    color: #fff;
    font-weight: 500;
    font-size: 6rem;
    filter: drop-shadow(0 0 20px #000);
}

.breadcrumb-box{
    display: flex;
    align-items: center;
    padding-top: 110px;
    background: #fff;
}

 .contact-object{
	display: flex;
	min-height: 377px;
    padding: 90px 0;
    margin: 5% 0 0 0;
    flex-direction: column;
    position: relative;
}

.contact-object .jarallax-img{
    background-image: url(../img/web/index/decoration01.jpg);    
    filter: grayscale(45%);
}

.contact-object::before {
	content: "";
    width: 100%;
    height: 100%;
    background: rgb(0 0 0 / 55%);
    top: 0;
    left: 0;
    position: absolute;
    z-index: 0;
}

.contact-object .contact-title{
    font-size: 4rem;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    margin: 20px;
    flex: 1;
    color: #fff;
    position: relative;
    z-index: 1;
    word-break: break-all;
}

 .contact-object .contact-button{
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 20px;
    flex: 1;
    position: relative;
    z-index: 1;
}

.contact-object .contact-button a{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 340px;
}

.joinus-object{
    display: flex;
	min-height: 377px;
    margin: 5% 0 0 0;
    padding: 90px 0px;
    flex-direction: column;
    position: relative;
    background: #efefef;
}

.joinus-object .background{
    display: flex;
    width: 100%;
    height: 100%;
    flex-direction: row;
    overflow: hidden;
	top: 0;
    left: 0;
    position: absolute;
    z-index: 0;
}

.joinus-object .background .background-o{
	display: flex;
    flex: 1 100%;
    flex-shrink: 0;
    flex-direction: row;
    align-items: center;
    justify-content: space-around;
    animation: scroll-x 30s linear infinite;
}

@keyframes scroll-x {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}

@keyframes scroll-x-right {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(100%);
  }
}

.joinus-object .background .background-o .text{
	font-size: 8rem;
   font-weight: 500;
    color: #cdcdcd;
    white-space: nowrap;
    margin: 0 0 0 120px;
}

.joinus-object .description{
    display: flex;
    justify-content: center;
    align-items: flex-end;
    margin: 20px;
    font-size: 4rem;
    text-align: center;
    flex: 1;
    color: #000;
    position: relative;
    z-index: 1;
    word-break: break-all;
}

.joinus-object .button{
	display: flex;
    justify-content: center;
    align-items: center;
    margin: 20px;
    flex: 1;
    position: relative;
    z-index: 1;
}

.joinus-object .button a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 340px;
}

.form-control {
    background-color: #fff !important;
    border-radius: 5px !important;
    line-height: 45px !important;
    border: 0;
    font-size: 1.8rem;
}

.form-control:focus {
    box-shadow: 0 0 0 0.25rem #ffcd4d;
}

.button-sm{
    background: #ffcd4d;
    text-decoration: none;
    color: #000;
    border-radius: 10px;
    font-size: 1.5rem;
    padding: 12px 45px 12px 15px;
    position: relative;
}

.button-sm::before {
    content: "";
    width: 35px;
    height: 100%;
    background-image: url(../img/web/a13.svg);
    background-repeat: no-repeat;
    background-size: 50%;
    background-position: 50%;
    top: 0;
    right: 8px;
    position: absolute;
}

.service .service-item .item-box:hover .button-sm,
.button-sm:hover {
    background: #000;
    color: #fff;
}

.service .service-item .item-box:hover .button-sm::before,
.button-sm:hover::before {
    background-image: url(../img/web/a13w.svg);
}

.button-big{
    background: #ffcd4d;
    text-decoration: none;
    color: #000;
    border-radius: 10px;
    font-size: 1.8rem;
    padding: 15px 60px 15px 25px;
    position: relative;
}

.button-big::before {
    content: "";
    width: 50px;
    height: 100%;
    background-image: url(../img/web/a13.svg);
    background-repeat: no-repeat;
    background-size: 50%;
    background-position: 50%;
    top: 0;
    right: 10px;
    position: absolute;
}

.button-big:hover {
    background: #000;
    color: #fff;
}

.button-big:hover::before {
    background-image: url(../img/web/a13w.svg);
}

/*首頁*/
.index .img-banner{
    display: flex;
    width: 100%;
    /*height: calc(99vh - 50px);*/
    height: 780px;
    min-height: 400px;
    align-items: center;
    padding-top: 80px;
    position: relative;
    background: #ebebeb;
}

.index .img-banner .jarallax-img{

}

/*.index .img-banner::before{
	background: transparent !important;
	backdrop-filter: none !important;
}*/

.index .img-banner .title{
	margin: -180px 0 0 100px;
    display: flex;
    flex-direction: column;
}

.index .img-banner .title span{
	font-size: 8rem;
    color: #fff;
    font-family: JasonHandwriting5;
    position: relative;
}

.index .img-banner .title span::before {
    content: attr(data-storke);
    position: absolute;
    z-index: -1;
    /*-webkit-text-stroke: 0.5rem #fff;
    text-stroke: 0.5rem #fff;*/
    filter: drop-shadow(0 0 5px rgb(0 0 0 / 80%));
}



.index .index-about{
    padding: 160px 0 80px 0;
    margin: 0;
}

.index .index-about .about-header{
    display: flex;
    flex-direction: column;
}

.index .index-about .about-header .title{
	font-size: 5rem;
    font-weight: 400;
}

.index .index-about .about-header .subtitle{
    font-size: 2.5rem;
    font-weight: 500;
    color: #dc0042;
    margin: 0 0 -10px 3px;
}

.index .index-about .about-header .description{
    margin: 20px 0;
    font-size: 1.8rem;
	line-height: 2;
    word-break: break-all;
}

.index .index-about .about-header .button {
    display: flex;
    margin: 20px 0;
}

.index .index-about .img {
	display: flex;
    justify-content: center;
}

.index .index-about .img .special {
    display: flex;
    justify-content: center;
    width: 100%;
    /*height: 500px;*/
    padding-bottom: 65%;
    margin: 10px 30px;
    position: relative;
    z-index: 1;
}

.index .index-about .img .special .img-o {
    display: flex;
    justify-content: center;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    position: absolute;
}

.index .index-about .img .special .img-o img {
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
    position: absolute;
    /*border-radius: 5px;
    box-shadow: 10px 10px 20px 0px rgb(0 0 0 / 15%);*/
}

.index .index-service{
    padding: 120px 0 120px 0;
    margin: 0;
}

.index .index-service .service-header{
    display: flex;
    flex-direction: column;
}

.index .index-service .service-header .title{
	font-size: 5rem;
    font-weight: 400;
}

.index .index-service .service-header .subtitle{
    font-size: 2.5rem;
    font-weight: 500;
    color: #dc0042;
    margin: 0 0 -10px 3px;
}

.index .index-service .service-header .description{
    margin: 20px 0;
    font-size: 1.8rem;
	line-height: 2;
    word-break: break-all;
}

.index .index-service .service-header .button {
    display: flex;
    margin: 20px 0;
}

.index .index-service .service-box{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    width: 100%;
    max-width: 720px;
    margin: 0;
    padding: 0;
    position: relative;
}

/*
.index .index-service .service-box::before {
    content: "";
    width: 100vw;
    max-width: 600px;
    height: 100vw;
    max-height: 600px;
    position: absolute;
    border-radius: 50%;
    border: 3px dashed #e2e2e2;
    z-index: -1;
}*/

.index .index-service .service-box>div{
	display: flex;
    justify-content: center;
}

.index .index-service .service-box>div .special {
    display: flex;
    justify-content: center;
    width: 100%;
	padding-bottom: 65%;
    margin: 10px 30px;
    position: relative;
    z-index: 1;
}

.index .index-service .service-box>div .special .img-o {
    display: flex;
    justify-content: center;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    position: absolute;
}

.index .index-service .service-box>div .special .img-o img {
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
    position: absolute;
}

.index .index-service .service-box .item-text{
    display: flex;
    justify-content: center;
    align-items: center;
    width: auto;
    font-size: 10em;
    font-weight: 500;
    position: absolute;
    z-index: -1;
    margin: 0;
    color: #e2e2e2;
}

.index .index-service .service-box .item-box{
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 23vw;
    max-width: 200px;
    padding: 10px;
    margin: 10px;
    position: relative;
    font-size: 40px;
}

.index .index-service .service-box .item-box .img-box{
    display: flex;
    width: 10vw;
    max-width: 160px;
    height: 10vw;
    max-height: 160px;
    margin: 0px;
    justify-content: center;
    align-items: center;
    position: relative;
    border-radius: 50%;
    background: #fff;
}

.index .index-service .service-box .item-box .img-box .img-o{
    display: flex;
    justify-content: center;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: 20px;
    position: absolute;
}

.index .index-service .service-box .item-box .img-box .img-o .img{
    width: 100%;
    max-width: 100%;
    height: 100%;
    max-height: 100%;
    position: absolute;
	background-repeat: no-repeat;
    background-position: 50%;
    background-size: contain;
}

.index .index-service .service-box .item-box .s01{
	background-image: url(../img/web/index/s01.svg);
}

.index .index-service .service-box .item-box .s02{
	background-image: url(../img/web/index/s02.svg);
}

.index .index-service .service-box .item-box .title{
	font-size: 0.4em;
   font-weight: 500;
    margin: 10px 0;
    text-align: center;
}

.index .index-completecase{
    padding: 80px 0 0 0;
    margin: 0;
}

.index .index-completecase .index-header{
	display: flex;
    flex-direction: column;
}

.index .index-completecase .index-header .title{
    font-size: 5rem;
    font-weight: 400;
}

.index .index-completecase .index-header .subtitle{
    font-size: 2.5rem;
    font-weight: 500;
    color: #dc0042;
    margin: 0 0 -10px 3px;
}

.index .index-completecase .index-header .description{
	margin: 20px 0;
    font-size: 1.8rem;
    line-height: 2;
    word-break: break-all;
}

.index .index-completecase .item-box{
    display: inline-flex !important;
	margin: 40px 0;
    position: relative;
}

.index .index-completecase .item-box .item-image {
    width: 600px;
    min-width: 600px;
    max-width: 600px;
    height: 500px;
    background: #fff;
    border-radius: 5px;
}

.index .index-completecase .item-box .item-title{
    left: -25%;
    bottom: 0;
    position: absolute;
}

.index .index-completecase .item-box .item-title .service-title{
    font-size: 5.5rem;
   font-weight: 500;
    color: #dc0042;
}

.index .index-completecase .item-box .item-title .case-title{
    font-size: 3.5rem;
}

.index .index-completecase .item-box .item-title .button {
    display: flex;
    margin: 20px 0 10px 0;
}

.index .index-completecase .slick-arrow{
    width: 80px;
    height: 80px;
	line-height: 80px;
	text-align: center;
    font-size: 5rem;
    color: #fff;
    background: #dc0042;
	border-radius: 10px;
    top: calc(50% - 40px);
    position: absolute;    
    z-index: 1;
    cursor: pointer;
}

.index .index-completecase .slick-prev{
	left: 16%;
    right: auto;
}

.index .index-completecase .slick-next{
	left: auto;
    right: 16%;
}

.index .index-completecase .slick-track{
	display: flex;
    flex-direction: row;
}

.index .index-completecase .slick-slide{
    margin: 0 120px;
}

.index .index-completecase .slick-dots{
	display: none !important;
    justify-content: center;
	list-style-type: none;
    padding: 0;
	margin: 5px 0;
}

.index .index-completecase .slick-dots li{
	margin: 10px;
}

.index .index-completecase .slick-dots .slick-active .dot{
    background: #dc0042;
}

.index .index-completecase .slick-dots li .dot{
	width: 12px;
    height: 12px;
    background: #a0a0a0;
    border-radius: 50%;
	cursor: pointer;
}

/*產品列表*/
.product .product-box{
	display: flex;
    margin: 70px 0px;
}

.product .product-box .item-box{
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 0;
    padding: 0;
    position: relative;
    border-radius: 5px;
}

.product .product-box .item-box:hover{
	box-shadow: 0 0 0 2px rgb(220 0 66);
    -webkit-transition: all .3s ease 0s;
    transition: all .3s ease 0s;
}

.product .product-box .item-box a{
	padding: 10% 3%;
    color: #000;
    text-decoration: none;
}

.product .product-box .item-box .item-image{
    width: 350px;
    height: 350px;
    /*background: #fff;*/
}

.product .product-box .item-box .item-subtitle{
    font-size: 1.8rem;
    color: rgb(220 0 66);
text-align: center;
}

.product .product-box .item-box .item-title{
	margin: 15px 0 0 0;
    font-size: 2.5rem;
   font-weight: 500;
text-align: center;
}


/*產品介紹*/
.product-introduction .product-itme-box{
    display: flex;
    flex-direction: row;
	margin: 70px 0px 120px 0px;
}

.product-introduction .product-itme-box .product-slick-box{
    display: flex;
    justify-content: center;
    align-items: flex-start;
}

.product-introduction .product-itme-box .product-slick-box .product-slick{
	width: 500px;
    height: 500px;
    position: relative;
}

.product-introduction .product-itme-box .product-slick-box .product-slick .slick-list{
    width: 500px;
    height: 500px;
	border-radius: 10px;
    overflow: hidden;
}

.product-introduction .product-itme-box .product-slick-box .product-slick .item-box{
	display: inline-flex !important;
	width: 500px !important;
    height: 500px;
    /*background: #fff;*/
    position: relative;
	justify-content: center;
    align-items: center;
}

.product-introduction .product-itme-box .product-slick-box .product-slick .item-box .item-image{
	width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
    position: absolute;
}

.product-introduction .product-itme-box .product-slick-box .product-slick .item-box .item-image .img{
	position: relative;
}

.product-introduction .product-itme-box .product-slick-box .product-slick .item-box .item-image .img img{
  	top: 0;
  	right: 0;
  	left: 0;
  	bottom: 0;
  	width: 100%;
  	height: 100%;
    position: absolute;
}

.product-introduction .product-itme-box .product-slick-box .product-slick .slick-dots{
	display: flex;
    justify-content: center;
	list-style-type: none;
    padding: 0;
	margin: 5px 0;
}

.product-introduction .product-itme-box .product-slick-box .product-slick .slick-dots li{
	margin: 10px;
}

.product-introduction .product-itme-box .product-slick-box .product-slick .slick-dots .slick-active .dot{
    background: #dc0042;
}

.product-introduction .product-itme-box .product-slick-box .product-slick .slick-dots li .dot{
	width: 12px;
    height: 12px;
    background: #a0a0a0;
    border-radius: 50%;
	cursor: pointer;
}

.product-introduction .product-itme-box .itme-header{
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    padding: 0 10px;
}

.product-introduction .product-itme-box .itme-header .title{
	font-size: 6.5rem;
}

.product-introduction .product-itme-box .itme-header .subtitle{
	font-size: 3rem;
    color: #dc0042;
   font-weight: 500;
}

.product-introduction .product-itme-description{
    padding: 80px 0px;
    margin: 0;
}

.product-introduction .product-itme-description .product-header .title{
    font-size: 4rem;
    font-weight: 500;
}

.product-introduction .product-itme-description .product-content{
    font-size: 1.8rem;
    line-height: 2;
    margin: 20px 0px 0px 0px;
    word-break: break-all;
}

.product-introduction .product-itme-description .product-content ul{
    list-style-type: none;
	padding: 0;
	margin:  0;
}

.product-introduction .product-itme-description .product-content li{
    display: flex;
    align-items: flex-start;
    padding: 0 0 0 40px;
    position: relative;
    flex-direction: column;
    line-height: 36px;
}

.product-introduction .product-itme-description .product-content li::before {
    content: "";
    width: 10px;
    height: 10px;
    background: #ffcd4d;
    top: 13px;
    left: 10px;
    border-radius: 50px;
    position: absolute;
    z-index: 1;
}

.product-introduction .product-itme-description .product-content li p{
    margin: 0;
    padding: 0;
}

.product-introduction .product-itme-specification {
    margin: 80px 0px 180px 0px;
}

.product-introduction .product-itme-specification .product-header .title{
    font-size: 4rem;
    font-weight: 500;
}

.product-introduction .product-itme-specification .product-content{
    margin: 20px 0 0 0;
}

.product-introduction .product-itme-specification .product-content ul{
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 1000px;
    list-style-type: none;
    padding: 40px;
    margin: 0;
    background: #fff;
    border-radius: 10px;
}

.product-introduction .product-itme-specification .product-content ul li{
    display: flex;
    flex: 1;
    min-height: 115px;
    padding: 20px 0 10px 0;
    border-bottom: 1px dashed #c2c2c2;
}

.product-introduction .product-itme-specification .product-content ul li .title{
	display: flex;
    flex: 1;
    font-size: 1.8rem;
    font-weight: 500;
}

.product-introduction .product-itme-specification .product-content ul li .content{
	display: flex;
    flex-direction: column;
    flex: 9;
    font-size: 1.8rem;
    color: #535353;
	padding: 0 10px;
}

/*聯絡我們*/
.contact{
	
}

.contact .contact-header{

}

.contact .contact-header .title {
	font-size: 5rem;
    font-weight: 400;
}

.contact .contact-header .description {
    font-size: 2.5rem;
    word-break: break-all;
}


.contact .contact-form{
    padding: 160px 0 80px 0;
    margin: 0;
}

.contact .contact-form #data-form{
	margin: 40px 0;
}

.contact .contact-form #data-form .form-label{
    font-size: 1.8rem;
}

.contact .contact-form .btn{
    width: 100%;
    height: 65px;
    margin: 0;
    border: 0;
    font-size: 1.8rem;
    border-radius: 10px;
    background: #000;
    color: #fff;
}

.contact .contact-form .btn:hover{
    background: #ffcd4d;
    color: #000;
}

.contact .container-info{
	padding: 80px 0 40px 0;
    margin: 0;
}

.contact .container-info .info{
    display: flex;
    flex-direction: row;
    padding: 10px 15px;
    margin: 12px 0;
    background: #fff;
    border-radius: 10px;
}

.contact .container-info .container-info-box{
    padding: 30px;
}

.contact .container-info .container-info-box .info .img{
	display: flex;
    width: 80px;
    height: 80px;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 50%;
}

.contact .container-info .container-info-box .info .a01{
	background-image: url(../img/web/contact/a01.svg);
    background-size: 250px;
}

.contact .container-info .container-info-box .info .a02{
	background-image: url(../img/web/contact/a02.svg);
    background-size: 250px;
}

.contact .container-info .container-info-box .info .a03{
	background-image: url(../img/web/contact/a03.svg);
    background-size: 250px;
}

.contact .container-info .container-info-box .info .a04{
	background-image: url(../img/web/contact/a04.svg);
    background-size: 280px;
}

.contact .container-info .container-info-box .info .a11{
	background-image: url(../img/web/contact/a11.svg);
    background-size: 350px;
}

.contact .container-info .container-info-box .info .box{
    display: flex;
    width: 100%;
    flex-direction: column;
    justify-content: center;
    margin: 0 20px;
}

.contact .container-info .container-info-box .info .title{
	font-size: 2rem;
}


.contact .container-info .container-info-box .info .text{
    font-size: 1.8rem;
    word-break: break-all;
}



.contact .google-map{
    display: flex;
    justify-content: center;
    align-items: flex-end;
    margin: 12px 0px;
    background: #fff;
    width: 100%;
    height: 500px;
    border-radius: 10px;
    position: relative;
}

.contact .google-map iframe{
    width: 100%;
    height: 100%;
    padding: 10px;
    top: 0;
    left: 0px;
    border-radius: 15px;
    overflow: hidden;
    position: absolute;
}

.contact .google-map .google-map-btn{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 340px;
    height: 55px;
    background: #000;
    text-decoration: none;
    color: #fff;
    border-radius: 10px;
    font-size: 1.8rem;
    margin: 10px 20px;
	top: -20px;
    position: relative;
    z-index: 0;
}

.contact .google-map .google-map-btn:hover{
    background: #ffcd4d;
    color: #000;
}

/*人才招聘*/
.recruit{
	
}

.recruit .recruit-header{
    padding: 180px 0 80px 0;
    margin: 0;
    text-align: center;
}

.recruit .recruit-header .title{
	font-size: 5.5rem;
    font-weight: 400;
}

.recruit .recruit-header .description {
	font-size: 3rem;
    word-break: break-all;
}

.recruit .recruit-box .box{
    display: flex;
    flex-direction: column;
	align-items: center;
    margin-bottom: 45px;
    position: relative;
}

.recruit .recruit-box .box .icon{
    display: flex;
    width: 120px;
    height: 120px;
    margin: 10px;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 50%;
}

.recruit .recruit-box .box .a05{
	background-image: url(../img/web/recruit/a05.svg);
    background-size: 80px;
}

.recruit .recruit-box .box .a06{
	background-image: url(../img/web/recruit/a06.svg);
    background-size: 80px;
}

.recruit .recruit-box .box .a07{
	background-image: url(../img/web/recruit/a07.svg);
    background-size: 80px;
}

.recruit .recruit-box .box .a08{
	background-image: url(../img/web/recruit/a08.svg);
    background-size: 85px;
}

.recruit .recruit-box .box .a09{
	background-image: url(../img/web/recruit/a09.svg);
    background-size: 80px;
}

.recruit .recruit-box .box .a10{
	background-image: url(../img/web/recruit/a10.svg);
    background-size: 100px;
}

.recruit .recruit-box .box .title{
    font-size: 1.8rem;
   font-weight: 500;
}

.recruit .recruit-box .box .description{
    color: #414141;
    font-size: 1.8rem;
    margin: 10px 0;
    text-align: center;
    word-break: break-all;
}

.recruit .benefits-box{
    margin: 0 0 40px 0;
}

.recruit .benefits-box .box{
    padding: 15px;
}

.recruit .benefits-box .box .box-o{
    display: flex;
    flex-direction: column;
    height: 100%;
	background: #fff;
    padding: 15px;
    border-radius: 10px;
}

.recruit .benefits-box .box .title{
    margin: 0 0 5px 0;
    font-weight: 500;
    font-size: 2.5rem;
}

.recruit .benefits-box .box .description{
    font-size: 1.8rem;
    line-height: 1.8;
    word-break: break-all;
}

.recruit .benefits-box .box .description ul{
    list-style-type: none;
    padding: 0;
    margin: 0px;
}

.recruit .benefits-box .box .description ul li{
    display: flex;
    align-items: flex-start;
    padding: 0 0 0 40px;
    position: relative;
    flex-direction: column;
    line-height: 36px;
}

.recruit .benefits-box .box .description ul li::before {
    content: "";
    width: 10px;
    height: 10px;
    background: #ffcd4d;
    top: 13px;
    left: 10px;
    border-radius: 50px;
    position: absolute;
    z-index: 1;
}

/*關於我們*/
.about {
	
}

.about .about-title {
	font-size: 5rem;
    font-weight: 400;
    margin: 0 0 120px 0;
}

.about  .about-subtitle{
    font-size: 2.5rem;
    font-weight: 500;
    color: #dc0042;
    margin: 0 0 -10px 3px;
}

.about-company{
	padding: 10% 0;
    position: relative;
    border-bottom: 3px solid #000;
}

.about-company .company-box{
    margin: 0 0 0 50px;
}

.about-company:last-child{
    border-bottom: 0px;
}

.about-company:last-child .company-box{
    margin: 0;
}

.about-company .company-box .bigfocus{
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-size: 4rem;
    padding: 0 10px;
    margin: 0px 0 120px 0;
   font-weight: 500;
}

.about-company .company-box .develop .itme{
    display: flex;
    flex-direction: column;    
    align-items: center;
}

.about-company .company-box .develop .itme .img{
    display: flex;
    width: 200px;
    height: 200px;
    border-radius: 30px;
    background: linear-gradient(145deg, #dddddd, #ffffff);
    box-shadow:  10px 10px 20px #bdbdbd, -10px -10px 20px #ffffff;
    position: relative;
}

.about-company .company-box .develop .itme .img::before{
    content: "";
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    z-index: 0;
    background-repeat: no-repeat;
    background-position: 50%;
}

/*.about-company .company-box .culture .itme .a14::before{
    background-image: url(../img/web/about/culture/a14.svg);
    background-size: 120px;
}

.about-company .company-box .culture .itme .a15::before{
    background-image: url(../img/web/about/culture/a15.svg);
    background-size: 120px;
}

.about-company .company-box .culture .itme .a16::before{
    background-image: url(../img/web/about/culture/a16.svg);
    background-size: 120px;
}*/

.about-company .company-box .develop .itme .a18::before{
    background-image: url(../img/web/about/develop/a18.svg);
    background-size: 120px;
}

.about-company .company-box .develop .itme .a19::before{
    background-image: url(../img/web/about/develop/a19.svg);
    background-size: 120px;
}

.about-company .company-box .develop .itme .a20::before{
    background-image: url(../img/web/about/develop/a20.svg);
    background-size: 120px;
}

.about-company .company-box .develop .itme .a21::before{
    background-image: url(../img/web/about/develop/a21.svg);
    background-size: 120px;
}

.about-company .company-box .develop .itme .title{
	font-size: 2.5rem;
   font-weight: 500;
    margin: 20px 0 10px 0;
}

.about-company .company-box .develop .itme .description{
    font-size: 1.8rem;
	line-height: 2;
	padding: 0 10px 15px 10px;
}

.about-company .company-box .history,
.about-company .company-box .partner{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 800px;
    height: 300px;
    padding: 0;
    margin: 0;
    position: relative;
    background-color: #000;
	background-repeat: no-repeat;
    background-size: cover;
    background-position: 50%;
    border-radius: 5px;
    box-shadow: 10px 10px 20px 0px rgb(0 0 0 / 15%);
    overflow: hidden;
}

.about-company .company-box .history::before, 
.about-company .company-box .partner::before{
    content: "";
    width: 100%;
    height: 100%;
    background: rgb(0 0 0 / 70%);
    top: 0;
    left: 0;
    position: absolute;
    z-index: 0;
}

.about-company .company-box .history{
	background-image: url(../img/web/about/decoration02.jpg);
}

.about-company .company-box .partner{
	background-image: url(../img/web/about/decoration03.jpg);
}

.about-company .company-box .history .button-title,
.about-company .company-box .partner .button-title{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-size: 5rem;
	position: relative;
}

.about-company .company-box a{
    text-decoration: none;
}

.about-company .company-box a .button-title{
	color: #fff;
}

.about-company .company-box .button-title::after {
	content: "";
    display: block;
    width: 70px;
    height: 70px;
    margin: 0px 0px -30px 0px;
    background-image: url(../img/web/a13.svg);
    background-repeat: no-repeat;
    background-size: 45%;
    background-position: 50%;
    background-color: #ffcd4d;
    border-radius: 50%;
}

.about-company .company-box a:hover .button-title::after {
    background-image: url(../img/web/a13w.svg);
    background-color: #000;
}

.about-company .company-box .text{
    font-size: 1.8rem;
    line-height: 2;
}

.about-company .company-box .text .focus{
	color: #dc0042;
}

.about-company .company-box .text .bold{
	font-weight: bold;
}

.about-company .company-box .img{
    display: flex;
    justify-content: center;
}

.about-company .company-box .img>img{
	width: 100%;
    max-width: 800px;
}

.about-company .company-box .img .special{
    width: 100%;
    height: 500px;
	margin: 10px 30px;
    position: relative;
    z-index: 1;
}

.about-company .company-box .img .special .img-o{
    display: flex;
    justify-content: center;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    position: absolute;
}

.about-company .company-box .img .special .img-o img{
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
    position: absolute;
    border-radius: 5px;
    box-shadow: 10px 10px 20px 0px rgb(0 0 0 / 15%);
}

.about-company .company-box .alliance{
    margin: 30px 0 0 0;
    opacity: 0.2;
}

.about-interlude{
	display: flex;
    justify-content: center;
    align-items: center;
    height: 600px;
    background: #f6f6f6;
    position: relative;
    margin: 5% 0 5% 0;
}


/*合作夥伴*/
.about-partner{
    margin: 8% 0 0 0;
}

.about-partner .partner-box{
    margin-top: 40px;
    margin-bottom: 40px;
}

.about-partner .partner-box .partner-title{
    font-size: 3.8rem;
    padding: 40px 20px 15px 20px;
}

.about-partner .partner-box .item{
	display: flex;
    justify-content: center;
    align-items: center;
	flex-direction: column;
    height: 200px;
}

.about-partner .partner-box .item a{
	text-align: center;
    color: #000;
    text-decoration: none;
}

.about-partner .partner-box .item img{
    width: 255px;
    height: 120px;
    background: #fff;
    overflow: hidden;
    border-radius: 5px;
    box-shadow: 10px 10px 20px 0px rgb(0 0 0 / 15%);
}

.about-partner .partner-box .item .title{
    font-size: 1.8rem;
    padding: 20px 10px;
}



/*歷史*/
.about-history{
	
}

.about-history .history-box{
    padding: 0;
}

.about-history .history-box:first-child{
       margin: 10% 0 0 0;
}

.about-history .history-box:last-child{
       margin: 0 0 10% 0;
}


.about-history .history-box:last-child div:first-child:is(.calendar)::before, 
.about-history .history-box:last-child div:last-child:is(.calendar)::before{
	content: none;
}

.about-history .history-box:last-child div:first-child:is(.calendar)::after, 
.about-history .history-box:last-child div:last-child:is(.calendar)::after{
    right: auto !important;
    left: calc(50% - 40px) !important;
}

.about-history .history-box:last-child div:first-child:is(.calendar),
.about-history .history-box:last-child div:last-child:is(.calendar){
    width: 100%;
    min-height: auto !important;
    padding: 90px 0 0 0 !important;
	order: 1;
}

.about-history .history-box:last-child div:first-child:is(.calendar) .title, 
.about-history .history-box:last-child div:last-child:is(.calendar) .title{
	text-align: center;
}

.about-history .history-box:last-child div:first-child:is(.calendar) .text, 
.about-history .history-box:last-child div:last-child:is(.calendar) .text{
	text-align: center;
	font-size: 2.5rem;
    padding: 5px 0;
}

.about-history .history-box:last-child .img{
	order: 2;
}

.about-history .history-box:last-child .img .special{
    max-width: 1000px;
    height: 500px;
    margin: 15px 0;
}

.about-history .history-box .img{
    display: flex;
    align-items: center;
    justify-content: center;
}

.about-history .history-box .img .special{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 500px;
    height: 300px;
    margin: 0;
    position: relative;
}

.about-history .history-box .img .special img{
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
    position: absolute;
    border-radius: 5px;
	box-shadow: 10px 10px 20px 0px rgb(0 0 0 / 15%);	
}


.about-history .history-box .calendar-subject{
	display: flex;
    justify-content: center;
    border-top: 1px dashed #000;
    margin: 60px 0 0 0;
    position: relative;
}

.about-history .history-box .calendar-subject .title{
    font-size: 3rem;
    padding: 20px 0;
}


.about-history .history-box div:first-child:is(.calendar){
	min-height: 500px;
    padding: 10px 150px 10px 30px;
    position: relative;
}

.about-history .history-box div:last-child:is(.calendar){
	min-height: 500px;
    padding: 10px 30px 10px 150px;
    position: relative;
}

.about-history .history-box div:first-child:is(.calendar)::before{
    right: -1px;
    left: auto !important;
}

.about-history .history-box .calendar::before {
	content: "";
    display: flex;
    width: 1px;
    height: 100%;
    border-right: 1px dashed #000;
    top: 0;
    left: 0;
    position: absolute;
}

.about-history .history-box div:first-child:is(.calendar)::after{
    right: -40px;
    left: auto !important;
}

.about-history .history-box .calendar::after  {
	content: "";
    display: flex;
    width: 80px;
    height: 80px;
    background-image: url(../img/web/about/a12.svg);
    background-color: #ffcd4d;
    background-repeat: no-repeat;
    background-size: 22px;
    background-position: 50%;
    border-radius: 50%;
    top: 0px;
    left: -40px;
    position: absolute;
}


.about-history .history-box .calendar .title{    
    font-size: 4rem;
    padding: 5px;
}

.about-history .history-box .calendar .text ul {
    list-style-type: none;
    padding: 0;
    margin: 5px 0;
    font-size: 1.6rem;
}

.about-history .history-box .calendar .text ul li{
	display: flex;
    padding: 2px 0 2px 30px;
    position: relative;
}

.about-history .history-box .calendar .text ul li::before {
    content: "";
    width: 10px;
    height: 10px;
    background: #ffcd4d;
    top: 10px;
    left: 0;
    border-radius: 50px;
    position: absolute;
    z-index: 1;
}

/*服務項目*/
.service{
	
}

.service .present{
    padding: 160px 0 80px 0;
    margin: 0;
}

.service .present .title{
    font-size: 4rem;
	font-weight: 500;
}

.service .present .description{
	margin: 20px 0;
    font-size: 1.8rem;
    line-height: 2;
    word-break: break-all;
}

.service .process{
    padding: 80px 0;
    margin: 0;
}

.service .process .process-header .title{
	font-size: 5rem;
    font-weight: 400;
}

.service .process .process-header .subtitle{
    font-size: 2.5rem;
    font-weight: 500;
    color: #dc0042;
    margin: 0 0 -10px 3px;
}

.service .process .process-header .description{
    margin: 20px 0;
    font-size: 1.8rem;
    line-height: 2;
    word-break: break-all;
}

.service .process .process-box{
    display: flex;
    flex-direction: row;
    margin: 35px 0;
}

.service .process .process-box .item{
	display: flex;
    flex-direction: column;
    align-items: center;
    padding: 40px 20px;
    position: relative;
}

.service .process .process-box .item .background{
    top: 5px;
    left: 80px;
    font-size: 5rem;
    color: #ededed;
    position: absolute;
}

.service .process .process-box .item .img{
	display: flex;
    width: 150px;
    height: 150px;
    border-radius: 30px;
    background: #f6f6f6;
    box-shadow: 10px 10px 20px #d1d1d1, -10px -10px 20px #ffffff;
    position: relative;
    margin: 15px 0;
}

.service .process .process-box .item .title{
    font-size: 2.5rem;
   font-weight: 500;
}

.service .process .process-box .item .description{
	font-size: 2rem;
    line-height: 2;
    word-break: break-all;
}

.service .service-item{
    padding: 80px 0;
    margin: 0;
}

.service .service-item>.title{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    font-size: 3.5rem;
    font-weight: 500;
    margin: 0 0 10px 0;
}

.service .service-item .service-item-header{

}

.service .service-item .service-item-header .title{
	font-size: 5rem;
    font-weight: 400;
}

.service .service-item .service-item-header .subtitle{
    font-size: 2.5rem;
    font-weight: 500;
    color: #dc0042;
    margin: 0 0 -10px 3px;
}

.service .service-item .service-item-header .description{
    margin: 20px 0;
    font-size: 1.8rem;
	line-height: 2;
    word-break: break-all;
}

.service .service-item .service-item-box{

}

.service .service-item .service-item-box>div>a,
.service .service-item .service-item-box>div>div{
    color: #000;
    text-decoration: none;
	padding: 20px;
}

.service .service-item .item-box{
    /*display: flex;*/
    /*min-height: 420px;*/
    /*padding: 30px;*/
    /*margin:  40px 0;*/
    /*background: #efefef;*/
	border-radius: 10px;
    overflow: hidden;
	position: relative;
}

.service .service-item .item-box .img-box{
    display: flex;
    /*width: 350px;*/
    height: 350px;
    justify-content: center;
    align-items: center;
    position: relative;
}

.service .service-item .item-box .img-box .img{
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    position: absolute;
	background-repeat: no-repeat;
    background-size: cover;
    background-position: 50%;
    filter: grayscale(32%);
}

.service .service-item .item-box .img-box .img:before {
	content: "";
    width: 100%;
    height: 100%;
    background: rgb(0 0 0 / 50%);
    top: 0;
    left: 0;
    position: absolute;
    z-index: 1;
}

.service .service-item .item-box .img-box .title {
    display: flex;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 55%;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    position: absolute;
    z-index: 2;
}

.service .service-item .item-box .img-box .title .title-o{
    text-align: center;
    font-size: 3.5rem;
    color: #fff;
    padding: 0 10px;
    z-index: 2;
}

.service .service-item .item-box .img-box .title .button-sm {
    border-radius: 50px;
	margin: 25px 0 0 0;
    padding: 10px 45px 10px 30px;
}

/*.service .service-item .item-box .img-box .img .img-o{
	width: 100%;
    max-width: 100%;
    position: absolute;
    filter: grayscale(32%);
}*/

/*.service .service-item .item-box .text-box{
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 0 40px;
    position: relative;
}*/




/*.service .service-item .item-box .description{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
    font-size: 1.8rem;
    line-height: 2;
    word-break: break-all;
}*/

.service .service-item .item-box .button {
	display: flex;
	margin: 20px 0;
}



/**/
.service-content {
	
}

.service-content .signboard-box{
	height: 780px;
    padding: 200px 0 120px 0;
}

.service-content .signboard-box .title{
    font-size: 4rem;
}

.service-content .signboard-box .subtitle{
	color: #fff;
    font-weight: 500;
    font-size: 6rem;
    filter: drop-shadow(0 0 20px #000);
}

.service-content .content-header{
	padding: 8% 0 5% 0;
}

.service-content .content-header .text{
    display: flex;
    justify-content: center;
	font-size: 4rem;
   font-weight: 500;
}

.service-content .content-header .description{
    display: flex;
    justify-content: center;
	font-size: 2rem;
    line-height: 2;
    word-break: break-all;
}


.service-content .content-a1{
    width: 100%;
    max-width: 900px;
    padding: 160px 0;
    margin: 0 auto;
}

.service-content .content-a1>.row{
	padding: 0;
    margin: 0;
}

.service-content .content-a1 .title{
    font-size: 4rem;
	font-weight: 500;
}

.service-content .content-a1 .description{
    font-size: 1.8rem;
    line-height: 2;
    margin: 20px 0;
    word-break: break-all;
}

.service-content .content-a2{
    padding: 80px 0;
    margin: 0;
    background: #efefef;
}

.service-content .content-a2 .row{
	padding: 0;
    margin: 0;
}


.service-content .content-a2 .title{
	font-size: 4rem;
	font-weight: 500;
}

.service-content .content-a2 .description{
	font-size: 1.8rem;
    line-height: 2;
    margin: 20px 0;
    word-break: break-all;
}

.service-content .content-a2 .a2-box{
	padding: 0;
    margin: 0;
}

.service-content .content-a2 .a2a-box{
    display: flex;
    padding: 0;
    margin: 0;
    justify-content: center;
    align-items: center;
    position: relative;
}

.service-content .content-a2 .product-slick-box{
    display: flex;
    justify-content: center;
    align-items: flex-start;
	position: absolute;
}

.service-content .content-a2 .product-slick-box .product-slick{
	width: 650px;
    height: 420px;
    position: relative;
}

.service-content .content-a2 .product-slick-box .product-slick .slick-list{
    width: 650px;
    height: 420px;
    overflow: hidden;
	border-radius: 5px;
    box-shadow: 10px 10px 20px 0px rgb(0 0 0 / 15%);
}

.service-content .content-a2 .product-slick-box .product-slick .item-box{
	display: inline-flex !important;
	width: 650px !important;
    height: 420px;
    background: #fff;
    position: relative;
}

.service-content .content-a2 .product-slick-box .product-slick .item-box .item-image{
	width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
    position: absolute;
}

.service-content .content-a2 .product-slick-box .product-slick .item-box .item-image .img{
	position: relative;
}

.service-content .content-a2 .product-slick-box .product-slick .item-box .item-image .img img{
  	top: 0;
  	right: 0;
  	left: 0;
  	bottom: 0;
  	width: 100%;
  	height: 100%;
    position: absolute;
}

.service-content .content-a2 .product-slick-box .product-slick .slick-dots{
	display: flex;
    justify-content: center;
	list-style-type: none;
    padding: 0;
	margin: 5px 0;
}

.service-content .content-a2 .product-slick-box .product-slick .slick-dots li{
	margin: 10px;
}

.service-content .content-a2 .product-slick-box .product-slick .slick-dots .slick-active .dot{
    background: #dc0042;
}

.service-content .content-a2 .product-slick-box .product-slick .slick-dots li .dot{
	width: 12px;
    height: 12px;
    background: #a0a0a0;
    border-radius: 50%;
	cursor: pointer;
}

.service-content .content-a3{
    padding: 160px 0 40px 0;
}

.service-content .content-a3 .row{
	padding: 0;
    margin: 0;
}

.service-content .content-a3 .title{
	font-size: 4rem;
	font-weight: 500;
    margin: 20px 0;
}

.service-content .content-a3 .description{
    font-size: 1.8rem;
    line-height: 2;
}

.service-content .content-a3 ul {
    list-style-type: none;
    padding: 0;
    margin: 0;
}

.service-content .content-a3 ul li {
    display: flex;
    align-items: center;
    padding: 5px 0 5px 40px;
    position: relative;
    font-size: 1.8rem;
    line-height: 36px;
}

.service-content .content-a3 ul li::before {
    content: "";
    width: 10px;
    height: 10px;
    background: #ffcd4d;
    top: 13px;
    left: 10px;
    border-radius: 50px;
    position: absolute;
    z-index: 1;
}

.service-content .content-a4{
    padding: 160px 0;
}

.service-content .content-a4 .row{
	padding: 0;
    margin: 0;
}

.service-content .content-a4 .title{
	font-size: 4rem;
	font-weight: 500;
    margin: 20px 0;
}

.service-content .content-a4 .a4-box{
    background: #fff;
	padding: 10% 5%;
	border-radius: 10px;
    text-align: center;
}

.service-content .content-a4 .a4-box img{
    max-width: 100%;
    max-height: 410px;
}


/*.service-content .content-a2 .a2-box:first-child{
	padding-right: 60px;
    padding-left: 0;
}*/

/*.service-content .content-a2 .a2-box:last-child{
	padding-left: 60px;
	padding-right: 0;
}*/

/*.service-content .content-a2 .a2-box ul {
    list-style-type: none;
    padding: 0;
    margin: 0;
}*/

/*.service-content .content-a2 .a2-box ul li {
    display: flex;
    align-items: center;
    padding: 5px 0 5px 40px;
    position: relative;
    font-size: 1.8rem;
}

.service-content .content-a2 .a2-box ul li::before {
    content: "";
    width: 10px;
    height: 10px;
    background: #ffcd4d;
    left: 0;
    border-radius: 50px;
    position: absolute;
    z-index: 1;
}*/

/*.service-content .content-a3 .a3-box .a3-box-title{
    font-size: 2.5rem;
    margin: 10px 0 10px 0;
}

.service-content .content-a3 .a3-box ul {
    list-style-type: none;
    padding: 0;
    margin: 0;
}

.service-content .content-a3 .a3-box ul li {
    display: flex;
    align-items: center;
    padding: 5px 0 5px 40px;
    position: relative;
    font-size: 1.8rem;
}

.service-content .content-a3 .a3-box ul li::before {
    content: "";
    width: 10px;
    height: 10px;
    background: #ffcd4d;
    left: 10px;
    border-radius: 50px;
    position: absolute;
    z-index: 1;
}*/

/*
.service-content .content-a4 .button{
    display: flex;
    justify-content: center;
    margin: 30px 0;
    padding: 0;
}

.service-content .content-a4 .button .button-sm {
    border-radius: 50px;
}

.service-content .content-a4 .item-box{
    display: inline-flex !important;
	margin: 0;
    position: relative;
}

.service-content .content-a4 .item-box .item-image {
    width: 500px;
    height: 400px;
    background: #fff;
}

.service-content .content-a4 .item-box .location-title{

}

.service-content .content-a4 .item-box .case-title{
    left: -45px;
    bottom: 0;
    writing-mode: vertical-lr;
    position: absolute;
    font-size: 1.8rem;
}

.service-content .content-a4 .slick-arrow{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 80px;
    height: 80px;
    font-size: 3rem;
    color: #fff;
    background: #dc0042;
    border-radius: 10px;
    top: calc(50% - 50px);
    position: absolute;
    z-index: 1;
    cursor: pointer;
}

.service-content .content-a4 .slick-prev{
	left: 16%;
    right: auto;
}

.service-content .content-a4 .slick-next{
	left: auto;
    right: 16%;
}

.service-content .content-a4 .slick-track{
	display: flex;
    flex-direction: row;
}

.service-content .content-a4 .slick-slide{
    margin: 0 120px;
}

.service-content .content-a4 .slick-dots{
	display: none !important;
    justify-content: center;
	list-style-type: none;
    padding: 0;
    margin: 20px 0;
}

.service-content .content-a4 .slick-dots li{
	margin: 10px;
}

.service-content .content-a4 .slick-dots .slick-active .dot{
    background: #dc0042;
}

.service-content .content-a4 .slick-dots li .dot{
	width: 12px;
    height: 12px;
    background: #a0a0a0;
    border-radius: 50%;
	cursor: pointer;
}*/


/*.service-content .content-a5{
	
}

.service-content .content-a5 .title{
    font-size: 4rem;
    font-weight: 500;
    padding: 10px 0;
}

.service-content .content-a5 .a5-box{
	font-size: 4rem;
    font-weight: 500;
    text-align: center;
    padding: 10px 0;
}

.service-content .contact-object {

}*/

/**/
.case{
	
}

.case .case-box{
    display: flex;
    margin: 70px 0px;
}

.case .case-box .item-box{
	display: flex;
    flex-direction: column;
    align-items: center;
    margin: 50px 0;
    padding: 0 3%;
    position: relative;
}

.case .case-box .item-box a {
	display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #000;
    text-decoration: none;
}

.case .case-box .item-box .item-image{
	display: flex;
    justify-content: center;
    width: 350px;
    height: 350px;
    background: #fff;
    position: relative;
    overflow: hidden;
    border-radius: 5px;
	box-shadow: 10px 10px 20px 0px rgb(0 0 0 / 15%);
}

.case .case-box .item-box .item-image img{
    height: auto;
    max-height: 100%;
    position: absolute;
}

.case .case-box .item-box .item-subtitle{
    width: 100%;
    font-size: 1.8rem;
    color: rgb(220 0 66);
    margin: 15px 0 0 0;
    font-weight: 500;
}

.case .case-box .item-box .item-title{
    width: 100%;
    font-size: 2.5rem;
}

/**/
.case-content{
	
}

.case-content .content-box{
    display: flex;
    justify-content: center;
    padding: 40px 50px;
    min-height: 100vh;
}

.case-content .content-box .title{
    padding: 10px 0;
    margin: 15px 0 25px 0;
    font-size: 4rem;
    font-weight: 500;
    border-bottom: 2px solid #000;
}

.case-content .content-box .subtitle{
    padding: 0;
    margin: 0 0 -20px 0;
}

.case-content .content-box .subtitle ul{
    display: flex;
    flex-direction: row;
    list-style-type: none;
    padding: 0;
    margin: 0;
}

.case-content .content-box .subtitle ul li{
    display: flex;
    align-items: center;
    font-size: 1.8rem;
    padding: 0 25px 0 0;
    position: relative;
}

.case-content .content-box .subtitle ul li::before {
    content: "";
    width: 8px;
    height: 8px;
    background: #dc0042;
    left: -16px;
    border-radius: 50px;
    position: absolute;
    z-index: 1;
}

.case-content .content-box .subtitle ul li:first-child::before {   
	display: none;
}

.case-content .content-box .content{
    margin: 0;
    font-size: 1.8rem;
}

.case-content .content-box .content img{
    width: calc(100% - 10px);
    max-width: 500px;
    margin: 10px;
}

/*頁腳*/
.footer{
    display: flex;
    padding: 4em 0px 0 0px;
    margin: 0;
    background: #fff;
}

.footer .footer-o{
    display: flex;    
    width: 100%;
    max-width: 1500px;
    height: 100%;
    margin: 0 auto;
    padding: 0px 2%;
    flex-wrap: wrap;
}

.footer .footer-o .footer-logo{
	max-width: 325px;
    flex-shrink: 0;
    margin: 0 8% 0 0;
    padding: 0;
	position: relative;
}

.footer .footer-o .footer-logo .logo{
    width: 100%;
	max-width: 320px;
}

.footer .footer-o .footer-logo .logo img{
    width: 100%;
}

.footer .footer-o .footer-logo .info{
    width: 100%;
    font-size: 1.48rem;
    list-style-type: none;
    padding: 0;
    margin: 2em 0;
    line-height: 1.7;
}

.footer .footer-o .footer-link{
    display: flex;
    flex-grow: 1;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.footer .footer-o .footer-link .itme{
    width: 15%;
    padding: 0 0 5% 0;
}

.footer .footer-o .footer-link .itme .title{
    font-size: 1.6rem;
    margin: 0 0 1.5em 0;
    font-weight: 500;
}

.footer .footer-o .footer-link .itme .title a{

}

.footer .footer-o .footer-link .itme ul{
    font-size: 1.48rem;
    list-style-type: none;
    padding: 0;
    margin: 0;
    line-height: 1.98;
}



/*.footer .footer-o .footer-link ul{
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex-wrap: wrap;
    width: 100%;
    height: 100%;
    list-style-type: none;
    padding: 10px 0;
    margin: 0;
}

.footer .footer-o .footer-link ul li{
    display: flex;
    padding: 10px;
}

.footer .footer-o .footer-link ul li a{
    padding: 0 10px;
	color: #000;
}*/

.footer a:hover{
	color: #ffcd4d;
}

.footer .footer-o .footer-info{    
	display: flex;
    align-items: center;
	flex: 1 100%;
    min-height: 70px;
    margin: 0;
    padding: 15px 10px;
    border-top: 1px solid #d3d3d3;
}

.footer .footer-o .footer-info .copyright{
	flex: 1 100%;
    font-size: 1.28rem;
	text-align: right;
}

/*.footer .footer-o .footer-info .other{
	flex: 1 100%;
    font-size: 1.2rem;
}

.footer .footer-o .footer-info .other a{
    display: inline-flex;
    width: 38px;
    height: 38px;
    margin: 0 5px;
    background-color: #000000;
    border-radius: 50px;
}*/

.error{
	display: flex;
    height: 100vh;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

.error .text{
    font-size: 48px;
    font-weight: bold;
}


/**/
@media (max-width: 1400px){
	
	.index .index-service .service-box{
    	font-size: 1.5vw;
	}
	
	.index .index-service .service-box .item-box{
    	font-size: 3.2vw;
	}
	
}

@media (max-width: 1200px){

	html{
		font-size: 10px;
	}
	
	.service-content .content-a2 .product-slick-box{
        position: relative;
	}
	
	/*.service-content .content-a2 .product-slick-box .product-slick,
	.service-content .content-a2 .product-slick-box .product-slick .slick-list,
	.service-content .content-a2 .product-slick-box .product-slick .item-box{
		width: 400px  !important;
    	height: 200px !important;
	}*/
	
	.case-content .content-box {
    	padding: 40px 0px;
	}

	.product .product-box .item-box .item-image,
	.case .case-box .item-box .item-image{
    	width: 300px;
    	height: 300px;
	}
	
	.about-history .history-box div:last-child:is(.calendar) {
    	padding: 10px 30px 10px 60px;
    }
	
	.about-history .history-box div:first-child:is(.calendar) {
   	 	padding: 10px 60px 10px 30px;
	}
	
	.index .index-service .service-box .item-box .img-box {
    	width: 15vw;
    	height: 15vw;
	}
	
	.index .index-service .service-box .item-box .title{
		font-size: 0.6em;
	}
}

@media (max-width: 1200px){
	.header-o nav>ul>li {
    	padding: 0px 10px;
	}
}

@media (max-width: 992px){
	html{
		font-size: 9px;
	}
	
	.header {
    	height: 60px;
	}
	
	.header .header-o .logo{
		min-width: 192px;
	    max-width: 200px;
	}
	
	.header .header-o nav {
		width: 70%;
    	max-width: 300px;
		height: calc(100% - 60px);
		overflow-y: auto;
		top: 60px;
		right: 0;
		position: fixed;
		background: #f6f6f6;
    	transform: translateX(100%);
    	transition: transform 375ms cubic-bezier(0, 0, 0.2, 1);
    	-webkit-transition: transform 375ms cubic-bezier(0, 0, 0.2, 1);
	}
	
	body[style="overflow: hidden;"]::before {
    	opacity: 1;
    	z-index: 998;
    	transition: opacity 375ms ease-out;
    	-webkit-transition: opacity 375ms ease-out;
	}
		
	.header .header-o>.show{
    	transform: translateX(0%);
	}
		
	.header-o nav>ul>li {
		flex-direction: column;
		width: 100%;
		height: auto;
	}
	
	.header-o nav>ul>li.sub{
    	display: flex;
    	justify-content: flex-start;
    	align-items: flex-end;
    	position: relative;
	}
	
	.header-o nav>ul>li.sub::before{
		display: inline-block;
		font-family: bootstrap-icons !important;
		font-style: normal;
		font-weight: normal !important;
		font-variant: normal;
		text-transform: none;
		line-height: 1;
		vertical-align: -0.125em;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}

	.header-o nav>ul>li.sub::before{
    	content: "\F64D";
    	padding: 28px 20px;
    	font-size: 2.3rem;
    	font-family: bootstrap-icons;
    	position: absolute;
	}
	
	.header-o nav>ul>li.sub.show::before{
    	content: "\F63B";
	}
	
	.header-o nav>ul>li a{
		width: 100%;
		align-items: center;
		justify-content: flex-start;
		padding: 25px 20px;
	}
	
	.header-o nav>ul>li>a:hover {
		color: #000;
	}
		
	.header .header-o nav>ul {
		display: flex;
		flex-direction: column;
		width: auto;
		height: auto;
		justify-content: flex-start;
		align-items: flex-start;
    	font-size: 1.7rem;
		padding: 0 0 50px 0;
	}
		
	.header-o nav>ul>li>ul {
		width: 100%;
		max-width: none;
		box-shadow: none;
		top: 0;
		position: relative;
	}
		
	.header-o nav>ul>li>ul>li>a:hover {
		background: transparent;
		color: #000;
	}
	
	.header-o nav>ul>li:hover>ul {
    	display: none;
	}
	
	.header-o nav>ul>li.sub.show>ul {
    	display: flex;
	}
	
	.header-o .contact-nav a{
		padding: 0;
	}
	
	.header-o .contact-button{
		width: 100%;
		margin: 10px 0;
    	padding: 15px 25px;
	}
	
	.header-o .mobile-nav{
		display: flex;
	}
	
	.index .img-banner{
    	height: calc(60vh - 60px);
    	padding-top: 60px;
	}
    
	.index .img-banner .title {
    	margin: -60px 20px 0 20px;
	}
    
	.index .img-banner .title span {
    	font-size: 5rem;
	}

    .row  {
    	margin-right: 0;
    	margin-left: 0;
	}
	
	.contact .container-info .container-info-box {
    	padding: 30px 0px;
	}
	
	.product-introduction .product-itme-box .product-slick-box .product-slick,
	.product-introduction .product-itme-box .product-slick-box .product-slick .slick-list,
	.product-introduction .product-itme-box .product-slick-box .product-slick .item-box {
    	width: 300px !important;
    	height: 300px !important;
	}
	
	.product-introduction .product-itme-specification .product-content ul li {
    	width: 100%;
	}
	
	/*.service .service-item .item-box {
		flex-direction: column;
	}*/
	
	.service .service-item .item-box .img-box {
    	width: 100%;
		height: 0;
    	padding-bottom: 70%;
	}
	
	.service .service-item .item-box .img-box .title .title-o{
		font-size: 2.5rem;
	}
	
	.service .service-item .item-box .text-box {
		padding: 40px 0 0 0;
	}
	
	/*.service-content .content-a2 .a2-box:first-child{
		padding: 0;
	}*/

	/*.service-content .content-a2 .a2-box:last-child{
		padding-top: 60px;
		padding-left: 0;
	}*/
	
	/*.service-content .content-a3 .a3-box {
    	padding-top: 20px;
    	padding-bottom: 20px;
    }*/
    
	/*.service-content .content-a3 .a3-box:first-child{
    	padding-top: 0px;
    	padding-bottom: 20px;
    }
    
	.service-content .content-a3 .a3-box:last-child {
    	padding-top: 20px;
    	padding-bottom: 0px;
    }
    
    .service-content .content-a4 .slick-arrow{
    	display: none !important;
    }
    
    .service-content .content-a4 .slick-dots {
    	display: flex !important;
	}*/
	
	.footer .footer-o .footer-logo {
        max-width: none;
        flex: 1 100%;
        padding: 0px 10px;
        margin: 0;
        display: flex;
        flex-direction: column;
        align-items: center;
	}
	
	.footer .footer-o .footer-logo .info{
        width: auto;
        font-size: 1.7rem;
	}
	
	.footer .footer-o .footer-logo .copyright{
        width: auto;
		font-size: 1.5rem;
	}
	
	.footer .footer-o .footer-link {
		display: none;
	}
	
	/*.footer .footer-o .footer-link{
    	flex: 1 100%;
	}
	
	.footer .footer-o .footer-link ul{
    	justify-content: flex-start;
    	align-items: flex-start;
    	flex-direction: column;
	}
	
	.footer .footer-o .footer-link ul li {
    	width: 100%;
    	padding: 0;
	}
	
	.footer .footer-o .footer-link ul li a {
    	width: 100%;
    	padding: 20px;
    	color: #000;
	}*/

	.footer .footer-o .footer-info {
		flex-direction: column;
    	margin: 0 20px;
	}
	
	.footer .footer-o .footer-info .copyright {
    	padding: 15px 0;
    	text-align: center;
	}
	
	.about .about-title {
    	margin: 0 0 80px 0;
	}

	.about-company{
		padding: 20% 0;
	}
	
	.about-company .company-box {
    	margin: 0;
    }
	
	.about-company .company-box .img .special{
		width: 100%;
   	 	height: 0;
    	padding-bottom: 45%;
	}
	
	.about-company .company-box .text{
    	margin: 40px 0 0 0;
	}

	.about-company .company-box .culture .itme {
    	margin: 0 0 40px 0;
	}
	
	.about-company .company-box .history, 
	.about-company .company-box .partner {
    	margin: 0 0 40px 0px;
	}
	
	/*.index .index-about .img .special{
		width: 100%;
    	height: 0;
    	padding-bottom: 45%;
	}*/
	
	.index .index-service .service-box .item-box {
    	font-size: 5.2vw;
	}
	
	.index .index-service .service-box .item-box .img-box {
    	width: 15vw;
    	height: 15vw;
	}

	.index .index-service .service-box .item-box .title {
    	font-size: 0.5em;
	}
	
	.index .index-completecase .item-box {
    	flex-direction: column;
	}
	
	.index .index-completecase .item-box .item-image {
    	width: 300px;
    	min-width: 300px;
    	max-width: 300px;
    	height: 300px;
	}
	
	.index .index-completecase .item-box .item-title{
   	 	display: flex;
    	flex-direction: column;
    	align-items: center;
    	left: 0px;
    	position: relative;
	}
	
	.index .index-completecase .item-box .item-title .service-title {
    	font-size: 3.5rem;
	}

	.index .index-completecase .item-box .item-title .case-title {
    	font-size: 2.5rem;
	}

	.index .index-completecase .slick-arrow {
		display: none !important;
	}

	.index .index-completecase .slick-prev {
    	left: 5%;
	}

	.index .index-completecase .slick-next {
    	right: 5%;
	}

	.index .index-completecase .slick-dots {
    	display: flex !important;
	}
	
	.product-introduction .product-itme-specification .product-content ul{
    	padding: 20px;
	}
	
	.contact-object .contact-title{
    	font-size: 3rem;
	}

}


@media (max-width: 768px){
	
	html{
		font-size: 8.5px;
	}
	

	
	.service .service-item .item-box .img-box .title .title-o{
		font-size: 2.5rem;
	}
	
	
    .service .process .process-box .item {
    	display: flex;
    	flex-direction: column;
    	align-items: center;
    	padding: 40px 20px;
    	position: relative;
    }
	
	.service .process .process-box .item .background {
    	left: 0;
    }
	
	.service .process .process-box .item .img {
    	width: 130px;
    	height: 130px;
    	border-radius: 20px;
    }
    
    .service-content .signboard-box{
    	padding: 170px 0 120px 0;
	}
	
	.product .product-box .item-box .item-image,
	.case .case-box .item-box .item-image{
    	width: 250px;
    	height: 250px;
	}
	
	.product-introduction .product-itme-box .itme-header {
    	padding: 55px 10px 0 10px;
	}
    
	.service-content .content-a2 .product-slick-box .product-slick .item-box{
    	justify-content: center;
    	align-items: center;
	}
    
    .service-content .content-a2 .product-slick-box .product-slick,
	.service-content .content-a2 .product-slick-box .product-slick .slick-list,
	.service-content .content-a2 .product-slick-box .product-slick .item-box{
		width: 400px  !important;
    	height: 200px !important;
	}
    
    .service-content .content-a4 {
    	padding: 80px 0 40px 0;
	}
    
	/*.service-content .content-a4 .item-box {
    	flex-direction: column;
	}

	.service-content .content-a4 .item-box .case-title {
		writing-mode: unset;
    	text-align: center;
    	position: relative;
    	margin: 15px 0 0 0;
    	top: 0;
    	left: 0;
	}

	.service-content .content-a4 .item-box .item-image {
    	width: 400px;
    	height: 300px;
	}
    
	.service-content .content-a4 .slick-arrow {
    	width: 60px;
    	height: 60px;
	}
    
    .service-content .content-a4 .slick-prev{
    	left: 10px;
    }
    
    .service-content .content-a4 .slick-next {
    	right: 10px;
	}*/
	
	.about-history .history-box:last-child div:first-child:is(.calendar), 
	.about-history .history-box:last-child div:last-child:is(.calendar),
	.about-history .history-box .calendar{
    	order: 1;
    	padding: 10px 30px 10px 90px !important;
    	min-height: auto  !important;
	}
	
	.about-history .history-box:last-child div:first-child:is(.calendar) .title, 
	.about-history .history-box:last-child div:last-child:is(.calendar) .title,
	.about-history .history-box:last-child div:first-child:is(.calendar) .text, 
	.about-history .history-box:last-child div:last-child:is(.calendar) .text {
    	text-align: left;
	}
	
	.about-history .history-box .img{
    	order: 2;
    	padding: 0 0 0 60px;
    	position: relative;
	}
	
	.about-history .history-box .img .special {
    	margin: 50px 0;
	}
	
	.about-history .history-box .img::before {
    	content: "";
    	display: flex;
    	width: 1px;
    	height: 100%;
    	border-right: 1px dashed #000;
    	top: 0;
    	left: 40px;
    	position: absolute;
	}
	
	.about-history .history-box .calendar::after{
		right: auto !important;
    	left: 0px !important;
	}

	.about-history .history-box .calendar::before{
    	left: 40px;
	}

	.about-history .history-box:last-child div:first-child:is(.calendar)::after, .about-history .history-box:last-child div:last-child:is(.calendar)::after,
	.about-history .history-box div:first-child:is(.calendar)::after{
		right: auto !important;
   	 	left: 0px !important;
	}

	.about-history .history-box div:first-child:is(.calendar)::before {
    	right: auto !important;
    	left: 40px !important;
	}

	.about-history .history-box .calendar-subject{
    	margin: 30px 0;
	}
	
	.index .index-service .service-box .item-box {
		width: 28vw;
    	font-size: 8vw;
    	margin: 0;
	}
	
	.index .index-service .service-box .item-box .img-box {
    	width: 22vw;
    	height: 22vw;
	}

	.index .index-service .service-box .item-box .title {
    	font-size: 0.4em;
	}
	
	.product-introduction .product-itme-box .itme-header .title {
    	font-size: 4.5rem;
	}

}


@media (max-width: 575px){
	
	.product .product-box .item-box .item-image,
	.case .case-box .item-box .item-image {
    	width: 300px;
   	 	height: 300px;
	}

	.service .service-item .item-box .img-box {
		height: 210px;
    	padding-bottom: 0;
	}
	
	.service .service-item .item-box .img-box .img{
    	background-position: right;
	}
	
	.service-content .content-a2 .product-slick-box .product-slick,
	.service-content .content-a2 .product-slick-box .product-slick .slick-list,
	.service-content .content-a2 .product-slick-box .product-slick .item-box{
		width: 300px  !important;
    	height: 190px !important;
	}
	
	.service-content .content-a4 .item-box .item-image {
    	width: 300px;
    	height: 300px;
	}
	
}

@media (max-width: 425px){

	.index .index-service {
    	padding: 80px 0 80px 0;
	}
	
	/*.service .service-item .item-box .img-box {
    	padding-bottom: 100%;
	}*/
	
	.service .service-item .item-box .img-box .title .button-sm{
		margin: 15px 0 0 0;
   	 	padding: 8px 40px 8px 20px;
       /* padding: 0;
        width: 35px;
        height: 35px;*/
	}
	
	.service .service-item .item-box .img-box .title .button-sm::before {
    	content: "";
    	background-size: 40%;
	}
	
	.service .service-item .item-box .img-box .title .button-sm span{
    	display: none;
	}
	
    .product .product-box .item-box .item-image, .case .case-box .item-box .item-image {
        width: 100%;
    }
}



















