@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);

@import url(https://fonts.googleapis.com/css?family=Noto+Serif);

@import url(https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css);

/* Scooter_EFaster を Webフォントとして宣言（ttfだけ版） */
@font-face {
  font-family: 'Scooter_EFaster';
  src: url('../font/Scooter_EFaster.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
}
/* ============================
   全面動画ヒーロー 完成形
   ============================ */

.video-hero {
  position: relative;
  width: 100%;
  height: 100%; /* 必要に応じて固定値にしてもOK */
  overflow: hidden;
}

/* ▼ 背景動画レイヤー */
.video-hero-video {
  position: absolute;
  inset: 0;               /* top:0; right:0; bottom:0; left:0 の省略 */
  width: 100%;
  height: 100%;
  z-index: 1;
}

.video-hero-video video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ▼ 動画を暗くする黒オーバーレイ */
.video-hero-video::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6); /* ← ここで暗さ調整 */
  z-index: 2;
  pointer-events: none; /* 操作の邪魔をしない */
}

/* ▼ テキスト・ロゴなど前面に出すレイヤー */
.video-hero-inner {
  position: relative;
  z-index: 3; /* 文字は動画・オーバーレイより前 */
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;   /* 横中央配置 */
  align-items: center;       /* 縦中央配置 */
  text-align: center;
}


/*!---------------------------------------
 * Omotenashi
 * built 2013-07-01
 * last updated 2015-09-30
 * Licensed under the MIT License.
 * ---------------------------------------
 * (C) 2015 Munenori Nishimura
 * https://twitter.com/mune_nori
 * -------------------------------------*/

/* ローディング画面 */
#cm-loading {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;

  /* 中央がやや明るく、外周が黒になる高級系の光 */
  background: radial-gradient(
    circle,
    #3a3a3a 0%,   /* 中央の光（濃いグレー） */
    #1a1a1a 40%,  /* だんだん暗く */
    #000000 100%  /* 外側は完全な黒 */
  );

  opacity: 1;
  transition: opacity 0.8s ease;
}


/* ロゴ（3倍） */
#cm-loading img {
  width: 600px; /* ← 約3倍の大きさ */
  height: auto;
  opacity: 0;
  transform: scale(0.9);
  animation: cmFadeIn 1s ease forwards;
}

/* フェードアウト後 */
#cm-loading.hide {
  opacity: 0;
  pointer-events: none;
}

@keyframes cmFadeIn {
  to {
    opacity: 1;
    transform: scale(1);
  }
}


/* ================================
   ベースレイアウト
   ================================ */

.secTop {
  margin: 0;
  padding: 0;
}

/* 中央寄せコンテナ汎用 */
.inner {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  padding: 0 1.5rem;
  box-sizing: border-box;
}

/* ================================
   パララックス共通
   ================================ */

.para {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;

  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-attachment: fixed;   /* PCではパララックス風 */

  position: relative;
  padding: 4rem 2rem;
  overflow: hidden;
}

/* 背景を暗くする黒オーバーレイ */
.para::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.6);   /* ← 暗さ調整 0.5〜0.7 */
  z-index: 1;
}

/* 中身は前面＆文字色は白 */
.para > * {
  position: relative;
  z-index: 2;
  color: #fff;
}

/* ================================
   背景画像
   ================================ */

.para-1 {
  background-image: url("../img/LC250.jpg");
}

.para-2 {
  background-image: url("../img/LC70.jpg");
}

.para-3 {
  background-image: url("../img/triton.jpg");
}

/* para-4 は背景画像なし（黒系背景） */
.para-4 {
  background-color: #000;
}

/* ================================
   ヒーローエリア（para-1）
   ================================ */

.hero-panel {
  max-width: 960px;
  margin: 0 auto;
  text-align: center;
}

.hero-heading {
  font-family: 'Scooter_EFaster', sans-serif;
  font-size: 2.8rem;
  line-height: 1.2;
  text-align: center;
  margin-bottom: 1.2rem;
  font-weight: 700;
}

.hero-heading-sub {
  display: block;
  margin-top: 0.5rem;
  font-size: 1.4rem;
  font-weight: 400;
  opacity: 0.95;
  text-align: center;
}

.hero-body {
  max-width: 880px;
  margin: 1.8rem auto 0;
  font-size: 1rem;
  line-height: 1.9;
  text-align: center;
  opacity: 0.94;
}

/* 文字を際立たせるシャドウ（見出し・本文共通） */
.hero-heading,
.hero-heading-sub,
.hero-body {
  text-shadow:
    0 0 6px rgba(0,0,0,0.7),
    0 0 18px rgba(0,0,0,0.45);
}

/* 見出し強化 */
.hero-heading {
  font-weight: 800;
  letter-spacing: 0.02em;
}

/* サブ見出し強化 */
.hero-heading-sub {
  font-weight: 600;
  opacity: 1;
}

/* 本文の読みやすさUP */
.hero-body {
  opacity: 0.97;
  line-height: 1.95;
}

/* VIEW MORE ボタン共通 */
.cm-viewmore {
  margin-top: 2rem;
  text-align: center;
}

.cm-viewmore.cm-viewmore--left {
  text-align: left;
}

.cm-viewmore__btn {
  display: inline-block;
  padding: 1rem 3rem;
  border-radius: 9999px;
  border: 2px solid #fff;
  background: rgba(0, 0, 0, 0.35);
  color: #fff;
  text-decoration: none;
  font-family: 'Scooter_EFaster', sans-serif;
  font-size: 1.25rem;
  font-weight: 700;
  letter-spacing: 0.08em;

  backdrop-filter: blur(4px);
  box-shadow: 0 6px 18px rgba(0,0,0,0.3);
  transition: all 0.25s ease;
}

.cm-viewmore__btn:hover {
  background: #fff;
  color: #111;
  transform: translateY(-3px);
  box-shadow: 0 12px 30px rgba(0,0,0,0.45);
}

/* ▼ スクロールでふわっと出る共通クラス ▼ */
.reveal {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 1s ease, transform 1s ease;
}

/* 表示状態になったとき */
.reveal.is-show {
  opacity: 1;
  transform: translateY(0);
}

/* ============================================================
   SECTION FOUR（para-4）CROSSMEMBER LINE-UP
   ============================================================ */

.inner-section4 {
  max-width: 1100px;
  text-align: center;
}

/* タイトル装飾 */
.brand-title {
  display: inline-block;
  margin: 0 auto 2.5rem;
  padding: 0 2.5rem;
  text-align: center;
  position: relative;
  color: #fff;
}

/* 日本語メインタイトル */
.brand-title-main {
  display: block;
  font-size: 1.9rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

/* 英語サブタイトル */
.brand-title-sub {
  display: block;
  margin-top: 0.35rem;
  font-size: 0.85rem;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  opacity: 0.9;
}

/* ブランド説明文 */
.section4-lead {
  text-align: center;
  color: #ddd;
  font-size: 1rem;
  line-height: 1.9;
  margin-bottom: 2.5rem;
}

/* 白い背景を消して、透過＆文字白に */
.brand-section {
  background: transparent;
  box-shadow: none;
  color: #fff;
  text-align: center;
}

/* =========================
   ブランドロゴ（PC6個 / タブ3×2 / SP2×3）
   ※ Grid・calc・minmax 一切ナシ版
   ========================= */

.brand-logos {
  text-align: center;
  max-width: 1100px;
  margin: 0 auto;
  font-size: 0;              /* inline-blockのスキマ消し */
}

.brand-logos a {
  display: inline-block;
  vertical-align: top;
  width: 16.66%;             /* PCで6個横並び */
  max-width: 150px;
  padding: 0 8px 16px;
  box-sizing: border-box;
  font-size: 0;              /* 子要素間の余白防止 */
}

.brand-logos a img {
  width: 100%;
  height: auto;
  border-radius: 12px;
  display: block;
}

/* タブレット（600〜900px）：3列×2段 */
@media (max-width: 900px) {
  .brand-logos a {
    width: 33.33%;
    max-width: 170px;
  }
}

/* スマホ（〜600px）：2列×3段 */
@media (max-width: 600px) {
  .brand-logos a {
    width: 50%;
    max-width: 160px;
  }
}


/* ============================================================
   SECTION TWO（para-2）ONLINE SHOP カード
   ============================================================ */

.para-2 {
  padding: 80px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* 外側カード（白枠＋角丸） */
.para-2 .inner.inner-online {
  background: transparent;
  border: 3px solid rgba(255,255,255,0.9);
  border-radius: 22px;
  padding: 3rem 3rem;
  max-width: 1300px;
  width: 70%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 3rem;
  color: #fff;
  box-shadow: 0 0 28px rgba(0,0,0,0.45);
}

/* 左側：テキストエリア */
.para-2 .text-area {
  flex: 1.1;
}

/* 右側：画像エリア */
.para-2 .image-area {
  flex: 1;
  text-align: center;
}

.para-2 .image-area img {
  width: 100%;
  max-width: 520px;
  height: auto;
  display: block;
  margin: 0 auto;
  filter: drop-shadow(0 6px 20px rgba(0,0,0,0.4));
}

/* タイトル */
.para-2 .inner.inner-online h2 {
  font-size: 2.4rem;
  font-weight: 800;
  letter-spacing: 0.03em;
  margin-bottom: 1.8rem;
  text-align: left;
  font-family: 'Scooter_EFaster', sans-serif;
}

/* 本文 */
.para-2 .inner.inner-online p {
  font-size: 1rem;
  line-height: 1.85;
  margin-bottom: 1.2rem;
}

/* ============================================================
   白い枠の下：Amazon / 楽天 リンクエリア
   ============================================================ */

.para-2 .shop-links {
  margin-top: 1.5rem;
  max-width: 1300px;
  width: 70%;                 /* ← 白い枠と同じ幅 */
  display: flex;
  justify-content: space-between;
  gap: 1.5rem;
}

/* ボタン本体（aタグ） */
.para-2 .shop-link {
  flex: 1;
  background: #fff;
  border-radius: 18px;
  padding: 0.8rem 0.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 0 16px rgba(0,0,0,0.3);
  transition: 0.25s;
}

/* ホバーでちょっと浮く */
.para-2 .shop-link:hover {
  transform: translateY(-3px);
  box-shadow: 0 6px 20px rgba(0,0,0,0.35);
}

/* ロゴ画像：60%サイズに縮小 */
.para-2 .shop-link img {
  width: 40%;
  max-width: 40%;
  height: auto;
  display: block;
}

/* スマホ・タブレット */
@media screen and (max-width: 768px) {

  .para-2 .inner.inner-online,
  .para-2 .shop-links {
    width: 90%;
  }

  .para-2 .shop-link {
    padding: 0.6rem 0.4rem;
    border-radius: 16px;
  }

  .para-2 .shop-link img {
    width: 70%;
    max-width: 70%;
  }
}




/* ============================================================
   SECTION 3（para-3）：FOLLOW & CONNECT
   ============================================================ */

/* タイトル */
.section3-title {
  font-size: 2.4rem;
  font-weight: 700;
  text-align: center;
  color: #fff;
  margin-bottom: 0.5rem;
  letter-spacing: 0.08em;
}

.section3-sub {
  text-align: center;
  color: #ddd;
  font-size: 1.1rem;
  margin-bottom: 2.2rem;
  letter-spacing: 0.04em;
}

/* ラッパー（.inner の中身レイアウト） */
.section3-wrapper {
  max-width: 1100px;
  width: 100%;
  margin: 0 auto;
  background: rgba(0,0,0,0.35);
  border-radius: 18px;
  padding: 2.5rem 2.5rem 2.2rem;
  box-shadow: 0 12px 32px rgba(0,0,0,0.6);
}

/* QR3つ + 会社情報 横並び（PCベース） */
.qr-four-flex {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 2.5rem;
  flex-wrap: nowrap;
}

/* 共通アイテム */
.qr-item {
  display: flex;
  justify-content: center;
}

/* QR画像 */
.qr-item img {
  width: 140px;
  max-width: 100%;
  box-shadow: 0 10px 22px rgba(0,0,0,0.45);
  display: block;
}

/* 会社情報（文字） */
.company-info {
  flex: 0 0 260px;
  color: #fff;
  font-size: 0.95rem;
  line-height: 1.7;
  text-shadow: 0 0 10px rgba(0,0,0,0.6);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.company-name {
  font-family: 'Scooter_EFaster', sans-serif;
  font-size: 1.5rem;
  margin-bottom: 0rem;
}

.company-address {
  font-size: 1.0rem;
  margin: 0;
}

.company-tel {
  font-size: 1.0rem;
  margin: 0;
}

/* =========================================
   タブレット向け（〜900px）
   ========================================= */
@media (max-width: 900px) {

  .para-2 .inner.inner-online {
    flex-direction: column;
    text-align: center;
    padding: 2rem 1.6rem;
    width: 90%;
  }

  .para-2 .inner.inner-online h2 {
    text-align: center;
  }

  .cm-viewmore.cm-viewmore--left {
    text-align: center;
  }

  .para-2 .image-area img {
    max-width: 400px;
  }

  .section3-wrapper {
    padding: 2.2rem 1.8rem 2rem;
  }

  .qr-four-flex {
    gap: 1.6rem;
    flex-wrap: wrap;
  }

  .qr-item img {
    width: 170px;
  }

  .company-info {
    flex: 0 0 100%;
    font-size: 0.9rem;
  }

  /* ブランドロゴ：タブレットは3列×2段 */
  .brand-logos a {
    flex: 0 0 calc(100% / 3);
    max-width: calc(100% / 3);
  }
}

/* =========================================
   スマホ（600px以下）
   → QR3つは横並び / 会社情報だけ下に落とす
   ========================================= */
@media (max-width: 600px) {

  .para-1 {
    min-height: 100vh;      /* フルスクリーン */
    padding: 4rem 1.5rem;   /* 左右の余白を少し細く */
  }

  .hero-heading {
    font-size: 1.9rem;
    line-height: 1.25;
  }

  .hero-heading-sub {
    font-size: 1rem;
  }

  .hero-body {
    font-size: 0.9rem;
    line-height: 1.8;
  }

  .section3-wrapper {
    padding: 2rem 1.2rem 1.8rem;
  }

  .qr-four-flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    column-gap: 0.6rem;
    row-gap: 1rem;
  }

  /* QR3つを上の1行に */
  .qr-four-flex .qr-item:nth-child(1),
  .qr-four-flex .qr-item:nth-child(2),
  .qr-four-flex .qr-item:nth-child(3) {
    order: 1;
    flex: 0 0 30%;
    justify-content: center;
  }

  .qr-four-flex .qr-item:nth-child(1) img,
  .qr-four-flex .qr-item:nth-child(2) img,
  .qr-four-flex .qr-item:nth-child(3) img {
    width: 26vw;
    max-width: 110px;
  }

  /* 会社情報だけ下に */
  .qr-four-flex .company-info {
    order: 2;
    flex: 0 0 100%;
    width: 100%;
    text-align: center;
    margin-top: 0.8rem;
    font-size: 0.9rem;
  }

  .company-name {
    font-size: 1.3rem;
    margin-bottom: 0.5rem;
  }

  .brand-title {
    padding: 0 1.5rem;
  }

  .brand-title-main {
    font-size: 1.4rem;
  }

  .brand-title-sub {
    font-size: 0.75rem;
    letter-spacing: 0.18em;
  }

  /* ブランドロゴ：スマホは2列×3段 */
  .brand-logos a {
    flex: 0 0 calc(100% / 2);
    max-width: calc(100% / 2);
  }

  .brand-logos a img {
    max-width: 140px;
  }
}

/* =====================================
   タブレット以下：縦長画像に差し替え
   =====================================*/
@media (max-width: 1024px) {

  /* ★ para-1〜3 をスマホ/タブ用画像に差し替え */
  .para-1 {
    background-image: url("../img/LC250_vertical.JPG");
    background-position: center top;
    background-attachment: scroll;     /* iOS対策：fixedは使わない */
  }
  .para-2 {
    background-image: url("../img/LC70_vertical.JPG");
    background-position: center top;
    background-attachment: scroll;
  }
  .para-3 {
    background-image: url("../img/triton_vertical.JPG");
    background-position: center top;
    background-attachment: scroll;
  }

  /* テキストが画面中央すぎて車が隠れる場合は、好みで調整 */
  .hero-panel {
    margin-top: 20vh;
  }
}





/* ============================================================
   CROSSMEMBER 共通 VIEW MORE ボタン
   ============================================================ */

/* ボタンを中央に置くコンテナ */
.cm-viewmore {
  width: 100%;
  text-align: center;
  margin-top: 2.5rem;
  margin-bottom: 0;       /* 余白は好みで */
  position: relative;
  z-index: 5;
}

/* ボタン本体 */
.cm-viewmore__btn {
  position: static !important;      /* 右端固定などの古い設定をリセット */
  right: auto !important;
  bottom: auto !important;

  display: inline-block;
  padding: 0.9rem 3rem;
  border-radius: 9999px;
  border: 2px solid #fff;
  background: rgba(0, 0, 0, 0.35);
  color: #fff;
  text-decoration: none;

  font-family: 'Scooter_EFaster', sans-serif;
  font-size: 1.1rem;
  font-weight: 700;
  letter-spacing: 0.08em;

  backdrop-filter: blur(4px);
  box-shadow: 0 6px 18px rgba(0,0,0,0.3);
  transition: all 0.25s ease;
}

/* ホバー時：白反転＋少し浮かせる */
.cm-viewmore__btn:hover {
  background: #fff;
  color: #111;
  box-shadow: 0 10px 26px rgba(0,0,0,0.45);
  transform: translateY(-3px);
}

/* スマホ用にちょっとだけ小さく */
@media (max-width: 600px) {
  .cm-viewmore__btn {
    padding: 0.7rem 2.4rem;
    font-size: 1rem;
  }
}

/* ============================================================
   SECTION FOUR（para-4） : 黒背景パララックス
   ============================================================ */

/* 黒いフルスクリーンセクション */
.para-4 {
  background-color: #000;
  background-image: none;          /* 画像なしで真っ黒 */
}

/* 黒背景なのでオーバーレイは不要 */
.para-4::before {
  background: none;
}

/* 中身のカード */
.inner.inner-section4 {
  max-width: 1100px;
  width: 100%;
  padding: 3rem 3rem 3.5rem;
  background: radial-gradient(circle at top, rgba(255,255,255,0.08), rgba(0,0,0,0.9));
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,0.2);
  box-shadow: 0 0 32px rgba(0,0,0,0.8);
  text-align: center;
  color: #fff;
}

/* 見出し */
.section4-heading {
  font-size: 2.6rem;
  letter-spacing: 0.12em;
  font-weight: 800;
  margin: 0 0 0.5rem;
}

/* サブタイトル */
.section4-sub {
  font-size: 0.95rem;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  opacity: 0.8;
  margin-bottom: 1.8rem;
}

/* リード文 */
.section4-lead {
  max-width: 800px;
  margin: 0 auto 2.2rem;
  line-height: 1.9;
  font-size: 0.98rem;
}

/* 3カラムの説明ボックス */
.section4-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.8rem;
  margin-bottom: 2.5rem;
}

.section4-item {
  background: rgba(0,0,0,0.55);
  border-radius: 16px;
  padding: 1.5rem 1.4rem;
  border: 1px solid rgba(255,255,255,0.12);
  box-shadow: 0 10px 25px rgba(0,0,0,0.7);
}

.section4-item h3 {
  font-size: 1.05rem;
  margin-bottom: 0.6rem;
  letter-spacing: 0.03em;
}

.section4-item p {
  font-size: 0.9rem;
  line-height: 1.7;
  opacity: 0.95;
}

/* VIEW MORE を中央寄せで使うバージョン */
.cm-viewmore.cm-viewmore--center {
  text-align: center;
}

/* 既存の cm-viewmore__btn をそのまま使う想定。
   もしまだ定義がなければ、前に渡したものを使ってね。 */

/* ================================
   PRODUCT 見出し（取り扱いブランドと同じデザイン）
   ================================ */
.section-brand-title {
  font-size: 3.5rem;
  font-weight: 700;
  color: #fff;
  text-align: center;
  margin: 0;
  padding-top: 40px;
  font-family: 'Scooter_EFaster', sans-serif;
  text-shadow: 0 0 10px rgba(0,0,0,0.6);
  letter-spacing: 0.05em;
  position: relative;
}

/* 下の英語タイトル */
.section-brand-sub {
  font-size: 1.4rem;
  font-weight: 500;
  text-align: center;
  color: #fff;
  margin-top: 12px;
  margin-bottom: 40px;
  letter-spacing: 0.12em;
  text-shadow: 0 0 8px rgba(0,0,0,0.6);
  position: relative;
}

/* 横線（左右の線） */
.section-brand-title::before,
.section-brand-title::after {
  content: "";
  width: 120px;
  height: 3px;
  background: #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.section-brand-title::before {
  left: calc(50% - 290px);
}

.section-brand-title::after {
  right: calc(50% - 290px);
}

/* レスポンシブ：スマホ調整 */
@media (max-width: 768px) {
  .section-brand-title {
    font-size: 2.4rem;
  }

  .section-brand-sub {
    font-size: 1.1rem;
  }

  .section-brand-title::before,
  .section-brand-title::after {
    width: 70px;
  }

  .section-brand-title::before {
    left: calc(50% - 180px);
  }

  .section-brand-title::after {
    right: calc(50% - 180px);
  }
}

/* ------------------------------------------------------------
   レスポンシブ（縦並び）
   ------------------------------------------------------------ */
@media (max-width: 900px) {
  .inner.inner-section4 {
    padding: 2.2rem 1.6rem 2.6rem;
  }

  .section4-heading {
    font-size: 2rem;
  }

  .section4-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 600px) {
  .inner.inner-section4 {
    padding: 2rem 1.2rem 2.4rem;
  }

  .section4-heading {
    font-size: 1.7rem;
  }
}


/*----------------------------------------
	Material Colors
----------------------------------------*/

.color-red-50 {
	color: #ffebee;
}

.bgColor-red-50 {
	background-color: #ffebee;
}

.color-red-100 {
	color: #ffcdd2;
}

.bgColor-red-100 {
	background-color: #ffcdd2;
}

.color-red-200 {
	color: #ef9a9a;
}

.bgColor-red-200 {
	background-color: #ef9a9a;
}

.color-red-300 {
	color: #e57373;
}

.bgColor-red-300 {
	background-color: #e57373;
}

.color-red-400 {
	color: #ef5350;
}

.bgColor-red-400 {
	background-color: #ef5350;
}

.color-red-500 {
	color: #f44336;
}

.bgColor-red-500 {
	background-color: #f44336;
}

.color-red-600 {
	color: #e53935;
}

.bgColor-red-600 {
	background-color: #e53935;
}

.color-red-700 {
	color: #d32f2f;
}

.bgColor-red-700 {
	background-color: #d32f2f;
}

.color-red-800 {
	color: #c62828;
}

.bgColor-red-800 {
	background-color: #c62828;
}

.color-red-900 {
	color: #b71c1c;
}

.bgColor-red-900 {
	background-color: #b71c1c;
}

.color-red-a100 {
	color: #ff8a80;
}

.bgColor-red-a100 {
	background-color: #ff8a80;
}

.color-red-a200 {
	color: #ff5252;
}

.bgColor-red-a200 {
	background-color: #ff5252;
}

.color-red-a400 {
	color: #ff1744;
}

.bgColor-red-a400 {
	background-color: #ff1744;
}

.color-red-a700 {
	color: #d50000;
}

.bgColor-red-a700 {
	background-color: #d50000;
}

.color-pink-50 {
	color: #fce4ec;
}

.bgColor-pink-50 {
	background-color: #fce4ec;
}

.color-pink-100 {
	color: #f8bbd0;
}

.bgColor-pink-100 {
	background-color: #f8bbd0;
}

.color-pink-200 {
	color: #f48fb1;
}

.bgColor-pink-200 {
	background-color: #f48fb1;
}

.color-pink-300 {
	color: #f06292;
}

.bgColor-pink-300 {
	background-color: #f06292;
}

.color-pink-400 {
	color: #ec407a;
}

.bgColor-pink-400 {
	background-color: #ec407a;
}

.color-pink-500 {
	color: #e91e63;
}

.bgColor-pink-500 {
	background-color: #e91e63;
}

.color-pink-600 {
	color: #d81b60;
}

.bgColor-pink-600 {
	background-color: #d81b60;
}

.color-pink-700 {
	color: #c2185b;
}

.bgColor-pink-700 {
	background-color: #c2185b;
}

.color-pink-800 {
	color: #ad1457;
}

.bgColor-pink-800 {
	background-color: #ad1457;
}

