@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&family=Noto+Sans+JP:wght@300;400;500;600;700&display=swap');
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Noto Sans JP',sans-serif;font-size:1rem;line-height:1.6;color:#444;background:#faf8f6;-webkit-font-smoothing:antialiased}
a{color:#b46a55;text-decoration:none;transition:color .3s}
a:hover{color:#935a44}
img{max-width:100%;height:auto}
h1,h2,h3{font-family:'Playfair Display',serif;color:#b46a55;font-weight:600;line-height:1.22}
h1{font-size:3.1rem}h2{font-size:2.4rem;margin-bottom:18px}h3{font-size:1.3rem}
h4{font-size:13px;font-family:'Noto Sans JP',sans-serif;font-weight:600;color:#b46a55;text-transform:uppercase;letter-spacing:1px}
p{margin-bottom:14px}
.cnt{max-width:1180px;margin:0 auto;padding:0 20px}
.bg-grad{background:linear-gradient(135deg,#faf8f6 0%,#f5ece7 100%)}
.btn{display:inline-block;padding:13px 34px;background:#b46a55;color:#fff;border:2px solid #b46a55;border-radius:50px;font-family:'Noto Sans JP',sans-serif;font-size:14px;font-weight:500;letter-spacing:.4px;cursor:pointer;transition:all .3s;text-decoration:none;line-height:1.4}
.btn:hover{background:#935a44;border-color:#935a44;color:#fff}
.btn.btn-brd{background:transparent;color:#b46a55;border:2px solid #b46a55}
.btn.btn-brd:hover{background:#b46a55;color:#fff}
.sec_hd{margin-bottom:2.4rem}.sec_hd h2{margin-bottom:12px}.sec_hd p{font-size:15px;color:#666;max-width:640px}
.hp_trap{position:absolute;left:-9999px;overflow:hidden;height:0}
.top-bar{background:#b46a55;padding:7px 0}
.top-listing{list-style:none;display:flex;gap:24px;align-items:center}
.top-listing li a{color:#fff;font-size:13px;font-weight:400}.top-listing li a:hover{opacity:.8}
.header{position:fixed;top:0;left:0;width:100%;z-index:999;transition:all .4s}
.header .header-bar{padding:14px 0;transition:all .4s}
.hdr_flex{display:flex;align-items:center;justify-content:space-between}
.header .logo img{height:42px}.header .logo.sticky_logo{display:none}
.header.is-sticky{background:#fff;box-shadow:0 2px 18px rgba(0,0,0,.08)}
.header.is-sticky .logo{display:none}.header.is-sticky .logo.sticky_logo{display:inline-block}
.header.is-sticky .navigation a{color:#444}.header.is-sticky .nav_cta{background:#b46a55;color:#fff;border-color:#b46a55}
.hdr_right{display:flex;align-items:center;gap:1.8rem}
.navigation{list-style:none;display:flex;gap:2rem;align-items:center}
.navigation>li>a{color:#fff;font-size:15px;font-weight:500;padding:10px 0;display:block;transition:color .3s}
.navigation>li:hover>a{color:#b46a55}
.hdr_actions{display:flex;align-items:center;gap:18px}
.cart_trigger{position:relative;color:#fff;font-size:1.3rem;transition:color .3s}
.header.is-sticky .cart_trigger{color:#444}
.cart_badge{position:absolute;top:-7px;right:-9px;background:#b46a55;color:#fff;font-size:10px;font-weight:700;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Noto Sans JP',sans-serif}
.nav_cta{padding:9px 22px!important;font-size:13px!important;background:transparent;border-color:#fff;color:#fff}
.nav_cta:hover{background:#b46a55!important;border-color:#b46a55!important}
.xs_toggle_menu{display:none;font-size:1.6rem;color:#fff;cursor:pointer}.header.is-sticky .xs_toggle_menu{color:#444}
.mobile_drawer{position:fixed;top:0;right:-100%;width:85%;max-width:360px;height:100vh;background:#fff;z-index:1001;padding:80px 30px 30px;transition:right .4s;overflow-y:auto}
.mobile_drawer.open{right:0}
.drawer_close{position:absolute;top:22px;right:22px;font-size:1.4rem;color:#444;cursor:pointer}
.mob_nav{list-style:none}.mob_nav li a{display:block;padding:14px 0;border-bottom:1px solid #eee;color:#333;font-size:15px;font-weight:500}
.mob_nav li:last-child a{border:none;margin-top:10px}
.home_hero{position:relative;height:88vh;min-height:560px;overflow:hidden;display:flex;align-items:center}
.hero_bg{position:absolute;inset:0;background-size:cover;background-position:center;z-index:0}
.home_hero::after{content:'';position:absolute;inset:0;background:rgba(0,0,0,.58);z-index:1}
.hero_caption{position:relative;z-index:2}.hero_inner{max-width:620px}
.hero_inner h1{color:#fff;font-size:3.2rem;margin-bottom:16px;line-height:1.12}
.hero_inner p{color:rgba(255,255,255,.88);font-size:1.05rem;margin-bottom:1.8rem;font-weight:300;line-height:1.7}
.restock_sec{padding:82px 0 88px}
.restock_grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.restock_card{border-radius:10px;overflow:hidden;background:#fff;position:relative}
.restock_card img{width:100%;height:220px;object-fit:cover;display:block;transition:transform .5s}
.restock_card:hover img{transform:scale(1.04)}
.restock_info{padding:18px 16px}
.restock_tag{display:inline-block;background:#b46a55;color:#fff;font-size:11px;font-weight:600;padding:3px 10px;border-radius:20px;margin-bottom:8px;letter-spacing:.5px}
.restock_info h3{font-family:'Noto Sans JP',sans-serif;font-size:.95rem;font-weight:600;color:#333;margin-bottom:4px}
.restock_info p{font-size:14px;color:#b46a55;font-weight:600;margin:0}
.products_sec{padding:88px 0 96px}
.prod_grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.prod_card{background:#fff;border-radius:10px;overflow:hidden;transition:box-shadow .3s,transform .3s}
.prod_card:hover{box-shadow:0 8px 30px rgba(180,106,85,.12);transform:translateY(-4px)}
.prod_img{position:relative;overflow:hidden}
.prod_img img{width:100%;height:240px;object-fit:cover;display:block;transition:transform .5s}
.prod_card:hover .prod_img img{transform:scale(1.05)}
.prod_badge{position:absolute;top:14px;left:14px;background:#b46a55;color:#fff;font-size:11px;font-weight:600;padding:4px 12px;border-radius:20px;letter-spacing:.5px}
.prod_badge.hot{background:#c0392b}
.prod_body{padding:22px 20px 24px}
.prod_body h3{font-family:'Noto Sans JP',sans-serif;font-size:1rem;font-weight:600;color:#333;margin-bottom:6px}
.prod_desc{font-size:13px;color:#777;line-height:1.6;margin-bottom:14px}
.prod_foot{display:flex;align-items:center;justify-content:space-between;gap:12px}
.prod_price{font-size:1.15rem;font-weight:700;color:#b46a55}.prod_price small{font-size:.7em;font-weight:400}
.prod_foot .btn{padding:8px 18px;font-size:12px}
.whyneed_sec{padding:90px 0 98px}
.whyneed_wrap{display:flex;gap:60px;align-items:center}
.whyneed_txt{flex:1}.whyneed_txt h2{margin-bottom:1.2rem}
.whyneed_txt p{font-size:15px;color:#555;line-height:1.75;margin-bottom:1rem}
.whyneed_txt .btn{margin-top:12px}.whyneed_img{flex:0 0 380px}
.blob_frame{width:380px;height:380px;border-radius:50%;overflow:hidden;position:relative}
.blob_frame::after{content:'';position:absolute;width:420px;height:420px;border-radius:58% 42% 55% 45%/45% 55% 45% 55%;background:rgba(180,106,85,.12);top:-20px;left:-20px;z-index:-1}
.blob_frame img{width:100%;height:100%;object-fit:cover}
.reviews_sec{padding:86px 0 94px}
.rev_card{background:#fff;border-radius:10px;padding:28px 24px;margin:0 12px}
.rev_stars{margin-bottom:14px;color:#b46a55;font-size:.9rem;display:flex;gap:2px}
.rev_card>p{font-size:14px;color:#555;line-height:1.72;font-style:italic;margin-bottom:18px;min-height:80px}
.rev_author{display:flex;align-items:center;gap:12px;border-top:1px solid #f0ebe7;padding-top:16px}
.rev_author img{width:42px;height:42px;border-radius:50%;object-fit:cover}
.rev_author strong{display:block;font-size:13px;color:#333}.rev_author span{font-size:12px;color:#999}
.howwork_sec{padding:92px 0 100px}
.steps_row{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.step_item{padding:32px 24px 28px;background:#fff;border-radius:10px;border-top:3px solid #b46a55}
.step_num{font-family:'Playfair Display',serif;font-size:2.8rem;font-weight:700;color:rgba(180,106,85,.15);line-height:1;display:block;margin-bottom:14px}
.step_item h3{font-family:'Noto Sans JP',sans-serif;font-size:.95rem;font-weight:600;color:#333;margin-bottom:10px}
.step_item p{font-size:13px;color:#777;line-height:1.65;margin:0}
.advantages_sec{padding:86px 0 94px}
.adv_grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px 26px}
.adv_item{padding:28px 0}
.adv_item i{font-size:2rem;color:#b46a55;display:block;margin-bottom:14px}
.adv_item h3{font-family:'Noto Sans JP',sans-serif;font-size:.95rem;font-weight:600;color:#333;margin-bottom:8px}
.adv_item p{font-size:13px;color:#777;line-height:1.65;margin:0}
.faq_sec{padding:88px 0 96px}.faq_list{max-width:780px}.faq_item{border-bottom:1px solid #e5e0db}
.faq_q{display:flex;justify-content:space-between;align-items:center;padding:20px 0;cursor:pointer;gap:16px}
.faq_q span{font-family:'Noto Sans JP',sans-serif;font-size:15px;font-weight:500;color:#333}
.faq_q i{font-size:1.2rem;color:#b46a55;transition:transform .3s;flex-shrink:0}
.faq_item.open .faq_q i{transform:rotate(45deg)}
.faq_a{max-height:0;overflow:hidden;transition:max-height .4s ease}
.faq_item.open .faq_a{max-height:400px}
.faq_a p{font-size:14px;color:#666;line-height:1.7;padding-bottom:20px;margin:0}
.contact_sec{padding:92px 0 100px}
.contact_wrap{display:flex;gap:60px;align-items:flex-start}.contact_info{flex:1}
.contact_info h2{margin-bottom:1rem}.contact_info>p{font-size:15px;color:#666;margin-bottom:1.8rem}
.contact_details p{font-size:14px;color:#555;margin-bottom:10px;line-height:1.6}
.contact_details i{color:#b46a55;margin-right:10px;width:18px;display:inline-block}
.contact_details a{color:#555}.contact_details a:hover{color:#b46a55}
.contact_form_wrap{flex:1;background:#fff;border-radius:10px;padding:36px 32px}
.form_row{margin-bottom:16px;position:relative}
.form_row input,.form_row textarea{width:100%;padding:13px 16px;border:1px solid #ddd;border-radius:8px;font-family:'Noto Sans JP',sans-serif;font-size:14px;color:#333;transition:border .3s;background:#faf8f6;outline:none}
.form_row input:focus,.form_row textarea:focus{border-color:#b46a55}
.form_row textarea{resize:vertical}
.form_row.has_err input,.form_row.has_err textarea{border-color:#c0392b}
.field_err{font-size:12px;color:#c0392b;display:block;margin-top:4px;min-height:16px}
.footer_main{padding:36px 0 28px;border-top:1px solid #e5e0db}
.footer_top{margin-bottom:20px}.footer_logo img{height:36px}
.footer_bot{display:flex;justify-content:space-between;align-items:center}
.footer_bot p{font-size:13px;color:#888;margin:0}
.footer_bot ul{list-style:none;display:flex;gap:1.4rem}
.footer_bot ul li a{font-size:13px;color:#888}.footer_bot ul li a:hover{color:#b46a55}
.cart_overlay{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:1010;opacity:0;visibility:hidden;transition:all .3s}
.cart_overlay.open{opacity:1;visibility:visible}
.cart_panel{position:fixed;top:0;left:-440px;width:420px;height:100vh;background:#fff;z-index:1011;display:flex;flex-direction:column;transition:left .4s;box-shadow:4px 0 24px rgba(0,0,0,.1)}
.cart_panel.open{left:0}
.cart_hdr{display:flex;justify-content:space-between;align-items:center;padding:22px 24px;border-bottom:1px solid #eee}
.cart_hdr h3{font-family:'Noto Sans JP',sans-serif;font-size:1rem;font-weight:600;color:#333;margin:0;display:flex;align-items:center;gap:8px}
.cart_hdr h3 i{color:#b46a55}.cart_close{font-size:1.2rem;color:#999;cursor:pointer}
.cart_body{flex:1;overflow-y:auto;padding:20px 24px}
.cart_empty{text-align:center;padding:60px 0;color:#bbb}
.cart_empty i{font-size:3rem;display:block;margin-bottom:12px}.cart_empty p{margin:0;font-size:14px}
.cart_row{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid #f5f0ed}
.cart_row img{width:56px;height:56px;border-radius:8px;object-fit:cover}
.cart_row_info{flex:1;min-width:0}
.cart_row_info strong{display:block;font-size:13px;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cart_row_info span{font-size:12px;color:#b46a55;font-weight:600}
.cart_qty{display:flex;align-items:center;gap:8px}
.cart_qty button{width:26px;height:26px;border-radius:50%;border:1px solid #ddd;background:#fff;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#333;transition:all .2s}
.cart_qty button:hover{border-color:#b46a55;color:#b46a55}
.cart_qty span{font-size:13px;font-weight:600;min-width:18px;text-align:center}
.cart_remove{background:none;border:none;color:#ccc;font-size:1rem;cursor:pointer;padding:4px;transition:color .2s}
.cart_remove:hover{color:#c0392b}
.cart_footer{padding:20px 24px;border-top:1px solid #eee;display:none}
.cart_total{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.cart_total span{font-size:14px;color:#888}.cart_total strong{font-size:1.3rem;color:#333}
.cart_footer .btn{width:100%;text-align:center;margin-bottom:8px}
.cart_clear{background:transparent;color:#999;border-color:#ddd;font-size:12px;padding:8px}
.cart_clear:hover{color:#c0392b;border-color:#c0392b;background:transparent}
.modal_overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:1020;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:all .3s}
.modal_overlay.open{opacity:1;visibility:visible}
.modal_box{background:#fff;border-radius:12px;padding:36px 32px;max-width:500px;width:90%;max-height:85vh;overflow-y:auto;position:relative}
.modal_close{position:absolute;top:16px;right:18px;font-size:1.2rem;color:#999;cursor:pointer}
.modal_box h3{font-family:'Noto Sans JP',sans-serif;font-size:1.1rem;font-weight:600;color:#333;margin-bottom:1.2rem}
.order_summary{margin:16px 0;border-top:1px solid #eee;padding-top:12px}
.order_line{display:flex;justify-content:space-between;padding:6px 0;font-size:13px;color:#555}
.order_line.total{border-top:1px solid #eee;margin-top:8px;padding-top:10px;font-weight:700;color:#333;font-size:15px}
.thankyou_popup{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:1030;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:all .3s}
.thankyou_popup.open{opacity:1;visibility:visible}
.thankyou_inner{background:#fff;border-radius:12px;padding:48px 40px;text-align:center;max-width:380px}
.thankyou_inner i{font-size:3.5rem;color:#27ae60;display:block;margin-bottom:16px}
.thankyou_inner h3{color:#333;margin-bottom:8px}
.thankyou_inner p{color:#777;font-size:14px;margin-bottom:1.4rem}
.gdpr_bar{position:fixed;bottom:24px;left:24px;width:420px;background:#fff;border-radius:12px;box-shadow:0 8px 40px rgba(0,0,0,.15);z-index:1050;padding:28px 26px;opacity:0;visibility:hidden;transform:translateY(20px);transition:all .4s}
.gdpr_bar.show{opacity:1;visibility:visible;transform:translateY(0)}
.gdpr_txt p{font-size:13px;color:#555;line-height:1.6;margin-bottom:14px}
.gdpr_btns{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:10px}
.gdpr_btns .btn{padding:8px 20px;font-size:12px}
.gdpr_settings_btn{background:none;border:none;color:#b46a55;font-size:12px;font-weight:500;cursor:pointer;padding:8px 12px;font-family:'Noto Sans JP',sans-serif;text-decoration:underline}
.gdpr_links{font-size:11px;color:#999}.gdpr_links a{color:#999;text-decoration:underline}.gdpr_links a:hover{color:#b46a55}
.gdpr_settings_panel{max-height:0;overflow:hidden;transition:max-height .4s ease}
.gdpr_settings_panel.open{max-height:300px;border-top:1px solid #eee;margin-top:14px;padding-top:14px}
.gdpr_settings_panel h4{font-family:'Noto Sans JP',sans-serif;font-size:13px;font-weight:600;color:#333;margin-bottom:12px;text-transform:none;letter-spacing:0}
.gdpr_toggle{display:flex;align-items:center;gap:10px;margin-bottom:10px;font-size:13px;color:#555;cursor:pointer}
.gdpr_toggle input{accent-color:#b46a55;width:16px;height:16px}
.gdpr_save{margin-top:8px;padding:7px 18px;font-size:12px}
.page_banner{background:#b46a55;padding:120px 0 52px;text-align:left}
.page_banner h1{color:#fff;font-size:2.6rem;margin-bottom:8px}
.page_banner p{color:rgba(255,255,255,.8);font-size:15px;margin:0}
.legal_body{padding:64px 0 80px}.legal_content{max-width:780px}
.legal_content h2{font-size:1.4rem;margin-top:2rem;margin-bottom:.7rem;color:#333;font-family:'Noto Sans JP',sans-serif;font-weight:600}
.legal_content h2:first-child{margin-top:0}
.legal_content p{font-size:14px;color:#555;line-height:1.75;margin-bottom:1rem}
.subpage_sec{padding:68px 0 72px}.subpage_block{max-width:800px}
.subpage_block h2{margin-bottom:1rem}.subpage_block p{font-size:15px;color:#555;line-height:1.78}
.works_block{display:flex;gap:44px;align-items:flex-start}
.works_block.flip{flex-direction:row-reverse}
.works_img{flex:0 0 380px;border-radius:10px;overflow:hidden}
.works_img img{width:100%;height:280px;object-fit:cover;display:block}
.works_txt{flex:1}.works_txt h2{margin-bottom:.9rem}
.works_txt p{font-size:14px;color:#555;line-height:1.78}
.reviews_grid_full{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.rev_card_full{background:#fff;border-radius:10px;padding:28px 26px}
.rev_card_full .rev_stars{margin-bottom:14px;color:#b46a55;font-size:.85rem;display:flex;gap:2px}
.rev_card_full>p{font-size:14px;color:#555;line-height:1.72;font-style:italic;margin-bottom:16px}
.rev_card_full .rev_author{border-top:1px solid #f0ebe7;padding-top:14px}
.rev_card_full .rev_author strong{display:block;font-size:13px;color:#333}
.rev_card_full .rev_author span{font-size:12px;color:#999}
.slick-prev,.slick-next{width:42px;height:42px;border-radius:50%;border:2px solid #b46a55;background:#fff;z-index:5;transition:all .3s}
.slick-prev:hover,.slick-next:hover{background:#b46a55}
.slick-prev::before,.slick-next::before{font-family:'bootstrap-icons';color:#b46a55;font-size:14px}
.slick-prev:hover::before,.slick-next:hover::before{color:#fff}
.slick-prev::before{content:'\F284'}.slick-next::before{content:'\F285'}
.slick-prev{left:-18px}.slick-next{right:-18px}
@media(max-width:1199px){h1{font-size:2.5rem}h2{font-size:2rem}.hero_inner h1{font-size:2.6rem}}
@media(max-width:991px){.xs_toggle_menu{display:block}.navigation,.hdr_actions .nav_cta{display:none}.restock_grid{grid-template-columns:repeat(2,1fr)}.prod_grid{grid-template-columns:repeat(2,1fr)}.steps_row{grid-template-columns:repeat(2,1fr)}.adv_grid{grid-template-columns:repeat(2,1fr)}.whyneed_wrap{flex-direction:column;gap:40px}.whyneed_img{flex:none}.blob_frame{width:300px;height:300px;margin:0 auto}.contact_wrap{flex-direction:column;gap:36px}.footer_bot{flex-direction:column;gap:12px;text-align:center}.footer_bot ul{justify-content:center;flex-wrap:wrap}.cart_panel{width:340px;left:-360px}.gdpr_bar{width:calc(100% - 48px)}.works_block,.works_block.flip{flex-direction:column;gap:28px}.works_img{flex:none;width:100%}.works_img img{height:220px}.reviews_grid_full{grid-template-columns:1fr}}
@media(max-width:767px){h1{font-size:2rem}h2{font-size:1.65rem}.home_hero{height:70vh;min-height:420px}.hero_inner h1{font-size:1.9rem}.hero_inner p{font-size:.9rem}.top-listing{gap:12px;font-size:12px}.restock_sec{padding:56px 0 60px}.restock_grid{grid-template-columns:1fr 1fr}.products_sec{padding:60px 0 64px}.prod_grid{grid-template-columns:1fr}.whyneed_sec{padding:56px 0 62px}.reviews_sec{padding:58px 0 64px}.howwork_sec{padding:58px 0 66px}.steps_row{grid-template-columns:1fr}.advantages_sec{padding:56px 0 62px}.adv_grid{grid-template-columns:1fr}.faq_sec{padding:58px 0 64px}.contact_sec{padding:60px 0 66px}.contact_form_wrap{padding:24px 20px}.blob_frame{width:240px;height:240px}.cart_panel{width:100%;left:-100%}.gdpr_bar{bottom:12px;left:12px;width:calc(100% - 24px);padding:20px 18px}.page_banner{padding:100px 0 40px}.page_banner h1{font-size:1.9rem}.legal_body{padding:44px 0 56px}.subpage_sec{padding:48px 0 52px}}
@media(max-width:480px){.hero_inner h1{font-size:1.6rem}.btn{padding:11px 24px;font-size:13px}.restock_grid{grid-template-columns:1fr}.prod_img img{height:200px}}
[data-aos^=fade][data-aos^=fade]{
    opacity: 1 !important
}