@charset "utf-8";

/*
關於CSS設定說明
CSS屬性是會繼承的，而且還是由上往下繼承。
同樣元素設定16px 後 12px 再 15px 最後會以最後設定的15px為準
但是有兩種情況除外:
1.絕對路徑命名. 如: .xx .yy .zz p {設定值;}
2.important.  如: .xx p {設定值 !important;}

CSS3選取器語法 :nth-child(n) 

*/

.swiper-fade .swiper-slide {
    transition: opacity 0.001s linear !important;
}

.stellarnav>ul>li>ul,
.stellarnav>ul>li>a.dd-toggle {
    display: none !important;
}

/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */


.stellarnav.desktop li.bigMenu>ul {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    left: 0;
    width: 100%;
    position: fixed;
    padding: 20px;
}

.stellarnav.desktop li.bigMenu ul ul {
    top: 100%;
    left: 0;
    width: 100%;
    background: #efefef;
    height: auto;
    max-height: 300px;
    overflow: auto;
}

.stellarnav.desktop li.bigMenu ul ul li {
    margin: 0;
}

.stellarnav.hasBigMenu li.bigMenu li.has-sub>a:after {
    border-left: 6px solid transparent;
    border-bottom: unset;
    border-right: 6px solid transparent;
    border-top: 6px solid #898989;
    right: 5px;
}

.stellarnav.desktop li.bigMenu>ul {
    grid-gap: 10px;
}

.stellarnav.desktop li.bigMenu li {
    border: 0;
}

.stellarnav.desktop li.bigMenu>ul>li>a {
    border: 1px solid #ddd;
}

.stellarnav.desktop li.bigMenu ul ul {
    display: block !important;
    position: relative;
    top: 0;
    background: unset;
    border: 0;
}

.stellarnav.desktop li.bigMenu ul ul li {
    border: 0;
}


/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */


/*上方選單解除滑動固定
.header_area.sticky { position:relative;}
*/

.navigation {
    display: flex;
    align-items: center;
    padding: 0;
    gap: 60px;
    font-family: 'Open Sans', 'Noto Sans TC', sans-serif;
}

.nav-header {
    max-width: 80px;
    padding: 20px 0;
}

.pageIndex .nav-header,
.pageIndex .stellarnav {
    display: none;
}

.pageIndex .me_tp_features {
    position: fixed;
    bottom: 10%;
    left: 50%;
    transform: translateX(-50%);
}

.pageIndex .tp_links a {
    filter: invert(0);
}

.pageIndex .tp_links:has(a:hover) a:not(:hover) {
    opacity: 1;
}


.pageIndex .double_key {
    visibility: hidden;
    pointer-events: none;
}

.nav-brand,
.nav-brand img {
    display: block;
}

.header_area,
.header_area.sticky {
    background: #fff;
    padding: 0 5%;
    position: relative;
    transition: all ease 0.3s;
}

.main_header_area .container {
    max-width: 100%;
}

.stellarnav {
    margin-left: auto;
}

.stellarnav li.has-sub>a:after {
    content: none;
}

.stellarnav>ul>li>a:not(.dd-toggle):before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: #222;
    transform: scale(0, 1);
    transform-origin: bottom right;
    transition: transform .3s;
}

.stellarnav>ul>li:hover>a:before {
    transform: scale(1, 1);
    transform-origin: bottom left;
}

.stellarnav>ul>li>a,
.stellarnav>ul>li.has-sub>a {
    padding: 0 2px;
    color: #222;
    font-size: 14px;
    margin: 0 12px;
    letter-spacing: 1.5px;
    font-weight: 400;
    line-height: 26px;
    height: auto;
    transition: all ease .3s;
}

.stellarnav:hover>ul>li>a,
.stellarnav:hover>ul>li.has-sub>a {
    filter: opacity(.35);
}

.stellarnav:hover>ul>li:hover>a,
.stellarnav:hover>ul>li.has-sub:hover>a {
    filter: opacity(1);
    color: #000;
}

.swiper-pagination,
.box_search,
.me_tp_features a.me_tp_mail,
.me_tp_features a *,
.tp_links a.me_tp_behance {
    display: none;
}

.me_tp_features {
    order: 1;
    max-width: max-content;
}

.tp_links {
    display: flex;
    flex-flow: row wrap;
    gap: 10px;
    width: max-content;
}

.me_tp_features a:before {
    content: '';
    width: 100%;
    height: 100%;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    display: block;
}