.color-pink-900 {
	color: #880e4f;
}

.bgColor-pink-900 {
	background-color: #880e4f;
}

.color-pink-a100 {
	color: #ff80ab;
}

.bgColor-pink-a100 {
	background-color: #ff80ab;
}

.color-pink-a200 {
	color: #ff4081;
}

.bgColor-pink-a200 {
	background-color: #ff4081;
}

.color-pink-a400 {
	color: #f50057;
}

.bgColor-pink-a400 {
	background-color: #f50057;
}

.color-pink-a700 {
	color: #c51162;
}

.bgColor-pink-a700 {
	background-color: #c51162;
}

.color-purple-50 {
	color: #f3e5f5;
}

.bgColor-purple-50 {
	background-color: #f3e5f5;
}

.color-purple-100 {
	color: #e1bee7;
}

.bgColor-purple-100 {
	background-color: #e1bee7;
}

.color-purple-200 {
	color: #ce93d8;
}

.bgColor-purple-200 {
	background-color: #ce93d8;
}

.color-purple-300 {
	color: #ba68c8;
}

.bgColor-purple-300 {
	background-color: #ba68c8;
}

.color-purple-400 {
	color: #ab47bc;
}

.bgColor-purple-400 {
	background-color: #ab47bc;
}

.color-purple-500 {
	color: #9c27b0;
}

.bgColor-purple-500 {
	background-color: #9c27b0;
}

.color-purple-600 {
	color: #8e24aa;
}

.bgColor-purple-600 {
	background-color: #8e24aa;
}

.color-purple-700 {
	color: #7b1fa2;
}

.bgColor-purple-700 {
	background-color: #7b1fa2;
}

.color-purple-800 {
	color: #6a1b9a;
}

.bgColor-purple-800 {
	background-color: #6a1b9a;
}

.color-purple-900 {
	color: #4a148c;
}

.bgColor-purple-900 {
	background-color: #4a148c;
}

.color-purple-a100 {
	color: #ea80fc;
}

.bgColor-purple-a100 {
	background-color: #ea80fc;
}

.color-purple-a200 {
	color: #e040fb;
}

.bgColor-purple-a200 {
	background-color: #e040fb;
}

.color-purple-a400 {
	color: #d500f9;
}

.bgColor-purple-a400 {
	background-color: #d500f9;
}

.color-purple-a700 {
	color: #aa00ff;
}

.bgColor-purple-a700 {
	background-color: #aa00ff;
}

.color-deep-purple-50 {
	color: #ede7f6;
}

.bgColor-deep-purple-50 {
	background-color: #ede7f6;
}

.color-deep-purple-100 {
	color: #d1c4e9;
}

.bgColor-deep-purple-100 {
	background-color: #d1c4e9;
}

.color-deep-purple-200 {
	color: #b39ddb;
}

.bgColor-deep-purple-200 {
	background-color: #b39ddb;
}

.color-deep-purple-300 {
	color: #9575cd;
}

.bgColor-deep-purple-300 {
	background-color: #9575cd;
}

.color-deep-purple-400 {
	color: #7e57c2;
}

.bgColor-deep-purple-400 {
	background-color: #7e57c2;
}

.color-deep-purple-500 {
	color: #673ab7;
}

.bgColor-deep-purple-500 {
	background-color: #673ab7;
}

.color-deep-purple-600 {
	color: #5e35b1;
}

.bgColor-deep-purple-600 {
	background-color: #5e35b1;
}

.color-deep-purple-700 {
	color: #512da8;
}

.bgColor-deep-purple-700 {
	background-color: #512da8;
}

.color-deep-purple-800 {
	color: #4527a0;
}

.bgColor-deep-purple-800 {
	background-color: #4527a0;
}

.color-deep-purple-900 {
	color: #311b92;
}

.bgColor-deep-purple-900 {
	background-color: #311b92;
}

.color-deep-purple-a100 {
	color: #b388ff;
}

.bgColor-deep-purple-a100 {
	background-color: #b388ff;
}

.color-deep-purple-a200 {
	color: #7c4dff;
}

.bgColor-deep-purple-a200 {
	background-color: #7c4dff;
}

.color-deep-purple-a400 {
	color: #651fff;
}

.bgColor-deep-purple-a400 {
	background-color: #651fff;
}

.color-deep-purple-a700 {
	color: #6200ea;
}

.bgColor-deep-purple-a700 {
	background-color: #6200ea;
}

.color-indigo-50 {
	color: #e8eaf6;
}

.bgColor-indigo-50 {
	background-color: #e8eaf6;
}

.color-indigo-100 {
	color: #c5cae9;
}

.bgColor-indigo-100 {
	background-color: #c5cae9;
}

.color-indigo-200 {
	color: #9fa8da;
}

.bgColor-indigo-200 {
	background-color: #9fa8da;
}

.color-indigo-300 {
	color: #7986cb;
}

.bgColor-indigo-300 {
	background-color: #7986cb;
}

.color-indigo-400 {
	color: #5c6bc0;
}

.bgColor-indigo-400 {
	background-color: #5c6bc0;
}

.color-indigo-500 {
	color: #3f51b5;
}

.bgColor-indigo-500 {
	background-color: #3f51b5;
}

.color-indigo-600 {
	color: #3949ab;
}

.bgColor-indigo-600 {
	background-color: #3949ab;
}

.color-indigo-700 {
	color: #303f9f;
}

.bgColor-indigo-700 {
	background-color: #303f9f;
}

.color-indigo-800 {
	color: #283593;
}

.bgColor-indigo-800 {
	background-color: #283593;
}

.color-indigo-900 {
	color: #1a237e;
}

.bgColor-indigo-900 {
	background-color: #1a237e;
}

.color-indigo-a100 {
	color: #8c9eff;
}

.bgColor-indigo-a100 {
	background-color: #8c9eff;
}

.color-indigo-a200 {
	color: #536dfe;
}

.bgColor-indigo-a200 {
	background-color: #536dfe;
}

.color-indigo-a400 {
	color: #3d5afe;
}

.bgColor-indigo-a400 {
	background-color: #3d5afe;
}

.color-indigo-a700 {
	color: #304ffe;
}

.bgColor-indigo-a700 {
	background-color: #304ffe;
}

.color-blue-50 {
	color: #e3f2fd;
}

.bgColor-blue-50 {
	background-color: #e3f2fd;
}

.color-blue-100 {
	color: #bbdefb;
}

.bgColor-blue-100 {
	background-color: #bbdefb;
}

.color-blue-200 {
	color: #90caf9;
}

.bgColor-blue-200 {
	background-color: #90caf9;
}

.color-blue-300 {
	color: #64b5f6;
}

.bgColor-blue-300 {
	background-color: #64b5f6;
}

.color-blue-400 {
	color: #42a5f5;
}

.bgColor-blue-400 {
	background-color: #42a5f5;
}

.color-blue-500 {
	color: #2196f3;
}

.bgColor-blue-500 {
	background-color: #2196f3;
}

.color-blue-600 {
	color: #1e88e5;
}

.bgColor-blue-600 {
	background-color: #1e88e5;
}

.color-blue-700 {
	color: #1976d2;
}

.bgColor-blue-700 {
	background-color: #1976d2;
}

.color-blue-800 {
	color: #1565c0;
}

.bgColor-blue-800 {
	background-color: #1565c0;
}

.color-blue-900 {
	color: #0d47a1;
}

.bgColor-blue-900 {
	background-color: #0d47a1;
}

.color-blue-a100 {
	color: #82b1ff;
}

.bgColor-blue-a100 {
	background-color: #82b1ff;
}

.color-blue-a200 {
	color: #448aff;
}

.bgColor-blue-a200 {
	background-color: #448aff;
}

.color-blue-a400 {
	color: #2979ff;
}

.bgColor-blue-a400 {
	background-color: #2979ff;
}

.color-blue-a700 {
	color: #2962ff;
}

.bgColor-blue-a700 {
	background-color: #2962ff;
}

.color-light-blue-50 {
	color: #e1f5fe;
}

.bgColor-light-blue-50 {
	background-color: #e1f5fe;
}

.color-light-blue-100 {
	color: #b3e5fc;
}

.bgColor-light-blue-100 {
	background-color: #b3e5fc;
}

.color-light-blue-200 {
	color: #81d4fa;
}

.bgColor-light-blue-200 {
	background-color: #81d4fa;
}

.color-light-blue-300 {
	color: #4fc3f7;
}

.bgColor-light-blue-300 {
	background-color: #4fc3f7;
}

.color-light-blue-400 {
	color: #29b6f6;
}

.bgColor-light-blue-400 {
	background-color: #29b6f6;
}

.color-light-blue-500 {
	color: #03a9f4;
}

.bgColor-light-blue-500 {
	background-color: #03a9f4;
}

.color-light-blue-600 {
	color: #039be5;
}

.bgColor-light-blue-600 {
	background-color: #039be5;
}

.color-light-blue-700 {
	color: #0288d1;
}

.bgColor-light-blue-700 {
	background-color: #0288d1;
}

.color-light-blue-800 {
	color: #0277bd;
}

.bgColor-light-blue-800 {
	background-color: #0277bd;
}

.color-light-blue-900 {
	color: #01579b;
}

.bgColor-light-blue-900 {
	background-color: #01579b;
}

.color-light-blue-a100 {
	color: #80d8ff;
}

.bgColor-light-blue-a100 {
	background-color: #80d8ff;
}

.color-light-blue-a200 {
	color: #40c4ff;
}

.bgColor-light-blue-a200 {
	background-color: #40c4ff;
}

.color-light-blue-a400 {
	color: #00b0ff;
}

.bgColor-light-blue-a400 {
	background-color: #00b0ff;
}

.color-light-blue-a700 {
	color: #0091ea;
}

.bgColor-light-blue-a700 {
	background-color: #0091ea;
}

.color-cyan-50 {
	color: #e0f7fa;
}

.bgColor-cyan-50 {
	background-color: #e0f7fa;
}

.color-cyan-100 {
	color: #b2ebf2;
}

.bgColor-cyan-100 {
	background-color: #b2ebf2;
}

.color-cyan-200 {
	color: #80deea;
}

.bgColor-cyan-200 {
	background-color: #80deea;
}

.color-cyan-300 {
	color: #4dd0e1;
}

.bgColor-cyan-300 {
	background-color: #4dd0e1;
}

.color-cyan-400 {
	color: #26c6da;
}

.bgColor-cyan-400 {
	background-color: #26c6da;
}

.color-cyan-500 {
	color: #00bcd4;
}

.bgColor-cyan-500 {
	background-color: #00bcd4;
}

.color-cyan-600 {
	color: #00acc1;
}

.bgColor-cyan-600 {
	background-color: #00acc1;
}

.color-cyan-700 {
	color: #0097a7;
}

.bgColor-cyan-700 {
	background-color: #0097a7;
}

.color-cyan-800 {
	color: #00838f;
}

.bgColor-cyan-800 {
	background-color: #00838f;
}

.color-cyan-900 {
	color: #006064;
}

.bgColor-cyan-900 {
	background-color: #006064;
}

.color-cyan-a100 {
	color: #84ffff;
}

.bgColor-cyan-a100 {
	background-color: #84ffff;
}

.color-cyan-a200 {
	color: #18ffff;
}

.bgColor-cyan-a200 {
	background-color: #18ffff;
}

.color-cyan-a400 {
	color: #00e5ff;
}

.bgColor-cyan-a400 {
	background-color: #00e5ff;
}

.color-cyan-a700 {
	color: #00b8d4;
}

.bgColor-cyan-a700 {
	background-color: #00b8d4;
}

.color-teal-50 {
	color: #e0f2f1;
}

.bgColor-teal-50 {
	background-color: #e0f2f1;
}

.color-teal-100 {
	color: #b2dfdb;
}

.bgColor-teal-100 {
	background-color: #b2dfdb;
}

.color-teal-200 {
	color: #80cbc4;
}

.bgColor-teal-200 {
	background-color: #80cbc4;
}

.color-teal-300 {
	color: #4db6ac;
}

.bgColor-teal-300 {
	background-color: #4db6ac;
}

.color-teal-400 {
	color: #26a69a;
}

.bgColor-teal-400 {
	background-color: #26a69a;
}

.color-teal-500 {
	color: #009688;
}

.bgColor-teal-500 {
	background-color: #009688;
}

.color-teal-600 {
	color: #00897b;
}

.bgColor-teal-600 {
	background-color: #00897b;
}

.color-teal-700 {
	color: #00796b;
}

.bgColor-teal-700 {
	background-color: #00796b;
}

.color-teal-800 {
	color: #00695c;
}

.bgColor-teal-800 {
	background-color: #00695c;
}

.color-teal-900 {
	color: #004d40;
}

.bgColor-teal-900 {
	background-color: #004d40;
}

.color-teal-a100 {
	color: #a7ffeb;
}

.bgColor-teal-a100 {
	background-color: #a7ffeb;
}

.color-teal-a200 {
	color: #64ffda;
}

.bgColor-teal-a200 {
	background-color: #64ffda;
}

.color-teal-a400 {
	color: #1de9b6;
}

.bgColor-teal-a400 {
	background-color: #1de9b6;
}

.color-teal-a700 {
	color: #00bfa5;
}

.bgColor-teal-a700 {
	background-color: #00bfa5;
}

.color-green-50 {
	color: #e8f5e9;
}

.bgColor-green-50 {
	background-color: #e8f5e9;
}

.color-green-100 {
	color: #c8e6c9;
}

.bgColor-green-100 {
	background-color: #c8e6c9;
}

.color-green-200 {
	color: #a5d6a7;
}

.bgColor-green-200 {
	background-color: #a5d6a7;
}

.color-green-300 {
	color: #81c784;
}

.bgColor-green-300 {
	background-color: #81c784;
}

.color-green-400 {
	color: #66bb6a;
}

.bgColor-green-400 {
	background-color: #66bb6a;
}

.color-green-500 {
	color: #4caf50;
}

.bgColor-green-500 {
	background-color: #4caf50;
}

.color-green-600 {
	color: #43a047;
}

.bgColor-green-600 {
	background-color: #43a047;
}

.color-green-700 {
	color: #388e3c;
}

.bgColor-green-700 {
	background-color: #388e3c;
}

.color-green-800 {
	color: #2e7d32;
}

.bgColor-green-800 {
	background-color: #2e7d32;
}

.color-green-900 {
	color: #1b5e20;
}

.bgColor-green-900 {
	background-color: #1b5e20;
}

.color-green-a100 {
	color: #b9f6ca;
}

.bgColor-green-a100 {
	background-color: #b9f6ca;
}

.color-green-a200 {
	color: #69f0ae;
}

.bgColor-green-a200 {
	background-color: #69f0ae;
}

.color-green-a400 {
	color: #00e676;
}

.bgColor-green-a400 {
	background-color: #00e676;
}

.color-green-a700 {
	color: #00c853;
}

.bgColor-green-a700 {
	background-color: #00c853;
}

.color-light-green-50 {
	color: #f1f8e9;
}

.bgColor-light-green-50 {
	background-color: #f1f8e9;
}

.color-light-green-100 {
	color: #dcedc8;
}

.bgColor-light-green-100 {
	background-color: #dcedc8;
}

.color-light-green-200 {
	color: #c5e1a5;
}

.bgColor-light-green-200 {
	background-color: #c5e1a5;
}

.color-light-green-300 {
	color: #aed581;
}

.bgColor-light-green-300 {
	background-color: #aed581;
}

.color-light-green-400 {
	color: #9ccc65;
}

.bgColor-light-green-400 {
	background-color: #9ccc65;
}

.color-light-green-500 {
	color: #8bc34a;
}

.bgColor-light-green-500 {
	background-color: #8bc34a;
}

.color-light-green-600 {
	color: #7cb342;
}

.bgColor-light-green-600 {
	background-color: #7cb342;
}

.color-light-green-700 {
	color: #689f38;
}

.bgColor-light-green-700 {
	background-color: #689f38;
}

.color-light-green-800 {
	color: #545454;
}

.bgColor-light-green-800 {
	background-color: #545454;
}

.color-light-green-900 {
	color: #33691e;
}

.bgColor-light-green-900 {
	background-color: #33691e;
}

.color-light-green-a100 {
	color: #ccff90;
}

.bgColor-light-green-a100 {
	background-color: #ccff90;
}

.color-light-green-a200 {
	color: #b2ff59;
}

.bgColor-light-green-a200 {
	background-color: #b2ff59;
}

.color-light-green-a400 {
	color: #76ff03;
}

.bgColor-light-green-a400 {
	background-color: #76ff03;
}

.color-light-green-a700 {
	color: #64dd17;
}

.bgColor-light-green-a700 {
	background-color: #64dd17;
}

.color-lime-50 {
	color: #f9fbe7;
}

.bgColor-lime-50 {
	background-color: #f9fbe7;
}

.color-lime-100 {
	color: #f0f4c3;
}

.bgColor-lime-100 {
	background-color: #f0f4c3;
}

.color-lime-200 {
	color: #e6ee9c;
}

.bgColor-lime-200 {
	background-color: #e6ee9c;
}

.color-lime-300 {
	color: #dce775;
}

.bgColor-lime-300 {
	background-color: #dce775;
}

.color-lime-400 {
	color: #d4e157;
}

.bgColor-lime-400 {
	background-color: #d4e157;
}

.color-lime-500 {
	color: #cddc39;
}

.bgColor-lime-500 {
	background-color: #cddc39;
}

.color-lime-600 {
	color: #c0ca33;
}

.bgColor-lime-600 {
	background-color: #c0ca33;
}

.color-lime-700 {
	color: #afb42b;
}

.bgColor-lime-700 {
	background-color: #afb42b;
}

.color-lime-800 {
	color: #9e9d24;
}

.bgColor-lime-800 {
	background-color: #9e9d24;
}

.color-lime-900 {
	color: #827717;
}

.bgColor-lime-900 {
	background-color: #827717;
}

.color-lime-a100 {
	color: #f4ff81;
}

.bgColor-lime-a100 {
	background-color: #f4ff81;
}

.color-lime-a200 {
	color: #eeff41;
}

.bgColor-lime-a200 {
	background-color: #eeff41;
}

.color-lime-a400 {
	color: #c6ff00;
}

.bgColor-lime-a400 {
	background-color: #c6ff00;
}

.color-lime-a700 {
	color: #aeea00;
}

.bgColor-lime-a700 {
	background-color: #aeea00;
}

.color-yellow-50 {
	color: #fffde7;
}

.bgColor-yellow-50 {
	background-color: #fffde7;
}

.color-yellow-100 {
	color: #fff9c4;
}

.bgColor-yellow-100 {
	background-color: #fff9c4;
}

.color-yellow-200 {
	color: #fff59d;
}

.bgColor-yellow-200 {
	background-color: #fff59d;
}

.color-yellow-300 {
	color: #fff176;
}

.bgColor-yellow-300 {
	background-color: #fff176;
}

.color-yellow-400 {
	color: #ffee58;
}

.bgColor-yellow-400 {
	background-color: #ffee58;
}

.color-yellow-500 {
	color: #ffeb3b;
}

.bgColor-yellow-500 {
	background-color: #ffeb3b;
}

.color-yellow-600 {
	color: #fdd835;
}

.bgColor-yellow-600 {
	background-color: #fdd835;
}

.color-yellow-700 {
	color: #fbc02d;
}

.bgColor-yellow-700 {
	background-color: #fbc02d;
}

.color-yellow-800 {
	color: #f9a825;
}

.bgColor-yellow-800 {
	background-color: #f9a825;
}

.color-yellow-900 {
	color: #f57f17;
}

.bgColor-yellow-900 {
	background-color: #f57f17;
}

.color-yellow-a100 {
	color: #ffff8d;
}

.bgColor-yellow-a100 {
	background-color: #ffff8d;
}

.color-yellow-a200 {
	color: #ffff00;
}

.bgColor-yellow-a200 {
	background-color: #ffff00;
}

.color-yellow-a400 {
	color: #ffea00;
}

.bgColor-yellow-a400 {
	background-color: #ffea00;
}

.color-yellow-a700 {
	color: #ffd600;
}

.bgColor-yellow-a700 {
	background-color: #ffd600;
}

.color-amber-50 {
	color: #fff8e1;
}

.bgColor-amber-50 {
	background-color: #fff8e1;
}

.color-amber-100 {
	color: #ffecb3;
}

.bgColor-amber-100 {
	background-color: #ffecb3;
}

.color-amber-200 {
	color: #ffe082;
}

.bgColor-amber-200 {
	background-color: #ffe082;
}

.color-amber-300 {
	color: #ffd54f;
}

.bgColor-amber-300 {
	background-color: #ffd54f;
}

.color-amber-400 {
	color: #ffca28;
}

.bgColor-amber-400 {
	background-color: #ffca28;
}

.color-amber-500 {
	color: #ffc107;
}

.bgColor-amber-500 {
	background-color: #ffc107;
}

.color-amber-600 {
	color: #ffb300;
}

.bgColor-amber-600 {
	background-color: #ffb300;
}

.color-amber-700 {
	color: #ffa000;
}

.bgColor-amber-700 {
	background-color: #ffa000;
}

.color-amber-800 {
	color: #ff8f00;
}

.bgColor-amber-800 {
	background-color: #ff8f00;
}

.color-amber-900 {
	color: #ff6f00;
}

.bgColor-amber-900 {
	background-color: #ff6f00;
}

.color-amber-a100 {
	color: #ffe57f;
}

.bgColor-amber-a100 {
	background-color: #ffe57f;
}

.color-amber-a200 {
	color: #ffd740;
}

.bgColor-amber-a200 {
	background-color: #ffd740;
}

.color-amber-a400 {
	color: #ffc400;
}

.bgColor-amber-a400 {
	background-color: #ffc400;
}

.color-amber-a700 {
	color: #ffab00;
}

.bgColor-amber-a700 {
	background-color: #ffab00;
}

.color-orange-50 {
	color: #fff3e0;
}

.bgColor-orange-50 {
	background-color: #fff3e0;
}

.color-orange-100 {
	color: #ffe0b2;
}

.bgColor-orange-100 {
	background-color: #ffe0b2;
}

.color-orange-200 {
	color: #ffcc80;
}

.bgColor-orange-200 {
	background-color: #ffcc80;
}

.color-orange-300 {
	color: #ffb74d;
}

.bgColor-orange-300 {
	background-color: #ffb74d;
}

.color-orange-400 {
	color: #ffa726;
}

.bgColor-orange-400 {
	background-color: #ffa726;
}

.color-orange-500 {
	color: #ff9800;
}

.bgColor-orange-500 {
	background-color: #ff9800;
}

.color-orange-600 {
	color: #fb8c00;
}

.bgColor-orange-600 {
	background-color: #fb8c00;
}

.color-orange-700 {
	color: #f57c00;
}

.bgColor-orange-700 {
	background-color: #f57c00;
}

.color-orange-800 {
	color: #ef6c00;
}

.bgColor-orange-800 {
	background-color: #ef6c00;
}

.color-orange-900 {
	color: #e65100;
}

.bgColor-orange-900 {
	background-color: #e65100;
}

.color-orange-a100 {
	color: #ffd180;
}

.bgColor-orange-a100 {
	background-color: #ffd180;
}

.color-orange-a200 {
	color: #ffab40;
}

.bgColor-orange-a200 {
	background-color: #ffab40;
}

.color-orange-a400 {
	color: #ff9100;
}

.bgColor-orange-a400 {
	background-color: #ff9100;
}

.color-orange-a700 {
	color: #ff6d00;
}

.bgColor-orange-a700 {
	background-color: #ff6d00;
}

.color-deep-orange-50 {
	color: #fbe9e7;
}

.bgColor-deep-orange-50 {
	background-color: #fbe9e7;
}

.color-deep-orange-100 {
	color: #ffccbc;
}

.bgColor-deep-orange-100 {
	background-color: #ffccbc;
}

.color-deep-orange-200 {
	color: #ffab91;
}

.bgColor-deep-orange-200 {
	background-color: #ffab91;
}

.color-deep-orange-300 {
	color: #ff8a65;
}

.bgColor-deep-orange-300 {
	background-color: #ff8a65;
}

.color-deep-orange-400 {
	color: #ff7043;
}

.bgColor-deep-orange-400 {
	background-color: #ff7043;
}

.color-deep-orange-500 {
	color: #ff5722;
}

.bgColor-deep-orange-500 {
	background-color: #ff5722;
}

.color-deep-orange-600 {
	color: #f4511e;
}

.bgColor-deep-orange-600 {
	background-color: #f4511e;
}

.color-deep-orange-700 {
	color: #e64a19;
}

