@charset "UTF-8";
/*----------------------------------------------------------------
 読み込むファイルの設定
-----------------------------------------------------------------*/
/* setting
-----------------------------------------------------------------*/
/**
 * Cleaned Reset CSS
 * 複数のリセットCSSから重複を削除し、整理したバージョン
 * Based on: YUI reset, sanitize.css, OZ RESET CSS
 *
 * 元ファイルの詳細度と記述順序による最終的な適用値を正確に再現
 */
/* =================================================================
   # Universal Reset
   ================================================================= */
/* すべての要素に対する基本リセット */
* {
  /* ボックスモデル */
  -webkit-box-sizing: border-box;
          box-sizing: border-box; /* OZ RESETより */
  margin: 0;
  padding: 0;
  border: 0; /* OZ RESETより（border-styleがnoneに） */
  outline: 0;
  /* 継承設定 */
  font: inherit;
  font-size: 100%; /* OZ RESETより */
  font-family: inherit;
  font-style: inherit;
  font-weight: inherit;
  line-height: inherit;
  color: inherit;
  /* 装飾リセット */
  text-decoration: none;
  vertical-align: baseline;
  /* 背景 */
  background-repeat: no-repeat;
}

/* 【新規追加】最新版ONZE RESET CSSより - メディア要素のレスポンシブ対応 */
img, picture, audio, canvas, video, svg {
  display: block;
  max-width: 100%;
}

/* 疑似要素専用の設定 */
::before,
::after {
  /* ボックスモデル（*とは異なる設定） */
  -webkit-box-sizing: inherit;
          box-sizing: inherit; /* sanitize.cssより（OZ RESETは*のみなので上書きされない） */
  margin: 0;
  padding: 0;
  /* ボーダー設定（*とは異なる設定） */
  /* すべての要素のボーダースタイルと幅を指定 */
  border-style: solid;
  border-width: 0;
  outline: 0;
  /* 継承設定（*とは異なる設定） */
  text-decoration: inherit;
  vertical-align: inherit;
}

/* =================================================================
   # Document Root
   ================================================================= */
/* ドキュメントのルートスタイルを指定 */
:root {
  /* 基本スタイル */
  background-color: #ffffff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #000000;
  cursor: default;
  text-rendering: optimizeLegibility;
}

html {
  /* 基本設定 */
  font-size: 62.5%; /* 10px = 1rem の計算を簡単にする */
  width: 100%;
  height: 100%;
  /* テキスト調整 */
  /* iOS 8以降 */
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
  /* 【新規追加】最新版sanitize.cssより - タブサイズとタップハイライト */
  /* -moz-tab-size: 4;
  tab-size: 4;
  -webkit-tap-highlight-color: transparent; */
  /* 【変更候補】最新版sanitize.cssより - line-height: 1.5（現在値: 継承） */
  /* line-height: 1.5; */
  /* 【新規追加】最新版sanitize.cssより - 単語の改行制御 */
  /* word-break: break-word; */
  /* スクロール設定（必要に応じてコメントアウト） */
  /* オーバーレイスクロールバーを使用しないすべてのブラウザ */
  /* overflow-y: scroll; */
  /* Edge 12以降、Internet Explorer 11以前 */
  /* -ms-overflow-style: -ms-autohiding-scrollbar; */
  /* デフォルトカラー（:rootで設定されない場合のフォールバック） */
  color: #000;
  background: #FFF;
}

body {
  font-size: 10px;
  font-size: 1rem;
  line-height: 1;
  position: relative;
  /* テキスト調整（念のため body にも設定） */
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
  /* 【新規追加】最新版ONZE RESET CSSより - 日本語組版とテキスト処理 */
  line-break: strict;
  overflow-wrap: break-word;
  overflow-wrap: anywhere;
  /*word-break: normal;
   -webkit-font-smoothing: antialiased;
  font-feature-settings: "palt"; */
}

/* =================================================================
   # HTML5 Display Definitions
   ================================================================= */
/* HTML5要素のブロック表示 */
/* Android 4.3以前、Internet Explorer 11以前、Windows Phone 8.1以降 */
article,
aside,
details,
dialog,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section {
  display: block;
}

/* 【変更候補】最新版ONZE RESET CSSより - figcaption, figure, hgroup, menu を削除 */
/* article,
aside,
details,
dialog,
footer,
header,
main,
nav,
section {
  display: block;
} */
/* インライン要素 */
audio,
canvas,
video {
  display: inline-block;
}

/* 【変更候補】最新版ONZE RESET CSSより - block表示に変更 */
/* audio,
canvas,
video {
  display: block;
} */
/* 【新規追加】最新版sanitize.cssより - canvas要素の明示的なインライン表示（IE9対応） */
/* canvas {
  display: inline-block;
} */
/* 非表示要素 */
/* Chrome 44以前、iOS 8以降、Safari 9以降 */
audio:not([controls]) {
  display: none;
}

/* Android 4.3以前、Internet Explorer 11以前、iOS 7以前、Safari 7以前、Windows Phone 8.1以降 */
template,
[hidden] {
  display: none; /* Internet Explorer 10以前 */
}

/* Edge 12以降、Firefox 40以降、Internet Explorer 11以前、Windows Phone 8.1以降 */
details {
  display: block;
}

/* Firefox 40以降、Internet Explorer 11以前、Windows Phone 8.1以降 */
summary {
  display: block;
}

/* 【変更候補】最新版sanitize.cssより - display: list-item（現在値: block） */
/* summary {
  display: list-item;
} */
/* =================================================================
   # Typography
   ================================================================= */
/* 見出しのリセット */
h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}

/* 【変更候補】最新版sanitize.cssより - h1要素のスタイルを維持 */
/* h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
} */
/* リスト */
ol, ul {
  list-style: none;
}

/* 【新規追加】最新版sanitize.cssより - ネストされたリストのマージン削除 */
/* dl dl,
dl ol,
dl ul,
ol dl,
ul dl,
ol ol,
ol ul,
ul ol,
ul ul {
  margin: 0;
} */
/* 【新規追加】最新版sanitize.cssより - navリストのパディング削除 */
/* nav ol,
nav ul {
  list-style: none;
  padding: 0;
} */
/* 引用 */
blockquote, q {
  quotes: none;
}

blockquote::before,
blockquote::after,
q::before,
q::after {
  content: "";
  content: none;
}

/* その他のテキスト要素 */
/* 継承を異なる方法で処理することを検討、IE6を少し失敗させるかも... */
address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
  font-style: normal;
  font-weight: normal;
}

/* 【新規追加】最新版sanitize.cssより - strongとbの太字を維持 */
/* b,
strong {
  font-weight: bolder;
} */
/* 【新規追加】最新版sanitize.cssより - abbr要素の下線装飾 */
/* abbr[title] {
  text-decoration: underline;
  text-decoration: underline dotted;
} */
/* コード要素 */
/* コード要素のフォントファミリーを指定 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
}

/* 【新規追加】最新版sanitize.cssより - code,kbd,sampのフォントサイズ */
/* code,
kbd,
samp {
  font-size: 1em;
} */
/* Internet Explorer 11以前 */
pre {
  overflow: auto;
}

/* 【新規追加】最新版sanitize.cssより - preのフォントサイズ */
/* pre {
  font-size: 1em;
} */
/* 小さいテキスト */
/* すべてのブラウザ */
small {
  font-size: 75%;
}

/* 【変更候補】最新版sanitize.cssより - font-size: 80%（現在値: 75%） */
/* small {
  font-size: 80%;
} */
/* 上付き・下付き文字 */
/* 行の高さとセレクタの外観を保持するため */
sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

/* 略語 */
abbr,
acronym {
  border: 0;
  font-variant: normal;
}

/* =================================================================
   # Links
   ================================================================= */
/* アンカーのテキスト装飾を指定 */
a {
  text-decoration: none;
  background-color: transparent;
  /* 【新規追加】最新版ONZE RESET CSSより - タップハイライトを無効化 */
  /* -webkit-tap-highlight-color: transparent; */
}

/* =================================================================
   # Embedded Content
   ================================================================= */
img,
fieldset {
  border: 0;
}

/* 【新規追加】最新版ONZE RESET CSSより - picture要素の追加 */
/* img,
picture,
fieldset {
  border: 0;
} */
/* メディア要素の垂直配置 */
/* メディア要素の配置を指定 */
audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

/* 【新規追加】最新版sanitize.cssより - iframeのボーダー削除 */
/* iframe {
  border-style: none;
} */
/* SVGのオーバーフロー */
/* Internet Explorer 11以前 */
svg:not(:root) {
  overflow: hidden;
}

/* 【新規追加】最新版sanitize.cssより - SVGの塗りつぶし色を自動設定 */
/* svg:not([fill]) {
  fill: currentColor;
} */
/* =================================================================
   # Tables
   ================================================================= */
/* テーブルのボーダースタイルを指定 */
table {
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show;
}

caption,
th {
  text-align: left;
}

/* =================================================================
   # Forms
   ================================================================= */
/* フォーム要素の基本設定 */
/* 1. フォーム要素のフォント継承を指定 */
/* 1. フォーム要素に、フォントの継承を指定。 */
/* フォーム要素の継承された色とフォントを指定 */
button,
input,
optgroup,
select,
textarea {
  font: inherit; /* 1 */
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  font-style: inherit;
  color: inherit;
  /* フォーム要素の背景色を指定 */
  background-color: transparent;
  /* すべてのブラウザでデフォルトのボタンスタイルを削除 */
  /* すべてのブラウザにおいて、デフォルトのボタンのスタイルを削除。 */
  border-style: none;
  vertical-align: middle;
}

/* 【新規追加】最新版sanitize.cssより - button,input,selectのマージン削除（Safari対応） */
/* button,
input,
select {
  margin: 0;
} */
/* IE対応 */
/* IEでリサイズを有効にするため */
input,
textarea,
select {
  *font-size: 100%;
}

/* 最小高さ */
/* フォーム要素の最小高さを指定 */
button,
[type=button],
[type=date],
[type=datetime],
[type=datetime-local],
[type=email],
[type=month],
[type=number],
[type=password],
[type=reset],
[type=search],
[type=submit],
[type=tel],
[type=text],
[type=time],
[type=url],
[type=week],
select,
textarea {
  min-height: 1.5em;
}

/* ボタン要素 */
/* Internet Explorer 11以前 */
/* 1. IE 8/9/10/11で`overflow`を`hidden`に設定する問題に対処 */
/* 1. IE8/9/10/11に、overflow時にhiddenを設定。 */
button {
  overflow: visible; /* 1 */
  /* 1. Firefox 40以降、Internet Explorer 11以前 */
  text-transform: none; /* 1 */
  /* iOS 8以降 */
  -webkit-appearance: button;
}

/* Firefox 4以降で内側のpaddingとborderを削除 */
/* Firefox4+に、内側のpaddingとborderを削除。 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: 0;
  padding: 0;
}

/* 上記のボーダーリセットで削除されたフォーカススタイルを置き換え */
/* 1. フォーカス時のスタイルを定義。 */
button:-moz-focusring,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  outline: 1px dotted ButtonText;
}

/* 【新規追加】最新版sanitize.cssより - Moz固有のフォーカス設定 */
/* ::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

:-moz-focusring {
  outline: 1px dotted ButtonText;
} */
/* Input要素の特殊設定 */
input {
  /* iOS 8以降 */
  border-radius: 0;
}

/* 1. Android 4でネイティブの`audio`と`video`コントロールを破壊するWebKitバグを防ぐ */
/* 2. iOSでクリッカブルなタイプをスタイルできない問題を修正 */
/* 1. Android4に、ネイティブのaudio要素とvideo要素のコントロールのバグを防ぐ。 */
/* 2. iOSに、クリッカブルなbutton要素のtypeのスタイルを修正。 */
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button; /* 2 */
}

/* 1. Firefox 36以降 */
[type=number] {
  width: auto; /* 1 */
}

/* 1. Safari 8以降 */
/* 1. ChromeとSafariで奇妙な外観を修正 */
/* 2. Safariでアウトラインスタイルを修正 */
/* 1. ChromeとSafariに、アピアランスを修正。 */
/* 2. Safariに、アウトラインを修正。 */
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/* 1. Safari 8 */
/* Chrome 45以降、Safari 9以降 */
[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none; /* 1 */
}

/* 【新規追加】最新版sanitize.cssより - macOSでの検索装飾の削除 */
/* ::-webkit-search-decoration {
  -webkit-appearance: none;
} */
/* Select要素 */
/* 標準的なinput要素のようにselectをスタイル */
/* 標準的なinput要素のスタイルを選択。 */
/* 1. Firefox 36以降、2. Chrome 41以降 */
select {
  -moz-appearance: none; /* 1 */
  -webkit-appearance: none; /* 2 */
  /* 1. Firefox 40以降、Internet Explorer 11以前 */
  text-transform: none; /* 1 */
}

/* 1. Internet Explorer 11以降 */
select::-ms-expand {
  display: none; /* 1 */
}

/* 1. Internet Explorer 11以降 */
select::-ms-value {
  color: currentColor; /* 1 */
}

/* Textarea */
/* 1. Internet Explorer 11以降 */
/* 2. textareaのリサイズ可能性を指定 */
/* 1. Internet Explorer 11以降 */
/* 2. textarea要素に、垂直方向のリサイズを指定。 */
textarea {
  overflow: auto; /* 1 */
  /* textareaのリサイズ可能性を指定 */
  resize: vertical; /* 2 */
}

/* 【新規追加】最新版sanitize.cssより - textareaのマージン削除 */
/* textarea {
  margin: 0;
} */
/* その他のフォーム要素 */
/* 1. 前のルールで解除されたフォントの太さを復元。 */
/* 1. 前の指定により、フォントのウェイトを再定義。 */
optgroup {
  font-weight: bold; /* 1 */
}

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

/* 1. IE 8/9/10/11で`color`が継承されない問題を修正 */
/* 2. IEで`fieldset`要素からの色の継承を修正 */
/* 3. EdgeとIEでテキストの折り返しを修正 */
/* 4. EdgeとIEでテキストの折り返しを修正 */
/* 5. EdgeとIEでテキストの折り返しを修正 */
/* 1. IE 8/9/10/11に、カラーの継承を定義。 */
/* 2. IEに、fieldset要素からカラーを継承するように定義。 */
/* 3. EdgeとIEに、テキストのラッピングを修正。 */
/* 4. EdgeとIEに、テキストのラッピングを修正。 */
/* 5. EdgeとIEに、テキストのラッピングを修正。 */
/* legendはIEで継承しないため */
legend {
  border: 0; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 3 */
  max-width: 100%; /* 4 */
  white-space: normal; /* 5 */
  color: #000;
}

/* 1. iOSとSafariでクリッカブルなタイプをスタイルできない問題を修正 */
/* 2. ChromeとSafariでフォントプロパティを`inherit`に変更 */
/* 1. iOSとSafariに、クリッカブルなtypeのスタイルを修正。 */
/* 2. ChromeとSafariに、フォントプロパティの継承を変更。 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Chrome、Edge、Safariでプレースホルダーのテキストスタイルを修正 */
/* Chrome, Edge, Safariに、テキストのスタイルを修正。 */
::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54;
}

/* =================================================================
   # Other Elements
   ================================================================= */
/* Internet Explorer 11以前、Windows Phone 8.1以降 */
progress {
  display: inline-block;
}

br,
hr {
  display: block;
}

/* 【新規追加】最新版sanitize.cssより - hrの高さとオーバーフロー設定 */
/* hr {
  height: 0;
  overflow: visible;
} */
/* =================================================================
   # Accessibility
   ================================================================= */
/* 更新中の要素のプログレスカーソルを指定 */
[aria-busy=true] {
  cursor: progress;
}

/* トリガー要素のポインターカーソルを指定 */
[aria-controls] {
  cursor: pointer;
}

/* 無効、編集不可、その他操作不能な要素のスタイルなしカーソルを指定 */
[aria-disabled] {
  cursor: default;
}

/* 視覚的に隠されているがアクセス可能な要素のスタイルを指定 */
[hidden][aria-hidden=false] {
  clip: rect(0 0 0 0);
  display: inherit;
  position: absolute;
}

[hidden][aria-hidden=false]:focus {
  clip: auto;
}

/* 【新規追加】最新版sanitize.cssより - 異なるアクセシビリティ実装 */
/* [aria-hidden="false"][hidden] {
  display: initial;
}

[aria-hidden="false"][hidden]:not(:focus) {
  clip: rect(0, 0, 0, 0);
  position: absolute;
} */
/* 【新規追加】最新版sanitize.cssより - disabledのカーソル */
/* [aria-disabled="true"],
[disabled] {
  cursor: not-allowed;
} */
/* 【新規追加】最新版sanitize.cssより - タッチデバイス操作の最適化 */
/* a,
area,
button,
input,
label,
select,
summary,
textarea,
[tabindex] {
  -ms-touch-action: manipulation;
  touch-action: manipulation;
} */
/* 【新規追加】最新版sanitize.cssより - dialog要素の詳細スタイル */
/* dialog {
  background-color: white;
  border: solid;
  color: black;
  display: block;
  height: -moz-fit-content;
  height: -webkit-fit-content;
  height: fit-content;
  left: 0;
  margin: auto;
  padding: 1em;
  position: absolute;
  right: 0;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

dialog:not([open]) {
  display: none;
} */
/* 【新規追加】最新版sanitize.cssより - fieldsetのスタイル（要注意：レイアウトに影響） */
/* fieldset {
  border: 1px solid #a0a0a0;
  padding: 0.35em 0.75em 0.625em;
} */
/* 【新規追加】最新版sanitize.cssより - その他のフォーム要素 */
/* input {
  overflow: visible;
}

progress {
  vertical-align: baseline;
}

[type="checkbox"],
[type="radio"] {
  padding: 0;
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

:-moz-ui-invalid {
  box-shadow: none;
} */
/*
 * =================================================================
 * 最新版（2024年）による主な変更点まとめ
 * =================================================================
 *
 * 【ONZE RESET CSS v1.2 (2024.10.21)からの変更】
 * 1. メディア要素（img, video等）のmax-width: 100%追加 → レスポンシブ対応強化
 * 2. 日本語組版の最適化（font-feature-settings: "palt"等）
 * 3. テキスト折り返しの詳細制御（line-break, overflow-wrap）
 * 4. -webkit-font-smoothingによるフォント表示の最適化
 * 5. picture要素の追加
 * 6. -webkit-tap-highlight-colorでタップハイライトを透明化
 * 7. figcaption, figure, hgroup, menu要素を削除（シンプル化）
 *
 * 【最新版sanitize.cssからの変更】
 * 1. h1要素のデフォルトスタイル維持オプション
 * 2. dialog要素の詳細なスタイル定義
 * 3. タッチデバイス対応（touch-action: manipulation）
 * 4. fieldsetのボーダーとパディング（要注意）
 * 5. SVGの塗りつぶし色自動設定
 * 6. より詳細なアクセシビリティ対応
 * 7. strong/b要素の太字維持
 * 8. abbr[title]の下線装飾
 * 9. ネストされたリストのマージン制御
 * 10. フォーム要素のマージン削除（Safari対応）
 *
 * 【レイアウトへの影響が予想される項目】
 * - メディア要素のmax-width: 100% → 画像サイズが変わる可能性
 * - fieldsetのボーダー/パディング → フォームレイアウトが変わる可能性
 * - h1のfont-size/margin維持 → 見出しのサイズが変わる可能性
 * - overflow-wrap: anywhere → テキストの折り返し位置が変わる可能性
 * - strong/b要素の太字維持 → テキストの太さが変わる可能性
 * - summaryのdisplay: list-item → details要素の表示が変わる可能性
 *
 * 【採用推奨項目】
 * - 日本語組版の最適化（font-feature-settings等）
 * - タッチデバイス対応（touch-action）
 * - SVGの塗りつぶし色自動設定
 * - アクセシビリティ強化
 */
/* =================================================================
   # YUI CSS Detection Stamp
   ================================================================= */
#yui3-css-stamp.cssreset {
  display: none;
}

/* ================================================================
 * 変数定義ファイル
 *
 * このファイルではプロジェクト全体で使用する変数を定義します
 * セクション構成：
 * 1. パス設定
 * 2. フォントファミリー設定
 * 3. フォントサイズ・行間設定
 * 4. カラー設定
 * 5. ブレイクポイント設定
 * 6. レスポンシブ用サイズ計算
 * 7. フォーム要素設定
 * ================================================================ */
/* ================================================================
 * Mixin定義ファイル
 *
 * このファイルではプロジェクト全体で使用するmixinを定義します
 * セクション構成：
 * 1. モジュールインポート・基本設定
 * 2. レスポンシブフォントサイズ関連
 * 3. レイアウト・装飾関連
 * 4. トランジション・アニメーション関連
 * 5. フォーム要素関連
 * 6. その他ユーティリティ
 * ================================================================ */
:root {
  --fs-10: clamp(0.857rem, min(max(calc(6.9357142857px + 0.212797619vw), 0.857rem), max(1rem, 1rem + (100vw - 1980px) * 0.0050505051)), 999rem);
  --fs-11: clamp(0.9427rem, min(max(calc(7.6292857143px + 0.234077381vw), 0.9427rem), max(1.1rem, 1.1rem + (100vw - 1980px) * 0.0055555556)), 999rem);
  --fs-12: clamp(1.0284rem, min(max(calc(8.3228571429px + 0.2553571429vw), 1.0284rem), max(1.2rem, 1.2rem + (100vw - 1980px) * 0.0060606061)), 999rem);
  --fs-13: clamp(1.1141rem, min(max(calc(9.0164285714px + 0.2766369048vw), 1.1141rem), max(1.3rem, 1.3rem + (100vw - 1980px) * 0.0065656566)), 999rem);
  --fs-14: clamp(1.1998rem, min(max(calc(9.71px + 0.2979166667vw), 1.1998rem), max(1.4rem, 1.4rem + (100vw - 1980px) * 0.0070707071)), 999rem);
  --fs-15: clamp(1.2855rem, min(max(calc(10.4035714286px + 0.3191964286vw), 1.2855rem), max(1.5rem, 1.5rem + (100vw - 1980px) * 0.0075757576)), 999rem);
  --fs-16: clamp(1.3712rem, min(max(calc(11.0971428571px + 0.3404761905vw), 1.3712rem), max(1.6rem, 1.6rem + (100vw - 1980px) * 0.0080808081)), 999rem);
  --fs-17: clamp(1.4569rem, min(max(calc(11.7907142857px + 0.3617559524vw), 1.4569rem), max(1.7rem, 1.7rem + (100vw - 1980px) * 0.0085858586)), 999rem);
  --fs-18: clamp(1.5426rem, min(max(calc(12.4842857143px + 0.3830357143vw), 1.5426rem), max(1.8rem, 1.8rem + (100vw - 1980px) * 0.0090909091)), 999rem);
  --fs-19: clamp(1.6283rem, min(max(calc(13.1778571429px + 0.4043154762vw), 1.6283rem), max(1.9rem, 1.9rem + (100vw - 1980px) * 0.0095959596)), 999rem);
  --fs-20: clamp(1.714rem, min(max(calc(13.8714285714px + 0.4255952381vw), 1.714rem), max(2rem, 2rem + (100vw - 1980px) * 0.0101010101)), 999rem);
  --fs-24: clamp(2.0568rem, min(max(calc(16.6457142857px + 0.5107142857vw), 2.0568rem), max(2.4rem, 2.4rem + (100vw - 1980px) * 0.0121212121)), 999rem);
  --fs-28: clamp(2.3996rem, min(max(calc(19.42px + 0.5958333333vw), 2.3996rem), max(2.8rem, 2.8rem + (100vw - 1980px) * 0.0141414141)), 999rem);
  --fs-32: clamp(2.7424rem, min(max(calc(22.1942857143px + 0.680952381vw), 2.7424rem), max(3.2rem, 3.2rem + (100vw - 1980px) * 0.0161616162)), 999rem);
  --fs-36: clamp(3.0852rem, min(max(calc(24.9685714286px + 0.7660714286vw), 3.0852rem), max(3.6rem, 3.6rem + (100vw - 1980px) * 0.0181818182)), 999rem);
  --fs-40: clamp(3.428rem, min(max(calc(27.7428571429px + 0.8511904762vw), 3.428rem), max(4rem, 4rem + (100vw - 1980px) * 0.0202020202)), 999rem);
  --fs-48: clamp(4.1136rem, min(max(calc(33.2914285714px + 1.0214285714vw), 4.1136rem), max(4.8rem, 4.8rem + (100vw - 1980px) * 0.0242424242)), 999rem);
  --fs-56: clamp(4.7992rem, min(max(calc(38.84px + 1.1916666667vw), 4.7992rem), max(5.6rem, 5.6rem + (100vw - 1980px) * 0.0282828283)), 999rem);
  --fs-64: clamp(5.4848rem, min(max(calc(44.3885714286px + 1.3619047619vw), 5.4848rem), max(6.4rem, 6.4rem + (100vw - 1980px) * 0.0323232323)), 999rem);
}

.fs-10 {
  font-size: var(--fs-10);
}

.fs-11 {
  font-size: var(--fs-11);
}

.fs-12 {
  font-size: var(--fs-12);
}

.fs-13 {
  font-size: var(--fs-13);
}

.fs-14 {
  font-size: var(--fs-14);
}

.fs-15 {
  font-size: var(--fs-15);
}

.fs-16 {
  font-size: var(--fs-16);
}

.fs-17 {
  font-size: var(--fs-17);
}

.fs-18 {
  font-size: var(--fs-18);
}

.fs-19 {
  font-size: var(--fs-19);
}

.fs-20 {
  font-size: var(--fs-20);
}

.fs-24 {
  font-size: var(--fs-24);
}

.fs-28 {
  font-size: var(--fs-28);
}

.fs-32 {
  font-size: var(--fs-32);
}

.fs-36 {
  font-size: var(--fs-36);
}

.fs-40 {
  font-size: var(--fs-40);
}

.fs-48 {
  font-size: var(--fs-48);
}

.fs-56 {
  font-size: var(--fs-56);
}

.fs-64 {
  font-size: var(--fs-64);
}

/* ================================================================
 * ユーティリティクラス定義ファイル
 *
 * このファイルではプロジェクト全体で使用するユーティリティクラスを定義します
 * 命名規則: u-[プロパティ名][値][--デバイス]
 *
 * セクション構成：
 * 1. レイアウト関連
 *    - clearfix, align, center, float
 * 2. 表示制御
 *    - hidden, block, inline-block
 * 3. タイポグラフィ
 *    - font-weight, font-size, line-height, indent
 * 4. カラー
 *    - text color, background color
 * 5. サイズ・スペーシング
 *    - width（個別定義推奨）
 *    - margin（0リセットのみ）
 *    - padding（0リセットのみ）
 * 6. レスポンシブスペーサー
 *    - 可変マージン（vw単位）
 * 7. その他
 *    - 画像, opacity効果
 * ================================================================ */
.u-clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.u-clearfix {
  min-height: 0.1px;
}

* html .u-clearfix {
  height: 1px;
  /*¥*/ /*/
height: auto;
overflow: hidden;
/**/
}

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

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

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

