@charset "UTF-8";
body, .header, .appeal {
  /* 画像を常に左右の中央に配置 */
  background-position: top center;
  /* 画像をタイル状に繰り返し表示しない */
  background-repeat: no-repeat;
  /* 表示するコンテナの大きさに基づいて、背景画像を調整 */
  background-size: 100% auto; }

.search-edit, input[type="text"] {
  padding: 11px;
  border: 1px solid #ccc;
  border-radius: 8px;
  font-size: 18px;
  width: 100%; }

.fz-18px {
  font-size: 18px; }

.fw-400 {
  font-weight: 400; }

.ff-hiragino {
  font-family: '\30D2\30E9\30AE\30CE\89D2\30B4   ProN W3', "Hiragino Kaku Gothic Pro", "Meiryo", "\6E38\30B4\30B7\30C3\30AF\4F53", "Yu Gothic",sans-serif; }

/************************************
** 基本表示
************************************/
/*初期化*/
* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  word-wrap: break-word;
  overflow-wrap: break-word; }

.container {
  padding-right: constant(safe-area-inset-right);
  padding-left: constant(safe-area-inset-left);
  padding-right: env(safe-area-inset-right);
  padding-left: env(safe-area-inset-left); }

body {
  /* フォントの種類 */
  font-family: "\6E38\30B4\30B7\30C3\30AF\4F53", "Yu Gothic", "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;
  /* フォントのサイズ */
  font-size: 18px;
  /* フォントの色 */
  color: #333;
  /* カーニングの設定 */
  /* 行間の設定 */
  line-height: 1.8;
  margin: 0;
  overflow-wrap: break-word;
  background-color: #fff;
  /* コンテンツの高さが画像の高さより大きい時、動かないように固定 */
  background-attachment: fixed; }