.bgColor-deep-orange-700 {
	background-color: #e64a19;
}

.color-deep-orange-800 {
	color: #d84315;
}

.bgColor-deep-orange-800 {
	background-color: #d84315;
}

.color-deep-orange-900 {
	color: #bf360c;
}

.bgColor-deep-orange-900 {
	background-color: #bf360c;
}

.color-deep-orange-a100 {
	color: #ff9e80;
}

.bgColor-deep-orange-a100 {
	background-color: #ff9e80;
}

.color-deep-orange-a200 {
	color: #ff6e40;
}

.bgColor-deep-orange-a200 {
	background-color: #ff6e40;
}

.color-deep-orange-a400 {
	color: #ff3d00;
}

.bgColor-deep-orange-a400 {
	background-color: #ff3d00;
}

.color-deep-orange-a700 {
	color: #dd2c00;
}

.bgColor-deep-orange-a700 {
	background-color: #dd2c00;
}

.color-brown-50 {
	color: #efebe9;
}

.bgColor-brown-50 {
	background-color: #efebe9;
}

.color-brown-100 {
	color: #d7ccc8;
}

.bgColor-brown-100 {
	background-color: #d7ccc8;
}

.color-brown-200 {
	color: #bcaaa4;
}

.bgColor-brown-200 {
	background-color: #bcaaa4;
}

.color-brown-300 {
	color: #a1887f;
}

.bgColor-brown-300 {
	background-color: #a1887f;
}

.color-brown-400 {
	color: #8d6e63;
}

.bgColor-brown-400 {
	background-color: #8d6e63;
}

.color-brown-500 {
	color: #795548;
}

.bgColor-brown-500 {
	background-color: #795548;
}

.color-brown-600 {
	color: #6d4c41;
}

.bgColor-brown-600 {
	background-color: #6d4c41;
}

.color-brown-700 {
	color: #5d4037;
}

.bgColor-brown-700 {
	background-color: #5d4037;
}

.color-brown-800 {
	color: #4e342e;
}

.bgColor-brown-800 {
	background-color: #4e342e;
}

.color-brown-900 {
	color: #3e2723;
}

.bgColor-brown-900 {
	background-color: #3e2723;
}

.color-grey-50 {
	color: #fafafa;
}

.bgColor-grey-50 {
	background-color: #fafafa;
}

.color-grey-100 {
	color: #f5f5f5;
}

.bgColor-grey-100 {
	background-color: #f5f5f5;
}

.color-grey-200 {
	color: #eeeeee;
}

.bgColor-grey-200 {
	background-color: #eeeeee;
}

.color-grey-300 {
	color: #e0e0e0;
}

.bgColor-grey-300 {
	background-color: #e0e0e0;
}

.color-grey-400 {
	color: #bdbdbd;
}

.bgColor-grey-400 {
	background-color: #bdbdbd;
}

.color-grey-500 {
	color: #9e9e9e;
}

.bgColor-grey-500 {
	background-color: #9e9e9e;
}

.color-grey-600 {
	color: #757575;
}

.bgColor-grey-600 {
	background-color: #757575;
}

.color-grey-700 {
	color: #616161;
}

.bgColor-grey-700 {
	background-color: #616161;
}

.color-grey-800 {
	color: #424242;
}

.bgColor-grey-800 {
	background-color: #424242;
}

.color-grey-900 {
	color: #212121;
}

.bgColor-grey-900 {
	background-color: #212121;
}

.color-blue-grey-50 {
	color: #eceff1;
}

.bgColor-blue-grey-50 {
	background-color: #eceff1;
}

.color-blue-grey-100 {
	color: #cfd8dc;
}

.bgColor-blue-grey-100 {
	background-color: #cfd8dc;
}

.color-blue-grey-200 {
	color: #b0bec5;
}

.bgColor-blue-grey-200 {
	background-color: #b0bec5;
}

.color-blue-grey-300 {
	color: #90a4ae;
}

.bgColor-blue-grey-300 {
	background-color: #90a4ae;
}

.color-blue-grey-400 {
	color: #78909c;
}

.bgColor-blue-grey-400 {
	background-color: #78909c;
}

.color-blue-grey-500 {
	color: #607d8b;
}

.bgColor-blue-grey-500 {
	background-color: #607d8b;
}

.color-blue-grey-600 {
	color: #546e7a;
}

.bgColor-blue-grey-600 {
	background-color: #546e7a;
}

.color-blue-grey-700 {
	color: #455a64;
}

.bgColor-blue-grey-700 {
	background-color: #455a64;
}

.color-blue-grey-800 {
	color: #37474f;
}

.bgColor-blue-grey-800 {
	background-color: #37474f;
}

.color-blue-grey-900 {
	color: #263238;
}

.bgColor-blue-grey-900 {
	background-color: #263238;
}

.color-white {
	color: #ffffff;
}

.bgColor-white {
	background: #ffffff;
}

.color-black {
	color: #000000;
}

.bgColor-black {
	background: #000000;
}

.fontNotoSans {
	font-family: "Noto Sans JP", "Noto Sans", sans-serif;
}

.fontNotoSerif {
	font-family: "Noto Serif Japanese", "Noto Serif", serif;
}

/*----------------------------------------
	Web Font Icon
----------------------------------------*/

@font-face {
	font-family: 'Material Icons';
	font-style: normal;
	font-weight: 400;
	src: local("Material Icons"), local("MaterialIcons-Regular"), url(https://fonts.gstatic.com/s/materialicons/v21/2fcrYFNaTjcS6g4U3t-Y5UEw0lE80llgEseQY3FEmqw.woff2) format("woff2");
}

.material-icons {
	font-family: 'Material Icons';
	font-weight: normal;
	font-style: normal;
	font-size: 24px;
	line-height: 1;
	letter-spacing: normal;
	text-transform: none;
	display: inline-block;
	white-space: nowrap;
	word-wrap: normal;
	direction: ltr;
	-moz-font-feature-settings: 'liga';
	-moz-osx-font-smoothing: grayscale;
	position: relative;
	top: .6rem;
}

.material-icons.md-18 {
	font-size: 18px;
}

.material-icons.md-24 {
	font-size: 24px;
}

.material-icons.md-36 {
	font-size: 36px;
}

.material-icons.md-48 {
	font-size: 48px;
}

.material-icons.md-dark {
	color: rgba(0, 0, 0, 0.54);
}

.material-icons.md-dark.md-inactive {
	color: rgba(0, 0, 0, 0.26);
}

.material-icons.md-light {
	color: white;
}

.material-icons.md-light.md-inactive {
	color: rgba(255, 255, 255, 0.3);
}

/*----------------------------------------
	clearfix
----------------------------------------*/

.contentsNavi:after,
.container:after,
.secArea:after,
.secArea .secContainer:after,
.secTop:after,
.entryArea .entryList:after,
.entryArea .entryListTitle .entryBody:after,
.metaArea:after,
.metaArea ul:after {
	content: "";
	clear: both;
	height: 0;
	display: block;
	visibility: hidden;
}

/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */

/* Document
========================================================================== */

/**
* 1. Correct the line height in all browsers.
* 2. Prevent adjustments of font size after orientation changes in iOS.
*/

html {
	line-height: 1.15; /* 1 */
	-webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
========================================================================== */

/**
* Remove the margin in all browsers.
*/

body {
	margin: 0;
}

/**
* Correct the font size and margin on `h1` elements within `section` and
* `article` contexts in Chrome, Firefox, and Safari.
*/

h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

/* Grouping content
========================================================================== */

/**
* 1. Add the correct box sizing in Firefox.
* 2. Show the overflow in Edge and IE.
*/

hr {
	box-sizing: content-box; /* 1 */
	height: 0; /* 1 */
	overflow: visible; /* 2 */
}

/**
* 1. Correct the inheritance and scaling of font size in all browsers.
* 2. Correct the odd `em` font sizing in all browsers.
*/

pre {
	font-family: monospace, monospace; /* 1 */
	font-size: 1em; /* 2 */
}

/* Text-level semantics
========================================================================== */

/**
* Remove the gray background on active links in IE 10.
*/

a {
	background-color: transparent;
}

/**
* 1. Remove the bottom border in Chrome 57-
* 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
*/

abbr[title] {
	border-bottom: none; /* 1 */
	text-decoration: underline; /* 2 */
	text-decoration: underline dotted; /* 2 */
}

/**
* Add the correct font weight in Chrome, Edge, and Safari.
*/

b,
strong {
	font-weight: bolder;
}

/**
* 1. Correct the inheritance and scaling of font size in all browsers.
* 2. Correct the odd `em` font sizing in all browsers.
*/

code,
kbd,
samp {
	font-family: monospace, monospace; /* 1 */
	font-size: 1em; /* 2 */
}

/**
* Add the correct font size in all browsers.
*/

small {
	font-size: 80%;
}

/**
* Prevent `sub` and `sup` elements from affecting the line height in
* all browsers.
*/

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
========================================================================== */

/**
* Remove the border on images inside links in IE 10.
*/

img {
	border-style: none;
}

/* Forms
========================================================================== */

/**
* 1. Change the font styles in all browsers.
* 2. Remove the margin in Firefox and Safari.
*/

button,
input,
optgroup,
select,
textarea {
	font-family: inherit; /* 1 */
	font-size: 100%; /* 1 */
	line-height: 1.15; /* 1 */
	margin: 0; /* 2 */
}

/**
* Show the overflow in IE.
* 1. Show the overflow in Edge.
*/

button,
input { /* 1 */
	overflow: visible;
}

/**
* Remove the inheritance of text transform in Edge, Firefox, and IE.
* 1. Remove the inheritance of text transform in Firefox.
*/

button,
select { /* 1 */
	text-transform: none;
}

/**
* Correct the inability to style clickable types in iOS and Safari.
*/

button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

/**
* Remove the inner border and padding in Firefox.
*/

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
* Restore the focus styles unset by the previous rule.
*/

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
* Correct the padding in Firefox.
*/

fieldset {
	padding: 0.35em 0.75em 0.625em;
}

/**
* 1. Correct the text wrapping in Edge and IE.
* 2. Correct the color inheritance from `fieldset` elements in IE.
* 3. Remove the padding so developers are not caught out when they zero out
*    `fieldset` elements in all browsers.
*/

legend {
	box-sizing: border-box; /* 1 */
	color: inherit; /* 2 */
	display: table; /* 1 */
	max-width: 100%; /* 1 */
	padding: 0; /* 3 */
	white-space: normal; /* 1 */
}

/**
* Add the correct vertical alignment in Chrome, Firefox, and Opera.
*/

progress {
	vertical-align: baseline;
}

/**
* Remove the default vertical scrollbar in IE 10+.
*/

textarea {
	overflow: auto;
}

/**
* 1. Add the correct box sizing in IE 10.
* 2. Remove the padding in IE 10.
*/

[type="checkbox"],
[type="radio"] {
	box-sizing: border-box; /* 1 */
	padding: 0; /* 2 */
}

/**
* Correct the cursor style of increment and decrement buttons in Chrome.
*/

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
* 1. Correct the odd appearance in Chrome and Safari.
* 2. Correct the outline style in Safari.
*/

[type="search"] {
	-webkit-appearance: textfield; /* 1 */
	outline-offset: -2px; /* 2 */
}

/**
* Remove the inner padding in Chrome and Safari on macOS.
*/

[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
* 1. Correct the inability to style clickable types in iOS and Safari.
* 2. Change font properties to `inherit` in Safari.
*/

::-webkit-file-upload-button {
	-webkit-appearance: button; /* 1 */
	font: inherit; /* 2 */
}

/* Interactive
========================================================================== */

/*
* Add the correct display in Edge, IE 10+, and Firefox.
*/

details {
	display: block;
}

/*
* Add the correct display in all browsers.
*/

summary {
	display: list-item;
}

/* Misc
========================================================================== */

/**
* Add the correct display in IE 10+.
*/

template {
	display: none;
}

/**
* Add the correct display in IE 10.
*/

[hidden] {
	display: none;
}

/* width */

.w530 {
	margin: 0;
	width: 530px;
}

.w1 {
	width: 1%;
}

.w2 {
	width: 2%;
}

.w3 {
	width: 3%;
}

.w4 {
	width: 4%;
}

.w5 {
	width: 5%;
}

.w6 {
	width: 6%;
}

.w7 {
	width: 7%;
}

.w8 {
	width: 8%;
}

.w9 {
	width: 9%;
}

.w10 {
	width: 10%;
}

.w11 {
	width: 11%;
}

.w12 {
	width: 12%;
}

.w13 {
	width: 13%;
}

.w14 {
	width: 14%;
}

.w15 {
	width: 15%;
}

.w16 {
	width: 16%;
}

.w17 {
	width: 17%;
}

.w18 {
	width: 18%;
}

.w19 {
	width: 19%;
}

.w20 {
	width: 20%;
}

.w21 {
	width: 21%;
}

.w22 {
	width: 22%;
}

.w23 {
	width: 23%;
}

.w24 {
	width: 24%;
}

.w25 {
	width: 25%;
}

.w26 {
	width: 26%;
}

.w27 {
	width: 27%;
}

.w28 {
	width: 28%;
}

.w29 {
	width: 29%;
}

.w30 {
	width: 30%;
}

.w31 {
	width: 31%;
}

.w32 {
	width: 32%;
}

.w33 {
	width: 33%;
}

.w34 {
	width: 34%;
}

.w35 {
	width: 35%;
}

.w36 {
	width: 36%;
}

.w37 {
	width: 37%;
}

.w38 {
	width: 38%;
}

.w39 {
	width: 39%;
}

.w40 {
	width: 40%;
}

.w41 {
	width: 41%;
}

.w42 {
	width: 42%;
}

.w43 {
	width: 43%;
}

.w44 {
	width: 44%;
}

.w45 {
	width: 45%;
}

.w46 {
	width: 46%;
}

.w47 {
	width: 47%;
}

.w48 {
	width: 48%;
}

.w49 {
	width: 49%;
}

.w50 {
	width: 50%;
}

.w55 {
	width: 55%;
}

.w60 {
	width: 60%;
}

.w65 {
	width: 65%;
}

.w70 {
	width: 70%;
}

.w75 {
	width: 75%;
}

.w80 {
	width: 80%;
}

.w85 {
	width: 85%;
}

.w90 {
	width: 90%;
}

.w95 {
	width: 95%;
}

.w100 {
	width: 100%;
}

/* align */

.aLeft {
	text-align: left !important;
}

.aRight {
	text-align: right !important;
}

.aCenter {
	text-align: center !important;
}

.vTop {
	vertical-align: top !important;
}

.vMiddle {
	vertical-align: middle !important;
}

.vBottom {
	vertical-align: bottom !important;
}

/* flex box */

.fb-row {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
}

.fb-row-justify-center {
	-webkit-justify-content: center;
	-moz-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	-ms-flex-pack: center;
}

.fb-row-justify-start {
	-webkit-justify-content: flex-start;
	-moz-justify-content: flex-start;
	-ms-justify-content: flex-start;
	justify-content: flex-start;
	-ms-flex-pack: flex-start;
}

.fb-row-justify-end {
	-webkit-justify-content: flex-end;
	-moz-justify-content: flex-end;
	-ms-justify-content: flex-end;
	justify-content: flex-end;
	-ms-flex-pack: flex-end;
}

.fb-row-align-center {
	-webkit-align-items: center;
	-moz-align-items: center;
	-ms-align-items: center;
	align-items: center;
}

.fb-row-align-start {
	-webkit-align-items: flex-start;
	-moz-align-items: flex-start;
	-ms-align-items: flex-start;
	align-items: flex-start;
}

.fb-row-align-end {
	-webkit-align-items: flex-end;
	-moz-align-items: flex-end;
	-ms-align-items: flex-end;
	align-items: flex-end;
}

.fb-column {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
}

.fb-column-justify-center {
	-webkit-justify-content: center;
	-moz-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	-ms-flex-pack: center;
}

.fb-column-justify-start {
	-webkit-justify-content: flex-start;
	-moz-justify-content: flex-start;
	-ms-justify-content: flex-start;
	justify-content: flex-start;
	-ms-flex-pack: flex-start;
}

.fb-column-justify-end {
	-webkit-justify-content: flex-end;
	-moz-justify-content: flex-end;
	-ms-justify-content: flex-end;
	justify-content: flex-end;
	-ms-flex-pack: flex-end;
}

.fb-column-align-center {
	-webkit-align-items: center;
	-moz-align-items: center;
	-ms-align-items: center;
	align-items: center;
}

.fb-column-align-start {
	-webkit-align-items: flex-start;
	-moz-align-items: flex-start;
	-ms-align-items: flex-start;
	align-items: flex-start;
}

.fb-column-align-end {
	-webkit-align-items: flex-end;
	-moz-align-items: flex-end;
	-ms-align-items: flex-end;
	align-items: flex-end;
}

/* float */

.fl {
	float: left;
}

.fr {
	float: right;
}

/* visivle style */

.fs10 {
	font-size: 10px;
	font-size: 0.625rem;
}

.fs10-100 {
	font-size: 10px;
	font-size: 0.625rem;
	font-weight: 100;
}

.fs10-300 {
	font-size: 10px;
	font-size: 0.625rem;
	font-weight: 300;
}

.fs10-350 {
	font-size: 10px;
	font-size: 0.625rem;
	font-weight: 350;
}

.fs10-400 {
	font-size: 10px;
	font-size: 0.625rem;
	font-weight: 400;
}

.fs10-500 {
	font-size: 10px;
	font-size: 0.625rem;
	font-weight: 500;
}

.fs10-700 {
	font-size: 10px;
	font-size: 0.625rem;
	font-weight: 700;
}

.fs10-900 {
	font-size: 10px;
	font-size: 0.625rem;
	font-weight: 900;
}

.fs11 {
	font-size: 11px;
	font-size: 0.6875rem;
}

.fs11-100 {
	font-size: 11px;
	font-size: 0.6875rem;
	font-weight: 100;
}

.fs11-300 {
	font-size: 11px;
	font-size: 0.6875rem;
	font-weight: 300;
}

.fs11-350 {
	font-size: 11px;
	font-size: 0.6875rem;
	font-weight: 350;
}

.fs11-400 {
	font-size: 11px;
	font-size: 0.6875rem;
	font-weight: 400;
}

.fs11-500 {
	font-size: 11px;
	font-size: 0.6875rem;
	font-weight: 500;
}

.fs11-700 {
	font-size: 11px;
	font-size: 0.6875rem;
	font-weight: 700;
}

.fs11-900 {
	font-size: 11px;
	font-size: 0.6875rem;
	font-weight: 900;
}

.fs12 {
	font-size: 12px;
	font-size: 0.75rem;
}

.fs12-100 {
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 100;
}

.fs12-300 {
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 300;
}

.fs12-350 {
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 350;
}

.fs12-400 {
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 400;
}

.fs12-500 {
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 500;
}

.fs12-700 {
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 700;
}

.fs12-900 {
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 900;
}

.fs13 {
	font-size: 13px;
	font-size: 0.8125rem;
}

.fs13-100 {
	font-size: 13px;
	font-size: 0.8125rem;
	font-weight: 100;
}

.fs13-300 {
	font-size: 13px;
	font-size: 0.8125rem;
	font-weight: 300;
}

.fs13-350 {
	font-size: 13px;
	font-size: 0.8125rem;
	font-weight: 350;
}

.fs13-400 {
	font-size: 13px;
	font-size: 0.8125rem;
	font-weight: 400;
}

.fs13-500 {
	font-size: 13px;
	font-size: 0.8125rem;
	font-weight: 500;
}

.fs13-700 {
	font-size: 13px;
	font-size: 0.8125rem;
	font-weight: 700;
}

.fs13-900 {
	font-size: 13px;
	font-size: 0.8125rem;
	font-weight: 900;
}

.fs14 {
	font-size: 14px;
	font-size: 0.875rem;
}

.fs14-100 {
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 100;
}

.fs14-300 {
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 300;
}

.fs14-350 {
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 350;
}

.fs14-400 {
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
}

.fs14-500 {
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 500;
}

.fs14-700 {
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
}

.fs14-900 {
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 900;
}

.fs15 {
	font-size: 15px;
	font-size: 0.9375rem;
}

.fs15-100 {
	font-size: 15px;
	font-size: 0.9375rem;
	font-weight: 100;
}

.fs15-300 {
	font-size: 15px;
	font-size: 0.9375rem;
	font-weight: 300;
}

.fs15-350 {
	font-size: 15px;
	font-size: 0.9375rem;
	font-weight: 350;
}

.fs15-400 {
	font-size: 15px;
	font-size: 0.9375rem;
	font-weight: 400;
}

.fs15-500 {
	font-size: 15px;
	font-size: 0.9375rem;
	font-weight: 500;
}

.fs15-700 {
	font-size: 15px;
	font-size: 0.9375rem;
	font-weight: 700;
}

.fs15-900 {
	font-size: 15px;
	font-size: 0.9375rem;
	font-weight: 900;
}

.fs16 {
	font-size: 16px;
	font-size: 1rem;
}

.fs16-100 {
	font-size: 16px;
	font-size: 1rem;
	font-weight: 100;
}

.fs16-300 {
	font-size: 16px;
	font-size: 1rem;
	font-weight: 300;
}

.fs16-350 {
	font-size: 16px;
	font-size: 1rem;
	font-weight: 350;
}

.fs16-400 {
	font-size: 16px;
	font-size: 1rem;
	font-weight: 400;
}

.fs16-500 {
	font-size: 16px;
	font-size: 1rem;
	font-weight: 500;
}

.fs16-700 {
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
}

.fs16-900 {
	font-size: 16px;
	font-size: 1rem;
	font-weight: 900;
}

.fs17 {
	font-size: 17px;
	font-size: 1.0625rem;
}

.fs17-100 {
	font-size: 17px;
	font-size: 1.0625rem;
	font-weight: 100;
}

.fs17-300 {
	font-size: 17px;
	font-size: 1.0625rem;
	font-weight: 300;
}

.fs17-350 {
	font-size: 17px;
	font-size: 1.0625rem;
	font-weight: 350;
}

.fs17-400 {
	font-size: 17px;
	font-size: 1.0625rem;
	font-weight: 400;
}

.fs17-500 {
	font-size: 17px;
	font-size: 1.0625rem;
	font-weight: 500;
}

.fs17-700 {
	font-size: 17px;
	font-size: 1.0625rem;
	font-weight: 700;
}

.fs17-900 {
	font-size: 17px;
	font-size: 1.0625rem;
	font-weight: 900;
}

.fs18 {
	font-size: 18px;
	font-size: 1.125rem;
}

.fs18-100 {
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 100;
}

.fs18-300 {
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 300;
}

.fs18-350 {
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 350;
}

.fs18-400 {
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 400;
}

.fs18-500 {
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 500;
}

.fs18-700 {
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
}

.fs18-900 {
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 900;
}

.fs19 {
	font-size: 19px;
	font-size: 1.1875rem;
}

.fs19-100 {
	font-size: 19px;
	font-size: 1.1875rem;
	font-weight: 100;
}

.fs19-300 {
	font-size: 19px;
	font-size: 1.1875rem;
	font-weight: 300;
}

.fs19-350 {
	font-size: 19px;
	font-size: 1.1875rem;
	font-weight: 350;
}

.fs19-400 {
	font-size: 19px;
	font-size: 1.1875rem;
	font-weight: 400;
}

.fs19-500 {
	font-size: 19px;
	font-size: 1.1875rem;
	font-weight: 500;
}

.fs19-700 {
	font-size: 19px;
	font-size: 1.1875rem;
	font-weight: 700;
}

.fs19-900 {
	font-size: 19px;
	font-size: 1.1875rem;
	font-weight: 900;
}

.fs20 {
	font-size: 20px;
	font-size: 1.25rem;
}

.fs20-100 {
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 100;
}

.fs20-300 {
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 300;
}

.fs20-350 {
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 350;
}

.fs20-400 {
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 400;
}

.fs20-500 {
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 500;
}

.fs20-700 {
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 700;
}

.fs20-900 {
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 900;
}

.fs21 {
	font-size: 21px;
	font-size: 1.3125rem;
}

.fs21-100 {
	font-size: 21px;
	font-size: 1.3125rem;
	font-weight: 100;
}

.fs21-300 {
	font-size: 21px;
	font-size: 1.3125rem;
	font-weight: 300;
}

.fs21-350 {
	font-size: 21px;
	font-size: 1.3125rem;
	font-weight: 350;
}

.fs21-400 {
	font-size: 21px;
	font-size: 1.3125rem;
	font-weight: 400;
}

.fs21-500 {
	font-size: 21px;
	font-size: 1.3125rem;
	font-weight: 500;
}

.fs21-700 {
	font-size: 21px;
	font-size: 1.3125rem;
	font-weight: 700;
}

.fs21-900 {
	font-size: 21px;
	font-size: 1.3125rem;
	font-weight: 900;
}

.fs22 {
	font-size: 22px;
	font-size: 1.375rem;
}

.fs22-100 {
	font-size: 22px;
	font-size: 1.375rem;
	font-weight: 100;
}

.fs22-300 {
	font-size: 22px;
	font-size: 1.375rem;
	font-weight: 300;
}

.fs22-350 {
	font-size: 22px;
	font-size: 1.375rem;
	font-weight: 350;
}

.fs22-400 {
	font-size: 22px;
	font-size: 1.375rem;
	font-weight: 400;
}

.fs22-500 {
	font-size: 22px;
	font-size: 1.375rem;
	font-weight: 500;
}

.fs22-700 {
	font-size: 22px;
	font-size: 1.375rem;
	font-weight: 700;
}

.fs22-900 {
	font-size: 22px;
	font-size: 1.375rem;
	font-weight: 900;
}

.fs23 {
	font-size: 23px;
	font-size: 1.4375rem;
}

.fs23-100 {
	font-size: 23px;
	font-size: 1.4375rem;
	font-weight: 100;
}

.fs23-300 {
	font-size: 23px;
	font-size: 1.4375rem;
	font-weight: 300;
}

.fs23-350 {
	font-size: 23px;
	font-size: 1.4375rem;
	font-weight: 350;
}

.fs23-400 {
	font-size: 23px;
	font-size: 1.4375rem;
	font-weight: 400;
}

.fs23-500 {
	font-size: 23px;
	font-size: 1.4375rem;
	font-weight: 500;
}

.fs23-700 {
	font-size: 23px;
	font-size: 1.4375rem;
	font-weight: 700;
}

.fs23-900 {
	font-size: 23px;
	font-size: 1.4375rem;
	font-weight: 900;
}

.fs24 {
	font-size: 24px;
	font-size: 1.5rem;
}

.fs24-100 {
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 100;
}

.fs24-300 {
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 300;
}

.fs24-350 {
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 350;
}

.fs24-400 {
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 400;
}

.fs24-500 {
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 500;
}

.fs24-700 {
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 700;
}

.fs24-900 {
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 900;
}

.fs25 {
	font-size: 25px;
	font-size: 1.5625rem;
}

.fs25-100 {
	font-size: 25px;
	font-size: 1.5625rem;
	font-weight: 100;
}

.fs25-300 {
	font-size: 25px;
	font-size: 1.5625rem;
	font-weight: 300;
}

.fs25-350 {
	font-size: 25px;
	font-size: 1.5625rem;
	font-weight: 350;
}

.fs25-400 {
	font-size: 25px;
	font-size: 1.5625rem;
	font-weight: 400;
}

.fs25-500 {
	font-size: 25px;
	font-size: 1.5625rem;
	font-weight: 500;
}

.fs25-700 {
	font-size: 25px;
	font-size: 1.5625rem;
	font-weight: 700;
}

.fs25-900 {
	font-size: 25px;
	font-size: 1.5625rem;
	font-weight: 900;
}

.fs26 {
	font-size: 26px;
	font-size: 1.625rem;
}

.fs26-100 {
	font-size: 26px;
	font-size: 1.625rem;
	font-weight: 100;
}

.fs26-300 {
	font-size: 26px;
	font-size: 1.625rem;
	font-weight: 300;
}

.fs26-350 {
	font-size: 26px;
	font-size: 1.625rem;
	font-weight: 350;
}

.fs26-400 {
	font-size: 26px;
	font-size: 1.625rem;
	font-weight: 400;
}

.fs26-500 {
	font-size: 26px;
	font-size: 1.625rem;
	font-weight: 500;
}

.fs26-700 {
	font-size: 26px;
	font-size: 1.625rem;
	font-weight: 700;
}

.fs26-900 {
	font-size: 26px;
	font-size: 1.625rem;
	font-weight: 900;
}

.fs27 {
	font-size: 27px;
	font-size: 1.6875rem;
}

.fs27-100 {
	font-size: 27px;
	font-size: 1.6875rem;
	font-weight: 100;
}

.fs27-300 {
	font-size: 27px;
	font-size: 1.6875rem;
	font-weight: 300;
}

.fs27-350 {
	font-size: 27px;
	font-size: 1.6875rem;
	font-weight: 350;
}

.fs27-400 {
	font-size: 27px;
	font-size: 1.6875rem;
	font-weight: 400;
}

.fs27-500 {
	font-size: 27px;
	font-size: 1.6875rem;
	font-weight: 500;
}

.fs27-700 {
	font-size: 27px;
	font-size: 1.6875rem;
	font-weight: 700;
}

.fs27-900 {
	font-size: 27px;
	font-size: 1.6875rem;
	font-weight: 900;
}

.fs28 {
	font-size: 28px;
	font-size: 1.75rem;
}

.fs28-100 {
	font-size: 28px;
	font-size: 1.75rem;
	font-weight: 100;
}

.fs28-300 {
	font-size: 28px;
	font-size: 1.75rem;
	font-weight: 300;
}

.fs28-350 {
	font-size: 28px;
	font-size: 1.75rem;
	font-weight: 350;
}

.fs28-400 {
	font-size: 28px;
	font-size: 1.75rem;
	font-weight: 400;
}

.fs28-500 {
	font-size: 28px;
	font-size: 1.75rem;
	font-weight: 500;
}

.fs28-700 {
	font-size: 28px;
	font-size: 1.75rem;
	font-weight: 700;
}

.fs28-900 {
	font-size: 28px;
	font-size: 1.75rem;
	font-weight: 900;
}

.fs29 {
	font-size: 29px;
	font-size: 1.8125rem;
}

.fs29-100 {
	font-size: 29px;
	font-size: 1.8125rem;
	font-weight: 100;
}

.fs29-300 {
	font-size: 29px;
	font-size: 1.8125rem;
	font-weight: 300;
}

.fs29-350 {
	font-size: 29px;
	font-size: 1.8125rem;
	font-weight: 350;
}

.fs29-400 {
	font-size: 29px;
	font-size: 1.8125rem;
	font-weight: 400;
}

.fs29-500 {
	font-size: 29px;
	font-size: 1.8125rem;
	font-weight: 500;
}

.fs29-700 {
	font-size: 29px;
	font-size: 1.8125rem;
	font-weight: 700;
}

.fs29-900 {
	font-size: 29px;
	font-size: 1.8125rem;
	font-weight: 900;
}

.fs30 {
	font-size: 30px;
	font-size: 1.875rem;
}

.fs30-100 {
	font-size: 30px;
	font-size: 1.875rem;
	font-weight: 100;
}

.fs30-300 {
	font-size: 30px;
	font-size: 1.875rem;
	font-weight: 300;
}

.fs30-350 {
	font-size: 30px;
	font-size: 1.875rem;
	font-weight: 350;
}

.fs30-400 {
	font-size: 30px;
	font-size: 1.875rem;
	font-weight: 400;
}

.fs30-500 {
	font-size: 30px;
	font-size: 1.875rem;
	font-weight: 500;
}

.fs30-700 {
	font-size: 30px;
	font-size: 1.875rem;
	font-weight: 700;
}

.fs30-900 {
	font-size: 30px;
	font-size: 1.875rem;
	font-weight: 900;
}

.fs31 {
	font-size: 31px;
	font-size: 1.9375rem;
}

.fs31-100 {
	font-size: 31px;
	font-size: 1.9375rem;
	font-weight: 100;
}

.fs31-300 {
	font-size: 31px;
	font-size: 1.9375rem;
	font-weight: 300;
}

.fs31-350 {
	font-size: 31px;
	font-size: 1.9375rem;
	font-weight: 350;
}

.fs31-400 {
	font-size: 31px;
	font-size: 1.9375rem;
	font-weight: 400;
}

.fs31-500 {
	font-size: 31px;
	font-size: 1.9375rem;
	font-weight: 500;
}

.fs31-700 {
	font-size: 31px;
	font-size: 1.9375rem;
	font-weight: 700;
}

.fs31-900 {
	font-size: 31px;
	font-size: 1.9375rem;
	font-weight: 900;
}

.fs32 {
	font-size: 32px;
	font-size: 2rem;
}

.fs32-100 {
	font-size: 32px;
	font-size: 2rem;
	font-weight: 100;
}

.fs32-300 {
	font-size: 32px;
	font-size: 2rem;
	font-weight: 300;
}

.fs32-350 {
	font-size: 32px;
	font-size: 2rem;
	font-weight: 350;
}

.fs32-400 {
	font-size: 32px;
	font-size: 2rem;
	font-weight: 400;
}

.fs32-500 {
	font-size: 32px;
	font-size: 2rem;
	font-weight: 500;
}

.fs32-700 {
	font-size: 32px;
	font-size: 2rem;
	font-weight: 700;
}

.fs32-900 {
	font-size: 32px;
	font-size: 2rem;
	font-weight: 900;
}

/*----------------------------------------
	Magnific Popup CSS
----------------------------------------*/

.mfp-bg {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1042;
	overflow: hidden;
	position: fixed;
	background: #0b0b0b;
	opacity: 0.8;
}

.mfp-wrap {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1043;
	position: fixed;
	outline: none !important;
	-webkit-backface-visibility: hidden;
}

.mfp-container {
	text-align: center;
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	padding: 0 8px;
	box-sizing: border-box;
}

.mfp-container:before {
	content: '';
	display: inline-block;
	height: 100%;
	vertical-align: middle;
}

.mfp-align-top .mfp-container:before {
	display: none;
}

.mfp-content {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	margin: 0 auto;
	text-align: left;
	z-index: 1045;
}

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
	width: 100%;
	cursor: auto;
}

.mfp-ajax-cur {
	cursor: progress;
}

.mfp-zoom-out-cur {
	cursor: -moz-zoom-out;
	cursor: -webkit-zoom-out;
	cursor: zoom-out;
}

.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
	cursor: -moz-zoom-out;
	cursor: -webkit-zoom-out;
	cursor: zoom-out;
}

.mfp-zoom {
	cursor: pointer;
	cursor: -webkit-zoom-in;
	cursor: -moz-zoom-in;
	cursor: zoom-in;
}

.mfp-auto-cursor .mfp-content {
	cursor: auto;
}

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
}