@media screen and (min-width:768px) {
  .u-aLeft--pc {
    text-align: left !important;
  }
  .u-aCenter--pc {
    text-align: center !important;
  }
  .u-aRight--pc {
    text-align: right !important;
  }
}
@media screen and (max-width: 767px) {
  .u-aLeft--sp {
    text-align: left !important;
  }
  .u-aCenter--sp {
    text-align: center !important;
  }
  .u-aRight--sp {
    text-align: right !important;
  }
}
.u-bCenter {
  margin: 0 auto !important;
}
@media screen and (min-width:768px) {
  .u-bCenter {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}

.u-fRight {
  float: right;
}

.u-fLeft {
  float: left;
}

.u-hidden {
  display: none;
}

@media screen and (max-width: 767px) {
  .u-hidden--sp {
    display: none;
  }
}

@media screen and (min-width:768px) {
  .u-hidden--pc {
    display: none;
  }
}

.u-block {
  display: block !important;
}

.u-inBlock {
  display: inline-block !important;
}

.u-fwNml {
  font-weight: 400 !important;
}

.u-fwMid {
  font-weight: 500 !important;
}

.u-fwBold {
  font-weight: 700 !important;
}

.u-indent {
  text-indent: -1em;
  padding-left: 1em;
}

.u-indent_att {
  display: inline-block;
  text-indent: -1em;
  padding-left: 1em;
}

.u-lh_xs {
  line-height: 1.3;
}

.u-lh_ss {
  line-height: 1.4;
}

.u-lh_s {
  line-height: 1.6;
}

.u-lh_m {
  line-height: 1.8;
}

.u-lh_l {
  line-height: 2;
}

.u-lh_ll {
  line-height: 2.2;
}

.u-lh_xl {
  line-height: 2.4;
}

.u-clrWht {
  color: #fff !important;
}

.u-clrBlck {
  color: #000 !important;
}

.u-clrGry {
  color: #ddd !important;
}

.u-clrBase {
  color: #fff !important;
}

.u-clrMain {
  color: #053F8D !important;
}

.u-clrAccent {
  color: #0DCEC7 !important;
}

.u-clrPrimary {
  color: #fff !important;
}

.u-clrSuccess {
  color: #fff !important;
}

.u-clrInfo {
  color: #fff !important;
}

.u-clrDanger {
  color: #fff !important;
}

.u-clrWarning {
  color: #fff !important;
}

.u-bgClrBlck {
  background: #000 !important;
}

.u-bgClrWht {
  background: #fff !important;
}

.u-bgClrGry {
  background: #ddd !important;
}

.u-bgClrBase {
  background: #fff !important;
}

.u-bgClrMain {
  background: #053F8D !important;
}

.u-bgClrAccent {
  background: #0DCEC7 !important;
}

.u-bgClrPrimary {
  background: #fff !important;
}

.u-bgClrSuccess {
  background: #fff !important;
}

.u-bgClrInfo {
  background: #fff !important;
}

.u-bgClrDanger {
  background: #fff !important;
}

.u-bgClrWarning {
  background: #fff !important;
}

.u-mt0 {
  margin-top: 0 !important;
}

.u-mb0 {
  margin-bottom: 0 !important;
}

.u-mr0 {
  margin-right: 0 !important;
}

.u-ml0 {
  margin-left: 0 !important;
}

.u-m0 {
  margin: 0 !important;
}

@media screen and (min-width:768px) {
  .u-mt0--pc {
    margin-top: 0 !important;
  }
  .u-mb0--pc {
    margin-bottom: 0 !important;
  }
  .u-mr0--pc {
    margin-right: 0 !important;
  }
  .u-ml0--pc {
    margin-left: 0 !important;
  }
  .u-m0--pc {
    margin: 0 !important;
  }
}
@media screen and (max-width: 767px) {
  .u-mt0--sp {
    margin-top: 0 !important;
  }
  .u-mb0--sp {
    margin-bottom: 0 !important;
  }
  .u-mr0--sp {
    margin-right: 0 !important;
  }
  .u-ml0--sp {
    margin-left: 0 !important;
  }
  .u-m0--sp {
    margin: 0 !important;
  }
}
.u-pt0 {
  padding-top: 0 !important;
}

.u-pb0 {
  padding-bottom: 0 !important;
}

.u-pr0 {
  padding-right: 0 !important;
}

.u-pl0 {
  padding-left: 0 !important;
}

.u-p0 {
  padding: 0 !important;
}

@media screen and (min-width:768px) {
  .u-pt0--pc {
    padding-top: 0 !important;
  }
  .u-pb0--pc {
    padding-bottom: 0 !important;
  }
  .u-pr0--pc {
    padding-right: 0 !important;
  }
  .u-pl0--pc {
    padding-left: 0 !important;
  }
  .u-p0--pc {
    padding: 0 !important;
  }
}
@media screen and (max-width: 767px) {
  .u-pt0--sp {
    padding-top: 0 !important;
  }
  .u-pb0--sp {
    padding-bottom: 0 !important;
  }
  .u-pr0--sp {
    padding-right: 0 !important;
  }
  .u-pl0--sp {
    padding-left: 0 !important;
  }
  .u-p0--sp {
    padding: 0 !important;
  }
}
@media screen and (max-width: 767px) {
  .u-spacerVW--xxs {
    margin-top: clamp(4px, 1.0666666667vw, 6px) !important;
  }
}
@media screen and (min-width:768px) {
  .u-spacerVW--xxs {
    margin-top: clamp(5.694444448px, 0.5555555556vw, 10.6648px) !important;
  }
}

@media screen and (max-width: 767px) {
  .u-spacerVW--xs {
    margin-top: clamp(8px, 2.1333333333vw, 12px) !important;
  }
}
@media screen and (min-width:768px) {
  .u-spacerVW--xs {
    margin-top: clamp(11.388888896px, 1.1111111111vw, 21.3296px) !important;
  }
}

@media screen and (max-width: 767px) {
  .u-spacerVW--ss {
    margin-top: clamp(12px, 3.2vw, 18px) !important;
  }
}
@media screen and (min-width:768px) {
  .u-spacerVW--ss {
    margin-top: clamp(17.083333344px, 1.6666666667vw, 31.9944px) !important;
  }
}

@media screen and (max-width: 767px) {
  .u-spacerVW--s {
    margin-top: clamp(16px, 4.2666666667vw, 24px) !important;
  }
}
@media screen and (min-width:768px) {
  .u-spacerVW--s {
    margin-top: clamp(22.777777792px, 2.2222222222vw, 42.6592px) !important;
  }
}

@media screen and (max-width: 767px) {
  .u-spacerVW--m {
    margin-top: clamp(20px, 5.3333333333vw, 30px) !important;
  }
}
@media screen and (min-width:768px) {
  .u-spacerVW--m {
    margin-top: clamp(28.47222224px, 2.7777777778vw, 53.324px) !important;
  }
}

@media screen and (max-width: 767px) {
  .u-spacerVW--l {
    margin-top: clamp(32px, 8.5333333333vw, 48px) !important;
  }
}
@media screen and (min-width:768px) {
  .u-spacerVW--l {
    margin-top: clamp(45.555555584px, 4.4444444444vw, 85.3184px) !important;
  }
}

@media screen and (max-width: 767px) {
  .u-spacerVW--ll {
    margin-top: clamp(40px, 10.6666666667vw, 60px) !important;
  }
}
@media screen and (min-width:768px) {
  .u-spacerVW--ll {
    margin-top: clamp(56.94444448px, 5.5555555556vw, 106.648px) !important;
  }
}

@media screen and (max-width: 767px) {
  .u-spacerVW--xl {
    margin-top: clamp(50px, 13.3333333333vw, 75px) !important;
  }
}
@media screen and (min-width:768px) {
  .u-spacerVW--xl {
    margin-top: clamp(71.1805556px, 6.9444444444vw, 133.31px) !important;
  }
}

@media screen and (max-width: 767px) {
  .u-spacerVW--xxl {
    margin-top: clamp(60px, 16vw, 90px) !important;
  }
}
@media screen and (min-width:768px) {
  .u-spacerVW--xxl {
    margin-top: clamp(85.41666672px, 8.3333333333vw, 159.972px) !important;
  }
}

.u-imgfull {
  width: 100%;
  height: auto;
}

@media screen and (max-width: 767px) {
  .u-imgfull--sp {
    width: 100%;
    height: auto;
  }
}

@media screen and (min-width:768px) {
  .u-hoverOpacity--pc {
    -webkit-transition: all 0.2s ease-in-out 0s;
    transition: all 0.2s ease-in-out 0s;
  }
}
@media screen and (min-width:768px) {
  .u-hoverOpacity--pc:hover {
    opacity: 0.8;
    filter: alpha(opacity=80);
  }
}

.u-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.u-flex--end {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media screen and (max-width: 767px) {
  .u-gap--xxs {
    -webkit-column-gap: clamp(4px, 1.0666666667vw, 6px) !important;
       -moz-column-gap: clamp(4px, 1.0666666667vw, 6px) !important;
            column-gap: clamp(4px, 1.0666666667vw, 6px) !important;
  }
}
@media screen and (min-width:768px) {
  .u-gap--xxs {
    -webkit-column-gap: clamp(5.694444448px, 0.5555555556vw, 10.6648px) !important;
       -moz-column-gap: clamp(5.694444448px, 0.5555555556vw, 10.6648px) !important;
            column-gap: clamp(5.694444448px, 0.5555555556vw, 10.6648px) !important;
  }
}

@media screen and (max-width: 767px) {
  .u-gap--xs {
    -webkit-column-gap: clamp(8px, 2.1333333333vw, 12px) !important;
       -moz-column-gap: clamp(8px, 2.1333333333vw, 12px) !important;
            column-gap: clamp(8px, 2.1333333333vw, 12px) !important;
  }
}
@media screen and (min-width:768px) {
  .u-gap--xs {
    -webkit-column-gap: clamp(11.388888896px, 1.1111111111vw, 21.3296px) !important;
       -moz-column-gap: clamp(11.388888896px, 1.1111111111vw, 21.3296px) !important;
            column-gap: clamp(11.388888896px, 1.1111111111vw, 21.3296px) !important;
  }
}

@media screen and (max-width: 767px) {
  .u-gap--ss {
    -webkit-column-gap: clamp(12px, 3.2vw, 18px) !important;
       -moz-column-gap: clamp(12px, 3.2vw, 18px) !important;
            column-gap: clamp(12px, 3.2vw, 18px) !important;
  }
}
@media screen and (min-width:768px) {
  .u-gap--ss {
    -webkit-column-gap: clamp(17.083333344px, 1.6666666667vw, 31.9944px) !important;
       -moz-column-gap: clamp(17.083333344px, 1.6666666667vw, 31.9944px) !important;
            column-gap: clamp(17.083333344px, 1.6666666667vw, 31.9944px) !important;
  }
}

@media screen and (max-width: 767px) {
  .u-gap--s {
    -webkit-column-gap: clamp(16px, 4.2666666667vw, 24px) !important;
       -moz-column-gap: clamp(16px, 4.2666666667vw, 24px) !important;
            column-gap: clamp(16px, 4.2666666667vw, 24px) !important;
  }
}
@media screen and (min-width:768px) {
  .u-gap--s {
    -webkit-column-gap: clamp(22.777777792px, 2.2222222222vw, 42.6592px) !important;
       -moz-column-gap: clamp(22.777777792px, 2.2222222222vw, 42.6592px) !important;
            column-gap: clamp(22.777777792px, 2.2222222222vw, 42.6592px) !important;
  }
}

.u-att {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 767px) {
  .u-fs--s {
    font-size: clamp(10px, 2.6666666667vw, 15px);
  }
}
@media screen and (min-width:768px) {
  .u-fs--s {
    font-size: clamp(8.541666672px, 0.8333333333vw, 15.9972px);
  }
}

/* ================================================================
 * メンテナンスに関する推奨事項
 *
 * このファイルでは基本的なユーティリティクラスのみを定義しています。
 * 大量のクラス生成は避け、必要最小限のクラスに絞っています。
 *
 * 【追加が必要な場合】
 * プロジェクトで頻繁に使用する値がある場合は、
 * 個別に追加することを推奨します。
 *
 * 例：
 * .u-mt20 { margin-top: 20px !important; }
 * .u-w50 { width: 50% !important; }
 * .u-fs16 { font-size: 16px !important; }
 *
 * 【CSS変数の活用】
 * よく使う値はCSS変数として定義し、
 * それを参照する形にすることで保守性が向上します。
 * ================================================================ */
/* core
-----------------------------------------------------------------*/
/* ----------------------------------------------------------------
base
-----------------------------------------------------------------*/
html {
  font-size: 62.5%;
  width: 100%;
  height: 100%;
  -webkit-text-size-adjust: none;
  /*overflow-y: scroll;*/
  scroll-behavior: smooth;
}

body {
  width: 100%;
  height: 100%;
  font-family: YakuHanJPs, -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans JP", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Sans Emoji";
  font-weight: 400;
  color: #333;
  letter-spacing: 0.1em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
@media screen and (max-width: 767px) {
  body {
    /*font-size: vars.$fsBaseSp + rem;*/
    font-size: clamp(12px, 3.2vw, 18px);
    line-height: 1.8;
  }
}
@media screen and (min-width:768px) {
  body {
    /*font-size: vars.$fsBase + rem;*/
    font-size: clamp(9.965277784px, 0.9722222222vw, 18.6634px);
    line-height: 1.7;
  }
}

a {
  cursor: pointer;
  /*color: vars.$clrAccent;*/
}
a:link, a:visited, a:hover, a:active {
  outline: none;
}

/*!
 * animate.css - https://animate.style/
 * Version - 4.1.1
 * Licensed under the Hippocratic License 2.1 - http://firstdonoharm.dev
 *
 * Copyright (c) 2021 Animate.css
 */
:root {
  --animate-duration: 1.4s;
  --animate-delay: 1s;
  --animate-repeat: 1;
}

.animate__animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-duration: var(--animate-duration);
  animation-duration: var(--animate-duration);
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.animate__animated.animate__infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

.animate__animated.animate__repeat-1 {
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
  -webkit-animation-iteration-count: var(--animate-repeat);
  animation-iteration-count: var(--animate-repeat);
}

.animate__animated.animate__repeat-2 {
  -webkit-animation-iteration-count: 2;
  animation-iteration-count: 2;
  -webkit-animation-iteration-count: calc(var(--animate-repeat) * 2);
  animation-iteration-count: calc(var(--animate-repeat) * 2);
}

.animate__animated.animate__repeat-3 {
  -webkit-animation-iteration-count: 3;
  animation-iteration-count: 3;
  -webkit-animation-iteration-count: calc(var(--animate-repeat) * 3);
  animation-iteration-count: calc(var(--animate-repeat) * 3);
}

.animate__animated.animate__delay-1s {
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
  -webkit-animation-delay: var(--animate-delay);
  animation-delay: var(--animate-delay);
}

.animate__animated.animate__delay-2s {
  -webkit-animation-delay: 2s;
  animation-delay: 2s;
  -webkit-animation-delay: calc(var(--animate-delay) * 2);
  animation-delay: calc(var(--animate-delay) * 2);
}

.animate__animated.animate__delay-3s {
  -webkit-animation-delay: 3s;
  animation-delay: 3s;
  -webkit-animation-delay: calc(var(--animate-delay) * 3);
  animation-delay: calc(var(--animate-delay) * 3);
}

.animate__animated.animate__delay-4s {
  -webkit-animation-delay: 4s;
  animation-delay: 4s;
  -webkit-animation-delay: calc(var(--animate-delay) * 4);
  animation-delay: calc(var(--animate-delay) * 4);
}

.animate__animated.animate__delay-5s {
  -webkit-animation-delay: 5s;
  animation-delay: 5s;
  -webkit-animation-delay: calc(var(--animate-delay) * 5);
  animation-delay: calc(var(--animate-delay) * 5);
}

.animate__animated.animate__faster {
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-duration: calc(var(--animate-duration) / 2);
  animation-duration: calc(var(--animate-duration) / 2);
}

.animate__animated.animate__fast {
  -webkit-animation-duration: 0.8s;
  animation-duration: 0.8s;
  -webkit-animation-duration: calc(var(--animate-duration) * 0.8);
  animation-duration: calc(var(--animate-duration) * 0.8);
}

.animate__animated.animate__slow {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-duration: calc(var(--animate-duration) * 2);
  animation-duration: calc(var(--animate-duration) * 2);
}

.animate__animated.animate__slower {
  -webkit-animation-duration: 3s;
  animation-duration: 3s;
  -webkit-animation-duration: calc(var(--animate-duration) * 3);
  animation-duration: calc(var(--animate-duration) * 3);
}

@media print, (prefers-reduced-motion: reduce) {
  .animate__animated {
    -webkit-animation-duration: 1ms !important;
    animation-duration: 1ms !important;
    -webkit-transition-duration: 1ms !important;
    transition-duration: 1ms !important;
    -webkit-animation-iteration-count: 1 !important;
    animation-iteration-count: 1 !important;
  }
  .animate__animated[class*=Out] {
    opacity: 0;
  }
}
/* Attention seekers  */
@-webkit-keyframes bounce {
  from, 20%, 53%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0) scaleY(1.1);
    transform: translate3d(0, -30px, 0) scaleY(1.1);
  }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0) scaleY(1.05);
    transform: translate3d(0, -15px, 0) scaleY(1.05);
  }
  80% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0) scaleY(0.95);
    transform: translate3d(0, 0, 0) scaleY(0.95);
  }
  90% {
    -webkit-transform: translate3d(0, -4px, 0) scaleY(1.02);
    transform: translate3d(0, -4px, 0) scaleY(1.02);
  }
}
@keyframes bounce {
  from, 20%, 53%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0) scaleY(1.1);
    transform: translate3d(0, -30px, 0) scaleY(1.1);
  }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0) scaleY(1.05);
    transform: translate3d(0, -15px, 0) scaleY(1.05);
  }
  80% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0) scaleY(0.95);
    transform: translate3d(0, 0, 0) scaleY(0.95);
  }
  90% {
    -webkit-transform: translate3d(0, -4px, 0) scaleY(1.02);
    transform: translate3d(0, -4px, 0) scaleY(1.02);
  }
}
.animate__bounce {
  -webkit-animation-name: bounce;
  animation-name: bounce;
  -webkit-transform-origin: center bottom;
  -ms-transform-origin: center bottom;
      transform-origin: center bottom;
}

@-webkit-keyframes flash {
  from, 50%, to {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}
@keyframes flash {
  from, 50%, to {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}
.animate__flash {
  -webkit-animation-name: flash;
  animation-name: flash;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
.animate__pulse {
  -webkit-animation-name: pulse;
  animation-name: pulse;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
}

@-webkit-keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1);
  }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1);
  }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1);
  }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1);
  }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
.animate__rubberBand {
  -webkit-animation-name: rubberBand;
  animation-name: rubberBand;
}

@-webkit-keyframes shakeX {
  from, to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }
  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}
@keyframes shakeX {
  from, to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }
  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}
.animate__shakeX {
  -webkit-animation-name: shakeX;
  animation-name: shakeX;
}

@-webkit-keyframes shakeY {
  from, to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }
}
@keyframes shakeY {
  from, to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }
}
.animate__shakeY {
  -webkit-animation-name: shakeY;
  animation-name: shakeY;
}

@-webkit-keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg);
  }
  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg);
  }
  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg);
  }
  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg);
  }
  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}
@keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg);
  }
  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg);
  }
  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg);
  }
  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg);
  }
  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}
.animate__headShake {
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-name: headShake;
  animation-name: headShake;
}

@-webkit-keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg);
  }
  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg);
  }
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg);
  }
  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg);
  }
  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg);
  }
}
@keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg);
  }
  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg);
  }
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg);
  }
  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg);
  }
  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg);
  }
}
.animate__swing {
  -webkit-transform-origin: top center;
  -ms-transform-origin: top center;
      transform-origin: top center;
  -webkit-animation-name: swing;
  animation-name: swing;
}

@-webkit-keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  10%, 20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
  }
  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }
  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  10%, 20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
  }
  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }
  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
.animate__tada {
  -webkit-animation-name: tada;
  animation-name: tada;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes wobble {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }
  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }
  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }
  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }
  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes wobble {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }
  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }
  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }
  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }
  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__wobble {
  -webkit-animation-name: wobble;
  animation-name: wobble;
}

@-webkit-keyframes jello {
  from, 11.1%, to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }
  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg);
  }
  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }
  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }
  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }
  77.7% {
    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }
  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}
@keyframes jello {
  from, 11.1%, to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }
  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg);
  }
  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }
  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }
  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }
  77.7% {
    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }
  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}
.animate__jello {
  -webkit-animation-name: jello;
  animation-name: jello;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
      transform-origin: center;
}

@-webkit-keyframes heartBeat {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  14% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }
  28% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  42% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }
  70% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@keyframes heartBeat {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  14% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }
  28% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  42% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }
  70% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
.animate__heartBeat {
  -webkit-animation-name: heartBeat;
  animation-name: heartBeat;
  -webkit-animation-duration: 1.3s;
  animation-duration: 1.3s;
  -webkit-animation-duration: calc(var(--animate-duration) * 1.3);
  animation-duration: calc(var(--animate-duration) * 1.3);
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
}

/* Back entrances */
@-webkit-keyframes backInDown {
  0% {
    -webkit-transform: translateY(-1200px) scale(0.7);
    transform: translateY(-1200px) scale(0.7);
    opacity: 0.7;
  }
  80% {
    -webkit-transform: translateY(0px) scale(0.7);
    transform: translateY(0px) scale(0.7);
    opacity: 0.7;
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
}
@keyframes backInDown {
  0% {
    -webkit-transform: translateY(-1200px) scale(0.7);
    transform: translateY(-1200px) scale(0.7);
    opacity: 0.7;
  }
  80% {
    -webkit-transform: translateY(0px) scale(0.7);
    transform: translateY(0px) scale(0.7);
    opacity: 0.7;
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
}
.animate__backInDown {
  -webkit-animation-name: backInDown;
  animation-name: backInDown;
}

@-webkit-keyframes backInLeft {
  0% {
    -webkit-transform: translateX(-2000px) scale(0.7);
    transform: translateX(-2000px) scale(0.7);
    opacity: 0.7;
  }
  80% {
    -webkit-transform: translateX(0px) scale(0.7);
    transform: translateX(0px) scale(0.7);
    opacity: 0.7;
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
}
@keyframes backInLeft {
  0% {
    -webkit-transform: translateX(-2000px) scale(0.7);
    transform: translateX(-2000px) scale(0.7);
    opacity: 0.7;
  }
  80% {
    -webkit-transform: translateX(0px) scale(0.7);
    transform: translateX(0px) scale(0.7);
    opacity: 0.7;
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
}
.animate__backInLeft {
  -webkit-animation-name: backInLeft;
  animation-name: backInLeft;
}

@-webkit-keyframes backInRight {
  0% {
    -webkit-transform: translateX(2000px) scale(0.7);
    transform: translateX(2000px) scale(0.7);
    opacity: 0.7;
  }
  80% {
    -webkit-transform: translateX(0px) scale(0.7);
    transform: translateX(0px) scale(0.7);
    opacity: 0.7;
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
}
@keyframes backInRight {
  0% {
    -webkit-transform: translateX(2000px) scale(0.7);
    transform: translateX(2000px) scale(0.7);
    opacity: 0.7;
  }
  80% {
    -webkit-transform: translateX(0px) scale(0.7);
    transform: translateX(0px) scale(0.7);
    opacity: 0.7;
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
}
.animate__backInRight {
  -webkit-animation-name: backInRight;
  animation-name: backInRight;
}

@-webkit-keyframes backInUp {
  0% {
    -webkit-transform: translateY(1200px) scale(0.7);
    transform: translateY(1200px) scale(0.7);
    opacity: 0.7;
  }
  80% {
    -webkit-transform: translateY(0px) scale(0.7);
    transform: translateY(0px) scale(0.7);
    opacity: 0.7;
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
}
@keyframes backInUp {
  0% {
    -webkit-transform: translateY(1200px) scale(0.7);
    transform: translateY(1200px) scale(0.7);
    opacity: 0.7;
  }
  80% {
    -webkit-transform: translateY(0px) scale(0.7);
    transform: translateY(0px) scale(0.7);
    opacity: 0.7;
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
}
.animate__backInUp {
  -webkit-animation-name: backInUp;
  animation-name: backInUp;
}

/* Back exits */
@-webkit-keyframes backOutDown {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  20% {
    -webkit-transform: translateY(0px) scale(0.7);
    transform: translateY(0px) scale(0.7);
    opacity: 0.7;
  }
  100% {
    -webkit-transform: translateY(700px) scale(0.7);
    transform: translateY(700px) scale(0.7);
    opacity: 0.7;
  }
}
@keyframes backOutDown {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  20% {
    -webkit-transform: translateY(0px) scale(0.7);
    transform: translateY(0px) scale(0.7);
    opacity: 0.7;
  }
  100% {
    -webkit-transform: translateY(700px) scale(0.7);
    transform: translateY(700px) scale(0.7);
    opacity: 0.7;
  }
}
.animate__backOutDown {
  -webkit-animation-name: backOutDown;
  animation-name: backOutDown;
}

@-webkit-keyframes backOutLeft {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  20% {
    -webkit-transform: translateX(0px) scale(0.7);
    transform: translateX(0px) scale(0.7);
    opacity: 0.7;
  }
  100% {
    -webkit-transform: translateX(-2000px) scale(0.7);
    transform: translateX(-2000px) scale(0.7);
    opacity: 0.7;
  }
}
@keyframes backOutLeft {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  20% {
    -webkit-transform: translateX(0px) scale(0.7);
    transform: translateX(0px) scale(0.7);
    opacity: 0.7;
  }
  100% {
    -webkit-transform: translateX(-2000px) scale(0.7);
    transform: translateX(-2000px) scale(0.7);
    opacity: 0.7;
  }
}
.animate__backOutLeft {
  -webkit-animation-name: backOutLeft;
  animation-name: backOutLeft;
}

@-webkit-keyframes backOutRight {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  20% {
    -webkit-transform: translateX(0px) scale(0.7);
    transform: translateX(0px) scale(0.7);
    opacity: 0.7;
  }
  100% {
    -webkit-transform: translateX(2000px) scale(0.7);
    transform: translateX(2000px) scale(0.7);
    opacity: 0.7;
  }
}
@keyframes backOutRight {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  20% {
    -webkit-transform: translateX(0px) scale(0.7);
    transform: translateX(0px) scale(0.7);
    opacity: 0.7;
  }
  100% {
    -webkit-transform: translateX(2000px) scale(0.7);
    transform: translateX(2000px) scale(0.7);
    opacity: 0.7;
  }
}
.animate__backOutRight {
  -webkit-animation-name: backOutRight;
  animation-name: backOutRight;
}

@-webkit-keyframes backOutUp {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  20% {
    -webkit-transform: translateY(0px) scale(0.7);
    transform: translateY(0px) scale(0.7);
    opacity: 0.7;
  }
  100% {
    -webkit-transform: translateY(-700px) scale(0.7);
    transform: translateY(-700px) scale(0.7);
    opacity: 0.7;
  }
}
@keyframes backOutUp {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  20% {
    -webkit-transform: translateY(0px) scale(0.7);
    transform: translateY(0px) scale(0.7);
    opacity: 0.7;
  }
  100% {
    -webkit-transform: translateY(-700px) scale(0.7);
    transform: translateY(-700px) scale(0.7);
    opacity: 0.7;
  }
}
.animate__backOutUp {
  -webkit-animation-name: backOutUp;
  animation-name: backOutUp;
}

/* Bouncing entrances  */
@-webkit-keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }
  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }
  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
.animate__bounceIn {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-duration: calc(var(--animate-duration) * 0.75);
  animation-duration: calc(var(--animate-duration) * 0.75);
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
}

@-webkit-keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0) scaleY(3);
    transform: translate3d(0, -3000px, 0) scaleY(3);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0) scaleY(0.9);
    transform: translate3d(0, 25px, 0) scaleY(0.9);
  }
  75% {
    -webkit-transform: translate3d(0, -10px, 0) scaleY(0.95);
    transform: translate3d(0, -10px, 0) scaleY(0.95);
  }
  90% {
    -webkit-transform: translate3d(0, 5px, 0) scaleY(0.985);
    transform: translate3d(0, 5px, 0) scaleY(0.985);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0) scaleY(3);
    transform: translate3d(0, -3000px, 0) scaleY(3);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0) scaleY(0.9);
    transform: translate3d(0, 25px, 0) scaleY(0.9);
  }
  75% {
    -webkit-transform: translate3d(0, -10px, 0) scaleY(0.95);
    transform: translate3d(0, -10px, 0) scaleY(0.95);
  }
  90% {
    -webkit-transform: translate3d(0, 5px, 0) scaleY(0.985);
    transform: translate3d(0, 5px, 0) scaleY(0.985);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__bounceInDown {
  -webkit-animation-name: bounceInDown;
  animation-name: bounceInDown;
}

@-webkit-keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0) scaleX(3);
    transform: translate3d(-3000px, 0, 0) scaleX(3);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0) scaleX(1);
    transform: translate3d(25px, 0, 0) scaleX(1);
  }
  75% {
    -webkit-transform: translate3d(-10px, 0, 0) scaleX(0.98);
    transform: translate3d(-10px, 0, 0) scaleX(0.98);
  }
  90% {
    -webkit-transform: translate3d(5px, 0, 0) scaleX(0.995);
    transform: translate3d(5px, 0, 0) scaleX(0.995);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0) scaleX(3);
    transform: translate3d(-3000px, 0, 0) scaleX(3);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0) scaleX(1);
    transform: translate3d(25px, 0, 0) scaleX(1);
  }
  75% {
    -webkit-transform: translate3d(-10px, 0, 0) scaleX(0.98);
    transform: translate3d(-10px, 0, 0) scaleX(0.98);
  }
  90% {
    -webkit-transform: translate3d(5px, 0, 0) scaleX(0.995);
    transform: translate3d(5px, 0, 0) scaleX(0.995);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  animation-name: bounceInLeft;
}

