@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}


/* ============================================================
   企業注意(sindaisaisoku.com) カスタムデザイン(2026-07-13)
   RegBase(regbase.jp)を参考にした行政処分DBらしい見た目。
   濃紺ベースの配色・カード型UI・広めの余白。
   ============================================================ */

:root {
  --kigyou-navy-900: #0a1a30;
  --kigyou-navy-800: #12274a;
  --kigyou-navy-700: #1a3a66;
  --kigyou-navy-600: #2c5183;
  --kigyou-gray-50: #f5f7fa;
  --kigyou-gray-100: #edf0f4;
  --kigyou-gray-200: #dde3ea;
  --kigyou-gray-600: #5c6b7c;
  --kigyou-gray-900: #1f2733;
  --kigyou-amber-bg: #fff8e8;
  --kigyou-amber-border: #d6a13c;
  --kigyou-green-bg: #eaf6ee;
  --kigyou-green-border: #2f9e5c;
  --kigyou-card-radius: 14px;
  --kigyou-card-shadow: 0 1px 3px rgba(10, 26, 48, 0.07), 0 1px 2px rgba(10, 26, 48, 0.05);
}

body {
  background-color: var(--kigyou-gray-50);
}
#content, .content_top {
  background-color: transparent;
}
article, #main {
  background-color: transparent !important;
}

.kigyou-case, .kigyou-announcement, .kigyou-entity {
  font-size: 1.03rem;
  line-height: 1.95;
  color: var(--kigyou-gray-900);
}
.entry-content {
  padding: 8px 4px;
}
.entry-title {
  font-size: 1.55rem;
  line-height: 1.5;
  margin: 0 0 20px;
  padding-bottom: 0;
}
.entry-header {
  margin-bottom: 24px;
}

.kigyou-taxonomy-links {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 24px;
}
.kigyou-taxonomy-pill {
  display: inline-flex;
  align-items: center;
  background: var(--kigyou-navy-700);
  color: #fff !important;
  font-size: 0.85rem;
  font-weight: 600;
  padding: 7px 16px;
  border-radius: 999px;
  text-decoration: none !important;
  transition: background-color 0.15s ease;
}
.kigyou-taxonomy-pill:hover {
  background: var(--kigyou-navy-600);
}

.kigyou-badge-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 4px 0 28px;
}
.kigyou-badge {
  flex: 1 1 150px;
  background: #fff;
  border: 1px solid var(--kigyou-gray-200);
  border-radius: 10px;
  padding: 12px 16px;
}
.kigyou-badge-label {
  display: block;
  font-size: 0.72rem;
  color: var(--kigyou-gray-600);
  letter-spacing: 0.04em;
  margin-bottom: 4px;
}
.kigyou-badge-value {
  display: block;
  font-size: 1rem;
  font-weight: 700;
  color: var(--kigyou-navy-800);
  word-break: break-word;
}

.kigyou-entity-name {
  font-size: 1.4rem;
  font-weight: 700;
  color: var(--kigyou-navy-900);
  margin: 40px 0 18px;
  padding-left: 16px;
  border-left: 5px solid var(--kigyou-navy-700);
}
.kigyou-case-item:first-of-type .kigyou-entity-name,
.kigyou-badge-row + .kigyou-entity-name {
  margin-top: 0;
}
article.kigyou-case-item {
  display: block;
}
article.kigyou-case-item + article.kigyou-case-item {
  margin-top: 8px;
  padding-top: 32px;
  border-top: 1px dashed var(--kigyou-gray-200);
}

.kigyou-unverified-notice,
.kigyou-verified-notice,
.kigyou-placeholder-name-notice {
  margin: 0 0 24px;
  padding: 16px 20px;
  border-radius: 10px;
  line-height: 1.8;
}
.kigyou-unverified-notice {
  background: var(--kigyou-amber-bg);
  border-left: 4px solid var(--kigyou-amber-border);
}
.kigyou-verified-notice {
  background: var(--kigyou-green-bg);
  border-left: 4px solid var(--kigyou-green-border);
}
.kigyou-placeholder-name-notice {
  background: var(--kigyou-gray-100);
  border-left: 4px solid var(--kigyou-gray-600);
  font-size: 0.94rem;
  color: var(--kigyou-gray-600);
}

