/* START-WEDDING design 2026 — layered on JIN 2.931. Everything is scoped to .sw-design-2026 (body class from the mu-plugin). */
:root {
  --sw-ivory: #FBF8F4;
  --sw-white: #FFFFFF;
  --sw-blush: #F3E6E1;
  --sw-line: #EDE4DC;
  --sw-gold: #C9AE85;
  --sw-rose: #94584F;
  --sw-rose-dark: #6E3F38;
  --sw-ink: #2E2A28;
  --sw-ink-2: #4E4642;
  --sw-muted: #6B625D;
  --sw-serif: 'Shippori Mincho', 'Yu Mincho', 'Hiragino Mincho ProN', serif;
  --sw-sans: 'Noto Sans JP', 'Hiragino Sans', 'Yu Gothic', sans-serif;
  --sw-latin: 'Cormorant Garamond', 'Times New Roman', serif;
}

/* ---------- base ---------- */
.sw-design-2026,
.sw-design-2026 #wrapper { background-color: var(--sw-ivory); }
.sw-design-2026 body,
.sw-design-2026 #wrapper,
.sw-design-2026 .cps-post-main,
.sw-design-2026 .sideber { font-family: var(--sw-sans); color: var(--sw-ink); }
.sw-design-2026 .cps-post-main { font-size: 16px; line-height: 2; letter-spacing: 0.02em; }
.sw-design-2026 a { color: var(--sw-rose); }
.sw-design-2026 a:hover { color: var(--sw-rose-dark); }
.sw-design-2026 ::selection { background: var(--sw-blush); }

/* ---------- top navigation row ---------- */
.sw-design-2026 #nav-container,
.sw-design-2026 .header-style6-box { background: var(--sw-white) !important; border-bottom: 1px solid var(--sw-line); box-shadow: none !important; }
.sw-design-2026 #drawernav5 .menu-box a,
.sw-design-2026 #drawernav5 .menu-box li a { color: var(--sw-ink) !important; font-family: var(--sw-sans); font-size: 13px; letter-spacing: 0.1em; }
.sw-design-2026 #drawernav5 .menu-box li { border: 0 !important; }
.sw-design-2026 #drawernav5 .menu-box a:hover { color: var(--sw-rose) !important; }
.sw-design-2026 #headmenu .headsns a,
.sw-design-2026 #headmenu .headsearch a,
.sw-design-2026 #headmenu i { color: var(--sw-muted) !important; }

/* ---------- logo: text wordmark in place of the old image (the img stays for screen readers) ---------- */
.sw-design-2026 #header-box,
.sw-design-2026 #header { background: var(--sw-white) !important; }
.sw-design-2026 #site-info { padding: 28px 0 26px !important; }
/* PC puts the logo in .tn-logo-size, phones in .sp-logo-size */
.sw-design-2026 #site-info .tn-logo-size a,
.sw-design-2026 #site-info .sp-logo-size a {
  display: inline-flex; flex-direction: column; align-items: center; gap: 6px;
  text-decoration: none; color: var(--sw-ink) !important;
}
.sw-design-2026 #site-info .tn-logo-size img,
.sw-design-2026 #site-info .sp-logo-size img {
  position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap;
}
.sw-design-2026 #site-info .tn-logo-size a::before,
.sw-design-2026 #site-info .sp-logo-size a::before {
  content: 'START WEDDING';
  font-family: var(--sw-latin); font-weight: 500; font-size: 38px; letter-spacing: 0.34em; line-height: 1.1;
  padding-left: 0.34em; color: var(--sw-ink);
}
.sw-design-2026 #site-info .tn-logo-size a::after,
.sw-design-2026 #site-info .sp-logo-size a::after {
  content: '元プランナーと花嫁の、本音のドレス案内';
  font-family: var(--sw-serif); font-weight: 500; font-size: 12px; letter-spacing: 0.26em; color: var(--sw-muted);
}
@media (max-width: 767px) {
  .sw-design-2026 #site-info { padding: 14px 0 12px !important; }
  .sw-design-2026 #site-info .tn-logo-size a::before,
  .sw-design-2026 #site-info .sp-logo-size a::before { font-size: 22px; letter-spacing: 0.24em; padding-left: 0.24em; }
  .sw-design-2026 #site-info .tn-logo-size a::after,
  .sw-design-2026 #site-info .sp-logo-size a::after { font-size: 10px; letter-spacing: 0.14em; }
}

