:root{--blue:#1587df;--deep:#0b4d88;--pale:#f1fbff;--line:#dbeaf4;--pink:#ff4f9b;--text:#15324a;--muted:#6c8192;--shadow:0 10px 28px rgba(26,105,155,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;color:var(--text);background:#fff}a{color:inherit;text-decoration:none}img{max-width:100%}.container{width:min(1180px,calc(100% - 32px));margin:auto}
.header{height:82px;background:#fff;border-bottom:1px solid #e9f2f8;position:sticky;top:0;z-index:20}.header-inner{height:100%;display:flex;align-items:center;gap:24px}.logo{display:flex;align-items:center;gap:10px;min-width:285px}.logo img{width:58px;height:58px}.logo strong{display:block;font-size:24px;letter-spacing:.04em;color:#164c80}.logo small{display:block;color:#1687df;font-weight:700;font-size:11px}.nav{display:flex;align-items:center;gap:22px;flex:1;justify-content:center}.nav a{font-size:13px;font-weight:700;color:#214b6e;text-align:center}.nav span{display:block;font-size:20px;margin-bottom:3px}.searchbox{display:flex;border:1px solid #d8e7f1;border-radius:28px;overflow:hidden;width:280px}.searchbox input{border:0;padding:12px 15px;outline:0;min-width:0;flex:1}.searchbox button{width:50px;border:0;background:var(--blue);color:#fff;font-size:19px}.hero{background:linear-gradient(135deg,#eaf9ff,#dff5ff 48%,#fff1fa);padding:28px 0 0}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:20px;align-items:center}.hero-copy{padding:25px 10px}.eyebrow{display:inline-block;background:#fff;border:1px solid #d9effa;border-radius:999px;padding:7px 14px;color:var(--blue);font-size:12px;font-weight:800}.hero h1{font-size:clamp(38px,5vw,66px);line-height:1.05;margin:18px 0 14px;color:#0e5f9c;letter-spacing:-.04em}.hero h1 em{font-style:normal;color:var(--pink)}.hero p{font-size:17px;line-height:1.8;color:#496b82}.cta{display:inline-flex;gap:10px;align-items:center;background:linear-gradient(90deg,#ff4b99,#ff76b3);color:#fff;padding:14px 24px;border-radius:999px;font-weight:800;box-shadow:0 10px 20px rgba(255,79,155,.22)}.hero-art{min-height:360px;border-radius:32px 32px 0 0;background:radial-gradient(circle at 50% 25%,#fff 0 8%,transparent 9%),linear-gradient(145deg,#79d8ff,#138bd9 48%,#0c5d9e);position:relative;overflow:hidden}.hero-art:before{content:"";position:absolute;width:390px;height:390px;border-radius:50%;background:rgba(255,255,255,.14);right:-80px;top:-90px}.hero-art:after{content:"SWIM\A WITH YOUR STYLE";white-space:pre;position:absolute;right:28px;bottom:26px;color:#fff;font-size:31px;line-height:1.05;font-weight:900;text-align:right;opacity:.95}.swimmer{position:absolute;left:18%;bottom:0;width:58%;height:76%;border-radius:46% 46% 12% 12%;background:linear-gradient(150deg,#fff0f5 0 22%,#ffc5d9 23% 35%,#18395e 36% 100%);transform:skewX(-5deg);box-shadow:inset 24px 0 0 rgba(255,255,255,.16)}.swimmer:before{content:"";position:absolute;width:110px;height:110px;border-radius:50%;background:#ffd7c6;left:26%;top:-52px;box-shadow:0 12px 0 #f2a8bd}.swimmer:after{content:"";position:absolute;left:22%;top:30%;width:56%;height:15px;background:#ff4f9b;border-radius:10px;transform:rotate(-12deg)}
.quick{padding:18px 0;background:#fff}.quick-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.quick-card{height:118px;border-radius:14px;display:flex;align-items:flex-end;padding:14px;color:#fff;font-weight:900;position:relative;overflow:hidden;box-shadow:var(--shadow)}.quick-card:after{content:"›";position:absolute;right:10px;bottom:10px;width:30px;height:30px;border-radius:50%;background:#fff;color:var(--blue);display:grid;place-items:center;font-size:24px}.quick-card:nth-child(1){background:linear-gradient(135deg,#2b9be9,#155da7)}.quick-card:nth-child(2){background:linear-gradient(135deg,#ffb1d4,#f16aa5)}.quick-card:nth-child(3){background:linear-gradient(135deg,#d9e987,#73b848)}.quick-card:nth-child(4){background:linear-gradient(135deg,#37bce9,#1273ba)}.quick-card:nth-child(5){background:linear-gradient(135deg,#7dddf0,#0e84c4)}.quick-card small{display:block;font-size:11px;opacity:.9}.section{padding:28px 0}.section-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:14px}.section-title h2{font-size:22px;margin:0;color:#15588e}.section-title p{margin:0;color:var(--muted);font-size:12px}.brand-strip{background:#f3fbff;border:1px solid #e0eef5;border-radius:18px;padding:18px;display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.brand{background:#fff;border:1px solid #dbeaf3;border-radius:10px;min-height:66px;display:grid;place-items:center;font-weight:900;color:#263c4c;box-shadow:0 4px 10px rgba(21,99,145,.05)}.brand small{display:block;font-size:9px;color:#7c93a2;margin-top:3px}.products{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.product-card{border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden;box-shadow:0 6px 18px rgba(20,93,132,.06);transition:.2s}.product-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.product-img{height:205px;background:#f7fbfe;display:flex;align-items:center;justify-content:center;padding:8px}.product-img img{width:100%;height:100%;object-fit:contain;object-position:center}.product-body{padding:12px}.brand-name{font-size:10px;color:#1687df;font-weight:800}.product-name{font-size:13px;font-weight:800;line-height:1.55;margin:8px 0;min-height:40px}.price{font-size:16px;font-weight:900;color:#0c5f9b}.price small{font-size:10px;color:#7b8f9c;font-weight:600}.mini-link{float:right;width:28px;height:28px;border:1px solid #d5e8f2;border-radius:50%;display:grid;place-items:center;color:var(--blue);font-weight:900}.compare-panel{background:#eefaff;border-radius:18px;padding:22px;display:grid;grid-template-columns:1fr 1.6fr;gap:20px;align-items:center}.shop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.shop{background:#fff;border-radius:12px;padding:14px;border:1px solid #e0ebf2}.shop b{display:block;margin-bottom:5px}.shop span{font-size:12px;color:#718797}.guide{background:linear-gradient(90deg,#eafaff,#f4fbff);border-radius:18px;padding:22px;display:flex;align-items:center;justify-content:space-between;gap:20px}.guide h2{margin:0;color:#1470b2}.guide p{margin:7px 0 0;color:#658095}.icons{display:flex;gap:10px}.icon-pill{width:92px;text-align:center;font-size:11px;font-weight:800;color:#1c6396}.icon-pill i{display:grid;place-items:center;width:52px;height:52px;margin:auto;border-radius:50%;background:#fff;border:1px solid #d7edf7;font-style:normal;font-size:24px}.reasons{background:#f4fbff;border:1px solid #e0eef5;border-radius:18px;padding:18px;display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.reason{text-align:center;padding:10px;border-right:1px solid #d8e9f2}.reason:last-child{border-right:0}.reason b{display:block;margin:7px 0 4px}.reason span{font-size:11px;color:#718797}.footer{margin-top:35px;background:#0d5f99;color:#dff3ff;padding:30px 0}.footer a{color:#fff}.toolbar{background:#f2fbff;border-bottom:1px solid #e1edf4;padding:18px 0}.filter{display:flex;gap:10px;flex-wrap:wrap}.filter select,.filter input{padding:11px 13px;border:1px solid #cfe2ed;border-radius:10px;background:#fff}.btn{border:0;background:var(--blue);color:#fff;border-radius:10px;padding:11px 16px;font-weight:800}.compare-table{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.shop-card{border:1px solid var(--line);border-radius:16px;padding:18px;background:#fff;box-shadow:var(--shadow)}.shop-card h3{margin-top:0}.shop-card .big-price{font-size:28px;font-weight:900;color:#0c609d;margin:12px 0}.empty{padding:50px;text-align:center;color:var(--muted)}.notice{padding:12px 15px;background:#fff7e6;border:1px solid #ffe1a6;border-radius:10px;color:#77540a;font-size:12px}
@media(max-width:1100px){.nav{gap:12px}.logo{min-width:235px}.products{grid-template-columns:repeat(3,1fr)}.quick-grid{grid-template-columns:repeat(3,1fr)}.brand-strip{grid-template-columns:repeat(3,1fr)}}
@media(max-width:780px){.header{height:auto}.header-inner{padding:10px 0;flex-wrap:wrap}.logo{min-width:0;flex:1}.logo strong{font-size:18px}.logo img{width:45px;height:45px}.nav{order:3;width:100%;overflow:auto;justify-content:flex-start;padding-bottom:5px}.searchbox{width:100%}.hero-grid{grid-template-columns:1fr}.hero-art{min-height:300px}.quick-grid{grid-template-columns:repeat(2,1fr)}.brand-strip{grid-template-columns:repeat(2,1fr)}.products{grid-template-columns:repeat(2,1fr)}.product-img{height:180px}.compare-panel,.guide{grid-template-columns:1fr;display:grid}.shop-grid,.compare-table{grid-template-columns:1fr}.reasons{grid-template-columns:1fr 1fr}.reason{border-right:0;border-bottom:1px solid #d8e9f2}.icons{overflow:auto}.icon-pill{min-width:82px}}
@media(max-width:430px){.quick-grid,.products{grid-template-columns:1fr 1fr}.product-img{height:155px}.hero h1{font-size:38px}.reasons{grid-template-columns:1fr}}

/* STEP 10 additions: favorites, alerts, safer product presentation */
.action-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.btn-soft{background:#eef8ff!important;color:#168bd1!important;border:1px solid #cfeafa!important}.text-button{border:0;background:transparent;color:#168bd1;cursor:pointer;font-weight:700;padding:8px 0}.stack{display:grid;gap:14px}.eyebrow{font-size:12px;letter-spacing:.12em;color:#168bd1;font-weight:800;margin:0 0 4px}.product-card .product-img{display:flex;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(180deg,#f8fcff,#eef8ff);height:260px}.product-card .product-img img{width:100%;height:100%;object-fit:contain;padding:18px;display:block}.product-card h2{font-size:16px;line-height:1.5;margin:7px 0}.product-card .product-body{padding:14px}.nav{flex-wrap:wrap}.nav a{white-space:nowrap}
@media(max-width:900px){.nav a{font-size:11px}.header-inner{gap:10px}.searchbox{order:3;width:100%}.product-card .product-img{height:220px}}


/* supplied reference-image design: image-first homepage */
.reference-home{background:#fff;color:#16415f}
.reference-header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #e7f0f6;box-shadow:0 2px 14px rgba(0,90,140,.06)}
.reference-header .header-inner{max-width:1210px;min-height:78px;padding:6px 18px;gap:18px}
.reference-logo{display:block;width:325px;flex:0 0 325px}.reference-logo img{width:100%;height:66px;object-fit:contain;object-position:left center}
.reference-nav{display:flex;align-items:stretch;gap:3px;margin-left:auto;height:70px}.reference-nav a{display:flex;min-width:58px;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#18557b;font-size:10px;font-weight:800;border-bottom:3px solid transparent}.reference-nav a span{font-size:22px;line-height:1;color:#087fc1}.reference-nav a.active,.reference-nav a:hover{color:#087fc1;border-bottom-color:#087fc1}
.reference-search{height:42px;width:250px;border:1px solid #d5e5ef;border-radius:22px;display:flex;align-items:center;justify-content:space-between;padding:0 9px 0 16px;color:#7b8e9b;font-size:10px;box-shadow:0 2px 8px rgba(40,110,145,.04)}.reference-search b{width:44px;height:40px;margin-right:-9px;border-radius:0 22px 22px 0;background:#0c89d1;color:#fff;display:grid;place-items:center;font-size:22px}.heart-link{font-size:31px;color:#0b5a8d;line-height:1}
.reference-hero{width:100%;overflow:hidden;background:#bdeeff}.reference-hero-link{display:block}.reference-hero img{display:block;width:100%;height:auto;max-height:520px;object-fit:cover;object-position:center center}
.reference-section{max-width:1140px;margin:0 auto;padding:18px 0}.reference-categories{padding-top:18px;padding-bottom:12px}.reference-cat-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:13px}.reference-cat{height:160px;position:relative;display:block;border-radius:7px;overflow:hidden;box-shadow:0 2px 10px rgba(23,102,142,.1);background:#eaf8ff}.reference-cat img{width:100%;height:100%;object-fit:cover}.reference-cat-shade{position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,67,113,.72))}.reference-cat-copy{position:absolute;left:15px;bottom:12px;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.3)}.reference-cat-copy strong{display:block;font-size:19px}.reference-cat-copy small{font-size:12px}.reference-round-arrow{position:absolute;right:12px;bottom:12px;width:31px;height:31px;border-radius:50%;background:#fff;color:#0b78b6;display:grid;place-items:center;font-size:25px;line-height:1}
.reference-dual{display:grid;grid-template-columns:1.45fr .95fr;gap:14px;padding-top:8px}.reference-panel{border-radius:8px;background:#f3fbff;border:1px solid #e3f0f7;padding:16px 18px;box-shadow:0 4px 15px rgba(28,115,152,.05)}.reference-panel-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:12px}.reference-label{font-size:16px;font-weight:900;color:#0b5b89}.reference-pill{display:inline-block;margin-left:10px;background:#dff1fb;color:#1382bd;border-radius:99px;padding:4px 9px;font-size:10px}.reference-panel-head>a{font-size:10px;color:#1685bd;font-weight:800}.reference-brand-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:9px}.reference-brand-grid a{height:56px;background:#fff;border:1px solid #dbeaf2;border-radius:6px;display:grid;place-items:center;overflow:hidden}.reference-brand-grid img{max-width:90%;max-height:46px;object-fit:contain}.compare-reference-panel p{font-size:10px;color:#477086;margin:2px 0 10px}.reference-shop-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.reference-shop{min-height:45px;padding:0 12px;border-radius:8px;color:#fff;font-size:10px;font-weight:900;display:flex;align-items:center;justify-content:space-between;box-shadow:0 5px 12px rgba(0,0,0,.06)}.reference-shop.rak{background:#ee3b4f}.reference-shop.yah{background:#f04c72}.reference-shop.aup{background:#ff6a2a;grid-column:1/-1}.reference-shop b{font-size:20px}
.reference-products{padding-top:16px}.reference-section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.reference-section-title h2{font-size:18px;color:#15557c;margin:0}.reference-section-title h2:first-letter{color:#f0ae19}.reference-section-title a{font-size:10px;color:#1684ba;font-weight:800}.reference-product-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:11px}.reference-product-card{border:1px solid #dceaf2;border-radius:7px;background:#fff;overflow:hidden;box-shadow:0 3px 10px rgba(31,111,144,.05)}.reference-product-image{height:125px;display:grid;place-items:center;background:#fff;overflow:hidden}.reference-product-image img{width:100%;height:100%;object-fit:cover;object-position:center 52%;mix-blend-mode:multiply}.reference-product-body{position:relative;padding:8px 12px 13px}.reference-product-body small{font-size:9px;color:#0b5d89;font-weight:900}.reference-product-body h3{font-size:11px;line-height:1.55;margin:5px 23px 0 0;color:#35627a}.reference-product-arrow{position:absolute;right:9px;bottom:10px;width:23px;height:23px;border:1px solid #cde4ef;border-radius:50%;display:grid;place-items:center;color:#1587bc;font-size:19px}
.reference-guide{max-width:1140px;margin:10px auto 18px;min-height:126px;background:linear-gradient(90deg,#bcecff,#e8f8ff 58%,#dff6ff);display:grid;grid-template-columns:260px 1fr 430px;align-items:center;border-radius:4px;overflow:hidden}.reference-guide-image{height:126px;overflow:hidden}.reference-guide-image img{width:100%;height:100%;object-fit:cover}.reference-guide-copy{padding:12px 24px}.reference-guide-copy small{color:#0c76ac;font-size:10px;font-weight:900}.reference-guide-copy h2{color:#0876b2;font-size:25px;margin:3px 0}.reference-guide-copy p{font-size:10px;color:#3c6c84;margin:0}.reference-guide-links{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:10px}.reference-guide-links a{height:100px;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#155d85;font-size:9px;font-weight:900;text-align:center;box-shadow:0 2px 10px rgba(20,100,140,.08)}.reference-guide-links span{font-size:25px;line-height:1;margin-bottom:7px}
.reference-reasons{padding-top:14px;padding-bottom:20px}.reference-reasons h2{font-size:13px;color:#1b5274;margin:0 0 8px}.reference-reason-grid{display:grid;grid-template-columns:repeat(5,1fr);background:#f2faff;border:1px solid #e1eef5;border-radius:8px;overflow:hidden}.reference-reason-grid>div{padding:12px 15px;border-right:1px solid #dbeaf2;display:grid;grid-template-columns:42px 1fr;column-gap:8px;align-items:center}.reference-reason-grid>div:last-child{border-right:0}.reference-reason-grid b{grid-row:span 2;width:38px;height:38px;border-radius:50%;background:#fff;border:1px solid #cce7f4;color:#0c7db7;display:grid;place-items:center;font-size:20px}.reference-reason-grid strong{font-size:10px;color:#155b82}.reference-reason-grid p{font-size:8px;color:#638092;line-height:1.55;margin:0}
.reference-footer{background:#0c4565;color:#fff;padding:28px max(18px,calc((100% - 1140px)/2));display:grid;grid-template-columns:1fr auto;gap:15px}.reference-footer p{margin:4px 0;color:#b7d7e8;font-size:10px}.reference-footer>div:nth-child(2){display:flex;gap:18px;align-items:center;font-size:10px}.reference-footer small{grid-column:1/-1;color:#9fc5d8}
@media(max-width:1050px){.reference-logo{width:250px;flex-basis:250px}.reference-nav{gap:0}.reference-nav a{min-width:48px}.reference-search{width:190px}.reference-section,.reference-guide{margin-left:14px;margin-right:14px}.reference-product-grid{grid-template-columns:repeat(3,1fr)}.reference-reason-grid{grid-template-columns:repeat(3,1fr)}.reference-reason-grid>div:nth-child(3){border-right:0}.reference-reason-grid>div:nth-child(n+4){border-top:1px solid #dbeaf2}}
@media(max-width:760px){.reference-header .header-inner{min-height:60px}.reference-logo{width:205px;flex-basis:205px}.reference-logo img{height:52px}.reference-nav{display:none}.reference-search{margin-left:auto;width:44px;padding:0;justify-content:center;border:0;box-shadow:none}.reference-search{font-size:0}.reference-search b{margin:0;border-radius:50%;width:42px;height:42px}.heart-link{font-size:27px}.reference-hero img{min-height:230px;object-fit:cover}.reference-cat-grid{grid-template-columns:repeat(2,1fr);gap:8px}.reference-cat{height:140px}.reference-cat:last-child{grid-column:1/-1}.reference-dual{grid-template-columns:1fr;gap:8px}.reference-brand-grid{grid-template-columns:repeat(3,1fr)}.reference-shop-grid{grid-template-columns:1fr}.reference-shop.aup{grid-column:auto}.reference-product-grid{grid-template-columns:repeat(2,1fr)}.reference-guide{display:block}.reference-guide-image{height:150px}.reference-guide-copy{padding:14px 18px}.reference-guide-links{grid-template-columns:repeat(4,1fr);padding:8px}.reference-guide-links a{height:78px}.reference-guide-links span{font-size:20px}.reference-reason-grid{grid-template-columns:1fr}.reference-reason-grid>div{border-right:0!important;border-top:1px solid #dbeaf2}.reference-reason-grid>div:first-child{border-top:0}.reference-footer{display:block}.reference-footer>div:nth-child(2){margin-top:16px;flex-wrap:wrap}}


/* STEP 15: clean brand wordmarks replace clipped screenshot crops */
.reference-brand-grid .brand-tile{height:64px;padding:6px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;text-decoration:none;background:linear-gradient(180deg,#fff 0%,#f7fcff 100%);border:1px solid #d8eaf4;border-radius:10px;box-shadow:0 3px 10px rgba(28,115,152,.05);overflow:hidden}
.reference-brand-grid .brand-wordmark{display:block;line-height:1;font-size:21px;font-weight:950;letter-spacing:-.04em;white-space:nowrap}
.reference-brand-grid .brand-jp{display:block;font-size:9px;line-height:1;color:#7c93a2;font-weight:700}
.reference-brand-grid .brand-arena .brand-wordmark{font-family:Arial,sans-serif;letter-spacing:-.06em;text-transform:lowercase;color:#111}
.reference-brand-grid .brand-mizuno .brand-wordmark{font-style:italic;color:#1d4d9b}
.reference-brand-grid .brand-speedo .brand-wordmark{font-family:Arial,sans-serif;letter-spacing:-.08em;color:#283b52}
.reference-brand-grid .brand-asics .brand-wordmark{font-style:italic;color:#234d9b}
.reference-brand-grid .brand-tyr .brand-wordmark{font-size:24px;color:#111}
.reference-brand-grid .brand-jaked .brand-wordmark{font-family:Arial,sans-serif;color:#202a34}
@media(max-width:760px){.reference-brand-grid .brand-tile{height:60px}.reference-brand-grid .brand-wordmark{font-size:18px}.reference-brand-grid .brand-tyr .brand-wordmark{font-size:21px}}