.kigyou-card {
  background: #fff;
  border: 1px solid var(--kigyou-gray-200);
  border-radius: var(--kigyou-card-radius);
  box-shadow: var(--kigyou-card-shadow);
  padding: 28px 32px;
  margin: 0 0 24px;
}
.kigyou-card-title {
  margin: 0 0 18px;
  padding-bottom: 14px;
  border-bottom: 2px solid var(--kigyou-navy-700);
  color: var(--kigyou-navy-800);
  font-size: 1.12rem;
  font-weight: 700;
}
.kigyou-card p:last-child,
.kigyou-card ul:last-child,
.kigyou-card dl:last-child {
  margin-bottom: 0;
}

.kigyou-info-list {
  margin: 0;
}
.kigyou-info-row {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 20px;
  padding: 11px 0;
  border-bottom: 1px solid var(--kigyou-gray-100);
}
.kigyou-info-row:last-child {
  border-bottom: none;
}
.kigyou-info-row dt {
  flex: 0 0 150px;
  color: var(--kigyou-gray-600);
  font-weight: 600;
  font-size: 0.92rem;
}
.kigyou-info-row dd {
  flex: 1 1 260px;
  margin: 0;
  color: var(--kigyou-gray-900);
}

.kigyou-announcement-notice {
  background: var(--kigyou-navy-800);
  color: #fff;
  padding: 14px 20px;
  border-radius: 10px;
  margin: 0 0 28px;
  font-size: 0.95rem;
}

.kigyou-attribution,
.kigyou-general-note {
  font-size: 0.88rem;
  color: var(--kigyou-gray-600);
}
.kigyou-attribution {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--kigyou-gray-100);
}
.kigyou-field-missing-note {
  color: var(--kigyou-gray-600);
  font-size: 0.92rem;
}

.kigyou-entity-page-link {
  margin: 0;
}
.kigyou-entity-page-link a {
  display: inline-flex;
  align-items: center;
  font-weight: 600;
  color: var(--kigyou-navy-700) !important;
}
.kigyou-data-providers {
  color: var(--kigyou-gray-600);
  font-size: 0.9rem;
  margin-top: 12px;
}

.kigyou-feedback {
  display: flex;
  gap: 12px;
  align-items: center;
  flex-wrap: wrap;
}
.kigyou-feedback button {
  background: #fff;
  border: 1px solid var(--kigyou-navy-700);
  color: var(--kigyou-navy-700);
  padding: 9px 20px;
  border-radius: 999px;
  font-size: 0.92rem;
  font-weight: 600;
  cursor: pointer;
  transition: background-color 0.15s ease, color 0.15s ease;
}
.kigyou-feedback button:hover:not(:disabled) {
  background: var(--kigyou-navy-700);
  color: #fff;
}
.kigyou-feedback button:disabled {
  opacity: 0.5;
  cursor: default;
}
.kigyou-feedback-thanks {
  color: var(--kigyou-navy-700);
  font-weight: 600;
  margin: 0;
}

.kigyou-card-cross-reference ul {
  margin: 0;
  padding-left: 1.3em;
}

.toc {
  border: 1px solid var(--kigyou-gray-200) !important;
  border-radius: var(--kigyou-card-radius) !important;
  box-shadow: var(--kigyou-card-shadow);
}
.toc-title {
  color: var(--kigyou-navy-800) !important;
}

.kigyou-entity .kigyou-card,
.kigyou-entity .kigyou-unverified-notice,
.kigyou-entity .kigyou-verified-notice {
  margin-bottom: 24px;
}

.term-description {
  background: #fff;
  border: 1px solid var(--kigyou-gray-200);
  border-radius: var(--kigyou-card-radius);
  padding: 20px 28px;
  margin-bottom: 24px;
}

