@charset "utf-8";

@import url("setting.css");

a{ color: var(--color-02); text-decoration:none; transition: 0.3s all;}
a:hover{ color: var(--color-01); text-decoration: none;}
a:focus{ text-decoration: none;}

section{ padding: 100px 0; position: relative; }
section h2{ margin-bottom: 70px; color: var(--color-01); letter-spacing: 30px; text-indent: 30px; text-align: center; }
section h3{ margin-bottom: 30px; color: var(--color-11); }

.container{ max-width: 1440px; padding: 0 20px; }
.container.w2{ max-width: 1400px; }
.container.w3{ max-width: 951px; }
.container.w3{ max-width: 728px; }
.container.w4{ max-width: 546px; }

/*** HEADER ***/
header, header:active{ width: 100%; height: 75px; padding: 0; background: rgba(255, 255, 255, .75); position: fixed; top: 0; z-index: 999; transition: 0.5s all; }

.logo{ float: left; margin: 12px 0; padding: 0; text-indent: -9999px;}
.logo a{ width: 157px; height: 50px; background: url('../../img/pic-logo.webp') center center no-repeat; background-size: cover; display: block; }

header.active, header.active:active{ background: rgba(255, 255, 255, .95); box-shadow: 0 0 5px rgba(0, 0, 0, .15) !important;}
header.active .top{ display: none;}