@-webkit-keyframes bounceInRight {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0) scaleX(3);
    transform: translate3d(3000px, 0, 0) scaleX(3);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0) scaleX(1);
    transform: translate3d(-25px, 0, 0) scaleX(1);
  }
  75% {
    -webkit-transform: translate3d(10px, 0, 0) scaleX(0.98);
    transform: translate3d(10px, 0, 0) scaleX(0.98);
  }
  90% {
    -webkit-transform: translate3d(-5px, 0, 0) scaleX(0.995);
    transform: translate3d(-5px, 0, 0) scaleX(0.995);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes bounceInRight {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0) scaleX(3);
    transform: translate3d(3000px, 0, 0) scaleX(3);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0) scaleX(1);
    transform: translate3d(-25px, 0, 0) scaleX(1);
  }
  75% {
    -webkit-transform: translate3d(10px, 0, 0) scaleX(0.98);
    transform: translate3d(10px, 0, 0) scaleX(0.98);
  }
  90% {
    -webkit-transform: translate3d(-5px, 0, 0) scaleX(0.995);
    transform: translate3d(-5px, 0, 0) scaleX(0.995);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__bounceInRight {
  -webkit-animation-name: bounceInRight;
  animation-name: bounceInRight;
}

@-webkit-keyframes bounceInUp {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0) scaleY(5);
    transform: translate3d(0, 3000px, 0) scaleY(5);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0) scaleY(0.9);
    transform: translate3d(0, -20px, 0) scaleY(0.9);
  }
  75% {
    -webkit-transform: translate3d(0, 10px, 0) scaleY(0.95);
    transform: translate3d(0, 10px, 0) scaleY(0.95);
  }
  90% {
    -webkit-transform: translate3d(0, -5px, 0) scaleY(0.985);
    transform: translate3d(0, -5px, 0) scaleY(0.985);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes bounceInUp {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0) scaleY(5);
    transform: translate3d(0, 3000px, 0) scaleY(5);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0) scaleY(0.9);
    transform: translate3d(0, -20px, 0) scaleY(0.9);
  }
  75% {
    -webkit-transform: translate3d(0, 10px, 0) scaleY(0.95);
    transform: translate3d(0, 10px, 0) scaleY(0.95);
  }
  90% {
    -webkit-transform: translate3d(0, -5px, 0) scaleY(0.985);
    transform: translate3d(0, -5px, 0) scaleY(0.985);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__bounceInUp {
  -webkit-animation-name: bounceInUp;
  animation-name: bounceInUp;
}

/* Bouncing exits  */
@-webkit-keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
}
@keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
}
.animate__bounceOut {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-duration: calc(var(--animate-duration) * 0.75);
  animation-duration: calc(var(--animate-duration) * 0.75);
  -webkit-animation-name: bounceOut;
  animation-name: bounceOut;
}

@-webkit-keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0) scaleY(0.985);
    transform: translate3d(0, 10px, 0) scaleY(0.985);
  }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0) scaleY(0.9);
    transform: translate3d(0, -20px, 0) scaleY(0.9);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0) scaleY(3);
    transform: translate3d(0, 2000px, 0) scaleY(3);
  }
}
@keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0) scaleY(0.985);
    transform: translate3d(0, 10px, 0) scaleY(0.985);
  }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0) scaleY(0.9);
    transform: translate3d(0, -20px, 0) scaleY(0.9);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0) scaleY(3);
    transform: translate3d(0, 2000px, 0) scaleY(3);
  }
}
.animate__bounceOutDown {
  -webkit-animation-name: bounceOutDown;
  animation-name: bounceOutDown;
}

@-webkit-keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0) scaleX(0.9);
    transform: translate3d(20px, 0, 0) scaleX(0.9);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0) scaleX(2);
    transform: translate3d(-2000px, 0, 0) scaleX(2);
  }
}
@keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0) scaleX(0.9);
    transform: translate3d(20px, 0, 0) scaleX(0.9);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0) scaleX(2);
    transform: translate3d(-2000px, 0, 0) scaleX(2);
  }
}
.animate__bounceOutLeft {
  -webkit-animation-name: bounceOutLeft;
  animation-name: bounceOutLeft;
}

@-webkit-keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0) scaleX(0.9);
    transform: translate3d(-20px, 0, 0) scaleX(0.9);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0) scaleX(2);
    transform: translate3d(2000px, 0, 0) scaleX(2);
  }
}
@keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0) scaleX(0.9);
    transform: translate3d(-20px, 0, 0) scaleX(0.9);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0) scaleX(2);
    transform: translate3d(2000px, 0, 0) scaleX(2);
  }
}
.animate__bounceOutRight {
  -webkit-animation-name: bounceOutRight;
  animation-name: bounceOutRight;
}

@-webkit-keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0) scaleY(0.985);
    transform: translate3d(0, -10px, 0) scaleY(0.985);
  }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0) scaleY(0.9);
    transform: translate3d(0, 20px, 0) scaleY(0.9);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0) scaleY(3);
    transform: translate3d(0, -2000px, 0) scaleY(3);
  }
}
@keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0) scaleY(0.985);
    transform: translate3d(0, -10px, 0) scaleY(0.985);
  }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0) scaleY(0.9);
    transform: translate3d(0, 20px, 0) scaleY(0.9);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0) scaleY(3);
    transform: translate3d(0, -2000px, 0) scaleY(3);
  }
}
.animate__bounceOutUp {
  -webkit-animation-name: bounceOutUp;
  animation-name: bounceOutUp;
}

/* Fading entrances  */
@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.animate__fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

@-webkit-keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -20%, 0);
    transform: translate3d(0, -20%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -20%, 0);
    transform: translate3d(0, -20%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}

@-webkit-keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig;
}

@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-20%, 0, 0);
    transform: translate3d(-20%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-20%, 0, 0);
    transform: translate3d(-20%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig;
}

@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}

@-webkit-keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig;
}

@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 20%, 0);
    transform: translate3d(0, 20%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 10%, 0);
    transform: translate3d(0, 10%, 0);
    -ms-filter: blur(4px);
    -webkit-filter: blur(4px);
            filter: blur(4px);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -ms-filter: blur(0);
    -webkit-filter: blur(0);
            filter: blur(0);
  }
}
.animate__fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

@-webkit-keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig;
}

@-webkit-keyframes fadeInTopLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, -100%, 0);
    transform: translate3d(-100%, -100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInTopLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, -100%, 0);
    transform: translate3d(-100%, -100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__fadeInTopLeft {
  -webkit-animation-name: fadeInTopLeft;
  animation-name: fadeInTopLeft;
}

@-webkit-keyframes fadeInTopRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, -100%, 0);
    transform: translate3d(100%, -100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInTopRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, -100%, 0);
    transform: translate3d(100%, -100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__fadeInTopRight {
  -webkit-animation-name: fadeInTopRight;
  animation-name: fadeInTopRight;
}

@-webkit-keyframes fadeInBottomLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 100%, 0);
    transform: translate3d(-100%, 100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInBottomLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 100%, 0);
    transform: translate3d(-100%, 100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__fadeInBottomLeft {
  -webkit-animation-name: fadeInBottomLeft;
  animation-name: fadeInBottomLeft;
}

@-webkit-keyframes fadeInBottomRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 100%, 0);
    transform: translate3d(100%, 100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInBottomRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 100%, 0);
    transform: translate3d(100%, 100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__fadeInBottomRight {
  -webkit-animation-name: fadeInBottomRight;
  animation-name: fadeInBottomRight;
}

/* Fading exits */
@-webkit-keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.animate__fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}

@-webkit-keyframes fadeOutDown {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}
@keyframes fadeOutDown {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}
.animate__fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
}

@-webkit-keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}
@keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}
.animate__fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig;
}

@-webkit-keyframes fadeOutLeft {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
@keyframes fadeOutLeft {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
.animate__fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
}

@-webkit-keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}
@keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}
.animate__fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig;
}

@-webkit-keyframes fadeOutRight {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
@keyframes fadeOutRight {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
.animate__fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
}

@-webkit-keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}
@keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}
.animate__fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig;
}

@-webkit-keyframes fadeOutUp {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
@keyframes fadeOutUp {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
.animate__fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp;
}

@-webkit-keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}
@keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}
.animate__fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig;
}

@-webkit-keyframes fadeOutTopLeft {
  from {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, -100%, 0);
    transform: translate3d(-100%, -100%, 0);
  }
}
@keyframes fadeOutTopLeft {
  from {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, -100%, 0);
    transform: translate3d(-100%, -100%, 0);
  }
}
.animate__fadeOutTopLeft {
  -webkit-animation-name: fadeOutTopLeft;
  animation-name: fadeOutTopLeft;
}

@-webkit-keyframes fadeOutTopRight {
  from {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, -100%, 0);
    transform: translate3d(100%, -100%, 0);
  }
}
@keyframes fadeOutTopRight {
  from {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, -100%, 0);
    transform: translate3d(100%, -100%, 0);
  }
}
.animate__fadeOutTopRight {
  -webkit-animation-name: fadeOutTopRight;
  animation-name: fadeOutTopRight;
}

@-webkit-keyframes fadeOutBottomRight {
  from {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 100%, 0);
    transform: translate3d(100%, 100%, 0);
  }
}
@keyframes fadeOutBottomRight {
  from {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 100%, 0);
    transform: translate3d(100%, 100%, 0);
  }
}
.animate__fadeOutBottomRight {
  -webkit-animation-name: fadeOutBottomRight;
  animation-name: fadeOutBottomRight;
}

@-webkit-keyframes fadeOutBottomLeft {
  from {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 100%, 0);
    transform: translate3d(-100%, 100%, 0);
  }
}
@keyframes fadeOutBottomLeft {
  from {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 100%, 0);
    transform: translate3d(-100%, 100%, 0);
  }
}
.animate__fadeOutBottomLeft {
  -webkit-animation-name: fadeOutBottomLeft;
  animation-name: fadeOutBottomLeft;
}

/* Flippers */
@-webkit-keyframes flip {
  from {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  40% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  50% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  to {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}
@keyframes flip {
  from {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  40% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  50% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  to {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}
.animate__animated.animate__flip {
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
  -webkit-animation-name: flip;
  animation-name: flip;
}

@-webkit-keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}
@keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}
.animate__flipInX {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInX;
  animation-name: flipInX;
}

@-webkit-keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}
@keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}
.animate__flipInY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInY;
  animation-name: flipInY;
}

@-webkit-keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}
@keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}
.animate__flipOutX {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-duration: calc(var(--animate-duration) * 0.75);
  animation-duration: calc(var(--animate-duration) * 0.75);
  -webkit-animation-name: flipOutX;
  animation-name: flipOutX;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}
@keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}
.animate__flipOutY {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-duration: calc(var(--animate-duration) * 0.75);
  animation-duration: calc(var(--animate-duration) * 0.75);
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipOutY;
  animation-name: flipOutY;
}

