@charset "UTF-8";
* {
  box-sizing: border-box;
}

/**********************************************************************************************************************
THEME COMMON
----------------------------------------------------------------------------------------------------------------------*/
div.keyword-wrap {
  max-width: 850px;
  background: url(../../../images/cmn/cmn_cat_head_bg.png) repeat-x;
  border-top: solid 5px #3d99bf;
}
div.keyword-wrap div.keyword-head-wrap {
  padding: 3em 0 2em;
}
@media only screen and (max-width: 768px) {
  div.keyword-wrap div.keyword-head-wrap {
    padding: 2em 0;
  }
}
div.keyword-wrap div.keyword-head-wrap div.keyword-head {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
div.keyword-wrap div.keyword-head-wrap div.keyword-head i {
  margin: 0 16px;
  font-size: 42px;
  color: #3d99bf;
}
@media only screen and (max-width: 768px) {
  div.keyword-wrap div.keyword-head-wrap div.keyword-head i {
    margin: 0 4px;
    font-size: 24px;
  }
}
div.keyword-wrap div.keyword-head-wrap div.keyword-head h1 {
  margin: 0;
  text-align: left;
  font-weight: bold;
}
@media print, screen and (min-width: 769px) {
  div.keyword-wrap div.keyword-head-wrap div.keyword-head h1 {
    font-size: 24px;
    color: #000;
  }
  div.keyword-wrap div.keyword-head-wrap div.keyword-head h1 span {
    margin-left: 1rem;
    font-size: 16px;
  }
}
@media only screen and (max-width: 768px) {
  div.keyword-wrap div.keyword-head-wrap div.keyword-head h1 {
    font-size: 1.1rem;
    color: #000;
  }
  div.keyword-wrap div.keyword-head-wrap div.keyword-head h1 span {
    font-weight: normal;
    font-size: 0.75rem;
  }
}
div.keyword-wrap h2 {
  margin: 2em 0 0.5em;
  font-size: 1.3rem;
}
div.keyword-wrap .uk-button-keyword {
  background-color: #3d99bf;
  color: #fff;
  padding-left: 1rem;
  padding-right: 1rem;
}
@media print, screen and (min-width: 769px) {
  div.keyword-wrap .uk-button-keyword {
    min-width: 180px;
  }
}
div.keyword-wrap .uk-button-keyword:hover {
  opacity: 0.75;
  color: #fff;
}

/**********************************************************************************************************************
KeywordTop
----------------------------------------------------------------------------------------------------------------------*/
#KeywordTop {
  max-width: 850px;
  background: url(../../../images/cmn/cmn_cat_head_bg.png) repeat-x;
  border-top: solid 5px #3d99bf;
}
#KeywordTop div.theme-intro {
  margin-bottom: 2em;
}
@media only screen and (max-width: 768px) {
  #KeywordTop div.theme-intro {
    margin-bottom: 1em;
  }
}
#KeywordTop ul.theme-nav {
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #3d99bf; /* fallback for old browsers */
}
@media only screen and (max-width: 768px) {
  #KeywordTop ul.theme-nav {
    margin-bottom: 2em;
  }
}
#KeywordTop ul.theme-nav li {
  margin: 0;
  height: 60px;
  border-left: solid 1px #fff;
}
@media print, screen and (min-width: 769px) {
  #KeywordTop ul.theme-nav li {
    height: 60px;
    width: 20%;
  }
}
@media only screen and (max-width: 768px) {
  #KeywordTop ul.theme-nav li {
    height: 30px;
    min-width: 18%;
  }
}
#KeywordTop ul.theme-nav li:first-of-type {
  border: none;
}
#KeywordTop ul.theme-nav li a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  color: #fff;
  font-weight: bold;
}
@media only screen and (max-width: 768px) {
  #KeywordTop ul.theme-nav li a {
    font-size: 0.6em;
    white-space: nowrap;
    padding: 0 0.5em;
  }
}
#KeywordTop ul.theme-nav li a:hover {
  background-color: #6dd5ed;
}
@media print, screen and (min-width: 769px) {
  #KeywordTop div.theme-top-sect {
    padding-top: 3.5em;
  }
}
@media only screen and (max-width: 768px) {
  #KeywordTop div.theme-top-sect {
    margin-top: -50px;
    padding-top: 50px;
  }
}
#KeywordTop div.theme-top-sect h1 {
  margin: 0 auto 1em;
  padding: 0.5em 1em;
  text-align: left;
  font-weight: bold;
  background-color: #f3f3f3;
}
@media only screen and (max-width: 768px) {
  #KeywordTop div.theme-top-sect h1 {
    font-size: 1.1rem;
  }
}
#KeywordTop div.theme-top-sect ul.keyword-list {
  padding: 0 1rem;
}
@media print, screen and (min-width: 769px) {
  #KeywordTop div.theme-top-sect ul.keyword-list {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
  }
}
#KeywordTop div.theme-top-sect ul.keyword-list li {
  margin: 0;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