.kigyou-home-hero {
  background: linear-gradient(135deg, var(--kigyou-navy-900), var(--kigyou-navy-700));
  color: #fff;
  padding: 56px 32px;
  border-radius: var(--kigyou-card-radius);
  margin-bottom: 32px;
  text-align: center;
}
.kigyou-home-hero h2 {
  color: #fff;
  font-size: 1.7rem;
  margin: 0 0 12px;
  border: none;
  padding: 0;
}
.kigyou-home-hero p {
  color: #cfe0f5;
  margin: 0 0 28px;
  font-size: 0.98rem;
}
.kigyou-search-form {
  display: flex;
  max-width: 640px;
  margin: 0 auto;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.18);
  border-radius: 999px;
  overflow: hidden;
}
.kigyou-search-input {
  flex: 1;
  border: none;
  padding: 16px 24px;
  font-size: 1.05rem;
  outline: none;
}
.kigyou-search-button {
  border: none;
  background: #ffb020;
  color: var(--kigyou-navy-900);
  font-weight: 700;
  font-size: 1rem;
  padding: 0 32px;
  cursor: pointer;
  transition: background-color 0.15s ease;
}
.kigyou-search-button:hover {
  background: #ffc352;
}
.kigyou-search-status {
  color: #cfe0f5;
  font-size: 0.88rem;
  margin-top: 14px;
  min-height: 1.4em;
}
.kigyou-search-results {
  max-width: 640px;
  margin: 20px auto 0;
  text-align: left;
}
.kigyou-search-results .kigyou-card {
  background: #fff;
  color: var(--kigyou-gray-900);
  padding: 16px 22px;
  margin-bottom: 12px;
  text-align: left;
}
.kigyou-search-results .kigyou-card a {
  color: var(--kigyou-navy-700);
  font-weight: 600;
}

.kigyou-latest-section {
  margin: 0 0 32px;
}
.kigyou-latest-section h2 {
  color: var(--kigyou-navy-800);
  font-size: 1.25rem;
  border-left: 5px solid var(--kigyou-navy-700);
  padding-left: 14px;
  margin-bottom: 18px;
  border-top: none;
  border-right: none;
  border-bottom: none;
}
.kigyou-latest-list {
  display: grid;
  gap: 14px;
}
.kigyou-latest-item {
  background: #fff;
  border: 1px solid var(--kigyou-gray-200);
  border-radius: 12px;
  padding: 16px 22px;
  box-shadow: var(--kigyou-card-shadow);
}
.kigyou-latest-item a {
  font-weight: 700;
  color: var(--kigyou-navy-800);
  text-decoration: none;
}
.kigyou-latest-item a:hover {
  text-decoration: underline;
}
.kigyou-latest-item .kigyou-latest-date {
  display: block;
  color: var(--kigyou-gray-600);
  font-size: 0.85rem;
  margin-top: 4px;
}
.kigyou-latest-empty {
  background: #fff;
  border: 1px dashed var(--kigyou-gray-200);
  border-radius: 12px;
  padding: 24px;
  color: var(--kigyou-gray-600);
  text-align: center;
}

@media screen and (max-width: 834px) {
  .kigyou-badge-row { gap: 8px; }
  .kigyou-badge { flex-basis: 45%; }
  .kigyou-card { padding: 22px 20px; }
  .kigyou-info-row dt { flex-basis: 100%; }
}

@media screen and (max-width: 480px) {
  .kigyou-search-form { flex-direction: column; border-radius: 16px; }
  .kigyou-search-button { padding: 14px; }
  .kigyou-home-hero { padding: 36px 18px; }
  .kigyou-badge { flex-basis: 100%; }
}


/* ============================================================
   トップページ(フロント固定ページ)の調整(2026-07-13)
   - Cocoon自動目次・ページタイトル・日付・サイドバーはトップでは非表示
   - スキン(Simple Navy)のh2装飾がヒーロー内の見出しと競合するため打ち消す
   ============================================================ */
