*{margin:0;padding:0;box-sizing:border-box;}
:root{
  --gold:#B8945A;
  --gold-light:#D4A96A;
  --cream:#F5F2EC;
  --sand:#EDE7DC;
  --greige:#E0D8CC;
  --charcoal:#2C2C2C;
  --mid:#666;
  --light:#999;
  --white:#FFFFFF;
}
body{background:var(--cream);color:var(--charcoal);font-family:'Noto Sans JP',sans-serif;font-weight:300;}
img{display:block;width:100%;}
a{text-decoration:none;color:inherit;}
.lp-wrap{width:950px;margin:0 auto;overflow:hidden;}

/* FV */
.fv{position:relative;background:var(--charcoal);height:560px;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.fv-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.8s ease;background:center/cover no-repeat;}
.fv-slide.active{opacity:0.45;}
.fv-content{position:relative;z-index:2;text-align:center;}
.fv-launch{display:inline-block;border:1px solid var(--gold);color:var(--gold);font-family:'Lato',sans-serif;font-weight:300;font-size:11px;letter-spacing:0.3em;padding:5px 20px;margin-bottom:28px;}
.fv-logo-text{font-family:'Playfair Display',serif;font-size:52px;font-weight:300;color:var(--white);line-height:1.1;letter-spacing:0.05em;}
.fv-logo-text em{font-style:italic;color:var(--gold-light);}
.fv-rule{width:40px;height:1px;background:var(--gold);margin:22px auto;}
.fv-tagline{font-family:'Noto Serif JP',serif;font-size:13px;color:rgba(255,255,255,0.75);letter-spacing:0.2em;}

/* COMMON */
.sec{padding:64px 60px;}
.sec-label{font-family:'Playfair Display',serif;font-size:11px;letter-spacing:0.35em;color:var(--gold);margin-bottom:10px;}
.sec-rule{width:32px;height:1px;background:var(--gold);margin:12px 0 24px;}
.sec-title{font-family:'Noto Serif JP',serif;font-size:26px;font-weight:400;letter-spacing:0.1em;line-height:1.5;}

/* BRAND STORY */
.brand-sec{background:var(--sand);}
.brand-inner{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;margin-top:32px;}
.brand-img{aspect-ratio:4/5;background:var(--greige) url('../img/★brand_image★') center/cover no-repeat;}
.brand-concept{background:var(--white);border-left:3px solid var(--gold);padding:20px 24px;margin-bottom:24px;}
.brand-concept p{font-family:'Noto Serif JP',serif;font-size:18px;font-weight:400;letter-spacing:0.1em;line-height:1.8;}
.brand-concept small{display:block;font-family:'Playfair Display',serif;font-style:italic;font-size:12px;color:var(--gold);margin-top:6px;letter-spacing:0.15em;}
.brand-text{font-size:13px;line-height:2.1;color:var(--mid);font-weight:400;}
.brand-text strong{color:var(--charcoal);font-weight:400;}
.brand-text em{color:var(--gold);font-style:normal;}
.brand-sister{font-size:11px;color:var(--light);margin-top:20px;padding-top:14px;border-top:1px solid var(--greige);letter-spacing:0.05em;}

/* VOICE */
.voice-sec{background:var(--cream);}
.voice-subtitle{font-family:'Playfair Display',serif;font-style:italic;font-size:14px;color:var(--mid);letter-spacing:0.1em;margin-bottom:32px;}
.voice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.voice-card{background:var(--white);border:1px solid var(--greige);padding:28px 22px;position:relative;font-weight:400;}
.voice-card::before{content:'';position:absolute;top:0;left:0;width:3px;height:40px;background:var(--gold);}
.voice-card p{font-size:13px;line-height:1.9;color:var(--charcoal);}
.voice-message{margin-top:36px;padding:28px 36px;background:var(--sand);text-align:center;}
.voice-message p{font-family:'Noto Serif JP',serif;font-size:14px;line-height:2;color:var(--charcoal);letter-spacing:0.08em;}
.voice-message em{color:var(--gold);font-style:normal;}