.mfp-loading.mfp-figure {
	display: none;
}

.mfp-hide {
	display: none !important;
}

.mfp-preloader {
	color: #CCC;
	position: absolute;
	top: 50%;
	width: auto;
	text-align: center;
	margin-top: -0.8em;
	left: 8px;
	right: 8px;
	z-index: 1044;
}

.mfp-preloader a {
	color: #CCC;
}

.mfp-preloader a:hover {
	color: #ffffff;
}

.mfp-s-ready .mfp-preloader,
.mfp-s-error .mfp-content {
	display: none;
}

button.mfp-close,
button.mfp-arrow {
	overflow: visible;
	cursor: pointer;
	background: transparent;
	border: 0;
	-webkit-appearance: none;
	display: block;
	outline: none;
	padding: 0;
	z-index: 1046;
	box-shadow: none;
	touch-action: manipulation;
}

button::-moz-focus-inner {
	padding: 0;
	border: 0;
}

.mfp-close {
	width: 44px;
	height: 44px;
	line-height: 44px;
	position: absolute;
	right: 0;
	top: 0;
	text-decoration: none;
	text-align: center;
	opacity: 0.65;
	padding: 0 0 18px 10px;
	color: #ffffff;
	font-style: normal;
	font-size: 28px;
	font-family: Arial, Baskerville, monospace;
}

.mfp-close:hover,
.mfp-close:focus {
	opacity: 1;
}

.mfp-close:active {
	top: 1px;
}

.mfp-close-btn-in .mfp-close {
	color: #333;
}

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
	color: #ffffff;
	right: -6px;
	text-align: right;
	padding-right: 6px;
	width: 100%;
}

.mfp-counter {
	position: absolute;
	top: 0;
	right: 0;
	color: #CCC;
	font-size: 12px;
	line-height: 18px;
	white-space: nowrap;
}

.mfp-arrow {
	position: absolute;
	opacity: 0.65;
	margin: 0;
	top: 50%;
	margin-top: -55px;
	padding: 0;
	width: 90px;
	height: 110px;
	-webkit-tap-highlight-color: transparent;
}

.mfp-arrow:active {
	margin-top: -54px;
}

.mfp-arrow:hover,
.mfp-arrow:focus {
	opacity: 1;
}

.mfp-arrow:before {
	content: '';
	display: block;
	width: 0;
	height: 0;
	position: absolute;
	left: 0;
	top: 0;
	margin-top: 35px;
	margin-left: 35px;
	border: medium inset transparent;
}

.mfp-arrow:after {
	content: '';
	display: block;
	width: 0;
	height: 0;
	position: absolute;
	left: 0;
	top: 0;
	margin-top: 35px;
	margin-left: 35px;
	border: medium inset transparent;
	border-top-width: 13px;
	border-bottom-width: 13px;
	top: 8px;
}

.mfp-arrow:before {
	border-top-width: 21px;
	border-bottom-width: 21px;
	opacity: 0.7;
}

.mfp-arrow-left {
	left: 0;
}

.mfp-arrow-left:after {
	border-right: 17px solid #ffffff;
	margin-left: 31px;
}

.mfp-arrow-left:before {
	margin-left: 25px;
	border-right: 27px solid #3F3F3F;
}

.mfp-arrow-right {
	right: 0;
}

.mfp-arrow-right:after {
	border-left: 17px solid #ffffff;
	margin-left: 39px;
}

.mfp-arrow-right:before {
	border-left: 27px solid #3F3F3F;
}

.mfp-iframe-holder {
	padding-top: 40px;
	padding-bottom: 40px;
}

.mfp-iframe-holder .mfp-content {
	line-height: 0;
	width: 100%;
	max-width: 900px;
}

.mfp-iframe-holder .mfp-close {
	top: -40px;
}

.mfp-iframe-scaler {
	width: 100%;
	height: 0;
	overflow: hidden;
	padding-top: 56.25%;
}

.mfp-iframe-scaler iframe {
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
	background: #000;
}

/* Main image in popup */

img.mfp-img {
	width: auto;
	max-width: 100%;
	height: auto;
	display: block;
	line-height: 0;
	box-sizing: border-box;
	padding: 40px 0 40px;
	margin: 0 auto;
}

/* The shadow behind the image */

.mfp-figure {
	line-height: 0;
}

.mfp-figure:after {
	content: '';
	position: absolute;
	left: 0;
	top: 40px;
	bottom: 40px;
	display: block;
	right: 0;
	width: auto;
	height: auto;
	z-index: -1;
	box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
	background: #444;
}

.mfp-figure small {
	color: #BDBDBD;
	display: block;
	font-size: 12px;
	line-height: 14px;
}

.mfp-figure figure {
	margin: 0;
}

.mfp-bottom-bar {
	margin-top: -36px;
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	cursor: auto;
}

.mfp-title {
	text-align: left;
	line-height: 18px;
	color: #F3F3F3;
	word-wrap: break-word;
	padding-right: 36px;
}

.mfp-image-holder .mfp-content {
	max-width: 100%;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
	cursor: pointer;
}

.vegas-wrapper,
.vegas-overlay,
.vegas-timer,
.vegas-slide,
.vegas-slide-inner {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	overflow: hidden;
	border: none;
	padding: 0;
	margin: 0;
}

.vegas-overlay {
	opacity: .5;
	background: transparent url("overlays/02.png") center center repeat;
}

.vegas-timer {
	top: auto;
	bottom: 0;
	height: 2px;
}

.vegas-timer-progress {
	width: 0%;
	height: 100%;
	background: white;
	-webkit-transition: width ease-out;
	transition: width ease-out;
}

.vegas-timer-running .vegas-timer-progress {
	width: 100%;
}

.vegas-slide,
.vegas-slide-inner {
	margin: 0;
	padding: 0;
	background: transparent center center no-repeat;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	will-change: transform, opacity;
}

body .vegas-container {
	overflow: hidden !important;
	position: relative;
}

.vegas-video {
	min-width: 100%;
	min-height: 100%;
	width: auto;
	height: auto;
}

body.vegas-container {
	overflow: auto;
	position: static;
	z-index: -2;
}

body.vegas-container > .vegas-timer,
body.vegas-container > .vegas-overlay,
body.vegas-container > .vegas-slide {
	position: fixed;
	z-index: -1;
}

/* Target Safari IOS7+ in order to add 76px */

_::full-page-media,
_:future,
:root body.vegas-container > .vegas-slide,
:root body.vegas-container > .vegas-overlay {
	bottom: -76px;
}

/*******************************************/

/* blur transition */

/*******************************************/

.vegas-transition-blur,
.vegas-transition-blur2 {
	opacity: 0;
	-webkit-filter: blur(32px);
	filter: blur(32px);
}

.vegas-transition-blur-in,
.vegas-transition-blur2-in {
	opacity: 1;
	-webkit-filter: blur(0px);
	filter: blur(0px);
}

.vegas-transition-blur2-out {
	opacity: 0;
}

/*******************************************/

/* burn transition */

/*******************************************/

.vegas-transition-burn,
.vegas-transition-burn2 {
	opacity: 0;
	-webkit-filter: contrast(1000%) saturate(1000%);
	filter: contrast(1000%) saturate(1000%);
}

.vegas-transition-burn-in,
.vegas-transition-burn2-in {
	opacity: 1;
	-webkit-filter: contrast(100%) saturate(100%);
	filter: contrast(100%) saturate(100%);
}

.vegas-transition-burn2-out {
	opacity: 0;
	-webkit-filter: contrast(1000%) saturate(1000%);
	filter: contrast(1000%) saturate(1000%);
}

/*******************************************/

/* fade transition */

/*******************************************/

.vegas-transition-fade,
.vegas-transition-fade2 {
	opacity: 0;
}

.vegas-transition-fade-in,
.vegas-transition-fade2-in {
	opacity: 1;
}

.vegas-transition-fade2-out {
	opacity: 0;
}

/*******************************************/

/* flash transition */

/*******************************************/

.vegas-transition-flash,
.vegas-transition-flash2 {
	opacity: 0;
	-webkit-filter: brightness(25);
	filter: brightness(25);
}

.vegas-transition-flash-in,
.vegas-transition-flash2-in {
	opacity: 1;
	-webkit-filter: brightness(1);
	filter: brightness(1);
}

.vegas-transition-flash2-out {
	opacity: 0;
	-webkit-filter: brightness(25);
	filter: brightness(25);
}

/*******************************************/

/* negative transition */

/*******************************************/

.vegas-transition-negative,
.vegas-transition-negative2 {
	opacity: 0;
	-webkit-filter: invert(100%);
	filter: invert(100%);
}

.vegas-transition-negative-in,
.vegas-transition-negative2-in {
	opacity: 1;
	-webkit-filter: invert(0);
	filter: invert(0);
}

.vegas-transition-negative2-out {
	opacity: 0;
	-webkit-filter: invert(100%);
	filter: invert(100%);
}

/*******************************************/

/* slideDown transition */

/*******************************************/

.vegas-transition-slideDown,
.vegas-transition-slideDown2 {
	-webkit-transform: translateY(-100%);
	transform: translateY(-100%);
}

.vegas-transition-slideDown-in,
.vegas-transition-slideDown2-in {
	-webkit-transform: translateY(0%);
	transform: translateY(0%);
}

.vegas-transition-slideDown2-out {
	-webkit-transform: translateY(100%);
	transform: translateY(100%);
}

/*******************************************/

/* slideLeft transition */

/*******************************************/

.vegas-transition-slideLeft,
.vegas-transition-slideLeft2 {
	-webkit-transform: translateX(100%);
	transform: translateX(100%);
}

.vegas-transition-slideLeft-in,
.vegas-transition-slideLeft2-in {
	-webkit-transform: translateX(0%);
	transform: translateX(0%);
}

.vegas-transition-slideLeft2-out {
	-webkit-transform: translateX(-100%);
	transform: translateX(-100%);
}

/*******************************************/

/* slideRight transition */

/*******************************************/

.vegas-transition-slideRight,
.vegas-transition-slideRight2 {
	-webkit-transform: translateX(-100%);
	transform: translateX(-100%);
}

.vegas-transition-slideRight-in,
.vegas-transition-slideRight2-in {
	-webkit-transform: translateX(0%);
	transform: translateX(0%);
}

.vegas-transition-slideRight2-out {
	-webkit-transform: translateX(100%);
	transform: translateX(100%);
}

/*******************************************/

/* slideUp transition */

/*******************************************/

.vegas-transition-slideUp,
.vegas-transition-slideUp2 {
	-webkit-transform: translateY(100%);
	transform: translateY(100%);
}

.vegas-transition-slideUp-in,
.vegas-transition-slideUp2-in {
	-webkit-transform: translateY(0%);
	transform: translateY(0%);
}

.vegas-transition-slideUp2-out {
	-webkit-transform: translateY(-100%);
	transform: translateY(-100%);
}

/*******************************************/

/* swirlLeft transition */

/*******************************************/

.vegas-transition-swirlLeft,
.vegas-transition-swirlLeft2 {
	-webkit-transform: scale(2) rotate(35deg);
	transform: scale(2) rotate(35deg);
	opacity: 0;
}

.vegas-transition-swirlLeft-in,
.vegas-transition-swirlLeft2-in {
	-webkit-transform: scale(1) rotate(0deg);
	transform: scale(1) rotate(0deg);
	opacity: 1;
}

.vegas-transition-swirlLeft2-out {
	-webkit-transform: scale(2) rotate(-35deg);
	transform: scale(2) rotate(-35deg);
	opacity: 0;
}

/*******************************************/

/* swirlRight transition */

/*******************************************/

.vegas-transition-swirlRight,
.vegas-transition-swirlRight2 {
	-webkit-transform: scale(2) rotate(-35deg);
	transform: scale(2) rotate(-35deg);
	opacity: 0;
}

.vegas-transition-swirlRight-in,
.vegas-transition-swirlRight2-in {
	-webkit-transform: scale(1) rotate(0deg);
	transform: scale(1) rotate(0deg);
	opacity: 1;
}

.vegas-transition-swirlRight2-out {
	-webkit-transform: scale(2) rotate(35deg);
	transform: scale(2) rotate(35deg);
	opacity: 0;
}

/*******************************************/

/* zoomIn transition */

/*******************************************/

.vegas-transition-zoomIn,
.vegas-transition-zoomIn2 {
	-webkit-transform: scale(0);
	transform: scale(0);
	opacity: 0;
}

.vegas-transition-zoomIn-in,
.vegas-transition-zoomIn2-in {
	-webkit-transform: scale(1);
	transform: scale(1);
	opacity: 1;
}

.vegas-transition-zoomIn2-out {
	-webkit-transform: scale(2);
	transform: scale(2);
	opacity: 0;
}

/*******************************************/

/* zoomOut transition */

/*******************************************/

.vegas-transition-zoomOut,
.vegas-transition-zoomOut2 {
	-webkit-transform: scale(2);
	transform: scale(2);
	opacity: 0;
}

.vegas-transition-zoomOut-in,
.vegas-transition-zoomOut2-in {
	-webkit-transform: scale(1);
	transform: scale(1);
	opacity: 1;
}

.vegas-transition-zoomOut2-out {
	-webkit-transform: scale(0);
	transform: scale(0);
	opacity: 0;
}

/*******************************************/

/* kenburns animation */

/*******************************************/

.vegas-animation-kenburns {
	-webkit-animation: kenburns ease-out;
	animation: kenburns ease-out;
}

/*******************************************/

/* kenburnsDownLeft animation */

/*******************************************/

.vegas-animation-kenburnsDownLeft {
	-webkit-animation: kenburnsDownLeft ease-out;
	animation: kenburnsDownLeft ease-out;
}

/*******************************************/

/* kenburnsDownRight animation */

/*******************************************/

.vegas-animation-kenburnsDownRight {
	-webkit-animation: kenburnsDownRight ease-out;
	animation: kenburnsDownRight ease-out;
}

/*******************************************/

/* kenburnsDown animation */

/*******************************************/

.vegas-animation-kenburnsDown {
	-webkit-animation: kenburnsDown ease-out;
	animation: kenburnsDown ease-out;
}

/*******************************************/

/* kenburnsLeft animation */

/*******************************************/

.vegas-animation-kenburnsLeft {
	-webkit-animation: kenburnsLeft ease-out;
	animation: kenburnsLeft ease-out;
}

/*******************************************/

/* kenburnsRight animation */

/*******************************************/