.me_tp_line {
    order: 1;
}

.me_tp_call {
    order: 2;
}

.me_tp_ig {
    order: 4;
}

.me_tp_behance {
    order: 5;
}

.me_tp_fb {
    order: 3;
}

.me_tp_line:before {
    background-image: url(https://pic03.eapple.com.tw/timemory/linee.svg);
}

.me_tp_call:before {
    background-image: url(https://pic03.eapple.com.tw/timemory/calll.svg);
}

.me_tp_ig:before {
    background-image: url(https://pic03.eapple.com.tw/timemory/igg.svg);
}

.me_tp_behance:before {
    background-image: url(https://pic03.eapple.com.tw/timemory/bee.svg);
}

.me_tp_fb:before {
    background-image: url(https://pic03.eapple.com.tw/timemory/fbb.svg);
}

.tp_links a {
    filter: invert(1);
    width: 30px;
    height: 30px;
    transition: all ease .3s;
}

.tp_links:has(a:hover) a:not(:hover) {
    opacity: .35;
}

/*次分類*/
.stellarnav ul ul {
    min-width: 180px;
    background: transparent;
    right: 0;
    border-bottom: 10px solid #f9f9f9;
}

.stellarnav li li:first-of-type {
    padding-top: 10px;
}

.stellarnav>ul>li>ul {
    right: auto;
    left: 50%;
    transform: translateX(-50%);
}

.stellarnav li li {
    text-align: center;
    border: none;
    margin-bottom: 0;
    background: #f9f9f9;
    position: relative;
}

.stellarnav li li:hover a:not(.dd-toggle),
.stellarnav li li.has-sub:hover a:not(.dd-toggle),
.stellarnav li li.has-sub:hover li:hover a:not(.dd-toggle) {
    color: #222;
}

.stellarnav li li a:not(.dd-toggle),
.stellarnav li li.has-sub>a:not(.dd-toggle),
.stellarnav li li.has-sub:hover li a:not(.dd-toggle) {
    color: #555;
    padding: 7.5px 15px;
    font-weight: 400;
    line-height: initial;
    height: auto;
    margin: 0;
    position: relative;
    font-size: 14px;
    transition: all ease .3s;
}

.stellarnav ul ul ul,
.stellarnav li.drop-left ul ul {
    left: 100%;
    right: 0;
}


/*大圖*/
.swiper-slide:after {
    /*
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 6.875%;
    height: 100%;
    aspect-ratio: 21/25;
    background: url(https://pic03.eapple.com.tw/timemory/slogan.png) no-repeat center / cover;
    */
}

.swiper-slide img {
    object-fit: cover;
    min-height: 100vh;
}

@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');

.B_flex {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    justify-content: center;
}

.NewBoxed blockquote {
    text-align: center;
    flex-direction: column-reverse;
}

.NewBoxed {
    position: absolute;
    left: 50%;
    bottom: 35%;
    transform: translateX(-50%);
    z-index: 7;
    max-width: 100vw;
    gap: 20px;
    padding: 0 5%;
}

.NewBoxed * {
    font-family: "Open Sans", sans-serif;
}

.NewBoxed dd {
    display: flex;
    width: 100%;
}

.NewBoxed dd>img {
    max-width: 76px;
}

.NewBoxed blockquote h4 {
    font-size: 16px;
    color: #fff;
    font-weight: 500;
    text-shadow: 0 0 15px #666;
    font-style: normal;
    letter-spacing: 1px;
}

.NewBoxed blockquote span {
    font-size: 12px;
    color: #fff;
    font-weight: 500;
    text-shadow: 0 0 15px #666;
    letter-spacing: 1px;
    margin: 8px 0;
    display: none;
}

.NewBoxed a {
    justify-content: center;
    max-width: 200px;
    border: 1px #fff solid;
    border-radius: 15px;
    padding: 15px;
    margin-top: 6px;
}

.NewBoxed a span {
    font-size: 14px;
    color: #fff;
    letter-spacing: 1px;
    font-weight: bold;
    text-shadow: 0 0 15px #666;
}

.NewBoxed a:hover {
    background: #333;
    border-color: #333;
    border-radius: 10px;
}

.NewBoxed a:hover span {
    color: #ccc;
    letter-spacing: 2px;
}


/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */


#content_main,
.pageIndex .footer_info li:nth-child(1),
.pageIndex .footer_menu a:not(:nth-of-type(2)),
.pageIndex .footer_menu a:after,
.pageIndex .copy,
.pageIndex .info_fix,
.swiper-pagination {
    display: none;
}

.pageIndex .footer {
    padding: 0;
    display: none;
}

/*
.pageIndex .footer_menu a:nth-of-type(2) {
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    color: transparent;
}
*/
.pageIndex .footer_info li:nth-child(2) {
    padding: 0;
}

/*
.bannerindex:before {
    position: absolute;
    content: '';
    background: linear-gradient(to bottom, rgba(255, 255, 255, .5) 7%, transparent 35%);
    width: 100%;
    height: 100%;
    z-index: 9;
}
*/
.bannerindex {
    position: fixed;
    height: 100vh;
    padding: 0;
}

/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */

/*body*/
.banner,
.path {
    display: none;
}

.main_part {
    width: 90%;
    max-width: 1500px;
    padding: 80px 0 120px;
}

.show_content,
.contact_content {
    padding: 0;
}

#content,
body {
    font-family: 'Open Sans', 'Noto Sans TC', sans-serif;
}



/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */


/*文章*/
h5.blog_le_t,
.blog_search,
.article_a .subbox_item a:after,
.blog_page h4.blog_category_title,
.blog_list_ri em,
.subbox_item a:before {
    display: none;
}

.blog_page .main_part {
    max-width: 1500px;
    padding-top: 60px;
}

.blog_le,
.blog_ri {
    width: 100%;
    padding: 0;
    margin-bottom: 0;
    position: relative;
}

.blog_subbox {
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
}

.subbox_item {
    border: none;
}

.subbox_item a {
    display: flex;
    flex-flow: column wrap;
    grid-gap: 15px;
}

.blog_list_le {
    aspect-ratio: 5/3;
    height: auto;
    overflow: hidden;
}

.blog_le .accordion {
    border-radius: 0;
    border: none;
    display: flex;
    flex-flow: row wrap;
    gap: 10px;
    justify-content: center;
}

.accordion li+li .link {
    border: none;
}

.accordion>li+li:before {
    content: '';
    position: absolute;
    left: -10px;
    top: 7px;
    display: inline-block;
    height: 20px;
    width: 1px;
    background: rgba(0, 0, 0, .25);
}

.accordion li {
    border: 1px solid #ccc;
    height: min-content;
    letter-spacing: 0.05em;
    transition: all 0.4s ease;
}

.accordion li .link a {
    background: none;
    padding: 7.5px 30px;
    color: #555;
    font-weight: 400;
    transition: all 0.4s ease;
}

.blog_le .accordion>li:hover,
.blog_le .accordion>li.on_this_category {
    border: none;
}

.blog_le .submenu {
    background: #f5f5f5;
}

.blog_le .accordion>li.open {
    border-color: #ccc !important;
}

.blog_le .accordion li .link i {
    position: static;
    color: #555;
    width: auto;
    padding-right: 25px;
    font-size: 14px;
}

.accordion li .link {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
}

.submenu {
    background: white;
}

.accordion li li {
    border-radius: 0;
    border: none;
    border-top: 1px solid transparent;
    transition: all ease 0.3s;
}

.accordion li.open li {
    border-color: #bbb;
}

.blog_le .submenu a {
    color: #555;
    font-weight: 400;
    letter-spacing: 1px;
    font-size: 13px;
    padding: 12px 10px 10px 30px;
    line-height: 13px;
}

.blog_le .submenu a i {
    left: 8.5px;
    font-size: 14px;
}

.blog_le .accordion>li:hover,
.blog_le .accordion>li.on_this_category {
    background: #333 !important;
}

.blog_le .submenu li.on_this_category a,
.submenu a:hover {
    background: #555;
    color: #fff;
}

.submenu a i {
    font-size: 14px;
    left: 12px;
}

.submenu a {
    color: #888;
    padding: 7px 12px 5px 32px;
    letter-spacing: 0.05em;
    font-weight: 400;
    transition: all ease 0.4s;
}

.accordion li.open li+li {
    border-color: #ccc;
}

/*
.submenu li.on_this_category a,
.submenu a:hover {
    background: #f0b2b2;
}*/

.blog_le .accordion {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: max-content;
    column-gap: 20px;
    overflow-x: auto;
    white-space: nowrap;
}

.blog_le .accordion li {
    list-style: none;
    white-space: nowrap;
    border: none;
    position: relative;
}

.blog_le {
    margin-bottom: 45px;
}

.blog_list_ri {
    padding: 0;
    display: flex;
    flex-flow: column wrap;
    letter-spacing: .5px;
}

.blog_list_ri>*+* {
    margin-top: 0;
}

.blog_list_ri h5 {
    font-weight: 400;
    font-size: 14px;
    color: #444;
}

.blog_list_ri p {
    font-size: 14px;
    line-height: 180%;
    font-weight: 400;
    -webkit-line-clamp: 2;
    color: #555;
}

.blog_page .page li.activeN {
    display: flex;
    width: 25px;
    height: 25px;
    line-height: 25px;
    justify-content: center;
    align-items: center;
    align-content: center;
    text-align: center;
    border-radius: 50px;
    background: #000;
    color: #fff;
    font-weight: normal;
    transition: .3s;
}


/*內頁*/
.blog_in_page .main_part {
    max-width: 1000px;
}

.blog_in_page .blog_le,
.articel_mainPic {
    display: none;
}

h4.blog_category_title {
    display: block;
    font-size: 17px;
    color: #333;
    letter-spacing: 1px;
    font-weight: 400;
    text-align: left;
    padding: 0;
    margin: 0;
    padding-right: 160px;
    line-height: 1.7;
}

.blog_box_edit {
    font-weight: 400;
    color: #555;
    font-size: 14px;
    letter-spacing: 1px;
}

.blog_box_edit * {
    line-height: 2;
}

.blog_back a.article_btn_back {
    background: #bbb;
}

.blog_back a {
    border-radius: 34px;
    font-size: 13px;
    font-weight: 400;
    letter-spacing: 1px;
    line-height: 34px;
    padding: 0;
    height: 34px;
}

/*
.blog_back a.article_btn_back {
    background: #f0b2b2;
}

.blog_back a.article_btn_prev,
.blog_back a.article_btn_next {
    background: #44a9aa;
}*/

.blog_back {
    margin-top: 45px;
    gap: 10px;
}

.blog_in_page .blog_shareData {
    position: absolute;
    top: 1px;
    right: 0;
    width: max-content;
}

.toShareNews b {
    font-size: 13px;
    font-weight: 400;
    letter-spacing: .5px;
    color: #333;
}

.blog_in_page .edit {
    padding: 45px 0 0;
}

.news_related {
    padding: 60px 5%;
    background: #FAFAFA;
}

.news_related_list {
    max-width: 1000px;
    width: 100%;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    margin: 45px auto 60px;
    gap: 30px
}

.news_related h6 {
    margin: 0 auto;
    max-width: 1000px;
    text-align: left;
}

.news_related_list li {
    width: calc((100% - 30px) / 2);
}

.news_related_list li:nth-of-type(n+3) {
    display: none;
}

.news_related_list li a {
    padding: 15px;
    background: transparent;
    display: flex;
    flex-flow: row wrap;
    align-content: center;
    align-items: center;
    border: 1px dotted #bbb;
    transition: all ease .6s;
}

.news_related_list li a:hover {
    background: #fff;
}

.news_related h6 span:before {
    color: #333;
    font-size: 17px;
    letter-spacing: 1px;
    font-weight: 400;
}

.news_related_list li figure {
    aspect-ratio: 5/3;
    width: 50%;
}

.news_related_list li a p {
    margin: 0 auto;
    line-height: 1.6;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    color: #555;
    font-weight: 400;
    width: 50%;
    padding: 0 15px 0 30px;
    text-align: left;
}

.news_related_b_box {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
}

.lastPage {
    display: flex;
    align-items: center;
    margin: 0 0 0 auto;
    width: fit-content;
    background: transparent;
    color: #777;
    font-weight: 400;
    font-size: 14px;
    padding: 0;
    letter-spacing: 1px;
    transition: all ease .6s;
}

.lastPage:after {
    content: '';
    display: inline-block;
    width: 60px;
    height: 0.5px;
    background: #777;
    margin-left: 15px;
}

.lastPage:hover {
    color: #333;
    padding-right: 15px;
}

/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */


/*相簿*/
.album_page .main_part,
.album_info_page .main_part,
.album_class_page .main_part {
    max-width: 1725px;
}

.show-list {
    grid-template-columns: 1fr 1fr;
    gap: 30px 15px;
}

.show-list .show_name,
.show-list .item:hover .show_name,
.other_subalbum li a p {
    text-align: center;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 2px;
    margin-top: 15px;
    -webkit-line-clamp: 1;
    color: #333;
    height: auto;
    line-height: 1.5;
}

.show-list .show_pic {
    aspect-ratio: 5 / 3;
}

.other_album,
.overlay,
.subalbum-menu h2 {
    display: none;
}

.album_descrip {
    color: #555;
    line-height: 2.2;
    max-width: 1280px;
    margin: 0 auto 60px;
    font-size: 14px;
    font-weight: 400;
}

.subalbum-menu {
    margin: 0;
    padding: 0;
}


/*相片*/
.pic-list {
    display: block;
    -moz-column-count: 3;
    -moz-column-gap: 10px;
    -webkit-column-count: 3;
    -webkit-column-gap: 10px;
    column-count: 3;
    column-gap: 10px;
    width: 100%;
}

.pic-list .item {
    width: 100%;
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    break-inside: avoid;
    padding: 0;
    margin: 0;
}

.pic-list .show_pic {
    height: auto;
    padding-bottom: 0;
    aspect-ratio: auto;
}

.pic-list .show_pic img {
    width: 100%;
}

/*作品*/
.sidebar__inner {
    top: 45px;
}

.Projs_slideshow {
    display: none;
}

/*購物車*/
.product_page .main_part {
    max-width: 1300px;
    padding-bottom: 0px;
}

.product_page .show_content,
.product_info_page .show_content {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: flex-start;
    align-content: flex-start;
}

.product_page .products-list,
ul.page {
    width: 100%;
}

.product-layer-two {
    display: none;
}

.product_info_page .products-list,
.product-wrapper {
    width: 100%;
}

.product_info_page .half_box {
    width: 100%;
    float: none;
    padding-right: 0;
}

.product_info_page .half_box li.btn_blankTop {
    margin-top: 50px;
    justify-content: space-between;
    display: flex;
}

.product_info_page .half_box li.btn_blankTop input {
    width: calc(50% - 10px);
    background-image: none;
    padding: 0;
    text-align: center;
}

/*外層設定*/
.product_menu_list,
.products-list .name .numbering,
.products-list .price,
.products-list .more {
    display: none;
}

.products-list {
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 40px;
}

.products-list .item a {
    padding-bottom: 0px;
}

.products-list .name {
    text-align: center;
    height: auto;
    margin-top: 14px;
    font-size: 14px;
    font-weight: normal;
}

/*內頁設定*/
.product_main,
#number_area,
.product_info li span,
.product_info li .txt_box,
.inquiry_a1,
.inquiry_a2,
.inquiry_a3,
.toShare,
.pd_tabTitle li.activeTab a,
.pd_tabTitle li {
    display: none;
}

.sidebarBtn {
    padding: 0px;
    width: 100%;
    border: none;
    text-align: center;
    color: #000;
    background: transparent;
    display: block;
}

.product_info_page .edit h2 {
    padding-bottom: 25px;
    font-weight: 400;
}

.product_info_page .edit {
    padding: 0px;
    font-weight: 300;
    line-height: 200%;
    letter-spacing: .5px;
    font-size: 14px;
    color: #444;
    text-align: justify !important;
    max-width: 65%;
    margin: 0 auto;
}

.edit img {
    display: block;
}

.edit img+img {
    margin-top: 20px;
}

.sidebarBtn h2 {
    color: #696969;
    font-size: 17px;
    font-weight: 400;
    letter-spacing: 2px;
}


/*相關推薦*/
.related_list {
    max-width: 1300px;
    grid-template-columns: repeat(4, 1fr);
}

.prod_related h6 span:before {
    content: 'MORE';
    font-size: 17px;
    color: #444;
    font-weight: 400;
}

.prod_related {
    background: transparent;
    padding: 60px 5%;
}

.prod_related h6 {
    margin: 0 auto 50px;
}

.related_list li a p {
    font-size: 14px;
    color: #858585;
    padding-top: 15px;
    letter-spacing: 1px;
    line-height: 1.6;
}

.product_info_page .lastPage {
    display: none;
}

.products-list .pic,
.related_list li figure {
    aspect-ratio: 16/9;
}

/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */


/*聯絡*/
.info_TEL:before {
    content: "TEL";
}

.info_PHONE:before {
    content: "PHONE";
}

.info_LINE:before {
    content: "LINE ID";
}

.info_MAIL:before {
    content: "MAIL";
}

.info_ADD:before {
    content: "ADDRESS";
}

.contact_page .main_part {
    max-width: 1280px;
    padding-top: 100px;
}

.contact_form,
.contact_form li.last input,
.list_before,
.list_before li:before {
    font-weight: 400 !important;
    font-size: 13px !important;
    letter-spacing: .5px !important;
}

.blank_letter {
    padding-top: 0;
    font-family: 'Noto Sans TC', Microsoft JhengHei, sans-serif;
    color: #333;
    font-weight: 400;
    font-size: 17px;
    letter-spacing: 2px;
    position: relative;
}

.note {
    font-size: 12px;
    text-align: right;
    letter-spacing: .5px;
    color: #333;
    font-weight: 400;
    order: 1;
}

.information_right .blank_letter {
    display: flex;
    justify-content: space-between;
    align-items: end;
}

.information_right .blank_letter:before {
    content: 'FORM';
    position: absolute;
    bottom: 34px;
    left: 0;
    font-size: 13px;
}

.information_left .blank_letter:before {
    content: 'INFO';
    position: absolute;
    bottom: 34px;
    left: 0;
    font-size: 14px;
}

.contact_form {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    grid-gap: 20px;
    margin-bottom: 0;
    margin-top: 45px;
}

.contact_form li:nth-last-of-type(-n+2) {
    width: calc(50% - 10px);
}

.form select {
    width: 100%;
    margin-bottom: 0;
    padding: 6px 26px 6px 3px;
}

.contact_form li.last {
    margin-top: auto;
    margin-bottom: 0;
}

.contact_form li input.noborder,
.contact_form li textarea.noborder {
    background: #f9f9f9;
    padding: 10px;
    border: none;
    color: #555;
    letter-spacing: .5px;
    font-size: 13px;
    font-weight: 400;
}

.contact_form li {
    width: 100%;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-content: flex-start;
    padding: 0;
    border-bottom: none;
    color: #444;
    grid-gap: 8px;
}

.contact_form li .form__label {
    display: flex;
    flex-flow: row wrap;
    width: 100%;
    text-align: left;
    max-width: 100%;
    font-weight: normal;
    padding: 0;
    background: none;
}

.star {
    order: 1;
    height: 18px;
}

.contact_content>form {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
}

.contact_content .information_left,
.contact_content .information_right {
    width: calc(50% - 50px);
    padding: 0;
}

.contact_form li .form__insert {
    line-height: 165%;
}

.contact_form li.last cite {
    background: #333;
}

.contact_form li.last blockquote,
.contact_form li.last cite {
    border-color: #333;
    border-radius: 30px;
}

.contact_form li.last blockquote {
    color: #555;
    font-weight: 400;
}

.contact_le_nomap {
    width: 100%;
    height: 335px;
    filter: grayscale(1);
    transition: all ease .6s;
}

.contact_le_nomap:hover {
    filter: none;
}

.list_before {
    margin-top: 45px;
    margin-bottom: 60px;
}

.list_before li {
    margin: 7.5px 0;
}

.list_before li:before {
    font-weight: 400 !important;
    color: #333 !important;
    width: 60px !important;
}

.list_before.info li {
    padding-left: 90px;
}


/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */


/*footer*/
.footer_info li p.line {
    order: 1;
}

.footer_info li p.mail {
    order: 2;
}

.footer_info li p.add {
    order: 3;
}

.footer {
    background: transparent;
    font-family: 'Open Sans', 'Noto Sans TC', sans-serif;
    letter-spacing: 1px;
    padding: 48px 0 0;
    margin: 0 auto;
    background: #f5f5f5;
}

.footer_logo,
.box_link,
.footer_menu a:first-of-type {
    display: none;
}

.footer .center {
    max-width: 90%;
}

.footer_info li,
.footer_info li+li {
    padding: 0;
    margin: 0;
}

.footer_info li:nth-child(1) {
    padding: 0 0 24px;
    display: flex;
    flex-flow: column wrap;
}

.footer_info li:nth-child(2) {
    padding: 24px 0;
}

.footer_info {
    display: flex;
    padding: 0;
}

.footer_info li p {
    letter-spacing: 1px;
    color: #444;
    line-height: 2;
    display: block;
    margin-bottom: 0;
    font-weight: 400;
    font-size: 13px;
    transition: all ease 0.3s;
}

.footer_info li p a {
    color: #444;
    width: max-content;
    transition: all ease 0.3s;
}

.copy,
.copy a,
.copy a:hover {
    color: #444;
    letter-spacing: .5px;
    font-weight: 400;
}

.privacyLinks a+a {
    border-color: #444;
}

.copy {
    font-size: 12px;
    white-space: inherit;
    padding: 24px 0;
    width: 90%;
    margin: 0 auto;
    border-top: 1px solid #ddd;
}

.footer_menu a,
.footer_menu a:hover {
    display: block;
    padding: 0;
    border: none;
    margin: 0;
    color: #222;
    background: none;
    font-size: 13px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    transition: all ease 0.3s;
}

.footer_menu:has(a:hover) a:not(:hover) {
    opacity: .35;
}

.footer_menu a:hover {
    color: #000;
}

.footer_menu {
    display: flex;
    flex-flow: row wrap;
    gap: 24px;
}

.footer_menu a:after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    margin-top: 4px;
    background-color: #222;
    transform: scale(0, 1);
    transform-origin: bottom right;
    transition: transform .3s;
}

.footer_menu a:hover:after {
    transform: scale(1, 1);
    transform-origin: bottom left;
}

.footer_info li p.line:before {
    content: 'LINE ID';
}

.footer_info li p.tel:before {
    content: 'TEL';
}

.footer_info li p.phone:before {
    content: 'PHONE';
}

.footer_info li p.mail:before {
    content: 'MAIL';
}

.footer_info li p.add:before {
    content: 'ADDRESS';
}

.footer_info li p:before {
    margin: 0;
    WIDTH: 100px;
    display: inline-block;
}

@media screen and (max-width: 1100px) {
    .contact_form li:nth-last-of-type(-n+2) {
        width: 100%;
    }

    .contact_form li.last {
        justify-content: flex-start;
        margin-top: 10px;
    }
}

@media screen and (max-width: 1024px) {
    .stellarnav {
        order: 1;
    }

    .navigation {
        gap: 0;
    }

    body:not(.pageIndex) .me_tp_features {
        margin: 0 0 15px;
    }

    .footer_info {
        flex-direction: column;
    }

    .copy {
        margin-top: 25px;
        justify-content: flex-start;
        text-align: left;
    }

    .privacyLinks {
        margin: 0;
    }

    .privacyLinks a,
    .copy p {
        padding: 0 5px 0 0;
    }

    .copy>p {
        margin-bottom: 4px;
    }

    .privacyLinks a:last-of-type {
        padding: 0 0 0 5px;
    }

    .footer_menu {
        gap: 12px 24px;
    }

    .footer_info li:nth-child(2) {
        padding: 10px 0;
    }
}

@media screen and (max-width: 768px) {
    #bottom_menu {
        display: none;
    }

    #to_top {
        bottom: 20px;
    }

    .product_info_page .edit {
        max-width: 90%;
    }

    body:not(.pageIndex) .me_tp_features {
        position: fixed;
        right: 10px;
        bottom: 15px;
    }

    body:not(.pageIndex) .tp_links {
        flex-direction: column;
        gap: 8px;
    }

    .nav-header {
        max-width: 66px;
    }

    .footer_info li p,
    .footer_menu a,
    .footer_menu a:hover {
        font-size: 12px;
    }

    .copy,
    .stellarnav .menu-toggle:after {
        font-size: 11px;
    }

    .footer_info li p:before {
        width: 90px;
    }

    .header_area,
    .header_area.sticky {
        padding: 0;
    }

    .stellarnav .menu-toggle {
        padding: 19px 15px;
    }

    .stellarnav:hover>ul>li>a,
    .stellarnav:hover>ul>li.has-sub>a {
        filter: opacity(1);
    }

    .stellarnav li li:not(.open):hover a.dd-toggle .icon-plus:after,
    .stellarnav li li:not(.open):hover a.dd-toggle .icon-plus:before {
        border-color: #fff;
    }

    .stellarnav>ul>li>a,
    .stellarnav>ul>li.has-sub>a:not(.dd-toggle),
    .stellarnav.mobile>ul>li>a,
    .sticky .stellarnav>ul>li>a,
    .sticky .stellarnav>ul>li.has-sub>a:not(.dd-toggle) {
        height: auto;
        line-height: 150%;
        margin: 0 8px;
        padding: 10px 44px 10px 10px;
        min-width: auto;
    }

    .stellarnav.mobile.right .close-menu,
    .stellarnav.mobile.left .close-menu {
        background: #FAFAFA;
        color: #fff;
        width: 40px;
        height: 40px;
        float: right;
        padding: 0;
        padding-top: 24px;
    }

    .stellarnav.mobile.left>ul {
        background: #FAFAFA;
        border-top: none;
        border-right: none;
        max-width: 100vw;
    }

    .stellarnav .icon-close:after,
    .stellarnav .icon-close:before {
        border-color: #222;
        width: 20px;
        border-width: 2px;
    }

    .stellarnav a {
        color: #fff;
    }

    .stellarnav.mobile>ul>li.open>a.dd-toggle {
        padding: 12px 6px 0;
    }

    .stellarnav.mobile li li a.dd-toggle {
        margin-right: 5px;
    }

    .stellarnav.mobile li.open li.open a.dd-toggle {
        padding: 12px 0 0 0;
    }

    .stellarnav.mobile li li.has-sub a:not(.dd-toggle),
    .stellarnav li li>a:not(.dd-toggle) {
        padding: 10px 43px 10px 18px;
    }

    .stellarnav.mobile li li.has-sub li a:not(.dd-toggle),
    .stellarnav li li li>a:not(.dd-toggle) {
        padding-left: 18px;
    }

    .stellarnav.mobile li a {
        border-bottom: none;
    }

    .stellarnav li li {
        text-align: left;
    }

    .stellarnav.mobile li.drop-left ul ul {
        left: 0;
    }

    .stellarnav>ul>li>a,
    .stellarnav>ul>li.has-sub>a {
        font-size: 24px;
    }

    .stellarnav.mobile>ul>li {
        border: none;
    }

    .stellarnav.mobile>ul>li:first-of-type {
        margin-top: 100px;
    }

    .stellarnav>ul>li>a,
    .stellarnav>ul>li.has-sub>a:not(.dd-toggle),
    .stellarnav.mobile>ul>li>a,
    .sticky .stellarnav>ul>li>a,
    .sticky .stellarnav>ul>li.has-sub>a:not(.dd-toggle) {
        margin: 0;
        padding: 4px 5%;
    }

    .stellarnav>ul>li>a:not(.dd-toggle):before {
        display: none;
    }

    .contact_content>form {
        flex-direction: column;
        gap: 75px;
    }

    .contact_content .information_left,
    .contact_content .information_right {
        width: 100%;
    }

    .list_before {
        margin: 30px 0;
    }

    .contact_page .main_part {
        padding: 60px 0;
    }

    .contact_form {
        margin-top: 30px;
    }

    .main_part,
    .blog_page .main_part {
        padding: 20px 0;
    }

    .blog_subbox,
    .products-list,
    .related_list {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .related_list li a,
    .pd_tabInner_contain {
        padding: 0;
    }

    .products-list .name {
        margin-top: 10px;
        font-size: 13px;
    }

    .related_list li a p {
        font-size: 13px;
        padding-top: 8px;
    }

    .sidebarBtn {
        margin: 0;
    }

    .sidebarBtn h2,
    h4.blog_category_title,
    .prod_related h6 span:before,
    .news_related h6 span:before {
        font-size: 15px;
    }

    .prod_related h6 {
        margin-bottom: 30px;
    }

    h4.blog_category_title {
        padding-right: 0;
    }

    .product_info_page .edit,
    .blog_box_edit,
    .toShareNews b {
        font-size: 12px;
    }

    .blog_in_page .edit {
        padding: 0;
    }

    .prod_tabs,
    .blog_back {
        margin-top: 20px;
    }

    .prod_related {
        padding: 20px 5% 50px;
    }

    .blog_in_page .blog_shareData {
        position: static;
        margin: 20px 0 40px;
    }

    .news_related_list li {
        width: 100%;
    }

    .news_related_list li a p {
        font-size: 13px;
        padding: 0 15px;
    }

    .lastPage,
    .blog_list_ri h5 {
        font-size: 13px;
    }

    .news_related_list {
        gap: 20px;
    }

    .news_related_list {
        margin: 30px auto;
    }

    .news_related {
        padding: 50px 5%;
    }

    .blog_le {
        margin-bottom: 20px;
    }

    .subbox_item a {
        grid-gap: 10px;
    }

}

@media screen and (max-width: 500px) {

    .blog_subbox,
    .products-list {
        grid-template-columns: 1fr;
    }
}