/* ---------- notice bar (was yellow) ---------- */
.sw-design-2026 .cps-info-bar a,
.sw-design-2026 .cps-info-bar.animate a {
  background: var(--sw-blush) !important; color: var(--sw-ink) !important;
  font-family: var(--sw-serif); font-size: 14px; letter-spacing: 0.08em; padding: 12px 16px !important;
  border-top: 1px solid var(--sw-line); border-bottom: 1px solid var(--sw-line);
}
.sw-design-2026 .cps-info-bar a span { color: var(--sw-ink) !important; }
.sw-design-2026 .cps-info-bar:after,
.sw-design-2026 .cps-info-bar.animate:after { color: var(--sw-rose) !important; }

/* ---------- hero ---------- */
.sw-design-2026 #main-image { position: relative; overflow: hidden; background: #EFE9E3; }
.sw-design-2026 #main-image > img { display: block; width: 100%; height: 560px; object-fit: cover; object-position: 30% 40%; }
.sw-design-2026 #main-image .top-image-meta {
  position: absolute !important; top: 50% !important; left: auto !important; right: max(32px, calc((100% - 1136px) / 2)) !important;
  transform: translateY(-50%) !important; width: 440px !important; max-width: calc(100% - 32px);
  background: rgba(255, 255, 255, 0.88); padding: 44px 44px 40px; box-sizing: border-box; text-align: left !important;
}
.sw-design-2026 #main-image .top-image-meta::before {
  content: 'REAL DRESS REPORT'; display: block; margin-bottom: 14px;
  font-family: var(--sw-latin); font-size: 15px; letter-spacing: 0.3em; color: var(--sw-rose);
}
.sw-design-2026 #main-image .main-image-text {
  font-family: var(--sw-serif) !important; font-weight: 600 !important; font-size: 32px !important; line-height: 1.5 !important;
  letter-spacing: 0.04em !important; color: var(--sw-ink) !important; text-shadow: none !important;
  border: 0 !important; padding: 0 !important; margin: 0 0 16px !important; text-align: left !important; background: none !important;
}
.sw-design-2026 #main-image .main-image-text::before,
.sw-design-2026 #main-image .main-image-text::after,
.sw-design-2026 #main-image .main-image-text-sub::before,
.sw-design-2026 #main-image .main-image-text-sub::after { display: none !important; }
.sw-design-2026 #main-image .main-image-text-sub {
  font-family: var(--sw-sans) !important; font-weight: 400 !important; font-size: 15px !important; line-height: 1.9 !important;
  color: var(--sw-ink-2) !important; text-shadow: none !important; border: 0 !important; padding: 0 !important; margin: 0 !important; text-align: left !important; background: none !important;
}
.sw-design-2026 #main-image .top-image-btn-color { background: none !important; box-shadow: none !important; border-radius: 0 !important; padding: 0 !important; margin: 0 !important; text-align: left !important; }
.sw-design-2026 #main-image .main-image-btn,
.sw-design-2026 #main-image .top-image-meta a {
  display: inline-block; margin-top: 22px; padding: 14px 28px !important; border-radius: 0 !important;
  background: var(--sw-ink) !important; color: #fff !important; font-family: var(--sw-sans); font-size: 14px !important; letter-spacing: 0.12em; box-shadow: none !important; border: 0 !important;
}
.sw-design-2026 #main-image .top-image-meta a { box-shadow: none !important; background-image: none !important; transform: none !important; border-radius: 0 !important; }
.sw-design-2026 #main-image .top-image-meta a::before,
.sw-design-2026 #main-image .top-image-meta a::after { display: none !important; }
.sw-design-2026 #main-image .top-image-meta a:hover { background: var(--sw-rose-dark) !important; }
@media (max-width: 767px) {
  .sw-design-2026 #main-image > img { height: 420px; object-position: 33% 40%; }
  .sw-design-2026 #main-image .top-image-meta {
    top: auto !important; bottom: 16px !important; left: 16px !important; right: 16px !important; transform: none !important;
    width: auto !important; max-width: none; padding: 22px 20px;
  }
  .sw-design-2026 #main-image .top-image-meta::before { font-size: 12px; margin-bottom: 8px; }
  .sw-design-2026 #main-image .main-image-text { font-size: 23px !important; margin-bottom: 8px !important; }
  .sw-design-2026 #main-image .main-image-text-sub { font-size: 13px !important; }
  .sw-design-2026 #main-image .top-image-meta a { margin-top: 12px; padding: 12px 20px !important; font-size: 13px !important; }
}

