@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
/* font-family: "Noto Sans JP", sans-serif; */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans:wght@100;200;300;400;500;600;700&display=swap');
/* font-family: 'Noto Sans', sans-serif; */

/* SEO: Visually hidden class for screen readers and search engines */
.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

/* SEO: Product page H1 styling */
h1.product-title {
    font-size: 4rem;
    font-weight: 700;
    color: #c19648;
    margin-bottom: 10px;
}

/* NOTE: 共通 */
body, html { min-width: 1260px; height: 100%;}
html { font-size: 62.5%;}
body { font-size: 1.6em; color: #444; font-family: "Noto Sans JP", sans-serif; font-weight: 400;}
#wrapper { position: relative; height: 100%;}
/* .spacer { height: 70px;} */
.mobile-only { display: none;}
#onScrollTarget { position: absolute; top: 0; left: 0; width: 0; height: 0; display: block;}

/* NOTE: header */
header { position: fixed; top: 0; left: 0; width: 100%; z-index: 100; transition: 0.3s;}
header .logo_dark { display: none;}

header:hover { background: #fff;}
header:hover .logo_wh { display: none;}
header:hover .logo_dark { display: block;}
header:hover .inner ul.main > li { color: #c19648;}
header:hover .inner #langswith ul li:after { color: #c19648;}
header:hover .inner ul.main > li a, header:hover .inner ul.main > li span { color: #c19648;}

header .inner { width: 1260px; height: 70px; margin: 0 auto; display: flex; justify-content: space-between; align-items: center; padding: 0 30px; position: relative;}
header .inner .logo { position: absolute; top: 50%; left: 30px; transform: translateY(-50%); width: 100px; margin-right: 100px;}
header .inner .logo img { width: 100%;}
header .inner ul.main { display: flex; display: flex; justify-content: right; align-items: center; align-items: center; list-style: none; width: 100%;}
header .inner ul.main li { color: #fff;}
header .inner ul.main > li + li { margin-left: 50px;}
header .inner ul.main > li:nth-of-type(3) { padding: 0 50px; margin-left: 0;}
header .inner ul.main > li:nth-of-type(4) { margin-left: 0;}

/* 语言下拉框样式 */
header .inner ul.main li.lang-dropdown { position: relative;}
header .inner ul.main li.lang-dropdown .lang-current { display: flex; justify-content: center; align-items: center; height: 70px; color: #fff; cursor: pointer; font-size: 1.4rem; padding: 0 15px;}
header .inner ul.main li.lang-dropdown .lang-current:after { content: '▼'; font-size: 0.8rem; margin-left: 5px; transition: 0.3s;}
header .inner ul.main li.lang-dropdown:hover .lang-current:after { transform: rotate(180deg);}
header .inner ul.main li.lang-dropdown .lang-menu { position: absolute; top: 60px; right: 0; background: #fff; border-radius: 8px; box-shadow: 0 4px 20px rgba(0,0,0,0.15); opacity: 0; visibility: hidden; transform: translateY(-10px); transition: 0.3s; z-index: 100; min-width: 140px; overflow: hidden;}
header .inner ul.main li.lang-dropdown:hover .lang-menu { opacity: 1; visibility: visible; transform: translateY(0);}
header .inner ul.main li.lang-dropdown .lang-menu ul { list-style: none; padding: 8px 0;}
header .inner ul.main li.lang-dropdown .lang-menu ul li { margin: 0;}
header .inner ul.main li.lang-dropdown .lang-menu ul li a { display: block; padding: 10px 20px; color: #333; text-decoration: none; font-size: 1.4rem; transition: 0.2s;}
header .inner ul.main li.lang-dropdown .lang-menu ul li a:hover { background: #f5f5f5; color: #c19648;}
header .inner ul.main li.lang-dropdown .lang-menu ul li a.active { color: #c19648; font-weight: 600; background: #fdf8f0;}
header .inner ul.main li a, header .inner ul.main li span { display: flex; justify-content: center; align-items: center; height: 70px; color: #fff; text-decoration: none; position: relative; cursor: pointer;}
header .inner li a:after, header .inner li span:after { position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); content: ''; width: 0; height: 2px; background: #c19648; transition: .3s all; }
header .inner li a:hover::after, header .inner li span:hover::after { width: 100%;}

header .under { position: absolute; top: 50px; left: 50%; transform: translateX(-50%); width: 100vw; background: #fff; height: 50px; display: flex; justify-content: center; align-items: center; border-top: 1px solid #ccc; transition: 0.3s; z-index: -1; opacity: 0; pointer-events: none;}
header .inner ul.main > li:hover > .under { top: 70px; opacity: 1; pointer-events: auto;}
header .inner ul.main > li .under ul { display: flex; justify-content: center; align-items: center; list-style: none;}
header .inner ul.main > li .under ul li + li { margin-left: 30px;}
header .inner ul.main > li .under ul li a {display: flex; justify-content: center; align-items: center; height: 50px; color: #000;}

header.scrolled { background: #fff;}
header.scrolled .logo_wh { display: none;}
header.scrolled .logo_dark { display: block;}
header.scrolled .inner ul.main > li { color: #c19648;}
header.scrolled .inner #langswith ul li:after { color: #c19648;}
header.scrolled .inner ul.main > li a, header.scrolled .inner ul.main > li span { color: #c19648;}

/* NOTE: hamburger */
#pageHome #hamburger { display: none;}

/* NOTE: nav */
nav#global { display: none;}

/* NOTE: footer */
#pagetop { opacity: 0; pointer-events: none; background: rgba(193, 150, 72, 0.9); color: #fff; width: 50px; height: 50px; border-radius: 50%; text-align: center; line-height: 45px; position: fixed; bottom: 20px; right: 10px; cursor: pointer; z-index: 90; transition: 0.3s;}
#pagetop.active { opacity: 1; pointer-events: auto;}
footer { width: 100%; background: #eeeff0; padding: 50px 0 60px 0;}
footer .inner { width: 1260px; margin: 0 auto; padding: 0 30px;}
footer .inner ul { list-style: none; display: flex; justify-content: space-between; margin-bottom: 90px;}
footer .inner ul li { flex: 1;}
footer .inner ul li .mi { font-size: 1.8rem; font-weight: 700; margin-bottom: 30px;}
footer .inner ul li a { display: inline-block; color: #666; text-decoration: none; position: relative; padding-bottom: 5px;}
footer .inner ul li br + a { margin-top: 25px;}
footer .inner ul li a:hover { color: #c19648;}
footer .inner ul li a:after { position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); content: ''; width: 0; height: 1px; background: #c19648; transition: .3s all; }
footer .inner ul li a:hover::after { width: 100%;}
footer .inner small { display: block; font-size: 1.4rem; color: #444; letter-spacing: 3px; text-align: center;}

/* NOTE: breadcrumbs */
/* #breadCrumbs { width: 100%; padding: 10px 0; font-size: 1.3rem; line-height: 1.2; color: #444; background: #f6f6f6;}
#breadCrumbs #breadCrumbsInner { width: 100%; padding: 0 20px;}
#breadCrumbs span { margin: 0 8px;}
#breadCrumbs span:first-child { margin: 0 5px 0 0;}
#breadCrumbs a { color: #444; text-decoration: none;}
#breadCrumbs a:hover { text-decoration: underline;} */

/* NOTE: IntersectionObserver */
/* .target { transform: translateY(30px); opacity: 0; transition: 0.5s;}
.target.active { transform: none; opacity: 1;} */

/* NOTE: pageHome */
#pageHome section.hero { width: 100%; height: 100vh; position: relative;}
#pageHome section.hero canvas { position: absolute; top: 0; left: 0; bottom: 0; right: 0; width: 100%; height: 100%; z-index: -1;}

#pageHome section.hero .intrologo { opacity: 0; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 1;}
#pageHome section.hero.active .intrologo { animation: anime01 3s 0s forwards; pointer-events: none;}
#pageHome section.hero .intrologo img { width: 230px; height: auto;}
@keyframes anime01 {
  0% { opacity: 0;}
  70% { opacity: 1;}
  100% { opacity: 0;}
}

#pageHome section.hero .swiper { position: absolute; top: 0; left: 0; bottom: 0; right: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2;}
#pageHome section.hero .swiper-wrapper { width: 100%; height: 100vh;}
#pageHome section.hero .swiper-wrapper li { width: 100%; height: 100vh; overflow: hidden;}
#pageHome section.hero .swiper-wrapper li img { width: 100%; height: 100%; object-fit: cover;}

#pageHome section.hero .product { opacity: 0; position: absolute; top: 0; left: 0; bottom: 0; right: 0; display: flex; justify-content: center; align-items: center; transition: 0s;}
#pageHome section.hero .product.active { opacity: 1; transition: 3s;}
#pageHome section.hero .product.active ul li img { transform: scale(1); opacity: 1; transition: 0s;}
#pageHome section.hero .product.active2 { opacity: 1;}
#pageHome section.hero .product.active2 ul li:nth-of-type(1) img { transform: none; transition: 0.8s; transition-delay: 1s; opacity: 1;}
#pageHome section.hero .product.active2 ul li:nth-of-type(2) img { transform: none; transition: 0.8s; opacity: 1;}
#pageHome section.hero .product.active2 ul li:nth-of-type(3) img { transform: none; transition: 0.8s; opacity: 1;}
#pageHome section.hero .product.active2 ul li:nth-of-type(4) img { transform: none; transition: 0.8s; transition-delay: 1s; opacity: 1;}
#pageHome section.hero .product ul { width: 1000px; display: flex; justify-content: space-between; align-items: center; list-style: none;}
#pageHome section.hero .product ul li { height: 250px;}
#pageHome section.hero .product ul li img { height: 100%; transition: 0.3s; cursor: pointer; transform: scale(0.9); opacity: 0;}
#pageHome section.hero .product ul li:hover img { transform: scale(1.05);}

#pageHome section.hero .prodetail.active { opacity: 1; pointer-events: auto;}
#pageHome section.hero .prodetail.active .inner .img img { opacity: 1; transform: none; transition: 0.3s;}
#pageHome section.hero .prodetail.active .inner .txt { opacity: 1; transition: 0.8s; transition-delay: 0.3s;}
#pageHome section.hero .prodetail { opacity: 0; position: absolute; top: 0; left: 0; bottom: 0; right: 0; display: flex; justify-content: center; align-items: center; transition: 0.5s; pointer-events: none;}
#pageHome section.hero .prodetail .arrow { position: absolute; top: 200px; left: 100px;}
#pageHome section.hero .prodetail .arrow img { width: 50px; height: 50px; cursor: pointer;}
#pageHome section.hero .prodetail .inner { width: 930px; display: flex;}
#pageHome section.hero .prodetail .inner .img { width: 280px;}
#pageHome section.hero .prodetail .inner .img img { opacity: 0; width: auto; height: 250px; transform: translate(100px, 100px); transition: 0s;}
#pageHome section.hero .prodetail .inner .txt { flex: 1; color: #fff; opacity: 0; transition: 0s;}
#pageHome section.hero .prodetail .inner .txt .name { font-size: 3.6rem; font-weight: 600; letter-spacing: 0.8rem; margin-bottom: 20px;}
#pageHome section.hero .prodetail .inner .txt p { font-size: 2.4rem; line-height: 1.8; font-weight: 400; letter-spacing: 0.3rem; margin-bottom: 50px;}
#pageHome section.hero .prodetail .inner .txt .btn { width: 100%;}
#pageHome section.hero .prodetail .inner .txt .btn a { display: block; width: 180px; background: #fff; border-radius: 5px; text-align: center; padding: 12px 0; color: #c19648; font-size: 2.0rem; font-weight: 500; letter-spacing: 0.3rem; text-decoration: none; transition: 0.3s;}
#pageHome section.hero .prodetail .inner .txt .btn a:hover { background: #e3f3c3; outline: solid #fff 2px; outline-offset: -2px; transform: translateY(-3px);}

#pageHome section.history { padding: 50px 0;}
#pageHome section.history > .inner { width: 1000px; margin: 0 auto;}
#pageHome section.history h2 { font-size: 3.0rem; font-weight: 700; text-align: center; margin-bottom: 10px;}
#pageHome section.history ul { list-style: none;}
#pageHome section.history ul li { display: flex; justify-content: center; align-items: center;}
#pageHome section.history ul li + li { margin-top: 50px;}
#pageHome section.history ul li .item { margin-right: 20px;}
#pageHome section.history ul li .item .number { font-family: 'Noto Sans', sans-serif; font-size: 8.0rem; font-weight: 900; color: #c19648;}
#pageHome section.history ul li .item .plus { display: inline-block; font-family: 'Noto Sans', sans-serif; font-size: 9.0rem; font-weight: 900; color: #c19648; transform: translateY(10px); margin-left: 5px;}
#pageHome section.history ul li .txt { flex: 1;}
#pageHome section.history ul li .txt span:nth-of-type(1) { display: inline-block; font-size: 1.8rem; color: #c19648; margin-right: 30px;}
#pageHome section.history ul li .txt span:nth-of-type(2) { font-size: 1.6rem; color: #666;}

#pageHome section.rd { width: 100%; height: 600px; position: relative;}
#pageHome section.rd .bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2;}
#pageHome section.rd .overlay { position: absolute; top: 0; left: 0; bottom: 0; right: 0; background: rgba(0, 0, 0, 0.3); z-index: -1;}
#pageHome section.rd ul { display: flex; list-style: none;}
#pageHome section.rd ul li { width: 33.3%; padding: 0 40px;}
#pageHome section.rd ul li + li { border-left: 1px solid #fff;}
#pageHome section.rd ul li { height: 600px; display: flex; justify-content: center; align-items: center; flex-direction: column;}
#pageHome section.rd ul li .txt { display: flex; justify-content: center; align-items: center; flex-direction: column; transition: 1s;}
#pageHome section.rd ul li:hover .txt { transform: translateY(-30px); transition: 1s;}
#pageHome section.rd ul li .icon { transform: scale(2.5); margin-bottom: 20px;}
#pageHome section.rd ul li p { font-size: 2.0rem; color: #fff; text-align: center; margin-bottom: 20px;}
#pageHome section.rd ul li a { font-size: 1.8rem; display: inline-block; background: #fff; color: #c19648; font-weight: 600; padding: 10px 30px; border-radius: 30px; text-decoration: none; transition: 0.3s;}
#pageHome section.rd ul li a:hover { background: #c19648; color: #fff; transition: 0.3s;}

#pageHome section.experts { padding: 50px 0; background: #f7f8f9;}
#pageHome section.experts > .inner { width: 1000px; margin: 0 auto;}
#pageHome section.experts h2 { font-size: 3.0rem; font-weight: 700; text-align: center; margin-bottom: 30px;}
#pageHome section.experts ul { display: flex; list-style: none;}
#pageHome section.experts ul li { width: 30%; background: #fff; padding: 30px; border-radius: 20px; box-shadow: 0 0 8px #ccc; display: flex; align-items: center; flex-direction: column; transition: 0.3s;}
#pageHome section.experts ul li:hover { transform: scale(1.05); transition: 0.3s;}
#pageHome section.experts ul li + li { margin-left: 5%;}
#pageHome section.experts ul li .img { display: inline-block; position: relative; margin-bottom: 10px; text-align: center;}
#pageHome section.experts ul li .img img.spacer { width: 150px; height: 150px;}
#pageHome section.experts ul li .img img.photo { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; border-radius: 20px;}
#pageHome section.experts ul li .name { font-size: 2.0rem; font-weight: 600; margin-bottom: 10px; text-align: center;}
#pageHome section.experts ul li p { line-height: 1.8; color: #666; text-align: left;}
#pageHome section.experts ul li:last-of-type { background: none; box-shadow: none; padding: 0; display: flex; justify-content: center; align-items: center;}
#pageHome section.experts ul li:last-of-type:hover { transform: scale(1.0);}
#pageHome section.experts ul li:last-of-type a { display: block; width: 100%; text-align: center; background: #fff; border: 2px solid #c19648; color: #c19648; border-radius: 30px; padding: 15px 0; font-size: 1.8rem; font-weight: 600; text-decoration: none; transition: 0.3s;}
#pageHome section.experts ul li:last-of-type a:hover { background: #c19648; color: #fff; transition: 0.3s;}

#pageHome section.topics { padding: 50px 0; background: #f7f8f9;}
#pageHome section.topics > .inner { width: 1260px; margin: 0 auto;}
#pageHome section.topics h2 { font-size: 3.0rem; font-weight: 700; text-align: center; margin-bottom: 30px;}
#pageHome section.topics ul { display: flex; list-style: none;}
#pageHome section.topics ul li { width: 30%; background: #fff; padding: 30px; transition: 0.3s;}
#pageHome section.topics ul li + li { margin-left: 5%;}
#pageHome section.topics ul li:hover { box-shadow: 0 0 8px #ccc; transition: 0.3s;}
#pageHome section.topics ul li a { text-decoration: none;}
#pageHome section.topics ul li .date { font-family: 'Noto Sans', sans-serif; font-size: 1.4rem; color: #c19648; margin-bottom: 30px;}
#pageHome section.topics ul li .title { font-size: 2.4rem; line-height: 1.5; color: #c19648; margin-bottom: 30px;}
#pageHome section.topics ul li .btn { display: inline-block; background: #c19648; color: #fff; border-radius: 30px; padding: 15px 40px; font-size: 1.5rem; font-weight: 600; text-decoration: none; margin-bottom: 30px; transition: 0.3s;}
#pageHome section.topics ul li:hover .btn { background: #fff; color: #c19648; outline: 1px solid #c19648; transition: 0.3s;}
#pageHome section.topics ul li .img { position: relative;}
#pageHome section.topics ul li .img img.spacer { width: 100%; height: auto;}
#pageHome section.topics ul li .img img.photo { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover;}

/* NOTE: pageAbout */
#pageAbout section.hero { width: 100%; height: 600px; position: relative;}
#pageAbout section.hero .bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2;}
#pageAbout section.hero .overlay { position: absolute; top: 0; left: 0; bottom: 0; right: 0; background: rgba(0, 0, 0, 0.3); z-index: -1;}
#pageAbout section.hero .inner { width: 1260px; height: 600px; margin: 0 auto; display: flex; align-items: center; padding: 0 30px;}
#pageAbout section.hero .inner .txt { width: 700px; color: #fff;}
#pageAbout section.hero .inner .txt .mi { font-size: 3.4rem; font-weight: 500; letter-spacing: 0.3rem; line-height: 1.3; margin-bottom: 20px;}
#pageAbout section.hero .inner .txt p { font-size: 1.8rem; line-height: 1.8;}

#pageAbout section.column { width: 100%; height: 600px; position: relative;}
#pageAbout section.column .bg { opacity: 0;}
#pageAbout section.column .bg.active { opacity: 1;}
#pageAbout section.column .bg1-1 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: -3;}
#pageAbout section.column .bg1-2 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; clip-path: inset(0 75% 0 0); filter: blur(10px);}
#pageAbout section.column .bg2-1 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: -3;}
#pageAbout section.column .bg2-2 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; clip-path: inset(0 50% 0 25%); filter: blur(10px);}
#pageAbout section.column .bg3-1 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: -3;}
#pageAbout section.column .bg3-2 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; clip-path: inset(0 25% 0 50%); filter: blur(10px);}
#pageAbout section.column .bg4-1 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: -3;}
#pageAbout section.column .bg4-2 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; clip-path: inset(0 0 0 75%); filter: blur(10px);}

#pageAbout section.column .overlay { position: absolute; top: 0; left: 0; bottom: 0; right: 0; background: rgba(0, 0, 0, 0.3); z-index: -1;}
#pageAbout section.column > .inner { }
#pageAbout section.column ul { display: flex; list-style: none;}
#pageAbout section.column ul li { width: 25%; height: 600px; display: flex; justify-content: center; align-items: center; flex-direction: column; padding: 0 30px;}
#pageAbout section.column ul li.active { background: rgba(0, 0, 0, 0.3);}
#pageAbout section.column ul li .mi { font-size: 2.4rem; font-weight: 700; color: #fff; margin-bottom: 30px;}
#pageAbout section.column ul li p { font-size: 1.8rem; line-height: 1.8; color: #fff;}

#pageAbout section.expert { padding: 50px 0; background: #f7f8f9; position: relative;}
.anchor { position: absolute; top: -70px;}
#pageAbout section.expert > .inner { }
#pageAbout section.expert h2 { font-size: 3.0rem; font-weight: 700; text-align: center; margin-bottom: 30px;}
#pageAbout section.expert ul.main { list-style: none;}
#pageAbout section.expert ul.main > li { display: flex; justify-content: center; align-items: center; padding: 50px; background: #fff;}
#pageAbout section.expert ul.main > li:nth-of-type(2) { background: #f7f7f7; flex-direction: row-reverse;}
#pageAbout section.expert ul li .img { width: 20%; position: relative; border-radius: 30px; overflow: hidden;}
#pageAbout section.expert ul li .img img.spacer { width: 100%; height: auto;}
#pageAbout section.expert ul li .img img.photo { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover;}
#pageAbout section.expert ul li .txt1 { width: 45%; padding: 0 50px;}
#pageAbout section.expert ul li .txt1 .mi { font-size: 3.2rem; font-weight: 700; margin-bottom: 20px;}
#pageAbout section.expert ul li .txt1 p { font-size: 1.8rem; font-weight: 500; line-height: 1.8;}
/* #pageAbout section.expert ul li .txt2 { width: 35%;}
#pageAbout section.expert ul li .txt2 ul { }
#pageAbout section.expert ul li .txt2 ul li { line-height: 1.4;}
#pageAbout section.expert ul li .txt2 ul li + li { margin-top: 20px;} */

#pageAbout section.collaborating { padding: 50px 20px; background: #f7f8f9;}
#pageAbout section.collaborating > .inner { }
#pageAbout section.collaborating h2 { font-size: 3.0rem; font-weight: 700; text-align: center; margin-bottom: 30px;}
#pageAbout section.collaborating .swiper { width: 100%; height: 380px;}
#pageAbout section.collaborating .swiper-wrapper { width: 100%; height: 380px;}
#pageAbout section.collaborating .swiper-wrapper li { display: flex; background: #fff; padding: 30px; border-radius: 10px;}
#pageAbout section.collaborating .swiper-wrapper li .txt { width: 60%; display: flex; justify-content: center; flex-direction: column; padding: 50px;}
#pageAbout section.collaborating .swiper-wrapper li .txt .mi { font-size: 3.4rem; font-weight: 700; margin-bottom: 30px;}
#pageAbout section.collaborating .swiper-wrapper li .txt p { font-size: 1.8rem; line-height: 1.8;}
#pageAbout section.collaborating .swiper-wrapper li .img { flex: 1;}
#pageAbout section.collaborating .swiper-wrapper li .img img { width: 100%; height: 100%; object-fit: cover; border-radius: 10px;}
#pageAbout section.collaborating .thumslider { display: flex; justify-content: center; align-items: center;list-style: none; margin-top: 20px;}
#pageAbout section.collaborating .thumslider li {}
#pageAbout section.collaborating .thumslider li + li { margin-left: 10px;}
#pageAbout section.collaborating .thumslider li a { display: inline-block; background: #fff; border: 2px solid #c19648; padding: 12px 20px; text-decoration: none; color: #c19648; font-size: 1.8rem; border-radius: 5px;}
#pageAbout section.collaborating .thumslider li.active a { background: #c19648; color: #fff;}

/* NOTE: pageProduct */
#pageProduct section.hero { width: 100%; height: 700px; position: relative;}
#pageProduct section.hero .bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: -1;}
#pageProduct section.hero .inner { width: 970px; height: 600px; margin: 0 auto; display: flex; align-items: center;}
#pageProduct section.hero .inner .txt { width: 500px; color: #fff;}
#pageProduct section.hero .inner .txt .name { font-size: 3.4rem; font-weight: 500; letter-spacing: 0.3rem; line-height: 1.3; margin-bottom: 20px;}
#pageProduct section.hero .inner .txt .mi { font-size: 2.0rem; line-height: 1.5; margin-bottom: 20px;}
#pageProduct section.hero .inner .txt p { font-size: 1.8rem; line-height: 1.5;}
#pageProduct section.hero .inner .txt .btn { margin-top: 30px; text-align: center;}
#pageProduct section.hero .inner .txt .btn a { font-size: 1.8rem; display: inline-block; background: #fff; color: #c19648; font-weight: 600; padding: 10px 30px; border-radius: 30px; text-decoration: none; transition: 0.3s;}
#pageProduct section.hero .inner .txt .btn a:hover { background: #c19648; color: #fff; transition: 0.3s;}
#pageProduct section.hero .inner .img { flex: 1; text-align: right;}
#pageProduct section.hero .img img { height: 230px;}
#pageProduct section.hero .img img + img { margin-left: 10px;}
#pageProduct section.hero .link { display: flex; justify-content: center; align-items: center;}
#pageProduct section.hero ul { display: flex; background: rgba(255, 255,255, 0.1); border-radius: 20px; list-style: none;}
#pageProduct section.hero ul li { display: inline-block;}
#pageProduct section.hero ul li + li { margin-left: 10px;}
#pageProduct section.hero ul li a { display: inline-block; border-radius: 20px; padding: 10px 20px; color: #fff; font-weight: 600; text-decoration: none;}
#pageProduct section.hero ul li.active a { background: #967e3e;}
#pageProduct section.hero ul li a:hover { background: #967e3e;}

#pageProduct section.slider1 { background: #fff; padding: 50px 30px; overflow: hidden;}
#pageProduct section.slider1 h2 { font-size: 3.0rem; font-weight: 700; text-align: center; margin-bottom: 30px;}
#pageProduct section.slider1 .swiper { width: 100%; height: 380px; box-shadow: 0 0 8px #ccc;}
#pageProduct section.slider1 .swiper-wrapper { width: 100%; height: 380px;}
#pageProduct section.slider1 .swiper-wrapper li { display: flex; background: #fff;}

#pageProduct section.slider1 .swiper-wrapper li .txt { width: 40%; display: flex; justify-content: center; flex-direction: column; padding: 50px;}
#pageProduct section.slider1 .swiper-wrapper li .txt .mi { font-size: 3.4rem; font-weight: 700; margin-bottom: 30px;}
#pageProduct section.slider1 .swiper-wrapper li .txt p { font-size: 1.8rem; line-height: 1.8;}
#pageProduct section.slider1 .swiper-wrapper li .txt p span { color: #c19648;}
#pageProduct section.slider1 .swiper-wrapper li .img { flex: 1;}
#pageProduct section.slider1 .swiper-wrapper li .img img { width: 100%; height: 100%; object-fit: cover;}
#pageProduct section.slider1 .thumslider { display: flex; justify-content: center; align-items: center;list-style: none; margin-top: 20px;}
#pageProduct section.slider1 .thumslider li {}
#pageProduct section.slider1 .thumslider li + li { margin-left: 10px;}
#pageProduct section.slider1 .thumslider li a { display: inline-block; background: #fff; border: 2px solid #c19648; padding: 12px 20px; text-decoration: none; color: #c19648; font-size: 1.8rem; border-radius: 5px;}
#pageProduct section.slider1 .thumslider li.active a { background: #c19648; color: #fff;}

#pageProduct section.effects { background: #fff; width: 100%; padding: 50px 0;position: relative;}
#pageProduct section.effects > .inner { }
#pageProduct section.effects h2 { font-size: 3.0rem; font-weight: 700; text-align: center; margin-bottom: 30px;}
#pageProduct section.effects .block { padding: 50px 0;}
#pageProduct section.effects .block .inner { display: flex; width: 1050px; margin: 0 auto;}
#pageProduct section.effects .block .img { width: 400px;}
#pageProduct section.effects .block .img img { width: 100%; height: auto; border-radius: 20px;}
#pageProduct section.effects .block .txt { flex: 1; display: flex; justify-content: center; flex-direction: column; padding-left: 50px;}
#pageProduct section.effects .block .txt .mi { font-size: 3.2rem; font-weight: 600; margin-bottom: 20px;}
#pageProduct section.effects .block .txt p { font-size: 1.8rem; line-height: 1.8;}
#pageProduct section.effects .block:nth-of-type(2n) { background: #f6f6f6;}
#pageProduct section.effects .block:nth-of-type(2n) .inner { flex-direction: row-reverse;}
#pageProduct section.effects .block:nth-of-type(2n) .txt { padding-left: 0; padding-right: 50px;}

#pageProduct section.effects .block.target .img { transform: translateX(-50px); transition: 0.5s; opacity: 0;}
#pageProduct section.effects .block.target.active .img { transform: none; transition: 0.5s; opacity: 1;}
#pageProduct section.effects .block.target .txt { transform: translateX(50px); transition: 0.5s; opacity: 0;}
#pageProduct section.effects .block.target.active .txt { transform: none; transition: 0.5s; opacity: 1;}

#pageProduct section.effects .block:nth-of-type(2n).target .img { transform: translateX(50px); transition: 0.5s; opacity: 0;}
#pageProduct section.effects .block:nth-of-type(2n).target.active .img { transform: none; transition: 0.5s; opacity: 1;}
#pageProduct section.effects .block:nth-of-type(2n).target .txt { transform: translateX(-50px); transition: 0.5s; opacity: 0;}
#pageProduct section.effects .block:nth-of-type(2n).target.active .txt { transform: none; transition: 0.5s; opacity: 1;}

#pageProduct section.features { background: #fff; width: 100%; padding: 50px 0; position: relative;}
#pageProduct section.features > .inner { width: 1260px; margin: 0 auto;}
#pageProduct section.features h2 { font-size: 3.0rem; font-weight: 700; text-align: center; margin-bottom: 30px;}
#pageProduct section.features ul { display: flex; flex-wrap: wrap; list-style: none;}
#pageProduct section.features ul li { display: flex; width: 48%; margin-right: 4%; background: #fff; box-shadow: 0 0 8px #ccc; padding: 30px; margin-top: 30px; transition: 0.3s;}
#pageProduct section.features ul li:nth-of-type(2n) { margin-right: 0;}
#pageProduct section.features ul li:hover { transform: translateY(-10px); transition: 0.3s;}
#pageProduct section.features ul .img { width: 35%; display: flex; justify-content: center; align-items: center;}
#pageProduct section.features ul .img img { width: 100%; height: auto; border-radius: 5px;}
#pageProduct section.features ul .txt { flex: 1; display: flex; justify-content: center; flex-direction: column; padding-left: 20px;}
#pageProduct section.features ul .txt .mi { font-size: 2.2rem; font-weight: 600; margin-bottom: 10px;}
#pageProduct section.features ul .txt p { font-size: 1.6rem; line-height: 1.8; color: #666;}

#pageProduct section.authority { background: #fff; width: 100%; padding: 50px 0; position: relative;}
#pageProduct section.authority > .inner { }
#pageProduct section.authority h2 { font-size: 3.0rem; font-weight: 700; text-align: center; margin-bottom: 30px;}
#pageProduct section.authority .block { display: flex; width: 1050px; margin: 0 auto; padding: 20px 0; border-bottom: 1px solid #eee;}
#pageProduct section.authority .block .icon { font-size: 4.4rem; background: #f2f7fb; width: 100px; height: 100px; display: flex; justify-content: center; align-items: center; border-radius: 100%; margin-right: 50px;}
#pageProduct section.authority .block .txt { flex: 1;}
#pageProduct section.authority .block .txt .mi { font-size: 2.4rem; font-weight: 600; margin-bottom: 10px;}
#pageProduct section.authority .block .txt p { font-size: 1.8rem; line-height: 1.8;}

#pageProduct section.authority .block.target .icon { transform: translateX(-50px); transition: 0.5s; opacity: 0;}
#pageProduct section.authority .block.target.active .icon { transform: none; transition: 0.5s; opacity: 1;}
#pageProduct section.authority .block.target .txt { transform: translateX(50px); transition: 0.5s; opacity: 0;}
#pageProduct section.authority .block.target.active .txt { transform: none; transition: 0.5s; opacity: 1;}

#pageProduct section.slider2 { padding: 30px 0; overflow: hidden;}
#pageProduct section.slider2 h2 { font-size: 3.0rem; font-weight: 700; text-align: center; margin-bottom: 30px;}
#pageProduct section.slider2 .inner { padding: 30px 0; background: #f9f8f5; }
#pageProduct section.slider2 .swiper1 { width: 100%; height: 180px;}
#pageProduct section.slider2 .swiper2 { width: 100%; height: 180px; margin-top: 30px;}
#pageProduct section.slider2 .swiper-wrapper { width: 100%; height: 180px; transition-timing-function: linear;}
#pageProduct section.slider2 .swiper-wrapper li { width: 180px; height: 180px; border-radius: 100%; overflow: hidden; position: relative;}
#pageProduct section.slider2 .swiper-wrapper li + li { margin-left: 50px;}
#pageProduct section.slider2 .swiper-wrapper li img.spacer { width: 100%; height: auto;}
#pageProduct section.slider2 .swiper-wrapper li img.photo { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover;}
#pageProduct section.slider2 .swiper-wrapper li:hover .txt { opacity: 1; transition: 0.3s;}
#pageProduct section.slider2 .swiper-wrapper li:hover { transform: scale(1.1); transition: 0.3s;}
#pageProduct section.slider2 .swiper-wrapper li .txt { cursor: pointer; opacity: 0; position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; background: rgba(0,0,0,0.7); padding: 15px; display: flex; justify-content: center; align-items: center; flex-direction: column; transition: 0.3s;}
#pageProduct section.slider2 .swiper-wrapper li .txt .mi { color: #fff; font-size: 1.7rem; line-height: 1.3; font-weight: 600; text-align: center; margin-bottom: 5px;}
#pageProduct section.slider2 .swiper-wrapper li .txt p { color: #fff; font-size: 1.4rem; line-height: 1.3; text-align: center;}

#pageProduct section.comparison { background: #fff; width: 100%; padding: 50px 0; position: relative;}
#pageProduct section.comparison > .inner { }
#pageProduct section.comparison h2 { font-size: 3.0rem; font-weight: 700; text-align: center; margin-bottom: 30px;}
#pageProduct section.comparison .inner { width: 1000px; margin: 0 auto;}
#pageProduct section.comparison .block { display: flex;}
#pageProduct section.comparison .block:first-of-type div { background: #f6e9cd; color: #c19648;}
#pageProduct section.comparison .block div { width: 33.3%; padding: 20px 10px; font-size: 1.8rem; font-weight: 600; text-align: center;}
#pageProduct section.comparison .block:not(:first-of-type) div:first-of-type { color: #000; background: #f3f4f6;}
#pageProduct section.comparison .block:not(:first-of-type) div:nth-of-type(2) { color: #368237; background: #fff1f1;}
#pageProduct section.comparison .block:not(:first-of-type) div:nth-of-type(3) { color: #cb2d2d; background: #f2fbf4;}
#pageProduct section.comparison .block:first-of-type div:first-of-type { border-radius: 20px 0 0 0;}
#pageProduct section.comparison .block:first-of-type div:last-of-type { border-radius: 0 20px 0 0;}
#pageProduct section.comparison .block:last-of-type div:first-of-type { border-radius: 0 0 0 20px;}
#pageProduct section.comparison .block:last-of-type div:last-of-type { border-radius: 0 0 20px 0;}
#pageProduct section.comparison .block a { display: inline-block; color: #c19648; padding: 10px; border: 2px solid #c19648; text-decoration: none; border-radius: 20px; transition: 0.3s;}
#pageProduct section.comparison .block a:hover { background: #c19648; color: #fff; transition: 0.3s;}

#pageProduct section.users { background: #fff; width: 100%; padding: 50px 0; position: relative;}
#pageProduct section.users > .inner { width: 1260px; margin: 0 auto;}
#pageProduct section.users h2 { font-size: 3.0rem; font-weight: 700; text-align: center; margin-bottom: 30px;}
#pageProduct section.users ul { display: flex; flex-wrap: wrap;list-style: none;}
#pageProduct section.users ul li { width: 23%; margin-right: 2%; background: #fff; box-shadow: 0 0 5px #ccc; padding: 20px; margin-top: 20px;}
#pageProduct section.users ul li:nth-child(4n) { margin-right: 0;}
#pageProduct section.users ul li .mi { font-size: 1.8rem; font-weight: 600; margin-bottom: 5px;}
#pageProduct section.users ul li p { line-height: 1.5; color: #666;}

#pageProduct section.usage { background: #fff; width: 100%; padding: 50px 0; position: relative;}
#pageProduct section.usage > .inner { width: 1260px; margin: 0 auto; padding: 0 30px;}
#pageProduct section.usage h2 { font-size: 3.0rem; font-weight: 700; text-align: center; margin-bottom: 30px;}
#pageProduct section.usage ul { display: flex; justify-content: center; list-style: none;}
#pageProduct section.usage ul li { width: 30%;}
#pageProduct section.usage ul li + li { margin-left: 5%;}
#pageProduct section.usage ul li .mi { font-size: 2.0rem; font-weight: 600; color: #c19648; padding-bottom: 20px; border-bottom: 1px solid #ccc;}
#pageProduct section.usage ul li p { line-height: 1.8; margin-top: 20px;}
#pageProduct section.usage ul.sub { display: block; list-style: circle; margin-top: 20px; padding-left: 20px;}
#pageProduct section.usage ul.sub li { width: 100%;}
#pageProduct section.usage ul.sub li + li { margin: 10px 0 0 0;}

#pageProduct section.usage ul li.target .mi { transform: translateX(-30px); transition: 0.5s; opacity: 0;}
#pageProduct section.usage ul li.target.active .mi { transform: none; transition: 0.5s; opacity: 1;}
#pageProduct section.usage ul li.target p { transform: translateX(30px); transition: 0.5s; opacity: 0;}
#pageProduct section.usage ul li.target.active p { transform: none; transition: 0.5s; opacity: 1;}
#pageProduct section.usage ul li.target ul.sub { transform: translateX(30px); transition: 0.5s; opacity: 0;}
#pageProduct section.usage ul li.target.active ul.sub { transform: none; transition: 0.5s; opacity: 1;}

#pageProduct section.series { background: #fff; width: 100%; padding: 50px 0; position: relative;}
#pageProduct section.series > .inner { width: 1260px; margin: 0 auto; display: flex; flex-wrap: wrap;}
#pageProduct section.series h2 { font-size: 3.0rem; font-weight: 700; text-align: center; margin-bottom: 30px;}
#pageProduct section.series p.com { text-align: center;}
#pageProduct section.series .block { width: 48%; margin-right: 4%; background: #fff; padding: 20px; box-shadow: 0 0 8px #ccc; transition: 0.3s; margin-bottom: 40px;}
#pageProduct section.series .block:hover { transform: translateY(-10px); transition: 0.3s;}
#pageProduct section.series .block:nth-of-type(2n) { margin-right: 0;}
#pageProduct section.series .block .title { display: flex; margin-bottom: 20px;}
#pageProduct section.series .block .title .name { width: 60%; font-size: 2.2rem; font-weight: 700; color: #c19648; line-height: 1.3;}
#pageProduct section.series .block .title .spec { flex: 1; text-align: right; font-size: 1.4rem; line-height: 1.3;}
#pageProduct section.series .block .title .spec span { display: inline-block; margin-right: 5px; font-weight: 600; color: #c19648;}
#pageProduct section.series .block .line { display: flex; margin-bottom: 5px;}
#pageProduct section.series .block .line span:nth-of-type(1) { display: inline-block; font-weight: 600; margin-right: 10px;}
#pageProduct section.series .block .line span:nth-of-type(2) { flex: 1; display: inline-block; position: relative;}
#pageProduct section.series .block .line span:nth-of-type(2):after { content: ''; position: absolute; top: 50%; display: inline-block; width: 100%; height: 2px; background: #c19648; right: 0;}
#pageProduct section.series .block ul { list-style: none;}
#pageProduct section.series .block ul li { display: flex; background: #c19648; color: #fff; padding: 5px 0;}
#pageProduct section.series .block ul li span { display: block; width: 30px; display: flex; justify-content: center; align-items: center;}
#pageProduct section.series .block ul li p { flex: 1; font-weight: 500; line-height: 1.4;}
#pageProduct section.series .block ul li:nth-of-type(2n) { background: #f4f4f4; color: #c19648;}
#pageProduct section.series .block .txt { padding: 20px 0; font-size: 2.0rem; font-weight: 600; color: #ebddcf; line-height: 1.3; text-align: center;}
#pageProduct section.series .block .img { width: 100%;}
#pageProduct section.series .block .img img  { width: 100%;}

/* NOTE: pageRd */
#pageRd section.hero { width: 100%; height: 600px; position: relative;}
#pageRd section.hero .bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2;}
#pageRd section.hero .overlay { position: absolute; top: 0; left: 0; bottom: 0; right: 0; background: rgba(0, 0, 0, 0.3); z-index: -1;}
#pageRd section.hero .inner { width: 1260px; height: 600px; margin: 0 auto; display: flex; align-items: center; padding: 0 30px;}
#pageRd section.hero .inner .txt { width: 700px; color: #fff;}
#pageRd section.hero .inner .txt .mi { font-size: 3.4rem; font-weight: 500; letter-spacing: 0.3rem; line-height: 1.3; margin-bottom: 20px;}
#pageRd section.hero .inner .txt p { font-size: 1.8rem; line-height: 1.8;}

#pageRd section.effects { background: #fff; width: 100%; padding: 50px 0;position: relative;}
#pageRd section.effects > .inner { }
#pageRd section.effects h2 { font-size: 3.0rem; font-weight: 700; text-align: center; margin-bottom: 30px;}
#pageRd section.effects .block { padding: 50px 0;}
#pageRd section.effects .block .inner { display: flex; width: 1050px; margin: 0 auto;}
#pageRd section.effects .block .img { width: 400px;}
#pageRd section.effects .block .img img { width: 100%; height: auto; border-radius: 20px;}
#pageRd section.effects .block .txt { flex: 1; display: flex; justify-content: center; flex-direction: column; padding-left: 50px;}
#pageRd section.effects .block .txt .mi { font-size: 2.8rem; font-weight: 600; margin-bottom: 20px;}
#pageRd section.effects .block .txt p { font-size: 1.8rem; line-height: 1.8;}
#pageRd section.effects .block:nth-of-type(2n) { background: #f6f6f6;}
#pageRd section.effects .block:nth-of-type(2n) .inner { flex-direction: row-reverse;}
#pageRd section.effects .block:nth-of-type(2n) .txt { padding-left: 0; padding-right: 50px;}

#pageRd section.effects .block.target .img { transform: translateX(-50px); transition: 0.5s; opacity: 0;}
#pageRd section.effects .block.target.active .img { transform: none; transition: 0.5s; opacity: 1;}
#pageRd section.effects .block.target .txt { transform: translateX(50px); transition: 0.5s; opacity: 0;}
#pageRd section.effects .block.target.active .txt { transform: none; transition: 0.5s; opacity: 1;}

/* 新增：研发页面Hero Section更新 */
#pageRd section.hero .inner .txt .sub { font-size: 2.0rem; font-weight: 400; letter-spacing: 0.2rem; margin-bottom: 15px; opacity: 0.9;}
#pageRd section.effects .block .txt .patent { font-size: 1.4rem; color: #c19648; margin-bottom: 15px; font-weight: 500;}

/* 新增：研发理念模块 */
#pageRd section.rd-philosophy { background: #f8f9fa; padding: 60px 0;}
#pageRd section.rd-philosophy .inner { width: 1050px; margin: 0 auto;}
#pageRd section.rd-philosophy ul { list-style: none; display: flex; justify-content: space-between; gap: 25px;}
#pageRd section.rd-philosophy ul li { flex: 1; background: #fff; padding: 35px 25px; border-radius: 12px; text-align: center; box-shadow: 0 4px 15px rgba(0,0,0,0.06); transition: 0.3s;}
#pageRd section.rd-philosophy ul li:hover { transform: translateY(-5px); box-shadow: 0 8px 25px rgba(0,0,0,0.1);}
#pageRd section.rd-philosophy ul li .icon { font-size: 3.0rem; margin-bottom: 15px;}
#pageRd section.rd-philosophy ul li .txt .mi { font-size: 1.8rem; font-weight: 600; color: #333; margin-bottom: 10px;}
#pageRd section.rd-philosophy ul li .txt p { font-size: 1.4rem; color: #666; line-height: 1.6;}
#pageRd section.rd-philosophy ul li.target { transform: translateY(30px); opacity: 0; transition: 0.6s;}
#pageRd section.rd-philosophy ul li.target.active { transform: translateY(0); opacity: 1;}

/* 新增：研发里程碑模块 */
#pageRd section.slider1 { background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%); padding: 80px 0; color: #fff;}
#pageRd section.slider1 h2 { font-size: 3.0rem; font-weight: 700; text-align: center; margin-bottom: 50px; color: #fff;}
#pageRd section.slider1 .inner { width: 100%; max-width: 1050px; margin: 0 auto; padding: 0 30px; box-sizing: border-box;}
#pageRd section.slider1 .milestoneSlider { width: 100%; height: 280px; overflow: hidden; position: relative;}
#pageRd section.slider1 .milestoneSlider .slides-wrapper { position: relative; width: 100%; height: 100%;}
#pageRd section.slider1 .milestoneSlider .slide { display: flex; align-items: center; gap: 50px; height: 280px; box-sizing: border-box;}
#pageRd section.slider1 .milestoneSlider .slide .txt { flex: 1;}
#pageRd section.slider1 .milestoneSlider .slide .txt .mi { font-size: 2.4rem; font-weight: 600; margin-bottom: 20px; color: #c19648;}
#pageRd section.slider1 .milestoneSlider .slide .txt p { font-size: 1.6rem; line-height: 1.8; color: rgba(255,255,255,0.85);}
#pageRd section.slider1 .milestoneSlider .slide .img { width: 350px; flex-shrink: 0;}
#pageRd section.slider1 .milestoneSlider .slide .img img { width: 100%; height: 220px; object-fit: cover; border-radius: 12px;}
#pageRd section.slider1 .thumslider { list-style: none; display: flex; justify-content: center; gap: 15px; margin-top: 30px;}
#pageRd section.slider1 .thumslider li a { display: inline-block; padding: 10px 25px; background: rgba(255,255,255,0.1); border-radius: 25px; color: rgba(255,255,255,0.7); text-decoration: none; font-size: 1.4rem; transition: 0.3s;}
#pageRd section.slider1 .thumslider li a:hover,
#pageRd section.slider1 .thumslider li a.active { background: #c19648; color: #fff;}

/* 新增：品质认证模块 */
#pageRd section.authority { background: #fff; padding: 60px 0;}
#pageRd section.authority .inner { width: 1050px; margin: 0 auto;}
#pageRd section.authority .inner > h2 { font-size: 3.0rem; font-weight: 700; text-align: center; margin-bottom: 40px;}
#pageRd section.authority .inner > .block { display: flex; align-items: flex-start; background: #f8f9fa; padding: 30px 35px; border-radius: 12px; margin-bottom: 20px; transition: 0.3s;}
#pageRd section.authority .inner > .block:hover { box-shadow: 0 5px 20px rgba(0,0,0,0.08);}
#pageRd section.authority .inner > .block .icon { font-size: 2.8rem; margin-right: 25px; flex-shrink: 0;}
#pageRd section.authority .inner > .block .txt .mi { font-size: 1.8rem; font-weight: 600; color: #333; margin-bottom: 8px;}
#pageRd section.authority .inner > .block .txt p { font-size: 1.5rem; color: #666; line-height: 1.7;}
#pageRd section.authority .inner > .block.target { transform: translateX(-30px); opacity: 0; transition: 0.5s;}
#pageRd section.authority .inner > .block.target.active { transform: translateX(0); opacity: 1;}

/* 新增：研发实力数据模块 */
#pageRd section.rd-stats { background: linear-gradient(135deg, #c19648 0%, #d4a85a 100%); padding: 70px 0;}
#pageRd section.rd-stats .inner { width: 1050px; margin: 0 auto;}
#pageRd section.rd-stats h2 { font-size: 3.0rem; font-weight: 700; text-align: center; color: #fff; margin-bottom: 50px;}
#pageRd section.rd-stats ul { list-style: none; display: flex; justify-content: space-between; gap: 30px;}
#pageRd section.rd-stats ul li { flex: 1; text-align: center; background: rgba(255,255,255,0.15); padding: 40px 20px; border-radius: 12px; backdrop-filter: blur(10px);}
#pageRd section.rd-stats ul li .number { font-size: 4.5rem; font-weight: 700; color: #fff; line-height: 1;}
#pageRd section.rd-stats ul li .number span { font-size: 2.5rem;}
#pageRd section.rd-stats ul li .label { font-size: 1.8rem; font-weight: 600; color: #fff; margin: 15px 0 8px;}
#pageRd section.rd-stats ul li p { font-size: 1.3rem; color: rgba(255,255,255,0.8);}
#pageRd section.rd-stats ul li.target { transform: translateY(30px); opacity: 0; transition: 0.6s;}
#pageRd section.rd-stats ul li.target.active { transform: translateY(0); opacity: 1;}

/* 新增：研究合作机构模块 */
#pageRd section.collaborating { background: #f8f9fa; padding: 80px 0;}
#pageRd section.collaborating h2 { font-size: 3.0rem; font-weight: 700; text-align: center; margin-bottom: 50px; color: #333;}
#pageRd section.collaborating .inner { width: 100%; max-width: 1050px; margin: 0 auto; padding: 0 30px; box-sizing: border-box;}
#pageRd section.collaborating .partnerSlider { width: 100%; height: 280px; overflow: hidden; background: #fff; border-radius: 16px; box-shadow: 0 4px 20px rgba(0,0,0,0.08); position: relative;}
#pageRd section.collaborating .partnerSlider .slides-wrapper { position: relative; width: 100%; height: 100%;}
#pageRd section.collaborating .partnerSlider .slide { display: flex; align-items: center; gap: 50px; height: 280px; padding: 30px 50px; box-sizing: border-box;}
#pageRd section.collaborating .partnerSlider .slide .txt { flex: 1;}
#pageRd section.collaborating .partnerSlider .slide .txt .mi { font-size: 2.4rem; font-weight: 600; margin-bottom: 20px; color: #c19648;}
#pageRd section.collaborating .partnerSlider .slide .txt p { font-size: 1.6rem; line-height: 1.8; color: #555;}
#pageRd section.collaborating .partnerSlider .slide .img { width: 350px; flex-shrink: 0;}
#pageRd section.collaborating .partnerSlider .slide .img img { width: 100%; height: 220px; object-fit: cover; border-radius: 12px;}
#pageRd section.collaborating .thumslider { list-style: none; display: flex; justify-content: center; gap: 15px; margin-top: 30px;}
#pageRd section.collaborating .thumslider li a { display: inline-block; padding: 10px 25px; background: #e8e8e8; border-radius: 25px; color: #666; text-decoration: none; font-size: 1.4rem; transition: 0.3s;}
#pageRd section.collaborating .thumslider li a:hover,
#pageRd section.collaborating .thumslider li a.active { background: #c19648; color: #fff;}

/* NOTE: pageRdfeedback */
#pageRdfeedback section.hero { width: 100%; height: 600px; position: relative;}
#pageRdfeedback section.hero .bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2;}
#pageRdfeedback section.hero .overlay { position: absolute; top: 0; left: 0; bottom: 0; right: 0; background: rgba(0, 0, 0, 0.3); z-index: -1;}
#pageRdfeedback section.hero .inner { width: 1260px; height: 600px; margin: 0 auto; display: flex; align-items: center; padding: 0 30px;}
#pageRdfeedback section.hero .inner .txt { width: 700px; color: #fff;}
#pageRdfeedback section.hero .inner .txt .mi { font-size: 3.4rem; font-weight: 500; letter-spacing: 0.3rem; line-height: 1.3; margin-bottom: 20px;}
#pageRdfeedback section.hero .inner .txt p { font-size: 1.8rem; line-height: 1.8;}

/* NOTE: pageTopics */
#pageTopics section.hero { width: 100%; height: 400px; position: relative;}
#pageTopics section.hero .bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2;}
#pageTopics section.hero .overlay { position: absolute; top: 0; left: 0; bottom: 0; right: 0; background: rgba(0, 0, 0, 0.3); z-index: -1;}
#pageTopics section.hero .inner { width: 1260px; height: 400px; margin: 0 auto; display: flex; align-items: center; padding: 0 30px;}
#pageTopics section.hero .inner .txt { width: 700px; color: #fff;}
#pageTopics section.hero .inner .txt .mi { font-size: 3.4rem; font-weight: 500; letter-spacing: 0.3rem; line-height: 1.3; margin-bottom: 20px;}

#pageTopics section.tab { margin: 50px 0;}
#pageTopics section.tab > .inner { width: 1260px; margin: 0 auto;}
#pageTopics section.tab ul { display: flex; flex-wrap: wrap; list-style: none;}
#pageTopics section.tab ul li + li { margin-left: 30px;}
#pageTopics section.tab ul li a { display: inline-block; padding: 5px 0; color: #888; text-decoration: none;}
#pageTopics section.tab ul li a.active { color: #c19648; border-bottom: 2px solid #c19648;}

#pageTopics section.topics { display: none; margin: 0 0 50px 0;}
#pageTopics section.topics.active { display: block;}
#pageTopics section.topics > .inner { width: 1260px; margin: 0 auto;}
#pageTopics section.topics ul { display: flex; flex-wrap: wrap; list-style: none;}
#pageTopics section.topics ul li { width: 30%; background: #fff; box-shadow: 0 0 8px #ccc; margin-right: 5%; margin-bottom: 40px;}
#pageTopics section.topics ul li:hover img.photo { transform: scale(1.05); transition: 0.3s;}
#pageTopics section.topics ul li:nth-of-type(3n) { margin-right: 0;}
#pageTopics section.topics ul li a { text-decoration: none;}
#pageTopics section.topics ul li .img { width: 100%; position: relative; overflow: hidden;}
#pageTopics section.topics ul li .img img.spacer { width: 100%; height: auto;}
#pageTopics section.topics ul li .img img.photo { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; transition: 0.3s;}
#pageTopics section.topics ul li .txt { padding: 20px;}
#pageTopics section.topics ul li .txt .mi { font-size: 2.0rem; font-weight: 600; line-height: 1.4; margin-bottom: 20px; color: #000;}
#pageTopics section.topics ul li .txt .date { font-family: 'Noto Sans', sans-serif; font-size: 1.5rem; font-weight: 500; line-height: 1.4; color: #ccc; margin-bottom: 20px;}
#pageTopics section.topics ul li .txt p { font-weight: 400; line-height: 1.6; color: #888;}

/* NOTE: pageSingle */
#pageSingle section.contents { padding: 100px 0;}
#pageSingle section > .inner { width: 1200px; padding: 100px; background: #fff; box-shadow: 0 0 8px #ccc; margin: 0 auto;}
#pageSingle section.contents .date { display: inline-block; font-size: 1.6rem; letter-spacing: 1px; color: #666; padding: 20px 0;}

#pageSingle header { background: #fff;}
#pageSingle header .logo_wh { display: none;}
#pageSingle header .logo_dark { display: block;}
#pageSingle header .inner ul.main > li { color: #c19648;}
#pageSingle header .inner ul.main > li a, #pageSingle header .inner ul.main > li span { color: #c19648;}

/* NOTE: ネイティブCSS */
.native-block p { display: block; margin: 30px 0; font-size: 1.6rem; line-height: 2.0;}
.native-block a { color: #0066ff;}
.native-block strong { font-weight: bold; }
.native-block em { font-style: italic; }
.native-block h1 { font-size: 3.4rem; font-weight: 500; line-height: 1.3; margin-bottom: 30px;}
.native-block h2 { font-size: 3.0rem; font-weight: 500; margin: 50px 0 30px 0; line-height: 1.3; position: relative;}
.native-block h3 { font-size: 2.6rem; font-weight: 500; margin: 30px 0; line-height: 1.3;}
.native-block h4 { font-size: 2.0rem; font-weight: 500; margin: 20px 0; line-height: 1.3;}
.native-block h5 { font-size: 1.6rem; font-weight: 500; line-height: 1.3;}
.native-block ul { padding-left: 20px; line-height: 1.8; margin-bottom: 20px;}
.native-block ol { padding-left: 20px; line-height: 1.8; margin-bottom: 20px;}
.native-block blockquote { display: block; -webkit-margin-before: 1em; -webkit-margin-after: 1em; -webkit-margin-start: 40px; -webkit-margin-end: 40px;}
.native-block .aligncenter { display: block; width: 100%; margin: 0 auto; text-align: center;}
.native-block .alignright { float: right; margin: 0 0 10px 20px;}
.native-block .alignleft { float: left; margin: 0 20px 10px 0;}
.native-block img { max-width: 100%; height: auto;}
.native-block figure figcaption { display: block; width: 100%; text-align: center; font-size: 1.5rem;}
.native-block figure.aligncenter figcaption { display: block; width: 100%; text-align: center; font-size: 1.4rem;}
.native-block hr.wp-block-separator { border-top: 1px solid #ccc; border-bottom: 0;}
.native-block figure.wp-block-table { margin: 30px 0;}

/* NOTE: pageContact */
#pageContact section.hero { width: 100%; height: 400px; position: relative;}
#pageContact section.hero .bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2;}
#pageContact section.hero .overlay { position: absolute; top: 0; left: 0; bottom: 0; right: 0; background: rgba(0, 0, 0, 0.3); z-index: -1;}
#pageContact section.hero .inner { width: 1260px; height: 400px; margin: 0 auto; display: flex; align-items: center; padding: 0 30px;}
#pageContact section.hero .inner .txt { width: 700px; color: #fff;}
#pageContact section.hero .inner .txt .mi { font-size: 3.4rem; font-weight: 500; letter-spacing: 0.3rem; line-height: 1.3; margin-bottom: 20px;}

#pageContact section.body > .inner { width: 1000px; margin: 0 auto; padding: 50px 0;}
#pageContact section.body p { font-size: 1.5rem; line-height: 1.6;}

input, button { all: unset;}
select, textarea { font-size: 1.8rem; margin: 0; padding: 0; background: none; border: none; border-radius: 0; outline: none; -webkit-appearance: none; -moz-appearance: none; appearance: none;}
select::-ms-expand { display: none; }

input[type="text"], input[type="email"], input[type="tel"], input[type="number"], input[type="date"] { font-size: 1.8rem; height: 50px; width: 100%; text-indent: 10px; border-radius: 3px; border: 1px solid #ccc; background: #f6f6f6; align-items: center;}
textarea { width: 100%; height: 100px; padding: 10px; background: #f6f6f6; border-radius: 3px; border: 1px solid #ccc;}
button { font-size: 1.8rem; letter-spacing: 1px; display: inline-block; color: #fff; text-align: center; width: 500px; cursor: pointer; padding: 8px 0; background: #c19648; border-radius: 20px;}
button.back { background: #f48033; color: #fff;}
button + button { margin-top: 10px;}
button:hover { opacity: 0.9;}
span.error { display: inline-block !important; background: #ffe5e8; margin: 5px 0; padding: 5px 15px;font-weight: 500;}
textarea::placeholder { color: #666; font-size: 1.6rem;}

/* input[type="radio"],input[type="checkbox"] */
input[type="checkbox"], input[type="radio"] { display: none;}
span.mwform-checkbox-field-text, span.mwform-radio-field-text { position: relative; display: inline-block; padding-left: 30px; font-weight: 100;}
span.mwform-checkbox-field-text::before { content: ""; position: absolute; top: 3px; left: 0; width: 20px; height: 20px; background: #fff; border: 1px solid #ccc;}
span.mwform-radio-field-text::before { content: ""; position: absolute; top: 3px; left: 0; width: 20px; height: 20px; border-radius: 50%; background: #fff; border: 1px solid #ccc;}
input[type="checkbox"]:checked + span.mwform-checkbox-field-text::after { content: ""; position: absolute; top: 8px; left: 5px; width: 10px; height: 10px; background: #444;}
input[type="radio"]:checked + span.mwform-radio-field-text::after { content: ""; position: absolute; top: 8px; left: 5px; width: 10px; height: 10px; border-radius: 50%; background: #444;}

.vertical-item span.mwform-radio-field-text::before { top: 7px;}
.vertical-item input[type="radio"]:checked + span.mwform-radio-field-text::after { top: 12px;}

#pageContact .form { margin-top: 20px;}
#pageContact .form dl { border-bottom: 1px solid #ddd;}
#pageContact .form dl:first-of-type { border-top: 1px solid #ddd;}
#pageContact .form dl dt { line-height: 1.2; width: 100%; padding: 20px 0 0 0;}
#pageContact .form span.required { font-size: 1.1rem; line-height: 1.0; background: #fc1414; padding: 3px 7px; color: #fff; margin-right: 8px; margin-top: 2px; white-space: nowrap; border-radius: 3px;}
#pageContact .form span.any { font-size: 1.1rem; line-height: 1.0; background: #999; padding: 3px 7px; color: #fff; margin-right: 8px; margin-top: 2px; white-space: nowrap; border-radius: 3px;}
#pageContact .form dl dd { width: 100%; padding: 20px 0;}
#pageContact .form .formbt { padding: 10px 0; text-align: center;}

/* 確認画面 */
#pageContact section .mw_wp_form_confirm span.required { display: none;}
#pageContact section .mw_wp_form_confirm span.any { display: none;}
#pageContact section .mw_wp_form_confirm dl { padding-bottom: 20px;}
#pageContact section .mw_wp_form_confirm dl dd { font-size: 1.8rem; background: #f6f6f6;  border-radius: 3px; padding: 20px; margin-top: 20px;}

/* 完了画面 */
#pageContact section.thanks { text-align: center; font-size: 1.6rem; line-height: 1.6; padding: 80px 0;}
#pageContact section.thanks .btn { margin-top: 30px; text-align: center;}
#pageContact section.thanks .btn a { display: inline-block; text-decoration: none; text-align: center; font-size: 1.8rem; line-height: 1.0; color: #fff; padding: 12px 30px; background: #222; border-radius: 20px;}
#pageContact section.thanks .btn a:hover { background: #000;}

/* NOTE: pageNotfound */
#pageNotfound section.body > .inner { width: 800px; margin: 0 auto; text-align: center; padding: 80px 0;}
#pageNotfound section.body span { font-size: 3.8rem; color: #ccc; letter-spacing: 2px;}
#pageNotfound section.body h1 { font-size: 1.8rem; font-weight: 400;}
#pageNotfound section.body p { margin: 50px 0; font-size: 1.5rem; line-height: 1.5;}
#pageNotfound section.body .btn { margin-top: 50px; text-align: center;}
#pageNotfound section.body .btn a { display: inline-block; text-decoration: none; text-align: center; font-size: 1.8rem; line-height: 1.0; color: #fff; padding: 12px 30px; background: #222; border-radius: 20px;}
#pageNotfound section.body .btn a:hover { background: #000;}

/* NOTE: pageAbout 擴展樣式 - 使用與產品頁一致的佈局 */
/* 品牌歷程 - slider1 */
#pageAbout section.slider1 { background: #fff; padding: 50px 30px; overflow: hidden;}
#pageAbout section.slider1 h2 { font-size: 3.0rem; font-weight: 700; text-align: center; margin-bottom: 30px;}
#pageAbout section.slider1 .inner { width: 100%; max-width: 1200px; margin: 0 auto;}
#pageAbout section.slider1 .swiper { width: 100%; height: 380px; box-shadow: 0 0 8px #ccc;}
#pageAbout section.slider1 .swiper-wrapper { width: 100%; height: 380px;}
#pageAbout section.slider1 .swiper-wrapper li { display: flex; background: #fff;}
#pageAbout section.slider1 .swiper-wrapper li .txt { width: 40%; display: flex; justify-content: center; flex-direction: column; padding: 50px;}
#pageAbout section.slider1 .swiper-wrapper li .txt .mi { font-size: 2.4rem; font-weight: 700; margin-bottom: 20px; color: #c19648;}
#pageAbout section.slider1 .swiper-wrapper li .txt p { font-size: 1.8rem; line-height: 1.8; color: #555;}
#pageAbout section.slider1 .swiper-wrapper li .img { flex: 1;}
#pageAbout section.slider1 .swiper-wrapper li .img img { width: 100%; height: 100%; object-fit: cover;}
#pageAbout section.slider1 .thumslider { display: flex; justify-content: center; align-items: center; list-style: none; margin-top: 20px;}
#pageAbout section.slider1 .thumslider li + li { margin-left: 10px;}
#pageAbout section.slider1 .thumslider li a { display: inline-block; background: #fff; border: 2px solid #c19648; padding: 12px 20px; text-decoration: none; color: #c19648; font-size: 1.8rem; border-radius: 5px; transition: 0.3s;}
#pageAbout section.slider1 .thumslider li a:hover { background: #faf6f0;}
#pageAbout section.slider1 .thumslider li.active a { background: #c19648; color: #fff;}

/* 核心專利技術 - effects */
#pageAbout section.effects { background: #fff; width: 100%; padding: 50px 0; position: relative;}
#pageAbout section.effects > .inner { width: 1050px; margin: 0 auto;}
#pageAbout section.effects > .inner > h2 { font-size: 3.0rem; font-weight: 700; text-align: center; margin-bottom: 30px;}
#pageAbout section.effects .block { padding: 50px 0;}
#pageAbout section.effects .block .inner { display: flex; width: 1050px; margin: 0 auto;}
#pageAbout section.effects .block .img { width: 400px;}
#pageAbout section.effects .block .img img { width: 100%; height: auto; border-radius: 20px;}
#pageAbout section.effects .block .txt { flex: 1; display: flex; justify-content: center; flex-direction: column; padding-left: 50px;}
#pageAbout section.effects .block .txt .mi { font-size: 2.4rem; font-weight: 600; margin-bottom: 20px;}
#pageAbout section.effects .block .txt p { font-size: 1.8rem; line-height: 1.8; color: #666;}
#pageAbout section.effects .block:nth-of-type(2n) { background: #f6f6f6;}
#pageAbout section.effects .block:nth-of-type(2n) .inner { flex-direction: row-reverse;}
#pageAbout section.effects .block:nth-of-type(2n) .txt { padding-left: 0; padding-right: 50px;}
#pageAbout section.effects .block.target .img { transform: translateX(-50px); transition: 0.5s; opacity: 0;}
#pageAbout section.effects .block.target.active .img { transform: none; transition: 0.5s; opacity: 1;}
#pageAbout section.effects .block.target .txt { transform: translateX(50px); transition: 0.5s; opacity: 0;}
#pageAbout section.effects .block.target.active .txt { transform: none; transition: 0.5s; opacity: 1;}
#pageAbout section.effects .block:nth-of-type(2n).target .img { transform: translateX(50px); transition: 0.5s; opacity: 0;}
#pageAbout section.effects .block:nth-of-type(2n).target.active .img { transform: none; transition: 0.5s; opacity: 1;}
#pageAbout section.effects .block:nth-of-type(2n).target .txt { transform: translateX(-50px); transition: 0.5s; opacity: 0;}
#pageAbout section.effects .block:nth-of-type(2n).target.active .txt { transform: none; transition: 0.5s; opacity: 1;}

/* 品質認證/研發實力 - authority */
#pageAbout section.authority { background: #fff; width: 100%; padding: 50px 0; position: relative;}
#pageAbout section.authority > .inner { width: 1050px; margin: 0 auto;}
#pageAbout section.authority > .inner > h2 { font-size: 3.0rem; font-weight: 700; text-align: center; margin-bottom: 30px;}
#pageAbout section.authority > .inner > .block { display: flex; width: 100%; padding: 20px 0; border-bottom: 1px solid #eee;}
#pageAbout section.authority > .inner > .block:last-child { border-bottom: none;}
#pageAbout section.authority .block .icon { font-size: 4.4rem; background: #f2f7fb; width: 100px; height: 100px; display: flex; justify-content: center; align-items: center; border-radius: 100%; margin-right: 50px;}
#pageAbout section.authority .block .txt { flex: 1; display: flex; flex-direction: column; justify-content: center;}
#pageAbout section.authority .block .txt .mi { font-size: 2.4rem; font-weight: 600; margin-bottom: 10px;}
#pageAbout section.authority .block .txt p { font-size: 1.8rem; line-height: 1.8; color: #666;}
#pageAbout section.authority .block.target .icon { transform: translateX(-50px); transition: 0.5s; opacity: 0;}
#pageAbout section.authority .block.target.active .icon { transform: none; transition: 0.5s; opacity: 1;}
#pageAbout section.authority .block.target .txt { transform: translateX(50px); transition: 0.5s; opacity: 0;}
#pageAbout section.authority .block.target.active .txt { transform: none; transition: 0.5s; opacity: 1;}

/* 產品系列 - products-grid */
#pageAbout section.products-grid { padding: 50px 0; overflow: hidden; background: #f6f6f6;}
#pageAbout section.products-grid > .inner { width: 1050px; margin: 0 auto;}
#pageAbout section.products-grid > .inner > h2 { font-size: 3.0rem; font-weight: 700; text-align: center; margin-bottom: 30px;}
#pageAbout section.products-grid ul { display: flex; justify-content: center; list-style: none; gap: 30px;}
#pageAbout section.products-grid ul li { width: 230px; background: #fff; border-radius: 10px; box-shadow: 0 0 8px #ccc; overflow: hidden; transition: 0.3s;}
#pageAbout section.products-grid ul li:hover { transform: translateY(-10px); box-shadow: 0 10px 25px rgba(0,0,0,0.15);}
#pageAbout section.products-grid ul li a { display: block; text-decoration: none; color: inherit;}
#pageAbout section.products-grid ul li .img-wrap { width: 100%; height: 160px; background: linear-gradient(135deg, #faf8f5 0%, #f0ece6 100%); display: flex; justify-content: center; align-items: center; padding: 20px;}
#pageAbout section.products-grid ul li .img-wrap img { max-width: 90%; max-height: 120px; object-fit: contain; transition: 0.3s;}
#pageAbout section.products-grid ul li:hover .img-wrap img { transform: scale(1.08);}
#pageAbout section.products-grid ul li .txt { padding: 20px 15px; text-align: center; background: #fff;}
#pageAbout section.products-grid ul li .txt .mi { font-size: 1.8rem; font-weight: 600; color: #c19648; margin-bottom: 8px;}
#pageAbout section.products-grid ul li .txt p { font-size: 1.4rem; line-height: 1.5; color: #888;}
#pageAbout section.products-grid ul li.target { transform: translateY(20px); opacity: 0; transition: 0.5s;}
#pageAbout section.products-grid ul li.target.active { transform: translateY(0); opacity: 1;}
#pageAbout section.products-grid ul li.target:nth-child(2) { transition-delay: 0.1s;}
#pageAbout section.products-grid ul li.target:nth-child(3) { transition-delay: 0.2s;}
#pageAbout section.products-grid ul li.target:nth-child(4) { transition-delay: 0.3s;}

/* ========== FAQ Page Styles ========== */
#pageFaq section.hero { width: 100%; height: 420px; position: relative;}
#pageFaq section.hero .bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2;}
#pageFaq section.hero .overlay { position: absolute; top: 0; left: 0; bottom: 0; right: 0; background: linear-gradient(135deg, rgba(0,0,0,0.6) 0%, rgba(0,0,0,0.3) 100%); z-index: -1;}
#pageFaq section.hero .inner { width: 1050px; height: 420px; margin: 0 auto; display: flex; align-items: center; justify-content: center; padding: 0 30px;}
#pageFaq section.hero .inner .txt { width: 100%; color: #fff; text-align: center;}
#pageFaq section.hero .inner .txt .mi { font-size: 4.0rem; font-weight: 700; letter-spacing: 0.2rem; margin-bottom: 15px;}
#pageFaq section.hero .inner .txt .sub { font-size: 1.8rem; font-weight: 400; margin-bottom: 20px; opacity: 0.9; letter-spacing: 2px;}
#pageFaq section.hero .inner .txt p { font-size: 1.6rem; line-height: 1.8; max-width: 700px; margin: 0 auto;}

#pageFaq section.faq-category { background: #fff; padding: 30px 0; border-bottom: 1px solid #eee; position: sticky; top: 70px; z-index: 90;}
#pageFaq section.faq-category .inner { width: 1050px; margin: 0 auto;}
#pageFaq section.faq-category .category-nav { display: flex; justify-content: center; gap: 15px;}
#pageFaq section.faq-category .category-nav a { display: inline-block; padding: 12px 30px; background: #f5f5f5; color: #666; text-decoration: none; border-radius: 30px; font-size: 1.6rem; font-weight: 500; transition: 0.3s;}
#pageFaq section.faq-category .category-nav a:hover { background: #c19648; color: #fff;}
#pageFaq section.faq-category .category-nav a.active { background: #c19648; color: #fff;}

#pageFaq section.faq-list { padding: 80px 0 60px;}
#pageFaq section.faq-list:nth-of-type(odd) { background: #faf9f7;}
#pageFaq section.faq-list:nth-of-type(even) { background: #fff;}
#pageFaq section.faq-list .inner { width: 900px; margin: 0 auto;}
#pageFaq section.faq-list h2 { font-size: 3.2rem; font-weight: 700; text-align: center; margin-bottom: 50px; color: #333; position: relative;}
#pageFaq section.faq-list h2:after { content: ''; display: block; width: 60px; height: 3px; background: #c19648; margin: 15px auto 0;}

#pageFaq .faq-item { background: #fff; border-radius: 12px; margin-bottom: 20px; box-shadow: 0 2px 12px rgba(0,0,0,0.06); overflow: hidden; transition: 0.3s;}
#pageFaq .faq-item:hover { box-shadow: 0 4px 20px rgba(0,0,0,0.1);}
#pageFaq .faq-item.target { transform: translateY(20px); opacity: 0; transition: 0.5s;}
#pageFaq .faq-item.target.active { transform: translateY(0); opacity: 1;}

#pageFaq .faq-item .question { display: flex; align-items: center; padding: 25px 30px; cursor: pointer; background: #fff; transition: 0.3s;}
#pageFaq .faq-item .question:hover { background: #fdf8f0;}
#pageFaq .faq-item .q-icon { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; background: linear-gradient(135deg, #c19648 0%, #d4aa5c 100%); color: #fff; font-size: 2.0rem; font-weight: 700; border-radius: 50%; flex-shrink: 0;}
#pageFaq .faq-item .q-text { flex: 1; margin-left: 20px; font-size: 1.8rem; font-weight: 600; color: #333; line-height: 1.5;}
#pageFaq .faq-item .arrow { width: 20px; height: 20px; position: relative; flex-shrink: 0; transition: 0.3s;}
#pageFaq .faq-item .arrow:before, #pageFaq .faq-item .arrow:after { content: ''; position: absolute; background: #999; transition: 0.3s;}
#pageFaq .faq-item .arrow:before { width: 12px; height: 2px; top: 50%; left: 50%; transform: translate(-50%, -50%) rotate(45deg);}
#pageFaq .faq-item .arrow:after { width: 12px; height: 2px; top: 50%; right: 50%; transform: translate(50%, -50%) rotate(-45deg);}
#pageFaq .faq-item.open .arrow:before { transform: translate(-50%, -50%) rotate(-45deg);}
#pageFaq .faq-item.open .arrow:after { transform: translate(50%, -50%) rotate(45deg);}

#pageFaq .faq-item .answer { display: none; padding: 0 30px 30px 90px; background: #fdf8f0;}
#pageFaq .faq-item.open .answer { display: block;}
#pageFaq .faq-item .a-icon { display: none;}
#pageFaq .faq-item .a-text p { font-size: 1.6rem; line-height: 1.8; color: #555; margin-bottom: 15px;}
#pageFaq .faq-item .a-text p:last-child { margin-bottom: 0;}
#pageFaq .faq-item .a-text ul { margin: 15px 0; padding-left: 20px;}
#pageFaq .faq-item .a-text ul li { font-size: 1.6rem; line-height: 1.8; color: #555; margin-bottom: 8px; position: relative;}
#pageFaq .faq-item .a-text ul li:last-child { margin-bottom: 0;}
#pageFaq .faq-item .a-text ul li strong { color: #333;}
#pageFaq .faq-item .a-text a { color: #c19648; text-decoration: underline;}
#pageFaq .faq-item .a-text a:hover { color: #a17c38;}

#pageFaq section.faq-cta { background: linear-gradient(135deg, #c19648 0%, #d4aa5c 100%); padding: 80px 0; text-align: center;}
#pageFaq section.faq-cta .inner { width: 1050px; margin: 0 auto;}
#pageFaq section.faq-cta h2 { font-size: 3.2rem; font-weight: 700; color: #fff; margin-bottom: 15px;}
#pageFaq section.faq-cta p { font-size: 1.8rem; color: rgba(255,255,255,0.9); margin-bottom: 30px;}
#pageFaq section.faq-cta .btn { display: inline-block; padding: 18px 50px; background: #fff; color: #c19648; font-size: 1.8rem; font-weight: 600; text-decoration: none; border-radius: 50px; transition: 0.3s;}
#pageFaq section.faq-cta .btn:hover { transform: translateY(-3px); box-shadow: 0 10px 30px rgba(0,0,0,0.2);}

/* ========== Insights Page Styles ========== */
#pageInsights section.hero { width: 100%; height: 420px; position: relative;}
#pageInsights section.hero .bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2;}
#pageInsights section.hero .overlay { position: absolute; top: 0; left: 0; bottom: 0; right: 0; background: linear-gradient(135deg, rgba(0,0,0,0.6) 0%, rgba(0,0,0,0.3) 100%); z-index: -1;}
#pageInsights section.hero .inner { width: 1050px; height: 420px; margin: 0 auto; display: flex; align-items: center; justify-content: center; padding: 0 30px;}
#pageInsights section.hero .inner .txt { width: 100%; color: #fff; text-align: center;}
#pageInsights section.hero .inner .txt .mi { font-size: 4.0rem; font-weight: 700; letter-spacing: 0.2rem; margin-bottom: 15px;}
#pageInsights section.hero .inner .txt .sub { font-size: 1.8rem; font-weight: 400; margin-bottom: 20px; opacity: 0.9; letter-spacing: 2px;}
#pageInsights section.hero .inner .txt p { font-size: 1.6rem; line-height: 1.8; max-width: 700px; margin: 0 auto;}

#pageInsights section.insights-filter { background: #fff; padding: 30px 0; border-bottom: 1px solid #eee; position: sticky; top: 70px; z-index: 90;}
#pageInsights section.insights-filter .inner { width: 1050px; margin: 0 auto;}
#pageInsights section.insights-filter .filter-nav { display: flex; justify-content: center; gap: 15px; flex-wrap: wrap;}
#pageInsights section.insights-filter .filter-nav a { display: inline-block; padding: 12px 25px; background: #f5f5f5; color: #666; text-decoration: none; border-radius: 30px; font-size: 1.5rem; font-weight: 500; transition: 0.3s;}
#pageInsights section.insights-filter .filter-nav a:hover { background: #c19648; color: #fff;}
#pageInsights section.insights-filter .filter-nav a.active { background: #c19648; color: #fff;}

#pageInsights section.insights-list { padding: 60px 0 80px; background: #fff;}
#pageInsights section.insights-list .inner { width: 900px; margin: 0 auto;}

#pageInsights .article-list { list-style: none; padding: 0; margin: 0;}
#pageInsights .article-item { border-bottom: 1px solid #eee;}
#pageInsights .article-item:first-child { border-top: 1px solid #eee;}
#pageInsights .article-item a { display: block; padding: 30px 20px; text-decoration: none; transition: 0.3s;}
#pageInsights .article-item a:hover { background: #faf9f7; padding-left: 30px;}
#pageInsights .article-item .category { display: inline-block; background: rgba(193,150,72,0.15); color: #c19648; padding: 4px 12px; border-radius: 15px; font-size: 1.2rem; font-weight: 600; margin-bottom: 10px;}
#pageInsights .article-item h3 { font-size: 1.9rem; font-weight: 600; color: #333; line-height: 1.5; margin-bottom: 8px; transition: 0.3s;}
#pageInsights .article-item a:hover h3 { color: #c19648;}
#pageInsights .article-item .meta { font-size: 1.4rem; color: #999;}
#pageInsights .article-item.target { transform: translateX(-20px); opacity: 0; transition: 0.4s;}
#pageInsights .article-item.target.active { transform: translateX(0); opacity: 1;}

#pageInsights section.insights-cta { background: linear-gradient(135deg, #c19648 0%, #d4aa5c 100%); padding: 80px 0; text-align: center;}
#pageInsights section.insights-cta .inner { width: 1050px; margin: 0 auto;}
#pageInsights section.insights-cta h2 { font-size: 3.2rem; font-weight: 700; color: #fff; margin-bottom: 15px;}
#pageInsights section.insights-cta p { font-size: 1.8rem; color: rgba(255,255,255,0.9); margin-bottom: 30px;}
#pageInsights section.insights-cta .cta-buttons { display: flex; justify-content: center; gap: 20px;}
#pageInsights section.insights-cta .btn { display: inline-block; padding: 18px 40px; font-size: 1.7rem; font-weight: 600; text-decoration: none; border-radius: 50px; transition: 0.3s;}
#pageInsights section.insights-cta .btn-primary { background: #fff; color: #c19648;}
#pageInsights section.insights-cta .btn-secondary { background: transparent; color: #fff; border: 2px solid #fff;}
#pageInsights section.insights-cta .btn:hover { transform: translateY(-3px); box-shadow: 0 10px 30px rgba(0,0,0,0.2);}

/* ========== Article Page Styles ========== */
.page-article section.hero { width: 100%; height: 450px; position: relative;}
.page-article section.hero .bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2;}
.page-article section.hero .overlay { position: absolute; top: 0; left: 0; bottom: 0; right: 0; background: linear-gradient(to bottom, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.6) 100%); z-index: -1;}
.page-article section.hero .inner { width: 900px; height: 450px; margin: 0 auto; display: flex; align-items: center; justify-content: center; padding: 0 30px;}
.page-article section.hero .inner .txt { width: 100%; color: #fff; text-align: center;}
.page-article section.hero .inner .txt .mi { font-size: 4.0rem; font-weight: 700; letter-spacing: 0.2rem; margin-bottom: 15px;}
.page-article section.hero .inner .txt .sub { font-size: 2.2rem; font-weight: 400; line-height: 1.5; max-width: 800px; margin: 0 auto;}
.page-article section.hero .inner .txt p { font-size: 1.6rem; line-height: 1.8; max-width: 700px; margin: 20px auto 0;}

.page-article section.article-content { padding: 80px 0; background: #fff;}
.page-article section.article-content .inner { width: 850px; margin: 0 auto;}
.page-article section.article-content .article-meta { display: flex; gap: 20px; margin-bottom: 30px;}
.page-article section.article-content .article-meta .category { display: inline-block; background: rgba(193,150,72,0.15); color: #c19648; padding: 6px 16px; border-radius: 20px; font-size: 1.3rem; font-weight: 600;}
.page-article section.article-content .article-meta .date { font-size: 1.4rem; color: #999; display: flex; align-items: center;}

.page-article section.article-content h1 { font-size: 3.2rem; font-weight: 700; color: #333; line-height: 1.4; margin-bottom: 40px; padding-bottom: 25px; border-bottom: 2px solid #eee;}
.page-article section.article-content h2 { font-size: 2.4rem; font-weight: 700; color: #333; margin: 50px 0 25px; padding-bottom: 15px; border-bottom: 2px solid #c19648;}
.page-article section.article-content h3 { font-size: 2.0rem; font-weight: 600; color: #444; margin: 40px 0 20px;}
.page-article section.article-content h4 { font-size: 1.7rem; font-weight: 600; color: #555; margin: 30px 0 15px;}
.page-article section.article-content p { font-size: 1.7rem; line-height: 1.9; color: #555; margin-bottom: 20px;}
.page-article section.article-content p strong { color: #333;}
.page-article section.article-content p em { font-style: italic;}
.page-article section.article-content ul, .page-article section.article-content ol { margin: 20px 0 30px; padding-left: 30px;}
.page-article section.article-content ul li, .page-article section.article-content ol li { font-size: 1.6rem; line-height: 1.8; color: #555; margin-bottom: 12px;}
.page-article section.article-content ul li strong, .page-article section.article-content ol li strong { color: #333;}
.page-article section.article-content blockquote { background: #faf9f7; border-left: 4px solid #c19648; padding: 25px 30px; margin: 30px 0; border-radius: 0 10px 10px 0;}
.page-article section.article-content blockquote p { font-size: 1.6rem; color: #666; margin-bottom: 0; font-style: italic;}
.page-article section.article-content table { width: 100%; border-collapse: collapse; margin: 30px 0;}
.page-article section.article-content table th, .page-article section.article-content table td { padding: 15px; border: 1px solid #eee; font-size: 1.5rem; text-align: left;}
.page-article section.article-content table th { background: #faf9f7; font-weight: 600; color: #333;}
.page-article section.article-content table td { color: #555;}
