:root{--coral:#eb6f91;--coral-deep:#df5d81;--gold:#b99b61;--ink:#241f20;--pink:#fff7f8;--line:#e9dfd9;--shell:1080px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;font-size:16px;line-height:1.75}.shell{width:min(var(--shell),calc(100% - 80px));margin:0 auto}.site-header{position:relative;z-index:10;background:#fff;border-bottom:1px solid rgba(185,155,97,.14)}.header-inner{height:112px;display:flex;align-items:center;gap:34px}.brand{display:inline-flex;flex-direction:column;text-decoration:none;line-height:1}.brand-main{font-family:Georgia,"Times New Roman",serif;letter-spacing:.045em;color:var(--gold);font-size:36px}.brand-sub{font-family:Georgia,"Times New Roman",serif;color:var(--coral);letter-spacing:.21em;font-size:10px;margin:7px 0 0 4px}.desktop-nav{margin-left:auto;display:flex;align-items:center;gap:31px;font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:13px;font-weight:700}.desktop-nav a,.footer-links a{color:inherit;text-decoration:none}.desktop-nav a{transition:color .2s}.desktop-nav a:hover{color:var(--coral)}.button{display:inline-flex;justify-content:center;align-items:center;min-height:54px;padding:0 31px;border:1px solid var(--coral);border-radius:5px;background:var(--coral);color:#fff;text-decoration:none;font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:14px;font-weight:700;letter-spacing:.05em;transition:background .25s,transform .25s,border-color .25s}.button:hover{background:var(--coral-deep);border-color:var(--coral-deep);transform:translateY(-2px)}.button--small{min-height:40px;padding:0 20px;font-size:12px}.button--outline{border-color:var(--gold);background:#fff;color:#997c46}.button--outline:hover{background:#fff9ec;border-color:#997c46;color:#876a34}.hero{min-height:785px;display:grid;grid-template-columns:1fr 1fr;gap:86px;align-items:center;position:relative;padding:109px 0 115px}.eyebrow{margin:0 0 17px;font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:11px;font-weight:700;line-height:1.2;letter-spacing:.19em;color:var(--gold)}.hero h1{margin:0;color:var(--coral);font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif;font-size:clamp(58px,6vw,94px);font-weight:400;line-height:.91;letter-spacing:-.045em}.hero h1 span{display:block}.hero-title{margin:35px 0 20px;font-size:30px;line-height:1.55;letter-spacing:.02em}.hero-text{margin:0;font-size:14px;line-height:2;color:#514c4d}.hero-actions{display:flex;gap:13px;margin-top:31px}.hero-visual{position:relative}.photo-shape{overflow:hidden;aspect-ratio:1.08;border-radius:28% 10% 28% 12% / 18% 12% 31% 26%;transform:skewY(-2deg);background:#f7e7eb;animation:shape 11s ease-in-out infinite alternate}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:48% 22%;transform:skewY(2deg) scale(1.045);animation:photoBreath 11s ease-in-out infinite alternate}.slide-index{position:absolute;right:30px;bottom:20px;margin:0;font-family:Arial,sans-serif;font-size:10px;color:#765f40;letter-spacing:.1em}.slide-index span{font-weight:700}.scroll-label{position:absolute;right:-47px;top:50%;margin:0;color:var(--gold);font-family:Arial,sans-serif;font-size:9px;letter-spacing:.22em;writing-mode:vertical-rl}.voice-marquee{overflow:hidden;border-top:1px solid #f2adc0;border-bottom:1px solid #f2adc0;color:var(--coral);padding:11px 0;font-family:"Arial Narrow",Arial,sans-serif;font-size:29px;letter-spacing:.08em;line-height:1;white-space:nowrap}.voice-marquee__track{display:flex;width:max-content;animation:marquee 31s linear infinite}.voice-marquee__track span{padding-right:18px}.section{padding:148px 0}.section-heading h2,.reviews-heading h2,.join h2{margin:0;font-size:33px;font-weight:400;line-height:1.45}.category-carousel{position:relative;margin-top:60px}.category-track{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;overflow:hidden;scroll-behavior:smooth}.category-card{min-width:0;color:var(--ink);text-align:center;text-decoration:none}.category-picture{position:relative;display:flex;align-items:center;justify-content:center;height:205px;overflow:hidden;background:linear-gradient(145deg,#fff2f5,#f9e7ea);border-radius:24% 10% 24% 8% / 18% 10% 25% 10%;transition:transform .35s}.category-picture::after{content:"";position:absolute;width:130%;height:62%;bottom:-34%;background:radial-gradient(ellipse,rgba(230,143,170,.28),transparent 66%)}.category-picture img{position:relative;z-index:1;max-width:57%;max-height:76%;object-fit:contain;filter:drop-shadow(0 14px 10px rgba(89,55,63,.14));transition:transform .35s}.category-card:hover .category-picture{transform:translateY(-7px)}.category-card:hover img{transform:scale(1.055)}.category-card strong{display:block;margin-top:17px;font-size:19px;line-height:1.3;font-weight:400}.category-card small{display:block;margin-top:4px;color:var(--gold);font-family:Arial,sans-serif;font-size:9px;letter-spacing:.16em}.carousel-controls{position:absolute;right:0;top:-70px;display:flex;gap:12px}.carousel-controls button{width:39px;height:39px;border:1px solid #dedede;border-radius:50%;background:#fff;color:var(--ink);font-family:Arial,sans-serif;font-size:24px;line-height:1;cursor:pointer;transition:border-color .2s,color .2s}.carousel-controls button:hover{border-color:var(--coral);color:var(--coral)}.reviews-section{position:relative;background:var(--pink);overflow:hidden}.reviews-inner{position:relative;padding:145px 0 148px}.reviews-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:45px}.reviews-heading>div>p:last-child{margin:13px 0 0;font-size:14px;line-height:1.9}.text-link{padding:11px 23px;border:1px solid var(--coral);border-radius:5px;color:var(--coral);text-decoration:none;font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:13px;font-weight:700;white-space:nowrap;transition:background .2s,color .2s}.text-link:hover{background:var(--coral);color:#fff}.review-list{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:59px}.review-card{min-height:212px;padding:35px 36px;background:#fff;border:1px solid #d9b46e;border-radius:6px}.review-category{margin:0;color:var(--gold);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:12px;font-weight:700}.review-card h3{margin:13px 0 12px;font-size:23px;font-weight:400;line-height:1.45}.review-card p:last-child{margin:0;font-size:14px;color:#514c4d}.voice-bg{position:absolute;left:-8px;bottom:52px;color:rgba(237,111,145,.09);font-family:Georgia,"Times New Roman",serif;font-size:142px;line-height:1;letter-spacing:-.08em}.join{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:140px;align-items:center;min-height:450px;padding:126px 0;overflow:hidden}.join-title,.join-action{position:relative;z-index:1}.join-action{justify-self:end;max-width:333px}.join-action .button{min-width:240px}.join-action p{margin:18px 0 0;font-size:12px;line-height:1.85;color:#5b5655}.join-line{position:absolute;inset:auto 0 -8px;width:100%;height:185px;fill:none;stroke:#f4bed0;stroke-width:1.4px}.site-footer{border-top:1px solid var(--gold);padding:35px 0;background:#fff}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:28px}.site-footer .brand-main{font-size:29px}.site-footer .brand-sub{font-size:8px;margin-top:5px}.footer-links{display:flex;gap:20px;font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:11px}.footer-links a:hover{color:var(--coral)}.site-footer small{font-family:Arial,sans-serif;font-size:10px;color:#625f5d}.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}.menu-button,.mobile-nav{display:none}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes shape{0%{border-radius:28% 10% 28% 12% / 18% 12% 31% 26%}100%{border-radius:13% 24% 12% 29% / 25% 28% 13% 28%}}@keyframes photoBreath{to{transform:skewY(2deg) scale(1.09);object-position:53% 22%}}@media(max-width:900px){.shell{width:min(100% - 40px,680px)}.header-inner{height:79px;gap:16px}.brand-main{font-size:28px}.desktop-nav,.header-cta{display:none}.menu-button{display:flex;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;margin-left:auto;border:1px solid #e6d1d7;border-radius:4px;background:#fff}.menu-button span{display:block;width:18px;height:1px;margin:0 auto;background:var(--ink);transition:transform .2s}.menu-button.is-open span:first-child{transform:translateY(3px) rotate(45deg)}.menu-button.is-open span:last-child{transform:translateY(-3px) rotate(-45deg)}.mobile-nav{display:none;padding:12px 20px 24px;border-top:1px solid #f0e8e9;background:#fff}.mobile-nav.is-open{display:grid;gap:4px}.mobile-nav a:not(.button){padding:9px 0;color:var(--ink);text-decoration:none;font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:14px}.mobile-nav .button{margin-top:9px}.hero{min-height:auto;grid-template-columns:1fr;gap:46px;padding:67px 0 70px}.hero h1{font-size:clamp(52px,18vw,75px)}.hero-title{margin-top:27px;font-size:25px}.hero-visual{width:min(100%,500px);margin:auto}.scroll-label{display:none}.voice-marquee{font-size:21px}.section{padding:85px 0}.section-heading h2,.reviews-heading h2,.join h2{font-size:27px}.category-carousel{margin-top:43px}.category-track{display:flex;gap:17px;overflow:auto;scroll-snap-type:x mandatory;padding-bottom:12px}.category-card{flex:0 0 min(69vw,248px);scroll-snap-align:start}.category-picture{height:184px}.carousel-controls{display:none}.reviews-inner{padding:85px 0}.reviews-heading{display:block}.text-link{display:inline-flex;margin-top:24px}.review-list{grid-template-columns:1fr;gap:17px;margin-top:33px}.review-card{min-height:0;padding:27px}.voice-bg{font-size:102px;bottom:23px}.join{display:block;min-height:auto;padding:90px 0 115px}.join-action{margin-top:42px;justify-self:auto}.footer-inner{align-items:flex-start;flex-direction:column}.footer-links{flex-wrap:wrap;gap:8px 17px}.site-footer small{margin-top:-8px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}

/* ---- 以下、テンプレートに無いトップの部品（口コミの評価・商品・記事・開示文）を同じトーンで追加 ---- */
.review-rating{margin-left:10px;color:var(--coral);letter-spacing:.06em;font-weight:400}
.review-rating i,.product-card .stars i{font-style:normal;color:#ead7dc}
.review-card{display:flex;flex-direction:column}
.review-card p:last-of-type{margin:0;font-size:14px;color:#514c4d}
.review-product{margin-top:auto;padding-top:18px;color:#997c46;font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:12px;font-weight:700;text-decoration:none}
.review-product:hover{color:var(--coral)}
.section-heading--row{display:flex;justify-content:space-between;align-items:flex-end;gap:45px}
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:52px}
.product-card{display:flex;flex-direction:column;color:var(--ink);text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:6px;overflow:hidden;transition:transform .3s,border-color .3s}
.product-card:hover{transform:translateY(-5px);border-color:#d9b46e}
.product-card__img{display:flex;align-items:center;justify-content:center;aspect-ratio:1;padding:22px;background:linear-gradient(145deg,#fff7f8,#fbeef1)}
.product-card__img img{max-width:100%;max-height:100%;object-fit:contain}
.product-card__body{display:flex;flex-direction:column;flex:1;padding:18px 18px 20px}
.product-card__brand{color:var(--gold);font-family:Arial,sans-serif;font-size:10px;letter-spacing:.14em}
.product-card__name{margin:6px 0 14px;font-size:15px;font-weight:400;line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.product-card__meta{margin-top:auto;display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px;font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:12px}
.product-card__rate{color:#514c4d}
.product-card .stars{color:var(--coral);margin-right:4px;letter-spacing:.04em}
.product-card__rate--none{color:#8d8586}
.product-card__price{font-weight:700}
.items--bytype{background:var(--pink)}
.bytype-block{margin-top:64px}
.bytype-head{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding-bottom:14px;border-bottom:1px solid #f2c9d4}
.bytype-head h3{margin:0;font-size:23px;font-weight:400}
.bytype-head a{color:var(--coral);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap}
.bytype-head a:hover{text-decoration:underline}
.bytype-block .product-grid{margin-top:28px}
.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px 30px;margin-top:52px}
.article-card{display:flex;flex-direction:column;color:var(--ink);text-decoration:none}
.article-card__img{display:block;aspect-ratio:16/9;overflow:hidden;border-radius:6px;background:var(--pink)}
.article-card__img img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.article-card:hover .article-card__img img{transform:scale(1.04)}
.article-card__body{display:flex;flex-direction:column;padding-top:16px}
.article-card__cat{color:var(--gold);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:11px;font-weight:700}
.article-card strong{margin:6px 0 8px;font-size:16px;font-weight:400;line-height:1.65}
.article-card:hover strong{color:var(--coral)}
.article-card time{color:#8d8586;font-family:Arial,sans-serif;font-size:11px;letter-spacing:.06em}
.footer-disclosure{margin:0 0 24px;font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:11px;line-height:1.9;color:#7a7374}
@media(max-width:900px){
.section-heading--row{display:block}
.product-grid{grid-template-columns:repeat(2,1fr);gap:14px;margin-top:33px}
.product-card__img{padding:14px}
.product-card__body{padding:13px 13px 15px}
.product-card__name{font-size:14px}
.bytype-block{margin-top:48px}
.bytype-head{flex-direction:column;gap:6px}
.article-grid{grid-template-columns:1fr;gap:28px;margin-top:33px}
}
/* 口コミ帯は .reviews-inner が上下の余白を持つので、.section の余白と二重にしない */
.reviews-section.section{padding:0}
@media(max-width:900px){.section-heading h2,.reviews-heading h2,.join h2{font-size:24px}}

/* ==== 完成イメージ（2026-10-08）に合わせた調整 ==== */
/* 見出しと英字の帯は縦長の太い書体 */
.hero h1{font-family:"Bebas Neue","Arial Narrow",sans-serif;font-size:clamp(76px,8.4vw,128px);line-height:.88;letter-spacing:.005em}
.voice-marquee{font-family:"Bebas Neue","Arial Narrow",sans-serif;font-size:40px;letter-spacing:.12em;padding:12px 0 8px}
.voice-marquee em{font-style:normal;color:#f4a9be}

/* ヒーロー写真は斜めの平行四辺形。中の写真は逆向きに傾けて、まっすぐ見せる */
.hero-visual{padding:0 6%}
.photo-shape{aspect-ratio:.86;border-radius:26px;transform:skewX(-12deg);animation:none;background:#f7e7eb}
.hero-photo img{transform:skewX(12deg) scale(1.32);object-position:50% 20%;animation:heroBreath 12s ease-in-out infinite alternate}
@keyframes heroBreath{to{transform:skewX(12deg) scale(1.38);object-position:53% 22%}}

/* カテゴリの枠も平行四辺形。商品写真に差し替えても同じ形で切り抜く */
.category-track{padding:0 26px}
.category-picture{height:178px;border-radius:16px;transform:skewX(-14deg);background:linear-gradient(150deg,#fde9ee,#f8dbe2)}
.category-picture img{transform:skewX(14deg)}
.category-card:hover .category-picture{transform:skewX(-14deg) translateY(-7px)}
.category-card:hover img{transform:skewX(14deg) scale(1.055)}
.category-card strong{margin-top:20px}

/* 口コミ帯: 下端に大きな VOICE を半分沈める */
.voice-bg{bottom:-34px;left:-4px;color:rgba(237,111,145,.12)}
.reviews-inner{padding-bottom:120px}
.review-card{border-color:#e6c48a}

/* フッター: 1行にまとめ、リンクを「｜」で区切る */
.footer-links{gap:0;margin-left:auto}
.footer-links a+a::before{content:"｜";margin:0 12px;color:#b9b2b0}
.site-footer small{margin-left:28px}
.footer-disclosure{margin:22px 0 0}

@media(max-width:900px){
.hero h1{font-size:clamp(66px,21vw,92px)}
.voice-marquee{font-size:28px}
.hero-visual{width:min(100%,460px);padding:0 9%}
.category-track{padding:0 24px 12px}
.category-picture{height:160px}
.footer-links{margin-left:0;flex-wrap:wrap;row-gap:6px}
.site-footer small{margin-left:0}
}

/* ==== 余白を詰める（2026-10-08 ユーザー指示「余白が広すぎる」） ==== */
.header-inner{height:88px}
.hero{min-height:0;padding:64px 0 76px;gap:64px}
.hero-title{margin:26px 0 16px}
.hero-actions{margin-top:26px}
.section{padding:96px 0}
.category-carousel{margin-top:44px}
.carousel-controls{top:-62px}
.reviews-inner{padding:92px 0 96px}
.review-list{margin-top:44px}
.product-grid,.article-grid{margin-top:40px}
.bytype-block{margin-top:48px}
.join{min-height:0;padding:88px 0 104px}
.site-footer{padding:28px 0}
.footer-disclosure{margin-top:16px}
@media(max-width:900px){
.header-inner{height:72px}
.hero{padding:44px 0 52px;gap:36px}
.section{padding:60px 0}
.category-carousel{margin-top:30px}
.reviews-inner{padding:60px 0 72px}
.review-list,.product-grid,.article-grid{margin-top:28px}
.bytype-block{margin-top:36px}
.join{padding:60px 0 84px}
.join-action{margin-top:30px}
}

/* ==== 余白をさらに詰める（2026-10-08 2回目） ==== */
.header-inner{height:80px}
.hero{padding:40px 0 56px;gap:56px}
.hero-title{margin:20px 0 12px}
.hero-actions{margin-top:22px}
.voice-marquee{padding:9px 0 6px}
.section{padding:72px 0}
.category-carousel{margin-top:36px}
.carousel-controls{top:-58px}
.category-card strong{margin-top:14px}
.reviews-inner{padding:68px 0 72px}
.review-list{margin-top:36px}
.review-card{padding:28px 32px}
.product-grid,.article-grid{margin-top:32px}
.bytype-block{margin-top:40px}
.bytype-block .product-grid{margin-top:22px}
.join{padding:64px 0 80px}
.site-footer{padding:24px 0}
@media(max-width:900px){
.header-inner{height:68px}
.hero{padding:32px 0 40px;gap:28px}
.section{padding:48px 0}
.category-carousel{margin-top:24px}
.reviews-inner{padding:48px 0 56px}
.review-list,.product-grid,.article-grid{margin-top:22px}
.review-card{padding:22px}
.bytype-block{margin-top:30px}
.join{padding:48px 0 68px}
.join-action{margin-top:24px}
}

/* ==== カテゴリを全部出して横に流す（2026-10-08） ==== */
.category-track{display:flex;gap:28px;overflow-x:auto;scroll-behavior:auto;scroll-snap-type:none;scrollbar-width:none;padding:0 26px 4px}
.category-track::-webkit-scrollbar{display:none}
.category-card{flex:0 0 228px;scroll-snap-align:none}
.category-ph{position:relative;z-index:1;transform:skewX(14deg);padding:0 18px;text-align:center;color:#e88aa5;font-family:"Bebas Neue","Arial Narrow",sans-serif;font-size:38px;line-height:.95;letter-spacing:.06em;word-spacing:100vw}
@media(max-width:900px){
.category-track{gap:16px;padding:0 24px 8px}
.category-card{flex:0 0 min(46vw,190px)}
.category-picture{height:136px}
}
@media(max-width:900px){.category-ph{font-size:30px}}

/* ==== ヒーロー写真の差し替え（hero-top.jpg・顔が右寄りの写真）2026-10-08 ==== */
.hero-photo img{object-position:64% 30%;transform-origin:64% 36%;transform:skewX(12deg) scale(1.26);animation:heroBreath2 12s ease-in-out infinite alternate}
@keyframes heroBreath2{to{transform:skewX(12deg) scale(1.31);object-position:62% 30%}}

/* ==== カテゴリのスライダー: PCは画面の横幅いっぱい（2026-10-08） ==== */
main{overflow-x:clip}
@media(min-width:901px){
.category-track{width:100vw;margin-left:calc(50% - 50vw);padding:0 0 4px}
}

/* ==== フッター: 完成イメージどおり1行（ロゴ / リンク｜区切り / ©）2026-10-08 ==== */
.site-footer{padding:20px 0;border-top:1px solid #d9c08f}
.footer-inner{gap:0}
.site-footer .brand-main{font-size:27px}
.site-footer .brand-sub{font-size:8px;margin:4px 0 0 10px;letter-spacing:.24em}
.footer-links{margin-left:auto;font-size:11px;letter-spacing:.04em;color:#3d3738}
.footer-links a+a::before{content:"|";margin:0 16px;color:#8d8586}
.site-footer small{margin-left:44px;font-size:10px;color:#3d3738;letter-spacing:.02em}
@media(max-width:900px){
.footer-inner{gap:14px}
.footer-links{margin-left:0}
.footer-links a+a::before{margin:0 10px}
.site-footer small{margin:0}
}

/* ==== 「あなたの体験が」欄のピンクの線: 完成イメージどおり、上端の1点から2本（2026-10-08） ==== */
/* 1本はまっすぐ右下のフッター線へ、もう1本は弧を描いて画面右端へ抜ける。線は画面の横幅いっぱいに引く */
.join{overflow:visible}
.join-line{inset:0 auto 0 calc(50% - 50vw);width:100vw;height:100%;z-index:0}
.join-line path{fill:none;stroke:#f5b9cb;stroke-width:1.3px;vector-effect:non-scaling-stroke}

/* ==== カテゴリの写真（枠いっぱい・平行四辺形に切り抜き）2026-10-08 ==== */
.category-picture--photo{background:#f6e3e8}
.category-picture--photo::after{display:none}
.category-picture img.is-cover{position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;object-position:50% 42%;filter:none;transform:skewX(14deg) scale(1.22)}
.category-card:hover .category-picture img.is-cover{transform:skewX(14deg) scale(1.28)}

/* ==== カテゴリの写真枠を縦長に（2026-10-08） ==== */
.category-picture{height:250px}
.category-picture img.is-cover{transform:skewX(14deg) scale(1.3)}
.category-card:hover .category-picture img.is-cover{transform:skewX(14deg) scale(1.36)}
@media(max-width:900px){
.category-picture{height:190px}
}
/* 縦長の枠では拡大すると上下が切れるので、拡大せずに横幅だけ傾き分（高さ×tan14°）広げて隙間を埋める */
.category-picture img.is-cover{inset:0 auto 0 50%;width:calc(100% + 64px);object-position:50% 50%;transform:translateX(-50%) skewX(14deg)}
.category-card:hover .category-picture img.is-cover{transform:translateX(-50%) skewX(14deg) scale(1.05)}
@media(max-width:900px){
.category-picture img.is-cover{width:calc(100% + 50px)}
}

/* ==== ヒーロー写真の切り抜き枠: 完成イメージどおりの角の丸い六角形（2026-10-08） ==== */
/* 上辺は水平、右辺は急な傾きで右下へ、下辺はゆるく左下へ、左側は下寄りに角。形は #hero-clip（SVG）で切り抜く */
.hero-clip-defs{position:absolute;width:0;height:0;overflow:hidden}
.hero-visual{padding:0}
.photo-shape{position:relative;aspect-ratio:.97;border-radius:0;transform:none;animation:none;background:#f7e7eb;-webkit-clip-path:url(#hero-clip);clip-path:url(#hero-clip)}
/* 顔が枠の中央付近・頭の上にゆとり・手と肩まで入るよう、写真を少しだけ拡大して右上を基準に寄せる */
.hero-photo img{object-position:50% 0%;transform-origin:100% 0%;transform:scale(1.12);animation:heroBreath3 12s ease-in-out infinite alternate}
@keyframes heroBreath3{to{transform:scale(1.15)}}
@media(max-width:900px){.hero-visual{width:min(100%,440px)}}

/* ==== ヒーローの寸法を完成イメージに合わせる（2026-10-08・PCのみ） ==== */
/* 完成イメージをコンテンツ幅1080pxに換算: 写真 約628×651px（幅の57%）、FIND YOUR 約117px、
   見出し 約39px、説明文 約21px、ボタン 約221×55px。文字の下端と写真の下端をそろえる */
@media(min-width:901px){
.hero{grid-template-columns:minmax(0,43fr) minmax(0,57fr);gap:0;align-items:end}
.hero-copy{position:relative;z-index:2}
.hero .eyebrow{font-size:13px;margin:0 0 10px}
.hero h1{font-size:clamp(72px,9.1vw,117px);line-height:1.06}
.hero-title{margin:clamp(10px,1.2vw,16px) 0 clamp(6px,.7vw,10px);font-size:clamp(28px,3.05vw,39px);line-height:1.6}
.hero-text{font-size:clamp(16px,1.64vw,21px);line-height:1.85;color:#4a4546}
.hero-actions{margin-top:clamp(22px,2.5vw,32px);gap:22px}
.hero-actions .button{min-width:clamp(170px,17.3vw,221px);min-height:55px;font-size:16px}
}
/* 写真の中の女性: 完成イメージどおり顔を枠の横45%・縦33%あたりに、少し大きく */
.hero-photo img{object-position:50% 0%;transform-origin:100% 64.5%;transform:scale(1.25);animation:heroBreath4 12s ease-in-out infinite alternate}
@keyframes heroBreath4{to{transform:scale(1.28)}}

/* ==== ヒーローと「あなたの体験が」欄の背景: 薄いムラのあるピンク（2026-10-08）。ヘッダーは白のまま ==== */
/* どちらも .shell で幅が決まっているので、背景だけ ::before で画面の横幅いっぱいに敷く */
.hero::before,.join::before{
  content:"";position:absolute;top:0;bottom:0;left:calc(50% - 50vw);width:100vw;z-index:-1;pointer-events:none;
  background-color:#fef6f8;
  background-image:
    radial-gradient(ellipse 34% 60% at 6% 22%,rgba(250,224,232,.55),transparent 70%),
    radial-gradient(ellipse 30% 55% at 30% 78%,rgba(255,252,253,.8),transparent 70%),
    radial-gradient(ellipse 32% 65% at 55% 12%,rgba(249,222,230,.45),transparent 72%),
    radial-gradient(ellipse 28% 55% at 78% 85%,rgba(255,251,252,.75),transparent 70%),
    radial-gradient(ellipse 30% 70% at 96% 40%,rgba(250,224,232,.5),transparent 72%);
}