@media print, screen and (min-width: 769px) {
  #KeywordTop div.theme-top-sect ul.keyword-list li {
    width: 33.33%;
    height: 36px;
  }
}
#KeywordTop div.theme-top-sect ul.keyword-list li:before {
  margin-right: 6px;
  font-family: "Font Awesome 5 Free";
  content: "\f292";
  font-weight: 900;
}
#KeywordTop div.theme-top-sect ul.keyword-list li a {
  color: #3d99bf;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  height: 100%;
}
#KeywordTop div.theme-top-sect ul.keyword-list li a:hover {
  color: #6dd5ed;
}

/**********************************************************************************************************************
 KEYAORD TAG
----------------------------------------------------------------------------------------------------------------------*/
#KeywordTag {
  max-width: 850px;
  background: url(../../../images/cmn/cmn_cat_head_bg.png) repeat-x;
  border-top: solid 5px #3d99bf;
}
#KeywordTag div.keyword-all-sect {
  padding-bottom: 3em;
}
#KeywordTag div.keyword-all-sect h1 {
  margin: 0 auto 1em;
  padding: 0.5em 1em;
  text-align: left;
  font-weight: bold;
  background-color: #f3f3f3;
}
#KeywordTag div.keyword-all-sect ul {
  padding: 0;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
}
#KeywordTag div.keyword-all-sect ul li {
  margin: 0 8px 8px 0;
  display: inline-block;
  height: 36px;
}
#KeywordTag div.keyword-all-sect ul li a {
  padding: 0 1.5em;
  border: solid 1px #6dd5ed;
  border-radius: 4px;
  color: #3d99bf;
  font-size: 12px;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
}
#KeywordTag div.keyword-all-sect ul li a:hover {
  background-color: #6dd5ed;
  color: #fff;
}

/**********************************************************************************************************************
KeywordCts
----------------------------------------------------------------------------------------------------------------------*/
#KeywordCts {
  max-width: 850px;
}
#KeywordCts div.keyword-head-wrap {
  padding: 2em 0;
}
#KeywordCts div.keyword-cts-lead {
  margin-bottom: 2em;
  padding: 2em;
  background-color: #f3f3f3;
}
#KeywordCts div.keyword-cts-lead div.img {
  margin: 0 auto;
  text-align: center;
  min-height: 180px;
  display: flex;
  justify-content: center;
  align-items: center;
}
#KeywordCts div.keyword-cts-lead div.img img {
  width: 100%;
  height: auto;
}
#KeywordCts div.keyword-cts-lead h2 {
  font-size: 1.3rem;
}
#KeywordCts div.keyword-theme-sect {
  margin-bottom: 2em;
  padding: 4em 0;
}
#KeywordCts div.keyword-theme-sect h1.uk-heading-line {
  margin: 0 auto 2em;
  text-align: center;
}
#KeywordCts div.keyword-theme-sect h1.uk-heading-line span {
  font-size: 1em;
}
#KeywordCts div.keyword-theme-sect h1.uk-heading-line span strong {
  font-weight: bold;
  font-size: 1.5rem;
  color: #3d99bf;
}
#KeywordCts div.keyword-theme-sect h1.uk-heading-line span strong i {
  font-size: 1.5rem;
}
#KeywordCts div.keyword-theme-sect h1.uk-heading-line span::after, #KeywordCts div.keyword-theme-sect h1.uk-heading-line span::before {
  border-bottom: 1px solid #3d99bf;
}
#KeywordCts div.keyword-theme-sect div.uk-grid {
  margin-bottom: 30px;
}
#KeywordCts div.keyword-theme-sect div.uk-grid div.uk-card div.uk-card-media-top {
  overflow: hidden;
  height: 160px;
  display: flex;
  justify-content: center;
  align-items: center;
}
#KeywordCts div.keyword-theme-sect div.uk-grid div.uk-card div.uk-card-media-top img {
  width: 100%;
  height: auto;
}
#KeywordCts div.keyword-theme-sect div.uk-grid div.uk-card div.uk-card-body {
  padding: 0;
}
#KeywordCts div.keyword-theme-sect ul.press {
  padding: 0;
}
#KeywordCts div.keyword-theme-sect ul.press li {
  margin-bottom: 1em;
  padding: 1em 0;
  border-bottom: dotted 1px #ccc;
}
#KeywordCts div.keyword-theme-sect ul.press li p {
  margin: 8px 0 0;
}
#KeywordCts div.keyword-theme-sect ul.keyword-list {
  margin-bottom: 2em;
  padding: 0;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
}
#KeywordCts div.keyword-theme-sect ul.keyword-list li {
  margin: 0 8px 8px 0;
  display: inline-block;
  height: 36px;
}
#KeywordCts div.keyword-theme-sect ul.keyword-list li a {
  padding: 0 1.5em;
  border: solid 1px #6dd5ed;
  border-radius: 4px;
  color: #3d99bf;
  font-size: 12px;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
}
#KeywordCts div.keyword-theme-sect ul.keyword-list li a:hover {
  background-color: #6dd5ed;
  color: #fff;
}