.vegas-animation-kenburnsRight {
	-webkit-animation: kenburnsRight ease-out;
	animation: kenburnsRight ease-out;
}

/*******************************************/

/* kenburnsUpLeft animation */

/*******************************************/

.vegas-animation-kenburnsUpLeft {
	-webkit-animation: kenburnsUpLeft ease-out;
	animation: kenburnsUpLeft ease-out;
}

/*******************************************/

/* kenburnsUpRight animation */

/*******************************************/

.vegas-animation-kenburnsUpRight {
	-webkit-animation: kenburnsUpRight ease-out;
	animation: kenburnsUpRight ease-out;
}

/*******************************************/

/* kenburnsUp animation */

/*******************************************/

.vegas-animation-kenburnsUp {
	-webkit-animation: kenburnsUp ease-out;
	animation: kenburnsUp ease-out;
}

.loading {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: #ffffff url(../images/common/loader.gif) no-repeat center;
	z-index: 99999;
}

.btn {
	height: 50px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-justify-content: center;
	-moz-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	-ms-flex-pack: center;
	-webkit-align-items: center;
	-moz-align-items: center;
	-ms-align-items: center;
	align-items: center;
	border-radius: 4px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	background: #f5f5f5;
	border: 1px solid #e0e0e0;
	color: #212121;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	white-space: nowrap;
	position: relative;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.btn-reset {
	width: 150px;
	font-size: 18px;
	font-size: 1.125rem;
}

.btn-submit {
	width: 300px;
	background: #545454;
	border: 1px solid #545454;
	color: #ffffff;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 500;
}

.btn-comment {
	width: 300px;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

caption,
th {
	text-align: left;
}

.baseTable {
	width: 100%;
	background: #ffffff;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.baseTable th,
.baseTable td {
	padding: 10px;
	line-height: 120%;
	border: 1px solid #e0e0e0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	vertical-align: top;
}

.baseTable td {
	vertical-align: middle;
}

.baseTable th {
	width: 20%;
	background: #fafafa;
	font-weight: 500;
	text-align: left;
}

input,
select {
	padding: 2px 4px;
	height: 28px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border-radius: 4px;
	background: #ffffff;
	border: 1px solid #e0e0e0;
	vertical-align: top;
}

input::-webkit-input-placeholder,
select::-webkit-input-placeholder {
	color: #bdbdbd;
	font-size: 12px;
	font-size: 0.75rem;
}

input:-moz-placeholder,
select:-moz-placeholder { /* Firefox 18- */
	color: #bdbdbd;
	font-size: 12px;
	font-size: 0.75rem;
}

input::-moz-placeholder,
select::-moz-placeholder { /* Firefox 19+ */
	color: #bdbdbd;
	font-size: 12px;
	font-size: 0.75rem;
}

input:-ms-input-placeholder,
select:-ms-input-placeholder {
	color: #bdbdbd;
	font-size: 12px;
	font-size: 0.75rem;
}

input:not([type='submit']):focus {
	outline: 0;
	background: rgba(232, 245, 233, 0.3);
}

input[type='search'] {
	-webkit-appearance: none;
}

input[type='time'] {
	font-family: "Noto Sans JP", "Noto Sans", sans-serif;
}

label {
	cursor: pointer;
}

textarea {
	padding: 4px 6px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border-radius: 4px;
	background: #ffffff;
	border: 1px solid #e0e0e0;
}

textarea::-webkit-input-placeholder {
	color: #bdbdbd;
}

textarea:-moz-placeholder { /* Firefox 18- */
	color: #bdbdbd;
}

textarea::-moz-placeholder { /* Firefox 19+ */
	color: #bdbdbd;
}

textarea:-ms-input-placeholder {
	color: #bdbdbd;
}

textarea:focus {
	outline: 0;
	background: rgba(232, 245, 233, 0.3);
}

#FieldMessageName1,
#FieldMessageNameKana1 {
	margin-right: 20px;
	display: -webkit-inline-flex;
	display: -moz-inline-flex;
	display: -ms-inline-flex;
	display: inline-flex;
	-webkit-align-items: center;
	-moz-align-items: center;
	-ms-align-items: center;
	align-items: center;
}

#FieldMessageName1 .mail-before-attachment,
#FieldMessageNameKana1 .mail-before-attachment {
	margin-right: 5px;
}

#FieldMessageName2,
#FieldMessageNameKana2 {
	display: -webkit-inline-flex;
	display: -moz-inline-flex;
	display: -ms-inline-flex;
	display: inline-flex;
	-webkit-align-items: center;
	-moz-align-items: center;
	-ms-align-items: center;
	align-items: center;
}

#FieldMessageName2 .mail-before-attachment,
#FieldMessageNameKana2 .mail-before-attachment {
	margin-right: 5px;
}

#FieldMessageSex {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-align-items: center;
	-moz-align-items: center;
	-ms-align-items: center;
	align-items: center;
}

#FieldMessageSex label {
	margin-right: 20px;
}

#MailMessageEmail1 {
	margin: 5px 0;
}

#FieldMessageTel1,
#FieldMessageTel2,
#FieldMessageTel3 {
	display: -webkit-inline-flex;
	display: -moz-inline-flex;
	display: -ms-inline-flex;
	display: inline-flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-align-items: center;
	-moz-align-items: center;
	-ms-align-items: center;
	align-items: center;
}

#FieldMessageTel1 .mail-after-attachment,
#FieldMessageTel2 .mail-after-attachment,
#FieldMessageTel3 .mail-after-attachment {
	margin: 0 5px;
}

#MailMessageTel1,
#MailMessageTel2,
#MailMessageTel3 {
	width: 80px;
}

#FieldMessageZip {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-align-items: center;
	-moz-align-items: center;
	-ms-align-items: center;
	align-items: center;
}

#FieldMessageZip .mail-before-attachment {
	margin-right: 5px;
}

#FieldMessageZip .mail-attention {
	margin-left: 5px;
}

#FieldMessageAddress1,
#FieldMessageAddress2 {
	margin: 5px 0;
	display: block;
}

#FieldMessageCategory {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-justify-content: center;
	-moz-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	-ms-flex-pack: center;
}

#MailMessageMessage {
	width: 100%;
}

#FieldMessageRoot {
	margin-bottom: 5px;
	display: block;
}

.form-s {
	width: 200px;
}

.form-l {
	width: 500px;
}

.error-message {
	margin: 5px 0 0;
	color: #b71c1c;
	font-size: 14px;
	font-size: 0.875rem;
}

.auth-captcha {
	margin-top: 20px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-align-items: center;
	-moz-align-items: center;
	-ms-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	-moz-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	-ms-flex-pack: center;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.auth-captcha-message {
	margin-left: 10px;
}

.auth-captcha .error-message {
	width: 100%;
}

#MailMessageAuthCaptcha {
	width: 200px;
}

.submit {
	margin-top: 40px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-justify-content: center;
	-moz-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	-ms-flex-pack: center;
}

.submit input {
	margin: 0 10px;
}

.checkboxInput {
	display: none;
}

.checkboxInput:checked + .checkboxInput-style {
	color: #00acc1;
}

.checkboxInput:checked + .checkboxInput-style:after {
	content: "";
	width: 6px;
	height: 12px;
	display: block;
	border-bottom: 4px solid #00acc1;
	border-right: 4px solid #00acc1;
	-webkit-transform: rotate(40deg);
	-moz-transform: rotate(40deg);
	-ms-transform: rotate(40deg);
	transform: rotate(40deg);
	position: absolute;
	top: -3px;
	left: 5px;
	cursor: pointer;
}

.checkboxInput-style {
	padding-left: 22px;
	position: relative;
	white-space: nowrap;
	top: -1px;
}

.checkboxInput-style:before {
	content: "";
	display: block;
	width: 16px;
	height: 16px;
	background: #eceff1;
	-webkit-box-shadow: 0 0 0 2px white inset;
	-moz-box-shadow: 0 0 0 2px white inset;
	box-shadow: 0 0 0 2px white inset;
	border: 1px solid #b0bec5;
	border-radius: 2px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position: absolute;
	top: 2px;
	left: 0;
	cursor: pointer;
}

.checkboxInput-style-noText {
	padding-left: 15px;
}

.radioInput {
	display: none;
}

.radioInput:checked + .radioInput-style {
	color: #00acc1;
}

.radioInput:checked + .radioInput-style:after {
	content: "";
	width: 10px;
	height: 10px;
	display: block;
	background: #00acc1;
	border-radius: 50%;
	position: absolute;
	top: 5px;
	left: 3px;
	cursor: pointer;
}

.radioInput-style {
	margin-right: 20px;
	padding-left: 22px;
	position: relative;
	white-space: nowrap;
}

.radioInput-style:before {
	content: "";
	display: block;
	width: 16px;
	height: 16px;
	background: #eceff1;
	-webkit-box-shadow: 0 0 0 2px white inset;
	-moz-box-shadow: 0 0 0 2px white inset;
	box-shadow: 0 0 0 2px white inset;
	border: 1px solid #b0bec5;
	border-radius: 50%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position: absolute;
	top: 2px;
	left: 0;
	cursor: pointer;
}

.btnContainer {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-justify-content: center;
	-moz-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	-ms-flex-pack: center;
}

.pagetop {
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 9999;
}

.pagetop a {
	padding-top: 7px;
	width: 40px;
	height: 40px;
	display: block;
	background: #545454;
	border-radius: 4px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	text-align: center;
	text-decoration: none;
	position: relative;
	letter-spacing: 1px;
}

.pagetop a:hover {
	opacity: 0.5;
	filter: alpha(opacity=50);
}

.pagetop a i {
	display: block;
	font-size: 22px;
	font-size: 1.375rem;
	color: #ffffff;
}

/* breadcrumb */

.breadcrumb {
	width: 100%;
	background: #eeeeee;
}

.breadcrumb nav {
	margin: 0 auto;
	padding: 10px 0;
}

.breadcrumb nav a {
	margin: 0 10px;
	display: inline-block;
	font-size: 13px;
	font-size: 0.8125rem;
	text-decoration: none;
	color: #212121 !important;
}

.breadcrumb nav a:hover {
	opacity: 0.5;
	filter: alpha(opacity=50);
}

.breadcrumb nav strong {
	margin: 0 10px;
	display: inline-block;
	font-weight: 400;
	font-size: 13px;
	font-size: 0.8125rem;
}

.pagination {
	padding-bottom: 60px;
	text-align: center;
}

.pagination .current,
.pagination .disabled {
	border: 1px solid #e0e0e0;
	margin: 0 1px;
	padding: 4px 7px;
}

.pagination span {
	margin: 0 2px;
	display: inline-block;
	border-radius: 2px;
}

.pagination a {
	margin: 0 1px;
	padding: 4px 7px;
	display: inline-block;
	border-radius: 2px;
	border: 1px solid #545454;
	background: #545454;
	text-decoration: none;
	white-space: nowrap;
	color: #ffffff;
}

.pagination a:hover {
	background: #ffffff;
	color: #545454;
}

.disabled {
	display: none;
}

.contentsNavi {
	margin: 20px 0 0;
	position: relative;
}

.contentsNavi .prev-link {
	float: left;
}

.contentsNavi .next-link {
	float: right;
}

.BlogComment {
	margin-top: 80px;
	padding: 15px;
	border: 1px solid #e0e0e0;
	border-radius: 4px;
}

.BlogComment h4 {
	margin: 0;
	padding-bottom: 20px;
	font-family: "Noto Sans JP", "Noto Sans", sans-serif;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
}

.BlogComment .submit {
	margin-top: 0;
	padding: 30px 0;
	text-align: center;
}

.BlogCommentList {
	margin-bottom: 40px;
	padding: 0 15px 40px;
	border-bottom: 1px solid #e0e0e0;
}

.comment {
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px dotted #e0e0e0;
}

.comment:first-child {
	margin-top: 0;
	padding-top: 0;
	border-top: none;
}

.BlogCommentSend h5 {
	margin: 0;
	padding-bottom: 20px;
	font-family: "Noto Sans JP", "Noto Sans", sans-serif;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 400;
}

.BlogCommentSend table {
	width: 100%;
}

.BlogCommentSend table th {
	padding: 10px;
	white-space: nowrap;
}

.BlogCommentSend table td {
	padding: 10px;
}

#BlogCommentAddForm {
	padding: 0 !important;
}

#BlogCommentName {
	width: 200px;
}

#BlogCommentEmail,
#BlogCommentUrl {
	width: 400px;
}

.auth-captcha-image {
	margin: 0;
	vertical-align: middle;
}

#BlogCommentMessage {
	width: 100%;
}

#ResultMessage {
	padding: 20px 0;
	font-size: 18px;
	font-size: 1.125rem;
	border-radius: 4px;
	background: #000000;
	color: #ffffff;
}

/*----------------------------------------
	body
----------------------------------------*/

body {
	background: #ffffff;
	font-family: "Noto Sans JP", "Noto Sans", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	color: #212121;
	text-align: center;
	font-weight: 400;
}

body img {
	max-width: 100%;
	height: auto;
}

body * {
	line-height: 160%;
}

body.fixed {
	position: fixed;
	width: 100%;
	height: 100vh;
	z-index: -1;
}

