@charset "utf-8";

/** 共通コンテンツ幅設定 **/
.page .entry-content, 
.single .entry-content,
.archive .entry-content,
.error404 .page-content,
.search .page-content
{
 max-width: 1120px;
 margin: 0 auto;
 padding-top: 5em;
 padding-bottom: 5em;
 /*background: #cfcbf6;
 min-height: 500px;*/
}
@media screen and (max-width: 768px) {
 .page .entry-content, 
.single .entry-content,
.archive .entry-content,
 .error404 .page-content,
 .search .page-content
{
 padding-top: 40px;
 padding-left: 15px;
 padding-right: 15px;
 padding-bottom: 30px;
 }
}
/** ページ共通 **/
/*/page .entry-header { こうする必要があるか検証*/
header.entry-header,
header.page-header{
  height: 300px; 
  background-image: url('../images/page-header.png');
  background-position: center center;
  background-size: cover;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #FFF;
  text-align: center;
 }
@media screen and (max-width: 768px) {
header.entry-header,
header.page-header{
 height: auto;
 padding: 50px 15px;
 }
}
header.entry-header h1,
header.page-header h1{
    font-size: 3em;
    margin: 0 0 10px;
    font-weight: bold;
 line-height: 1.25;
 }
@media screen and (max-width: 768px) {
header.entry-header h1,
header.page-header h1{
    font-size: 2.0em;
    margin: 0 0 10px;
    font-weight: bold;
 }
}
.breadcrumbs {
 background: #F3F3F3;
}
.breadcrumbs .inner {
 max-width: 1120px;
 margin: 0 auto;
 padding: 0 20px;
 font-size: 0.9em;
 color: #6c757d;
}

/* =================================================================
  固定ページ／投稿ページ コンテンツエリアの共通基本スタイル
================================================================= */
.page .entry-content,
.single .entry-content{
  line-height: 1.8; /* 行の高さを設定し、読みやすくする */
}
.page .entry-content::after,
.single .entry-content::after{
  content: "";
  display: table;
  clear: both;
}
.page .entry-content .clear,
.single .entry-content .clear{
  clear: both;
}
/* --- 見出し --- */
/*.page .entry-content h1,
.page .entry-content h2,
.page .entry-content h3,
.page .entry-content h4,
.page .entry-content h5,
.page .entry-content h6 {
  font-weight: bold;
  line-height: 1.4;
  margin-top: 2em;
  margin-bottom: 0.8em;
}*/
.page .entry-content .wp-block-heading,
.single .entry-content .wp-block-heading{
 font-weight: bold;
  line-height: 1.4;
  margin-top: 2em;
  margin-bottom: 0.8em;
}
.page .entry-content h1,
.single .entry-content h1{
  font-size: 2.2rem;
}
.page .entry-content h2,
.single .entry-content h2{
  font-size: 1.8rem;
  padding-bottom: 0.5em;
 color: var(--color-navy);
 
}
.page .entry-content h3,
.single .entry-content h3 {
  font-size: 1.5rem;
  padding-bottom: 0.5em;
 color: var(--color-navy);
 border-bottom: 3px solid var(--color-navy);
}
.page .entry-content h4,
.single .entry-content h4{
  font-size: 1.3rem;
}

/* --- テキスト --- */
.page .entry-content p,
.single .entry-content p{
  margin-bottom: 1.5em;
}

.page .entry-content a,
.single .entry-content a{
  color: #0073aa;
  text-decoration: underline;
}
.page .entry-content a:hover,
.single .entry-content a:hover{
  color: #005a87;
  text-decoration: none;
}

.page .entry-content strong,
.single .entry-content strong{
  font-weight: bold;
}

.page .entry-content em,
.single .entry-content em{
  font-style: italic;
}

