@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&family=Noto+Serif+JP:wght@600;700;900&display=swap');:root{--wine:#80192d;--red:#d70c20;--cream:#fff9ef;--gold:#c8a46b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#302625;font-family:'Noto Sans JP',sans-serif;line-height:1.8}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.header{height:86px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:10px max(4%,calc((100% - 1180px)/2));background:#fff;position:sticky;top:0;z-index:5;box-shadow:0 2px 15px #2b111116}.brand{font-family:Georgia,serif;color:var(--wine);font-size:21px;line-height:1.1;white-space:nowrap}.brand small{display:block;text-align:center;font-family:sans-serif;font-size:11px}.header nav{display:flex;gap:23px;font-size:13px;font-weight:700}.headcall{font-size:20px;color:var(--wine);font-weight:900;white-space:nowrap}.hero{display:grid;grid-template-columns:1.15fr .85fr;min-height:570px;background:linear-gradient(120deg,#fff9ed,#f3ddc9);overflow:hidden}.hero-text{align-self:center;max-width:690px;padding:60px 7% 60px max(8%,calc((100vw - 1180px)/2))}.eyebrow{display:inline-block;background:var(--wine);color:white;padding:5px 16px;font-size:13px;letter-spacing:.08em}.hero h1{font-family:'Noto Serif JP',serif;font-size:clamp(32px,4.1vw,61px);line-height:1.45;color:#4c1521;margin:20px 0}.hero h1 em{font-style:normal;color:#c0081d}.hero-text>p{font-size:17px}.hero-photo{height:100%;min-height:520px}.hero-photo img{height:100%;width:100%;object-fit:cover;object-position:center 24%}.offer-mini{margin:22px 0;padding:14px 18px;background:white;border-left:5px solid var(--red);font-weight:700}.offer-mini b{display:block;color:var(--red);font-size:27px}.cta{display:inline-block;background:linear-gradient(110deg,#a51c39,#e50b36);color:#fff;padding:16px 30px;border-radius:50px;text-align:center;font-weight:900;box-shadow:0 5px 14px #850d2540}.cta span{display:block;font-size:20px}.hero-text>small{display:block;margin-top:14px;font-size:11px}.section{padding:80px max(5%,calc((100% - 1100px)/2))}.section.beige{background:var(--cream)}.section-heading{text-align:center;margin-bottom:38px}.section-heading span{color:var(--gold);font-size:12px;letter-spacing:.3em;font-weight:900}.section h2{font-family:'Noto Serif JP',serif;font-size:clamp(25px,3vw,36px);color:var(--wine);margin:7px 0}.checks{display:grid;grid-template-columns:1fr 1fr;gap:14px}.checks p{margin:0;background:#fff8f6;border:1px solid #edd7d2;border-radius:10px;padding:16px 20px;font-weight:700}.center{text-align:center;margin-top:35px}.split{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.split img{border-radius:14px;aspect-ratio:4/3;object-fit:cover}.split h3{color:var(--wine);font-size:25px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.cards article{border:1px solid #e6d4c3;border-radius:14px;padding:28px;background:#fff;box-shadow:0 4px 15px #3c22200c}.cards strong{font-family:Georgia,serif;font-size:34px;color:var(--gold)}.cards h3,.steps h3{color:var(--wine)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.steps article{background:#fff;border-radius:12px;overflow:hidden;border:1px solid #e8d4c5}.steps img{width:100%;height:210px;object-fit:cover}.steps article div{padding:20px}.steps b{color:#c59b58}.campaign{background:#fff6e6;text-align:center;border-top:5px solid var(--wine);border-bottom:5px solid var(--wine)}.ribbon{background:var(--red);color:white;padding:7px 25px;font-weight:900}.campaign h2{margin-top:20px}.campaign>p{font-size:19px}.price{font-family:Georgia,serif;color:var(--red);font-size:clamp(65px,10vw,120px);line-height:1.1;display:inline-block}.price small{font-size:32px}.discount{font-weight:900;color:var(--red);font-size:26px!important}.notice{font-size:13px!important;max-width:650px;margin:20px auto 28px}.access-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.access-grid h3{font-family:Georgia,serif;color:var(--wine);font-size:30px;margin-bottom:0}.access-grid dl{display:grid;grid-template-columns:90px 1fr;gap:10px;margin:25px 0}.access-grid dt{font-weight:700}.access-grid dd{margin:0}.access-grid>img{width:100%;border:1px solid #ddd;image-rendering:auto}.outline{display:inline-block;padding:12px 20px;border:1px solid var(--wine);border-radius:5px;color:var(--wine);font-weight:700}footer{background:#69152a;color:#fff;text-align:center;padding:55px 20px 100px}footer strong{font:30px Georgia,serif}footer .cta{margin:12px auto 20px;border:1px solid #fff}footer small{display:block;opacity:.7}.sticky{display:none}@media(max-width:800px){.header{height:66px;padding:8px 4%}.header nav{display:none}.brand{font-size:17px}.headcall{font-size:15px}.hero{grid-template-columns:1fr}.hero-text{padding:40px 6%;order:2}.hero-photo{height:340px;min-height:0;order:1}.hero-photo img{object-position:center 22%}.hero h1{font-size:35px}.section{padding:55px 5%}.checks,.split,.access-grid{grid-template-columns:1fr}.cards,.steps{grid-template-columns:1fr}.steps article{display:grid;grid-template-columns:42% 58%}.steps img{height:100%;min-height:185px}.sticky{display:flex;align-items:center;justify-content:space-between;gap:10px;position:fixed;bottom:0;left:0;right:0;background:white;padding:9px 13px;box-shadow:0 -3px 18px #0002;z-index:10;font-size:11px}.sticky a{background:var(--red);color:#fff;padding:10px 15px;border-radius:30px;font-weight:900;font-size:14px}footer{padding-bottom:120px}}