a {
	color: #545454;
	outline: none;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

a * {
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

a:hover {
	color: #212121;
}

a:active {
	color: #212121;
}

h1,
h2,
h3,
h4,
h5,
h6,
b,
strong {
	font-weight: 500;
}

.clearfix {
	min-height: 1px;
	_height: 1%;
}

.clearfix:after {
	content: "";
	clear: both;
	height: 0;
	display: block;
	visibility: hidden;
}

/*----------------------------------------
	container
----------------------------------------*/

.container {
	margin: 0 auto;
	width: 1100px;
	text-align: left;
	position: relative;
}
.container01{
	margin: 0 auto;
	width: 100%;
	text-align: left;
	position: relative;
}

/*----------------------------------------
	contents
----------------------------------------*/

.contents {
}

.hlTitle {
	margin-bottom: 80px;
	width: 100%;
	background: url(../img/common/bg_arches.jpg);
}

.hlTitle h2 {
	margin: 0;
	width: 100%;
	height: 160px;
	line-height: 110%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-justify-content: center;
	-moz-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	-ms-flex-pack: center;
	-webkit-align-items: center;
	-moz-align-items: center;
	-ms-align-items: center;
	align-items: center;
	border-bottom: 1px solid #EEE;
	vertical-align: middle;
	text-align: center;
	font-family: "Noto Sans JP", "Noto Sans", sans-serif;
	font-size: 34px;
	font-size: 2.125rem;
	font-weight: normal;
}

.secArea {
	margin: 100px 0;
}

.secArea .hlSecTitle {
	margin: 0 0 40px;
	padding-bottom: 25px;
	line-height: 120%;
	font-size: 30px;
	font-size: 1.875rem;
	font-family: "Noto Sans JP", "Noto Sans", sans-serif;
	position: relative;
	text-align: center;
	font-weight: normal;
}

.secArea .hlSecTitle:before {
	margin-left: -30px;
	content: '';
	width: 60px;
	height: 1px;
	background: #545454;
	position: absolute;
	bottom: 0;
	left: 50%;
}

.secArea .secContainer {
	margin: 40px 0;
	position: relative;
}

.secArea .secContainer:first-of-type {
	margin-top: 0;
}

.contentsCenter {
	margin: 0 auto;
	text-align: center;
}

.rowBox-2elem {
	margin: 40px 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-justify-content: space-between;
	-moz-justify-content: space-between;
	-ms-justify-content: space-between;
	justify-content: space-between;
	-ms-flex-pack: space-between;
}

.rowBox-2elem .boxInner {
	width: calc(50% - 20px);
}

.rowBox-2elem-reverse {
	margin: 40px 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-direction: row-reverse;
	-moz-flex-direction: row-reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
	-webkit-justify-content: space-between;
	-moz-justify-content: space-between;
	-ms-justify-content: space-between;
	justify-content: space-between;
	-ms-flex-pack: space-between;
}

.rowBox-2elem-reverse .boxInner {
	width: calc(50% - 20px);
}

.rowBox-3elem {
	margin: 40px 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-justify-content: space-between;
	-moz-justify-content: space-between;
	-ms-justify-content: space-between;
	justify-content: space-between;
	-ms-flex-pack: space-between;
}

.rowBox-3elem .boxInner {
	width: calc(33.333% - 30px);
}

.rowBox-3elem-reverse {
	margin: 40px 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-direction: row-reverse;
	-moz-flex-direction: row-reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
	-webkit-justify-content: space-between;
	-moz-justify-content: space-between;
	-ms-justify-content: space-between;
	justify-content: space-between;
	-ms-flex-pack: space-between;
}

.rowBox-3elem-reverse .boxInner {
	width: calc(33.333% - 30px);
}

.rowBox-4elem {
	margin: 40px 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-justify-content: space-between;
	-moz-justify-content: space-between;
	-ms-justify-content: space-between;
	justify-content: space-between;
	-ms-flex-pack: space-between;
}

.rowBox-4elem .boxInner {
	width: calc(25% - 20px);
}

.rowBox-4elem-reverse {
	margin: 40px 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-direction: row-reverse;
	-moz-flex-direction: row-reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
	-webkit-justify-content: space-between;
	-moz-justify-content: space-between;
	-ms-justify-content: space-between;
	justify-content: space-between;
	-ms-flex-pack: space-between;
}

.rowBox-4elem-reverse .boxInner {
	width: calc(25% - 20px);
}

.preContents {
	padding: 20px;
	line-height: 100%;
	background: #fafafa;
	border: 1px solid #eeeeee;
	border-radius: 4px;
}

.preContents .preContentsHead {
	margin-bottom: 2px;
	display: block;
	font-family: "Noto Sans JP", "Noto Sans", sans-serif;
	font-weight: 700;
	color: #9e9e9e;
}

.preContents code {
	line-height: 100%;
	font-size: 12px;
	font-size: 0.75rem;
	overflow: auto;
	white-space: pre-wrap;
	word-wrap: break-word;
}

/*----------------------------------------
	header
----------------------------------------*/

header {
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	background: url("../img/topo_bg.png" )
}

header .container {
	margin: 0 !important;
	width: 100%;
	background: #000000;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.hlLogo {
	margin: 0;
	padding-top: 50px;
	padding-right: 0;
	padding-left: 0;
	padding-bottom: 20px;
	width: 100%;
	text-align: center;
	z-index: 1000;
}

.hlLogo a:hover {
	opacity: 0.8;
	filter: alpha(opacity=80);
}

.hlLogo img {
	max-height: 124px;
	vertical-align: bottom;
}
/* ロゴを常に画面中央に固定する */
.mainVisual .hlLogo {
  margin: 0;
  padding: 0;
  width: 100%;
  text-align: center;
  position: absolute;   /* ← 重要！ inherit だと絶対に中央に来ない */
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 5;           /* 動画より前 */
  pointer-events: none; /* ロゴでクリックが邪魔されないように（任意） */
}

.mainVisual .hlLogo img {
  max-height: 200px !important;
  width: auto;
  height: auto;
}

.hlLogo a:hover {
	opacity: 0.8;
	filter: alpha(opacity=80);
}

.hlLogo img {
	max-height: 124px;
	vertical-align: bottom;
}

.index .hlLogo {
	margin: 0;
	padding: 0;
	vertical-align: middle;
}

.index .hlLogo img {
	height: auto;
}

.index .gNav {
	border-top: none;
}


/* -------------------------------------------------
   TOPページだけナビ上の線を消す
------------------------------------------------- */
.index .gNav {
	border-top: none;
}

/* -------------------------------------------------
   ベースのナビスタイル（PC共通）
------------------------------------------------- */
.gNav {
	width: 100%;
	background: #000000;
	position: relative;
	border-top: 1px solid rgba(255, 255, 255, 0.15);
}

.gNav .nav-menu-box {
	margin: 0 auto;
	padding: 0;
	width: 1100px;
	background: #000000;
}

.gNav .nav-menu {
	margin: 0 auto;
	padding: 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
}

.gNav .nav-menu .nav-item {
	list-style: none;
	-webkit-flex-grow: 1;
	-moz-flex-grow: 1;
	-ms-flex-grow: 1;
	flex-grow: 1;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border-right: 1px solid rgba(255, 255, 255, 0.15);
	position: relative;
}

.gNav .nav-menu .nav-item:first-child {
	border-left: 1px solid rgba(255, 255, 255, 0.15);
}

.gNav .nav-menu .nav-item > a {
	width: auto;
	height: 64px;
	line-height: 120%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-justify-content: center;
	-moz-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	-ms-flex-pack: center;
	-webkit-align-items: center;
	-moz-align-items: center;
	-ms-align-items: center;
	align-items: center;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	background: #000000;
	font-family: "Noto Sans JP", "Noto Sans", sans-serif;
	color: #ffffff !important;
	text-decoration: none;
	position: relative;
}

.gNav .nav-menu .nav-item > a:after {
	margin-left: -48%;
	content: '';
	width: 96%;
	height: 5px;
	display: block;
	background: rgba(255, 255, 255, 0);
	position: absolute;
	bottom: -1px;
	left: 50%;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.gNav .nav-menu .nav-item > a:hover {
	background: rgba(255, 255, 255, 0.07);
}

.gNav .nav-menu .nav-item > a:hover:after {
	background: rgba(255, 255, 255, 0.4);
	bottom: 3px;
}

.gNav .nav-menu .nav-item.current a:after {
	background: rgba(255, 255, 255, 0.4);
	bottom: 3px;
}

/* 旧テーマ用：ドロップダウンボックス（ほぼ未使用） */
.gNav .nav-menu-sub {
	width: 100%;
	display: none;
	border: 1px solid rgba(66, 66, 66, 0.8);
	border-top: none;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position: absolute;
	top: 64px;
	left: 0;
	z-index: 1;
}

.gNav .nav-menu-sub > .menu {
	margin: 0;
	padding: 0;
}

.gNav .nav-menu-sub .menu-content {
	padding: 0;
	background: #000000;
	list-style: none;
}

.gNav .nav-menu-sub .menu-content > a {
	width: 100%;
	height: 44px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-align-items: center;
	-moz-align-items: center;
	-ms-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	-moz-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	-ms-flex-pack: center;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	background: #000000;
	border-top: 1px solid rgba(66, 66, 66, 0.8);
	font-size: 14px;
	font-size: 0.875rem;
	font-family: "Noto Sans JP", "Noto Sans", sans-serif;
	color: #ffffff;
	text-decoration: none;
}

.gNav .nav-menu-sub .menu-content > a:hover {
	background: rgba(255, 255, 255, 0.07);
}

.gNav.fixed {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999;
}

/* ハンバーガーボタン（PCでは非表示） */
.btnSpMenu {
	margin-top: -13px;
	display: none;
	position: absolute;
	top: 50%;
	left: 20px;
	right: 0;
	cursor: pointer;
}

.btnSpMenu span {
	margin: 0 10px;
	display: inline-block;
	color: #ffffff;
	font-weight: 700;
	position: relative;
	top: -3px;
}

.btnSpMenu i {
	font-size: 26px;
	font-size: 1.625rem;
	color: #ffffff;
}

/* -------------------------------------------------
   日本語＋英語ラベル
------------------------------------------------- */
.gNav .nav-menu {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
}

.gNav .nav-item {
  position: relative;
}

.gNav .nav-item > a {
  display: block;
  padding: 10px 18px;
  text-decoration: none;
  color: #fff;
  font-size: 0.9rem;
  transition: background 0.2s ease, color 0.2s ease;
}

.gNav .jp-label {
  display: block;
  font-size: 0.9rem;
}
.gNav .en-label {
  display: block;
  font-size: 0.7rem;
  opacity: 0.7;
}

/* -------------------------------------------------
   ONLINE SHOP プルダウン 共通
------------------------------------------------- */
.nav-item.has-sub {
  position: relative;
}

.nav-item.has-sub .sub-menu {
  display: none;
  position: absolute;
  left: 0;
  top: 100%;
  min-width: 220px;
  background: #111;
  z-index: 1000;
}

.nav-item.has-sub .sub-menu-item a {
  display: block;
  padding: 10px 16px;
  white-space: nowrap;
}

/* -------------------------------------------------
   PC（1025px〜）
   → ONLINE SHOP はホバーで開く
------------------------------------------------- */
@media screen and (min-width: 1025px) {

  .gNav .nav-item:hover > a {
    background: #000;
    color: #fff;
  }

  .gNav .nav-item.has-sub .sub-menu {
    list-style: none;
    margin: 0;
    padding: 8px 0;
    position: absolute;
    top: 100%;
    left: 0;
    background: #000;
    min-width: 180px;
    z-index: 1000;
    display: none;
  }

  .gNav .nav-item.has-sub:hover > .sub-menu {
    display: block;
  }

  .gNav .nav-item.has-sub .sub-menu li a {
    display: block;
    padding: 20px 14px;
    color: #fff;
    font-size: 0.85rem;
    white-space: nowrap;
    text-decoration: none;
    background: #000;
    transition: background 0.2s ease;
  }

  .gNav .nav-item.has-sub .sub-menu li a::before,
  .gNav .nav-item.has-sub .sub-menu li a::after {
    content: none !important;
  }

  .gNav .nav-item.has-sub .sub-menu li a:hover,
  .gNav .nav-item.has-sub .sub-menu li:hover > a {
    background: #666 !important;
    color: #fff !important;
  }
}

/* -------------------------------------------------
   スマホ専用（〜1024px）
   → ハンバーガー＋ONLINE SHOP サブを常時表示
------------------------------------------------- */
@media screen and (max-width: 1024px) {

  /* ハンバーガーを表示 */
  .btnSpMenu {
    display: block;
  }

  /* メニュー本体はデフォルト非表示、.is-open で表示 */
  .nav-menu-box {
    display: none;
    width: 100%;
    margin: 0;
    padding: 0;
    background: #000;
  }
  .nav-menu-box.is-open {
    display: block;
  }

  /* メニューを縦並びに */
  .gNav .nav-menu {
    flex-direction: column;
  }

  .gNav .nav-item {
    border-left: none;
    border-right: none;
    border-bottom: 1px solid rgba(255,255,255,0.15);
  }

  .gNav .nav-item > a {
    height: auto;
    justify-content: flex-start;
    padding: 12px 16px;
    background: #000;
  }

  /* PC用のホバー線は不要 */
  .gNav .nav-item > a::after {
    display: none;
  }

  /* ONLINE SHOP の子メニューを親の直下で常時表示（順番そのまま：公式→楽天→Amazon） */
  .gNav .nav-item.has-sub .sub-menu {
    display: block !important;
    position: static;
    list-style: none;
    margin: 0;
    padding: 0;
    background: #111;
  }

  .gNav .nav-item.has-sub .sub-menu-item {
    border-top: 1px solid rgba(255,255,255,0.15);
  }

  .gNav .nav-item.has-sub .sub-menu-item a {
    display: block;
    padding: 10px 32px;
    font-size: 0.85rem;
    color: #fff;
    text-decoration: none;
    background: #111;
  }

  .gNav .nav-item.has-sub .sub-menu-item a:hover {
    background: rgba(255,255,255,0.07);
  }
}


/*----------------------------------------
	footer
----------------------------------------*/

footer {
	padding: 40px 0;
	width: 100%;
	background: #000000;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

footer .container {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
}

.fLeft {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-align-items: flex-start;
	-moz-align-items: flex-start;
	-ms-align-items: flex-start;
	align-items: flex-start;
	-webkit-justify-content: center;
	-moz-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	-ms-flex-pack: center;
	-webkit-flex-grow: 1;
	-moz-flex-grow: 1;
	-ms-flex-grow: 1;
	flex-grow: 1;
}

.shopName {
	margin: 5px 0;
	color: #ffffff;
}

.flLogo {
	margin: 0 40px 0 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-justify-content: center;
	-moz-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	-ms-flex-pack: center;
	-webkit-align-items: center;
	-moz-align-items: center;
	-ms-align-items: center;
	align-items: center;
}

.flLogo img {
	max-height: 123px;
}

.flLogo a:hover {
	opacity: 0.5;
	filter: alpha(opacity=50);
}

.fAddress {
	margin: 0;
	padding: 0;
}

.fAddress dt {
	width: 68px;
	float: left;
	clear: left;
	font-size: 14px;
	font-size: 0.875rem;
	color: #ffffff;
	position: relative;
}

.fAddress dt:before {
	content: '：';
	position: absolute;
	top: 0;
	right: 0;
}

.fAddress dd {
	margin: 0;
	padding-left: 68px;
	font-size: 14px;
	font-size: 0.875rem;
	color: #ffffff;
}

.fAddress dd span {
	color: #ffffff;
}

.fAddress dd a {
	color: #ffffff;
}

.fRight {
	margin-left: auto;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-justify-content: center;
	-moz-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	-ms-flex-pack: center;
	-webkit-align-items: center;
	-moz-align-items: center;
	-ms-align-items: center;
	align-items: center;
}

.copy {
	line-height: 120%;
	color: #ffffff;
	text-align: center;
}

.copy small {
	font-size: 12px;
	font-size: 0.75rem;
	color: #ffffff;
}

/*----------------------------------------
	sidebar
----------------------------------------*/

.sideNav {
	margin-bottom: 60px;
	width: 25%;
}

.sideNav .articleArea {
	padding: 0;
}

.blogWidget {
	width: 100%;
	margin-bottom: 40px;
}

.blogWidget h3 {
	margin-bottom: 20px;
	width: 100%;
	border-radius: 4px;
	background: #000000;
	line-height: 40px;
	font-family: "Noto Sans JP", "Noto Sans", sans-serif;
	font-weight: 400;
	font-size: 16px;
	font-size: 1rem;
	color: #ffffff;
	text-indent: 10px;
}

.blogWidget ul {
	padding-left: 0;
}

.blogWidget ul li {
	padding: 0 10px 15px 30px;
	line-height: 120%;
	position: relative;
	list-style: none;
}

.blogWidget ul li a:before {
	margin-right: 5px;
	display: inline-block;
	font-family: 'FontAwesome';
	content: '\f105';
	position: absolute;
	top: 0;
	left: 14px;
}

.blogWidgetCalender {
	padding: 20px;
	width: auto;
	border-radius: 4px;
	background: #fafafa;
	border: 1px solid #eeeeee;
}

.blogWidgetCalender h3 {
	margin: 0 0 15px 0;
	font-size: 18px;
	font-size: 1.125rem;
	background: none;
	color: #545454;
	text-align: center;
	line-height: 18px;
}

.blogCalendar {
	width: 100%;
}

.blogCalendar tr {
	border-bottom: 1px solid #e0e0e0;
}

.blogCalendar tr:first-child {
	padding-bottom: 5px;
}

.blogCalendar th,
.blogCalendar td {
	padding: 5px 0;
	text-align: center;
	font-weight: 400;
	font-size: 14px;
	font-size: 0.875rem;
}

.blogCalendar th a,
.blogCalendar td a {
	color: #545454;
	font-size: 14px;
	font-size: 0.875rem;
}

.saturday {
	color: #1e88e5;
}

.sunday {
	color: #e53935;
}

.today {
	font-weight: 700 !important;
	background: rgba(0, 0, 0, 0.2);
	color: #000000;
}

.today a {
	color: #000000;
}

#ContentSearchForm input[type="text"] {
	width: 100%;
}

/*----------------------------------------
	index
----------------------------------------*/

/* main visual */

.mainVisual {
	width: 100%;
	height: 100vh !important;
	position: relative;
	background-attachment: fixed;
}

.mainVisual:after {
	content: '';
	width: 100%;
	height: 8px;
	background: rgba(0, 0, 0, 0.15);
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
}

.mainVisual .vegas-wrapper {
	width: 100%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-align-items: center;
	-moz-align-items: center;
	-ms-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	-moz-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	-ms-flex-pack: center;
}

.mainVisualList {
	display: none;
}

/* main visual */
.mainVisual {
	width: 100%;
	height: 100dvh; /* ←スマホでも全画面 */
	position: relative;
	background-attachment: fixed;
}

@media (max-width: 1024px) {
  .mainVisual {
    background-attachment: scroll; /* iOSはfixed禁止のため切り替え */
    height: 100dvh;                /* ←重要 */
  }
}

.mainVisual:after {
	content: '';
	width: 100%;
	height: 8px;
	background: rgba(0, 0, 0, 0.15);
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
}

.mainVisual .vegas-wrapper {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.mainVisualList {
	display: none;
}

/* index contents */

.indexContents {
	margin: 60px 0 -100px;
}

.secTopNews {
	margin: 0 0 60px;
	width: 100%
}

.secTopNews .hTitleNews {
	width: 20%;
	background: #000000;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-justify-content: center;
	-moz-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	-ms-flex-pack: center;
	-webkit-align-items: center;
	-moz-align-items: center;
	-ms-align-items: center;
	align-items: center;
}

.secTopNews .hTitleNews h2 {
	margin: 0 auto;
	width: 100%;
	font-family: "Noto Sans JP", "Noto Sans", sans-serif;
	font-size: 20px;
	font-size: 1.25rem;
	color: #ffffff;
	text-align: center;
}

.secTopNews .hTitleNews h2 span {
	margin-top: 5px;
	display: block;
	font-size: 11px;
	font-size: 0.6875rem;
	color: #ffffff;
	font-weight: 400;
	line-height: 100%;
}

.secTopNews .articleTopNews {
    width: 90%;
    margin-left: auto;
    margin-right: auto;}

.secTopNews .entryTopNews:nth-child(even) a {
	background: #f5f5f5;
}

.secTopNews .entryTopNews a {
	padding: 10px 20px;
	width: 100%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	background: #eeeeee;
	text-decoration: none;
	font-size: 14px;
	font-size: 0.875rem;
	color: #212121;
	border-radius: 10px;
    margin-top: 10px;
}

.secTopNews .entryTopNews a:hover {
	background: rgba(0, 0, 0, 0.2);
}

.secTopNews .entryTopNews time {
	width: 100px;
	font-size: 16px;
	font-size: 1rem;
	order: 1;
}

.secTopNews .entryTopNews .hlEntryTopNews {
	margin: 0;
	font-weight: 400;
	order: 3;
}

.secTopNews .entryTopNews .hlNoEntry {
	margin: 0;
	padding: 20px;
	background: #eeeeee;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 400;
}

.secTop {
	margin: 60px 0;
}

.secTop .fl {
	text-align: center;
}

.secTop h2 {
	margin: 20px 0 30px;
	line-height: 130%;
	font-size: 30px;
	font-size: 1.875rem;
	font-family: "Noto Sans JP", "Noto Sans", sans-serif;
}

.secTop p {
	line-height: 180%;
}

.secTop img {
	vertical-align: bottom;
}

.secTop .hlTopGreen {
	border-right: 1px solid #545454;
}

.secTop .hlTopGreen span {
	color: #545454;
}

.secTop .hlTopYellow {
	border-right: 1px solid #fbc02d;
}

.secTop .hlTopYellow span {
	color: #fbc02d;
}
/* ================================
   TOP NEWS：左右2カラムレイアウト
   ================================ */

/* 外側：左右並び */
.secTopNews .topNews-flex {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  gap: 24px;
  max-width: 1100px;   /* 好きな幅に調整OK */
  margin: 0 auto;
}

/* 左カラム（お知らせ） */
.secTopNews .topNews-flex .articleTopNews {
  width: 100%;          /* 既存の width:90% を上書き */
  margin: 0;            /* auto マージンをリセット */
  flex: 0 0 60%;        /* 左6：右4 くらいの比率 */
}

/* 右カラム（画像） */
.secTopNews .topNews-banner {
  flex: 0 0 40%;
  display: flex;
  align-items: end;
}

.topNews-banner-link {
  display: block;
  width: 100%;
}

.topNews-banner img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;     /* 画像を枠いっぱいにフィット */
  border-radius: 10px;   /* 好きでなければ削除してOK */
}

/* ================================
   レスポンシブ（スマホ・タブレット）
   ================================ */

@media screen and (max-width: 1024px) {
  .secTopNews .topNews-flex {
    flex-direction: column;  /* カラム落ちして縦並び */
  }

  .secTopNews .topNews-flex .articleTopNews,
  .secTopNews .topNews-banner {
    flex: 0 0 auto;
    width: 100%;
  }

  .topNews-banner {
    margin-top: 16px;
  }
}
/* 外側：左右並び */
.secTopNews .topNews-flex {
  display: flex;
  justify-content: space-between;
  align-items: stretch;   /* ここを stretch にするのが重要 */
  gap: 24px;
  max-width: 1100px;
  margin: 0 auto;
}

/* 左カラム */
.secTopNews .topNews-flex .articleTopNews {
  flex: 1 1 60%;
  display: flex;
  flex-direction: column;
}

/* 右カラム（画像） */
.secTopNews .topNews-banner {
  flex: 1 1 40%;
  display: flex;
}

/* 画像を親の高さにフィットさせる */
.topNews-banner-link {
  width: 100%;
  display: flex;
}

.topNews-banner img {
  width: 100%;
  height: 100%;       /* ← 高さをブロックに合わせる */
  object-fit: contain;  /* ← トリミングしてでも高さ合わせる */
  border-radius: 10px;
}


/*----------------------------------------
	menu
----------------------------------------*/

.menuTable {
	margin-bottom: 30px;
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.menuTable th,
.menuTable td {
	padding: 13px 13px 13px 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	line-height: 140%;
	vertical-align: top;
	font-weight: 400;
}

.menuTable th {
	width: 75%;
}

.menuTable td {
	padding-right: 0;
	width: 25%;
	white-space: nowrap;
	text-align: right;
}

.menuTable tbody:nth-of-type(n+2) {
	margin-top: -1px;
}

.menuTable.rowBox-3elem .boxInner,
.menuTable.rowBox-2elem .boxInner {
	margin: -1px 0 0;
}

.menuTable.rowBox-3elem th,
.menuTable.rowBox-2elem th {
	width: 100%;
}

.menuTable.rowBox-3elem-reverse .boxInner,
.menuTable.rowBox-2elem-reverse .boxInner {
	margin: -1px 0 0;
}

.menuTable.rowBox-3elem-reverse th,
.menuTable.rowBox-2elem-reverse th {
	width: 100%;
}

/*----------------------------------------
	shop
----------------------------------------*/

.shopInfo {
	margin: 0;
}

.shopInfo dt {
	margin: 0;
}

.shopInfo dd {
	margin: 0 0 15px;
}

#map {
	width: 100%;
	height: 400px;
}

#map .gm-style-iw {
	color: #212121;
}

/*----------------------------------------
	news
----------------------------------------*/

.entryContainer {
	width: 1100px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 5rem;
}

.entryArea {
	margin-left: auto;
	padding-bottom: 80px;
}

.entryArea .entryList {
}

.entryArea .entryEyeCatch {
	margin: 0;
	float: left;
}

.entryArea .entryEyeCatch a:hover {
	opacity: 0.6;
	filter: alpha(opacity=60);
}

.entryArea .entryListTitle {

	position: relative;
	float: right;
}

.entryArea .entryListTitle h4 {
	margin: 0 0 16px;
	padding: 36px 0 16px;
	line-height: 120%;
	border-bottom: 1px solid #DDD;
	font-family: "Noto Sans JP", "Noto Sans", sans-serif;
	font-size: 20px;
	font-size: 1.25rem;
	text-align: left;
}

.entryArea .entryListTitle h4 a {
	color: #545454;
	text-decoration: none;
}

.entryArea .entryListTitle h4 a:hover {
	color: #000000;
}

.entryArea .entryListTitle time {
	position: absolute;
	top: 0;
	left: 0;
	line-height: 160%;
	font-size: 16px;
	font-size: 1rem;
	color: #757575;
}

.entryArea .entryListTitle .categoryLink {
	margin: 0;
	position: absolute;
	top: 0;
	right: 0;
}

.entryArea .entryListTitle .categoryLink a {
	padding: 6px 10px;
	line-height: 100%;
	display: inline-block;
	border-radius: 4px;
	background: #545454;
	font-size: 13px;
	font-size: 0.8125rem;
	color: #ffffff !important;
	text-align: center;
	text-decoration: none;
}

.entryArea .entryListTitle .categoryLink a:hover {
	background: #000000;
}

.entryArea .entryListTitle .entryBody {
	margin-bottom: 0;
	padding: 0;
	border-bottom: 0;
}

.entryArea .entryListTitle .entryBody p {
	margin: 0;
	font-size: 16px;
	font-size: 1rem;
}

.entryArea .entryListTitle .entryBody .more {
	float: right;
}

.entryArea .entryListTitle .entryBody .more i {
	margin-right: 5px;
	display: inline-block;
	position: relative;
	top: 1px;
	color: #545454;
}

.entryArea .entryListTitle .entryBody .more a {
	text-decoration: none;
}

.entryArea .entryListTitle .entryBody .more a:hover i {
	color: #000000;
}

.entry {
	padding-bottom: 80px;
}

.entry:last-child {
	padding-bottom: 20px;
}

.entry h3 {
	margin: 0 0 25px;
	padding: 0 10px 25px;
	width: auto;
	border-bottom: 1px solid #e0e0e0;
	font-family: "Noto Sans JP", "Noto Sans", sans-serif;
	font-size: 22px;
	font-size: 1.375rem;
	font-weight: 400;
	line-height: 120%;
}

.entry h3 a {
	color: #212121;
	text-decoration: none;
}

.entry h3 a:hover {
	color: #545454;
}

.entry time {
	padding-left: 10px;
	display: block;
}

.detailArea {
	padding-bottom: 0;
}

.detailArea .entry {
	margin-top: 10px;
	padding-bottom: 0;
}

.detailArea .entry h3 {
	font-weight: 700;
}

.entryBody,
.eyeCatch,
.post-body {
	margin: 0 !important;
	padding: 20px 10px;
	clear: both;
}

.post-detail,
#post-detail {
	margin: 0 !important;
	padding: 0 10px 20px;
}

.metaArea {
	padding-top: 20px;
	width: 100%;
	border-top: 1px solid #e0e0e0;
}

.metaArea ul {
	margin: 0;
	padding-left: 0;
	float: right;
}

.metaArea ul li {
	margin-right: 20px;
	float: left;
	font-size: 14px;
	font-size: 0.875rem;
	list-style: none;
}

.archiveTitle h3 {
	margin: 0 0 40px;
	padding: 10px 15px;
	background: #000000;
	border-radius: 4px;
	font-family: "Noto Sans JP", "Noto Sans", sans-serif;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 400;
	color: #ffffff;
}

.tag {
	padding: 0 !important;
	font-size: 14px !important;
	font-size: 0.875rem !important;
}

/*----------------------------------------
	contact
----------------------------------------*/

.mail-description {
	margin-bottom: 40px;
}

.alert-message {
	margin: 15px auto !important;
	padding: 10px 20px;
	color: #C30;
	font-weight: 700;
	border: 5px solid #C30;
}

.thanks {
	padding-bottom: 200px;
}

.preContents {
	padding: 20px;
	line-height: 120%;
	background: #fafafa;
	border: 1px solid #eeeeee;
	border-radius: 4px;
}

.preContents .preContentsHead {
	margin-bottom: 2px;
	display: block;
	font-family: "Noto Sans JP", "Noto Sans", sans-serif;
	font-weight: 700;
	color: #9e9e9e;
	white-space: pre-wrap;
	word-wrap: break-word;
}

.preContents code {
	line-height: 120%;
	font-size: 12px;
	font-size: 0.75rem;
	overflow: auto;
	white-space: pre-wrap;
	word-wrap: break-word;
}

.colorList {
	margin: 30px 0 0;
	padding: 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.colorList > li {
	margin: 0 10px 20px;
	width: calc(50% - 20px);
	list-style: none;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
}

.colorListSub {
	margin-top: 5px;
	padding: 0;
}

.colorListSub > li {
	padding: 6px 10px;
	line-height: 140%;
	list-style: none;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 400;
}

.colorListSub > li b {
	font-weight: 700;
}

/*----------------------------------------
	other
----------------------------------------*/

@media only screen and (min-width: 500px) and (max-width: 1119px) {

.w530 {
	width: 48.18%;
}

.tabNone {
	display: none !important;
}

.spVisible {
	display: none;
}

.pcVisible {
	display: none;
}

.BlogCommentSend table tr {
	display: inline;
}

.BlogCommentSend table th {
	font-weight: 700;
}

.BlogCommentSend table th,
.BlogCommentSend table td {
	padding: 10px 0 0;
	margin-top: -1px;
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: block;
}

.BlogCommentSend table td small {
	display: block;
}

.auth-captcha-image {
	margin: 0 20px 10px 0;
}

a:hover {
	opacity: 1 !important;
	filter: alpha(opacity=100);
}

a:hover img {
	opacity: 1 !important;
	filter: alpha(opacity=100);
}

.container {
	width: auto;
	margin: 0 20px;
}

.secArea {
	margin: 60px 0;
}

.gNav {
	height: 50px;
}

.gNav .nav-menu-box {
	width: 100%;
	display: none;
}

.gNav .nav-menu .nav-item > a {
	width: 100%;
	height: 50px;
}

.gNav .nav-menu-sub {
	top: 50px;
}

.gNav .nav-menu-sub .menu-content > a {
	height: 48px;
	background: rgba(33, 33, 33, 0.6);
}

.entryArea .entryListTitle h4 {
	padding-bottom: 8px;
}

}

@media only screen and (min-width: 500px) and (max-width: 787px) {

.w530 {
	width: 100%;
}

.fl {
	float: none;
}

.fr {
	float: none;
}

.baseTable-sp tr {
	display: block;
	width: 100%;
}

.baseTable-sp th,
.baseTable-sp td {
	margin-top: -1px;
	display: block;
	width: 100%;
}

input:not([type='checkbox']):not([type='radio']),
textarea {
	-webkit-appearance: none;
}

.form-s {
	width: 100%;
}

.form-l {
	width: 100%;
}

.auth-captcha {
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
}

#MailMessageAuthCaptcha {
	width: 96%;
}

.contentsNavi {
	margin: 20px 0 40px;
}

#BlogCommentAddForm {
	padding: 10px 0 !important;
}

#BlogCommentAddForm input {
	width: 100%;
}

.hlTitle {
	margin-bottom: 60px;
}

.hlTitle h2 {
	height: 130px;
	font-size: 26px;
	font-size: 1.625rem;
}

.secArea .hlSecTitle {
	margin: 0 0 30px;
	padding-bottom: 15px;
	font-size: 24px;
	font-size: 1.5rem;
}

.rowBox-2elem {
	margin: 0;
	display: block;
}

.rowBox-2elem .boxInner {
	margin: 10px 0;
	width: 100%;
}

.rowBox-2elem-reverse {
	margin: 0;
	display: block;
}

.rowBox-2elem-reverse .boxInner {
	margin: 10px 0;
	width: 100%;
}

.rowBox-3elem {
	margin: 0;
	display: block;
}

.rowBox-3elem .boxInner {
	margin: 10px 0;
	width: 100%;
}

.rowBox-3elem-reverse {
	margin: 0;
	display: block;
}

.rowBox-3elem-reverse .boxInner {
	margin: 10px 0;
	width: 100%;
}

.rowBox-4elem {
	margin: 0;
	display: block;
}

.rowBox-4elem .boxInner {
	margin: 10px 0;
	width: 100%;
}

.rowBox-4elem-reverse {
	margin: 0;
	display: block;
}

.rowBox-4elem-reverse .boxInner {
	margin: 10px 0;
	width: 100%;
}

header .container {
	margin-top: 50px !important;
}

.gNav {
	height: 50px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999;
	border-top: none;
	border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}

.gNav .nav-menu-box {
	width: 100%;
	height: calc(100vh - 51px);
	display: none;
	position: absolute;
	top: 50px;
	left: 0;
	right: 0;
	z-index: 9999;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
}

.gNav .nav-menu {
	padding-bottom: 120px;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
}

.gNav .nav-menu .nav-item {
	width: 100%;
	border-right: none;
}

.gNav .nav-menu .nav-item:first-child {
	border-left: none;
}

.gNav .nav-menu .nav-item > a {
	padding: 0 20px;
	-webkit-justify-content: flex-start;
	-moz-justify-content: flex-start;
	-ms-justify-content: flex-start;
	justify-content: flex-start;
	-ms-flex-pack: flex-start;
	border-top: 1px solid rgba(66, 66, 66, 0.8);
	width: 100%;
	height: 48px;
}

.gNav .nav-menu .nav-item > a:after {
	display: none;
}

.gNav .nav-menu-sub {
	display: block;
	position: static;
	border: none;
}

.gNav .nav-menu-sub .menu-content > a {
	padding: 0 20px 0 35px;
	height: 48px;
	-webkit-justify-content: flex-start;
	-moz-justify-content: flex-start;
	-ms-justify-content: flex-start;
	justify-content: flex-start;
	-ms-flex-pack: flex-start;
	background: rgba(33, 33, 33, 0.6);
}

.btnSpMenu {
	display: block;
	text-align: left;
}

footer {
	padding: 40px 0 20px;
}

footer .container {
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
}

.fLeft {
	width: auto;
	text-align: center;
}

.shopName {
	margin: 20px auto 0;
}