/* --- リスト --- */
.page .entry-content .wp-block-list,
.single .entry-content .wp-block-list{
 
}
.page .entry-content > .wp-block-list,
.single .entry-content > .wp-block-list{
 background: #f5f5f5;
 padding: 1em 1em 1em 2.5em;
}
.page .entry-content ul,
.page .entry-content ol,
.single .entry-content ul,
.single .entry-content ol{
  margin-bottom: 1.5em;
  padding-left: 1.5em;
}
.page .entry-content li,
.single .entry-content li{
  margin-bottom: 0.5em;
}
.page .entry-content ul ul,
.page .entry-content ol ol,
.page .entry-content ul ol,
.page .entry-content ol ul,
.single .entry-content ul ul,
.single .entry-content ol ol,
.single .entry-content ul ol,
.single .entry-content ol ul{
  margin-top: 0.5em;
 margin-left: 0.5em;
}
.page .entry-content ul,
.single .entry-content ul {
 list-style: disc;
}
.page .entry-content ul li::marker,
.single .entry-content ul li::marker{
  color: #0073aa;
  font-size: 1.2em;
}
.page .entry-content ol,
.single .entry-content ol{
 list-style: decimal;
}
.page .entry-content ol li::marker,
.single .entry-content ol li::marker{
  color: #0073aa;
  font-weight: bold;
}
/* --- 引用 --- */
.page .entry-content blockquote,
.single .entry-content blockquote{
  margin: 0 0 1.5em 1.5em;
  padding: 1em 1.5em;
  background-color: #f7f7f7;
  border-left: 4px solid #ccc;
}
.page .entry-content blockquote p:last-child,
.single .entry-content blockquote p:last-child{
  margin-bottom: 0;
}

/* --- 水平線 --- */
.page .entry-content hr,
.single .entry-content hr{
  border: 0;
  border-top: 1px solid #ccc;
  margin: 2em 0;
}

/* --- テーブル --- */
.page .entry-content table,
.single .entry-content table{
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 1.5em;
}
.page .entry-content th,
.page .entry-content td,
.single .entry-content th,
.single .entry-content td{
  border: 1px solid #ddd;
  padding: 12px;
  text-align: left;
}
.page .entry-content th,
.single .entry-content th{
  background-color: #f2f2f2;
  font-weight: bold;
}

/* --- 画像 --- */
.page .entry-content figure,
.single .entry-content figure{
  display: table;
  margin-bottom: 1.5em;
}
.page .entry-content figcaption,
.single .entry-content figcaption{
  font-size: 0.9em;
  color: #555;
  text-align: center;
  margin-top: 0.5em;
}

/** entry-content直下にある、一番最初の要素のマージンだけを0にする **/
.page .entry-content > *:first-child,
.single .entry-content > *:first-child{
  margin-top: 0;
}

/* =================================================================
固定ページ 
================================================================= */
.page {
 margin-bottom: 0;
}
/* =================================================================
投稿ページ 
================================================================= */
.single {
 
}
/*.single h1.entry-title{
 font-size: 2.2rem;
 color: #000000;
 position: relative;
 padding-bottom: 10px; 
 margin-bottom: 50px;
}
.single h1.entry-title::after {
 content: '';
 position: absolute;
 bottom: 0;
 left: 0;
 width: 100%; 
 height: 5px;   
 background: linear-gradient(to right, #0a0b41, #c4c4d9); 
 }*/
.single .article-header {
    border-bottom: 6px solid; /* 下線を引くためのスペース */
    border-image: linear-gradient(to right, #0a0b41, #8e90c1) 1;
    padding-bottom: 15px; /* 下線との間隔 */
    margin-bottom: 30px; /* 本文との間隔 */
 }

.single .article-meta {
    display: flex;
    justify-content: space-between; /* 日付とタグを両端に配置 */
    align-items: center;
    margin-bottom: 15px;
 }
 
.single .article-date {
  /*font-size: 0.9em;*/
  color: var(--color-gray);
 margin-bottom: 0;
 }
.single .article-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
 }
.single .article-tags .tag {
  font-size: 0.8em;
  padding: 2px 10px;
  text-decoration: none;
  background-color: #e9ecef;
  color: #0a0b41;
 }
.single h1.entry-title {
  font-size: 2.2em;
  line-height: 1.5;
  color: #0a0b41;
  margin: 0;
 }