.home.page .entry-title,
.home.page .date-tags,
.home.page .entry-date,
.home.page .post-date,
.home.page .toc {
  display: none !important;
}
.home.page #sidebar,
.home.page .sidebar {
  display: none !important;
}
.home.page #main,
.home.page .main {
  width: 100% !important;
  margin-right: 0 !important;
}
.kigyou-home-hero h2,
.kigyou-latest-section h2 {
  background: none !important;
  box-shadow: none !important;
}
.kigyou-home-hero h2 {
  color: #fff !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 0 12px !important;
}
.kigyou-latest-section h2 {
  color: var(--kigyou-navy-800) !important;
  border-top: none !important;
  border-right: none !important;
  border-bottom: none !important;
  border-left: 5px solid var(--kigyou-navy-700) !important;
  padding: 2px 0 2px 14px !important;
}

/* トップページではSNSフォロー・著者情報も非表示(DBサイトとして不要な個人ブログ要素) */
.home.page .sns-follow,
.home.page .sns-follow-buttons,
.home.page .author-info,
.home.page .article-footer {
  display: none !important;
}

/* カード内見出し: スキン(Simple Navy)のh3青帯装飾を打ち消し、下線のみの控えめな見出しに統一 */
.kigyou-card .kigyou-card-title {
  background: none !important;
  color: var(--kigyou-navy-800) !important;
  border-top: none !important;
  border-right: none !important;
  border-left: none !important;
  border-bottom: 2px solid var(--kigyou-navy-700) !important;
  padding: 0 0 12px !important;
  margin: 0 0 18px !important;
  box-shadow: none !important;
  font-size: 1.12rem !important;
}


/* ============================================================
   トップページ ヒーロー刷新(2026-07-13 フィードバック対応)
   コンテンツ幅の角丸ボックス → 画面全幅の濃紺バンドへ。
   多層グラデーション+微細グリッドで質感を出し、
   小さな導入ラベル(eyebrow)+情報源チップでDBらしい構成に。
   ============================================================ */
body {
  overflow-x: hidden;
}
.kigyou-home-hero {
  margin: 0 calc(50% - 50vw) 40px;
  border-radius: 0;
  padding: 78px 24px 62px;
  background-color: #0a1a30;
  background-image:
    linear-gradient(rgba(255,255,255,0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.035) 1px, transparent 1px),
    radial-gradient(ellipse 70% 60% at 78% 8%, rgba(58,106,168,0.38), transparent 65%),
    radial-gradient(ellipse 60% 70% at 8% 92%, rgba(26,58,102,0.6), transparent 60%),
    linear-gradient(160deg, #0a1a30 0%, #10233f 60%, #16325c 100%);
  background-size: 36px 36px, 36px 36px, auto, auto, auto;
}
.kigyou-hero-eyebrow {
  color: #7fa3d0 !important;
  font-size: 0.78rem !important;
  letter-spacing: 0.35em;
  font-weight: 600;
  margin: 0 0 14px !important;
}
.kigyou-home-hero h2 {
  font-size: clamp(1.5rem, 3.2vw, 2.05rem) !important;
  letter-spacing: 0.02em;
}
.kigyou-hero-lead {
  font-size: 0.95rem !important;
  color: #b9cce6 !important;
  margin-bottom: 34px !important;
}
.kigyou-search-form {
  max-width: 680px;
  border-radius: 12px;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.35);
}
.kigyou-search-input {
  padding: 18px 24px;
  font-size: 1.02rem;
}
.kigyou-search-button {
  background: var(--kigyou-navy-600);
  color: #fff;
  padding: 0 36px;
}
.kigyou-search-button:hover {
  background: #3a6aa8;
}
.kigyou-hero-chips {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 32px;
}
.kigyou-hero-chips-label {
  color: #7fa3d0;
  font-size: 0.8rem;
  margin-right: 2px;
}
.kigyou-hero-chip {
  border: 1px solid rgba(255, 255, 255, 0.28);
  color: #dbe7f5;
  border-radius: 999px;
  padding: 5px 16px;
  font-size: 0.83rem;
}
/* サイトヘッダーもヒーローと同じ濃紺に統一し、一体のブランド帯に見せる */
#header-container,
#header,
.header-container-in {
  background: #0a1a30 !important;
}