.flLogo {
	margin: 0 auto;
	display: block;
}

.fAddress {
	margin: 10px auto 0;
	text-align: left;
}

.fRight {
	width: 100%;
}

.copy {
	margin-top: 20px;
	padding-top: 15px;
	width: 100%;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.sideNav {
	width: 100%;
	float: none;
}

.mainVisual {
/*	height: 340px !important;
*/}

.indexContents {
	margin: 50px 0;
}

.secTopNews {
	margin: 50px 0;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
}

.secTopNews .hTitleNews {
	padding: 10px 0;
	width: 100%;
}

.secTopNews .articleTopNews {
	width: 100%;
}

.secTopNews .entryTopNews a {
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.secTopNews .entryTopNews .hlEntryTopNews {
	margin: 5px 0 !important;
	width: 100%;
}

.secTop {
	margin: 50px 0;
}

.secTop h2 {
	margin: 30px 0 20px;
	font-size: 26px;
	font-size: 1.625rem;
}

.menuTable {
	margin-bottom: 0;
}

.menuTable tr {
	border-top: 1px solid #e0e0e0;
	border-bottom: 1px solid #e0e0e0;
}

#map {
	height: 300px !important;
}

.entryContainer {
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
}

.entryArea {
	padding-bottom: 60px;
	width: 100%;
	float: none;
}

.entryArea .entryListTitle h4 {
	padding-top: 40px;
}

.thanks {
	padding-bottom: 80px;
}

.colorList {
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
}

.colorList > li {
	margin: 0 0 20px;
	width: 100%;
}

}

@media only screen and (min-width: 400px) and (max-width: 1024px) {

input:not([type='checkbox']):not([type='radio']),
textarea {
	-webkit-appearance: none;
}

.form-s {
	width: 100%;
}

.form-l {
	width: 100%;
}

header .container {
	margin-top: 50px !important;
}

.gNav {
	height: 50px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999;
	border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}

.gNav .nav-menu-box {
	width: 100%;
	height: calc(100vh - 51px);
	display: none;
	position: absolute;
	top: 50px;
	left: 0;
	right: 0;
	z-index: 9999;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
}

.gNav .nav-menu {
	padding-bottom: 120px;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
}

.gNav .nav-menu .nav-item {
	width: 100%;
	border-right: none;
}

.gNav .nav-menu .nav-item:first-child {
	border-left: none;
}

.gNav .nav-menu .nav-item > a {
	padding: 0 20px;
	-webkit-justify-content: flex-start;
	-moz-justify-content: flex-start;
	-ms-justify-content: flex-start;
	justify-content: flex-start;
	-ms-flex-pack: flex-start;
	border-top: 1px solid rgba(66, 66, 66, 0.8);
	width: 100%;
	height: 48px;
}

.gNav .nav-menu .nav-item > a:after {
	display: none;
}

.gNav .nav-menu-sub {
	display: block;
	position: static;
	border: none;
}

.gNav .nav-menu-sub .menu-content > a {
	padding: 0 20px 0 35px;
	height: 48px;
	-webkit-justify-content: flex-start;
	-moz-justify-content: flex-start;
	-ms-justify-content: flex-start;
	justify-content: flex-start;
	-ms-flex-pack: flex-start;
	background: rgba(33, 33, 33, 0.6);
}

.btnSpMenu {
	display: block;
	text-align: left;
}

.mainVisual {
/*	height: 400px !important;
*/}

.indexContents {
	margin: 50px 0;
}

.secTopNews {
	margin: 50px 0;
}

.secTop {
	margin: 50px 0;
}

.secTop h2 {
	margin: 5px 0 20px;
	font-size: 26px;
	font-size: 1.625rem;
}

}

@media only screen and (min-width: 1120px) {

.pcNone {
	display: none !important;
}

.spVisible {
	display: none;
}

.tabVisible {
	display: none;
}

}

@media all and (max-width: 900px) {

.mfp-arrow {
	-webkit-transform: scale(0.75);
	transform: scale(0.75);
}

.mfp-arrow-left {
	-webkit-transform-origin: 0;
	transform-origin: 0;
}

.mfp-arrow-right {
	-webkit-transform-origin: 100%;
	transform-origin: 100%;
}

.mfp-container {
	padding-left: 6px;
	padding-right: 6px;
}

}

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {

/**
	* Remove all paddings around the image on small screen
	*/

.mfp-img-mobile .mfp-image-holder {
	padding-left: 0;
	padding-right: 0;
}

.mfp-img-mobile img.mfp-img {
	padding: 0;
}

.mfp-img-mobile .mfp-figure:after {
	top: 0;
	bottom: 0;
}

.mfp-img-mobile .mfp-figure small {
	display: inline;
	margin-left: 5px;
}

.mfp-img-mobile .mfp-bottom-bar {
	background: rgba(0, 0, 0, 0.6);
	bottom: 0;
	margin: 0;
	top: auto;
	padding: 3px 5px;
	position: fixed;
	box-sizing: border-box;
}

.mfp-img-mobile .mfp-bottom-bar:empty {
	padding: 0;
}

.mfp-img-mobile .mfp-counter {
	right: 5px;
	top: 3px;
}

.mfp-img-mobile .mfp-close {
	top: 0;
	right: 0;
	width: 35px;
	height: 35px;
	line-height: 35px;
	background: rgba(0, 0, 0, 0.6);
	position: fixed;
	text-align: center;
	padding: 0;
}

}

@media only screen and (max-width: 499px) {

.w530 {
	width: 100%;
}

.fl {
	float: none;
}

.fr {
	float: none;
}

.spNone {
	display: none !important;
}

.tabVisible {
	display: none;
}

.pcVisible {
	display: none;
}

.baseTable th,
.baseTable td {
	padding: 6px 8px;
}

.baseTable-sp tr {
	display: block;
	width: 100%;
}

.baseTable-sp th,
.baseTable-sp td {
	margin-top: -1px;
	display: block;
	width: 100%;
}

input:not([type='checkbox']):not([type='radio']),
textarea {
	-webkit-appearance: none;
}

.form-s {
	width: 100%;
}

.form-l {
	width: 100%;
}

.auth-captcha {
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
}

#MailMessageAuthCaptcha {
	width: 94%;
}

.pagetop {
	bottom: 40px;
	right: 10px;
}

.breadcrumb nav {
	padding: 5px 0;
}

.pagination {
	padding-bottom: 40px;
}

.pagination span {
	margin: 0;
}

.pagination .prev,
.pagination .next {
	margin: 8px auto;
	padding: 5px 10px;
	width: 25%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: block;
}

.contentsNavi {
	margin: 20px 0 40px;
}

.BlogComment {
	margin-top: 40px;
	padding: 10px;
}

.BlogComment h4 {
	font-size: 16px;
	font-size: 1rem;
}

.BlogComment .submit {
	padding: 15px 0 10px;
}

.BlogCommentList {
	margin-bottom: 20px;
	padding: 0 10px 20px;
}

.BlogCommentSend h5 {
	padding-bottom: 0;
	font-size: 16px;
	font-size: 1rem;
}

.BlogCommentSend table tr {
	display: inline;
}

.BlogCommentSend table th {
	font-weight: 700;
}

.BlogCommentSend table th,
.BlogCommentSend table td {
	padding: 10px 0 0;
	margin-top: -1px;
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: block;
}

.BlogCommentSend table td small {
	display: block;
}

#BlogCommentAddForm {
	padding: 10px 0 !important;
}

#BlogCommentAddForm input {
	width: 100%;
}

.auth-captcha-image {
	margin: 0 0 10px;
}

#ResultMessage {
	padding: 15px 0;
	font-size: 16px;
	font-size: 1rem;
}

body {
	font-size: 14px;
	font-size: 0.875rem;
}

a:hover {
	opacity: 1 !important;
	filter: alpha(opacity=100);
}

a:hover img {
	opacity: 1 !important;
	filter: alpha(opacity=100);
}

.container {
	width: auto;
	margin: 0 10px;
}

.contents {
	padding-bottom: 50px;
}

.hlTitle {
	margin-bottom: 30px;
}

.hlTitle h2 {
	height: 100px;
	font-size: 22px;
	font-size: 1.375rem;
}

.secArea {
	margin: 40px 0;
}

.secArea .hlSecTitle {
	margin: 0 0 30px;
	padding-bottom: 15px;
	font-size: 20px;
	font-size: 1.25rem;
}

.secArea .hlSecTitle:before {
	margin-left: -15px;
	width: 30px;
}

.secArea .secContainer {
	margin: 20px 0;
}

.contentsCenter {
	text-align: left;
}

.rowBox-2elem {
	margin: 0;
	display: block;
}

.rowBox-2elem .boxInner {
	margin: 10px 0;
	width: 100%;
}

.rowBox-2elem-reverse {
	margin: 0;
	display: block;
}

.rowBox-2elem-reverse .boxInner {
	margin: 10px 0;
	width: 100%;
}

.rowBox-3elem {
	margin: 0;
	display: block;
}

.rowBox-3elem .boxInner {
	margin: 10px 0;
	width: 100%;
}

.rowBox-3elem-reverse {
	margin: 0;
	display: block;
}

.rowBox-3elem-reverse .boxInner {
	margin: 10px 0;
	width: 100%;
}

.rowBox-4elem {
	margin: 0;
	display: block;
}

.rowBox-4elem .boxInner {
	margin: 10px 0;
	width: 100%;
}

.rowBox-4elem-reverse {
	margin: 0;
	display: block;
}

.rowBox-4elem-reverse .boxInner {
	margin: 10px 0;
	width: 100%;
}

header .container {
	margin-top: 50px !important;
}

.hlLogo img {
	max-height: 100px;
}

.gNav {
	height: 50px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999;
	border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}

.gNav .nav-menu-box {
	width: auto;
	height: calc(100vh - 51px);
	display: none;
	position: absolute;
	top: 50px;
	left: 0;
	right: 0;
	z-index: 9999;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
}

.gNav .nav-menu {
	padding-bottom: 120px;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
}

.gNav .nav-menu .nav-item {
	width: 100%;
	border-right: none;
}

.gNav .nav-menu .nav-item:first-child {
	border-left: none;
}

.gNav .nav-menu .nav-item > a {
	padding: 0 20px;
	-webkit-justify-content: flex-start;
	-moz-justify-content: flex-start;
	-ms-justify-content: flex-start;
	justify-content: flex-start;
	-ms-flex-pack: flex-start;
	border-top: 1px solid rgba(66, 66, 66, 0.8);
	width: 100%;
	height: 48px;
}

.gNav .nav-menu .nav-item > a:after {
	display: none;
}

.gNav .nav-menu-sub {
	display: block;
	position: static;
	border: none;
}

.gNav .nav-menu-sub .menu-content > a {
	padding: 0 20px 0 35px;
	height: 48px;
	-webkit-justify-content: flex-start;
	-moz-justify-content: flex-start;
	-ms-justify-content: flex-start;
	justify-content: flex-start;
	-ms-flex-pack: flex-start;
	background: rgba(33, 33, 33, 0.6);
}

.btnSpMenu {
	display: block;
	text-align: left;
}

footer {
	padding: 30px 0 20px;
}

footer .container {
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
}

.fLeft {
	width: auto;
	text-align: center;
}

.shopName {
	margin: 20px auto 0;
}

.flLogo {
	margin: 0 auto;
	display: block;
}

.fAddress {
	margin: 10px auto 0;
	text-align: left;
}

.fAddress dt {
	width: 58px;
	font-size: 12px;
	font-size: 0.75rem;
}

.fAddress dd {
	padding-left: 58px;
	font-size: 12px;
	font-size: 0.75rem;
}

.fRight {
	width: 100%;
}

.copy {
	margin-top: 20px;
	padding-top: 15px;
	width: 100%;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.sideNav {
	margin-bottom: 20px;
	width: 100%;
	float: none;
}

.mainVisual {
/*	height: 220px !important;
*/}

.indexContents {
	margin: 20px 0;
}

.secTopNews {
	margin: 20px 0;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
}

.secTopNews .hTitleNews {
	padding: 10px 0;
	width: 100%;
}

.secTopNews .hTitleNews h2 {
	font-size: 18px;
	font-size: 1.125rem;
}

.secTopNews .hTitleNews h2 span {
	font-size: 10px;
	font-size: 0.625rem;
}

.secTopNews .articleTopNews {
	width: 100%;
}

.secTopNews .entryTopNews a {
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.secTopNews .entryTopNews .hlEntryTopNews {
	margin: 5px 0 !important;
	width: 100%;
}

.secTop {
	margin: 40px 0;
}

.secTop h2 {
	margin: 15px 0 20px;
	padding-right: 10px;
	font-size: 24px;
	font-size: 1.5rem;
}

.menuTable {
	margin-bottom: 0;
}

.menuTable tr {
	border-top: 1px solid #e0e0e0;
	border-bottom: 1px solid #e0e0e0;
}

.menuTable th,
.menuTable td {
	padding: 10px 15px 10px 0;
	font-size: 13px;
	font-size: 0.8125rem;
}

.menuTable td {
	width: auto;
}

#map {
	height: 200px !important;
}

.entryContainer {
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
}

.entryArea {
	padding-bottom: 20px;
	width: 100%;
	float: none;
}

.entryArea .entryList {
	margin-bottom: 40px;
}

.entryArea .entryEyeCatch {
	width: 100%;
	float: none;
}

.entryArea .entryListTitle {
	margin-top: 10px;
	width: 100%;
	float: none;
}

.entryArea .entryListTitle h4 {
	padding-top: 40px;
	font-size: 18px;
	font-size: 1.125rem;
}

.entryArea .entryListTitle .entryBody .more {
	margin-top: 10px;
}

.entry {
	padding-bottom: 40px;
}

.entry h3 {
	font-size: 18px;
	font-size: 1.125rem;
}

.archiveTitle h3 {
	font-size: 16px;
	font-size: 1rem;
}

.mail-description {
	margin-bottom: 20px;
}

.thanks {
	padding-bottom: 40px;
}

.colorList {
	margin: 20px 0 0;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
}

.colorList > li {
	margin: 0 0 20px;
	width: 100%;
}

.colorListSub > li {
	font-size: 10px;
	font-size: 0.625rem;
}

}

@-webkit-keyframes kenburns {

0% {
	-webkit-transform: scale(1.5);
	transform: scale(1.5);
}

100% {
	-webkit-transform: scale(1);
	transform: scale(1);
}

}

@keyframes kenburns {

0% {
	-webkit-transform: scale(1.5);
	transform: scale(1.5);
}

100% {
	-webkit-transform: scale(1);
	transform: scale(1);
}

}

@-webkit-keyframes kenburnsDownLeft {

0% {
	-webkit-transform: scale(1.5) translate(10%, -10%);
	transform: scale(1.5) translate(10%, -10%);
}

100% {
	-webkit-transform: scale(1) translate(0, 0);
	transform: scale(1) translate(0, 0);
}

}

@keyframes kenburnsDownLeft {

0% {
	-webkit-transform: scale(1.5) translate(10%, -10%);
	transform: scale(1.5) translate(10%, -10%);
}

100% {
	-webkit-transform: scale(1) translate(0, 0);
	transform: scale(1) translate(0, 0);
}

}

@-webkit-keyframes kenburnsDownRight {

0% {
	-webkit-transform: scale(1.5) translate(-10%, -10%);
	transform: scale(1.5) translate(-10%, -10%);
}

100% {
	-webkit-transform: scale(1) translate(0, 0);
	transform: scale(1) translate(0, 0);
}

}

@keyframes kenburnsDownRight {

0% {
	-webkit-transform: scale(1.5) translate(-10%, -10%);
	transform: scale(1.5) translate(-10%, -10%);
}

100% {
	-webkit-transform: scale(1) translate(0, 0);
	transform: scale(1) translate(0, 0);
}

}

@-webkit-keyframes kenburnsDown {

0% {
	-webkit-transform: scale(1.5) translate(0, -10%);
	transform: scale(1.5) translate(0, -10%);
}

100% {
	-webkit-transform: scale(1) translate(0, 0);
	transform: scale(1) translate(0, 0);
}

}

@keyframes kenburnsDown {

0% {
	-webkit-transform: scale(1.5) translate(0, -10%);
	transform: scale(1.5) translate(0, -10%);
}

100% {
	-webkit-transform: scale(1) translate(0, 0);
	transform: scale(1) translate(0, 0);
}

}

@-webkit-keyframes kenburnsLeft {

0% {
	-webkit-transform: scale(1.5) translate(10%, 0);
	transform: scale(1.5) translate(10%, 0);
}

100% {
	-webkit-transform: scale(1) translate(0, 0);
	transform: scale(1) translate(0, 0);
}

}

@keyframes kenburnsLeft {

0% {
	-webkit-transform: scale(1.5) translate(10%, 0);
	transform: scale(1.5) translate(10%, 0);
}

100% {
	-webkit-transform: scale(1) translate(0, 0);
	transform: scale(1) translate(0, 0);
}

}

@-webkit-keyframes kenburnsRight {

0% {
	-webkit-transform: scale(1.5) translate(-10%, 0);
	transform: scale(1.5) translate(-10%, 0);
}

100% {
	-webkit-transform: scale(1) translate(0, 0);
	transform: scale(1) translate(0, 0);
}

}

@keyframes kenburnsRight {

0% {
	-webkit-transform: scale(1.5) translate(-10%, 0);
	transform: scale(1.5) translate(-10%, 0);
}

100% {
	-webkit-transform: scale(1) translate(0, 0);
	transform: scale(1) translate(0, 0);
}

}

@-webkit-keyframes kenburnsUpLeft {

0% {
	-webkit-transform: scale(1.5) translate(10%, 10%);
	transform: scale(1.5) translate(10%, 10%);
}

100% {
	-webkit-transform: scale(1) translate(0, 0);
	transform: scale(1) translate(0, 0);
}

}

@keyframes kenburnsUpLeft {

0% {
	-webkit-transform: scale(1.5) translate(10%, 10%);
	transform: scale(1.5) translate(10%, 10%);
}

100% {
	-webkit-transform: scale(1) translate(0, 0);
	transform: scale(1) translate(0, 0);
}

}

@-webkit-keyframes kenburnsUpRight {

0% {
	-webkit-transform: scale(1.5) translate(-10%, 10%);
	transform: scale(1.5) translate(-10%, 10%);
}

100% {
	-webkit-transform: scale(1) translate(0, 0);
	transform: scale(1) translate(0, 0);
}

}

@keyframes kenburnsUpRight {

0% {
	-webkit-transform: scale(1.5) translate(-10%, 10%);
	transform: scale(1.5) translate(-10%, 10%);
}

100% {
	-webkit-transform: scale(1) translate(0, 0);
	transform: scale(1) translate(0, 0);
}

}

@-webkit-keyframes kenburnsUp {

0% {
	-webkit-transform: scale(1.5) translate(0, 10%);
	transform: scale(1.5) translate(0, 10%);
}

100% {
	-webkit-transform: scale(1) translate(0, 0);
	transform: scale(1) translate(0, 0);
}

}

@keyframes kenburnsUp {

0% {
	-webkit-transform: scale(1.5) translate(0, 10%);
	transform: scale(1.5) translate(0, 10%);
}

100% {
	-webkit-transform: scale(1) translate(0, 0);
	transform: scale(1) translate(0, 0);
}

}


/*# sourceMappingURL=style.css.map */


.heading-27 {
    display: flex;
    align-items: center;
    column-gap: 8px;
    color: #333333;
}

.heading-27::before {
    width: 0.8em;
    height: 0.4em;
    border-bottom: 4px solid #1cc4a8;
    border-left: 4px solid #1cc4a8;
    transform: rotate(-45deg) translate(2px, -2px);
    content: '';
}

table{
  border-collapse: collapse;
  width: 100%;
}
.tb01 th,
.tb01 td{
  padding: 10px;
  border: solid 1px #ccc;
  text-align:left;
  box-sizing:border-box;
}
.tb01 th {
  background: #1cc4a8;
  color: #fff;
  
}
@media screen and (max-width: 640px) {
  .tb01 {
    width: 100%;
  }
  table.tb01 th,
  table.tb01 td {
    display: block;
    width: 100%;
    border-bottom:none;
	    text-align:center;
  }
  .tb01 tr:last-child{
    border-bottom: solid 1px #ccc;
  }
}

/*TOPページお知らせ*/
.newevent{
	width: 50%;
	text-align: left;
}


/* ============================================
   追従バナー（右下固定）
   ============================================ */

.follow-banner {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 9999;
  width: 260px;
  background: rgba(0,0,0,0.85);
  padding: 1.3rem 1.3rem 1.2rem;
  border-radius: 16px;
  box-shadow: 0 8px 20px rgba(0,0,0,0.6);
  box-sizing: border-box;
}

/* 「ONLINE SHOP」みたいなラベルの微調整用 */
.shop-label {
  padding-top: 6px;
}

/* ✕ ボタン */
.follow-banner-close {
  position: absolute;
  top: 10px;
  right: 14px;
  border: none;
  background: transparent;
  color: #f5f5f5;
  font-size: 1.3rem;
  cursor: pointer;
  line-height: 1;
}

/* カードの縦並び */
.follow-banner-inner {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
  margin-top: 1.3rem;
}

/* カード共通デザイン */
.follow-card {
  display: flex;
  align-items: center;
  gap: 0.7rem;

  padding: 0.65rem 0.9rem;
  border-radius: 10px;
  text-decoration: none;
  color: #fff;
  font-size: 0.95rem;

  min-height: 56px;
  box-sizing: border-box;
  transition: 0.2s;
}

/* カード内のアイコン＋テキスト横並び */
.icon-row {
  display: flex;
  align-items: center;
  gap: 0.6rem;
}

/* ================================
   ONLINE SHOP（薄グレー × 黒）
   ================================ */
.follow-card-shop {
  background: #eeeeee;
  color: #111;
  font-family: 'Scooter_EFaster', sans-serif;
  font-size: 1.1rem;
  font-weight: 600;
}

.icon-shop {
  font-size: 1.3rem;
  color: #333;
}

/* ================================
   Instagram（レインボー背景）
   ================================ */
.follow-card-insta {
  background: linear-gradient(
    135deg,
    #fdf497 0%,
    #fd5949 40%,
    #d6249f 70%,
    #285AEB 100%
  );
  color: #fff;
  font-weight: 600;
  font-family: 'Scooter_EFaster', sans-serif;
  font-size: 1.4rem;
}

.icon-insta {
  font-size: 1.3rem;
  color: #fff;
}

/* ホバー */
.follow-card:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(0,0,0,0.5);
}

/* ============================================
   スマホサイズで全体を縮小
   ============================================ */
@media (max-width: 600px) {

  /* 全体を少し小さくする */
  .follow-banner {
    transform: scale(0.78);          /* ← 大きさはここで調整（0.6〜0.9くらい） */
    transform-origin: bottom right;  /* 右下を基準に縮小 */
    right: 12px;
    bottom: 14px;
    width: 220px;
    padding: 1rem 1rem 0.9rem;
  }

  /* カードをコンパクトに */
  .follow-card {
    padding: 0.5rem 0.75rem;
    min-height: 44px;
    border-radius: 8px;
  }

  .follow-card-shop {
    font-size: 0.9rem;
  }

  .follow-card-insta {
    font-size: 1.1rem;
  }

  .icon-shop,
  .icon-insta {
    font-size: 1.1rem;
  }

  /* ✕ ボタンも少し小さく & 位置詰め */
  .follow-banner-close {
    font-size: 1.1rem;
    top: 6px;
    right: 10px;
  }
}




/* ================================
   2段ナビ強制レイアウト
   ================================ */
.gNav .nav-menu {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  width: 100%;
}

.gNav .nav-menu .nav-item > a {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center;
  align-items: center;
  padding: 12px 10px;
  height: 80px;
  color: #fff;
}

.gNav .nav-menu .jp-label {
  font-size: 13px;
  font-weight: 400;
  line-height: 1.2;
}

.gNav .nav-menu .en-label {
  font-size: 11px;
  color: #ccc;
  margin-top: 4px;
  line-height: 1.1;
}
/* --- CROSSMEMBER仕様：ナビを縦2段に強制する --- */
.gNav .nav-menu .nav-item > a {
  display: flex !important;
  flex-direction: column !important;   /* ← これ絶対必要 */
  align-items: center;
  justify-content: center;
  padding: 16px 10px !important;
  height: 88px !important;
  text-align: center;
}

/* 日本語（上段） */
.gNav .jp-label {
  display: block;
  font-size: 18px;
  font-weight: 400;
  color: #fff;
  line-height: 1.2;
}