.single nav.post-navigation{
 max-width: 1120px;
 margin: 0 auto;
 margin-bottom: 50px;
}
@media screen and (max-width: 768px) {
.single nav.post-navigation{
 width: 100%;
 padding: 0 15px;
}
}
.single nav.post-navigation .nav-subtitle {
 font-weight: 600;
 font-size: 1.3em;
}
/* =================================================================
  アーカイブページ共通
================================================================= */
.archive article {
 padding-bottom: 30px;
 margin-bottom: 30px;
 display: flex;
 gap: 20px;
 border-bottom: solid 1px #CCC;
}
@media screen and (max-width: 768px) {
 .archive article {
  display: block;
 }
}
.archive article figure{
 width: 25%;
}
@media screen and (max-width: 768px) {
 .archive article figure{
  width: 100%;
  margin-bottom: 10px;
 }
}
.archive article figure img{
 width: 100%;
 height: auto;
 aspect-ratio: 3 / 2;
 object-fit: cover;
}
.archive article .archive-item-header {
 position: relative;
}
.archive article .archive-item-date {
 margin-bottom: 15px;
 display: block;
 color: var(--color-gray);
}
.archive article .post-category {
 margin-bottom: 15px;
 display: flex;
 flex-wrap: wrap;
 position: absolute;
 top:0;
 right: 0;
}
.archive article .post-category a{
 display: block;
 background: #e9ecef;
 color: #0a0b41;
 font-size: 0.8em;
 padding: 2px 10px;
 /*border-radius: 50vh;*/
 margin-right: 5px
}
@media screen and (max-width: 768px) {
 .archive article .post-category a{
  font-size: 0.85em;
  padding: 4px 10px;
  margin-bottom: 5px;
 }
}
.archive article h2.archive-item-title {
 margin-bottom: 20px;
 font-size: 1.3em;
}

.archive article .archive-item-body{
 width: 70%;
}
@media screen and (max-width: 768px) {
 .archive article .archive-item-body{
  width: 100%;
 }
}
.archive article .archive-item-excerpt{
 margin-bottom: 10px;
}

.archive article .archive-item-more {
 text-align: right;
}
.archive article .archive-item-more .link-more {
  margin-top: auto;
  align-self: flex-end;
  font-weight: bold;
  color: #0a0b41;
  text-decoration: none;
  padding-top: 15px;
 }
.archive article .archive-item-more .link-more:hover {
  /*text-decoration: underline;*/
 }

/* =================================================================
  活動報告 分類タブ
================================================================= */
.archive .entry-content .tabs-nav {
  display: grid; /* FlexboxからGridに変更 */
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); /* ★ ボタンの幅を統一 */
  gap: 10px; /* ボタン間の隙間 */
  list-style: none;
  margin: 0 0 80px;
  padding: 0;
 font-size: 0.9em;
 }
 
.archive .tabs-nav .tab-item a {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 5px;
  text-decoration: none;
  color: #495057;
  /*background-color: #e9ecef; /* OFFの状態 */
  background-color: #FFF; /* OFFの状態 */
  border-radius: 50vh; /* ★ 角丸を50vhに変更（カプセル型） */
  border: solid 1px #c5c8ca;
  font-weight: 600;
  text-align: center;
  transition: all 0.3s;
  /*min-height: 50px;*/
  box-sizing: border-box;
 }
.archive .tabs-nav .tab-item a.is-active {
  background-color: #0a0b41;
  color: #FFF;
 } 
.archive .tabs-nav .tab-item a:hover {
  background-color: #dee2e6;
  color: #212529;
 }
/* =========================================================
   ページネーションスタイル
========================================================= */

.pagination {
    margin-top: 40px; /* 上部の余白 */
    margin-bottom: 40px; /* 下部の余白 */
    text-align: center; /* 全体を中央寄せ */
}

.pagination ul {
    list-style: none; /* リストの点を非表示 */
    padding: 0;
    margin: 0;
    display: inline-block; /* ページネーション全体を中央寄せするためのブロック */
}

.pagination li {
    display: inline-block; /* 各ページ番号を横並びに */
    margin: 0 4px; /* ページ番号間の余白 */
}

.pagination a,
.pagination span {
    display: block; /* リンクと現在ページ番号をブロック要素に */
    padding: 8px 12px; /* パディング */
    min-width: 38px; /* 最小幅を確保（ページ番号が1桁でも2桁でも崩れにくいように） */
    border: 1px solid #e0e0e0; /* 枠線 */
    border-radius: 4px; /* 角丸 */
    background-color: #f8f8f8; /* 背景色 */
    color: #333; /* 文字色 */
    text-decoration: none; /* 下線を非表示 */
    font-size: 15px;
    line-height: 1; /* 行の高さを調整 */
    box-sizing: border-box; /* パディングとボーダーを幅に含める */
    transition: all 0.2s ease-in-out; /* ホバー時のアニメーション */
}

