:root{--pink: #ee7ba0;--pink-dark: #d75b84;--pink-soft: #fdeef3;--peach: #f8d3bd;--cream: #fff8f4;--ink: #2c2c2c;--ink-sub: #6b6b6b;--line: #f0e4e4;--white: #fff;--radius: 16px;--max: 1000px}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:72px}body{font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,Yu Gothic,sans-serif;color:var(--ink);background:var(--white);line-height:1.9;font-size:16px;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}a{color:var(--pink-dark)}.container{max-width:var(--max);margin:0 auto;padding:0 20px}.site-header{position:sticky;top:0;z-index:50;background:#fffffff2;backdrop-filter:blur(6px);border-bottom:1px solid var(--line)}.site-header .container{display:flex;align-items:center;gap:16px;height:64px}.brand{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink);font-weight:700}.brand img{height:28px;width:auto}.nav{margin-left:auto;display:flex;align-items:center;gap:20px}.nav a{color:var(--ink);text-decoration:none;font-size:14px;white-space:nowrap}.nav a:hover{color:var(--pink-dark)}.btn{display:inline-block;background:var(--pink);color:#fff;text-decoration:none;font-weight:700;padding:13px 30px;border-radius:999px;transition:background .2s;text-align:center}.btn:hover{background:var(--pink-dark)}.btn.sm{padding:9px 18px;font-size:14px}.hero{background:linear-gradient(180deg,var(--pink-soft) 0%,var(--cream) 100%)}.hero .container{display:grid;grid-template-columns:1.05fr .95fr;gap:32px;align-items:center;padding-block:56px 64px}.hero h1{font-size:clamp(26px,4vw,40px);line-height:1.5;font-weight:700}.hero h1 .accent{color:var(--pink-dark)}.hero .lede{margin-top:16px;color:var(--ink-sub)}.hero .cta{margin-top:26px;display:flex;flex-wrap:wrap;gap:12px;align-items:center}.hero .note{font-size:13px;color:var(--ink-sub);margin-top:12px}.badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.badge{background:var(--white);border:1px solid var(--pink);color:var(--pink-dark);font-size:13px;font-weight:700;padding:4px 12px;border-radius:999px}.hero figure img{border-radius:var(--radius)}section{padding:64px 0}.section-alt{background:var(--cream)}.section-head{text-align:center;margin-bottom:40px}.section-head h2{font-size:clamp(22px,3vw,28px)}.section-head .en{display:block;font-size:12px;letter-spacing:.1em;color:var(--pink);margin-top:6px;text-transform:uppercase}.grid{display:grid;gap:20px}.grid.c3{grid-template-columns:repeat(3,1fr)}.grid.c2{grid-template-columns:repeat(2,1fr)}.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:24px}.card h3{font-size:17px;color:var(--pink-dark);margin-bottom:8px}.reasons{counter-reset:r;display:grid;gap:16px}.reasons li{list-style:none;position:relative;padding:22px 24px 22px 74px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);counter-increment:r}.reasons li:before{content:counter(r,decimal-leading-zero);position:absolute;left:24px;top:22px;font-weight:700;color:var(--pink);font-size:20px}.reasons strong{display:block;font-size:17px}.reasons span{color:var(--ink-sub);font-size:15px}.flow{counter-reset:s;display:grid;gap:16px}.flow li{list-style:none;position:relative;padding:20px 24px 20px 76px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);counter-increment:s}.flow li:before{content:"STEP " counter(s);position:absolute;left:20px;top:22px;font-size:11px;font-weight:700;color:#fff;background:var(--pink);padding:3px 8px;border-radius:999px;letter-spacing:.04em}.flow strong{display:block;color:var(--pink-dark)}.faq details{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:0 20px;margin-bottom:12px}.faq summary{cursor:pointer;font-weight:700;padding:18px 0;list-style:none;display:flex;gap:10px;align-items:flex-start}.faq summary::-webkit-details-marker{display:none}.faq summary:before{content:"Q";color:var(--pink);font-weight:700}.faq details>p{padding:0 0 18px 22px;color:var(--ink-sub)}.notes{display:grid;gap:10px}.notes li{list-style:none;padding-left:24px;position:relative}.notes li:before{content:"";position:absolute;left:6px;top:12px;width:8px;height:8px;border-radius:50%;background:var(--pink)}.cta-band{background:var(--pink-soft);text-align:center}.cta-band p{margin-bottom:22px}.site-footer{background:var(--cream);border-top:1px solid var(--line);padding:48px 0 28px}.footer-nav{display:flex;flex-wrap:wrap;gap:12px 22px;margin:18px 0 24px}.footer-nav a{color:var(--ink);text-decoration:none;font-size:14px}.footer-nav a:hover{color:var(--pink-dark)}.copyright{font-size:12px;color:var(--ink-sub)}.doc{max-width:760px;margin:0 auto;padding:56px 20px 72px}.doc h1{font-size:clamp(24px,3.4vw,30px);margin-bottom:8px}.doc .doc-en{color:var(--pink);font-size:12px;letter-spacing:.1em;margin-bottom:32px}.doc h2{font-size:18px;color:var(--pink-dark);border-left:4px solid var(--pink);padding-left:12px;margin:36px 0 12px}.doc h3{font-size:16px;margin:24px 0 8px}.doc p{margin-bottom:12px}.doc ul,.doc ol{margin:0 0 16px 1.4em}.doc li{margin-bottom:4px}.doc dt{font-weight:700;color:var(--pink-dark);border-left:4px solid var(--pink);padding-left:12px;margin-top:28px;margin-bottom:6px}.doc dd{margin-left:0}.doc table{width:100%;border-collapse:collapse;margin-bottom:16px}.doc th,.doc td{border:1px solid var(--line);padding:10px;text-align:left;font-size:15px}@media(max-width:860px){.hero .container{grid-template-columns:1fr;padding-block:40px 48px}.hero figure{order:-1}.grid.c3,.grid.c2{grid-template-columns:1fr}.nav a:not(.btn){display:none}section{padding:48px 0}}.breadcrumb{padding-top:16px;font-size:13px;color:var(--ink-sub)}.breadcrumb ol{list-style:none;display:flex;flex-wrap:wrap;gap:4px}.breadcrumb li+li:before{content:"›";margin:0 6px;color:#bbb}.breadcrumb a{color:var(--ink-sub);text-decoration:none}.breadcrumb a:hover{color:var(--pink-dark)}.breadcrumb+.doc{padding-top:24px}h1,h2,h3{text-wrap:balance;word-break:auto-phrase}.container.narrow{max-width:760px}.chip{display:inline-block;color:var(--pink-dark);background:var(--pink-soft);border-radius:999px;padding:1px 10px;font-size:12px;font-weight:700;line-height:1.8}.article-list{list-style:none;display:grid;gap:14px;margin:24px 0 0}.doc .article-list{margin-left:0}.doc .article-list li{margin-bottom:0}.article-list a{display:block;text-decoration:none;color:var(--ink);background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:18px 22px;transition:border-color .2s}.article-list a:hover{border-color:var(--pink)}.article-list .m{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:12px;color:var(--ink-sub)}.article-list .t{display:block;margin-top:6px;font-size:17px;font-weight:700;line-height:1.6}.article-list .d{display:block;margin-top:4px;font-size:14px;color:var(--ink-sub)}.more{margin-top:20px;text-align:right;font-size:14px}.article-meta{margin-bottom:8px}.article-dates{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:13px;color:var(--ink-sub);margin-bottom:20px}.review-box{display:flex;gap:12px;background:var(--pink-soft);border-radius:var(--radius);padding:14px 18px;font-size:14px;line-height:1.8;margin-bottom:28px}.review-label{color:var(--pink-dark);font-weight:700;white-space:nowrap}.article-body{overflow-wrap:anywhere}.article-body img{border-radius:12px;margin:8px 0 16px}.article-body blockquote{border-left:4px solid var(--line);padding-left:12px;color:var(--ink-sub);margin:0 0 16px}.article-body pre{overflow-x:auto;background:var(--cream);border-radius:8px;padding:12px;margin-bottom:16px;font-size:14px}.article-body table{display:block;overflow-x:auto}.article-note{margin-top:32px;padding-top:16px;border-top:1px solid var(--line);font-size:13px;color:var(--ink-sub)}.related{padding:0 0 56px}.related h2{font-size:18px}.photo-card{padding:0;overflow:hidden}.photo-card picture{display:block}.card-photo{width:100%;aspect-ratio:4 / 3;object-fit:cover}.photo-card .card-body{padding:20px 24px 24px}.image-note{margin-top:12px;font-size:12px;color:var(--ink-sub);text-align:right}.doc h2.notice-section{border-left:none;background:var(--pink-soft);border-radius:8px;padding:10px 14px;margin-top:48px}