/* Lightspeed */
@-webkit-keyframes lightSpeedInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }
  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes lightSpeedInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }
  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__lightSpeedInRight {
  -webkit-animation-name: lightSpeedInRight;
  animation-name: lightSpeedInRight;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

@-webkit-keyframes lightSpeedInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0) skewX(30deg);
    transform: translate3d(-100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
  60% {
    -webkit-transform: skewX(-20deg);
    transform: skewX(-20deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: skewX(5deg);
    transform: skewX(5deg);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes lightSpeedInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0) skewX(30deg);
    transform: translate3d(-100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
  60% {
    -webkit-transform: skewX(-20deg);
    transform: skewX(-20deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: skewX(5deg);
    transform: skewX(5deg);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__lightSpeedInLeft {
  -webkit-animation-name: lightSpeedInLeft;
  animation-name: lightSpeedInLeft;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

@-webkit-keyframes lightSpeedOutRight {
  from {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
}
@keyframes lightSpeedOutRight {
  from {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
}
.animate__lightSpeedOutRight {
  -webkit-animation-name: lightSpeedOutRight;
  animation-name: lightSpeedOutRight;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
}

@-webkit-keyframes lightSpeedOutLeft {
  from {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(-100%, 0, 0) skewX(-30deg);
    transform: translate3d(-100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }
}
@keyframes lightSpeedOutLeft {
  from {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(-100%, 0, 0) skewX(-30deg);
    transform: translate3d(-100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }
}
.animate__lightSpeedOutLeft {
  -webkit-animation-name: lightSpeedOutLeft;
  animation-name: lightSpeedOutLeft;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
}

/* Rotating entrances */
@-webkit-keyframes rotateIn {
  from {
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes rotateIn {
  from {
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
.animate__rotateIn {
  -webkit-animation-name: rotateIn;
  animation-name: rotateIn;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
      transform-origin: center;
}

@-webkit-keyframes rotateInDownLeft {
  from {
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes rotateInDownLeft {
  from {
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
.animate__rotateInDownLeft {
  -webkit-animation-name: rotateInDownLeft;
  animation-name: rotateInDownLeft;
  -webkit-transform-origin: left bottom;
  -ms-transform-origin: left bottom;
      transform-origin: left bottom;
}

@-webkit-keyframes rotateInDownRight {
  from {
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes rotateInDownRight {
  from {
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
.animate__rotateInDownRight {
  -webkit-animation-name: rotateInDownRight;
  animation-name: rotateInDownRight;
  -webkit-transform-origin: right bottom;
  -ms-transform-origin: right bottom;
      transform-origin: right bottom;
}

@-webkit-keyframes rotateInUpLeft {
  from {
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes rotateInUpLeft {
  from {
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
.animate__rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
  animation-name: rotateInUpLeft;
  -webkit-transform-origin: left bottom;
  -ms-transform-origin: left bottom;
      transform-origin: left bottom;
}

@-webkit-keyframes rotateInUpRight {
  from {
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes rotateInUpRight {
  from {
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
.animate__rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
  animation-name: rotateInUpRight;
  -webkit-transform-origin: right bottom;
  -ms-transform-origin: right bottom;
      transform-origin: right bottom;
}

/* Rotating exits */
@-webkit-keyframes rotateOut {
  from {
    opacity: 1;
  }
  to {
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}
@keyframes rotateOut {
  from {
    opacity: 1;
  }
  to {
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}
.animate__rotateOut {
  -webkit-animation-name: rotateOut;
  animation-name: rotateOut;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
      transform-origin: center;
}

@-webkit-keyframes rotateOutDownLeft {
  from {
    opacity: 1;
  }
  to {
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
}
@keyframes rotateOutDownLeft {
  from {
    opacity: 1;
  }
  to {
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
}
.animate__rotateOutDownLeft {
  -webkit-animation-name: rotateOutDownLeft;
  animation-name: rotateOutDownLeft;
  -webkit-transform-origin: left bottom;
  -ms-transform-origin: left bottom;
      transform-origin: left bottom;
}

@-webkit-keyframes rotateOutDownRight {
  from {
    opacity: 1;
  }
  to {
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}
@keyframes rotateOutDownRight {
  from {
    opacity: 1;
  }
  to {
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}
.animate__rotateOutDownRight {
  -webkit-animation-name: rotateOutDownRight;
  animation-name: rotateOutDownRight;
  -webkit-transform-origin: right bottom;
  -ms-transform-origin: right bottom;
      transform-origin: right bottom;
}

@-webkit-keyframes rotateOutUpLeft {
  from {
    opacity: 1;
  }
  to {
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}
@keyframes rotateOutUpLeft {
  from {
    opacity: 1;
  }
  to {
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}
.animate__rotateOutUpLeft {
  -webkit-animation-name: rotateOutUpLeft;
  animation-name: rotateOutUpLeft;
  -webkit-transform-origin: left bottom;
  -ms-transform-origin: left bottom;
      transform-origin: left bottom;
}

@-webkit-keyframes rotateOutUpRight {
  from {
    opacity: 1;
  }
  to {
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}
@keyframes rotateOutUpRight {
  from {
    opacity: 1;
  }
  to {
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}
.animate__rotateOutUpRight {
  -webkit-animation-name: rotateOutUpRight;
  animation-name: rotateOutUpRight;
  -webkit-transform-origin: right bottom;
  -ms-transform-origin: right bottom;
      transform-origin: right bottom;
}

/* Specials */
@-webkit-keyframes hinge {
  0% {
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  20%, 60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  40%, 80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}
@keyframes hinge {
  0% {
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  20%, 60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  40%, 80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}
.animate__hinge {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-duration: calc(var(--animate-duration) * 2);
  animation-duration: calc(var(--animate-duration) * 2);
  -webkit-animation-name: hinge;
  animation-name: hinge;
  -webkit-transform-origin: top left;
  -ms-transform-origin: top left;
      transform-origin: top left;
}

@-webkit-keyframes jackInTheBox {
  from {
    opacity: 0;
    -webkit-transform: scale(0.1) rotate(30deg);
    transform: scale(0.1) rotate(30deg);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
  }
  50% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }
  70% {
    -webkit-transform: rotate(3deg);
    transform: rotate(3deg);
  }
  to {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@keyframes jackInTheBox {
  from {
    opacity: 0;
    -webkit-transform: scale(0.1) rotate(30deg);
    transform: scale(0.1) rotate(30deg);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
  }
  50% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }
  70% {
    -webkit-transform: rotate(3deg);
    transform: rotate(3deg);
  }
  to {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
.animate__jackInTheBox {
  -webkit-animation-name: jackInTheBox;
  animation-name: jackInTheBox;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__rollIn {
  -webkit-animation-name: rollIn;
  animation-name: rollIn;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}
@keyframes rollOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}
.animate__rollOut {
  -webkit-animation-name: rollOut;
  animation-name: rollOut;
}

/* Zooming entrances */
@-webkit-keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  50% {
    opacity: 1;
  }
}
@keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  50% {
    opacity: 1;
  }
}
.animate__zoomIn {
  -webkit-animation-name: zoomIn;
  animation-name: zoomIn;
}

@-webkit-keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
@keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.animate__zoomInDown {
  -webkit-animation-name: zoomInDown;
  animation-name: zoomInDown;
}

@-webkit-keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
@keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.animate__zoomInLeft {
  -webkit-animation-name: zoomInLeft;
  animation-name: zoomInLeft;
}

@-webkit-keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
@keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.animate__zoomInRight {
  -webkit-animation-name: zoomInRight;
  animation-name: zoomInRight;
}

@-webkit-keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
@keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.animate__zoomInUp {
  -webkit-animation-name: zoomInUp;
  animation-name: zoomInUp;
}

/* Zooming exits */
@-webkit-keyframes zoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 0;
  }
}
@keyframes zoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 0;
  }
}
.animate__zoomOut {
  -webkit-animation-name: zoomOut;
  animation-name: zoomOut;
}

@-webkit-keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
@keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.animate__zoomOutDown {
  -webkit-animation-name: zoomOutDown;
  animation-name: zoomOutDown;
  -webkit-transform-origin: center bottom;
  -ms-transform-origin: center bottom;
      transform-origin: center bottom;
}

@-webkit-keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
  }
}
@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
  }
}
.animate__zoomOutLeft {
  -webkit-animation-name: zoomOutLeft;
  animation-name: zoomOutLeft;
  -webkit-transform-origin: left center;
  -ms-transform-origin: left center;
      transform-origin: left center;
}

@-webkit-keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
  }
}
@keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
  }
}
.animate__zoomOutRight {
  -webkit-animation-name: zoomOutRight;
  animation-name: zoomOutRight;
  -webkit-transform-origin: right center;
  -ms-transform-origin: right center;
      transform-origin: right center;
}

@-webkit-keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
@keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.animate__zoomOutUp {
  -webkit-animation-name: zoomOutUp;
  animation-name: zoomOutUp;
  -webkit-transform-origin: center bottom;
  -ms-transform-origin: center bottom;
      transform-origin: center bottom;
}

/* Sliding entrances */
@-webkit-keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__slideInDown {
  -webkit-animation-name: slideInDown;
  animation-name: slideInDown;
}

@-webkit-keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__slideInLeft {
  -webkit-animation-name: slideInLeft;
  animation-name: slideInLeft;
}

@-webkit-keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__slideInRight {
  -webkit-animation-name: slideInRight;
  animation-name: slideInRight;
}

@-webkit-keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__slideInUp {
  -webkit-animation-name: slideInUp;
  animation-name: slideInUp;
}

/* Sliding exits */
@-webkit-keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}
@keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}
.animate__slideOutDown {
  -webkit-animation-name: slideOutDown;
  animation-name: slideOutDown;
}

@-webkit-keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
@keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
.animate__slideOutLeft {
  -webkit-animation-name: slideOutLeft;
  animation-name: slideOutLeft;
}

@-webkit-keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
@keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
.animate__slideOutRight {
  -webkit-animation-name: slideOutRight;
  animation-name: slideOutRight;
}

@-webkit-keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
@keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
.animate__slideOutUp {
  -webkit-animation-name: slideOutUp;
  animation-name: slideOutUp;
}

/*! Lity - v2.4.1 - 2020-04-26
* http://sorgalla.com/lity/
* Copyright (c) 2015-2020 Jan Sorgalla; Licensed MIT */
.lity {
  z-index: 9990;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  white-space: nowrap;
  background: #0b0b0b;
  background: rgba(0, 0, 0, 0.9);
  outline: none !important;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.lity.lity-opened {
  opacity: 1;
}

.lity.lity-closed {
  opacity: 0;
}

.lity * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.lity-wrap {
  z-index: 9990;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  text-align: center;
  outline: none !important;
}

.lity-wrap:before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  margin-right: -0.25em;
}

.lity-loader {
  z-index: 9991;
  color: #fff;
  position: absolute;
  top: 50%;
  margin-top: -0.8em;
  width: 100%;
  text-align: center;
  font-size: 14px;
  font-family: Arial, Helvetica, sans-serif;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.lity-loading .lity-loader {
  opacity: 1;
}

.lity-container {
  z-index: 9992;
  position: relative;
  text-align: left;
  vertical-align: middle;
  display: inline-block;
  white-space: normal;
  max-width: 100%;
  max-height: 100%;
  outline: none !important;
}

.lity-content {
  z-index: 9993;
  width: 100%;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

.lity-loading .lity-content,
.lity-closed .lity-content {
  -webkit-transform: scale(0.8);
  -ms-transform: scale(0.8);
  transform: scale(0.8);
}

.lity-content:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  display: block;
  right: 0;
  width: auto;
  height: auto;
  z-index: -1;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
}

.lity-close {
  z-index: 9994;
  width: 35px;
  height: 35px;
  position: fixed;
  right: 0;
  top: 0;
  -webkit-appearance: none;
  cursor: pointer;
  text-decoration: none;
  text-align: center;
  padding: 0;
  color: #fff;
  font-style: normal;
  font-size: 35px;
  font-family: Arial, Baskerville, monospace;
  line-height: 35px;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
  border: 0;
  background: none;
  outline: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}

.lity-close::-moz-focus-inner {
  border: 0;
  padding: 0;
}

.lity-close:hover,
.lity-close:focus,
.lity-close:active,
.lity-close:visited {
  text-decoration: none;
  text-align: center;
  padding: 0;
  color: #fff;
  font-style: normal;
  font-size: 35px;
  font-family: Arial, Baskerville, monospace;
  line-height: 35px;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
  border: 0;
  background: none;
  outline: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}

.lity-close:active {
  top: 1px;
}

/* Image */
.lity-image img {
  max-width: 100%;
  display: block;
  line-height: 0;
  border: 0;
}

/* iFrame */
.lity-iframe .lity-container,
.lity-youtube .lity-container,
.lity-vimeo .lity-container,
.lity-facebookvideo .lity-container,
.lity-googlemaps .lity-container {
  width: 100%;
  max-width: 964px;
}

.lity-iframe-container {
  width: 100%;
  height: 0;
  padding-top: 56.25%;
  overflow: auto;
  pointer-events: auto;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-overflow-scrolling: touch;
}

.lity-iframe-container iframe {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #000;
}

.lity-hide {
  display: none;
}

/* brand
-----------------------------------------------------------------*/
/*----------------------------------------------------------------
レイアウトのコンポーネント
-----------------------------------------------------------------*/
.c-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  min-height: 100vh;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #FFF;
}

.c-container {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .c-container {
    padding-bottom: 100px;
  }
}
@media screen and (min-width:768px) {
  .c-container {
    padding-bottom: 13.8888888889vw;
  }
}

.c-inner {
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .c-inner--small {
    padding: 0 4vw;
  }
}
@media screen and (min-width:768px) {
  .c-inner--small {
    padding: 0 clamp(120px, 22.2222222222vw, 22.2222222222vw);
  }
}
@media screen and (min-width: 768px) and (max-width:1024px) {
  .c-inner--small {
    padding: 0 clamp(30px, 5.859375vw, 60px);
  }
}
@media screen and (max-width: 767px) {
  .c-inner--medium {
    padding: 0 4vw;
  }
}
@media screen and (min-width:768px) {
  .c-inner--medium {
    padding: 0 clamp(120px, 16.6666666667vw, 16.6666666667vw);
  }
}
@media screen and (min-width: 768px) and (max-width:1024px) {
  .c-inner--medium {
    padding: 0 clamp(30px, 5.859375vw, 60px);
  }
}
@media screen and (max-width: 767px) {
  .c-inner--wide {
    padding: 0 clamp(15px, 4vw, 22.5px);
  }
}
@media screen and (min-width:768px) {
  .c-inner--wide {
    padding: 0 max(64.008px, 8.3333333333vw);
  }
}

/*----------------------------------------------------------------
見出しのコンポーネント
-----------------------------------------------------------------*/
.c-headline02 {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 500;
  line-height: 1.4;
  color: #000;
  border-bottom: 1px solid #bdbdbd;
}
@media screen and (max-width: 767px) {
  .c-headline02 {
    margin-bottom: clamp(30px, 8vw, 45px);
    padding-bottom: clamp(6px, 1.6vw, 9px);
    font-size: clamp(18px, 4.8vw, 27px);
  }
}
@media screen and (min-width:768px) {
  .c-headline02 {
    margin-bottom: clamp(28.47222224px, 2.7777777778vw, 53.324px);
    padding-bottom: clamp(5.694444448px, 0.5555555556vw, 10.6648px);
    font-size: clamp(19.930555568px, 1.9444444444vw, 37.3268px);
  }
}

.c-headline03 {
  font-weight: 500;
  color: #000;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .c-headline03 {
    margin-bottom: clamp(24px, 6.4vw, 36px);
    font-size: clamp(16px, 4.2666666667vw, 24px);
  }
}
@media screen and (min-width:768px) {
  .c-headline03 {
    margin-bottom: clamp(22.777777792px, 2.2222222222vw, 42.6592px);
    font-size: clamp(17.083333344px, 1.6666666667vw, 31.9944px);
  }
}

.c-headline04 {
  font-weight: 500;
  color: #000;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .c-headline04 {
    margin-bottom: clamp(16px, 4.2666666667vw, 24px);
    font-size: clamp(14px, 3.7333333333vw, 21px);
  }
}
@media screen and (min-width:768px) {
  .c-headline04 {
    margin-bottom: clamp(17.083333344px, 1.6666666667vw, 31.9944px);
    font-size: clamp(12.812500008px, 1.25vw, 23.9958px);
  }
}

.marker {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, #F1EC64));
  background: -webkit-linear-gradient(transparent 70%, #F1EC64 70%);
  background: linear-gradient(transparent 70%, #F1EC64 70%);
}
/* ----------------------------------------------------------------
テーブルのコンポーネント
-----------------------------------------------------------------*/
.c-table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show;
  border: 1px solid #ddd;
  background-color: #fff;
  table-layout: fixed;
}
@media screen and (max-width: 767px) {
  .c-table {
    font-size: 1.2rem;
  }
}
@media screen and (min-width:768px) {
  .c-table {
    font-size: 1.4rem;
  }
}

.c-table > thead > tr {
  background-color: #ccc;
}
.c-table > thead > tr th {
  padding: 10px 20px;
  border: 1px solid #ddd;
  color: #000;
  font-weight: 600;
  vertical-align: middle;
}
.c-table > tbody > tr {
  border-bottom: 1px solid #ddd;
  /*&:nth-child(even) {
  	background-color: #fafafa;
  	@media screen and (max-width: 767px) {
  	}
  	@media screen and (min-width:768px) {
  	}
  }*/
}
.c-table > tbody > tr > th {
  background-color: #FAFAFA;
  color: #000;
  vertical-align: middle;
}
@media screen and (max-width: 767px) {
  .c-table > tbody > tr > th {
    padding: 4px 8px;
  }
}
@media screen and (min-width:768px) {
  .c-table > tbody > tr > th {
    padding: 8px 16px;
    border-right: 1px solid #ddd;
  }
}
.c-table > tbody > tr > td {
  vertical-align: middle;
}
@media screen and (max-width: 767px) {
  .c-table > tbody > tr > td {
    padding: clamp(4px, 1.0666666667vw, 6px) clamp(8px, 2.1333333333vw, 12px);
  }
}
@media screen and (min-width:768px) {
  .c-table > tbody > tr > td {
    padding: 8px 16px;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
  }
}
.c-table > tbody > tr > .bk {
  background-color: #555;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .c-tableWrap--spScroll {
    width: 100%;
    overflow: auto;
    border: 1px solid #ddd;
  }
  .c-tableWrap--spScroll table {
    /*width: 1080px;*/
    /*white-space: nowrap;*/
    border: none;
  }
  .c-tableWrap--spScroll table tr th, .c-tableWrap--spScroll table tr td {
    border: none;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
  }
  .c-tableWrap--spScroll table tr th:last-child, .c-tableWrap--spScroll table tr td:last-child {
    border-right: none;
  }
  .c-tableWrap--spScroll table tbody tr:last-child th, .c-tableWrap--spScroll table tbody tr:last-child td {
    border-bottom: none;
  }
}
.c-tableWrap--spScroll::-webkit-scrollbar {
  height: 5px;
}

.c-tableWrap--spScroll::-webkit-scrollbar-track {
  background: #F1F1F1;
}

.c-tableWrap--spScroll::-webkit-scrollbar-thumb {
  background: #BCBCBC;
}

.c-animSlideLink--bk {
  display: block;
}
@media screen and (min-width:768px) {
  .c-animSlideLink--bk {
    overflow: hidden;
    color: transparent;
    text-shadow: 0 1.5em 0 #000, 0 0 0 #000;
    -webkit-transition: text-shadow 0.4s cubic-bezier(0.76, 0, 0.24, 1);
    transition: text-shadow 0.4s cubic-bezier(0.76, 0, 0.24, 1);
  }
}
@media screen and (min-width:768px) {
  a:hover .c-animSlideLink--bk {
    text-shadow: 0 0 0 #000, 0 -1.5em 0 #000;
  }
}

.c-animSlideLink--wht {
  display: block;
}
@media screen and (min-width:768px) {
  .c-animSlideLink--wht {
    overflow: hidden;
    color: transparent;
    text-shadow: 0 1.5em 0 #fff, 0 0 0 #fff;
    -webkit-transition: text-shadow 0.4s cubic-bezier(0.76, 0, 0.24, 1);
    transition: text-shadow 0.4s cubic-bezier(0.76, 0, 0.24, 1);
  }
}
@media screen and (min-width:768px) {
  a:hover .c-animSlideLink--wht {
    text-shadow: 0 0 0 #fff, 0 -1.5em 0 #fff;
  }
}

.c-animSlideLink--gray {
  display: block;
}
@media screen and (min-width:768px) {
  .c-animSlideLink--gray {
    overflow: hidden;
    color: transparent;
    text-shadow: 0 1.5em 0 rgba(0, 0, 0, 0.6), 0 0 0 rgba(0, 0, 0, 0.6);
    -webkit-transition: text-shadow 0.4s cubic-bezier(0.76, 0, 0.24, 1);
    transition: text-shadow 0.4s cubic-bezier(0.76, 0, 0.24, 1);
  }
}
@media screen and (min-width:768px) {
  a:hover .c-animSlideLink--gray {
    text-shadow: 0 0 0 rgba(0, 0, 0, 0.6), 0 -1.5em 0 rgba(0, 0, 0, 0.6);
  }
}

/* スライドアニメーションを適用するリンクの基本スタイル */
.js-slide-link {
  display: inline-grid;
  place-items: center;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

/* 矢印用の横スライドアニメーション */
[data-slide-horizontal] {
  display: grid;
  overflow: clip;
}

[data-slide-horizontal-item] {
  grid-area: 1/1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

/* 共通スタイル */
[data-clone], [data-slide-horizontal], [data-slide-vertical] {
  display: grid;
  overflow: clip;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

[data-clone-item], [data-slide-horizontal-item], [data-slide-vertical-item] {
  grid-area: 1/1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

/*----------------------------------------------------------------
アニメーションのコンポーネント
-----------------------------------------------------------------*/
.c-animUp {
  opacity: 0;
}

.c-animLeft {
  opacity: 0;
}

.c-animRight {
  opacity: 0;
}

.c-animDown {
  opacity: 0;
}

.c-animDelay--time2 {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}

@media screen and (max-width: 767px) {
  .c-animDelay--time2--sp {
    -webkit-animation-delay: 0.2s;
            animation-delay: 0.2s;
  }
}
@media screen and (min-width:768px) {
  .c-animDelay--time2--pc {
    -webkit-animation-delay: 0.2s;
            animation-delay: 0.2s;
  }
}
.c-animDelay--time3 {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s;
}

@media screen and (max-width: 767px) {
  .c-animDelay--time3--sp {
    -webkit-animation-delay: 0.3s;
            animation-delay: 0.3s;
  }
}
@media screen and (min-width:768px) {
  .c-animDelay--time3--pc {
    -webkit-animation-delay: 0.3s;
            animation-delay: 0.3s;
  }
}
.c-animDelay--time4 {
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s;
}

@media screen and (max-width: 767px) {
  .c-animDelay--time4--sp {
    -webkit-animation-delay: 0.4s;
            animation-delay: 0.4s;
  }
}
@media screen and (min-width:768px) {
  .c-animDelay--time4--pc {
    -webkit-animation-delay: 0.4s;
            animation-delay: 0.4s;
  }
}
.c-animDelay--time5 {
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}

@media screen and (max-width: 767px) {
  .c-animDelay--time5--sp {
    -webkit-animation-delay: 0.5s;
            animation-delay: 0.5s;
  }
}
@media screen and (min-width:768px) {
  .c-animDelay--time5--pc {
    -webkit-animation-delay: 0.5s;
            animation-delay: 0.5s;
  }
}
.c-animDelay--time6 {
  -webkit-animation-delay: 0.6s;
          animation-delay: 0.6s;
}

@media screen and (max-width: 767px) {
  .c-animDelay--time6--sp {
    -webkit-animation-delay: 0.6s;
            animation-delay: 0.6s;
  }
}
@media screen and (min-width:768px) {
  .c-animDelay--time6--pc {
    -webkit-animation-delay: 0.6s;
            animation-delay: 0.6s;
  }
}
.c-animDelay--time7 {
  -webkit-animation-delay: 0.7s;
          animation-delay: 0.7s;
}

@media screen and (max-width: 767px) {
  .c-animDelay--time7--sp {
    -webkit-animation-delay: 0.7s;
            animation-delay: 0.7s;
  }
}
@media screen and (min-width:768px) {
  .c-animDelay--time7--pc {
    -webkit-animation-delay: 0.7s;
            animation-delay: 0.7s;
  }
}
.c-animDelay--time8 {
  -webkit-animation-delay: 0.8s;
          animation-delay: 0.8s;
}

@media screen and (max-width: 767px) {
  .c-animDelay--time8--sp {
    -webkit-animation-delay: 0.8s;
            animation-delay: 0.8s;
  }
}
@media screen and (min-width:768px) {
  .c-animDelay--time8--pc {
    -webkit-animation-delay: 0.8s;
            animation-delay: 0.8s;
  }
}
.c-btn {
  cursor: pointer;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #000;
  font-family: "Roboto Condensed", sans-serif;
  font-weight: 500;
  color: #000;
  line-height: 1.2;
  letter-spacing: 0;
  -webkit-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
@media screen and (max-width: 767px) {
  .c-btn {
    width: 100%;
    border-radius: clamp(32px, 8.5333333333vw, 48px);
    padding: clamp(4px, 1.0666666667vw, 6px);
    padding-left: clamp(16px, 4.2666666667vw, 24px);
    -webkit-column-gap: clamp(16px, 4.2666666667vw, 24px);
       -moz-column-gap: clamp(16px, 4.2666666667vw, 24px);
            column-gap: clamp(16px, 4.2666666667vw, 24px);
  }
}
@media screen and (min-width:768px) {
  .c-btn {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    min-width: clamp(142.3611112px, 13.8888888889vw, 266.62px);
    border-radius: clamp(34.166666688px, 3.3333333333vw, 63.9888px);
    padding: clamp(2.847222224px, 0.2777777778vw, 5.3324px);
    padding-left: clamp(17.083333344px, 1.6666666667vw, 31.9944px);
    -webkit-column-gap: clamp(17.083333344px, 1.6666666667vw, 31.9944px);
       -moz-column-gap: clamp(17.083333344px, 1.6666666667vw, 31.9944px);
            column-gap: clamp(17.083333344px, 1.6666666667vw, 31.9944px);
    margin-left: auto;
  }
}
.c-btn--wht {
  border: 1px solid #fff;
  color: #fff;
}
.c-btn--ct {
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 767px) {
  .c-btn .txt {
    font-size: clamp(13px, 3.4666666667vw, 19.5px);
  }
}
@media screen and (min-width:768px) {
  .c-btn .txt {
    font-size: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
  }
}

.c-btnCard {
  position: relative;
  font-weight: 500;
  color: #000;
  vertical-align: bottom;
  line-height: 1.5;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .c-btnCard {
    padding-bottom: clamp(4px, 1.0666666667vw, 6px);
  }
}
@media screen and (min-width:768px) {
  .c-btnCard {
    padding-bottom: clamp(5.694444448px, 0.5555555556vw, 10.6648px);
  }
}

.c-link {
  position: relative;
  font-weight: 500;
  color: #000;
  vertical-align: bottom;
  /*line-height: 1.5;*/
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .c-link {
    padding-bottom: clamp(4px, 1.0666666667vw, 6px);
  }
}
@media screen and (min-width:768px) {
  .c-link {
    padding-bottom: clamp(5.694444448px, 0.5555555556vw, 10.6648px);
  }
}
@media screen and (min-width:768px) {
  .c-link:before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #000;
    -webkit-transform: scaleX(0);
        -ms-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: 100% 100%;
        -ms-transform-origin: 100% 100%;
            transform-origin: 100% 100%;
    -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: -webkit-transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99), -webkit-transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
  }
}
.c-link:after {
  position: relative;
  display: inline-block;
  content: "";
  width: 1lh;
  height: 1lh;
}
@media screen and (max-width: 767px) {
  .c-link:after {
    margin-left: 4px;
  }
}
@media screen and (min-width:768px) {
  .c-link:after {
    margin-left: 8px;
  }
}
@media screen and (min-width:768px) {
  .c-link:hover:before {
    -webkit-transform: scaleX(1);
        -ms-transform: scaleX(1);
            transform: scaleX(1);
    -webkit-transform-origin: 0 100%;
        -ms-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
}
.c-link--arrow:after {
  background: url("../images/common/ico_arrow_right_bk.svg") no-repeat center center;
  background-size: contain;
  vertical-align: middle;
}
@media screen and (max-width: 767px) {
  .c-link--arrow:after {
    top: clamp(-1.5px, -0.2666666667vw, -1px);
    width: 0.6lh;
    height: 0.6lh;
  }
}
@media screen and (min-width:768px) {
  .c-link--arrow:after {
    top: clamp(-2.6662px, -0.1388888889vw, -1.423611112px);
    width: 0.6lh;
    height: 0.6lh;
  }
}
.c-link--arrow02:after {
  background: url("../images/common/ico_arrow_bk.svg") no-repeat center center;
  background-size: contain;
  vertical-align: bottom;
}
@media screen and (max-width: 767px) {
  .c-link--arrow02:after {
    top: clamp(-3px, -0.5333333333vw, -2px);
    width: 0.9lh;
    height: 0.9lh;
  }
}
@media screen and (min-width:768px) {
  .c-link--arrow02:after {
    top: clamp(-2.6662px, -0.1388888889vw, -1.423611112px);
    width: 0.9lh;
    height: 0.9lh;
  }
}
.c-link--pdf:after {
  background: url("../images/common/ico_pdf_bk.svg") no-repeat center center;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  .c-link--pdf:after {
    top: clamp(-3px, -0.5333333333vw, -2px);
    width: 0.8lh;
    height: 0.8lh;
  }
}
@media screen and (min-width:768px) {
  .c-link--pdf:after {
    top: clamp(-5.3324px, -0.2777777778vw, -2.847222224px);
    width: 0.8lh;
    height: 0.8lh;
  }
}
.c-link--blank:after {
  background: url("../images/common/ico_blank_bk.svg") no-repeat center center;
  background-size: contain;
}
.c-btnLinkCard {
  display: block;
  width: 100%;
  background-color: #F9F9F9;
  border: 1px solid #BDBDBD;
}
@media screen and (max-width: 767px) {
  .c-btnLinkCard {
    padding: 0 clamp(15px, 4vw, 22.5px) clamp(15px, 4vw, 22.5px);
    border-radius: clamp(3px, 0.8vw, 4.5px);
  }
}
@media screen and (min-width:768px) {
  .c-btnLinkCard {
    padding: 0 clamp(14.23611112px, 1.3888888889vw, 26.662px) clamp(14.23611112px, 1.3888888889vw, 26.662px);
    border-radius: clamp(3.55902778px, 0.3472222222vw, 6.6655px);
    -webkit-transition: all 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: all 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
  }
}
@media screen and (min-width:768px) {
  .c-btnLinkCard:hover {
    color: #4774B9;
    background-color: #F7F9FC;
    border-color: #4774B9;
  }
}
@media screen and (min-width:768px) {
  .c-btnLinkCard:hover .c-btnLinkCardHead {
    border-bottom: 1px solid #4774B9;
  }
}
@media screen and (min-width:768px) {
  .c-btnLinkCard:hover .c-btnLinkCardHead--arrow {
    background-position: right 10px center;
  }
}
@media screen and (min-width:768px) {
  .c-btnLinkCard:hover .c-btnLinkCardHead--blank {
    background-position: right 10px center;
  }
}
@media screen and (min-width:768px) {
  .c-btnLinkCard:hover .c-btnLinkCardHead--pdf {
    background-position: right 10px center;
  }
}

.c-btnLinkCardHead {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: 1px solid #BDBDBD;
  line-height: 1.4;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .c-btnLinkCardHead {
    padding: clamp(13px, 3.4666666667vw, 19.5px) 0;
    padding-right: clamp(40px, 10.6666666667vw, 60px);
    font-size: clamp(12px, 3.2vw, 18px);
  }
}
@media screen and (min-width:768px) {
  .c-btnLinkCardHead {
    padding-right: clamp(34.166666688px, 3.3333333333vw, 63.9888px);
    min-height: clamp(45.555555584px, 4.4444444444vw, 85.3184px);
    font-size: clamp(7.4676px, 0.9722222222vw, 18.6634px);
    -webkit-transition: all 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: all 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
  }
}
@media screen and (max-width: 767px) {
  .c-btnLinkCardHead--arrow {
    background: url("../images/common/ico_arrow_right_bk.svg") no-repeat right clamp(15px, 4vw, 22.5px) center;
    background-size: clamp(6px, 1.6vw, 9px) auto;
  }
}
@media screen and (min-width:768px) {
  .c-btnLinkCardHead--arrow {
    background: url("../images/common/ico_arrow_right_bk.svg") no-repeat right clamp(11.388888896px, 1.1111111111vw, 21.3296px) center;
    background-size: clamp(5.694444448px, 0.5555555556vw, 10.6648px) auto;
  }
}
@media screen and (min-width:768px) {
  .c-btnLinkCardHead--arrow:hover {
    background-position: right 10px center;
  }
}
@media screen and (max-width: 767px) {
  .c-btnLinkCardHead--blank {
    background: url("../images/common/ico_blank_bk.svg") no-repeat right clamp(10px, 2.6666666667vw, 15px) center;
    background-size: clamp(16px, 4.2666666667vw, 24px) auto;
  }
}
@media screen and (min-width:768px) {
  .c-btnLinkCardHead--blank {
    background: url("../images/common/ico_blank_bk.svg") no-repeat right clamp(11.388888896px, 1.1111111111vw, 21.3296px) center;
    background-size: clamp(14.23611112px, 1.3888888889vw, 26.662px) auto;
  }
}
@media screen and (min-width:768px) {
  .c-btnLinkCardHead--blank:hover {
    background-position: right 10px center;
  }
}
@media screen and (max-width: 767px) {
  .c-btnLinkCardHead--pdf {
    background: url("../images/common/ico_pdf_bk.svg") no-repeat right clamp(12px, 3.2vw, 18px) center;
    background-size: clamp(12px, 3.2vw, 18px) auto;
  }
}
@media screen and (min-width:768px) {
  .c-btnLinkCardHead--pdf {
    background: url("../images/common/ico_pdf_bk.svg") no-repeat right clamp(11.388888896px, 1.1111111111vw, 21.3296px) center;
    background-size: clamp(10.67708334px, 1.0416666667vw, 19.9965px) auto;
  }
}
@media screen and (min-width:768px) {
  .c-btnLinkCardHead--pdf:hover {
    background-position: right 10px center;
  }
}

@media screen and (max-width: 767px) {
  .c-btnCardTxt {
    margin-top: 10px;
    font-size: clamp(12px, 3.2vw, 18px);
  }
}
@media screen and (min-width:768px) {
  .c-btnCardTxt {
    margin-top: 20px;
    font-size: clamp(7.4676px, 0.9722222222vw, 18.6634px);
  }
}

.c-btnBnr {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  background: rgba(0, 0, 0, 0.5);
  border: 2px solid #fff;
}
@media screen and (max-width: 767px) {
  .c-btnBnr {
    border-radius: clamp(5px, 1.3333333333vw, 7.5px);
    padding: clamp(16px, 4.2666666667vw, 24px);
  }
}
@media screen and (min-width:768px) {
  .c-btnBnr {
    border-radius: clamp(7.11805556px, 0.6944444444vw, 13.331px);
    padding: clamp(22.777777792px, 2.2222222222vw, 42.6592px) clamp(34.166666688px, 3.3333333333vw, 63.9888px);
    -webkit-transition: all 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: all 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
  }
}
@media screen and (min-width:768px) {
  .c-btnBnr:hover {
    backdrop-filter: blur(8px);
  }
}
.c-btnBnr--wht {
  background: rgba(255, 255, 255, 0.65);
  border: 2px solid #000;
}
.c-btnBnr--wht .c-btnBnr__txt {
  color: #000;
}
.c-btnBnrImg {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 767px) {
  .c-btnBnrImg {
    width: clamp(60px, 16vw, 90px);
  }
}
@media screen and (min-width:768px) {
  .c-btnBnrImg {
    width: clamp(83.281250052px, 8.125vw, 155.9727px);
  }
}

.c-btnBnrImg__pic {
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .c-btnBnrImg__pic {
    width: clamp(50px, 13.3333333333vw, 75px);
    height: auto;
  }
}
@media screen and (min-width:768px) {
  .c-btnBnrImg__pic {
    width: clamp(48.006px, 6.25vw, 119.979px);
    height: auto;
  }
}
@media screen and (max-width: 767px) {
  .c-btnBnrImg__pic--en {
    width: clamp(60px, 16vw, 90px);
  }
}
@media screen and (min-width:768px) {
  .c-btnBnrImg__pic--en {
    width: clamp(62.4078px, 8.125vw, 155.9727px);
  }
}

.c-btnBnr__txt {
  -webkit-box-flex: 2;
      -ms-flex: 2;
          flex: 2;
  font-family: "M PLUS Rounded 1c", sans-serif;
  color: #fff;
  font-weight: 500;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .c-btnBnr__txt {
    font-size: clamp(14px, 3.7333333333vw, 21px);
    margin-left: clamp(16px, 4.2666666667vw, 24px);
    margin-right: clamp(8px, 2.1333333333vw, 12px);
  }
}
@media screen and (min-width:768px) {
  .c-btnBnr__txt {
    font-size: clamp(10.668px, 1.3888888889vw, 26.662px);
    margin-left: clamp(17.0688px, 2.2222222222vw, 42.6592px);
    margin-right: clamp(8.5344px, 1.1111111111vw, 21.3296px);
    -webkit-transition: all 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: all 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
  }
}

@media screen and (min-width:768px) {
  .c-btnCircle:hover .circle:before, a:hover .c-btnCircle .circle:before {
    opacity: 0;
  }
}
@media screen and (min-width:768px) {
  .c-btnCircle:hover .circle:after, a:hover .c-btnCircle .circle:after {
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
  }
}
@media screen and (min-width:768px) {
  .c-btnCircle:hover .circle .arrow, a:hover .c-btnCircle .circle .arrow {
    -webkit-transform: scale(0);
        -ms-transform: scale(0);
            transform: scale(0);
  }
}
@media screen and (min-width:768px) {
  .c-btnCircle:hover .circle .pdf, a:hover .c-btnCircle .circle .pdf {
    -webkit-transform: scale(0);
        -ms-transform: scale(0);
            transform: scale(0);
  }
}
@media screen and (min-width:768px) {
  .c-btnCircle:hover .circle .blank, a:hover .c-btnCircle .circle .blank {
    -webkit-transform: scale(0);
        -ms-transform: scale(0);
            transform: scale(0);
  }
}
@media screen and (min-width:768px) {
  .c-btnCircle:hover .circle .mail, a:hover .c-btnCircle .circle .mail {
    -webkit-transform: scale(0);
        -ms-transform: scale(0);
            transform: scale(0);
  }
}
@media screen and (min-width:768px) {
  .c-btnCircle:hover .circle .dl, a:hover .c-btnCircle .circle .dl {
    -webkit-transform: scale(0);
        -ms-transform: scale(0);
            transform: scale(0);
  }
}
.c-btnCircle .circle {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 50% 50%;
  /*background: linear-gradient(270deg, #003e88, #016db2 60.94%, #0197d7);*/
  background: -webkit-gradient(linear, right top, left top, from(#000), color-stop(60.94%, #000), to(#000));
  background: -webkit-linear-gradient(right, #000, #000 60.94%, #000);
  background: linear-gradient(270deg, #000, #000 60.94%, #000);
}
@media screen and (max-width: 767px) {
  .c-btnCircle .circle {
    width: clamp(32px, 8.5333333333vw, 48px);
    height: clamp(32px, 8.5333333333vw, 48px);
  }
}
@media screen and (min-width:768px) {
  .c-btnCircle .circle {
    width: clamp(28.47222224px, 2.7777777778vw, 53.324px);
    height: clamp(28.47222224px, 2.7777777778vw, 53.324px);
  }
}
@media screen and (max-width: 767px) {
  .f-ctBtnItem .c-btnCircle .circle {
    width: clamp(44px, 11.7333333333vw, 66px);
    height: clamp(44px, 11.7333333333vw, 66px);
  }
}
@media screen and (min-width:768px) {
  .f-ctBtnItem .c-btnCircle .circle {
    width: clamp(39.861111136px, 3.8888888889vw, 74.6536px);
    height: clamp(39.861111136px, 3.8888888889vw, 74.6536px);
  }
}
.c-btnCircle .circle:before {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  margin: auto;
  border-radius: 50%;
  background-color: #000;
}
@media screen and (min-width:768px) {
  .c-btnCircle .circle:before {
    -webkit-transition: opacity 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: opacity 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
  }
}
.c-btnCircle .circle:after {
  content: "";
  display: block;
  width: 4px;
  height: 4px;
  position: absolute;
  inset: 0;
  margin: auto;
  border-radius: 50%;
  background-color: #fff;
  -webkit-transform: scale(0);
      -ms-transform: scale(0);
          transform: scale(0);
}
@media screen and (min-width:768px) {
  .c-btnCircle .circle:after {
    -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: -webkit-transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99), -webkit-transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
  }
}
.c-btnCircle .circle--wht:before {
  background-color: #fff;
}
.c-btnCircle .circle .arrow {
  overflow: hidden;
  display: block;
  position: relative;
  background-image: url("../images/common/ico_arrow_bk.svg");
  background-position: center center;
  background-size: contain;
  margin-left: 0;
}
@media screen and (max-width: 767px) {
  .c-btnCircle .circle .arrow {
    width: clamp(32px, 8.5333333333vw, 48px);
    height: clamp(32px, 8.5333333333vw, 48px);
  }
}
@media screen and (min-width:768px) {
  .c-btnCircle .circle .arrow {
    width: clamp(28.47222224px, 2.7777777778vw, 53.324px);
    height: clamp(28.47222224px, 2.7777777778vw, 53.324px);
    -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: -webkit-transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99), -webkit-transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
  }
}
.c-btnCircle .circle .arrow--wht {
  background-image: url("../images/common/ico_arrow_wht.svg");
  background-size: contain;
}
.c-btnCircle .circle .pdf {
  overflow: hidden;
  display: block;
  position: relative;
  background-image: url("../images/common/ico_pdf_wht.svg");
  background-position: center center;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  .c-btnCircle .circle .pdf {
    width: clamp(12px, 3.2vw, 18px);
    height: clamp(14px, 3.7333333333vw, 21px);
  }
}
@media screen and (min-width:768px) {
  .c-btnCircle .circle .pdf {
    width: clamp(10.67708334px, 1.0416666667vw, 19.9965px);
    height: clamp(14.23611112px, 1.3888888889vw, 26.662px);
    -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: -webkit-transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99), -webkit-transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
  }
}
.c-btnCircle .circle .pdf--wht {
  background-image: url("../images/common/ico_pdf_bk.svg");
  background-size: contain;
}
.c-btnCircle .circle .blank {
  overflow: hidden;
  display: block;
  position: relative;
  background-image: url("../images/common/ico_blank_wht.svg");
  background-position: center center;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  .c-btnCircle .circle .blank {
    width: clamp(16px, 4.2666666667vw, 24px);
    height: clamp(16px, 4.2666666667vw, 24px);
  }
}
@media screen and (min-width:768px) {
  .c-btnCircle .circle .blank {
    width: clamp(14.23611112px, 1.3888888889vw, 26.662px);
    height: clamp(14.23611112px, 1.3888888889vw, 26.662px);
    -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: -webkit-transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99), -webkit-transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
  }
}
.c-btnCircle .circle .blank--wht {
  background-image: url("../images/common/ico_blank_bk.svg");
  background-size: contain;
}
.c-btnCircle .circle .mail {
  overflow: hidden;
  display: block;
  position: relative;
  background-position: center center;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  .c-btnCircle .circle .mail {
    width: clamp(16px, 4.2666666667vw, 24px);
    height: clamp(16px, 4.2666666667vw, 24px);
  }
}
@media screen and (min-width:768px) {
  .c-btnCircle .circle .mail {
    width: clamp(14.23611112px, 1.3888888889vw, 26.662px);
    height: clamp(14.23611112px, 1.3888888889vw, 26.662px);
    -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: -webkit-transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99), -webkit-transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
  }
}
.c-btnCircle .circle .mail--wht {
  background-image: url("../images/common/ico_mail_bk.svg");
  background-size: contain;
}
.c-btnCircle .circle .dl {
  overflow: hidden;
  display: block;
  position: relative;
}
@media screen and (max-width: 767px) {
  .c-btnCircle .circle .dl {
    width: clamp(16px, 4.2666666667vw, 24px);
    height: clamp(16px, 4.2666666667vw, 24px);
  }
}
@media screen and (min-width:768px) {
  .c-btnCircle .circle .dl {
    width: clamp(14.23611112px, 1.3888888889vw, 26.662px);
    height: clamp(14.23611112px, 1.3888888889vw, 26.662px);
    -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: -webkit-transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99), -webkit-transform 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
  }
}
.c-btnCircle .circle .dl--wht {
  background-image: url("../images/common/ico_dl_bk.svg");
  background-position: center center;
  background-size: contain;
}
@media screen and (min-width:768px) {
  .c-linkBtnWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-column-gap: clamp(12.8016px, 1.6666666667vw, 31.9944px);
       -moz-column-gap: clamp(12.8016px, 1.6666666667vw, 31.9944px);
            column-gap: clamp(12.8016px, 1.6666666667vw, 31.9944px);
    row-gap: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}

@media screen and (max-width: 767px) {
  .c-linksBtnItem {
    margin-top: clamp(10px, 2.6666666667vw, 15px);
  }
}
@media screen and (min-width:768px) {
  .c-linksBtnItem {
    width: calc((100% - 3.3333333333vw) / 3);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}
@media screen and (max-width: 767px) {
  .c-linksBtnItem:first-child {
    margin-top: 0;
  }
}
.c-linksBtnItem__link {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  border: 1px solid #BDBDBD;
  color: #1e1e1e;
  line-height: 1.4;
  letter-spacing: 0;
  background-color: #F9F9F9;
  /*.txt {
      position: relative;
      display: block;
      @media screen and (max-width: 767px) {
      }
      @media screen and (min-width:768px) {
      }
  }*/
  /*.ico {
      position: relative;
      display: block;
      background-image: url("../images/common/ico_arrow_right_bk.svg");
      background-position: center center;
      background-size: contain;
      @media screen and (max-width: 767px) {
          width: mix.res-s(32, vars.$min-sp, vars.$max-spMid, 375);
          height: mix.res-s(32, vars.$min-sp, vars.$max-spMid, 375);
      }
      @media screen and (min-width:768px) {
          width: mix.res-s(14, vars.$min-pc, vars.$max-pc);
          height: mix.res-s(14, vars.$min-pc, vars.$max-pc);
          transition: transform 0.4s cubic-bezier(.86, .01, .15, .99);
      }
  }*/
  /*&:before {
      position: absolute;
      top: 0;
      left: 0;
      content: "";
      display: block;
      width: 100%;
      height: 100%;
      background: #000;
      transform: scaleX(0);
      transform-origin: right;
      transition: all 0.5s ease;
      transition-property: transform;
      @media screen and (max-width: 767px) {
      }
      @media screen and (min-width:768px) {
      }
  }*/
}
@media screen and (max-width: 767px) {
  .c-linksBtnItem__link {
    border-radius: 3px;
    padding: clamp(13px, 3.4666666667vw, 19.5px) clamp(15px, 4vw, 22.5px);
    padding-right: clamp(40px, 10.6666666667vw, 60px);
    font-size: clamp(12px, 3.2vw, 18px);
  }
}
@media screen and (min-width:768px) {
  .c-linksBtnItem__link {
    border-radius: 5px;
    min-height: clamp(45.555555584px, 4.4444444444vw, 85.3184px);
    padding: clamp(7.11805556px, 0.6944444444vw, 13.331px) clamp(17.083333344px, 1.6666666667vw, 31.9944px);
    padding-right: clamp(34.166666688px, 3.3333333333vw, 63.9888px);
    font-size: clamp(7.4676px, 0.9722222222vw, 18.6634px);
    -webkit-transition: all 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: all 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
  }
}
@media screen and (max-width: 767px) {
  .c-linksBtnItem__link--arrow {
    background: url("../images/common/ico_arrow_right_bk.svg") no-repeat right clamp(15px, 4vw, 22.5px) center #F9F9F9;
    background-size: clamp(6px, 1.6vw, 9px) auto;
  }
}
@media screen and (min-width:768px) {
  .c-linksBtnItem__link--arrow {
    background: url("../images/common/ico_arrow_right_bk.svg") no-repeat right clamp(11.388888896px, 1.1111111111vw, 21.3296px) center #F9F9F9;
    background-size: clamp(5.694444448px, 0.5555555556vw, 10.6648px) auto;
  }
}
@media screen and (min-width:768px) {
  .c-linksBtnItem__link--arrow:hover {
    background-position: right 10px center;
  }
}
@media screen and (max-width: 767px) {
  .c-linksBtnItem__link--blank {
    background: url("../images/common/ico_blank_bk.svg") no-repeat right clamp(10px, 2.6666666667vw, 15px) center #F9F9F9;
    background-size: clamp(16px, 4.2666666667vw, 24px) auto;
  }
}
@media screen and (min-width:768px) {
  .c-linksBtnItem__link--blank {
    background: url("../images/common/ico_blank_bk.svg") no-repeat right clamp(11.388888896px, 1.1111111111vw, 21.3296px) center #F9F9F9;
    background-size: clamp(14.23611112px, 1.3888888889vw, 26.662px) auto;
  }
}
@media screen and (min-width:768px) {
  .c-linksBtnItem__link--blank:hover {
    background-position: right 10px center;
  }
}
@media screen and (max-width: 767px) {
  .c-linksBtnItem__link--pdf {
    background: url("../images/common/ico_pdf_bk.svg") no-repeat right clamp(12px, 3.2vw, 18px) center #F9F9F9;
    background-size: clamp(12px, 3.2vw, 18px) auto;
  }
}
@media screen and (min-width:768px) {
  .c-linksBtnItem__link--pdf {
    background: url("../images/common/ico_pdf_bk.svg") no-repeat right clamp(11.388888896px, 1.1111111111vw, 21.3296px) center #F9F9F9;
    background-size: clamp(10.67708334px, 1.0416666667vw, 19.9965px) auto;
  }
}
@media screen and (min-width:768px) {
  .c-linksBtnItem__link--pdf:hover {
    background-position: right 10px center;
  }
}
.c-linksBtnItem__link--none {
  opacity: 0.5;
  pointer-events: none;
}
.c-linksBtnItem__link:hover {
  /*&:before {
      @media screen and (max-width: 767px) {
      }
      @media screen and (min-width:768px) {
          transform: scaleX(1);
          transform-origin: left;
      }
  }*/
}
@media screen and (min-width:768px) {
  .c-linksBtnItem__link:hover {
    color: #4774B9;
    background-color: #F7F9FC;
    border-color: #4774B9;
  }
}

.text {
  position: relative;
  display: block;
}

.text::before {
  position: absolute;
  left: 0;
  width: 0;
  height: 100%;
  content: "";
  background-color: #fff;
  mix-blend-mode: difference; /* difference（差分） */
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.text:hover::before {
  width: 100%;
}

.c-txtLink {
  color: #4774B9;
}
@media screen and (min-width:768px) {
  .c-txtLink {
    -webkit-transition: all 0.2s ease-in-out 0s;
    transition: all 0.2s ease-in-out 0s;
  }
}
.c-txtLink:hover {
  opacity: 0.6;
}
body.overflow-hidden {
  overflow: hidden;
}

header {
  /*z-index: 2;*/
  /*mix-blend-mode: difference;*/
}
main {
  position: relative;
  z-index: 0;
}
.h-menuWrap {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 200;
  width: 100%;
  -webkit-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
@media screen and (max-width: 767px) {
  .h-menuWrap {
    padding: 10px 10px 0 10px;
  }
}
@media screen and (min-width:768px) {
  .h-menuWrap {
    padding: 24px 24px 0 24px;
  }
}

.h-headWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  background: rgba(255, 255, 255, 0.6);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.1);
  backdrop-filter: blur(8px);
}
@media screen and (max-width: 767px) {
  .h-headWrap {
    height: 56px;
    padding: 0 10px;
    border-radius: 8px;
  }
}
@media screen and (min-width:768px) {
  .h-headWrap {
    height: 72px;
    padding: 0 1.1111111111vw;
    border-radius: 10px;
  }
}

.h-logoWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 767px) {
  .h-logoWrap {
    -webkit-column-gap: 8px;
       -moz-column-gap: 8px;
            column-gap: 8px;
  }
}
@media screen and (min-width:768px) {
  .h-logoWrap {
    -webkit-column-gap: 16px;
       -moz-column-gap: 16px;
            column-gap: 16px;
    -webkit-transition: all 0.2s ease-in-out 0s;
    transition: all 0.2s ease-in-out 0s;
  }
}
@media screen and (min-width:768px) {
  .h-logoWrap:hover {
    opacity: 0.6;
  }
}
@media screen and (max-width: 767px) {
  .f-logoWrap .h-logoWrap {
    display: block;
  }
}
.h-logomark {
  color: #000;
}
@media screen and (max-width: 767px) {
  .h-logomark {
    width: 40px;
    height: auto;
  }
}
@media screen and (min-width:768px) {
  .h-logomark {
    width: 56px;
    height: 56px;
  }
}
.f-logoWrap .h-logomark {
  color: rgba(0, 0, 0, 0.6);
}
@media screen and (max-width: 767px) {
  .f-logoWrap .h-logomark {
    margin: 0 auto;
    width: clamp(56px, 14.9333333333vw, 84px);
    height: clamp(56px, 14.9333333333vw, 84px);
  }
}
@media screen and (min-width:768px) {
  .f-logoWrap .h-logomark {
    width: clamp(39.861111136px, 3.8888888889vw, 74.6536px);
    height: clamp(39.861111136px, 3.8888888889vw, 74.6536px);
  }
}

.h-logo {
  color: #000;
}
@media screen and (max-width: 767px) {
  .h-logo {
    width: 180px;
    height: auto;
  }
}
@media screen and (min-width:768px) {
  .h-logo {
    width: 250px;
    height: 13px;
  }
}
.f-logoWrap .h-logo {
  color: rgba(0, 0, 0, 0.6);
}
@media screen and (max-width: 767px) {
  .f-logoWrap .h-logo {
    margin: 0 auto;
    width: clamp(250px, 66.6666666667vw, 375px);
    height: clamp(13px, 3.4666666667vw, 19.5px);
    margin-top: clamp(16px, 4.2666666667vw, 24px);
  }
}
@media screen and (min-width:768px) {
  .f-logoWrap .h-logo {
    width: clamp(177.951389px, 17.3611111111vw, 333.275px);
    height: clamp(9.253472228px, 0.9027777778vw, 17.3303px);
  }
}

@media screen and (max-width: 767px) {
  .h-gnav {
    display: none;
  }
}
@media screen and (min-width:768px) {
  .h-gnav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media screen and (min-width: 768px) and (max-width:1024px) {
  .h-gnav {
    display: none;
  }
}

@media screen and (min-width:768px) {
  .h-gnavItem {
    position: relative;
    margin-right: clamp(12.8016px, 1.6666666667vw, 31.9944px);
  }
}
@media screen and (min-width:768px) {
  .h-gnavItem:last-child {
    margin-right: 0;
  }
}

@media screen and (min-width:768px) {
  .h-gnavItem__link {
    display: block;
    padding: 8px 0;
    color: #000;
    font-size: clamp(9.253472228px, 0.9027777778vw, 17.3303px);
  }
}
@media screen and (min-width:768px) {
  .h-gnavChild {
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    top: 100%;
    left: 50%;
    width: clamp(227.77777792px, 22.2222222222vw, 426.592px);
    background: rgba(255, 255, 255, 0.9);
    -webkit-box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.1);
            box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.1);
    border-radius: 10px;
    -webkit-transform: translate(-50%, -20px);
        -ms-transform: translate(-50%, -20px);
            transform: translate(-50%, -20px);
    -webkit-transition: opacity 0.25s 0.0833333333s, visibility 0s 0.25s, -webkit-transform 0.3333333333s cubic-bezier(0.33, 0, 0.24, 1);
    transition: opacity 0.25s 0.0833333333s, visibility 0s 0.25s, -webkit-transform 0.3333333333s cubic-bezier(0.33, 0, 0.24, 1);
    transition: opacity 0.25s 0.0833333333s, visibility 0s 0.25s, transform 0.3333333333s cubic-bezier(0.33, 0, 0.24, 1);
    transition: opacity 0.25s 0.0833333333s, visibility 0s 0.25s, transform 0.3333333333s cubic-bezier(0.33, 0, 0.24, 1), -webkit-transform 0.3333333333s cubic-bezier(0.33, 0, 0.24, 1);
    padding: clamp(5.694444448px, 0.5555555556vw, 10.6648px) clamp(14.23611112px, 1.3888888889vw, 26.662px);
  }
}

@media screen and (min-width:768px) {
  .h-gnavItem:hover .h-gnavChild, .h-gnavItem:focus-within .h-gnavChild {
    visibility: visible;
    opacity: 1;
    pointer-events: auto; /* ← 操作可能に */
    -webkit-transition: opacity 0.25s, -webkit-transform 0.3333333333s cubic-bezier(0.33, 0, 0, 1);
    transition: opacity 0.25s, -webkit-transform 0.3333333333s cubic-bezier(0.33, 0, 0, 1);
    transition: transform 0.3333333333s cubic-bezier(0.33, 0, 0, 1), opacity 0.25s;
    transition: transform 0.3333333333s cubic-bezier(0.33, 0, 0, 1), opacity 0.25s, -webkit-transform 0.3333333333s cubic-bezier(0.33, 0, 0, 1);
    -webkit-transform: translate(-50%, 0px);
        -ms-transform: translate(-50%, 0px);
            transform: translate(-50%, 0px);
  }
}

@media screen and (min-width:768px) {
  .h-gnavChildItem {
    border-bottom: 1px solid #bdbdbd;
  }
}
@media screen and (min-width:768px) {
  .h-gnavChildItem:last-child {
    border-bottom: none;
  }
}

@media screen and (min-width:768px) {
  .h-gnavChildItem__link {
    display: block;
    width: 100%;
    padding: clamp(11.388888896px, 1.1111111111vw, 21.3296px) 0;
    padding-right: clamp(22.777777792px, 2.2222222222vw, 42.6592px);
    color: #000;
    line-height: 1.5;
    font-size: clamp(8.541666672px, 0.8333333333vw, 15.9972px);
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    letter-spacing: 0.05em;
  }
}
@media screen and (min-width:768px) {
  .h-gnavChildItem__link--pdf {
    background: url("../images/common/ico_pdf_bk.svg") no-repeat right 0 center;
    background-size: clamp(9.965277784px, 0.9722222222vw, 18.6634px) auto;
  }
}
@media screen and (min-width:768px) {
  .h-gnavChildItem__link:hover {
    color: #4774B9;
    background-image: url("../images/common/ico_pdf_blue.svg");
  }
}

.h-gnavItem__btn {
  display: block;
  background-color: #000;
  border-radius: 26px;
  color: #fff;
  line-height: 1;
  text-align: center;
}
@media screen and (min-width:768px) {
  .h-gnavItem__btn {
    width: clamp(74.676px, 9.7222222222vw, 186.634px);
    padding: clamp(5.694444448px, 0.5555555556vw, 10.6648px);
    font-size: clamp(9.253472228px, 0.9027777778vw, 17.3303px);
    -webkit-transition: all 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: all 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
  }
}
@media screen and (min-width:768px) {
  .h-gnavItem__btn:hover {
    background-position: 100% 50%;
  }
}
.h-gnavItem__btn--long {
  background: -webkit-gradient(linear, left top, right top, from(#E60027), color-stop(35%, #E73675), color-stop(50%, #E73675), color-stop(50%, #E73675), color-stop(65%, #E60027), to(#E60027));
  background: -webkit-linear-gradient(left, #E60027 0%, #E73675 35%, #E73675 50%, #E73675 50%, #E60027 65%, #E60027 100%);
  background: linear-gradient(to right, #E60027 0%, #E73675 35%, #E73675 50%, #E73675 50%, #E60027 65%, #E60027 100%);
  background-position: 0 50%;
  background-size: 200% auto;
}
.h-gnavItem__btn--short {
  background: -webkit-gradient(linear, left top, right top, from(#00AEC4), color-stop(35%, #00AFEB), color-stop(50%, #00AFEB), color-stop(50%, #00AFEB), color-stop(65%, #00AEC4), to(#00AEC4));
  background: -webkit-linear-gradient(left, #00AEC4 0%, #00AFEB 35%, #00AFEB 50%, #00AFEB 50%, #00AEC4 65%, #00AEC4 100%);
  background: linear-gradient(to right, #00AEC4 0%, #00AFEB 35%, #00AFEB 50%, #00AFEB 50%, #00AEC4 65%, #00AEC4 100%);
  background-position: 0 50%;
  background-size: 200% auto;
}
.h-gnavItem__btn--sat {
  background: -webkit-gradient(linear, left top, right top, from(#3AAE36), color-stop(35%, #00A8AC), color-stop(50%, #00A8AC), color-stop(50%, #00A8AC), color-stop(65%, #3AAE36), to(#3AAE36));
  background: -webkit-linear-gradient(left, #3AAE36 0%, #00A8AC 35%, #00A8AC 50%, #00A8AC 50%, #3AAE36 65%, #3AAE36 100%);
  background: linear-gradient(to right, #3AAE36 0%, #00A8AC 35%, #00A8AC 50%, #00A8AC 50%, #3AAE36 65%, #3AAE36 100%);
  background-position: 0 50%;
  background-size: 200% auto;
}

/* is-fixedクラス追加
-----------------------------------------------------------------*/
.h-menuWrap.is-fixed {
  position: fixed;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
@media screen and (max-width: 767px) {
  .h-menuWrap.is-fixed {
    top: -66px;
  }
}
@media screen and (min-width:768px) {
  .h-menuWrap.is-fixed {
    top: -96px;
  }
}

/* menu-is-openクラス追加
-----------------------------------------------------------------*/
/* is-fixed+menu-is-openクラス追加
-----------------------------------------------------------------*/
/* is-visibleクラス追加
-----------------------------------------------------------------*/
.h-menuWrap.is-visible {
  -webkit-transform: translate3d(0, 100%, 0);
          transform: translate3d(0, 100%, 0);
  /*box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);*/
}
@media screen and (min-width:768px) {
  .h-btnNav__link {
    display: none;
  }
}
@media screen and (min-width: 768px) and (max-width:1024px) {
  .h-btnNav__link {
    display: initial;
  }
}

.menu-trigger,
.menu-trigger span {
  display: block;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.menu-trigger {
  position: relative;
  background: none;
  border: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .menu-trigger {
    width: 32px;
    min-height: 15px;
  }
}
@media screen and (min-width:768px) {
  .menu-trigger {
    width: 50px;
    height: 23px;
  }
}

.menu-trigger span {
  position: absolute;
  right: 0;
  width: 100%;
  height: 1px;
  background-color: #000;
  border-radius: 4px;
}
.menu-trigger span:nth-child(2) {
  width: 80%;
}
.menu-trigger span:nth-child(3) {
  width: 60%;
}
.menu-trigger span:nth-of-type(1) {
  top: 0;
}

@media screen and (max-width: 767px) {
  .menu-trigger span:nth-of-type(2) {
    top: 7px;
  }
}
@media screen and (min-width:768px) {
  .menu-trigger span:nth-of-type(2) {
    top: 11px;
  }
}

.menu-trigger span:nth-of-type(3) {
  bottom: 0;
}

#menu05.active span:nth-of-type(1) {
  width: 84%;
}
@media screen and (max-width: 767px) {
  #menu05.active span:nth-of-type(1) {
    -webkit-transform: translateY(7px) rotate(-45deg);
        -ms-transform: translateY(7px) rotate(-45deg);
            transform: translateY(7px) rotate(-45deg);
  }
}
@media screen and (min-width:768px) {
  #menu05.active span:nth-of-type(1) {
    -webkit-transform: translateY(11px) rotate(-45deg);
        -ms-transform: translateY(11px) rotate(-45deg);
            transform: translateY(11px) rotate(-45deg);
  }
}

#menu05.active span:nth-of-type(2) {
  right: -50%;
  opacity: 0;
  -webkit-animation: active-menu05-bar02 0.8s forwards;
          animation: active-menu05-bar02 0.8s forwards;
}

@-webkit-keyframes active-menu05-bar02 {
  100% {
    height: 0;
  }
}

@keyframes active-menu05-bar02 {
  100% {
    height: 0;
  }
}
#menu05.active span:nth-of-type(3) {
  width: 84%;
}
@media screen and (max-width: 767px) {
  #menu05.active span:nth-of-type(3) {
    -webkit-transform: translateY(-7px) rotate(45deg);
        -ms-transform: translateY(-7px) rotate(45deg);
            transform: translateY(-7px) rotate(45deg);
  }
}
@media screen and (min-width:768px) {
  #menu05.active span:nth-of-type(3) {
    -webkit-transform: translateY(-11px) rotate(45deg);
        -ms-transform: translateY(-11px) rotate(45deg);
            transform: translateY(-11px) rotate(45deg);
  }
}

.h-navWrap {
  position: relative;
  /*z-index: 1;*/
}
.h-menu {
  visibility: hidden;
  opacity: 0;
  -webkit-transition: opacity 0.65s, visibility 0.65s;
  transition: opacity 0.65s, visibility 0.65s;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  height: 100dvh;
  background: -webkit-gradient(linear, left top, left bottom, from(#1091C2), to(#C6DCE4));
  background: -webkit-linear-gradient(top, #1091C2, #C6DCE4);
  background: linear-gradient(to bottom, #1091C2, #C6DCE4);
  z-index: 100;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  overflow: auto;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.h-menu.is-visible {
  visibility: visible;
  opacity: 1;
}
.h-menu.close-menu {
  visibility: hidden;
  opacity: 0;
}
@-webkit-keyframes animMenuReveal {
  0% {
    width: 0vw;
  }
  100% {
    width: 100vw;
  }
}
@keyframes animMenuReveal {
  0% {
    width: 0vw;
  }
  100% {
    width: 100vw;
  }
}
@-webkit-keyframes animMenuClose {
  0% {
    width: 100vw;
  }
  100% {
    width: 0vw;
  }
}
@keyframes animMenuClose {
  0% {
    width: 100vw;
  }
  100% {
    width: 0vw;
  }
}
@-webkit-keyframes animMenuRevealLinks {
  0% {
    width: 100%;
  }
  100% {
    width: 0%;
  }
}
@keyframes animMenuRevealLinks {
  0% {
    width: 100%;
  }
  100% {
    width: 0%;
  }
}
@-webkit-keyframes animMenuCloseLinks {
  0% {
    width: 0%;
  }
  100% {
    width: 110%;
  }
}
@keyframes animMenuCloseLinks {
  0% {
    width: 0%;
  }
  100% {
    width: 110%;
  }
}
.h-menuArea {
  position: relative;
  width: 100%;
  /*height: 100%;*/
  background: url("../images/common/bg_noise.svg") repeat left top;
}
@media screen and (max-width: 767px) {
  .h-menuArea {
    padding: 102px 0 120px;
    /*background: repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.1) 1px, transparent 1px, transparent 20%), rgba(0, 0, 0, 0);*/
  }
}
@media screen and (min-width:768px) {
  .h-menuArea {
    padding: 120px 0 120px;
    /*background: repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.1) 1px, transparent 1px, transparent 14.2857143%), rgba(0, 0, 0, 0);*/
  }
}

@media screen and (max-width: 767px) {
  .h-menuInner {
    padding: 0 clamp(15px, 4vw, 22.5px);
  }
}
@media screen and (min-width:768px) {
  .h-menuInner {
    padding: 0 clamp(85.41666672px, 8.3333333333vw, 159.972px);
  }
}

.h-navItem {
  position: relative;
}
@media screen and (max-width: 767px) {
  .h-navItem {
    margin-top: clamp(10px, 2.6666666667vw, 15px);
  }
}
@media screen and (min-width:768px) {
  .h-navItem {
    margin-top: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
  }
}
.h-navItem .c-linksBtnItem__link {
  background-color: #fff;
}
.h-menuPgWrap {
  display: block;
  position: relative;
  background-color: #ddd;
}
@media screen and (max-width: 767px) {
  .h-menuPgWrap {
    margin-top: clamp(10px, 2.6666666667vw, 15px);
    padding: clamp(15px, 4vw, 22.5px);
    border-radius: clamp(5px, 1.3333333333vw, 7.5px);
  }
}
@media screen and (min-width:768px) {
  .h-menuPgWrap {
    margin-top: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
    padding: clamp(17.083333344px, 1.6666666667vw, 31.9944px);
    border-radius: clamp(7.11805556px, 0.6944444444vw, 13.331px);
  }
}
.h-menuPgWrap--long {
  background: -webkit-gradient(linear, left top, right top, from(#E60027), color-stop(35%, #E73675), color-stop(50%, #E73675), color-stop(50%, #E73675), color-stop(65%, #E60027), to(#E60027));
  background: -webkit-linear-gradient(left, #E60027 0%, #E73675 35%, #E73675 50%, #E73675 50%, #E60027 65%, #E60027 100%);
  background: linear-gradient(to right, #E60027 0%, #E73675 35%, #E73675 50%, #E73675 50%, #E60027 65%, #E60027 100%);
  background-position: 0 50%;
  background-size: 200% auto;
}
.h-menuPgWrap--short {
  background: -webkit-gradient(linear, left top, right top, from(#00AEC4), color-stop(35%, #00AFEB), color-stop(50%, #00AFEB), color-stop(50%, #00AFEB), color-stop(65%, #00AEC4), to(#00AEC4));
  background: -webkit-linear-gradient(left, #00AEC4 0%, #00AFEB 35%, #00AFEB 50%, #00AFEB 50%, #00AEC4 65%, #00AEC4 100%);
  background: linear-gradient(to right, #00AEC4 0%, #00AFEB 35%, #00AFEB 50%, #00AFEB 50%, #00AEC4 65%, #00AEC4 100%);
  background-position: 0 50%;
  background-size: 200% auto;
}
.h-menuPgWrap--sat {
  background: -webkit-gradient(linear, left top, right top, from(#3AAE36), color-stop(35%, #00A8AC), color-stop(50%, #00A8AC), color-stop(50%, #00A8AC), color-stop(65%, #3AAE36), to(#3AAE36));
  background: -webkit-linear-gradient(left, #3AAE36 0%, #00A8AC 35%, #00A8AC 50%, #00A8AC 50%, #3AAE36 65%, #3AAE36 100%);
  background: linear-gradient(to right, #3AAE36 0%, #00A8AC 35%, #00A8AC 50%, #00A8AC 50%, #3AAE36 65%, #3AAE36 100%);
  background-position: 0 50%;
  background-size: 200% auto;
}

footer {
  position: relative;
  width: 100%;
  margin-top: auto;
}
.f-wrap {
  width: 100%;
  overflow: hidden;
}
#home .f-wrap {
  background-color: #f9f9f9;
}
.f-pageTop {
  z-index: 1;
  position: fixed;
  cursor: pointer;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  -webkit-transition: all 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
  transition: all 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
  /* 初期状態は非表示 */
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(20px);
      -ms-transform: translateY(20px);
          transform: translateY(20px);
}
@media screen and (max-width: 767px) {
  .f-pageTop {
    bottom: 2.5vh;
    right: clamp(15px, 4vw, 22.5px);
  }
}
@media screen and (min-width:768px) {
  .f-pageTop {
    bottom: 6vh;
    right: clamp(17.083333344px, 1.6666666667vw, 31.9944px);
  }
}
.f-pageTop img {
  -webkit-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
          transform: rotate(-90deg);
}
@media screen and (max-width: 767px) {
  .f-pageTop img {
    width: clamp(40px, 10.6666666667vw, 60px);
    height: auto;
  }
}
@media screen and (min-width:768px) {
  .f-pageTop img {
    width: clamp(35.5902778px, 3.4722222222vw, 66.655px);
    height: auto;
    -webkit-transition: all 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: all 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
  }
}
@media screen and (min-width:768px) {
  .f-pageTop:hover img {
    opacity: 0.6;
  }
}

/* フェードイン表示用のクラス */
.f-pageTop.show {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
}

.f-inner {
  position: relative;
  z-index: 0;
  overflow: hidden;
  border-top-left-radius: 50%;
  border-top-right-radius: 50%;
  background: -webkit-gradient(linear, left top, left bottom, from(#1091C2), to(#C6DCE4));
  background: -webkit-linear-gradient(top, #1091C2, #C6DCE4);
  background: linear-gradient(to bottom, #1091C2, #C6DCE4);
}
@media screen and (max-width: 767px) {
  .f-inner {
    margin-left: -250px;
    margin-right: -250px;
    padding-left: 250px;
    padding-right: 250px;
  }
}
@media screen and (min-width:768px) {
  .f-inner {
    margin-left: -450px;
    margin-right: -450px;
    padding-left: 450px;
    padding-right: 450px;
  }
}

.f-area {
  background: url("../images/common/bg_noise.svg") repeat left top;
}
@media screen and (max-width: 767px) {
  .f-area {
    padding-top: clamp(574px, 153.0666666667vw, 861px);
    background-size: 500px auto;
  }
}
@media screen and (min-width:768px) {
  .f-area {
    padding-top: clamp(330.277777984px, 32.2222222222vw, 618.5584px);
    background-size: 1000px auto;
  }
}

.f-ctWrap {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .f-ctWrap {
    padding: clamp(15px, 4vw, 22.5px);
  }
}
@media screen and (min-width:768px) {
  .f-ctWrap {
    top: clamp(22.777777792px, 2.2222222222vw, 42.6592px);
    /*padding: mix.res-s(32, vars.$min-tab, vars.$max-pc) mix.res-s(80, vars.$min-tab, null);*/
  }
}
.h-menuInner .f-ctWrap {
  position: initial;
}
@media screen and (max-width: 767px) {
  .h-menuInner .f-ctWrap {
    padding: 0;
  }
}
.f-ctBox {
  margin: 0 auto;
  background: rgba(0, 0, 0, 0.11);
  backdrop-filter: blur(16px);
}
@media screen and (max-width: 767px) {
  .f-ctBox {
    width: 100%;
    border-radius: clamp(10px, 2.6666666667vw, 15px);
  }
}
@media screen and (min-width:768px) {
  .f-ctBox {
    width: 80%;
    border-radius: clamp(14.23611112px, 1.3888888889vw, 26.662px);
  }
}
@media screen and (min-width:768px) {
  .h-menuInner .f-ctBox {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .f-ctBox {
    padding: clamp(30px, 8vw, 45px) clamp(15px, 4vw, 22.5px);
  }
}
@media screen and (min-width:768px) {
  .f-ctBox {
    padding: clamp(42.672px, 5.5555555556vw, 106.648px);
  }
}
@media screen and (min-width:768px) {
  .h-menuInner .f-ctBox {
    padding: clamp(28.47222224px, 2.7777777778vw, 53.324px);
  }
}

@media screen and (max-width: 767px) {
  .f-ctHeadWrap {
    text-align: center;
  }
}
@media screen and (min-width:768px) {
  .f-ctHeadWrap {
    text-align: center;
  }
}

.f-ctHead__en {
  font-family: "Roboto Condensed", sans-serif;
  font-style: italic;
  color: #fff;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .f-ctHead__en {
    font-size: clamp(40px, 10.6666666667vw, 60px);
  }
}
@media screen and (min-width:768px) {
  .f-ctHead__en {
    font-size: clamp(44.131944472px, 4.3055555556vw, 82.6522px);
  }
}

.f-ctHead__jp {
  font-family: "Roboto Condensed", sans-serif;
  font-weight: 500;
  color: #fff;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .f-ctHead__jp {
    font-size: clamp(12px, 3.2vw, 18px);
  }
}
@media screen and (min-width:768px) {
  .f-ctHead__jp {
    font-size: clamp(9.965277784px, 0.9722222222vw, 18.6634px);
  }
}

@media screen and (max-width: 767px) {
  .f-ctCont {
    margin-top: clamp(40px, 10.6666666667vw, 60px);
  }
}
@media screen and (min-width:768px) {
  .f-ctCont {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: clamp(32.004px, 4.1666666667vw, 79.986px);
       -moz-column-gap: clamp(32.004px, 4.1666666667vw, 79.986px);
            column-gap: clamp(32.004px, 4.1666666667vw, 79.986px);
    margin-top: clamp(45.555555584px, 4.4444444444vw, 85.3184px);
  }
}
.h-menuInner .f-ctCont {
  margin-top: 0;
}
@media screen and (min-width:768px) {
  .f-ctCont__left {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}

@media screen and (min-width:768px) {
  .f-ctCont__right {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}

.f-ctCont__line {
  background-color: rgba(255, 255, 255, 0.6);
}
@media screen and (max-width: 767px) {
  .f-ctCont__line {
    width: 30%;
    height: 1px;
    margin: clamp(32px, 8.5333333333vw, 48px) auto;
  }
}
@media screen and (min-width:768px) {
  .f-ctCont__line {
    width: 1px;
    height: clamp(99.65277784px, 9.7222222222vw, 186.634px);
  }
}

@media screen and (max-width: 767px) {
  .f-ctCont__box {
    text-align: center;
  }
}
@media screen and (min-width:768px) {
  .f-ctCont__box {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-left: auto;
  }
}

.f-ctCont__head {
  font-weight: 600;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .f-ctCont__head {
    font-size: clamp(16px, 4.2666666667vw, 24px);
  }
}
@media screen and (min-width:768px) {
  .f-ctCont__head {
    font-size: clamp(12.8016px, 1.6666666667vw, 31.9944px);
  }
}

.f-ctCont__headSub {
  font-weight: 500;
  color: #fff;
  line-height: 1;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .f-ctCont__headSub {
    font-size: clamp(13px, 3.4666666667vw, 19.5px);
  }
}
@media screen and (min-width:768px) {
  .f-ctCont__headSub {
    font-size: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
  }
}

.f-ctCont__tel {
  font-family: "Roboto Condensed", sans-serif;
  font-style: italic;
  font-weight: 600;
  color: #fff;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .f-ctCont__tel {
    margin-top: clamp(32px, 8.5333333333vw, 48px);
    font-size: clamp(16px, 4.2666666667vw, 24px);
  }
}
@media screen and (min-width:768px) {
  .f-ctCont__tel {
    margin-top: clamp(14.23611112px, 1.3888888889vw, 26.662px);
    font-size: clamp(12.8016px, 1.6666666667vw, 31.9944px);
  }
}
@media screen and (max-width: 767px) {
  .f-ctCont__tel .num {
    font-size: clamp(33px, 8.8vw, 49.5px);
  }
}
@media screen and (min-width:768px) {
  .f-ctCont__tel .num {
    font-size: clamp(25.6032px, 3.3333333333vw, 63.9888px);
  }
}

.f-ctCont__mail {
  font-family: "Roboto Condensed", sans-serif;
  font-style: italic;
  font-weight: 500;
  color: #fff;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .f-ctCont__mail {
    margin-top: clamp(8px, 2.1333333333vw, 12px);
    font-size: clamp(13px, 3.4666666667vw, 19.5px);
  }
}
@media screen and (min-width:768px) {
  .f-ctCont__mail {
    margin-top: clamp(5.694444448px, 0.5555555556vw, 10.6648px);
    font-size: clamp(10.668px, 1.3888888889vw, 26.662px);
  }
}

.f-ctLead {
  /*font-family: vars.$fontJpMP;*/
  /*font-weight: 500;*/
  color: #fff;
}
@media screen and (max-width: 767px) {
  .f-ctLead {
    margin-top: clamp(2px, 0.5333333333vw, 3px);
    font-size: clamp(10px, 2.6666666667vw, 15px);
    letter-spacing: 0;
  }
}
@media screen and (min-width:768px) {
  .f-ctLead {
    margin-top: clamp(2.847222224px, 0.2777777778vw, 5.3324px);
    font-size: clamp(5.8674px, 0.7638888889vw, 14.6641px);
    letter-spacing: 0.04em;
  }
}

.f-ctLead__sp {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 500;
  color: #fff;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .f-ctLead__sp {
    margin-top: clamp(32px, 8.5333333333vw, 48px);
    font-size: clamp(13px, 3.4666666667vw, 19.5px);
  }
}
@media screen and (min-width:768px) {
  .f-ctLead__sp {
    margin-top: clamp(28.47222224px, 2.7777777778vw, 53.324px);
    font-size: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
  }
}

.f-address:after {
  content: "@";
}
@media screen and (max-width: 767px) {
  .f-ctBtnWrap {
    margin-top: clamp(24px, 6.4vw, 36px);
  }
}
@media screen and (min-width:768px) {
  .f-ctBtnWrap {
    width: clamp(213.36px, 27.7777777778vw, 533.24px);
  }
}

@media screen and (max-width: 767px) {
  .f-ctBtnItem {
    margin-top: clamp(15px, 4vw, 22.5px);
  }
}
@media screen and (min-width:768px) {
  .f-ctBtnItem {
    position: relative;
    margin-top: clamp(19.930555568px, 1.9444444444vw, 37.3268px);
  }
}
.f-ctBtnItem:first-child {
  margin-top: 0;
}
.f-ctBtnItem__link {
  cursor: pointer;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  border: 1px solid #fff;
  font-weight: 500;
  color: #fff;
  line-height: 1.2;
  letter-spacing: 0;
  -webkit-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
@media screen and (max-width: 767px) {
  .f-ctBtnItem__link {
    border-radius: clamp(32px, 8.5333333333vw, 48px);
    padding: clamp(4px, 1.0666666667vw, 6px);
    padding-left: clamp(16px, 4.2666666667vw, 24px);
    -webkit-column-gap: clamp(16px, 4.2666666667vw, 24px);
       -moz-column-gap: clamp(16px, 4.2666666667vw, 24px);
            column-gap: clamp(16px, 4.2666666667vw, 24px);
  }
}
@media screen and (min-width:768px) {
  .f-ctBtnItem__link {
    border-radius: clamp(34.166666688px, 3.3333333333vw, 63.9888px);
    padding: clamp(2.847222224px, 0.2777777778vw, 5.3324px);
    padding-left: clamp(17.083333344px, 1.6666666667vw, 31.9944px);
    -webkit-column-gap: clamp(17.083333344px, 1.6666666667vw, 31.9944px);
       -moz-column-gap: clamp(17.083333344px, 1.6666666667vw, 31.9944px);
            column-gap: clamp(17.083333344px, 1.6666666667vw, 31.9944px);
  }
}
@media screen and (max-width: 767px) {
  .f-ctBtnItem__link .txt {
    font-size: clamp(13px, 3.4666666667vw, 19.5px);
  }
}
@media screen and (min-width:768px) {
  .f-ctBtnItem__link .txt {
    font-size: clamp(8.5344px, 1.1111111111vw, 21.3296px);
  }
}

@media screen and (min-width:768px) {
  .f-gnavChild {
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    top: 100%;
    left: 50%;
    width: clamp(227.77777792px, 22.2222222222vw, 426.592px);
    background: rgba(255, 255, 255, 0.9);
    -webkit-box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.1);
            box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.1);
    border-radius: 10px;
    -webkit-transform: translate(-50%, -20px);
        -ms-transform: translate(-50%, -20px);
            transform: translate(-50%, -20px);
    -webkit-transition: opacity 0.25s 0.0833333333s, visibility 0s 0.25s, -webkit-transform 0.3333333333s cubic-bezier(0.33, 0, 0.24, 1);
    transition: opacity 0.25s 0.0833333333s, visibility 0s 0.25s, -webkit-transform 0.3333333333s cubic-bezier(0.33, 0, 0.24, 1);
    transition: opacity 0.25s 0.0833333333s, visibility 0s 0.25s, transform 0.3333333333s cubic-bezier(0.33, 0, 0.24, 1);
    transition: opacity 0.25s 0.0833333333s, visibility 0s 0.25s, transform 0.3333333333s cubic-bezier(0.33, 0, 0.24, 1), -webkit-transform 0.3333333333s cubic-bezier(0.33, 0, 0.24, 1);
    padding: clamp(5.694444448px, 0.5555555556vw, 10.6648px) clamp(14.23611112px, 1.3888888889vw, 26.662px);
  }
}

@media screen and (min-width:768px) {
  .f-ctBtnItem:hover .f-gnavChild, .f-ctBtnItem:focus-within .f-gnavChild {
    visibility: visible;
    opacity: 1;
    pointer-events: auto; /* ← 操作可能に */
    -webkit-transition: opacity 0.25s, -webkit-transform 0.3333333333s cubic-bezier(0.33, 0, 0, 1);
    transition: opacity 0.25s, -webkit-transform 0.3333333333s cubic-bezier(0.33, 0, 0, 1);
    transition: transform 0.3333333333s cubic-bezier(0.33, 0, 0, 1), opacity 0.25s;
    transition: transform 0.3333333333s cubic-bezier(0.33, 0, 0, 1), opacity 0.25s, -webkit-transform 0.3333333333s cubic-bezier(0.33, 0, 0, 1);
    -webkit-transform: translate(-50%, 0px);
        -ms-transform: translate(-50%, 0px);
            transform: translate(-50%, 0px);
  }
}

@media screen and (min-width:768px) {
  .f-gnavChildItem {
    border-bottom: 1px solid #bdbdbd;
  }
}
@media screen and (min-width:768px) {
  .f-gnavChildItem:last-child {
    border-bottom: none;
  }
}

@media screen and (min-width:768px) {
  .f-gnavChildItem__link {
    display: block;
    width: 100%;
    padding: clamp(11.388888896px, 1.1111111111vw, 21.3296px) 0;
    padding-right: clamp(22.777777792px, 2.2222222222vw, 42.6592px);
    color: #000;
    line-height: 1.5;
    font-size: clamp(8.541666672px, 0.8333333333vw, 15.9972px);
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    letter-spacing: 0.05em;
  }
}
@media screen and (min-width:768px) {
  .f-gnavChildItem__link--pdf {
    background: url("../images/common/ico_pdf_bk.svg") no-repeat right 0 center;
    background-size: clamp(9.965277784px, 0.9722222222vw, 18.6634px) auto;
  }
}
@media screen and (min-width:768px) {
  .f-gnavChildItem__link:hover {
    color: #4774B9;
    background-image: url("../images/common/ico_pdf_blue.svg");
  }
}

.f-loopTxtWrap {
  overflow: hidden;
}
.f-loopTxtCont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100vw;
}
.f-loopTxtItem {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  font-family: "Roboto Condensed", sans-serif;
  font-weight: 500;
  font-style: italic;
  white-space: nowrap;
  color: rgba(255, 255, 255, 0.3);
  line-height: 1;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .f-loopTxtItem {
    margin-top: clamp(120px, 32vw, 180px);
    font-size: clamp(96px, 25.6vw, 144px);
  }
}
@media screen and (min-width:768px) {
  .f-loopTxtItem {
    margin-top: clamp(56.94444448px, 5.5555555556vw, 106.648px);
    font-size: clamp(106.7708334px, 10.4166666667vw, 199.965px);
  }
}

.f-loopTxtItem:nth-child(odd) {
  -webkit-animation: loop 160s -80s linear infinite;
          animation: loop 160s -80s linear infinite;
}
.f-loopTxtItem:nth-child(even) {
  -webkit-animation: loop2 160s linear infinite;
          animation: loop2 160s linear infinite;
}
@-webkit-keyframes loop {
  0% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@keyframes loop {
  0% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@-webkit-keyframes loop2 {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-200%);
            transform: translateX(-200%);
  }
}
@keyframes loop2 {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-200%);
            transform: translateX(-200%);
  }
}
@media screen and (max-width: 767px) {
  .f-main {
    padding: 0 clamp(15px, 4vw, 22.5px) clamp(15px, 4vw, 22.5px);
  }
}
@media screen and (min-width:768px) {
  .f-main {
    padding: clamp(64.008px, 8.3333333333vw, 159.972px) clamp(42.672px, 5.5555555556vw, 80px) clamp(21.336px, 2.7777777778vw, 40px);
  }
}

.f-area__top {
  width: 100%;
}
@media screen and (min-width:768px) {
  .f-area__top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}

@media screen and (max-width: 767px) {
  .f-logoWrap {
    margin-top: clamp(56px, 14.9333333333vw, 84px);
  }
}
@media screen and (max-width: 767px) {
  .f-nav {
    display: none;
  }
}
@media screen and (min-width:768px) {
  .f-nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: clamp(341.66666688px, 33.3333333333vw, 639.888px);
  }
}

.f-navItem {
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .f-navItem {
    margin-top: clamp(16px, 4.2666666667vw, 24px);
  }
}
@media screen and (min-width:768px) {
  .f-navItem {
    width: clamp(113.88888896px, 11.1111111111vw, 213.296px);
  }
}

.f-navItem__link {
  display: inline-block;
  color: rgba(0, 0, 0, 0.6);
}
@media screen and (max-width: 767px) {
  .f-navItem__link {
    font-size: clamp(12px, 3.2vw, 18px);
  }
}
@media screen and (min-width:768px) {
  .f-navItem__link {
    font-size: clamp(9.965277784px, 0.9722222222vw, 18.6634px);
  }
}

@media screen and (max-width: 767px) {
  .f-area__bottom {
    margin-top: clamp(20px, 5.3333333333vw, 30px);
  }
}
@media screen and (min-width:768px) {
  .f-area__bottom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-top: clamp(85.41666672px, 8.3333333333vw, 159.972px);
  }
}

.f-suvNav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 767px) {
  .f-suvNav {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-column-gap: clamp(24px, 6.4vw, 36px);
       -moz-column-gap: clamp(24px, 6.4vw, 36px);
            column-gap: clamp(24px, 6.4vw, 36px);
  }
}
@media screen and (min-width:768px) {
  .f-suvNav {
    -webkit-column-gap: clamp(23.489583348px, 2.2916666667vw, 43.9923px);
       -moz-column-gap: clamp(23.489583348px, 2.2916666667vw, 43.9923px);
            column-gap: clamp(23.489583348px, 2.2916666667vw, 43.9923px);
  }
}

.f-suvNavItem {
  position: relative;
  line-height: 1;
}
.f-suvNavItem:after {
  display: block;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-48%);
      -ms-transform: translateY(-48%);
          transform: translateY(-48%);
  content: "";
  width: 1px;
  background-color: rgba(0, 0, 0, 0.4);
}
@media screen and (max-width: 767px) {
  .f-suvNavItem:after {
    right: clamp(-15px, -2.6666666667vw, -10px);
    height: clamp(8px, 2.1333333333vw, 12px);
  }
}
@media screen and (min-width:768px) {
  .f-suvNavItem:after {
    right: clamp(-21.3296px, -1.1111111111vw, -11.388888896px);
    height: clamp(7.11805556px, 0.6944444444vw, 13.331px);
  }
}
.f-suvNavItem:last-child:after {
  display: none;
}
.f-suvNavItem__link {
  color: rgba(0, 0, 0, 0.4);
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .f-suvNavItem__link {
    font-size: clamp(11px, 2.9333333333vw, 16.5px);
  }
}
@media screen and (min-width:768px) {
  .f-suvNavItem__link {
    font-size: clamp(9.253472228px, 0.9027777778vw, 17.3303px);
  }
}

.f-copy {
  color: rgba(0, 0, 0, 0.4);
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .f-copy {
    margin-top: clamp(32px, 8.5333333333vw, 48px);
    font-size: clamp(10px, 2.6666666667vw, 15px);
    text-align: center;
  }
}
@media screen and (min-width:768px) {
  .f-copy {
    font-size: clamp(7.829861116px, 0.7638888889vw, 14.6641px);
    text-align: right;
  }
}

.g-heroWrap {
  width: 100%;
  background-color: #444;
}
@media screen and (max-width: 767px) {
  .g-heroWrap {
    height: clamp(260px, 69.3333333333vw, 390px);
    padding-top: clamp(96px, 25.6vw, 144px);
    border-radius: 0 0 clamp(10px, 2.6666666667vw, 15px) clamp(10px, 2.6666666667vw, 15px);
  }
}
@media screen and (min-width:768px) {
  .g-heroWrap {
    height: clamp(398.61111136px, 38.8888888889vw, 746.536px);
    padding-top: clamp(160px, 11.1111111111vw, 213.296px);
    border-radius: 0 0 clamp(14.23611112px, 1.3888888889vw, 26.662px) clamp(14.23611112px, 1.3888888889vw, 26.662px);
  }
}
.g-heroWrap--long {
  background: #E60027;
  background: -webkit-gradient(linear, left top, right top, color-stop(0%, #E60027), color-stop(100%, #E73675));
  background: -webkit-linear-gradient(left, #E60027 0%, #E73675 100%);
  background: -webkit-gradient(linear, left top, right top, from(#E60027), to(#E73675));
  background: linear-gradient(to right, #E60027 0%, #E73675 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="$start-color", endColorstr="$end-color",GradientType=1);
}
.g-heroWrap--short {
  background: #00AEC4;
  background: -webkit-gradient(linear, left top, right top, color-stop(0%, #00AEC4), color-stop(100%, #00AFEB));
  background: -webkit-linear-gradient(left, #00AEC4 0%, #00AFEB 100%);
  background: -webkit-gradient(linear, left top, right top, from(#00AEC4), to(#00AFEB));
  background: linear-gradient(to right, #00AEC4 0%, #00AFEB 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="$start-color", endColorstr="$end-color",GradientType=1);
}
.g-heroWrap--sat {
  background: #3AAE36;
  background: -webkit-gradient(linear, left top, right top, color-stop(0%, #3AAE36), color-stop(100%, #00A8AC));
  background: -webkit-linear-gradient(left, #3AAE36 0%, #00A8AC 100%);
  background: -webkit-gradient(linear, left top, right top, from(#3AAE36), to(#00A8AC));
  background: linear-gradient(to right, #3AAE36 0%, #00A8AC 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="$start-color", endColorstr="$end-color",GradientType=1);
}
@media screen and (max-width: 767px) {
  .g-heroInner {
    padding: 0 clamp(15px, 4vw, 22.5px);
  }
}
@media screen and (min-width:768px) {
  .g-heroInner {
    padding: 0 max(64.008px, 8.3333333333vw);
  }
}

.g-heroHead__en {
  font-family: "Roboto Condensed", sans-serif;
  font-style: italic;
  font-weight: 700;
  color: #fff;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .g-heroHead__en {
    font-size: clamp(44px, 11.7333333333vw, 66px);
  }
}
@media screen and (min-width:768px) {
  .g-heroHead__en {
    font-size: clamp(56.94444448px, 5.5555555556vw, 106.648px);
  }
}
.g-heroHead__en:after {
  position: relative;
  display: inline-block;
  content: "";
  background: url("../images/common/pic_plane.svg") no-repeat center center;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  .g-heroHead__en:after {
    width: clamp(30px, 8vw, 45px);
    height: clamp(32px, 8.5333333333vw, 48px);
    margin-left: clamp(10px, 2.6666666667vw, 15px);
  }
}
@media screen and (min-width:768px) {
  .g-heroHead__en:after {
    top: clamp(2.847222224px, 0.2777777778vw, 5.3324px);
    width: clamp(51.250000032px, 5vw, 95.9832px);
    height: clamp(45.555555584px, 4.4444444444vw, 85.3184px);
    margin-left: clamp(14.23611112px, 1.3888888889vw, 26.662px);
  }
}

.g-heroHead__jp {
  font-weight: 500;
  color: #fff;
  line-height: 1.2;
}
@media screen and (max-width: 767px) {
  .g-heroHead__jp {
    margin-top: clamp(8px, 2.1333333333vw, 12px);
    font-size: clamp(18px, 4.8vw, 27px);
  }
}
@media screen and (min-width:768px) {
  .g-heroHead__jp {
    margin-top: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
    font-size: clamp(25.625000016px, 2.5vw, 47.9916px);
  }
}

.js-text-animation .small span {
  display: inline-block;
  -webkit-transition: 1s;
  transition: 1s;
  opacity: 0;
  -webkit-transform: translateX(24px);
      -ms-transform: translateX(24px);
          transform: translateX(24px);
}
.js-text-animation .small span.is-animated {
  opacity: 1;
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
}
.js-text-animation > span:not(.small) {
  display: inline-block;
  -webkit-transition: 1s;
  transition: 1s;
  opacity: 0;
  -webkit-transform: translateX(24px);
      -ms-transform: translateX(24px);
          transform: translateX(24px);
}
.js-text-animation > span:not(.small).is-animated {
  opacity: 1;
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
}

/* 最小限のローディングCSS */
#loading-screen {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #F9F9F9;
  z-index: 99999;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition: opacity 0.3s ease-out;
  transition: opacity 0.3s ease-out;
}

.spinner {
  width: 50px;
  height: 50px;
  border: 3px solid #f3f3f3;
  border-top: 3px solid #4774B9;
  border-radius: 50%;
  -webkit-animation: spin 1s linear infinite;
          animation: spin 1s linear infinite;
}

@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

@keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
#loading-screen.fade-out {
  opacity: 0;
  pointer-events: none;
}

.home-contWrap {
  position: relative;
}
@media screen and (max-width: 767px) {
  .home-contWrap {
    padding: clamp(60px, 16vw, 90px) 0;
  }
}
@media screen and (min-width:768px) {
  .home-contWrap {
    padding: clamp(64.008px, 8.3333333333vw, 159.972px) 0;
  }
}
.home-contWrap--gray {
  background-color: #F9F9F9;
}
.home-contWrap--longWorld {
  overflow: hidden;
  background: url("../images/long/pic_world.svg") no-repeat center center;
  background-size: clamp(1351.006945288px, 131.8055555556vw, 2530.2238px) clamp(740.27777824px, 72.2222222222vw, 1386.424px);
}
@media screen and (max-width: 767px) {
  .home-contWrap--longWorld {
    background-position: center top;
  }
}
.home-contWrap--shortWorld {
  overflow: hidden;
  background: url("../images/short/pic_world.svg") no-repeat center center;
  background-size: clamp(1351.006945288px, 131.8055555556vw, 2530.2238px) clamp(740.27777824px, 72.2222222222vw, 1386.424px);
}
@media screen and (max-width: 767px) {
  .home-contWrap--shortWorld {
    background-position: center top;
  }
}
.home-contWrap--satWorld {
  overflow: hidden;
  background: url("../images/sat/pic_world.svg") no-repeat center center;
  background-size: clamp(1351.006945288px, 131.8055555556vw, 2530.2238px) clamp(740.27777824px, 72.2222222222vw, 1386.424px);
}
@media screen and (max-width: 767px) {
  .home-contWrap--satWorld {
    background-position: center top;
  }
}
@media screen and (max-width: 767px) {
  .home-contInner {
    padding: 0 clamp(15px, 4vw, 22.5px);
  }
}
@media screen and (min-width:768px) {
  .home-contInner {
    padding: 0 max(64.008px, 8.3333333333vw);
  }
}

@media screen and (max-width: 767px) {
  .home-headlineWrap {
    margin-bottom: clamp(32px, 8.5333333333vw, 48px);
  }
}
@media screen and (min-width:768px) {
  .home-headlineWrap {
    margin-bottom: clamp(39.861111136px, 3.8888888889vw, 74.6536px);
  }
}

.home-headline01__jp {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 500;
  line-height: 1;
  color: #000;
}
@media screen and (max-width: 767px) {
  .home-headline01__jp {
    font-size: clamp(24px, 6.4vw, 36px);
  }
}
@media screen and (min-width:768px) {
  .home-headline01__jp {
    font-size: clamp(25.625000016px, 2.5vw, 47.9916px);
  }
}

.home-headline01__en {
  font-family: "Roboto Condensed", sans-serif;
  font-style: italic;
  line-height: 1;
  color: #bdbdbd;
}
@media screen and (max-width: 767px) {
  .home-headline01__en {
    margin-top: clamp(8px, 2.1333333333vw, 12px);
    font-size: clamp(14px, 3.7333333333vw, 21px);
  }
}
@media screen and (min-width:768px) {
  .home-headline01__en {
    margin-top: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
    font-size: clamp(14.23611112px, 1.3888888889vw, 26.662px);
  }
}

.home-headline02 {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 500;
  line-height: 1.4;
  color: #000;
  border-bottom: 1px solid #bdbdbd;
}
@media screen and (max-width: 767px) {
  .home-headline02 {
    margin-bottom: clamp(30px, 8vw, 45px);
    padding-bottom: clamp(6px, 1.6vw, 9px);
    font-size: clamp(16px, 4.2666666667vw, 24px);
  }
}
@media screen and (min-width:768px) {
  .home-headline02 {
    margin-bottom: clamp(28.47222224px, 2.7777777778vw, 53.324px);
    padding-bottom: clamp(5.694444448px, 0.5555555556vw, 10.6648px);
    font-size: clamp(17.083333344px, 1.6666666667vw, 31.9944px);
  }
}

.home-kvWrap {
  position: relative;
  width: 100%;
  /*background-color: #bdbdbd;*/
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .home-kvWrap {
    /*height: 100vh;
    height: 100svh;*/
    padding: clamp(110px, 29.3333333333vw, 165px) 0 clamp(190px, 50.6666666667vw, 388.6133327px);
  }
}
@media screen and (min-width:768px) {
  .home-kvWrap {
    padding: clamp(142.3611112px, 13.8888888889vw, 200px) max(12.8016px, 1.6666666667vw) 0;
  }
}

.home-kvCopyWrap {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.home-kvCopy {
  font-family: "Zen Old Mincho", serif;
  color: #141414;
  line-height: 1.1;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .home-kvCopy {
    padding-left: clamp(10px, 2.6666666667vw, 15px);
    margin-bottom: clamp(32px, 8.5333333333vw, 48px);
    font-size: clamp(48px, 12.8vw, 72px);
  }
}
@media screen and (min-width:768px) {
  .home-kvCopy {
    margin-bottom: clamp(34.1376px, 4.4444444444vw, 64px);
    font-size: clamp(60px, 6.6666666667vw, 110px);
  }
}
@media screen and (min-width: 1981px) {
  .home-kvCopy {
    font-size: clamp(68.333333376px, 6.6666666667vw, 170.66666688px);
  }
}

.home-kvCopy__pic {
  position: absolute;
  top: 0;
  right: 0;
  height: auto;
}
@media screen and (max-width: 767px) {
  .home-kvCopy__pic {
    width: clamp(96px, 25.6vw, 144px);
    top: clamp(10px, 2.6666666667vw, 15px);
    right: clamp(34px, 9.0666666667vw, 51px);
  }
}
@media screen and (min-width:768px) {
  .home-kvCopy__pic {
    width: clamp(113px, 12.5vw, 206px);
    top: clamp(13px, 1.3888888889vw, 23px);
    right: clamp(44px, 4.8611111111vw, 80px);
  }
}
@media screen and (min-width: 1981px) {
  .home-kvCopy__pic {
    width: clamp(128.12500008px, 12.5vw, 320.0000004px);
    top: clamp(14.23611112px, 1.3888888889vw, 35.5555556px);
    right: clamp(49.82638892px, 4.8611111111vw, 124.4444446px);
  }
}

@media screen and (max-width: 767px) {
  .home-kvMapWrap {
    padding: 0 clamp(10px, 2.6666666667vw, 15px);
  }
}
.home-kvMapInner {
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .home-kvMapInner {
    width: 100%;
    height: clamp(220px, 58.6666666667vw, 330px);
    border-radius: clamp(10px, 2.6666666667vw, 15px);
  }
}
@media screen and (min-width:768px) {
  .home-kvMapInner {
    width: max(742.4928px, 96.6666666667vw);
    height: clamp(309.372px, 40.2777777778vw, 580px);
    border-radius: clamp(14.23611112px, 1.3888888889vw, 26.662px);
  }
}
@media screen and (min-width: 1981px) {
  .home-kvMapInner {
    height: clamp(309.372px, 40.2777777778vw, 1031.1111124px);
  }
}

#canvas-basic {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.home-kvMap {
  position: absolute;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (max-width: 767px) {
  .home-kvMap {
    -o-object-position: 50% 100%;
       object-position: 50% 100%;
    top: 0;
    left: 0;
  }
}
@media screen and (min-width:768px) {
  .home-kvMap {
    -o-object-position: 0 100%;
       object-position: 0 100%;
    top: 30px;
    left: -24px;
  }
}

.home-loopPicWrap {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  overflow: hidden;
  position: absolute;
}
@media screen and (max-width: 767px) {
  .home-loopPicWrap {
    width: 100%;
    margin-top: clamp(-24px, -4.2666666667vw, -16px);
  }
}
@media screen and (min-width:768px) {
  .home-loopPicWrap {
    top: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    right: max(25.6032px, 3.3333333333vw);
    width: max(317.9064px, 41.3888888889vw);
  }
}

.home-loopPicArea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 767px) {
  .home-loopPicArea {
    width: 100%;
    -webkit-column-gap: clamp(5px, 1.3333333333vw, 7.5px);
       -moz-column-gap: clamp(5px, 1.3333333333vw, 7.5px);
            column-gap: clamp(5px, 1.3333333333vw, 7.5px);
  }
}
@media screen and (min-width:768px) {
  .home-loopPicArea {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: max(153.6192px, 20vw);
    row-gap: max(10.668px, 1.3888888889vw);
  }
}
@media screen and (max-width: 767px) {
  .home-loopPicArea:last-child {
    margin-top: clamp(5px, 1.3333333333vw, 7.5px);
  }
}
.home-loopPicBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 767px) {
  .home-loopPicBox {
    -webkit-column-gap: clamp(5px, 1.3333333333vw, 7.5px);
       -moz-column-gap: clamp(5px, 1.3333333333vw, 7.5px);
            column-gap: clamp(5px, 1.3333333333vw, 7.5px);
  }
}
@media screen and (min-width:768px) {
  .home-loopPicBox {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    row-gap: max(10.668px, 1.3888888889vw);
  }
}
@media screen and (max-width: 767px) {
  .home-loopPicArea--01 .home-loopPicBox {
    -webkit-animation: loop-right 30s linear infinite;
            animation: loop-right 30s linear infinite;
  }
}
@media screen and (min-width:768px) {
  .home-loopPicArea--01 .home-loopPicBox {
    -webkit-animation: loop-up 50s linear infinite;
            animation: loop-up 50s linear infinite;
  }
}
@media screen and (max-width: 767px) {
  .home-loopPicArea--02 .home-loopPicBox {
    -webkit-animation: loop-left 30s linear infinite;
            animation: loop-left 30s linear infinite;
  }
}
@media screen and (min-width:768px) {
  .home-loopPicArea--02 .home-loopPicBox {
    -webkit-animation: loop-down 50s linear infinite;
            animation: loop-down 50s linear infinite;
  }
}

@media screen and (max-width: 767px) {
  .home-loopPicItem {
    width: clamp(72px, 19.2vw, 147.26399976px);
  }
}
@media screen and (min-width:768px) {
  .home-loopPicItem {
    width: max(153.6192px, 20vw);
  }
}
.home-loopPicItem img {
  width: 100%;
  height: auto;
}
@-webkit-keyframes loop-right {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@keyframes loop-right {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@-webkit-keyframes loop-left {
  from {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  to {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@keyframes loop-left {
  from {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  to {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@-webkit-keyframes loop-up {
  from {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  to {
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%);
  }
}
@keyframes loop-up {
  from {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  to {
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%);
  }
}
@-webkit-keyframes loop-down {
  from {
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%);
  }
  to {
    -webkit-transform: translateY(0%);
            transform: translateY(0%);
  }
}
@keyframes loop-down {
  from {
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%);
  }
  to {
    -webkit-transform: translateY(0%);
            transform: translateY(0%);
  }
}
.news-listWrap {
  width: 100%;
}
.news-listItem {
  width: 100%;
  border-top: 1px solid #bdbdbd;
}
.news-listItem:last-child {
  border-bottom: 1px solid #bdbdbd;
}
.news-list {
  position: relative;
  display: block;
}
@media screen and (max-width: 767px) {
  .news-list {
    padding: clamp(16px, 4.2666666667vw, 24px) clamp(40px, 10.6666666667vw, 60px) clamp(16px, 4.2666666667vw, 24px) 0;
    padding: 16px 40px 16px 0;
  }
}
@media screen and (min-width:768px) {
  .news-list {
    padding: clamp(17.083333344px, 1.6666666667vw, 31.9944px);
    padding-right: clamp(39.861111136px, 3.8888888889vw, 74.6536px);
  }
}
@media screen and (min-width:768px) {
  .news-list--link:hover .news-list__txt, .news-list--blank:hover .news-list__txt, .news-list--pdf:hover .news-list__txt {
    opacity: 0.5;
  }
}
@media screen and (max-width: 767px) {
  .news-list--link {
    background: url("../images/common/ico_arrow_right_bk.svg") no-repeat right clamp(16px, 4.2666666667vw, 24px) center;
    background-size: clamp(6px, 1.6vw, 9px) auto;
  }
}
@media screen and (min-width:768px) {
  .news-list--link {
    background: url("../images/common/ico_arrow_right_bk.svg") no-repeat right clamp(17.083333344px, 1.6666666667vw, 31.9944px) center;
    -webkit-transition: all 0.2s ease-in-out 0s;
    transition: all 0.2s ease-in-out 0s;
    background-size: clamp(5.694444448px, 0.5555555556vw, 10.6648px) auto;
  }
}
@media screen and (min-width:768px) {
  .news-list--link:hover {
    background-position: right clamp(11.388888896px, 1.1111111111vw, 21.3296px) center;
  }
}
@media screen and (max-width: 767px) {
  .news-list--blank {
    background: url("../images/common/ico_blank_bk.svg") no-repeat right clamp(10px, 2.6666666667vw, 15px) center;
    background-size: clamp(16px, 4.2666666667vw, 24px) auto;
  }
}
@media screen and (min-width:768px) {
  .news-list--blank {
    background: url("../images/common/ico_blank_bk.svg") no-repeat right clamp(12.812500008px, 1.25vw, 23.9958px) center;
    background-size: clamp(14.23611112px, 1.3888888889vw, 26.662px) auto;
    -webkit-transition: all 0.2s ease-in-out 0s;
    transition: all 0.2s ease-in-out 0s;
  }
}
@media screen and (min-width:768px) {
  .news-list--blank:hover {
    background-position: right clamp(7.11805556px, 0.6944444444vw, 13.331px) center;
  }
}
@media screen and (max-width: 767px) {
  .news-list--pdf {
    background: url("../images/common/ico_pdf_bk.svg") no-repeat right clamp(12px, 3.2vw, 18px) center;
    background-size: clamp(12px, 3.2vw, 18px) auto;
  }
}
@media screen and (min-width:768px) {
  .news-list--pdf {
    background: url("../images/common/ico_pdf_bk.svg") no-repeat right clamp(14.23611112px, 1.3888888889vw, 26.662px) center;
    background-size: clamp(10.67708334px, 1.0416666667vw, 19.9965px) auto;
    -webkit-transition: all 0.2s ease-in-out 0s;
    transition: all 0.2s ease-in-out 0s;
  }
}
@media screen and (min-width:768px) {
  .news-list--pdf:hover {
    background-position: right clamp(8.541666672px, 0.8333333333vw, 15.9972px) center;
  }
}

.news-listBox {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 767px) {
  .news-listBox {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.news-list__date {
  color: #555;
}
@media screen and (max-width: 767px) {
  .news-list__date {
    width: clamp(80px, 21.3333333333vw, 120px);
    font-size: clamp(11px, 2.9333333333vw, 16.5px);
  }
}
@media screen and (min-width:768px) {
  .news-list__date {
    width: clamp(85.41666672px, 8.3333333333vw, 159.972px);
    font-size: clamp(9.253472228px, 0.9027777778vw, 17.3303px);
  }
}

@media screen and (max-width: 767px) {
  .news-list__tag {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
@media screen and (min-width:768px) {
  .news-list__tag {
    margin-right: clamp(22.777777792px, 2.2222222222vw, 42.6592px);
  }
}
.news-list__tag span {
  background-color: #000;
  color: #fff;
  border-radius: 50px;
  text-align: center;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .news-list__tag span {
    display: inline-block;
    width: clamp(72px, 19.2vw, 108px);
    padding: clamp(1px, 0.2666666667vw, 1.5px);
    font-size: clamp(9px, 2.4vw, 13.5px);
  }
}
@media screen and (min-width:768px) {
  .news-list__tag span {
    display: block;
    width: clamp(56.94444448px, 5.5555555556vw, 106.648px);
    padding: clamp(1.423611112px, 0.1388888889vw, 2.6662px);
    font-size: clamp(7.829861116px, 0.7638888889vw, 14.6641px);
    -webkit-transition: all 0.2s ease-in-out 0s;
    transition: all 0.2s ease-in-out 0s;
  }
}
.news-list__tag--long span {
  background: #E60027;
  background: -webkit-gradient(linear, left top, right top, color-stop(0%, #E60027), color-stop(100%, #E73675));
  background: -webkit-linear-gradient(left, #E60027 0%, #E73675 100%);
  background: -webkit-gradient(linear, left top, right top, from(#E60027), to(#E73675));
  background: linear-gradient(to right, #E60027 0%, #E73675 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="$start-color", endColorstr="$end-color",GradientType=1);
}
.news-list__tag--short span {
  background: #00AEC4;
  background: -webkit-gradient(linear, left top, right top, color-stop(0%, #00AEC4), color-stop(100%, #00AFEB));
  background: -webkit-linear-gradient(left, #00AEC4 0%, #00AFEB 100%);
  background: -webkit-gradient(linear, left top, right top, from(#00AEC4), to(#00AFEB));
  background: linear-gradient(to right, #00AEC4 0%, #00AFEB 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="$start-color", endColorstr="$end-color",GradientType=1);
}
.news-list__tag--sat span {
  background: #3AAE36;
  background: -webkit-gradient(linear, left top, right top, color-stop(0%, #3AAE36), color-stop(100%, #00A8AC));
  background: -webkit-linear-gradient(left, #3AAE36 0%, #00A8AC 100%);
  background: -webkit-gradient(linear, left top, right top, from(#3AAE36), to(#00A8AC));
  background: linear-gradient(to right, #3AAE36 0%, #00A8AC 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="$start-color", endColorstr="$end-color",GradientType=1);
}
.news-list__txt {
  color: #000;
}
@media screen and (max-width: 767px) {
  .news-list__txt {
    width: 100%;
    margin-top: clamp(8px, 2.1333333333vw, 12px);
    font-size: clamp(12px, 3.2vw, 18px);
  }
}
@media screen and (min-width:768px) {
  .news-list__txt {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    font-size: clamp(9.965277784px, 0.9722222222vw, 18.6634px);
    -webkit-transition: all 0.2s ease-in-out 0s;
    transition: all 0.2s ease-in-out 0s;
  }
}

@media screen and (max-width: 767px) {
  .home-newsBtnWrap {
    margin-top: clamp(24px, 6.4vw, 36px);
  }
}
@media screen and (min-width:768px) {
  .home-newsBtnWrap {
    margin-top: clamp(28.47222224px, 2.7777777778vw, 53.324px);
  }
}

.home-introWrap {
  position: relative;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .home-introWrap {
    height: clamp(900px, 240vw, 1350px);
  }
}
@media screen and (min-width:768px) {
  .home-introWrap {
    height: clamp(746.76px, 97.2222222222vw, 1400px);
  }
}

.home-introInner {
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .home-introInner {
    height: clamp(900px, 240vw, 1350px);
  }
}
@media screen and (min-width:768px) {
  .home-introInner {
    height: clamp(746.76px, 97.2222222222vw, 1400px);
  }
}

#globe-container {
  position: relative;
  width: 150%;
  background-color: white;
}
@media screen and (max-width: 767px) {
  #globe-container {
    height: clamp(900px, 240vw, 1350px);
  }
}
@media screen and (min-width:768px) {
  #globe-container {
    height: 1600px; /* お好みの高さに調整 */
  }
}

#globe-container canvas {
  display: block;
}

.home-loopTxtWrap {
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
}
.home-loopTxtCont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100vw;
}
.home-loopTxtItem {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  font-family: "Roboto Condensed", sans-serif;
  font-weight: 500;
  font-style: italic;
  white-space: nowrap;
  color: rgba(30, 30, 30, 0.08);
  line-height: 1;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .home-loopTxtItem {
    font-size: clamp(112px, 29.8666666667vw, 168px);
  }
}
@media screen and (min-width:768px) {
  .home-loopTxtItem {
    font-size: clamp(199.30555568px, 19.4444444444vw, 280px);
  }
}

.home-loopTxtItem:nth-child(odd) {
  -webkit-animation: loop 160s -80s linear infinite;
          animation: loop 160s -80s linear infinite;
}
.home-loopTxtItem:nth-child(even) {
  -webkit-animation: loop2 160s linear infinite;
          animation: loop2 160s linear infinite;
}
@keyframes loop {
  0% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@keyframes loop2 {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-200%);
            transform: translateX(-200%);
  }
}
.home-introBox {
  position: absolute;
  top: 50%;
}
@media screen and (max-width: 767px) {
  .home-introBox {
    width: 100%;
    padding: clamp(15px, 4vw, 22.5px);
    left: 50%;
    -webkit-transform: translate(-50%, -40%);
        -ms-transform: translate(-50%, -40%);
            transform: translate(-50%, -40%);
  }
}
@media screen and (min-width:768px) {
  .home-introBox {
    left: max(85.41666672px, 8.3333333333vw);
    -webkit-transform: translateY(-36%);
        -ms-transform: translateY(-36%);
            transform: translateY(-36%);
    width: clamp(412.84722248px, 40.2777777778vw, 1031.1111124px);
    min-width: 580px;
  }
}

@media screen and (max-width: 767px) {
  .home-introBoxInner {
    width: 100%;
    padding: clamp(30px, 8vw, 45px) clamp(15px, 4vw, 22.5px);
    background-color: rgba(255, 255, 255, 0.5);
  }
}
.home-introHead {
  font-family: "M PLUS Rounded 1c", sans-serif;
  color: #1E1E1E;
  line-height: 1.3;
}
@media screen and (max-width: 767px) {
  .home-introHead {
    font-size: clamp(27px, 7.2vw, 40.5px);
  }
}
@media screen and (min-width:768px) {
  .home-introHead {
    font-size: clamp(34.166666688px, 3.3333333333vw, 63.9888px);
  }
}

.home-introSub {
  font-family: "M PLUS Rounded 1c", sans-serif;
  color: #1E1E1E;
}
@media screen and (max-width: 767px) {
  .home-introSub {
    margin-top: clamp(8px, 2.1333333333vw, 12px);
    font-size: clamp(16px, 4.2666666667vw, 24px);
  }
}
@media screen and (min-width:768px) {
  .home-introSub {
    margin-top: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
    font-size: clamp(17.083333344px, 1.6666666667vw, 31.9944px);
  }
}

.home-introTxt {
  color: #1E1E1E;
}
@media screen and (max-width: 767px) {
  .home-introTxt {
    margin-top: clamp(32px, 8.5333333333vw, 48px);
    font-size: clamp(13px, 3.4666666667vw, 19.5px);
    line-height: 2;
  }
}
@media screen and (min-width:768px) {
  .home-introTxt {
    margin-top: clamp(45.555555584px, 4.4444444444vw, 85.3184px);
    font-size: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
    line-height: 2.2;
  }
}

.home-topicWrap {
  position: relative;
  width: 100%;
  background: url("../images/common/photo_tgu_01.jpg") no-repeat center center;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  .home-topicWrap {
    padding: clamp(60px, 16vw, 90px) 0;
  }
}
@media screen and (min-width:768px) {
  .home-topicWrap {
    padding: clamp(85.41666672px, 8.3333333333vw, 159.972px) 0;
  }
}
.home-topicWrap:before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.5);
}
.home-topicWrap--sat {
  background: url("../images/common/photo_tgu_02.jpg") no-repeat center center;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  .home-topicInner {
    padding: 0 clamp(15px, 4vw, 22.5px);
  }
}
@media screen and (min-width:768px) {
  .home-topicInner {
    padding: 0 max(64.008px, 8.3333333333vw);
  }
}

.home-topicHead {
  position: relative;
  font-family: "Roboto Condensed", sans-serif;
  font-style: italic;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .home-topicHead {
    font-size: clamp(24px, 6.4vw, 36px);
    margin-bottom: clamp(16px, 4.2666666667vw, 24px);
  }
}
@media screen and (min-width:768px) {
  .home-topicHead {
    font-size: clamp(25.625000016px, 2.5vw, 47.9916px);
    margin-bottom: clamp(22.777777792px, 2.2222222222vw, 42.6592px);
  }
}

@media screen and (min-width:768px) {
  .home-topicCont {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    row-gap: clamp(17.083333344px, 1.6666666667vw, 31.9944px);
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
@media screen and (max-width: 767px) {
  .home-topicCont .c-btnBnr {
    margin-top: clamp(15px, 4vw, 22.5px);
  }
}
@media screen and (max-width: 767px) {
  .home-topicCont .c-btnBnr:first-child {
    margin-top: 0;
  }
}
.home-pgCardWrap {
  display: block;
  position: relative;
  background-color: #ddd;
}
@media screen and (max-width: 767px) {
  .home-pgCardWrap {
    margin-top: clamp(15px, 4vw, 22.5px);
    padding: clamp(15px, 4vw, 22.5px);
    padding-top: clamp(39px, 10.4vw, 58.5px);
    border-radius: clamp(10px, 2.6666666667vw, 15px);
  }
}
@media screen and (min-width:768px) {
  .home-pgCardWrap {
    margin-top: clamp(28.47222224px, 2.7777777778vw, 53.324px);
    padding: clamp(17.083333344px, 1.6666666667vw, 31.9944px);
    padding-left: clamp(51.250000032px, 5vw, 95.9832px);
    padding-right: clamp(45.555555584px, 4.4444444444vw, 85.3184px);
    border-radius: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
    -webkit-transition: all 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: all 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
  }
}
.home-pgCardWrap:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  background-color: #fff;
  border-radius: 100%;
}
@media screen and (max-width: 767px) {
  .home-pgCardWrap:before {
    width: clamp(8px, 2.1333333333vw, 12px);
    height: clamp(8px, 2.1333333333vw, 12px);
    top: clamp(8px, 2.1333333333vw, 12px);
    left: clamp(8px, 2.1333333333vw, 12px);
  }
}
@media screen and (min-width:768px) {
  .home-pgCardWrap:before {
    width: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
    height: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
    top: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
    left: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
  }
}
.home-pgCardWrap:after {
  position: absolute;
  content: "";
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .home-pgCardWrap:after {
    top: clamp(24px, 6.4vw, 36px);
    left: 0;
    width: 100%;
    height: 1px;
  }
}
@media screen and (min-width:768px) {
  .home-pgCardWrap:after {
    top: 0;
    left: clamp(34.166666688px, 3.3333333333vw, 63.9888px);
    width: 1px;
    height: 100%;
  }
}
.home-pgCardWrap--long {
  background: -webkit-gradient(linear, left top, right top, from(#E60027), color-stop(35%, #E73675), color-stop(50%, #E73675), color-stop(50%, #E73675), color-stop(65%, #E60027), to(#E60027));
  background: -webkit-linear-gradient(left, #E60027 0%, #E73675 35%, #E73675 50%, #E73675 50%, #E60027 65%, #E60027 100%);
  background: linear-gradient(to right, #E60027 0%, #E73675 35%, #E73675 50%, #E73675 50%, #E60027 65%, #E60027 100%);
  background-position: 0 50%;
  background-size: 200% auto;
}
.home-pgCardWrap--short {
  background: -webkit-gradient(linear, left top, right top, from(#00AEC4), color-stop(35%, #00AFEB), color-stop(50%, #00AFEB), color-stop(50%, #00AFEB), color-stop(65%, #00AEC4), to(#00AEC4));
  background: -webkit-linear-gradient(left, #00AEC4 0%, #00AFEB 35%, #00AFEB 50%, #00AFEB 50%, #00AEC4 65%, #00AEC4 100%);
  background: linear-gradient(to right, #00AEC4 0%, #00AFEB 35%, #00AFEB 50%, #00AFEB 50%, #00AEC4 65%, #00AEC4 100%);
  background-position: 0 50%;
  background-size: 200% auto;
}
.home-pgCardWrap--sat {
  background: -webkit-gradient(linear, left top, right top, from(#3AAE36), color-stop(35%, #00A8AC), color-stop(50%, #00A8AC), color-stop(50%, #00A8AC), color-stop(65%, #3AAE36), to(#3AAE36));
  background: -webkit-linear-gradient(left, #3AAE36 0%, #00A8AC 35%, #00A8AC 50%, #00A8AC 50%, #3AAE36 65%, #3AAE36 100%);
  background: linear-gradient(to right, #3AAE36 0%, #00A8AC 35%, #00A8AC 50%, #00A8AC 50%, #3AAE36 65%, #3AAE36 100%);
  background-position: 0 50%;
  background-size: 200% auto;
}
@media screen and (min-width:768px) {
  .home-pgCardWrap:hover {
    background-position: 100% 50%;
  }
}
@media screen and (min-width:768px) {
  .home-pgCardWrap:hover .home-pgCardImg__photo {
    -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
            transform: scale(1.1);
  }
}

@media screen and (min-width:768px) {
  .home-pgCardInner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: clamp(25.6032px, 3.3333333333vw, 63.9888px);
       -moz-column-gap: clamp(25.6032px, 3.3333333333vw, 63.9888px);
            column-gap: clamp(25.6032px, 3.3333333333vw, 63.9888px);
  }
}

@media screen and (min-width:768px) {
  .home-pgCardImg {
    overflow: hidden;
    width: clamp(213.36px, 27.7777777778vw, 533.24px);
    border-radius: clamp(7.11805556px, 0.6944444444vw, 13.331px);
  }
}

.home-pgCardImg__photo {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .home-pgCardImg__photo {
    border-radius: clamp(5px, 1.3333333333vw, 7.5px);
  }
}
@media screen and (min-width:768px) {
  .home-pgCardImg__photo {
    border-radius: clamp(7.11805556px, 0.6944444444vw, 13.331px);
    -webkit-transition: all 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: all 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
  }
}
.h-menuInner .home-pgCardImg__photo {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 767px) {
  .h-menuInner .home-pgCardImg__photo {
    height: clamp(100px, 26.6666666667vw, 150px);
  }
}
@media screen and (min-width:768px) {
  .h-menuInner .home-pgCardImg__photo {
    height: clamp(71.1805556px, 6.9444444444vw, 133.31px);
  }
}

@media screen and (max-width: 767px) {
  .home-pgCardCont {
    margin-top: clamp(16px, 4.2666666667vw, 24px);
  }
}
@media screen and (min-width:768px) {
  .home-pgCardCont {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}

.home-pgCardHeadWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  border-bottom: 1px solid #fff;
}
@media screen and (max-width: 767px) {
  .home-pgCardHeadWrap {
    padding-bottom: clamp(3px, 0.8vw, 4.5px);
  }
}
@media screen and (min-width:768px) {
  .home-pgCardHeadWrap {
    padding-bottom: clamp(4.270833336px, 0.4166666667vw, 7.9986px);
  }
}
.h-menuPgWrap .home-pgCardHeadWrap {
  border-bottom: none;
}

.home-pgCardHead {
  font-family: "M PLUS Rounded 1c", sans-serif;
  line-height: 1.2;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .home-pgCardHead {
    font-size: clamp(20px, 5.3333333333vw, 30px);
  }
}
@media screen and (min-width:768px) {
  .home-pgCardHead {
    font-size: clamp(17.0688px, 2.2222222222vw, 42.6592px);
  }
}

.home-pgCardHead__sub {
  font-family: "Roboto Condensed", sans-serif;
  font-style: italic;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .home-pgCardHead__sub {
    margin-left: clamp(4px, 1.0666666667vw, 6px);
    font-size: clamp(13px, 3.4666666667vw, 19.5px);
  }
}
@media screen and (min-width:768px) {
  .home-pgCardHead__sub {
    margin-left: clamp(4.2672px, 0.5555555556vw, 10.6648px);
    font-size: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
  }
}

.home-pgCard__txt {
  font-weight: 500;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .home-pgCard__txt {
    margin-top: clamp(8px, 2.1333333333vw, 12px);
    font-size: clamp(13px, 3.4666666667vw, 19.5px);
  }
}
@media screen and (min-width:768px) {
  .home-pgCard__txt {
    margin-top: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
    font-size: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
  }
}

.home-linkHead {
  font-weight: 500;
  color: #000;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .home-linkHead {
    margin-bottom: clamp(16px, 4.2666666667vw, 24px);
    font-size: clamp(14px, 3.7333333333vw, 21px);
  }
}
@media screen and (min-width:768px) {
  .home-linkHead {
    margin-bottom: clamp(22.777777792px, 2.2222222222vw, 42.6592px);
    font-size: clamp(12.812500008px, 1.25vw, 23.9958px);
  }
}

.modal-wrap {
  overflow: auto;
  background: #fff;
  margin: 0 auto;
  max-height: 64vh;
}
@media screen and (max-width: 767px) {
  .modal-wrap {
    width: 90%;
    padding: clamp(32px, 8.5333333333vw, 48px) clamp(15px, 4vw, 22.5px);
    border-radius: clamp(5px, 1.3333333333vw, 7.5px);
  }
}
@media screen and (min-width:768px) {
  .modal-wrap {
    width: clamp(740.27777824px, 72.2222222222vw, 1386.424px);
    padding: clamp(56.94444448px, 5.5555555556vw, 106.648px);
    border-radius: clamp(7.11805556px, 0.6944444444vw, 13.331px);
  }
}

.p-list > li {
  position: relative;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .p-list > li {
    padding-left: clamp(12px, 3.2vw, 18px);
    margin-top: clamp(8px, 2.1333333333vw, 12px);
  }
}
@media screen and (min-width:768px) {
  .p-list > li {
    padding-left: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
    margin-top: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
  }
}
.p-list > li:first-child {
  margin-top: 0;
}
.p-list > li:before {
  display: inline-block;
  position: absolute;
  left: 0;
  content: "";
  background-color: #000;
}
@media screen and (max-width: 767px) {
  .p-list > li:before {
    top: 0.6em;
    width: clamp(5px, 1.3333333333vw, 7.5px);
    height: clamp(5px, 1.3333333333vw, 7.5px);
  }
}
@media screen and (min-width:768px) {
  .p-list > li:before {
    top: 0.5em;
    width: clamp(4.270833336px, 0.4166666667vw, 7.9986px);
    height: clamp(4.270833336px, 0.4166666667vw, 7.9986px);
  }
}

.p-listOreder > li {
  position: relative;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .p-listOreder > li {
    margin-top: clamp(8px, 2.1333333333vw, 12px);
  }
}
@media screen and (min-width:768px) {
  .p-listOreder > li {
    margin-top: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
  }
}
.p-listOreder > li:first-child {
  margin-top: 0;
}

.p-att {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  line-height: 1.5;
}
.p-att .cont {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.p-txtJpSmall {
  display: block;
}
@media screen and (max-width: 767px) {
  .p-txtJpSmall {
    font-size: clamp(10px, 2.6666666667vw, 15px);
  }
}
@media screen and (min-width:768px) {
  .p-txtJpSmall {
    font-size: clamp(8.541666672px, 0.8333333333vw, 15.9972px);
  }
}

@media screen and (max-width: 767px) {
  .prg-kvWrap {
    padding: 0 clamp(15px, 4vw, 22.5px);
    margin-top: clamp(-36px, -6.4vw, -24px);
  }
}
@media screen and (min-width:768px) {
  .prg-kvWrap {
    padding: 0 max(64.008px, 8.3333333333vw);
    margin-top: clamp(-159.972px, -8.3333333333vw, -85.41666672px);
  }
}

.prg-kvImgWrap {
  position: relative;
}
.prg-kvImg {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .prg-kvImg {
    border-radius: clamp(5px, 1.3333333333vw, 7.5px);
  }
}
@media screen and (min-width:768px) {
  .prg-kvImg {
    border-radius: clamp(7.11805556px, 0.6944444444vw, 13.331px);
  }
}

.prg-kvcopy {
  position: absolute;
  top: 0;
  right: 0;
  height: auto;
}
@media screen and (max-width: 767px) {
  .prg-kvcopy--long {
    width: clamp(160px, 42.6666666667vw, 240px);
    top: clamp(-45px, -8000vw, -30px);
  }
}
@media screen and (min-width:768px) {
  .prg-kvcopy--long {
    width: clamp(311.5056px, 40.5555555556vw, 778.5304px);
    top: clamp(-215.9622px, -11.25vw, -86.4108px);
  }
}
@media screen and (max-width: 767px) {
  .prg-kvcopy--short {
    width: clamp(234px, 62.4vw, 351px);
    top: clamp(-45px, -8000vw, -30px);
  }
}
@media screen and (min-width:768px) {
  .prg-kvcopy--short {
    width: clamp(437.388px, 56.9444444444vw, 1093.142px);
    top: clamp(-218.6284px, -11.3888888889vw, -87.4776px);
  }
}
@media screen and (max-width: 767px) {
  .prg-kvcopy--sat {
    width: clamp(160px, 42.6666666667vw, 240px);
    top: clamp(-45px, -8000vw, -30px);
  }
}
@media screen and (min-width:768px) {
  .prg-kvcopy--sat {
    width: clamp(211.2264px, 27.5vw, 527.9076px);
    top: clamp(-154.6396px, -8.0555555556vw, -61.8744px);
    right: clamp(4.2672px, 0.5555555556vw, 10.6648px);
  }
}

@media screen and (max-width: 767px) {
  .prg-introWrap {
    padding: 48px 0 80px;
  }
}
@media screen and (min-width:768px) {
  .prg-introWrap {
    padding: clamp(56.94444448px, 5.5555555556vw, 106.648px) 0 clamp(85.41666672px, 8.3333333333vw, 159.972px);
  }
}

@media screen and (min-width:768px) {
  .prg-introCont {
    padding: 0 max(64.008px, 8.3333333333vw);
  }
}

.prg-introHead {
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  color: #000;
  line-height: 1.5;
  letter-spacing: 0.15em;
}
@media screen and (max-width: 767px) {
  .prg-introHead {
    font-size: clamp(24px, 6.4vw, 36px);
  }
}
@media screen and (min-width:768px) {
  .prg-introHead {
    font-size: clamp(28.47222224px, 2.7777777778vw, 53.324px);
  }
}
.prg-introHead--en {
  letter-spacing: 0.05em;
}
.prg-introTxt {
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .prg-introTxt {
    margin-top: clamp(32px, 8.5333333333vw, 48px);
    font-size: clamp(14px, 3.7333333333vw, 21px);
    line-height: 2.4;
  }
}
@media screen and (min-width:768px) {
  .prg-introTxt {
    margin-top: clamp(34.166666688px, 3.3333333333vw, 63.9888px);
    font-size: clamp(12.812500008px, 1.25vw, 23.9958px);
    line-height: 3;
  }
}

.prg-introBtn {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 767px) {
  .prg-introBtn {
    margin: 0 auto;
    margin-top: clamp(32px, 8.5333333333vw, 48px);
  }
}
@media screen and (min-width:768px) {
  .prg-introBtn {
    margin-left: auto;
    margin-top: clamp(34.166666688px, 3.3333333333vw, 63.9888px);
  }
}

.prg-lead {
  font-weight: 500;
  color: #000;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .prg-lead {
    font-size: clamp(13px, 3.4666666667vw, 19.5px);
  }
}
@media screen and (min-width:768px) {
  .prg-lead {
    font-size: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
  }
}

@media screen and (max-width: 767px) {
  .p-headline01Wrap {
    margin-bottom: clamp(32px, 8.5333333333vw, 48px);
  }
}
@media screen and (min-width:768px) {
  .p-headline01Wrap {
    margin-bottom: clamp(45.555555584px, 4.4444444444vw, 85.3184px);
  }
}

.p-headline01__jp {
  position: relative;
  font-weight: 500;
  color: #000;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .p-headline01__jp {
    font-size: clamp(22px, 5.8666666667vw, 33px);
  }
}
@media screen and (min-width:768px) {
  .p-headline01__jp {
    font-size: clamp(22.777777792px, 2.2222222222vw, 42.6592px);
  }
}

.p-headlineSub__en {
  font-family: "Roboto Condensed", sans-serif;
  font-style: italic;
  color: #bdbdbd;
  line-height: 1.2;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .p-headlineSub__en {
    margin-top: clamp(4px, 1.0666666667vw, 6px);
    font-size: clamp(13px, 3.4666666667vw, 19.5px);
  }
}
@media screen and (min-width:768px) {
  .p-headlineSub__en {
    margin-top: clamp(5.694444448px, 0.5555555556vw, 10.6648px);
    font-size: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
  }
}

.prg-cardWrap {
  position: relative;
  width: 100%;
  background: #FFF;
  -webkit-box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
          box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
}
@media screen and (max-width: 767px) {
  .prg-cardWrap {
    margin-top: clamp(32px, 8.5333333333vw, 48px);
    padding: clamp(24px, 6.4vw, 36px) clamp(15px, 4vw, 22.5px);
    border-radius: clamp(5px, 1.3333333333vw, 7.5px);
  }
}
@media screen and (min-width:768px) {
  .prg-cardWrap {
    margin-top: clamp(39.861111136px, 3.8888888889vw, 74.6536px);
    border-radius: clamp(7.11805556px, 0.6944444444vw, 13.331px);
    -webkit-box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
            box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
    padding: clamp(17.0688px, 2.2222222222vw, 42.6592px);
  }
}
@media screen and (max-width: 767px) {
  .prg-cardWrap__2col .prg-cardWrap {
    /*margin-top: mix.res-s(32, vars.$min-sp, vars.$max-spMid, 375);*/
  }
}
@media screen and (min-width:768px) {
  .prg-cardWrap__2col {
    /*margin-top: mix.res-s(56, vars.$min-pc, vars.$max-pc);*/
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-column-gap: clamp(21.336px, 2.7777777778vw, 53.324px);
       -moz-column-gap: clamp(21.336px, 2.7777777778vw, 53.324px);
            column-gap: clamp(21.336px, 2.7777777778vw, 53.324px);
  }
}

.prg-cardNum {
  font-family: "Roboto Condensed", sans-serif;
  font-style: italic;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 767px) {
  .prg-cardNum {
    top: clamp(-19.5px, -3.4666666667vw, -13px);
    left: clamp(15px, 4vw, 22.5px);
    font-size: clamp(24px, 6.4vw, 36px);
  }
}
@media screen and (min-width:768px) {
  .prg-cardNum {
    top: clamp(-26.662px, -1.3888888889vw, -14.23611112px);
    left: clamp(22.777777792px, 2.2222222222vw, 42.6592px);
    font-size: clamp(25.625000016px, 2.5vw, 47.9916px);
  }
}

.prg-cardHead01 {
  font-weight: 700;
  background-color: #000;
  color: #fff;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .prg-cardHead01 {
    margin-bottom: clamp(8px, 2.1333333333vw, 12px);
    padding: clamp(4px, 1.0666666667vw, 6px) clamp(6px, 1.6vw, 9px);
    font-size: clamp(16px, 4.2666666667vw, 24px);
    border-radius: clamp(2px, 0.5333333333vw, 3px);
  }
}
@media screen and (min-width:768px) {
  .prg-cardHead01 {
    margin-bottom: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
    padding: clamp(5.694444448px, 0.5555555556vw, 10.6648px) clamp(8.541666672px, 0.8333333333vw, 15.9972px);
    font-size: clamp(17.083333344px, 1.6666666667vw, 31.9944px);
    border-radius: clamp(2.135416668px, 0.2083333333vw, 3.9993px);
  }
}
.prg-cardHead01--long {
  background: #E60027;
  background: -webkit-gradient(linear, left top, right top, color-stop(0%, #E60027), color-stop(100%, #E73675));
  background: -webkit-linear-gradient(left, #E60027 0%, #E73675 100%);
  background: -webkit-gradient(linear, left top, right top, from(#E60027), to(#E73675));
  background: linear-gradient(to right, #E60027 0%, #E73675 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="$start-color", endColorstr="$end-color",GradientType=1);
}
.prg-cardHead01--short {
  background: #00AEC4;
  background: -webkit-gradient(linear, left top, right top, color-stop(0%, #00AEC4), color-stop(100%, #00AFEB));
  background: -webkit-linear-gradient(left, #00AEC4 0%, #00AFEB 100%);
  background: -webkit-gradient(linear, left top, right top, from(#00AEC4), to(#00AFEB));
  background: linear-gradient(to right, #00AEC4 0%, #00AFEB 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="$start-color", endColorstr="$end-color",GradientType=1);
}
.prg-cardHead01--sat {
  background: #3AAE36;
  background: -webkit-gradient(linear, left top, right top, color-stop(0%, #3AAE36), color-stop(100%, #00A8AC));
  background: -webkit-linear-gradient(left, #3AAE36 0%, #00A8AC 100%);
  background: -webkit-gradient(linear, left top, right top, from(#3AAE36), to(#00A8AC));
  background: linear-gradient(to right, #3AAE36 0%, #00A8AC 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="$start-color", endColorstr="$end-color",GradientType=1);
}
.prg-cardHead02 {
  font-weight: 600;
  background-color: #000;
  color: #fff;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .prg-cardHead02 {
    margin-bottom: clamp(8px, 2.1333333333vw, 12px);
    padding: clamp(4px, 1.0666666667vw, 6px) clamp(6px, 1.6vw, 9px);
    font-size: clamp(14px, 3.7333333333vw, 21px);
    border-radius: clamp(2px, 0.5333333333vw, 3px);
  }
}
@media screen and (min-width:768px) {
  .prg-cardHead02 {
    margin-bottom: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
    padding: clamp(5.694444448px, 0.5555555556vw, 10.6648px) clamp(8.541666672px, 0.8333333333vw, 15.9972px);
    font-size: clamp(12.812500008px, 1.25vw, 23.9958px);
    border-radius: clamp(2.135416668px, 0.2083333333vw, 3.9993px);
  }
}
.prg-cardHead02--en {
  font-family: "Roboto Condensed", sans-serif;
  font-style: italic;
  font-weight: 700;
  background-color: #000;
  color: #fff;
  line-height: 1.4;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .prg-cardHead02--en {
    font-size: clamp(20px, 5.3333333333vw, 30px);
  }
}
@media screen and (min-width:768px) {
  .prg-cardHead02--en {
    font-size: clamp(22.777777792px, 2.2222222222vw, 42.6592px);
  }
}
.prg-cardHead02--long {
  background-color: #E60027;
}
.prg-cardHead02--short {
  background-color: #00AEC4;
}
.prg-cardHead02--sat {
  background-color: #3AAE36;
}
.prg-cardHead03 {
  font-weight: 600;
  color: #000;
}
@media screen and (max-width: 767px) {
  .prg-cardHead03 {
    font-size: clamp(13px, 3.4666666667vw, 19.5px);
  }
}
@media screen and (min-width:768px) {
  .prg-cardHead03 {
    font-size: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
  }
}

.p-cardTxt__l {
  font-weight: 500;
  color: #000;
}
@media screen and (max-width: 767px) {
  .p-cardTxt__l {
    font-size: clamp(13px, 3.4666666667vw, 19.5px);
  }
}
@media screen and (min-width:768px) {
  .p-cardTxt__l {
    font-size: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
  }
}

@media screen and (min-width:768px) {
  .prg-card2Col {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-column-gap: clamp(17.0688px, 2.2222222222vw, 42.6592px);
       -moz-column-gap: clamp(17.0688px, 2.2222222222vw, 42.6592px);
            column-gap: clamp(17.0688px, 2.2222222222vw, 42.6592px);
  }
}
@media screen and (min-width:768px) {
  .prg-card2Col--init {
    display: block;
  }
}

@media screen and (min-width:768px) {
  .prg-card3Col {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-column-gap: clamp(21.336px, 2.7777777778vw, 53.324px);
       -moz-column-gap: clamp(21.336px, 2.7777777778vw, 53.324px);
            column-gap: clamp(21.336px, 2.7777777778vw, 53.324px);
  }
}
@media screen and (min-width:768px) {
  .prg-card3Col .prg-cardBox {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}

@media screen and (max-width: 767px) {
  .prg-cardBox {
    margin-top: clamp(15px, 4vw, 22.5px);
  }
}
@media screen and (min-width:768px) {
  .prg-cardBox--img {
    width: clamp(275.2344px, 35.8333333333vw, 687.8796px);
  }
}
@media screen and (min-width:768px) {
  .prg-cardBox--flex {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
@media screen and (min-width:768px) {
  .prg-cardWrap__2col .prg-cardBox--flex {
    margin-top: clamp(17.0688px, 2.2222222222vw, 42.6592px);
  }
}
.prg-cardBox:first-child {
  margin-top: 0;
}
.prg-cardPhoto {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .prg-cardPhoto {
    border-radius: clamp(3.55902778px, 0.3472222222vw, 6.6655px);
  }
}
@media screen and (min-width:768px) {
  .prg-cardPhoto {
    border-radius: clamp(7.11805556px, 0.6944444444vw, 13.331px);
  }
}

.pv-movWrap {
  aspect-ratio: 16/9;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .pv-movWrap {
    width: 100%;
    border-radius: clamp(10px, 2.6666666667vw, 15px);
  }
}
@media screen and (min-width:768px) {
  .pv-movWrap {
    width: clamp(740.27777824px, 72.2222222222vw, 1386.424px);
    margin: 0 auto;
    border-radius: clamp(14.23611112px, 1.3888888889vw, 26.662px);
  }
}
.pv-movWrap iframe {
  width: 100%;
  height: 100%;
}
.prg-voiceWrap {
  display: block;
}
@media screen and (max-width: 767px) {
  .prg-voiceWrap {
    margin-top: clamp(40px, 10.6666666667vw, 60px);
  }
}
@media screen and (min-width:768px) {
  .prg-voiceWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: clamp(740.27777824px, 72.2222222222vw, 1386.424px);
    margin: clamp(45.555555584px, 4.4444444444vw, 85.3184px) auto 0;
  }
}
@media screen and (min-width: 768px) and (max-width:1024px) {
  .prg-voiceWrap {
    width: 100%;
  }
}
.prg-voiceWrap:first-child {
  margin-top: 0;
}
@media screen and (min-width:768px) {
  .prg-voiceWrap:hover .prg-voiceImg:after {
    background-color: rgba(0, 0, 0, 0.6);
    backdrop-filter: blur(8px);
  }
}
@media screen and (min-width:768px) {
  .prg-voiceWrap:hover .prg-voicePhoto {
    -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
            transform: scale(1.1);
  }
}
@media screen and (min-width:768px) {
  .prg-voiceWrap:hover .c-link:before {
    -webkit-transform: scaleX(1);
        -ms-transform: scaleX(1);
            transform: scaleX(1);
    -webkit-transform-origin: 0 100%;
        -ms-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
}

.prg-voiceArea__Left {
  overflow: hidden;
  -webkit-box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
          box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
}
@media screen and (max-width: 767px) {
  .prg-voiceArea__Left {
    width: 100%;
    border-radius: clamp(10px, 2.6666666667vw, 15px) clamp(10px, 2.6666666667vw, 15px) clamp(5px, 1.3333333333vw, 7.5px) clamp(5px, 1.3333333333vw, 7.5px);
  }
}
@media screen and (min-width:768px) {
  .prg-voiceArea__Left {
    border-radius: clamp(14.23611112px, 1.3888888889vw, 26.662px) clamp(7.11805556px, 0.6944444444vw, 13.331px) clamp(7.11805556px, 0.6944444444vw, 13.331px) clamp(14.23611112px, 1.3888888889vw, 26.662px);
    width: clamp(512.50000032px, 50vw, 959.832px);
  }
}

.prg-voiceHash {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 500;
  background-color: #000;
  color: #fff;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .prg-voiceHash {
    height: clamp(32px, 8.5333333333vw, 48px);
    line-height: clamp(32px, 8.5333333333vw, 48px);
    padding: 0 clamp(10px, 2.6666666667vw, 15px);
    font-size: clamp(15px, 4vw, 22.5px);
  }
}
@media screen and (min-width:768px) {
  .prg-voiceHash {
    height: clamp(36.302083356px, 3.5416666667vw, 67.9881px);
    line-height: clamp(36.302083356px, 3.5416666667vw, 67.9881px);
    padding: 0 clamp(22.777777792px, 2.2222222222vw, 42.6592px);
    font-size: clamp(17.083333344px, 1.6666666667vw, 31.9944px);
  }
}
.prg-voiceHash--long {
  background-color: #E60027;
}
.prg-voiceHash--short {
  background-color: #00AEC4;
}
.prg-voiceHash--sat {
  font-family: "Roboto Condensed", sans-serif;
  font-style: italic;
  font-weight: 700;
  background-color: #3AAE36;
}
@media screen and (max-width: 767px) {
  .prg-voiceHash--sat {
    font-size: clamp(12px, 3.2vw, 18px);
  }
}
@media screen and (min-width:768px) {
  .prg-voiceHash--sat {
    font-size: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
  }
}

.prg-voiceImgWrap {
  position: relative;
}
@media screen and (min-width:768px) {
  .prg-voiceImgWrap {
    width: 100%;
    height: clamp(214.253472356px, 20.9027777778vw, 401.2631px);
  }
}

.prg-voiceImg {
  position: relative;
  overflow: hidden;
}
@media screen and (min-width:768px) {
  .prg-voiceImg {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}
.prg-voiceImg:after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4);
}
@media screen and (min-width:768px) {
  .prg-voiceImg:after {
    -webkit-transition: all 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: all 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
  }
}

.prg-voicePhoto {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width:768px) {
  .prg-voicePhoto {
    -webkit-transition: all 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
    transition: all 0.4s cubic-bezier(0.86, 0.01, 0.15, 0.99);
  }
}

.prg-voiceGotoWrap {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 767px) {
  .prg-voiceGotoWrap {
    -webkit-column-gap: clamp(16px, 4.2666666667vw, 24px);
       -moz-column-gap: clamp(16px, 4.2666666667vw, 24px);
            column-gap: clamp(16px, 4.2666666667vw, 24px);
  }
}
@media screen and (min-width:768px) {
  .prg-voiceGotoWrap {
    -webkit-column-gap: clamp(22.777777792px, 2.2222222222vw, 42.6592px);
       -moz-column-gap: clamp(22.777777792px, 2.2222222222vw, 42.6592px);
            column-gap: clamp(22.777777792px, 2.2222222222vw, 42.6592px);
  }
}

.prg-voiceGoto__pic img {
  height: auto;
}
@media screen and (max-width: 767px) {
  .prg-voiceGoto__pic img {
    width: clamp(32px, 8.5333333333vw, 48px);
  }
}
@media screen and (min-width:768px) {
  .prg-voiceGoto__pic img {
    width: clamp(51.250000032px, 5vw, 95.9832px);
  }
}

.prg-voiceGotoItem {
  font-family: "Roboto Condensed", sans-serif;
  font-weight: 700;
  font-style: italic;
  color: #fff;
  letter-spacing: 0;
}
@media screen and (min-width:768px) {
  .prg-voiceGotoItem {
    padding-top: clamp(5.694444448px, 0.5555555556vw, 10.6648px);
  }
}
.prg-voiceGotoItem .big {
  display: block;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .prg-voiceGotoItem .big {
    font-size: clamp(40px, 10.6666666667vw, 60px);
  }
}
@media screen and (min-width:768px) {
  .prg-voiceGotoItem .big {
    font-size: clamp(45.555555584px, 4.4444444444vw, 85.3184px);
  }
}
.prg-voiceGotoItem .small {
  display: block;
  line-height: 1.2;
}
@media screen and (max-width: 767px) {
  .prg-voiceGotoItem .small {
    margin-top: clamp(4px, 1.0666666667vw, 6px);
    font-size: clamp(14px, 3.7333333333vw, 21px);
  }
}
@media screen and (min-width:768px) {
  .prg-voiceGotoItem .small {
    margin-top: clamp(5.694444448px, 0.5555555556vw, 10.6648px);
    font-size: clamp(14.23611112px, 1.3888888889vw, 26.662px);
  }
}
@media screen and (max-width: 767px) {
  .prg-voiceGotoItem .small .xs {
    font-size: clamp(12px, 3.2vw, 18px);
  }
}
@media screen and (min-width:768px) {
  .prg-voiceGotoItem .small .xs {
    font-size: clamp(9.965277784px, 0.9722222222vw, 18.6634px);
  }
}

.prg-voiceArea__right {
  overflow: hidden;
  -webkit-box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
          box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
  backdrop-filter: blur(8px);
}
@media screen and (max-width: 767px) {
  .prg-voiceArea__right {
    width: 100%;
    border-radius: clamp(5px, 1.3333333333vw, 7.5px) clamp(5px, 1.3333333333vw, 7.5px) clamp(10px, 2.6666666667vw, 15px) clamp(10px, 2.6666666667vw, 15px);
  }
}
@media screen and (min-width:768px) {
  .prg-voiceArea__right {
    border-radius: clamp(7.11805556px, 0.6944444444vw, 13.331px) clamp(14.23611112px, 1.3888888889vw, 26.662px) clamp(14.23611112px, 1.3888888889vw, 26.662px) clamp(7.11805556px, 0.6944444444vw, 13.331px);
    width: clamp(227.77777792px, 22.2222222222vw, 426.592px);
  }
}

.prg-voiceHead {
  font-family: "Roboto Condensed", sans-serif;
  font-style: italic;
  font-weight: 700;
  background-color: #000;
  color: #fff;
  line-height: 1.4;
  letter-spacing: 0;
  text-align: right;
}
@media screen and (max-width: 767px) {
  .prg-voiceHead {
    height: clamp(32px, 8.5333333333vw, 48px);
    line-height: clamp(32px, 8.5333333333vw, 48px);
    padding: 0 clamp(10px, 2.6666666667vw, 15px);
    font-size: clamp(12px, 3.2vw, 18px);
  }
}
@media screen and (min-width:768px) {
  .prg-voiceHead {
    height: clamp(36.302083356px, 3.5416666667vw, 67.9881px);
    line-height: clamp(36.302083356px, 3.5416666667vw, 67.9881px);
    padding: 0 clamp(22.777777792px, 2.2222222222vw, 42.6592px);
    font-size: clamp(11.388888896px, 1.1111111111vw, 21.3296px);
  }
}
.prg-voiceHead--long {
  background: #E60027;
  background: -webkit-gradient(linear, left top, right top, color-stop(0%, #E60027), color-stop(100%, #E73675));
  background: -webkit-linear-gradient(left, #E60027 0%, #E73675 100%);
  background: -webkit-gradient(linear, left top, right top, from(#E60027), to(#E73675));
  background: linear-gradient(to right, #E60027 0%, #E73675 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="$start-color", endColorstr="$end-color",GradientType=1);
}
.prg-voiceHead--short {
  background: #00AEC4;
  background: -webkit-gradient(linear, left top, right top, color-stop(0%, #00AEC4), color-stop(100%, #00AFEB));
  background: -webkit-linear-gradient(left, #00AEC4 0%, #00AFEB 100%);
  background: -webkit-gradient(linear, left top, right top, from(#00AEC4), to(#00AFEB));
  background: linear-gradient(to right, #00AEC4 0%, #00AFEB 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="$start-color", endColorstr="$end-color",GradientType=1);
}
.prg-voiceHead--sat {
  background: #3AAE36;
  background: -webkit-gradient(linear, left top, right top, color-stop(0%, #3AAE36), color-stop(100%, #00A8AC));
  background: -webkit-linear-gradient(left, #3AAE36 0%, #00A8AC 100%);
  background: -webkit-gradient(linear, left top, right top, from(#3AAE36), to(#00A8AC));
  background: linear-gradient(to right, #3AAE36 0%, #00A8AC 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="$start-color", endColorstr="$end-color",GradientType=1);
}
@media screen and (max-width: 767px) {
  .prg-voiceInfoWrap {
    padding: clamp(15px, 4vw, 22.5px);
  }
}
@media screen and (min-width:768px) {
  .prg-voiceInfoWrap {
    padding: clamp(17.083333344px, 1.6666666667vw, 31.9944px);
  }
}
@media screen and (max-width: 767px) {
  .prg-voiceInfoWrap--modal {
    padding-left: 0;
    padding-right: 0;
  }
}
@media screen and (min-width:768px) {
  .prg-voiceInfoWrap--modal {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}

.prg-voiceInfoBox {
  border-bottom: 1px solid #ddd;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .prg-voiceInfoBox {
    padding: clamp(15px, 4vw, 22.5px) 0;
  }
}
@media screen and (min-width:768px) {
  .prg-voiceInfoBox {
    padding: clamp(11.388888896px, 1.1111111111vw, 21.3296px) 0;
  }
}
.prg-voiceInfoBox:first-child {
  padding-top: 0;
}
.prg-voice__name {
  font-weight: 700;
  color: #000;
}
@media screen and (max-width: 767px) {
  .prg-voice__name {
    font-size: clamp(14px, 3.7333333333vw, 21px);
  }
}
@media screen and (min-width:768px) {
  .prg-voice__name {
    font-size: clamp(14.23611112px, 1.3888888889vw, 26.662px);
  }
}
@media screen and (max-width: 767px) {
  .prg-voice__name .small {
    font-size: clamp(12px, 3.2vw, 18px);
  }
}
@media screen and (min-width:768px) {
  .prg-voice__name .small {
    font-size: clamp(9.965277784px, 0.9722222222vw, 18.6634px);
  }
}

@media screen and (max-width: 767px) {
  .prg-voice__year {
    margin-top: clamp(8px, 2.1333333333vw, 12px);
  }
}
@media screen and (min-width:768px) {
  .prg-voice__year {
    margin-top: clamp(7.11805556px, 0.6944444444vw, 13.331px);
  }
}

.prg-voice__country {
  font-weight: 500;
  color: #000;
}
.prg-voice__univNaeName {
  font-weight: 700;
  color: #000;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .prg-voice__univNaeName {
    margin-top: clamp(8px, 2.1333333333vw, 12px);
    font-size: clamp(14px, 3.7333333333vw, 21px);
  }
}
@media screen and (min-width:768px) {
  .prg-voice__univNaeName {
    margin-top: clamp(7.11805556px, 0.6944444444vw, 13.331px);
    font-size: clamp(14.23611112px, 1.3888888889vw, 26.662px);
  }
}

.prg-voice__univNaeNameSub {
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .prg-voice__univNaeNameSub {
    margin-top: clamp(2px, 0.5333333333vw, 3px);
    font-size: clamp(10px, 2.6666666667vw, 15px);
  }
}
@media screen and (min-width:768px) {
  .prg-voice__univNaeNameSub {
    margin-top: clamp(2.847222224px, 0.2777777778vw, 5.3324px);
    font-size: clamp(8.541666672px, 0.8333333333vw, 15.9972px);
  }
}

.prg-voice__btn {
  text-align: right;
}
@media screen and (max-width: 767px) {
  .prg-voice__btn {
    margin-top: clamp(15px, 4vw, 22.5px);
  }
}
@media screen and (min-width:768px) {
  .prg-voice__btn {
    margin-top: 16px;
  }
}

@media screen and (max-width: 767px) {
  .prg-schedule {
    width: 1000px;
  }
}
@media screen and (min-width:768px) {
  .prg-voiceModalHead {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (min-width:768px) {
  .prg-voiceModalPic {
    width: 60%;
  }
}

.prg-voiceModal__img {
  width: 100%;
  height: auto;
}
/*# sourceMappingURL=app.css.map */