/* リンクにホバーした時のスタイル */
.pagination a:hover {
    background-color: #e6e6e6; /* ホバー時の背景色 */
    border-color: #d0d0d0;
    color: #000;
}

/* 現在のページ番号のスタイル */
.pagination .current {
    background-color: #0a0b41; /* 現在のページの背景色 */
    border-color: #0a0b41;
    color: #fff; /* 現在のページの文字色 */
    font-weight: bold; /* 現在のページを太字に */
    cursor: default; /* クリック不可を示すカーソル */
}

/* 前へ/次へ のテキストが長すぎないように調整（必要であれば） */
.pagination .prev.page-numbers,
.pagination .next.page-numbers {
    min-width: 60px; /* 少し幅を広げる */
}

/* 無効なページリンク（「前へ」の最初のページなど）のスタイル */
.pagination .dots {
    border: none;
    background-color: transparent;
    cursor: default;
    color: #666;
}
.pagination .dots:hover {
    background-color: transparent;
    color: #666;
}
/* =================================================================
  固定ページ個別
================================================================= */
/** 改革者 **/
.page-template-page-reformer {
 
}
.page-template-page-reformer .entry-content {
 background: #FFF;
}
.page-template-page-reformer .entry-content p{
 margin-bottom: initial;
}
/* --- ▼▼▼ 検索フォームのスタイル ▼▼▼ --- */
 .page-template-page-reformer .search-form {
 background-color: #ffffff;
    padding: 20px;
    border-radius: 8px;
    border: 1px solid #dee2e6; /* 枠線を少し濃くする */
    /* box-shadow を削除 */
    margin-bottom: 40px;
    display: flex;
    flex-wrap: wrap; /* 画面が狭い時に折り返す */
    align-items: center;
    gap: 35px;
 }
@media screen and (max-width: 768px) {
  .page-template-page-reformer .search-form {
   display: block;
 }
}
 .page-template-page-reformer .search-form .form-group {
    display: flex;
    align-items: center;
    gap: 8px;
 }
@media screen and (max-width: 768px) {
  .page-template-page-reformer .search-form .form-group {
   display: block;
   margin-bottom: 20px;
 }
}
 .page-template-page-reformer .search-form label {
    font-size: 0.9em;
    font-weight: bold;
    color: #333;
    white-space: nowrap; /* ラベルが改行しないように */
 }
@media screen and (max-width: 768px) {
  .page-template-page-reformer .search-form label {
   display: block;
 }
}
 .page-template-page-reformer .search-form input[type="text"],
 .page-template-page-reformer .search-form select {
    padding: 8px 10px;
    border: 1px solid #ced4da;
    border-radius: 4px;
    font-size: 1em;
 }
@media screen and (max-width: 768px) {
 .page-template-page-reformer .search-form input[type="text"]{
  width: 100%;
 }
}
 .page-template-page-reformer .search-form input[type="submit"] {
    background-color: #6c757d;
    color: white;
    border: none;
    padding: 9px 20px;
    border-radius: 50vh;
    font-size: 1em;
    cursor: pointer;
    transition: background-color 0.2s;
 }
 .page-template-page-reformer .search-form input[type="submit"]:hover {
    background-color: #5a6268;
 }

