:root{--ssm-ink:#17212b;--ssm-muted:#65707d;--ssm-gold:#c79a3b;--ssm-gold2:#f5e6bd;--ssm-pearl:#fbfaf7;--ssm-blue:#dff2f7;--ssm-pink:#f8e8e7;--ssm-line:#e8e5df;--ssm-green:#1f6a57}
/* トップページでは旧レイアウト資産を完全に外す。ヘッダー・フッターは次フェーズで新設する。 */
body#page_homepage .ec-layoutRole__header,
body#page_homepage .ec-layoutRole__contentTop,
body#page_homepage .ec-layoutRole__mainTop,
body#page_homepage .ec-layoutRole__mainBottom,
body#page_homepage .ec-layoutRole__contentBottom,
body#page_homepage .ec-layoutRole__footer,
body#page_homepage .ec-layoutRole__left,
body#page_homepage .ec-layoutRole__right,
body#page_homepage .ec-drawerRole,
body#page_homepage .ec-drawerRoleClose,
body#page_homepage .ec-overlayRole,
body#page_homepage .pagetop{display:none!important}
body#page_homepage{margin:0!important;background:#fff!important}
body#page_homepage .ec-layoutRole,
body#page_homepage .ec-layoutRole__contents,
body#page_homepage .ec-layoutRole__main,
body#page_homepage .ec-layoutRole__mainWithColumn,
body#page_homepage .ec-layoutRole__mainBetweenColumn{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:#fff!important}
.ec-layoutRole__main{max-width:none!important;padding:0!important}.ec-layoutRole__contents{max-width:none!important}.ssm{background:#fff;color:var(--ssm-ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Yu Gothic",sans-serif;overflow:hidden}.ssm *{box-sizing:border-box}.ssm a{text-decoration:none}.ssm-shell{width:min(1240px,calc(100% - 40px));margin:auto}.ssm-mobile{display:none}
.ssm-search-area{padding:48px 0 34px;background:radial-gradient(circle at 82% 10%,rgba(245,230,189,.85),transparent 32%),linear-gradient(135deg,#fff 0%,#fbf7ef 58%,#eef8fa 100%)}.ssm-eyebrow{margin:0 0 8px;color:#9b7427;font-size:12px;font-weight:800;letter-spacing:.2em}.ssm-search-area h1{margin:0;font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:clamp(32px,4.3vw,58px);line-height:1.25;letter-spacing:.03em}.ssm-lead{margin:12px 0 24px;color:#57616c;font-size:17px}.ssm-search{display:grid;grid-template-columns:auto 118px 1fr 112px;align-items:center;max-width:980px;min-height:62px;background:#fff;border:2px solid #d0a44e;border-radius:16px;box-shadow:0 14px 35px rgba(78,59,20,.12);overflow:hidden}.ssm-search-category{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.ssm-search select{height:58px;border:0;border-right:1px solid var(--ssm-line);padding:0 16px;background:#faf9f6;font-size:16px}.ssm-search input{width:100%;height:58px;border:0!important;box-shadow:none!important;padding:0 20px;font-size:18px;outline:0}.ssm-search button{height:58px;margin:0;border:0;background:var(--ssm-green);color:#fff;font-size:17px;font-weight:800;cursor:pointer}.ssm-keywords{display:flex;gap:12px;align-items:center;margin-top:14px;font-size:14px;color:#7a8188}.ssm-keywords a{color:#43505c;text-decoration:underline;text-underline-offset:3px}
.ssm-category-nav{border-bottom:1px solid var(--ssm-line);background:#fff}.ssm-category-scroll{display:grid;grid-template-columns:repeat(6,1fr);gap:5px;padding:15px 0}.ssm-category-scroll a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border-radius:12px;color:#27333e;font-size:14px;transition:.2s}.ssm-category-scroll a:hover{background:#f5f1e8}.ssm-category-scroll span{font-size:22px}
.ssm-hero{padding:28px 0 10px}.ssm-hero-card{display:grid;grid-template-columns:1.05fr .95fr;min-height:410px;border-radius:28px;overflow:hidden;background:linear-gradient(135deg,#f7ead3,#f3f7f2);box-shadow:0 22px 55px rgba(43,38,28,.12);color:var(--ssm-ink)}.ssm-hero-copy{align-self:center;padding:54px 7vw}.ssm-hero-copy>span{font-size:12px;letter-spacing:.19em;color:#946e26;font-weight:800}.ssm-hero-copy h2{margin:12px 0;font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:clamp(31px,3.6vw,50px);line-height:1.35}.ssm-hero-copy p{color:#57616c;font-size:16px}.ssm-hero-copy b{display:inline-flex;margin-top:12px;padding:14px 24px;border-radius:100px;background:#173b34;color:#fff}.ssm-hero-card>img{width:100%;height:100%;min-height:410px;object-fit:cover}.ssm-hero-placeholder{display:grid;place-items:center;background:radial-gradient(circle,#fff 0,#dcebe8 46%,#b9d5cf);font-family:serif;font-size:44px;letter-spacing:.25em;color:#6f947f}
.ssm-section{padding:70px 0}.ssm-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28px}.ssm-heading span{color:#a67c2e;font-size:11px;font-weight:900;letter-spacing:.18em}.ssm-heading h2{margin:5px 0 5px;font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:32px}.ssm-heading p{margin:0;color:var(--ssm-muted)}.ssm-heading>a{color:#244a40;font-weight:800;border-bottom:1px solid #244a40}
.ssm-products{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.ssm-product{min-width:0;border:1px solid var(--ssm-line);border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 9px 25px rgba(24,35,43,.06)}.ssm-product-image{display:block;position:relative;aspect-ratio:1/1;background:#f5f4f0;overflow:hidden}.ssm-product-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.ssm-product:hover img{transform:scale(1.035)}.ssm-product-image em{position:absolute;left:10px;top:10px;padding:6px 10px;border-radius:100px;background:#fff7dc;color:#8e6418;font-size:11px;font-style:normal;font-weight:900}.ssm-product-body{padding:16px}.ssm-product-body small{color:#8a6a2a;font-weight:700}.ssm-product-body h3{min-height:48px;margin:6px 0 10px;font-size:16px;line-height:1.5}.ssm-product-body h3 a{color:#202b34}.ssm-price{margin:0 0 12px;font-size:21px;font-weight:900}.ssm-buy,.ssm-soldout{display:flex;align-items:center;justify-content:center;min-height:44px;border-radius:10px;font-weight:800}.ssm-buy{background:#f2c95f;color:#252116}.ssm-soldout{background:#eee;color:#777}.ssm-empty{text-align:center;padding:55px;border-radius:22px;background:var(--ssm-pearl)}.ssm-empty>span{font-size:36px}.ssm-empty h3{font-family:serif}.ssm-empty a{display:inline-block;padding:12px 20px;border-radius:100px;background:#21483e;color:#fff}
.ssm-shops-section{background:#faf8f3}.ssm-shops{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.ssm-shop{display:block;overflow:hidden;border-radius:18px;background:#fff;color:var(--ssm-ink);box-shadow:0 10px 25px rgba(40,35,25,.07)}.ssm-shop img{width:100%;aspect-ratio:16/10;object-fit:cover}.ssm-shop div{padding:16px}.ssm-shop strong,.ssm-shop span{display:block}.ssm-shop strong{font-size:18px}.ssm-shop span{margin-top:5px;color:var(--ssm-muted);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ssm-story-strip{padding:54px 0;background:linear-gradient(110deg,#172f2b,#24554a);color:#fff;text-align:center}.ssm-story-strip span{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:clamp(27px,4vw,42px)}.ssm-story-strip p{margin:10px 0 0;color:#dcece7}.ssm-official-section{background:linear-gradient(180deg,#fff,#f7f5ef)}.ssm-official-products{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.ssm-official-products>a{display:grid;grid-template-columns:160px 1fr;align-items:center;min-height:150px;border:1px solid #e7dfce;border-radius:18px;background:#fff;overflow:hidden;color:var(--ssm-ink)}.ssm-official-products img{width:160px;height:100%;object-fit:cover}.ssm-official-products div{display:flex;flex-direction:column;gap:7px;padding:22px}.ssm-official-products small{color:#a2782b;font-weight:800}.ssm-official-products strong{font-size:18px}.ssm-official-products span{font-weight:900}.ssm-promise{padding:65px 0;background:#fff}.ssm-promise h2{text-align:center;font-family:serif;font-size:30px}.ssm-promise .ssm-shell>div{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:28px}.ssm-promise p{margin:0;padding:26px;text-align:center;border-radius:18px;background:#faf9f6}.ssm-promise p span{display:grid;place-items:center;width:38px;height:38px;margin:0 auto 12px;border-radius:50%;background:#e3f0ec;color:#1f6a57;font-weight:900}.ssm-promise strong,.ssm-promise small{display:block}.ssm-promise strong{font-size:17px}.ssm-promise small{margin-top:7px;color:var(--ssm-muted)}
@media(max-width:900px){.ssm-products{grid-template-columns:repeat(3,1fr)}.ssm-shops{grid-template-columns:repeat(2,1fr)}.ssm-category-scroll{overflow-x:auto;display:flex}.ssm-category-scroll a{flex:0 0 140px}.ssm-hero-copy{padding:42px}.ssm-official-products>a{grid-template-columns:125px 1fr}.ssm-official-products img{width:125px}}
@media(max-width:640px){.ssm-shell{width:min(100% - 28px,1240px)}.ssm-mobile{display:block}.ssm-search-area{padding:30px 0 23px}.ssm-search-area h1{font-size:34px}.ssm-lead{font-size:15px}.ssm-search{grid-template-columns:1fr 84px;min-height:56px;border-radius:13px}.ssm-search select{display:none}.ssm-search input{height:54px;padding:0 14px;font-size:16px}.ssm-search button{height:54px;font-size:15px}.ssm-keywords{overflow-x:auto;white-space:nowrap}.ssm-category-scroll{width:100%;padding:11px 14px}.ssm-category-scroll a{flex-basis:116px;flex-direction:column;gap:2px;font-size:12px}.ssm-hero{padding-top:17px}.ssm-hero-card{grid-template-columns:1fr;min-height:0}.ssm-hero-copy{padding:30px 24px}.ssm-hero-copy h2{font-size:29px}.ssm-hero-card>img{min-height:230px;max-height:270px}.ssm-section{padding:48px 0}.ssm-heading{align-items:start}.ssm-heading h2{font-size:26px}.ssm-heading p{font-size:14px}.ssm-heading>a{white-space:nowrap;font-size:13px}.ssm-products{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;margin-right:-14px;padding:2px 14px 18px 0}.ssm-product{flex:0 0 76vw;scroll-snap-align:start}.ssm-product-body h3{min-height:0}.ssm-shops{grid-template-columns:1fr 1fr;gap:12px}.ssm-shop div{padding:12px}.ssm-shop strong{font-size:15px}.ssm-official-products{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.ssm-official-products>a{flex:0 0 86%;grid-template-columns:110px 1fr;scroll-snap-align:start}.ssm-official-products img{width:110px}.ssm-official-products div{padding:15px}.ssm-promise .ssm-shell>div{grid-template-columns:1fr;gap:10px}.ssm-promise p{padding:20px}.ssm-story-strip{padding:42px 0}.ssm-story-strip p{font-size:14px}}

/* Phase1.2 検索幅と販売イメージ商品 */
@media(min-width:641px){.ssm-search{grid-template-columns:118px minmax(0,1fr) 112px!important}}
.ssm-demo-label{margin:0 0 12px;color:#8a6a2a;font-size:14px;font-weight:800}.ssm-demo-button{display:flex;align-items:center;justify-content:center;min-height:44px;border-radius:10px;background:#edf3f0;color:#31594e;font-weight:800}.ssm-product-demo .ssm-product-image em{background:rgba(255,255,255,.94);color:#76571e}.ssm-product-demo:hover img{transform:scale(1.035)}
.ssm-market-aisles{display:flex;gap:12px;margin:-8px 0 24px;overflow-x:auto;padding-bottom:2px}.ssm-market-aisles a{flex:0 0 auto;padding:12px 18px;border:1px solid #e6ddcb;border-radius:999px;background:#fff;color:#26352f;font-weight:800}.ssm-market-aisles a:first-child{background:#213f37;color:#fff;border-color:#213f37}.ssm-official-products strong,.ssm-product-body h3{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.ssm-shop img,.ssm-official-products img{background:#f3efe6}
@media(max-width:640px){.ssm-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;overflow:visible}.ssm-product{min-width:0}.ssm-product-body{padding:12px}.ssm-product-body h3{min-height:42px;font-size:14px}.ssm-product-image em{left:7px;top:7px;padding:5px 7px;font-size:9px}.ssm-demo-button,.ssm-buy,.ssm-soldout{min-height:40px;font-size:13px}.ssm-market-aisles{margin-top:-10px}}

/* Phase1.4 実在ポータルから場所を選ぶ */
.ssm-world-heading{display:flex;align-items:end;justify-content:space-between;gap:22px;margin:8px 0 22px;padding-top:4px}.ssm-world-heading span,.ssm-normal-products-title span{color:#a67c2e;font-size:11px;font-weight:900;letter-spacing:.18em}.ssm-world-heading h3,.ssm-normal-products-title h3{margin:5px 0;font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:25px}.ssm-world-heading p{margin:0;color:var(--ssm-muted)}.ssm-world-heading>a{flex:0 0 auto;color:#244a40;font-weight:800;border-bottom:1px solid #244a40}.ssm-portals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:58px}.ssm-portal-card{overflow:hidden;border-radius:18px;background:#fff;color:var(--ssm-ink);box-shadow:0 10px 28px rgba(35,42,36,.09);transition:transform .25s,box-shadow .25s}.ssm-portal-card:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(35,42,36,.13)}.ssm-portal-card img{width:100%;aspect-ratio:16/10;object-fit:cover;background:#f2eee6}.ssm-portal-card div{padding:16px}.ssm-portal-card small,.ssm-portal-card strong,.ssm-portal-card span{display:block}.ssm-portal-card small{color:#9b7427;font-size:11px;font-weight:800}.ssm-portal-card strong{min-height:48px;margin-top:6px;font-size:17px;line-height:1.45}.ssm-portal-card span{margin-top:12px;color:#31594e;font-size:13px;font-weight:800}.ssm-portal-card b{font-size:17px}.ssm-normal-products-title{margin:0 0 18px;padding-top:4px;border-top:1px solid #e7dfce}.ssm-normal-products-title h3{font-size:22px}
@media(max-width:900px){.ssm-portals{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.ssm-world-heading{align-items:start}.ssm-world-heading h3{font-size:23px}.ssm-world-heading p{font-size:14px}.ssm-world-heading>a{font-size:13px;white-space:nowrap}.ssm-portals{display:flex;gap:14px;overflow-x:auto;margin-right:-14px;margin-bottom:42px;padding:2px 14px 18px 0;scroll-snap-type:x mandatory}.ssm-portal-card{flex:0 0 78vw;scroll-snap-align:start}.ssm-portal-card strong{min-height:0}.ssm-normal-products-title h3{font-size:20px}}

/* Phase2.1 新着優先・自動売場 */
.ssm-product-image .ssm-new-badge{background:#173b34;color:#fff;letter-spacing:.08em;box-shadow:0 5px 14px rgba(23,59,52,.2)}

/* Phase2.2 ポータル登録者プロフィール導線 */
.ssm-portal-place{display:block;color:var(--ssm-ink)}.ssm-portal-founder{display:flex!important;align-items:center;justify-content:space-between;gap:10px;padding:13px 16px!important;border-top:1px solid #eee8dc;background:#fcfbf8}.ssm-portal-founder>span{margin:0!important;color:#7b817d!important;font-size:11px!important;font-weight:700!important}.ssm-portal-founder>a,.ssm-portal-founder>strong{min-height:0!important;margin:0!important;color:#214f43;font-size:13px!important;font-weight:900;line-height:1.4}.ssm-portal-founder>a:hover{text-decoration:underline;text-underline-offset:3px}.ssm-portal-founder b{font-size:14px}

/* Phase2.3 ブランドLP・登録者画像 */
.ssm-shop-brand{display:block;color:var(--ssm-ink)}.ssm-shop-products-link{display:flex;align-items:center;justify-content:center;min-height:42px;border-top:1px solid #eee8dc;color:#245446;font-size:13px;font-weight:900}.ssm-shop-products-link:hover{background:#f3f8f5}.ssm-portal-card .ssm-portal-founder img{flex:0 0 30px;width:30px!important;height:30px!important;aspect-ratio:1/1!important;border-radius:50%;object-fit:cover;border:2px solid #fff;box-shadow:0 2px 7px rgba(25,51,41,.16)}.ssm-portal-founder>a,.ssm-portal-founder>strong{display:flex;align-items:center;gap:7px}.ssm-portal-founder i{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:normal}

/* Phase2.8 公開プロフィール共通導線 */
.ssm-portal-founder{align-items:flex-start!important;flex-direction:column!important;gap:7px!important}
.ssm-portal-founder__label{margin:0!important;color:#7b817d!important;font-size:10px!important;font-weight:800!important;letter-spacing:.06em}
.ssm-portal-founder .ssm-user-profile{display:flex;width:100%;min-height:46px!important;align-items:center;gap:10px;padding:5px 7px 5px 5px;border:1px solid #e5eee9;border-radius:13px;background:#f5faf7;color:#214f43;text-decoration:none}
.ssm-portal-founder .ssm-user-profile:hover{border-color:#9bc9b7;background:#edf7f2;text-decoration:none;transform:translateY(-1px)}
.ssm-portal-card .ssm-user-profile>img{flex:0 0 36px;width:36px!important;height:36px!important;border:2px solid #fff;box-shadow:0 3px 9px rgba(25,51,41,.18)}
.ssm-user-profile__text{display:flex!important;min-width:0;flex:1;flex-direction:column;margin:0!important}
.ssm-user-profile__text i{display:block;max-width:100%;overflow:hidden;color:#183f34;font-size:13px;font-style:normal;font-weight:900;text-overflow:ellipsis;white-space:nowrap}
.ssm-user-profile__text small{display:block!important;margin:1px 0 0!important;color:#4f776b!important;font-size:10px!important;font-weight:800!important;letter-spacing:0!important}
@media(max-width:640px){.ssm-portal-founder .ssm-user-profile{min-height:52px!important}.ssm-portal-card .ssm-user-profile>img{width:40px!important;height:40px!important;flex-basis:40px}.ssm-user-profile__text i{font-size:14px}.ssm-user-profile__text small{font-size:11px!important}}