/*デフォルトリンク*/
a {
  color: #1967d2; }

a:hover {
  color: #e53900; }

ol, ul {
  margin: 1em 0;
  padding-left: 40px; }

hr {
  color: #eee; }

/* クリアフィックス */
.cf::after {
  clear: both;
  content: "";
  display: block; }

.header-container,
.main,
.sidebar,
.footer {
  background-color: #fff; }

/* インナーを囲む */
.wrap {
  width: 1050px;
  margin: 0 auto; }

/************************************
** 画像関係のスタイル
************************************/
img {
  max-width: 100%;
  height: auto;
  border: 0;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden; }

/************************************
** ヘッダー
************************************/
.header {
  height: 100%;
  color: #333; }

.header-in {
  display: flex;
  flex-direction: column;
  justify-content: center; }

.tagline {
  text-align: center;
  font-size: 12px;
  font-weight: bold;
  background-color: #f3f3f3;
  color: #787878;
  line-height: 1.6; }

.logo {
  text-align: center; }

.logo-image span,
.logo-image a {
  display: inline-block;
  max-width: 100%; }

.logo-image {
  padding: 20px 0 10px;
  font-size: inherit; }

/************************************
** アピールエリア
************************************/
.appeal {
  background-image: url(../img/appeal-background3.jpg);
  background-size: cover; }

.appeal-in {
  display: flex;
  min-height: 200px;
  padding: 3% 5%; }

.appeal-content {
  max-width: 800px;
  margin: auto;
  padding: 1em;
  text-align: center;
  display: block; }

.appeal-title {
  font-size: 50px;
  padding-left: .5em;
  color: #fff;
  letter-spacing: .04em; }

/*検索フォーム*/
.search-box {
  margin: 1em 0 2em;
  position: relative; }

.search-edit {
  font-family: inherit; }

#search-menu-content .search-edit {
  font-size: 16px; }

.search-submit {
  position: absolute;
  right: 0;
  top: 0;
  font-size: 20px;
  cursor: pointer;
  line-height: 51px;
  border: none;
  color: #fff;
  padding: 0 12px;
  background-color: #E43C2F;
  border-radius: 0px 8px 8px 0px; }

input::-webkit-input-placeholder {
  color: #BEBEBE; }

input::placeholder {
  color: #BEBEBE; }

.main {
  margin-top: 20px; }

.entry-title {
  font-size: 26px;
  text-align: center; }

.column-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center; }

.column {
  width: 160px;
  margin: 0 7.5px 7.5px 7.5px; }

.a-wrap {
  text-decoration: none;
  display: block;
  color: #333;
  padding: 1.5%;
  margin-bottom: 3%;
  transition: all .7s; }

.a-wrap {
  padding: 0;
  margin: 0; }

.entry-card {
  display: flex;
  flex-direction: column; }

.entry-card {
  position: relative;
  height: 100%; }

.entry-card-thumb {
  margin-top: 3px;
  position: relative; }
  .entry-card-thumb img {
    object-fit: cover;
    width: 160px;
    height: 90px;
    font-family: 'object-fit: cover;'; }

.cat-label {
  position: absolute;
  font-size: 12px;
  max-width: 90%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  background: #484848;
  border-radius: 2px;
  padding: 0 5px;
  bottom: 15px;
  left: 9px;
  font-weight: 600;
  color: #fff; }

.entry-card-content {
  margin-top: -5px; }

.entry-card-title {
  font-weight: 600;
  font-size: 16px;
  line-height: 1.4;
  color: #606060;
  text-align: center; }

.ad-pc {
  width: 100%;
  margin: 0 7.5px 7.5px 7.5px;
  text-align: center; }

.ad-sp {
  width: 100%;
  display: none;
  text-align: center;
  margin: 0 7.5px 7.5px 7.5px; }

/************************************
** フッター
************************************/
.footer {
  margin-top: 20px;
  padding: 15px;
  background: #6B6B6B;
  color: #fff; }

.copyright {
  margin-top: 15px;
  font-size: 14px;
  text-align: center; }

/************************************
** フッターボトム
************************************/
.footer-bottom {
  margin: 10px auto;
  position: relative;
  font-size: 14px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 800px; }

.footer-contact {
  display: block;
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  color: #fff; }

.footer-bottom-logo {
  margin-right: 10px; }
  .footer-bottom-logo img {
    max-width: none; }

.footer-bottom-content {
  font-size: 16px; }

.cat-1 .cat-label {
  background: #000580; }

.cat-1 .entry-card-content i {
  color: #000580; }

.cat-2 .cat-label {
  background: #008019; }

.cat-2 .entry-card-content i {
  color: #008019; }

.cat-3 .cat-label {
  background: #807B00; }

.cat-3 .entry-card-content i {
  color: #807B00; }

.cat-4 .cat-label {
  background: #800000; }

.cat-4 .entry-card-content i {
  color: #800000; }

.cat-5 .cat-label {
  background: #800076; }

.cat-5 .entry-card-content i {
  color: #800076; }

.cat-6 .cat-label {
  background: #400080; }

.cat-6 .entry-card-content i {
  color: #400080; }

.cat-7 .cat-label {
  background: #008071; }

.cat-7 .entry-card-content i {
  color: #008071; }

.cat-8 .cat-label {
  background: #80002C; }

.cat-8 .entry-card-content i {
  color: #80002C; }

.cat-9 .cat-label {
  background: #484848; }

.cat-9 .entry-card-content i {
  color: #484848; }

.cat-10 .cat-label {
  background: #004080; }

.cat-10 .entry-card-content i {
  color: #004080; }

.cat-11 .cat-label {
  background: #805400; }

.cat-11 .entry-card-content i {
  color: #805400; }

.cat-12 .cat-label {
  background: #800027; }

.cat-12 .entry-card-content i {
  color: #800027; }

.cat-13 .cat-label {
  background: #006780; }

.cat-13 .entry-card-content i {
  color: #006780; }

.cat-14 .cat-label {
  background: #800071; }

.cat-14 .entry-card-content i {
  color: #800071; }

.cat-15 .cat-label {
  background: #005480; }

.cat-15 .entry-card-content i {
  color: #005480; }

.cat-16 .cat-label {
  background: #628000; }

.cat-16 .entry-card-content i {
  color: #628000; }

.cat-17 .cat-label {
  background: #800036; }

.cat-17 .entry-card-content i {
  color: #800036; }

.cat-18 .cat-label {
  background: #404040; }

.cat-18 .entry-card-content i {
  color: #404040; }

.cat-19 .cat-label {
  background: #AEB162; }

.cat-19 .entry-card-content i {
  color: #AEB162; }

.cat-20 .cat-label {
  background: #6367C1; }

.cat-20 .entry-card-content i {
  color: #6367C1; }

.cat-21 .cat-label {
  background: #438E7D; }

.cat-21 .entry-card-content i {
  color: #438E7D; }

.cat-22 .cat-label {
  background: #96504D; }

.cat-22 .entry-card-content i {
  color: #96504D; }

.cat-23 .cat-label {
  background: #863D75; }

.cat-23 .entry-card-content i {
  color: #863D75; }

.cat-24 .cat-label {
  background: #29687B; }

.cat-24 .entry-card-content i {
  color: #29687B; }

.cat-25 .cat-label {
  background: #800080; }

.cat-25 .entry-card-content i {
  color: #800080; }

@media screen and (max-width: 1050px) {
    .wrap {
      width: auto; } }

@media screen and (max-width: 768px) {
    .tagline {
      font-size: 11px; }
    .logo-image {
      padding: 10px 0 0; }
      .logo-image img {

         }
    .appeal-in {
      padding-bottom: 0; }
    .appeal-content {
      padding: 0.5em;
      padding-bottom: 0; }
    .appeal-title {
      font-size: 24px; }
    .entry-title {
      font-size: 20px; }
    .ad-pc {
      display: none; }
    .ad-sp {
      display: block; }
    .copyright {
      font-size: 11px; }
    .footer-contact {
      font-size: 14px; }
      .footer-bottom-logo img {
        width: 123px;
        height: 44px; }
    .footer-bottom-content {
      font-size: 11px; } }

@media screen and (max-width: 350px) {
    .column {
      width: 125px; }
      .entry-card-thumb img {
        width: 125px;
        height: 70px; } }