.float_wrap{ position: fixed; right: 0; bottom: 0; z-index: 1000; }
.float{ width: 90px; margin: 0 20px 20px 0; padding: 0; list-style: none;}
.float li{ font-size: 1.25em; overflow: hidden; transition: 0.3s all; }
.float a{ margin: 0 0 0 2px; padding: 10px 20px; color: var(--color-12); letter-spacing: 2px; border-radius: 10px; display: block; text-align: center; }
.float a:hover{ text-shadow: 0 0 10px rgba(0,0,0,1);}
.float p{ margin-top: 2px; line-height: 1.25em; }
.float .f_social_line{ background: #00c300; }
/*** /HEADER ***/

/*** CAROUSEL ***/
.carousel{ position: relative; }
.carousel-item img{ width: 100%; height: auto; }
.carousel-control-prev{ left: -5%; }
.carousel-control-next{ right: -5%; }
.index .carousel-item{ width: 100%; height: 100vh; }
.index .carousel_cap{ width: 176px; height: 563px; position: absolute; top: 20%; left: 20%; z-index: 2; }
.index .carousel_down_wrap{ width: 100%; height: 48px; position: absolute; bottom: 20px; z-index: 3; text-align: center; }
.index .carousel_down{ color: var(--color-12); font-size: .75em; animation-name: movedown; animation-duration: 3s; animation-iteration-count: infinite; }

.carousel_inr{ margin-top: 75px; }

@keyframes movedown{
  0%  { margin-top: 0; }
  50% { margin-top: 20px; }
  100%{ margin-top: 0; }
}
/*** /CAROUSEL ***/

/*** I_ABT ***/
#i_abt{ padding: 80px 0; background: url('../../img/bg-i_abt.webp') right 0 repeat-y; position: relative; }
#i_abt h2{ color: var(--color-12); font-size: 4em; letter-spacing: 30px; position: absolute; right: 11.7187%; writing-mode: vertical-rl; }
.i_abt_item_wrap{ display: flex; align-items: stretch;}
.i_abt_item_wrap .i_abt_item img{ width: 100%; height: auto; }
.i_abt_item_wrap .i_abt_item p{ color: var(--color-10); font-family: 'Noto Serif TC', sans-serif; font-size: 1.5em; font-weight: 500; line-height: 2em; letter-spacing: 5px;}
.i_abt_item_wrap .i_abt_item:nth-child(1){ width: 45.8333%; }
.i_abt_item_wrap .i_abt_item:nth-child(1) .i_abt_img:nth-child(1){ margin: 80px 80px 0 0; }
.i_abt_item_wrap .i_abt_item:nth-child(1) .i_abt_img:nth-child(2){ display: none; }
.i_abt_item_wrap .i_abt_item:nth-child(1) p{ width: 580px; margin: 200px 40px 0 auto; }
.i_abt_item_wrap .i_abt_item:nth-child(2){ width: 32.8125%; }
.i_abt_item_wrap .i_abt_item:nth-child(2) .i_abt_img:nth-child(1){ margin: 0 0 0 0; }
.i_abt_item_wrap .i_abt_item:nth-child(2) .i_abt_img:nth-child(2){ margin: 80px 80px 0 80px; }
/*** /I_ABT ***/

/*** BREADCRUMB ***/
nav[aria-label="breadcrumb"]{ padding: 10px 20px; font-size: .75em; color: var(--color-10); }
ol.breadcrumb{ margin: 0; padding: 0;}
.breadcrumb-item:before{ color: #999 !important; }
.breadcrumb-item.active{ color: var(--color-11); font-weight: bold; }
ol.breadcrumb a{ color: var(--color-11); }
ol.breadcrumb a:hover{ color: var(--color-02); }
/*** /BREADCRUMB ***/

/*** CONTACT ***/
.gmap{ width: 100%; height: 355px; margin-top: 10px; }
/*** /CONTACT ***/

/*** CNT ***/
main{ min-height: calc(100vh - 502px); }

.quote_1{ text-overflow: ellipsis; white-space: nowrap; overflow: hidden;}
.quote_2{ overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.quote_3{ overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }
.quote_4{ overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; }

#i_sell{ min-height: 200px; margin: 80px; background: rgba(207, 121, 27, .2); display: flex; align-items: stretch; }
#i_sell_cap{ width: 100px; height: auto; position: relative; }
#i_sell_cap h2{ color: var(--color-01); font-size: 3em; line-height: 1em; letter-spacing: 30px; writing-mode: vertical-lr; position: absolute; top: 80px; right: 0; left: 50px; z-index: 2; }
#i_sell_cap span{ color: var(--color-12); font-size: 3em; font-weight: 300; line-height: 1em; letter-spacing: 10px; writing-mode: vertical-lr; position: absolute; bottom: 200px; left: 0; z-index: 1; display: block; }
#i_sell_box{ width: calc(100% - 100px); padding: 70px; }

.sell_wrap{ margin: 0px 0px; position: relative; display: flex; align-items: center; transition:0.3s all; }
.sell_img_wrap{ width: calc(100% - 550px); order: 2; position: relative; overflow: hidden; transition:0.3s all; -webkit-transform: perspective(0);}
.sell_img{ transition:0.5s all; }
.sell_img img{ width: 100%; height: auto; }
.sell_txt_wrap{ width: 550px; padding: 0; order: 1; }
.sell_txt_wrap b{ margin: 0 0 20px 5px; font-size: 2em; line-height: 1em; letter-spacing: 5px; display: block; }
.sell_txt{ margin: 0 80px; }
.sell_txt.w-100{ max-width: 100%; margin: 0 auto; }
.sell_txt h3{ font-size: 2.25em; line-height: 1.325em; letter-spacing: 5px; }
.sell_txt span{ display: inline-block; }
.sell_txt span:after{ content: '、'; }
.sell_txt span:last-child:after{ content: ''; }
.sell_txt button{ margin: 20px 0 0 0; }
.sell_txt p{ margin: 30px 0 0 0; padding: 0; line-height: 1.75em; letter-spacing: 5px; }
a .sell_txt h3, a .sell_txt p{ color: var(--color-10); }
.sell_wrap:hover .sell_img_wrap{ box-shadow: 0 0 10px rgba(0,0,0,.75); }

.box_wrap{ margin: 0px 0px; position: relative; transition:0.3s all; }
.box_img_wrap{ position: relative; overflow: hidden; transition:0.3s all; -webkit-transform: perspective(0);}
.box_img{ transition:0.5s all; }
.box_img img{ width: 100%; height: auto; }
.box_txt_wrap{ padding: 10px 0; }
.box_txt{ margin: 0 auto; }
.box_txt p{ margin-top: 10px; font-weight: 700; line-height: 1.325em; }
a .box_txt p{ color: var(--color-11); transition:0.3s all; }
a:hover .box_txt p{ color: var(--color-02); }
.box_txt span{ font-size: .9375em; display: inline-block; }
a .box_txt span{ color: #777; }
.box_txt button{ margin: 20px 0 0 0; }
.box_wrap:hover .box_img_wrap{ box-shadow: 0 0 20px rgba(0,0,0,.75); }
.box_wrap:hover .box_img{ transform: scale(1.005, 1.005); }
.box_wrap:hover .box_txt h5{ color: #a31d1f; }
.box_wrap:hover .box_txt button{ color: #a31d1f !important; background: #fff !important; border-color: #a31d1f !important; }

#i_news .h2_span{ color: var(--color-02); font-size: 4.5em; font-weight: 300; letter-spacing: 10px; position: absolute; top: 60px; right: -10px; }

.inr_bnr_wrap{ margin-top: 0px; display: flex; }
.inr_bnr{ width: 95%; height: 500px; border-top-right-radius: 0px; border-bottom-right-radius: 300px; }

.inr_h2{ margin-bottom: 70px; display: flex; align-items: center; }
.inr_h2 span{ margin: 0 0 0 20px; color: var(--color-10); font-size: 4.25em; font-weight: 300; line-height: 1em; letter-spacing: 20px; }
.inr_h2 h2{ margin: 0 0 0 40px; color: var(--color-02); font-size: 1.5em; letter-spacing: 20px; }

.inr_abt article{ margin-bottom: 70px; color: var(--color-10); display: flex;}
.inr_abt article .lst_img{ width: 40%; padding: 0 40px 0 0;}
.inr_abt article .lst_txt{ width: 60%; }
.inr_abt article:nth-child(2n+1) .lst_img{ padding: 0 0 0 40px; order: 2; }
.inr_abt article:nth-child(2n+1) .lst_txt{ order: 1; }

.inr_lst article{ margin-bottom: 70px; color: var(--color-10);}
.inr_lst article a{ display: flex;}
.inr_lst article a .lst_img_wrap{ position: relative; overflow: hidden; transition:0.3s all; -webkit-transform: perspective(0);}
.inr_lst article a .lst_img, .inr_lst article a .lst_txt h3{ transition: 0.5s all;}
.inr_lst article a .lst_txt h3{ color: var(--color-11); }
.inr_lst article a .lst_txt p{ color: var(--color-10); }
.inr_lst article .lst_img_wrap{ width: 30%; margin: 0 40px 0 0;}
.inr_lst article .lst_img img{ width: 100%; height: auto; }
.inr_lst article .lst_txt{ width: 70%; }
.inr_lst article a:hover .lst_img_wrap{ box-shadow: 0 0 20px rgba(0,0,0,.75); }
.inr_lst article a:hover .lst_img{ transform: scale(1.005, 1.005); }
.inr_lst article a:hover .lst_txt h3{ color: var(--color-02); }

.ico_box{ margin: 10px 0; padding: 20px 20px; background: rgba(255, 255, 255, .35); border: 1px solid var(--color-02); border-radius: 20px; text-align: center; }
.ico_box i{ margin-bottom: 15px; color: var(--color-02); font-size: 3em;}
.ico_box p{ color: var(--color-10); }

.accordion-item{ margin-bottom: 5px; border:1px solid #ccc !important; border-radius: 0;}
.accordion-item:last-child{ margin-bottom: 0; }
.accordion-item .accordion-header{ margin: 0; padding: 0; background: none; border-radius: 0; }
.accordion-item .accordion-header button{ width: 100%; padding: 10px 20px; font-size: .5em; background: none; border: 0; text-align: left; cursor: pointer; white-space: nowrap; }
.accordion-item .accordion-header button i{ color: #bbb; }
.accordion-item .accordion-header button:hover, .accordion-item .accordion-header button:hover i{ color: #fff; background: var(--color-02) !important; }
.accordion-item .accordion-header button[aria-expanded="true"]{ color: #fff; background: var(--color-02); !important; }
.accordion-item .accordion-header button[aria-expanded="true"] i{ color: #fff; }
.accordion-item .accordion-header button[aria-expanded="false"]{ background: #f9f9f9; }
.accordion-item .accordion-collapse{ border-radius: 0px; overflow: hidden;}
.accordion-item .accordion-body{ margin: 0; padding: 40px 40px; background: #f9f9f9;}
.accordion-item .accordion-body .btn_wrap{ margin-top: 10px; padding-top: 15px; border-top: 1px dashed #ccc; text-align: right;}
.accordion-button:hover::after{ background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ffffff'><path fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/></svg>") !important; background-position: 0 1px !important;}
.accordion-button:not(.collapsed)::after{ background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ffffff'><path fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/></svg>") !important; background-position: 0 1px !important;}
.accordion-button a{ color: #bbb; display: block; }
.accordion-button:hover a{ color: #fff !important; }

.accordion.apply h3{ margin-top: 40px; }
.accordion.apply h3:first-child{ margin-top: 0px; }

.color_note{ color: var(--color-note); }

label{ color: var(--color-10); }
label .color_note{ margin: 0 0 0 10px; }

.subtitle{ margin: 15px 0 0 0; color: var(--color-10); font-family: 'Noto Sans', sans-serif; font-size: 16px; font-weight: 400; letter-spacing: 3px; }

.spec{ margin: 0; padding: 0; list-style: none; }
.spec li{ width: 100%; margin: 0 0 10px 0; overflow: hidden; }
.spec .spec_cap{ float: left; width: 110px; text-align-last: justify; }
.spec .spec_cap::before{ margin-right: 10px; color: var(--color-02); font-family: 'Font Awesome 6 Free'; font-weight: 900; content: "\f192"; }
.spec .spec_cap i{ margin: 0 10px 0 0; color: var(--color-02); }
.spec .spec_txt{ float: left; width: calc(100% - 130px); margin: 0 0 0 20px; padding: 0 0 0 20px; border-left: 1px solid var(--color-02); }

.dtl_wrap{ overflow: hidden; }
.dtl_sync{ float: left; width: 500px; margin: 0 auto; }
.dtl_img img{ width: 100%; height: auto; }
.dtl_txt{ float: right; width: calc(100% - 500px); padding: 0 0 0 50px; }
.dtl_cnt{ margin: 40px 0 0 0; }
.dtl_fixed { width: inherit; position: fixed; top: 116px; overflow: hidden; -webkit-transition: all 2s; -moz-transition: all 2s; -o-transition: all 2s; transition: all 2s;}
.dtl_absolute { width: inherit; position: absolute; bottom: 50px; overflow: hidden; -webkit-transition: all 2s; -moz-transition: all 2s; -o-transition: all 2s; transition: all 2s;}

.linetime { margin: 0; padding: 0; list-style: none; position: relative;}
.linetime:before { width: 2px; height: 100%; background: var(--color-01); position: absolute; top: 0; left: 28px; content: "";}
.linetime li { margin: 100px 0; position: relative;}
.linetime li:before, .linetime li:after { display: table; content: "";}
.linetime li:after { clear: both;}
.linetime li h3{ transition: 0.3s all;}
.linetime li a .linetime-pic{ transition: 0.3s all;}
.linetime li a .linetime-p{ transition: 0.5s all;}
.linetime li a:hover h3{ color: var(--color-02); }
.linetime li a:hover .linetime-pic{ box-shadow: 0 0 20px rgba(0,0,0,.75);}
.linetime li a:hover .linetime-p{ transform: scale(1.005, 1.005);}
.linetime-panel { margin-bottom: 20px; padding-left: 80px; position: relative;}
.linetime-img { width: 60px; height: 60px; padding-bottom: 4px; color: var(--color-12); line-height: 1.25em; display: flex; align-items: center; justify-content: center; position: absolute; border: 0px solid var(--color-01); overflow: hidden; background: var(--color-01);}
.linetime-pic { position: relative; left: 80px; overflow: hidden; transition: 0.3s all;}
.linetime-p img{ width: 100%; height: auto; }
.linetime-img h4 { margin-top: 50%; font-size: .8rem; transform: translateY(-50%);}
@media (min-width: 768px) {
  .linetime:before { left: 50%;}
  .linetime li { min-height: 50px; margin-bottom: 2rem; position: relative;}
  .linetime-panel { float: left; width: 40%; padding: 0; text-align: right;}
  .linetime-img { width: 100px; height: 100px; left: 50%; transform: translateX(-48%);}
  .linetime-img h4 { font-size: 1rem; }
  .linetime-pic { float: left; width: 30%; padding: 0; left: 21%;}
  .linetime li:nth-child(2n) .linetime-panel{ float: right; text-align: left;}
  .linetime li:nth-child(2n) .linetime-pic{ float: right; left: auto; right: 21.5%;}
}
@media (min-width: 992px) {
  .linetime li { min-height: 50px; margin-bottom: 4rem; position: relative;}
  .linetime-img { width: 120px; height: 120px;}
  .linetime-img h4 { font-size: calc(1.275rem + 0.3vw);}
  .linetime-panel { padding: 0 1.25rem;}
}

.ndtl_wrap{ display: flex; overflow: hidden; }
.ndtl_sync_wrap{ width: 580px; padding: 40px; background: rgba(207, 121, 27, .2); }
#nsync{ width: 284px; margin: 0 40px 0 auto;}
.nsync{ width: 100%; }
.nsync_cap{ margin-bottom: 30px; text-align: center; }
.nsync_cap span{ margin-left: 2px; font-size: 1.875em; font-weight: 300; letter-spacing: 2px; }
.nsync_cap p{ margin-left: 5px; letter-spacing: 5px;}
.ndtl_img img{ width: 100%; height: auto; }
.ndtl_txt_wrap{ width: calc(100% - 580px); }
.ndtl_cap{ width: 100%; margin-left: 70px; padding: 30px 30px; color: var(--color-12); background: var(--color-01); border-top-left-radius: 20px; }
.ndtl_cap span{ margin: 0 20px 20px 0; font-weight: 300; display: inline-block; }
.ndtl_cap span i{ margin-right: 10px; }
.ndtl_cap h3{ margin: 0; padding: 0; color: var(--color-12); font-weight: 700; }
.ndtl_txt{ width: 80%; padding: 0 0 0 100px; }
.ndtl_cnt{ margin: 40px 0 0 0; }
.ndtl_fixed { width: inherit; position: fixed; top: 120px; overflow: hidden;}
.ndtl_absolute { width: inherit; position: absolute; bottom: 140px; overflow: hidden;}

.tlst{ margin: 0; padding: 0; list-style: none; }
.tlst li{ margin: 0px 0; padding: 20px 0 30px 0; border-top: 1px dotted #999; }
.tlst li:last-child{ border-bottom: 1px dotted #999;}
.tlst a{ color: var(--color-10); }
.tlst a:hover{ opacity: .75; }
.tlst .tlst_time{ width: 100%; margin-bottom: 5px; font-size: .813em; font-weight: 300; }
.tlst .tlst_box{ display: flex; }
.tlst .tlst_box .tlst_img{ width: 100%; max-width: 120px; height: 97px; }
.tlst .tlst_box .tlst_img img{ width: 100%; height: auto; }
.tlst .tlst_box p{ width: calc(100% - 120px); height: auto; padding: 0 0 0 20px; }
/*** /CNT ***/

/*** PAGINATION ***/
.pagination_wrap{ width: 100%; overflow: hidden; }
.pagination{ float: left; margin: 30px 0 0 0; }
.pagination a{ color: #666; }
.pagination a:hover{ color: #666; background: #f6f6f6; }
.pagination .active .page-link{ background: var(--color-02); border-color: #dee2e6; }

.pagination_jump{ float: right; margin: 30px 0 0 0; padding: 0; list-style: none; }
.pagination_jump select.form-select{ width: auto; min-height: 38px; margin: 0 5px; padding: 0 35px 0 10px; background-color: var(--color-03); border: 1px solid #dee2e6; border-radius: 3px; display: inline-block; cursor: pointer; }
/*** /PAGINATION ***/

/*** FOOTER ***/
footer{ margin: 0; padding: 80px 0; background: url('../../img/bg-footer.webp') center center no-repeat; background-size: cover; overflow: hidden; }
footer .logo a{ width: 157px; height: 50px; background: url('../../img/pic-flogo.webp') center center no-repeat; background-size: cover; display: block; }
footer .social{ float: left; margin: 8px 0 25px 80px; padding: 0; list-style: none; overflow: hidden; }
footer .social li{ float: left; margin-left: 30px; }
footer .social li:first-child{ margin-left: 0px; }
footer .social li a{ color: var(--color-12); font-size: 2.125em; }
footer .social li a:hover{ color: var(--color-02);}
footer .finfo{ width: 100%; margin: 0; padding: 40px 0; list-style: none; background: var(--color-01); display: flex; align-items: center; justify-content: center;}
footer .finfo li{ width: 25%; text-align: center; }
footer .finfo li a{ border-left: 1px solid #fff; }
footer .finfo li:first-child a{ border-left: 0; }
footer .finfo li i{ margin-bottom: 20px; color: var(--color-01); font-size: 4.25em; -webkit-text-stroke-width: 1px; -webkit-text-stroke-color: var(--color-12); transition: 0.3s all; }
footer .finfo li a{ color: var(--color-12); display: block;}
footer .finfo li a:hover{ color: var(--color-02);}
footer .finfo li a:hover i{ -webkit-text-stroke-color: var(--color-02);}

.copyright{ padding: 20px 0; color: var(--color-12); font-size: .75em; text-transform: uppercase; text-align: center; }
/*** /FOOTER ***/

/*** CAPTCHA ***/
#captcha_code{ float: left; width: 120px; text-align: center; }
.captcha_wrap{ float: left; margin: 10px 0 0 10px; }
/*** /CAPTCHA ***/

/*** BTN ***/
.btn{ padding: 10px 50px; border-radius: 10px; }
.btn_wrap{ width: 100%; margin:30px 0 0 0; }

.btn-primary{ background: var(--color-01) !important; border-color: var(--color-01) !important; }
.btn-primary:hover, .btn-primary:focus{ background: var(--color-02) !important; border-color: var(--color-02) !important;}
/*** /BTN ***/

/*** MODAL ***/
.modal{ z-index: 999999; }
.modal-header{ color: #fff; background: var(--color-01); }
.modal-open { padding-right: 0 !important;}
.modal-backdrop { opacity: .9 !important; }
.modal-content{ position: relative; }
.btn-close-wrap{ background-color: #2faeff; border-radius: 0; border-top-right-radius: 5px; border-bottom-left-radius: 5px; position: absolute; top: 0; right: 0; z-index: 10; }
.btn-close{ padding: 15px 15px; position: absolute; top: 0; right: 0; z-index: 10;}
.modal-body{ padding: 30px 30px 30px 30px; color: #333; overflow: hidden; }
.modal-body h4{ font-weight: 700; line-height: 1.25em; text-align: center; }
.modal-body h4 span{ font-size: .6em; font-weight: 400; display: block; text-transform: uppercase; }
.modal-body button{ margin-top: 5px; margin-bottom: 5px; }
.modal-body a:hover{ color: var(--color-12); }

#popModal .modal-body{ padding: 0;}
#popModal .btn-close-custom{ width: 26px; height: 26px; line-height: 24px; border-radius: 50%; position: absolute; top: 10px; right: 10px; color: #fff; background: #000; }
/*** /MODAL ***/

/*** POPOVER ***/
[data-bs-toggle="popover"]{ cursor: pointer; }
.popover{ padding:5px; border: 5px solid #ccc; border-radius: 10px; }
.popover-arrow{ display: none !important; }
/*** /POPOVER ***/


@media screen and (-webkit-min-device-pixel-ratio:0) { /* Chrome */
}

@media all and (-ms-high-contrast:none){ /* IE 11 */
     *::-ms-backdrop, .label_name{ }
}

@supports (display:-ms-grid) { /* Edge */
}