/* ---------- home: entry tiles + feature (custom HTML widget in home-top-widget) ---------- */
.sw-design-2026 #home-top-widget .widget { margin-bottom: 40px; background: none; box-shadow: none; padding: 0; }
.sw-entry { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin: 8px 0 8px; }
.sw-entry a {
  display: flex; flex-direction: column; gap: 4px; padding: 22px 20px; background: var(--sw-white); border: 1px solid var(--sw-line);
  color: var(--sw-ink) !important; text-decoration: none; transition: border-color .2s ease;
}
.sw-entry a:hover { border-color: var(--sw-gold); }
.sw-entry .sw-en { font-family: var(--sw-latin); font-size: 13px; letter-spacing: 0.26em; color: var(--sw-rose); }
.sw-entry .sw-ja { font-family: var(--sw-serif); font-size: 18px; font-weight: 600; letter-spacing: 0.04em; }
.sw-entry .sw-desc { font-size: 13px; line-height: 1.7; color: var(--sw-muted); }
.sw-feature { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; background: var(--sw-blush); overflow: hidden; }
/* the shop photo carries the old logo watermark in two corners: zoom in so neither shows, clipped by its own box */
.sw-feature .sw-feature-photo { position: relative; overflow: hidden; min-height: 260px; }
.sw-feature .sw-feature-photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 55%; display: block; transform: scale(1.35); transform-origin: 55% 50%; }
.sw-feature .sw-feature-body { padding: 32px 30px; display: flex; flex-direction: column; gap: 12px; justify-content: center; }
.sw-feature .sw-en { font-family: var(--sw-latin); font-size: 14px; letter-spacing: 0.28em; color: var(--sw-rose); }
.sw-feature h2,
.sw-design-2026 #home-top-widget .sw-feature h2 { margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; font-family: var(--sw-serif); font-size: 22px; font-weight: 600; line-height: 1.55; color: var(--sw-ink) !important; }
.sw-feature h2::before, .sw-feature h2::after { display: none !important; }
.sw-feature p { margin: 0; font-size: 14px; line-height: 1.8; color: var(--sw-ink-2); }
.sw-feature .sw-btn {
  align-self: flex-start; padding: 12px 24px; border: 1px solid var(--sw-ink); color: var(--sw-ink) !important; text-decoration: none; font-size: 14px; letter-spacing: 0.12em;
}
.sw-feature .sw-btn:hover { background: var(--sw-ink); color: #fff !important; }
@media (max-width: 767px) {
  .sw-entry { gap: 10px; }
  .sw-entry a { padding: 16px 14px; }
  .sw-entry .sw-ja { font-size: 15px; }
  .sw-entry .sw-desc { display: none; }
  .sw-feature { grid-template-columns: 1fr; }
  .sw-feature .sw-feature-photo { min-height: 200px; height: 200px; }
  .sw-feature .sw-feature-body { padding: 24px 18px; }
}

/* ---------- post lists ---------- */
.sw-design-2026 .tabBtn-mag label {
  background: transparent !important; color: var(--sw-muted) !important; font-family: var(--sw-serif); font-size: 15px; font-weight: 600; letter-spacing: 0.06em;
  border-bottom: 1px solid var(--sw-line);
}
.sw-design-2026 #tab-1:checked ~ .tabBtn-mag li [for=tab-1],
.sw-design-2026 #tab-2:checked ~ .tabBtn-mag li [for=tab-2],
.sw-design-2026 #tab-3:checked ~ .tabBtn-mag li [for=tab-3],
.sw-design-2026 #tab-4:checked ~ .tabBtn-mag li [for=tab-4],
.sw-design-2026 #tab-5:checked ~ .tabBtn-mag li [for=tab-5] {
  background: transparent !important; color: var(--sw-ink) !important; border-bottom: 2px solid var(--sw-gold);
}
.sw-design-2026 #tab-1:checked ~ .tabBtn-mag li [for=tab-1]:after,
.sw-design-2026 #tab-2:checked ~ .tabBtn-mag li [for=tab-2]:after,
.sw-design-2026 #tab-3:checked ~ .tabBtn-mag li [for=tab-3]:after,
.sw-design-2026 #tab-4:checked ~ .tabBtn-mag li [for=tab-4]:after,
.sw-design-2026 #tab-5:checked ~ .tabBtn-mag li [for=tab-5]:after { display: none !important; }
.sw-design-2026 .post-list-item,
.sw-design-2026 .post-list-mag .post-list-item { box-shadow: none !important; background: transparent !important; }
.sw-design-2026 .post-list-inner { background: transparent !important; box-shadow: none !important; border: 0 !important; }
.sw-design-2026 .post-list-thumb img { border-radius: 0 !important; }
.sw-design-2026 .post-list-mag .post-list-item .post-list-inner .post-list-meta .post-list-cat,
.sw-design-2026 .post-list-mag3col .post-list-item .post-list-inner .post-list-meta .post-list-cat,
.sw-design-2026 .post-list-cat {
  background: rgba(255, 255, 255, 0.94) !important; color: var(--sw-rose) !important; border-radius: 0 !important;
  font-family: var(--sw-sans); font-size: 11px !important; letter-spacing: 0.12em; opacity: 1 !important; box-shadow: none !important;
}
/* new eyecatches carry their own label on the left panel: move the category label to the photo side */
.sw-design-2026 .post-list-mag .post-list-item .post-list-inner .post-list-meta .post-list-cat,
.sw-design-2026 .post-list-mag3col .post-list-item .post-list-inner .post-list-meta .post-list-cat,
.sw-design-2026 .post-list-mag-sp1col .post-list-item .post-list-inner .post-list-meta .post-list-cat { left: auto !important; right: 11px; margin-left: 0 !important; }
.sw-design-2026 .post-list-title { font-family: var(--sw-serif) !important; font-weight: 600 !important; color: var(--sw-ink) !important; line-height: 1.65 !important; letter-spacing: 0.02em; }
.sw-design-2026 .post-list-date { color: var(--sw-muted) !important; font-family: var(--sw-sans); }
.sw-design-2026 .pagination a,
.sw-design-2026 .pagination span,
.sw-design-2026 .more-cat-button a { border-radius: 0 !important; box-shadow: none !important; }
.sw-design-2026 .pagination .current,
.sw-design-2026 .pagination span.current { background: var(--sw-ink) !important; color: #fff !important; }
.sw-design-2026 .more-cat-button a { background: transparent !important; border: 1px solid var(--sw-ink) !important; color: var(--sw-ink) !important; font-family: var(--sw-sans); letter-spacing: 0.1em; }

/* ---------- sidebar ---------- */
.sw-design-2026 .sideber .widget { background: var(--sw-white) !important; border: 1px solid var(--sw-line); box-shadow: none !important; border-radius: 0 !important; }
.sw-design-2026 .widgettitle {
  font-family: var(--sw-serif) !important; font-weight: 600 !important; font-size: 17px !important; color: var(--sw-ink) !important;
  letter-spacing: 0.06em; border-bottom: 1px solid var(--sw-gold) !important; padding-bottom: 10px !important; background: none !important;
}
.sw-design-2026 .widgettitle::first-letter { color: inherit !important; }
.sw-design-2026 .widgettitle::before, .sw-design-2026 .widgettitle::after { display: none !important; }
/* profile cards: drop the illustrated avatars, keep the words */
.sw-design-2026 .widget-profile .my-profile-thumb { display: none !important; }
.sw-design-2026 .widget-profile .my-profile { padding: 26px 22px !important; text-align: left !important; }
.sw-design-2026 .widget-profile .myjob,
.sw-design-2026 .widget-profile .myname { position: static !important; top: auto !important; width: auto !important; }
.sw-design-2026 .widget-profile .myintro { margin-top: 0 !important; padding-top: 0 !important; }
.sw-design-2026 .widget-profile .myjob { font-family: var(--sw-latin); font-size: 13px !important; letter-spacing: 0.22em; color: var(--sw-rose) !important; text-align: left !important; }
.sw-design-2026 .widget-profile .myname { font-family: var(--sw-serif); font-weight: 600; font-size: 18px !important; color: var(--sw-ink) !important; text-align: left !important; margin: 4px 0 10px !important; }
.sw-design-2026 .widget-profile .myintro { font-size: 13px !important; line-height: 1.85 !important; color: var(--sw-ink-2) !important; text-align: left !important; }
/* popular posts: 16:9 thumbnails so the whole eyecatch shows */
.sw-design-2026 .wpp-list li { display: flex; gap: 12px; align-items: flex-start; }
.sw-design-2026 .wpp-list li img { width: 128px !important; height: 72px !important; object-fit: cover; flex: none; border-radius: 0 !important; }
.sw-design-2026 .widget_categories li a,
.sw-design-2026 .widget_recent_entries li a { color: var(--sw-ink) !important; }

/* ---------- article ---------- */
.sw-design-2026 .cps-post { background: var(--sw-white) !important; box-shadow: none !important; border: 1px solid var(--sw-line); border-radius: 0 !important; }
.sw-design-2026 .cps-post-title { font-family: var(--sw-serif) !important; font-weight: 600 !important; color: var(--sw-ink) !important; line-height: 1.6 !important; letter-spacing: 0.03em; }
.sw-design-2026 .cps-post-cat { background: transparent !important; border: 0 !important; }
.sw-design-2026 .cps-post-header .cps-post-cat a,
.sw-design-2026 .cps-post-cat a { background: transparent !important; color: var(--sw-rose) !important; border: 1px solid var(--sw-rose) !important; border-radius: 0 !important; padding: 2px 10px !important; font-size: 12px !important; letter-spacing: 0.1em; }
.sw-design-2026 .cps-post-date, .sw-design-2026 .cps-post-meta { color: var(--sw-muted) !important; }
/* h2: ivory band with a gold rule instead of the black speech bubble */
.sw-design-2026 .cps-post-main h2,
.sw-design-2026 .h2-style05 h2 {
  background: var(--sw-ivory) !important; color: var(--sw-ink) !important; border-radius: 0 !important;
  border: 0 !important; border-left: 0 !important; border-bottom: 1px solid var(--sw-gold) !important;
  font-family: var(--sw-serif) !important; font-weight: 600 !important; font-size: 1.35em !important; line-height: 1.6 !important; letter-spacing: 0.03em;
  padding: 18px 20px 14px !important; box-shadow: none !important;
}
.sw-design-2026 .cps-post-main h2::before,
.sw-design-2026 .cps-post-main h2::after,
.sw-design-2026 .h2-style05 h2::before,
.sw-design-2026 .h2-style05 h2::after { display: none !important; }
.sw-design-2026 .cps-post-main h3 {
  font-family: var(--sw-serif) !important; font-weight: 600 !important; color: var(--sw-ink) !important; background: none !important;
  border: 0 !important; border-left: 3px solid var(--sw-gold) !important; padding: 2px 0 2px 14px !important; box-shadow: none !important; letter-spacing: 0.03em;
}
.sw-design-2026 .cps-post-main h3::before, .sw-design-2026 .cps-post-main h3::after { display: none !important; }
.sw-design-2026 .cps-post-main h4 { font-family: var(--sw-serif) !important; color: var(--sw-ink) !important; }
.sw-design-2026 .cps-post-main strong span[style*="ff0000"],
.sw-design-2026 .cps-post-main span[style*="color: #ff0000"] { color: var(--sw-rose) !important; }
/* boxes */
.sw-design-2026 .simple-box1, .sw-design-2026 .simple-box2, .sw-design-2026 .simple-box3, .sw-design-2026 .simple-box4,
.sw-design-2026 .simple-box8 { border-color: var(--sw-gold) !important; background: var(--sw-ivory) !important; border-radius: 0 !important; }
.sw-design-2026 .kaisetsu-box4 { border-color: var(--sw-rose) !important; border-radius: 0 !important; }
.sw-design-2026 .kaisetsu-box4-title { background: var(--sw-rose) !important; color: #fff !important; border-radius: 0 !important; }
.sw-design-2026 .box04, .sw-design-2026 [class*="box04"] { border-color: var(--sw-gold) !important; }
/* speech bubbles */
.sw-design-2026 .balloon-serif { background: var(--sw-ivory) !important; border-color: var(--sw-line) !important; border-radius: 0 !important; }
.sw-design-2026 .balloon-serif::before, .sw-design-2026 .balloon-serif::after { border-right-color: var(--sw-ivory) !important; border-left-color: var(--sw-ivory) !important; }
.sw-design-2026 .balloon-box .balloon-content { background: var(--sw-ivory) !important; border-color: var(--sw-line) !important; color: var(--sw-ink) !important; border-radius: 0 !important; }
.sw-design-2026 .balloon-box .balloon-content::before,
.sw-design-2026 .balloon-box .balloon-content::after { border-left-color: transparent; border-right-color: transparent; }
.sw-design-2026 .balloon-left .balloon-content::before, .sw-design-2026 .balloon-left .balloon-content::after { border-right-color: var(--sw-ivory) !important; }
.sw-design-2026 .balloon-right .balloon-content::before, .sw-design-2026 .balloon-right .balloon-content::after { border-left-color: var(--sw-ivory) !important; }
.sw-design-2026 .balloon-icon img { border: 1px solid var(--sw-line) !important; }
.sw-design-2026 .icon-name { color: var(--sw-muted) !important; font-size: 11px !important; }
/* tables */
.sw-design-2026 .cps-post-main table { border-collapse: collapse; }
.sw-design-2026 .cps-post-main table td, .sw-design-2026 .cps-post-main table th { border-color: var(--sw-line) !important; }
/* table of contents */
.sw-design-2026 #rtoc-mokuji-wrapper { border-radius: 0 !important; border-color: var(--sw-line) !important; background: var(--sw-ivory) !important; }
.sw-design-2026 #rtoc-mokuji-wrapper::before { border-color: var(--sw-gold) !important; }
.sw-design-2026 #rtoc-mokuji-wrapper .rtoc-mokuji li::before { color: var(--sw-rose) !important; }
.sw-design-2026 #rtoc-mokuji-wrapper .rtoc-mokuji li a { color: var(--sw-ink) !important; }
.sw-design-2026 #rtoc-mokuji-title { font-family: var(--sw-latin); letter-spacing: 0.24em; color: var(--sw-ink) !important; }
/* PR notice */
.sw-design-2026 .sw-pr-notice { background: var(--sw-ivory) !important; color: var(--sw-muted) !important; border: 1px solid var(--sw-line) !important; border-radius: 0 !important; }
/* CTA under articles */
.sw-design-2026 .cta-content { background: var(--sw-blush) !important; border-radius: 0 !important; box-shadow: none !important; }
.sw-design-2026 .cta-content .info-title { font-family: var(--sw-serif); color: var(--sw-ink) !important; }
/* blog cards */
.sw-design-2026 .blog-card-box { border-radius: 0 !important; border-color: var(--sw-line) !important; box-shadow: none !important; }
.sw-design-2026 .blog-card-hl { background: var(--sw-ink) !important; color: #fff !important; border-radius: 0 !important; }
.sw-design-2026 .blog-card-title { font-family: var(--sw-serif); color: var(--sw-ink) !important; }
/* buttons from JIN shortcodes */
.sw-design-2026 .jin-flexbox .jin-btn, .sw-design-2026 [class*="jin-button"] a, .sw-design-2026 .color-button01 a { border-radius: 0 !important; box-shadow: none !important; }

/* ---------- footer ---------- */
.sw-design-2026 #footer-box { background: var(--sw-ink) !important; }
.sw-design-2026 #footer-box, .sw-design-2026 #footer-box a, .sw-design-2026 #footer-box span { color: #EDE4DC !important; }
.sw-design-2026 #page-top a { background: var(--sw-ink) !important; border-radius: 0 !important; }