/* LINEUP */
.lineup-sec{background:var(--cream);}
.lineup-count{font-family:'Playfair Display',serif;font-size:38px;font-weight:300;letter-spacing:0.05em;color:var(--charcoal);}
.lineup-count span{font-size:16px;color:var(--mid);margin-left:8px;font-family:'Noto Sans JP',sans-serif;font-weight:300;}
.lineup-period{font-size:12px;color:var(--light);letter-spacing:0.1em;margin:8px 0 36px;}
.lineup-main-card{display:block;margin-bottom:28px;}
.lineup-main-inner{display:grid;grid-template-columns:1fr 1fr;background:var(--white);border:1px solid var(--greige);overflow:hidden;}
.lineup-main-img{position:relative;aspect-ratio:900/400;background:var(--greige) center/cover no-repeat;}
.lineup-main-body{padding:32px 40px;display:flex;flex-direction:column;justify-content:center;}
.lineup-main-name{font-family:'Noto Serif JP',serif;font-size:26px;font-weight:400;letter-spacing:0.06em;margin-bottom:12px;color:var(--charcoal);}
.lineup-main-catch{font-size:14px;color:var(--mid);line-height:1.8;margin-bottom:16px;}
.lineup-main-launch{font-family:'Lato',sans-serif;font-size:13px;color:var(--gold);letter-spacing:0.08em;}
.lineup-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.lineup-grid > a{display:block;height:100%;}
.lineup-card{background:var(--white);border:1px solid var(--greige);overflow:hidden;position:relative;display:flex;flex-direction:column;height:100%;}
.lineup-card-img{aspect-ratio:3/4;background:var(--greige) center/cover no-repeat;position:relative;}
.lineup-card-img.coming{filter:brightness(0.7);}
.lineup-card-badge{position:absolute;top:12px;left:12px;background:var(--gold);color:var(--white);font-family:'Playfair Display',serif;font-size:10px;letter-spacing:0.2em;padding:3px 10px;}
.lineup-card-body{padding:18px 16px;display:flex;flex-direction:column;flex:1;}
.lineup-card-no{font-family:'Lato',sans-serif;font-size:22px;color:var(--gold);letter-spacing:0.1em;margin-bottom:6px;font-weight:300;}
.lineup-card-name{font-family:'Noto Serif JP',serif;font-size:18px;font-weight:400;letter-spacing:0.06em;margin-bottom:5px;color:var(--charcoal);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em;line-height:1.3;}
.lineup-card-catch{font-size:14px;color:var(--mid);margin-bottom:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em;line-height:1.3;}
.lineup-card-launch{font-family:'Lato',sans-serif;font-size:13px;color:var(--gold);letter-spacing:0.08em;font-weight:300;margin-top:auto;}
.lineup-card-coming-text{font-family:'Playfair Display',serif;font-size:13px;color:var(--light);letter-spacing:0.2em;}
.lineup-next{margin-top:32px;padding:20px 24px;background:var(--sand);border-left:3px solid var(--gold);}
.lineup-next p{font-size:12px;color:var(--mid);letter-spacing:0.05em;line-height:1.8;}
.lineup-next strong{color:var(--charcoal);font-weight:400;}

/* PRODUCT */
.product-sec{padding:72px 60px;}
.product-sec-header{text-align:center;margin-bottom:48px;}
.product-series-label{font-family:'Playfair Display',serif;font-size:11px;letter-spacing:0.4em;color:var(--gold);margin-bottom:6px;}
.product-title-en{font-family:'Playfair Display',serif;font-size:48px;font-weight:300;letter-spacing:0.08em;color:var(--charcoal);line-height:1;}
.product-title-ja{font-family:'Noto Serif JP',serif;font-size:13px;color:var(--mid);letter-spacing:0.2em;margin-top:8px;}
.product-rule{width:40px;height:1px;background:var(--gold);margin:20px auto;}
.sc-sec{background:var(--cream);}
.lb-sec{background:var(--sand);}
.lb-sec .func-desc{background:var(--cream);}

/* SLIDESHOW */
.slideshow{position:relative;overflow:hidden;aspect-ratio:16/9;background:var(--greige);}
.slide{position:absolute;inset:0;opacity:0;transition:opacity 1.5s ease;}
.slide.active{opacity:1;}
.slide img{width:100%;height:100%;object-fit:cover;}
.slide-dots{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);display:flex;gap:8px;z-index:3;}
.dot{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,0.4);cursor:pointer;transition:background 0.3s;}
.dot.active{background:var(--gold);}

/* FUNC ICONS */
.func-icons{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:32px 0;}
.func-icon{padding:14px 6px;text-align:center;border:1px solid var(--greige);box-sizing:border-box;}
.func-icon-img{width:30px;height:30px;margin:0 auto 8px;background:var(--greige) center/contain no-repeat;}
.func-icon-name{font-family:'Playfair Display',serif;font-size:10px;letter-spacing:0.1em;color:var(--gold);margin-bottom:3px;}
.func-icon-desc{font-size:10px;color:var(--mid);line-height:1.4;font-weight:400;}

/* FUNC DESC */
.func-desc{background:var(--sand);padding:32px 36px;margin-bottom:48px;}
.func-desc p{font-size:13px;line-height:2.1;color:var(--charcoal);}