/* --- ▼▼▼ 検索結果、改革者一覧 ▼▼▼ --- */
.page-template-page-reformer article.backnumber {
display: flex;
gap: 30px;
padding: 20px;
border: 1px solid #b5b6b8;
border-radius: 8px;
margin-bottom: 40px;
 position: relative;
 background: #f0f2f5;
}
@media screen and (max-width: 768px) {
 .page-template-page-reformer article.backnumber {
  display: block;
 }
}
.page-template-page-reformer h2.publication-month-title {
 width: 100%;
 font-size: 1.2em;
 font-weight: bold;
 color: var(--color-navy);
 border-bottom: 2px solid var(--color-navy);
 padding-bottom: 10px;
 margin-bottom: 20px;
}
.page-template-page-reformer article.backnumber figure{
 width: 20%;
}
@media screen and (max-width: 768px) {
.page-template-page-reformer article.backnumber figure{
 width: 100%;
 text-align: center;
}
}
.page-template-page-reformer article.backnumber figure img{
 width: 100%;
 height: auto;
}
@media screen and (max-width: 768px) {
.page-template-page-reformer article.backnumber figure img{
 width: 80%;
 height: auto;
}
}
.page-template-page-reformer article.backnumber .reformer-meta {
 flex-grow: 1;
 display: flex; /* ★ 修正箇所 ★ */
 flex-direction: column; /* ★ 追加 ★ */
 width: 80%;
}
@media screen and (max-width: 768px) {
 .page-template-page-reformer article.backnumber .reformer-meta {
  width: 100%;
 }
}
.page-template-page-reformer article.backnumber .reformer-meta .highlight{
background-color: #ffd8c2; /* 背景色を黄色にする例 */
    font-weight: bold;        /* 太字にする例 */
    color: #333;              /* 文字色を濃い灰色にする例 */
    padding: 0 3px;         /* 少しパディングを追加 */
    border-radius: 3px;       /* 角を丸くする */
}
.page-template-page-reformer .r_title {
 font-size: 1.1em;
 font-weight: bold;
 color: #333;
 margin-bottom: 5px;
}
.page-template-page-reformer .author_title {
 font-size: 0.9em;
}
.page-template-page-reformer .author {
 font-weight: 600;
 padding-bottom: 10px;
 margin-bottom: 10px;
 border-bottom: 1px solid #b5b6b8;
}
.page-template-page-reformer .body {
 font-size: 0.9em;
}
.page-template-page-reformer .pdf-button-wrapper {
 display: flex;
 justify-content: flex-end; /* ボタンを右揃えに */
 gap: 10px; /* ボタン間の隙間 */
 margin-top: auto; /* ★ 修正箇所 ★ */
 padding-top: 20px; /* ★ 追加 ★ */
}
@media screen and (max-width: 768px) {
 .page-template-page-reformer .pdf-button-wrapper {
  justify-content: space-around;
 }
}
.page-template-page-reformer .btn-pdf,
.page-template-page-reformer .btn-purchase {
    display: inline-flex; /* ★ 修正箇所 ★ */
    justify-content: center; /* ★ 追加 ★ */
    align-items: center; /* ★ 追加 ★ */
    color: #ffffff;
    padding: 10px 25px;
    border-radius: 50vh;
    font-weight: bold;
    text-decoration: none;
    transition: background-color 0.2s;
 
 }
 .page-template-page-reformer a.btn-purchase {
    background-color: #0a0b41; 
  color: #FFF;
  text-decoration: none;
 }
 .page-template-page-reformer a.btn-purchase:hover {
color: #FFF;
 }
 .page-template-page-reformer a.btn-pdf {
    background-color: #FFF;
  text-decoration: none;
  color: #28299a;
 }
 .page-template-page-reformer a.btn-pdf:hover {
 color: #28299a;
 }

/* --- ▼▼▼ 改革者カテゴリー リンク ▼▼▼ --- */
.publoc-cat-box {
 
}
.page .entry-content .publoc-cat-box .publoc-cat-list {
  display: grid; /* FlexboxからGridに変更 */
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); /* ★ ボタンの幅を統一 */
  gap: 10px; /* ボタン間の隙間 */
  list-style: none;
  margin: 0 0 80px;
  padding: 0;
 font-size: 0.9em;
 }
 
.publoc-cat-box .publoc-cat-list a {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 5px;
  text-decoration: none;
  color: #495057;
  /*background-color: #e9ecef; /* OFFの状態 */
  background-color: #FFF; /* OFFの状態 */
  border-radius: 50vh; /* ★ 角丸を50vhに変更（カプセル型） */
  border: solid 1px #c5c8ca;
  font-weight: 600;
  text-align: center;
  transition: all 0.3s;
  /*min-height: 50px;*/
  box-sizing: border-box;
 }
 
.publoc-cat-box .publoc-cat-list a:hover {
  background-color: #dee2e6;
  color: #212529;
 }

.publoc-cat-box .publoc-cat-list a.is-active {
  background-color: #0a0b41; /* ONの状態 */
  color: #fff;
  box-shadow: 0 1px 3px rgba(10 11 65, 0.3);
 }