#Column .uk-text-meta {
  color: #333;
}

#Report div.keyword-theme-sect .uk-card-title {
  margin-top: 10px;
  font-size: 1rem;
  margin-bottom: 0;
  text-decoration: none;
  color: #333;
}
#Report div.keyword-theme-sect .uk-text-meta {
  margin: 8px 0 0 !important;
  font-size: 0.875rem;
  line-height: 1.4;
  color: #333;
}

/**********************************************************************************************************************
Keyword SRC
----------------------------------------------------------------------------------------------------------------------*/
#KeywordSrc div.keyword-src-head {
  margin: 1em 0 2em;
  padding: 2em;
  background-color: #f3f3f3;
}
@media only screen and (max-width: 768px) {
  #KeywordSrc div.keyword-src-head {
    padding: 1em;
  }
}
#KeywordSrc div.keyword-src-head div.keyword-src-area {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
}
#KeywordSrc div.keyword-src-head div.keyword-src-area label {
  margin: 0;
}
@media print, screen and (min-width: 769px) {
  #KeywordSrc div.keyword-src-head div.keyword-src-area label {
    padding: 6px;
    width: 25%;
  }
}
@media only screen and (max-width: 768px) {
  #KeywordSrc div.keyword-src-head div.keyword-src-area label {
    padding: 3px;
    width: 50%;
    font-size: 0.75em;
  }
  #KeywordSrc div.keyword-src-head div.keyword-src-area label a {
    font-size: 0.75em;
  }
}
#KeywordSrc div.keyword-src-rlt div.uk-card {
  margin-top: 2rem;
  padding: 1.5em;
  border: solid 1px #f1f1f1;
  border-radius: 8px;
}
@media only screen and (max-width: 768px) {
  #KeywordSrc div.keyword-src-rlt div.uk-card {
    padding: 1em;
  }
}
#KeywordSrc div.keyword-src-rlt div.uk-card img:hover {
  opacity: 0.75;
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body {
  padding: 0;
  display: grid;
  gap: 12px;
  grid-template-columns: 1fr 3fr;
}
@media print, screen and (min-width: 769px) {
  #KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body {
    grid-template-columns: 240px 1fr;
    gap: 18px 36px;
  }
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.thum {
  max-height: 180px;
  display: flex;
  justify-content: center;
  align-items: flex-start;
}
@media print, screen and (min-width: 769px) {
  #KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.thum {
    grid-row: span 2;
    grid-column: span 1;
  }
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.thum img {
  max-height: 180px;
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.text {
  grid-column: span 3;
}
@media print, screen and (min-width: 769px) {
  #KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.text {
    grid-column: span 1;
  }
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.text div.fav-area {
  margin-bottom: 8px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.text div.fav-area div.category {
  margin: 0;
  padding: 0 0 0 6px;
  height: 24px;
  line-height: 24px;
  font-weight: bold;
  color: #0e417d;
  border-left: solid 6px #0e417d;
}
@media only screen and (max-width: 768px) {
  #KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.text div.fav-area div.category {
    font-size: 11px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
  }
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.text div.fav-area button.cmn-btn-fav {
  height: 32px;
  padding: 0 8px;
  min-width: 96px;
  border-radius: 4px;
  white-space: nowrap;
  background-color: #0265cb;
  border: solid 2px #0265cb;
  box-shadow: 2px 2px 4px #ccc;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media only screen and (max-width: 768px) {
  #KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.text div.fav-area button.cmn-btn-fav {
    height: 24px;
    font-size: 11px;
  }
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.text div.fav-area button.cmn-btn-fav:hover {
  opacity: 0.75;
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.text div.fav-area button.cmn-btn-fav:after {
  display: block;
  margin-left: 6px;
  content: "検討する";
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.text div.fav-area button.cmn-btn-fav.bmk:after {
  content: "ブックマークする";
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.text div.fav-area button.cmn-btn-fav.added {
  background: #fff;
  box-shadow: none;
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.text div.fav-area button.cmn-btn-fav.added i {
  color: #0265cb;
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.text div.fav-area button.cmn-btn-fav.added:after {
  color: #0265cb;
  content: "検討中";
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.text div.fav-area button.cmn-btn-fav.added.bmk:after {
  color: #0265cb;
  content: "ブックマーク済";
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.text ul.uk-text-meta {
  margin: 0;
  padding: 0;
  color: #7c7c7c;
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.text ul.uk-text-meta li {
  margin-top: 6px;
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.text h3.uk-card-title {
  margin: 0;
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.text h3.uk-card-title a {
  font-size: 18px;
  color: #000000;
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.text h3.uk-card-title a:hover {
  opacity: 0.75;
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.btn-area {
  grid-column: span 4;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
@media print, screen and (min-width: 769px) {
  #KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.btn-area {
    grid-column: span 1;
    justify-content: flex-start;
  }
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.btn-area input {
  display: none;
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.btn-area button, #KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.btn-area a {
  margin: 0;
  cursor: pointer;
  border-radius: 4px;
  border: none;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media print, screen and (min-width: 769px) {
  #KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.btn-area button, #KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.btn-area a {
    margin: 0 4px;
    min-width: 196px;
    height: 48px;
    font-size: 15px;
  }
}
@media only screen and (max-width: 768px) {
  #KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.btn-area button, #KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.btn-area a {
    margin: 0 6px;
    width: 50%;
    height: 36px;
    min-width: unset;
    font-size: 12px;
  }
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.btn-area button.cmn-btn-action, #KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.btn-area a.cmn-btn-action {
  background: #ff3300;
  color: #fff;
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.btn-area button.cmn-btn-action:hover, #KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.btn-area a.cmn-btn-action:hover {
  background: #f7bf00;
}
@media only screen and (max-width: 768px) {
  #KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.btn-area button.cmn-btn-action, #KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.btn-area a.cmn-btn-action {
    font-size: 13px;
  }
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.btn-area button.cmn-btn-link, #KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.btn-area a.cmn-btn-link {
  border: 1px solid #0e417d;
  color: #0e417d;
  background: #fff;
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.btn-area button.cmn-btn-link:hover, #KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.btn-area a.cmn-btn-link:hover {
  opacity: 0.75;
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.btn-area button.disabled, #KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.btn-area a.disabled {
  cursor: default;
  background-color: #7C7C7C !important;
  color: #CCC;
}
#KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.btn-area button.disabled:hover, #KeywordSrc div.keyword-src-rlt div.uk-card div.uk-card-body div.btn-area a.disabled:hover {
  background-color: #7C7C7C !important;
}
#KeywordSrc div.keyword-src-rlt-link {
  margin-top: 3em;
  padding-top: 2em;
  border-top: solid 5px #3d99bf;
}
#KeywordSrc div.keyword-src-rlt-link h3 a {
  font-size: unset;
}
#KeywordSrc div.keyword-src-rlt-link ul {
  padding: 0;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 6px;
}
#KeywordSrc div.keyword-src-rlt-link ul li {
  margin: 0;
  display: inline-block;
}
#KeywordSrc div.keyword-src-rlt-link ul li a {
  padding: 0 2em;
  border: solid 1px #ccc;
  border-radius: 4px;
  color: #111111;
  font-size: 12px;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 30px;
}