/* ITEMS */
.items-label{font-family:'Playfair Display',serif;font-size:11px;letter-spacing:0.3em;color:var(--gold);margin-bottom:16px;}
.items-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.item-card{border:1px solid var(--greige);overflow:hidden;background:var(--white);position:relative;}
.item-card-img{aspect-ratio:3/4;background:var(--greige) center/cover no-repeat;position:relative;}
.item-card-body{padding:14px 12px;}
.item-card-catch{font-family:'Noto Serif JP',serif;font-size:12px;font-weight:400;line-height:1.6;margin-bottom:6px;color:var(--charcoal);}
.item-card-price{font-family:'Noto Sans JP',serif;font-size:13px;color:var(--charcoal);letter-spacing:0.05em;margin-bottom:10px;}
.item-card-btn{display:block;text-align:center;border:1px solid var(--charcoal);font-family:'Playfair Display',serif;font-size:11px;letter-spacing:0.25em;padding:8px;color:var(--charcoal);transition:all 0.25s;}
.item-card-btn:hover{background:var(--charcoal);color:var(--white);}
.item-card-btn.coming-soon{border-color:var(--greige);color:var(--light);pointer-events:none;}

/* ANY DAY + TWILL SECTION: 3 items only */
#anyday-section .items-grid{grid-template-columns:repeat(3,1fr);}

/* WAIST SECTION: 3 items only */
#waist-section .items-grid{grid-template-columns:repeat(3,1fr);}

/* AIRY COMFORT SECTION: 2 items only */
#airycomfort-section .items-grid{grid-template-columns:repeat(2,1fr);max-width:500px;margin:0 auto;}

/* CLEAN WARM SECTION: 2 items only */
#cleanwarm-section .items-grid{grid-template-columns:repeat(2,1fr);max-width:500px;margin:0 auto;}

/* BODY MAKE SHAPE DESIGN SECTION: 3 items only */
#bodymake-section .items-grid{grid-template-columns:repeat(3,1fr);}

/* FADE IN */
.fade-in{opacity:0;transform:translateY(24px);transition:opacity 0.7s ease,transform 0.7s ease;}
.fade-in.visible{opacity:1;transform:none;}

/* LB SUB */
.lb-sub-heading{font-family:'Cormorant Garamond','Noto Serif JP',serif;font-size:1.15rem;font-weight:400;letter-spacing:.08em;text-align:center;display:block;margin:40px 0 16px;}

/* SERIES LINEUP */
.series-lineup-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;margin-top:32px;}
.series-lineup-card{text-decoration:none;color:inherit;display:block;}
.series-lineup-img{width:100%;aspect-ratio:550/320;background-size:cover;background-position:center;}
.series-lineup-body{padding:12px 4px 20px;}
.series-lineup-name{font-family:'Cormorant Garamond',serif;font-size:1rem;font-weight:400;letter-spacing:.06em;margin-bottom:6px;}
.series-lineup-desc{font-family:'Noto Sans JP',sans-serif;font-size:.72rem;font-weight:300;line-height:1.7;color:#666;}

/* COPYRIGHT */
.copyright{background:var(--charcoal);padding:28px;text-align:center;}
.copyright p{font-family:'Playfair Display',serif;font-size:11px;color:rgba(255,255,255,0.4);letter-spacing:0.2em;}

/* SP */
@media(max-width:768px){
  .lp-wrap{width:100%;}
  .sec{padding:48px 20px;}
  .fv{height:100vw;min-height:400px;}
  .fv-logo-text{font-size:34px;}
  .brand-inner{grid-template-columns:1fr;}
  .brand-img{aspect-ratio:3/2;}
  .voice-grid{grid-template-columns:1fr;}
  .voice-message{padding:24px 20px;}
  .lineup-main-inner{grid-template-columns:1fr;}
  .lineup-main-body{padding:20px 18px;}
  .lineup-main-name{font-size:20px;}
  .lineup-grid{grid-template-columns:repeat(3,1fr);gap:10px;}
  .product-sec{padding:48px 20px;}
  .product-title-en{font-size:32px;}
  .func-icons{grid-template-columns:repeat(3,1fr);gap:6px;}
  .func-icon{padding:10px 4px;}
  .items-grid{grid-template-columns:repeat(2,1fr);}
  #waist-section .items-grid{grid-template-columns:repeat(2,1fr);}
  #bodymake-section .items-grid{grid-template-columns:repeat(2,1fr);}
  #anyday-section .items-grid{grid-template-columns:repeat(2,1fr);}
  .series-lineup-grid{grid-template-columns:1fr 1fr;}
  .lineup-card a{text-decoration:none;color:inherit;}
}