/* PC確認版：26pxの本文、短い段落、相談先が分かる静的ページ。 */
.seo-header{max-width:1280px;margin:auto;padding:24px 32px}.seo-header .taisei-logo{width:400px;margin:auto}
.seo-header nav{display:flex;justify-content:center;gap:28px;flex-wrap:wrap;margin-top:24px;font-size:24px}.seo-header nav a{padding:10px 0;border-bottom:1px solid var(--line)}
.seo-main{max-width:1240px;margin:auto;padding:32px 48px 80px}.breadcrumbs{font-size:22px;margin:0 0 40px}.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:10px 20px;list-style:none;padding:0}.breadcrumbs li+li:before{content:'／';margin-right:20px;color:var(--muted)}.breadcrumbs a{text-decoration:underline;text-underline-offset:5px}
.seo-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(240px,.8fr);gap:64px;align-items:center;padding-bottom:48px;border-bottom:2px solid var(--brand-red)}.seo-hero h1{font-size:46px;line-height:1.55}.seo-hero p{font-size:26px}.seo-hero figure{margin:0}.seo-hero img{width:100%;height:auto;max-height:420px;object-fit:contain}.seo-hero .scene-photo{height:260px}.seo-hero .scene-photo img{height:auto;max-height:none;object-fit:initial}.seo-hero figcaption{font-size:20px;margin-top:12px;color:var(--muted)}
.seo-toc{padding:28px 0;border-bottom:1px solid var(--line)}.seo-toc p{font-size:24px;font-weight:700;margin:0 0 12px}.seo-toc ul{display:flex;gap:12px 28px;flex-wrap:wrap;padding:0;list-style:none;margin:0}.seo-toc a{font-size:24px;text-decoration:underline;text-underline-offset:5px}
.seo-body{max-width:960px;margin:auto}.seo-section{padding-top:56px;scroll-margin-top:32px}.seo-section h2{font-size:36px}.seo-section p,.seo-section li{font-size:26px;line-height:1.9}.seo-section li{margin-bottom:12px}.seo-section a:not(.button){text-decoration:underline;text-underline-offset:5px}
.seo-faq details{padding:0 0 12px}.seo-faq summary{font-size:28px;font-weight:500;line-height:1.7}.seo-faq details>p{font-size:26px;max-width:100%;color:var(--ink)}
.seo-consult{background:var(--brand-soft);padding:40px;margin-top:56px}.seo-consult h2{font-size:34px}.seo-consult p{font-size:26px}.seo-consult .button{font-size:26px}.seo-consult .phone-link{display:block;margin-top:20px;font-size:30px;color:var(--brand-red)}.seo-consult .small-note{font-size:22px;margin:20px 0 0}
.seo-related{margin-top:48px}.seo-related h2{font-size:32px}.seo-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px}.seo-link-grid a{display:block;border-bottom:1px solid var(--line);padding:20px 0;font-size:26px}.seo-link-grid small{display:block;font-size:22px;color:var(--muted);margin-top:8px}.seo-link-grid a:hover{color:var(--brand-red)}
.seo-byline{border-top:1px solid var(--line);padding-top:24px;margin-top:48px;font-size:22px}.seo-byline p{margin:8px 0}.seo-note{font-size:22px!important;color:var(--muted)}
.seo-details{margin:0}.seo-details>div{display:grid;grid-template-columns:180px 1fr;gap:24px;padding:18px 0;border-bottom:1px solid var(--line)}.seo-details dt{font-weight:700}.seo-details dd{margin:0;overflow-wrap:anywhere}.seo-product-price{font-size:34px!important;color:var(--brand-red)}
.seo-inline-links{padding:36px 0;border-block:1px solid var(--line);margin:40px auto;max-width:1232px}.seo-inline-links h2{font-size:34px}.seo-inline-links .seo-link-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.seo-inline-links a{font-size:24px}
.seo-footer{max-width:1280px;padding:40px 32px;margin:auto;border-top:2px solid var(--brand-red)}.seo-footer nav{display:flex;gap:20px 32px;flex-wrap:wrap;font-size:24px}.seo-footer p{font-size:22px;margin:24px 0 0}.seo-header a:focus-visible,.seo-main a:focus-visible{outline:3px solid var(--brand-red);outline-offset:5px}
.seo-static-products .product-name a{text-decoration:none}.seo-static-products .product-image{padding:0}.seo-static-products .product-image img{margin:auto}
.site-header .main-nav{flex-wrap:wrap;height:auto;padding:16px 20px}.seo-root-footer{display:flex;flex-direction:column;gap:24px}.seo-root-footer nav{display:flex;flex-wrap:wrap;gap:20px 32px;font-size:24px}
.seo-hero .scene-photo{position:relative;overflow:hidden}
.seo-hero .scene-photo img{position:absolute;right:0;top:50%;width:200%;max-width:none;transform:translateY(-50%)}
.seo-hero-actions{display:flex;align-items:flex-start;flex-direction:column;gap:16px}.seo-hero-actions .button{font-size:24px}
.seo-footer-logo{display:block;max-width:300px;margin-bottom:32px}
.product-save.text-link{font-size:22px;min-height:48px;margin-top:12px;letter-spacing:0;padding:0 0 8px;line-height:1.6}
/* 結婚祝いの記事構成案。PCの読みやすさを先に確認する。 */
.wedding-article{--article-rule:#d8c8c6;line-height:1.9}
.wedding-article .article-date{font-size:22px;color:var(--muted);margin:32px 0 24px}
.wedding-intro{border-left:4px solid var(--brand-red);padding:4px 0 4px 28px;margin:0 0 32px}
.wedding-intro p{font-size:26px;margin:12px 0}.wedding-intro strong{font-size:30px;line-height:1.7}
.wedding-toc ol{display:grid;grid-template-columns:1fr 1fr;gap:16px 40px;padding-left:32px;margin:20px 0 0;font-size:24px}.wedding-toc li{padding-left:4px}
.wedding-article .seo-section{padding-top:72px}.wedding-article h2{line-height:1.6;margin:0 0 28px;padding-bottom:20px;border-bottom:2px solid var(--brand-red)}
.wedding-article h3{font-size:30px;line-height:1.7;margin:32px 0 16px}.wedding-article p{margin:16px 0 24px}
.wedding-budget{width:100%;border-collapse:collapse;table-layout:fixed;font-size:24px;line-height:1.8;margin-top:32px}
.wedding-budget caption{text-align:left;font-size:28px;font-weight:700;margin-bottom:16px}.wedding-budget th,.wedding-budget td{padding:22px 20px;text-align:left;vertical-align:top;border-bottom:1px solid var(--article-rule)}
.wedding-budget thead{background:var(--brand-soft)}.wedding-budget th:nth-child(1){width:34%}.wedding-budget th:nth-child(2){width:25%}.wedding-budget tbody th{font-weight:500}.wedding-budget td:nth-child(2){font-weight:700;color:var(--brand-red)}
.wedding-article .article-source,.wedding-article .article-editorial-note{font-size:22px;line-height:1.8;color:#625653}.wedding-article .article-source a{text-underline-offset:4px}
.wedding-steps{padding-left:36px}.wedding-steps li{padding:0 0 12px 12px;border-bottom:1px solid var(--article-rule)}.wedding-steps li::marker{color:var(--brand-red);font-weight:700}.wedding-steps h3{margin-top:24px}
.wedding-aside{padding:28px 32px;background:#f5f0eb;margin:32px 0}.wedding-aside h3{margin-top:0}.wedding-aside p:last-child{margin-bottom:0}
.wedding-gift{display:grid;grid-template-columns:260px minmax(0,1fr);gap:40px;border-bottom:1px solid var(--article-rule);padding:32px 0}.wedding-gift h3{margin-top:12px}.wedding-gift .wedding-wish{color:var(--brand-red);font-size:24px}.wedding-gift .article-source{margin-bottom:0}
.wedding-noshi{border-top:1px solid var(--article-rule)}.wedding-noshi>div{display:grid;grid-template-columns:240px 1fr;gap:32px;border-bottom:1px solid var(--article-rule);padding:20px 0;font-size:26px}.wedding-noshi dt{font-weight:700}.wedding-noshi dd{margin:0}
.wedding-message{padding-left:24px;border-left:3px solid var(--brand-red)}.wedding-article .seo-faq summary{font-size:28px}.wedding-article .seo-faq summary:focus-visible{outline:3px solid var(--brand-red);outline-offset:5px}
.wedding-article .article-editorial-note{border-top:1px solid var(--article-rule);padding-top:24px;margin-top:40px}
/* 利用シーン：短い選び方・予算を読んでから、同じページで実商品を選ぶ。 */
.seo-scene-page .breadcrumbs{margin-bottom:24px}.scene-guide-hero{padding-bottom:32px;border-bottom:2px solid var(--brand-red)}
.scene-guide-hero h1{font-size:44px;line-height:1.6;margin:0 0 24px}.scene-quick-guide{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin:0}
.scene-quick-guide>div{min-width:0}.scene-quick-guide dt{font-size:28px;font-weight:700;margin-bottom:12px}.scene-quick-guide dd{font-size:26px;line-height:1.8;margin:0}
.scene-budget-source{display:block;font-size:22px;text-decoration:underline;text-underline-offset:4px;margin-top:12px}.scene-guide-actions{display:flex;gap:32px;flex-wrap:wrap;margin-top:24px}.scene-guide-actions a{font-size:24px}
.seo-scene-page .seo-body{max-width:none}.scene-products{padding-top:40px;scroll-margin-top:24px}.scene-products-heading{display:flex;justify-content:space-between;align-items:baseline;gap:24px;flex-wrap:wrap}.scene-products-heading h2{font-size:36px;line-height:1.6;margin:0}.scene-products-heading>a{font-size:24px}
.scene-stock-note,.scene-source-note{font-size:22px;line-height:1.8;color:#625653;margin:16px 0 28px}.scene-source-note{margin-top:32px}.scene-source-note a{display:block;text-decoration:underline;text-underline-offset:5px}
.scene-products-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.scene-product{min-width:0;display:flex;flex-direction:column}
.scene-product-image{display:block;background:#fff}.scene-product-image img{display:block;width:100%;aspect-ratio:1;height:auto;object-fit:contain}
.scene-product .scene-product-kind{font-size:22px;color:#625653;line-height:1.6;margin:20px 0 10px}.scene-product h3{font-size:28px;line-height:1.65;margin:0 0 14px;overflow-wrap:anywhere}.scene-product h3 a:hover{color:var(--brand-red)}
.scene-product-price{font-size:30px;line-height:1.6;color:var(--brand-red);font-weight:700;margin:0 0 16px}.scene-product-price span{display:block;font-size:22px;font-weight:400;color:#625653}.scene-product-reason{font-size:26px;line-height:1.8;margin:0 0 24px}
.scene-photo-note{font-size:22px;line-height:1.7;color:#625653;margin:0 0 20px}
.scene-product-actions{display:flex;flex-direction:column;gap:16px;margin-top:auto;padding-top:16px;border-top:1px solid var(--line)}.scene-product-actions a{font-size:24px;align-self:flex-start;line-height:1.7}
.scene-products-help{padding:28px 32px;background:var(--brand-soft);margin:32px 0 48px;display:flex;align-items:center;gap:24px;flex-wrap:wrap}.scene-products-help p{font-size:26px;margin:0}.scene-products-help .button{font-size:24px}
.scene-guide-detail{max-width:960px;margin:auto;border-top:1px solid var(--line);padding-top:24px;scroll-margin-top:24px}.seo-scene-page .seo-body>.seo-consult,.seo-scene-page .seo-body>.seo-related,.seo-scene-page .seo-body>.seo-byline{max-width:960px;margin-left:auto;margin-right:auto}
@media(prefers-reduced-motion:reduce){.seo-main *, .seo-main *:before{transition:none!important;animation:none!important}}