/* ヘッダー内側要素のスキン色を透過し、#header-containerの濃紺に統一 */
#header,
.header,
.header-in,
.header-container {
  background: transparent !important;
}
/* トップページ: ヘッダーとヒーローの間の白い隙間を除去(全幅バンドを連続させる) */
.home.page #content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
.home.page .article,
.home.page .entry-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* トップページ: #mainのpadding-top(36px)がヘッダー下の白帯になるため除去 */
.home.page #main,
.home.page .main {
  padding-top: 0 !important;
}

/* ============================================================
   サイト全体をトップページ(page_id=9021)と同一デザインに統一(2026-07-14)
   子テーマ style.css の末尾に追記するブロック。
   トップページ側のデザイントークン(wp-frontpage/front-page.html)と同じ値:
   navy-950 #081428 / navy-800 #102a52 / blue #2f6cb3 / bg #eef1f6
   ============================================================ */

body {
  background-color: #eef1f6;
}

/* --- ヘッダー(全ページ共通) --- */
#header-container {
  background: #081428;
  overflow-x: hidden; /* taglineの全幅ブレイクアウトをクリップ */
}
#header-container-in.hlt-center-logo {
  background: transparent;
}
/* キャッチフレーズをトップページの最上部帯と同じ見た目に */
.tagline {
  background: #102a52;
  color: #d7e3f2;
  font-size: 12.5px;
  letter-spacing: .04em;
  text-align: center;
  padding: 7px 16px;
  margin: 0 calc(50% - 50vw);
}
h1.logo-header, .logo-header {
  padding: 16px 0 14px;
}
.logo-header a, .logo-header .site-name-text {
  color: #fff !important;
  font-family: "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "Noto Serif JP", serif;
  font-weight: 700;
  letter-spacing: .12em;
  font-size: 26px;
}
/* 渦ロゴ(白円バッジ) */
.site-name-text::before {
  content: "";
  display: inline-block;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #fff url(https://www.sindaisaisoku.com/wp-content/uploads/2026/07/kigyou-logo-300x255.png) center/cover no-repeat;
  box-shadow: 0 0 0 2px rgba(255,255,255,.15);
  vertical-align: middle;
  margin-right: 12px;
}

/* --- グローバルナビ --- */
#navi {
  background: transparent;
  border-top: 1px solid rgba(255,255,255,.08);
}
#navi .navi-in > ul.menu-pc {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
#navi .navi-in > ul > li {
  width: auto;
}
#navi .navi-in > ul > li > a {
  background: transparent;
  color: #c9d7ea;
  font-size: 14.5px;
  letter-spacing: .05em;
  height: 46px;
  line-height: 46px;
  padding: 0 22px;
}
#navi .navi-in > ul > li > a:hover {
  background: rgba(255,255,255,.06);
  color: #fff;
}

/* --- サイドバー(カード型+セクション見出し) --- */
.sidebar {
  background: transparent;
  padding: 0;
}
.widget-sidebar {
  background: #fff;
  border-radius: 10px;
  padding: 20px 22px;
  margin-bottom: 24px;
  box-shadow: 0 2px 10px rgba(13,30,61,.07);
}
.sidebar .widget-sidebar-title,
.widget-sidebar-title {
  font-size: 17px;
  font-weight: 700;
  color: #0c1e3d;
  background: none;
  text-align: left;
  border: none;
  border-left: 5px solid #102a52;
  border-radius: 2px;
  padding: 2px 0 2px 12px;
  margin: 0 0 14px;
}

/* --- ブログ的パーツの非表示(フォローボタン・著者行) --- */
.sns-follow,
.footer-meta,
.entry-categories-tags,
.breadcrumb {
  display: none !important;
}

/* --- フッター --- */
#footer {
  background: #081428 !important;
  color: #a9bcd4;
  margin-top: 0;
}
#footer a {
  color: #d7e3f2;
}
#footer .footer-in {
  padding: 24px 0 20px;
}
#footer .copyright {
  color: #a9bcd4;
  font-size: 13px;
  letter-spacing: .05em;
}