/* 英語（下段） */
.gNav .en-label {
  display: block !important;
  font-size: 10px;
  margin-top: 4px;
  color: #aaa;
  line-height: 1.1;
  letter-spacing: 0.03em;
}
/* ▼ ナビ全体の高さを中身に合わせる（重要） ▼ */
.gNav,
.gNav .nav-menu-box {
  line-height: normal !important;
  padding: 0 !important;
}

/* ▼ メニュー項目の高さは項目側でコントロールする */
.gNav .nav-menu .nav-item > a {
  height: 90px !important;  /* ここは好みで調整OK（例：80〜100） */
  padding: 14px 10px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center;
}

/* =========================================
   COMPANY PAGE
   ========================================= */

.secCompany {
  background: #ffffff;
  color: #222;
}

.company-inner {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 1.5rem;
}

/* ---------- HERO（白背景） ---------- */

.company-hero {
  padding: 4.5rem 0 3rem;
  background: #ffffff;
  border-bottom: 1px solid #ececec;
}

.company-hero-inner {
  text-align: center;
}

.company-hero-label {
  display: inline-block;
  margin-bottom: 0.8rem;
  padding: 0.25rem 1rem;
  border-radius: 999px;
  border: 1px solid #ccc;
  font-size: 0.8rem;
  letter-spacing: 0.16em;
  color: #333;
  text-transform: uppercase;
  background: #fff;
}

.company-hero-title {
  font-family: 'ScooterEFaster', system-ui, sans-serif;
  font-size: 2.5rem;
  letter-spacing: 0.12em;
  margin-bottom: 0.7rem;
  color: #111;
}

.company-hero-sub {
  font-size: 1rem;
  line-height: 1.9;
  color: #555;
}

/* ---------- セクション共通 ---------- */

.company-section {
  padding: 3.5rem 0;
}

.company-section-title {
  font-size: 1.9rem;
  letter-spacing: 0.16em;
  font-weight: 700;
}

.company-section-sub {
  font-size: 0.8rem;
  letter-spacing: 0.24em;
  text-transform: uppercase;
	margin: 0;
}

/* 通常は中央 */
.company-section-header {
  text-align: center;
  margin-bottom: 2.2rem;
}

/* 左寄せ版（メッセージ） */
.company-section-header.-left {
  text-align: left;
  margin-bottom: 1.8rem;
}

/* ---------- 会社概要セクション（背景：うっすらグレー） ---------- */

.company-profile {
  background: #f5f5f5;
  color: #fff;
}

.company-profile .company-section-title {
  color: #111;
}

.company-profile .company-section-sub {
  color: #888;
}

/* 黒カード */
.company-card {
  border-radius: 18px;
  padding: 2.3rem 2rem;
  box-shadow: 0 14px 32px rgba(0,0,0,0.55);
}

.company-profile-card {
  background: #111;
  border: 1px solid #333;
  color: #fff;
}

.company-table {
  margin: 0;
}

.company-row {
  display: grid;
  grid-template-columns: 150px 1fr;
  column-gap: 1.4rem;
  row-gap: 0.6rem;
  padding: 1rem 0;
  border-bottom: 1px solid rgba(255,255,255,0.12);
}

.company-row:last-child {
  border-bottom: none;
}

.company-row dt {
  font-weight: 600;
  font-size: 0.9rem;
  color: #ccc;
}

.company-row dd {
  margin: 0;
  font-size: 0.95rem;
  line-height: 1.8;
  color: #fff;
}

/* -----------------------------------------
   メッセージセクション：黒グラデ背景
----------------------------------------- */
.company-message {
  background: linear-gradient(to bottom, #2a2a2a 0%, #000000 100%);
  color: #b8b8b8;          /* 全体を少し暗めのグレーに寄せる */
  padding: 5rem 2rem;
  width: 100%;             /* 左右いっぱいに広げる */
  max-width: none;         /* 最大幅制限を外す */
  margin: 0 auto;
  line-height: 1.9;
  border-radius: 0;
  box-shadow: none;
	box-sizing: border-box; /* ← これを追加！ */
}

/* 見出し（メッセージ） */
.company-message h2,
.company-message h3 {
  color: #d8d8d8;          /* 白より少し落とした見出し色 */
  margin: 0.15rem 0 0;     /* MESSAGEとの間を少しだけ詰める */
}

/* リード文 */
.company-message-lead {
  font-size: 1.15rem;
  font-weight: 700;
  color: #c4c4c4;          /* 少しグレー寄りのリード */
  margin: 1.4rem 0 1.2rem; /* 上下だけ控えめに余白 */
}

/* 本文（さらに暗めで読みやすいグレー） */
.company-message-body {
  color: #a8a8a8;
  font-size: 0.9rem;
  line-height: 1.95;
  margin: 0;
}

/* MESSAGE ラベル（少し大きく＆詰める） */
.company-message-label {
	font-size: 0.95rem;      /* ← 前より大きく */
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: #9a9a9a;
	margin-top: 1rem;
	margin-right: 0;
	margin-left: 0;
	margin-bottom: 0.5rem;      /* 下の余白だけ少しだけ */
}

/* コピー（ScooterEFaster） */
.company-message-copy {
  font-family: 'ScooterEFaster';
  font-size: 1.8rem;
  color: #c8c8c8;          /* ここもグレー寄りに */
  margin: 0;
}

/* 写真部分（角丸に戻す／白枠なし） */
.company-message-card {
  background: transparent;
  padding: 0;
  border-radius: 0;
  box-shadow: none;
  border: none;
  text-align: center;
}

.company-message-card img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 20px;      /* ← 写真だけ角丸 */
  box-shadow: none;
}

/* GRID（テキスト + 写真） */
.company-grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 3fr);
  gap: 3rem;
  align-items: center;
}

/* SP調整 */
@media (max-width: 768px) {
  .company-message {
    padding: 3rem 1.4rem;
  }

  .company-grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .company-message-card img {
    max-width: 92%;
    margin: 0 auto;
  }
}


/* ---------- アクセス（背景：黒） ---------- */

.company-access {
  background: #050607;
  color: #fff;
}

.company-access .company-section-title {
  color: #fff;
}
.company-access .company-section-sub {
  color: #aaa;
}

.company-access-wrap {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1.4fr);
  gap: 2rem;
  align-items: stretch;
}

.company-access-info {
  font-size: 0.95rem;
  line-height: 1.8;
  color: #eee;
}

.company-access-name {
  font-weight: 600;
  margin-bottom: 0.3rem;
}

.company-access-address {
  color: #ddd;
  margin-bottom: 0.6rem;
}

.company-access-note {
  font-size: 0.85rem;
  color: #bbb;
}

.company-access-map {
  min-height: 240px;
}

.company-map-dummy {
  background: radial-gradient(circle at top, #20242e, #101219);
  border-radius: 14px;
  height: 100%;
  min-height: 240px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #ddd;
  border: 1px solid rgba(255,255,255,0.18);
}

/* ---------- reveal（ふわっと） ---------- */

.reveal {
  opacity: 0;
  transform: translateY(25px);
  transition: opacity 0.9s ease, transform 0.9s ease;
}

.reveal.is-show {
  opacity: 1;
  transform: translateY(0);
}

/* ---------- SP / RESPONSIVE ---------- */

.sp-only { display: none; }

@media (max-width: 900px) {

  .company-grid {
    grid-template-columns: 1fr;
  }

  .company-access-wrap {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 600px) {

  .company-inner {
    padding: 0 1.2rem;
  }

  .company-row {
    grid-template-columns: 100%;
  }

  .sp-only { display: inline; }
}
/* =========================================
   SP用：横スクロール防止パッチ
   ========================================= */
@media (max-width: 600px) {

  /* セクション全体で横はみ出しを封じる */
  .secCompany {
    overflow-x: hidden;
  }

  /* 内側の左右余白を少しだけ狭く＆確実に画面内に収める */
  .company-inner {
    padding: 0 1rem;
    box-sizing: border-box;
    max-width: 100%;
  }

  /* カード系は幅を100%に固定しておく */
  .company-card,
  .company-message-card,
  .company-access-wrap,
  .company-map-dummy {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }
}
/* PCでは非表示（改行しない） */
.sp-br {
  display: none;
}

/* スマホだけ br を有効化（改行する） */
@media (max-width: 600px) {
  .sp-br {
    display: block;
  }
}
/* スマホの横はみ出し防止（CROSSMEMBER Inc.） */
.company-hero-title {
  word-break: break-word;
  overflow-wrap: break-word;
  text-align: center;
}

/* スマホでフォントを縮める */
@media (max-width: 600px) {
  .company-hero-title {
    font-size: 2.4rem;   /* 今より小さくしてはみ出し防止 */
    line-height: 1.2;
    padding: 0 1rem;     /* 横に余白をつけて安全にする */
  }
}


/* =========================================
   COMPANY BRAND PAGE（取り扱いブランド）
   ========================================= */

/* セクション全体 */
.secBrandPage {
  background: #ffffff;
}

/* ------------------------------
   ブランドカード本体
------------------------------ */

.brand-block {
	/* 黒〜ダークグレーのグラデーション背景 */
	background: linear-gradient(180deg, #1f1f1f 0%, #000000 100%);
	color: #eee;
	border-radius: 22px;
	/* 会社概要カードと同じ 1100px 幅＋中央寄せ */
	max-width: 1100px;
	margin-top: 2.8rem;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 2.8rem;
	padding: 2.4rem 2.2rem 2.0rem;
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.55);
	text-align: left;  /* カード内はすべて左揃えベース */
}

/* ロゴ＋テキストの横並び */
.brand-block-head {
  display: flex;
  gap: 1.8rem;
  align-items: center;
  margin-bottom: 1.8rem;
}

/* ロゴ */
.brand-logo {
  flex: 0 0 150px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.brand-logo img {
  max-width: 150px;
  width: 100%;
  border-radius: 14px;
  background: #ffffff;
  padding: 0.5rem 0.8rem;
  display: block;
}

/* テキストエリア（全部左揃え） */
.brand-info {
  flex: 1;
  text-align: left;
}

.brand-en {
  font-size: 1.8rem;
  margin: 0;
	font-family: "Noto Sans JP", "Noto Sans", sans-serif;
}

.brand-ja {
  font-size: 0.8rem;
  color: #c2c2c2;
  margin: 0.3rem 0 0.8rem;
	font-family: "Noto Sans JP", "Noto Sans", sans-serif;
}

.brand-catch {
  font-size: 0.95rem;
  font-weight: 600;
  margin: 0 0 0.6rem;
}

.brand-text {
  font-size: 0.9rem;
  line-height: 1.9;
  color: #d0d0d0;
  margin: 0;
}

/* OFFICIAL SITE / ONLINE SHOP ボタン */
.brand-btn {
  display: inline-block;
  margin-top: 1.1rem;
  padding: 0.7rem 1.8rem;
  border-radius: 999px;
  border: 1px solid #fff;
  color: #fff;
  font-size: 0.8rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  text-decoration: none;
  transition: all 0.2s ease;
}

.brand-btn:hover {
  background: #fff;
  color: #111;
}

/* ------------------------------
   商品写真4枚グリッド
------------------------------ */

.brand-photo-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
}

.brand-photo-grid figure {
  background: #181818;
  border-radius: 14px;
  overflow: hidden;
  margin: 0;
  text-align: left;          /* キャプションも左揃え */
  font-size: 0.75rem;
  color: #cfcfcf;
}

.brand-photo-grid img {
  width: 100%;
  height: auto;
  display: block;
}

.brand-photo-grid figcaption {
  padding: 0.4rem 0.6rem 0.6rem;
}

/* ------------------------------
   レスポンシブ
------------------------------ */

/* 900px以下：ロゴ＋テキスト縦並び／写真2列 */
@media (max-width: 900px) {
  .brand-block-head {
    flex-direction: column;
    align-items: flex-start;
  }

  .brand-logo {
    justify-content: flex-start;
  }

  .brand-photo-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* 600px以下：さらにコンパクトに */
@media (max-width: 600px) {
  .brand-block {
    padding: 2rem 1.4rem 1.7rem;
    border-radius: 20px;
  }

  .brand-photo-grid {
    gap: 0.7rem;
  }

  .brand-logo {
    flex-basis: auto;
  }
}

/* -----------------------------------------
   ORIGINAL PRODUCTS（プロダクトPRODUCT）
   ※ 商品エリア全体に topo を敷く
----------------------------------------- */

/* 商品エリア全体：背景は topo のみ */
.cm-product-wrap {
  position: relative;
  background-color: transparent;
  padding: 4rem 1.5rem 4.5rem;
  overflow: hidden; /* 背景をエリア内に閉じ込める */
  background-image: url("https://cross-member.com/theme/omotenashi/img/topo_bg.png");
  background-repeat: repeat;
  background-size: 100% auto;
}

/* topo（等高線）パララックス背景：商品エリア全体 */
.cm-product-wrap::before {
  content: "";
  position: absolute;
  top: -20%;      /* 上下に広げてパララックス余裕を確保 */
  left: 0;
  width: 100%;
  height: 140%;

  /* パララックス風 */
  transform: translateY(calc(var(--scroll, 0) * -0.25));
  opacity: 1;
  z-index: 0;
  pointer-events: none;
}

/* 中身は前面 */
.cm-product-grid,
.cm-youtube-section {
  position: relative;
  z-index: 2;
}

/* 商品グリッド */
.cm-product-grid {
  max-width: 1080px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 1.4rem;
  row-gap: 3rem;
}

/* 商品カード本体（ボタン位置固定対応済） */
.cm-product-card {
  position: relative;
  z-index: 3;
  background: #141414;
  border-radius: 18px;
  padding: 0.5rem;
  display: flex;
  flex-direction: column;
  height: 100%;
  box-shadow: 0 12px 30px rgba(0,0,0,0.6);
  border: 1px solid #4C4C4C;
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.cm-product-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 40px rgba(0,0,0,0.8);
  border-color: #444444;
}

/* サムネイル */
.cm-product-thumb {
  border-radius: 14px;
  overflow: hidden;
  margin-bottom: 0.9rem;
}

.cm-product-thumb img {
  width: 100%;
  height: auto;
  display: block;
}

/* タグ（車種バッジ） */
.cm-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: center;
  margin-top: 0.4rem;    /* 写真との間を狭める */
  margin-bottom: 0.6rem; /* タイトルとの間も狭める */
}

.cm-tag {
  background: #222;
  color: #fff;
  padding: 0.35rem 0.9rem;
  border-radius: 12px;
  font-size: 0.8rem;
  border: 1px solid #444;
  white-space: nowrap;
  transition: 0.2s ease;
}

/* タグが1つだけのときは少し大きめ＆中央寄せ */
.cm-tags .cm-tag:only-child {
  display: block;
  margin-inline: auto;
  padding: 0.5rem 2.2rem;
  font-size: 0.9rem;
  border-radius: 20px;
  max-width: 90%;
}

/* タイトル */
.cm-product-title {
  font-size: 1rem;
  color: #f2f2f2;
  font-weight: 600;
  margin: 0.3rem 0 0.5rem;
}

/* 説明文（可変部分） */
.cm-product-text {
  font-size: 0.88rem;
  color: #c4c4c4;
  line-height: 1.8;
  margin-top: 0;
  margin-right: 0;
  margin-left: 0;
  margin-bottom: 1.2rem;
  flex: 1 1 auto;   /* ここが伸びてボタンを押し下げる */
}

/* ボタン：常にカードの最下部へ */
.cm-btn {
  display: inline-block;
  padding: 0.6rem 1rem;
  border-radius: 999px;
  background: #f5f5f5;
  color: #111;
  font-size: 0.82rem;
  font-weight: 600;
  text-decoration: none;
  text-align: center;
  letter-spacing: 0.03em;
  transition: background 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
  box-shadow: 0 4px 12px rgba(0,0,0,0.4);
  margin-top: auto;   /* ← 余白を全部ここに取って、下に固定 */
}

.cm-btn:hover {
  background: #fff;
  transform: translateY(-1px);
  box-shadow: 0 6px 18px rgba(0,0,0,0.6);
}

/* -----------------------------------------
   YouTube セクション
----------------------------------------- */

.cm-youtube-section {
  position: relative;
  background: #000;
  padding: 3rem 1.5rem 4rem;
  border-top: 1px solid #1a1a1a;
  z-index: 2;
}

.cm-youtube-grid {
  max-width: 1080px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.8rem;
}

.cm-youtube-item {
  display: flex;
  flex-direction: column;
  border-radius: 16px;
  background: #111;
  padding: 1rem;
  box-shadow: 0 10px 30px rgba(0,0,0,0.7);
}

.cm-youtube-frame {
  width: 100%;
  aspect-ratio: 16/9;
  border-radius: 12px;
  overflow: hidden;
  background: #000;
}

.cm-youtube-frame iframe {
  width: 100%;
  height: 100%;
}

.cm-youtube-caption {
  margin-top: 0.7rem;
  font-size: 0.85rem;
  color: #d0d0d0;
  text-align: center;
}

/* -----------------------------------------
   絞り込みボタン UI
----------------------------------------- */

.cm-filter-area {
  max-width: 1080px;
  margin: 0 auto 2.5rem;
  padding: 0 1.5rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  justify-content: center;
}

.cm-filter-btn {
  padding: 0.45rem 1.2rem;
  background: #222;
  color: #fff;
  border: 1px solid #444;
  border-radius: 999px;
  font-size: 0.85rem;
  cursor: pointer;
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.cm-filter-btn:hover {
  background: #fff;
  color: #111;
  border-color: #fff;
}

.cm-filter-btn.active {
  background: #fff;
  color: #111;
  border-color: #fff;
}

/* スマホ調整（フィルターボタン） */
@media (max-width: 600px) {
  .cm-filter-btn {
    font-size: 0.8rem;
    padding: 0.4rem 1rem;
  }
}

/* レスポンシブ */
@media (max-width: 900px) {
  .cm-product-grid {
    grid-template-columns: repeat(2,1fr);
  }
  .cm-youtube-grid {
    grid-template-columns: repeat(2,1fr);
  }
  .cm-product-wrap {
    background-image: url("https://cross-member.com/theme/omotenashi/img/topo_bg.png");
    background-repeat: repeat;
    background-size: 500% auto;
  }
}

@media (max-width: 640px) {
  .cm-youtube-grid {
    grid-template-columns: 1fr;
  }
  .cm-product-wrap {
    background-image: url("https://cross-member.com/theme/omotenashi/img/topo_bg.png");
    background-repeat: repeat;
    background-size: 500% auto;
  }
}

@media (min-width: 1024px) {
  .cm-product-grid {
    grid-template-columns: repeat(4,1fr);
  }
}
/* ▼ キラリ光エフェクト ▼ */
.cm-product-card {
  position: relative;
  overflow: hidden; /* 光がはみ出さない */
}

.cm-product-card::after {
  content: "";
  position: absolute;
  top: -100%;
  left: -150%;
  width: 80%;
  height: 300%;
  background: linear-gradient(
    120deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,0.25) 50%,
    rgba(255,255,255,0) 100%
  );
  transform: skewX(-25deg);
  opacity: 0;
  transition: opacity 0.2s ease;
  pointer-events: none;
}

.cm-product-card:hover::after {
  animation: cm-shine 0.8s forwards;
  opacity: 1;
}

@keyframes cm-shine {
  0% {
    top: -100%;
    left: -150%;
  }
  50% {
    top: -50%;
    left: 50%;
  }
  100% {
    top: 100%;
    left: 150%;
  }
}


/* ============================================
   NEWSページ　
cmblog 専用デザイン（他のページには絶対影響しない）
   ============================================
/* ============================================
   cmblog 専用カードデザイン（他には一切効かない）
   ============================================ */
#cmblog{
	margin-top: 1.5rem;
}

/* カードのベース（flexで縦並び＋下にボタン） */
#cmblog .cmblog-card {
  background: #ffffff;
  border-radius: 18px;
  border: 1px solid #e5e5e5;
  box-shadow: 0 4px 12px rgba(0,0,0,0.06);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
}

/* アイキャッチ：上 */
#cmblog .cmblog-thumb img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;     /* 好きな比率に */
  object-fit: cover;
}

/* カード本文部分 */
#cmblog .cmblog-body {
  padding: 14px 16px 8px;
  box-sizing: border-box;
  flex: 1 1 auto;
}

/* 日付＋カテゴリ */
#cmblog .cmblog-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-bottom: 6px;
  font-size: 0.8rem;
  color: #777;
}

#cmblog .cmblog-meta time {
  font-size: 0.8rem;
}

#cmblog .cmblog-meta .categoryLink a {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 999px;
  border: 1px solid #ccc;
  font-size: 0.7rem;
  text-decoration: none;
	color: #fff;
}

/* タイトル */
#cmblog .cmblog-title {
  margin: 4px 0 8px;
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1.4;
}

/* 抜粋テキスト */
#cmblog .cmblog-excerpt p {
  margin: 0;
  font-size: 0.85rem;
  line-height: 1.5;
  color: #444;
}

/* フッター（ボタン部分） */
#cmblog .cmblog-footer {
  padding: 10px 16px 16px;
  box-sizing: border-box;
  margin-top: auto;  /* ここでボタンを一番下に押し下げる */
}

/* 「詳細を見る」ボタンをそれっぽく */
#cmblog .more {
  margin: 0;
}

#cmblog .more a {
  display: block;
  width: 100%;
  text-align: center;
  padding: 10px 0;
  border-radius: 999px;
  background: #000;
  color: #fff;
  text-decoration: none;
  font-size: 0.9rem;
  font-weight: 600;
  transition: background 0.2s, transform 0.1s;
}

#cmblog .more a:hover {
  background: #333;
  transform: translateY(-1px);
}

/* ============================================
   レイアウト：PC 4列
   ============================================ */
@media screen and (min-width: 1025px) {
  #cmblog .entryArea {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 28px;
  }
}

/* ============================================
   レイアウト：スマホ 2列（〜600px）
   ============================================ */
@media screen and (max-width: 600px) {
  #cmblog .entryArea {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }

  #cmblog .cmblog-card {
    border-radius: 12px;
  }
}

/* ============================================
   楽天・Amazon 横並びボタン　オンラインショップ
   ============================================ */
/* 大きい枠の下の2つボタン */
.market-links {
  margin-top: 50px;           /* 白枠からの距離 */
  display: flex;
  justify-content: center;    /* ★中央寄せ */
  gap: 40px;
  flex-wrap: wrap;
}

/* 白枠ボタン本体 */
.market-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 260px;
  height: 120px;
  border: 2px solid #fff;
  border-radius: 22px;
  background: rgba(0,0,0,0.3);
  transition: .2s;
}

.market-btn:hover {
  transform: translateY(-4px);
  opacity: 0.85;
}

.market-btn img {
  max-width: 70%;
  max-height: 60px;
  object-fit: contain;
}

/* スマホ時は縦並び */
@media (max-width: 768px) {
  .market-links {
    flex-direction: column;
    align-items: center;
    gap: 20px;
  }
	.secTopNews{
        width: 90%;
        margin-left: auto;
        margin-right: auto;	}
}

/* ============================
   SCROLL INDICATOR
   ============================ */

.scroll-indicator {
  position: absolute;
  left: 50%;
  bottom: 40px;
  transform: translateX(-50%);
  text-align: center;
  color: #ffffff;
  font-size: 11px;
  letter-spacing: 0.25em;
  z-index: 5; /* ロゴや動画より前面に */
  pointer-events: none;
}

.scroll-indicator span {
  display: block;
  font-family: "Noto Sans JP", "Noto Sans", sans-serif;
}

.scroll-indicator .line {
  width: 1px;
  height: 36px;
  margin: 6px auto 4px;
  background: rgba(255, 255, 255, 0.4);
  position: relative;
  overflow: hidden;
}

.scroll-indicator .line::before {
  content: "";
  position: absolute;
  top: -100%;
  left: 0;
  width: 100%;
  height: 100%;
  background: #ffffff;
  animation: scrollIndicatorLine 1.6s ease-in-out infinite;
}

.scroll-indicator .arrow {
  font-size: 14px;
  line-height: 1;
  animation: scrollIndicatorArrow 1.2s ease-in-out infinite;
}

/* ラインのアニメーション */
@keyframes scrollIndicatorLine {
  0% {
    top: -100%;
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  80% {
    top: 100%;
    opacity: 1;
  }
  100% {
    top: 100%;
    opacity: 0;
  }
}

/* 矢印のアニメーション */
@keyframes scrollIndicatorArrow {
  0% {
    transform: translateY(0);
    opacity: 0.2;
  }
  40% {
    transform: translateY(4px);
    opacity: 1;
  }
  100% {
    transform: translateY(8px);
    opacity: 0.1;
  }
}