.publoc-cat-box .publoc-cat-list li{
 
}
/* --- ▼▼▼ 改革者カテゴリー table ▼▼▼ --- */
.page figure.public-cat-table {

}
.page figure.public-cat-table table{

}
.page figure.public-cat-table thead th:nth-of-type(1){
 width: 65%
}
.page figure.public-cat-table thead th:nth-of-type(2){
width: 20%
}
.page figure.public-cat-table thead th:nth-of-type(3){
width: 15%
}
.page figure.public-cat-table tr td{

}
.page figure.public-cat-table tr td span.subtitle{
 font-size: 0.9em;
}
/* テーブル内のハイライト（markタグ）をサブタイトル風にする */
.page figure.public-cat-table tr td span.subtitle,
.page figure.public-cat-table tr td mark {
  color: #787878 !important; 
  font-size: 0.9em; 
  background: none !important; 
  font-weight: normal;
 font-style: normal;
 margin-left: 1em;
}

/* =================================================================
 検索結果
================================================================= */
.search .page-content {
 
}
.search .page-content h2{
 font-size: 1.5em;
 padding-bottom: 5px;
 margin-bottom: 15px;
}
.search .page-content h2 a{
 color: var(--color-navy);
}
.search .page-content .entry-summary{
 padding-bottom: 20px;
 margin-top: 0;
 margin-bottom: 20px;
 border-bottom: solid 1px #CCC;
}
/* =================================================================
  フォーム設定
================================================================= */
.snow-monkey-form .smf-form {
 
}
.snow-monkey-form .wp-block-snow-monkey-forms-item {
 margin-bottom: 2em;
}
.snow-monkey-form .smf-item__label {
 color: #0A0B41;
 font-weight: 600;
 font-size: 1.1em;
}
.snow-monkey-form .smf-form input[type="text"],
.snow-monkey-form .smf-form input[type="password"],
.snow-monkey-form .smf-form input[type="email"],
.snow-monkey-form .smf-form input[type="number"],
.snow-monkey-form .smf-form input[type="search"],
.snow-monkey-form .smf-form input[type="tel"],
.snow-monkey-form .smf-form input[type="url"] {
 width: 100%;
 border-radius: 8px;
}
.snow-monkey-form .smf-form input.w_10 {
 width: 10%;
}
.snow-monkey-form .smf-form input.w_20 {
 width: 20%;
}
.snow-monkey-form .smf-form input.w_30 {
 width: 30%;
}
.snow-monkey-form .smf-form input.w_40 {
 width: 40%;
}
.snow-monkey-form .smf-form input.w_50 {
 width: 50%;
}
.snow-monkey-form .smf-form .annotation {
 font-size: 0.9em;
 color: #717171;
}
@media screen and (max-width: 768px) {
 .snow-monkey-form .smf-form input {
  width: 100% !important;
 }
}
.snow-monkey-form .smf-form textarea{
width: 100%;
 border-radius: 8px;
}
.snow-monkey-form .smf-form selec{
 border-radius: 8px;
}
.snow-monkey-form .smf-action {
 margin-top: 50px;
 text-align: center;
}


[data-screen="confirm"] .wp-block-snow-monkey-forms-item {
 padding-bottom: 10px;
 border-bottom: solid 1px #efefef;
}
[data-screen="confirm"] .smf-item__description {
 display: none;
}
/**ボタン**/
.snow-monkey-form .smf-action button {
 display: inline-flex;
 justify-content: center;
 align-items: center;
 color: #FFF;
 padding: 20px 55px;
 border-radius: 50vh;
 font-weight: bold;
 text-decoration: none;
 transition: background-color 0.2s;
}
.snow-monkey-form .smf-action button:hover {
 opacity: 0.8;
}
.snow-monkey-form .smf-action button[type="submit"] {
 background: #0a0b41;
 color: #FFF;
 text-decoration: none;
}
.snow-monkey-form .smf-action button[type="submit"][data-action="back"] {
 background: #c0c1c2;
 color: #FFF;
 text-decoration: none;
}

/* =================================================================
 404
================================================================= */
.error404 .page-content {
 
}
.error404 .page-content h2{
 font-size: 1.5em;
 padding-bottom: 5px;
 border-bottom: 2px solid var(--color-navy);
 color: var(--color-navy);
 margin-bottom: 30px;
}
.error404 .page-content .action404{
 margin-top: 30px;
}
.error404 .page-content .action404 a{
 color: var(--color-navy);
 font-weight: 600;
 display: block;
 margin-bottom: 20px;
}