@charset "UTF-8";
/* 外部スタイルシートとして全ページ共通で読み込ませるスタイルシート */
/* 各種設定 */
/* 色の変数 */
/**
 * 他で使用する色
 */
/*
 * 優先して読み込まれるCSSに base/__structure.scss を含むかどうか
 * true : atf.scss に import されます
 * false: common.scss に import されます
 * ※ .pc-block, .sp-block 等、レスポンシブ時の表示非表示に関するCSSを含むため、trueにするとリフローが発生しなくなります。
 */
/*
 * Gutenbergエディタで作成されたコンテンツを表示するCSSを常に読み込むか
 * ・minifyしても80kbほどある（gzipで圧縮転送で 11kb程度）
 * ・falseにした場合、"投稿" コンテンツを表示する際のみ読み込まれる @ single-post.scss
 */
/*
 * 属性セレクタの指定
 */
/*
 * スクロールバーの指定
 */
/* 色の変数 */
/**
 * 他で使用する色
 */
/**
 * スマートフォンに切り替わる際の幅を指定します。
 * この幅を元に一部の @mixin が動作します。
 */
/**
 * Illustrator / Photoshop 等での想定された画面幅を指定する箇所です。
 * この幅を元に vw 系のサイズ指定をする @function が存在します。
 */
/* フォントの変数 */
/* ユーザー投稿関連の設定 (.user_contents 内の変数群) */
/* 各種設定 */
/* 色の変数 */
/**
 * 他で使用する色
 */
/*
 * 優先して読み込まれるCSSに base/__structure.scss を含むかどうか
 * true : atf.scss に import されます
 * false: common.scss に import されます
 * ※ .pc-block, .sp-block 等、レスポンシブ時の表示非表示に関するCSSを含むため、trueにするとリフローが発生しなくなります。
 */
/*
 * Gutenbergエディタで作成されたコンテンツを表示するCSSを常に読み込むか
 * ・minifyしても80kbほどある（gzipで圧縮転送で 11kb程度）
 * ・falseにした場合、"投稿" コンテンツを表示する際のみ読み込まれる @ single-post.scss
 */
/*
 * 属性セレクタの指定
 */
/*
 * スクロールバーの指定
 */
/* 色の変数 */
/**
 * 他で使用する色
 */
/**
 * スマートフォンに切り替わる際の幅を指定します。
 * この幅を元に一部の @mixin が動作します。
 */
/**
 * Illustrator / Photoshop 等での想定された画面幅を指定する箇所です。
 * この幅を元に vw 系のサイズ指定をする @function が存在します。
 */
/* フォントの変数 */
/* ユーザー投稿関連の設定 (.user_contents 内の変数群) */
/* SASS の function 機能 */
/**
【2020/9/12更新】

※pxで記述するものは、pxなしでも動作する。


strip-unit(30px)
  単位の除去

vh(30px, 1200px)
  第2引数を100vhとして、第1引数が何vh かを返す処理

addpx(30)
  単位なしの数値が入ったら px を付与

vwsp(100px)
  100px を vw に変換して返す（スマホ版デザインで算出）

vwpc(100px)
  100px を vw に変換して返す（パソコン版デザインで算出）

*/
/**
 * 単位なしの値には px を付与する
 */
/**
 * スマートフォン用デザイン上でのピクセル数を指定すると、vw換算での値を返す
 * @require $design-width-sp
 */
/**
 * パソコン用デザイン上でのピクセル数を指定すると、vw換算での値を返す
 * @require $design-width-pc
 */
/*
三角関数
https://codepen.io/NyX/pen/dYvymM
*/
/*
$pi: 3.14159265359;
$_precision: 10;

@function pow($base, $exp) {
  $value: $base;

  @if $exp>1 {
    @for $i from 2 through $exp {
      $value: $value * $base;
    }
  }

  @if $exp < 1 {
    @for $i from 0 through -$exp {
      $value: $value / $base;
    }
  }

  @return $value;
}

@function fact($num) {
  $fact: 1;

  @if $num>0 {
    @for $i from 1 through $num {
      $fact: $fact * $i;
    }
  }

  @return $fact;
}

@function _to_unitless_rad($angle) {
  @if unit($angle)=="deg" {
    $angle: $angle / 180deg * $pi;
  }

  @if unit($angle)=="rad" {
    $angle: $angle / 1rad;
  }

  @return $angle;
}

@function sin($angle) {
  $a: _to_unitless_rad($angle);
  $sin: $a;

  @for $n from 1 through $_precision {
    $sin: $sin + (pow(-1, $n) / fact(2 * $n + 1)) * pow($a, (2 * $n + 1));
  }

  @return $sin;
}

@function cos($angle) {
  $a: _to_unitless_rad($angle);
  $cos: 1;

  @for $n from 1 through $_precision {
    $cos: $cos + (pow(-1, $n) / fact(2*$n)) * pow($a, 2*$n);
  }

  @return $cos;
}

@function tan($angle) {
  @return sin($angle) / cos($angle);
}
*/
/*
_sitefont.scss で使用する、自前フォントを使うための mixin集
*/
/*
@function str-replace($substr, $newsubstr, $str, $all:false) {
  $pos: str-index($str, $substr);

  @while $pos !=null {
    $strlen: str-length($substr);
    $start: str-slice($str, 0, $pos - 1);
    $end: str-slice($str, $pos + $strlen);
    $str: $start + $newsubstr + $end;

    @if $all==true {
      $pos: str-index($str, $substr);
    }

    @else {
      $pos: null;
    }
  }

  @return $str;
}
*/
/*
【2020/9/12更新】

※pxで記述するものは、pxなしでも動作する。

解説記事
https://kaminarimagazine.com/web/2017/12/12/sass%E3%81%A7%E3%82%88%E3%81%8F%E4%BD%BF%E3%81%A3%E3%81%A6%E3%81%84%E3%82%8Bmixin%E3%82%92%E7%B4%B9%E4%BB%8B%E3%81%97%E3%81%BE%E3%81%99/



==== 文字系 ====

@include font-rem(16px, 32px, 0.1px, true)
  Illustratorで自動生成されるCSSの値を3つ順に入れると rem + em ベースでの文字指定ができる。
  font-size, line-height, letter-spacing を px単位で打ち込む（単位は省略可）
  第4引数は letter-spacing & text-align:center の場合に位置がずれるのを修正するかどうか。

@include fonti(16px, 32px, 0.1px, true)
  font-remとほぼ同様だが、Illustratorでは文字の上に余白がなく位置調整がしづらいため、
  Webでも上に余白をなくしてしまえ！というmixin。ついでに下の余白もなくす。
  （下にはみ出す英字系フォントではズレが出ると思われる）

@include line-truncate
  1行から溢れたら ... と省略する

@include lines-truncate(3)
  指定行数から溢れたら ... と省略する



==== 段落系 ====

@include justify();
  両端揃えの設定がされる。IEも対応。

@include full-width();
  ブロックの幅をウィンドウ幅全体に変更する。
  ただしPCではスクロールバーの幅の関係でややあふれるため、祖先要素に overflow:hidden; が必要。



==== 画像系 ====
@include fix-aspect(300px, 200px, true)
  ブロックの縦横比を指定する処理。
  横幅、縦幅、子要素も同様にするかの順に指定。

@include object-fit(cover, center center);
  JavaScriptライブラリ Object Fit Images を用いて
  IE でも object-fit および object-fit-position が使用できるようになる。
  ただし別途 Object Fit Images を実行する必要があるので注意。
  （既定では class="ofi" を付与していると自動的に対象となる）

@include pseudo-img(30px, 30px, ../../images/item.jpg);
  疑似要素に画像を入れる場合に使う。
  疑似要素系は記述が多くて面倒なため。



==== レイアウト系 ====

@include dl-table($dt-width, $breakpoint: $width-smartphone)
  dl,dt,dd で2列の表を作るのを簡単にする。
  $dt-width を指定すると、残り幅を dd の幅に割り当てる。
  $breakpoint になると、1列の表に戻す。



==== メディアクエリ系 ====

@include on-sp{
  【 CSSを記述 】
}
  $width-smartphone の値を元に @media(max-width:768px) を作成する。
  ただの省略用。

@include max-width(1400px){
  【 CSSを記述 】
}
  任意のmax-widthでメディアクエリを書く省略形。



==== 入力フォーム系 ====

  input要素はtype属性により表示が全く異なるので、それらをまとめて設定するためのmixin。

@include form-text{
  【 CSSを記述 】
}
  text, email, number, password, tel, search, url, date, datetime, datetime-local, month, week

@include form-datetime{
  【 CSSを記述 】
}
  date, datetime, datetime-local, month, week

@include form-button{
  【 CSSを記述 】
}
  button要素と button, image, submit, reset


*/
/**
 * Illustrator の出力するCSSを rem ベース + em ベースに変換する
 * @param int $font-size      px単位での文字サイズ
 * @param int $line-height    px単位での行の高さ ※0にすると無視
 * @param int $letter-spacing px単位での字間 ※0にすると無視
 * @param bool $is_center     中央揃えで使用する際の調整をするか
 * @require $font-size-root
 * @example1 @font-rem(14px, 28px, 0.4px, true);
 * @example2 @font-rem(14, 28, 0.4, true);
 */
/**
 * Illustrator の出力するCSSを rem ベース + em ベースに変換し、
 * さらに line-height により生じる上下の余白を調整する（Illustrator に合わせる）
 *
 * @param int $font-size      px単位での文字サイズ
 * @param int $line-height    px単位での行の高さ ※0にすると無視
 * @param int $letter-spacing px単位での字間 ※0にすると無視
 * @param bool $is_center     中央揃えで使用する際の調整をするか
 * @require $font-size-root
 * @example1 @font-rem(14px, 28px, 0.4px, true);
 * @example2 @font-rem(14, 28, 0.4, true);
 * @see https://coliss.com/articles/build-websites/operation/css/simple-css-remove-top-space.html
 */
/**
 * 溢れたテキストは … にする。
 * 1行限定だが、ブラウザ依存なし。
 */
/**
 * 溢れたテキストを … にする。
 * 任意行指定可能だが、-webkit が使える環境限定。
 * @param int $lines  最大行数
 */
/**
 * 幅をウィンドウ幅すべての幅にする
 * ただしPC版ではスクロールバーも含めたサイズとなるため、親要素を overflow:hidden; にしておくこと。
 */
/**
 * 縦横比を強制する
 * @param int $width        ブロックの幅
 * @param int $height       ブロックの高さ
 * @param bool $isFixChild  子要素にも縦横比を強制するか（既定値は false）
 */
/**
 * 疑似要素に画像をはめ込む
 */
/**
 * スマホ表示時のメディアクエリ
 */
/**
 * max-width のメディアクエリを作成する
 *  @param : $max-width  最大幅  数値に単位がない場合は px を付与。既定値はスマホの幅
 */
/**
 * dl要素を2列の表として表示する際のmixin
 * @param $dt-width: dt要素の幅
 * @param $breakpoint: 1列にする際の幅　既定値はスマホの幅
 */
/**
 * input要素のうちテキストボックス型にCSSをまとめて適用
 */
/**
 * input要素の日付関連のみCSSをまとめて適用
 */
/**
 * input要素およびbutton要素のみCSSをまとめて適用
 */
/*
JavaScriptが無効な場合に適用するCSSを記述する
ex)
  .caution{
    @include no-js(){
      color: red;
    }
  }
*/
/* SASS の function 機能 */
/**
【2020/9/12更新】

※pxで記述するものは、pxなしでも動作する。


strip-unit(30px)
  単位の除去

vh(30px, 1200px)
  第2引数を100vhとして、第1引数が何vh かを返す処理

addpx(30)
  単位なしの数値が入ったら px を付与

vwsp(100px)
  100px を vw に変換して返す（スマホ版デザインで算出）

vwpc(100px)
  100px を vw に変換して返す（パソコン版デザインで算出）

*/
/**
 * 単位なしの値には px を付与する
 */
/**
 * スマートフォン用デザイン上でのピクセル数を指定すると、vw換算での値を返す
 * @require $design-width-sp
 */
/**
 * パソコン用デザイン上でのピクセル数を指定すると、vw換算での値を返す
 * @require $design-width-pc
 */
/*
三角関数
https://codepen.io/NyX/pen/dYvymM
*/
/*
$pi: 3.14159265359;
$_precision: 10;

@function pow($base, $exp) {
  $value: $base;

  @if $exp>1 {
    @for $i from 2 through $exp {
      $value: $value * $base;
    }
  }

  @if $exp < 1 {
    @for $i from 0 through -$exp {
      $value: $value / $base;
    }
  }

  @return $value;
}

@function fact($num) {
  $fact: 1;

  @if $num>0 {
    @for $i from 1 through $num {
      $fact: $fact * $i;
    }
  }

  @return $fact;
}

@function _to_unitless_rad($angle) {
  @if unit($angle)=="deg" {
    $angle: $angle / 180deg * $pi;
  }

  @if unit($angle)=="rad" {
    $angle: $angle / 1rad;
  }

  @return $angle;
}

@function sin($angle) {
  $a: _to_unitless_rad($angle);
  $sin: $a;

  @for $n from 1 through $_precision {
    $sin: $sin + (pow(-1, $n) / fact(2 * $n + 1)) * pow($a, (2 * $n + 1));
  }

  @return $sin;
}

@function cos($angle) {
  $a: _to_unitless_rad($angle);
  $cos: 1;

  @for $n from 1 through $_precision {
    $cos: $cos + (pow(-1, $n) / fact(2*$n)) * pow($a, 2*$n);
  }

  @return $cos;
}

@function tan($angle) {
  @return sin($angle) / cos($angle);
}
*/
/*
_sitefont.scss で使用する、自前フォントを使うための mixin集
*/
/*
@function str-replace($substr, $newsubstr, $str, $all:false) {
  $pos: str-index($str, $substr);

  @while $pos !=null {
    $strlen: str-length($substr);
    $start: str-slice($str, 0, $pos - 1);
    $end: str-slice($str, $pos + $strlen);
    $str: $start + $newsubstr + $end;

    @if $all==true {
      $pos: str-index($str, $substr);
    }

    @else {
      $pos: null;
    }
  }

  @return $str;
}
*/
/* 各種設定 */
/* 色の変数 */
/**
 * 他で使用する色
 */
/*
 * 優先して読み込まれるCSSに base/__structure.scss を含むかどうか
 * true : atf.scss に import されます
 * false: common.scss に import されます
 * ※ .pc-block, .sp-block 等、レスポンシブ時の表示非表示に関するCSSを含むため、trueにするとリフローが発生しなくなります。
 */
/*
 * Gutenbergエディタで作成されたコンテンツを表示するCSSを常に読み込むか
 * ・minifyしても80kbほどある（gzipで圧縮転送で 11kb程度）
 * ・falseにした場合、"投稿" コンテンツを表示する際のみ読み込まれる @ single-post.scss
 */
/*
 * 属性セレクタの指定
 */
/*
 * スクロールバーの指定
 */
/* 色の変数 */
/**
 * 他で使用する色
 */
/**
 * スマートフォンに切り替わる際の幅を指定します。
 * この幅を元に一部の @mixin が動作します。
 */
/**
 * Illustrator / Photoshop 等での想定された画面幅を指定する箇所です。
 * この幅を元に vw 系のサイズ指定をする @function が存在します。
 */
/* フォントの変数 */
/* ユーザー投稿関連の設定 (.user_contents 内の変数群) */
/*
ゴシック体にしたい場合
  @extend %sans-serif;
明朝体にしたい場合
  @extend %serif;

変数指定だととても長くなるため、CSSのサイズ縮小用
*/
.el_common--title-ja {
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "YuMincho", "Yu Mincho", "MS PMincho", serif;
}

/* 各種設定 */
/* 色の変数 */
/**
 * 他で使用する色
 */
/*
 * 優先して読み込まれるCSSに base/__structure.scss を含むかどうか
 * true : atf.scss に import されます
 * false: common.scss に import されます
 * ※ .pc-block, .sp-block 等、レスポンシブ時の表示非表示に関するCSSを含むため、trueにするとリフローが発生しなくなります。
 */
/*
 * Gutenbergエディタで作成されたコンテンツを表示するCSSを常に読み込むか
 * ・minifyしても80kbほどある（gzipで圧縮転送で 11kb程度）
 * ・falseにした場合、"投稿" コンテンツを表示する際のみ読み込まれる @ single-post.scss
 */
/*
 * 属性セレクタの指定
 */
/*
 * スクロールバーの指定
 */
/* 色の変数 */
/**
 * 他で使用する色
 */
/**
 * スマートフォンに切り替わる際の幅を指定します。
 * この幅を元に一部の @mixin が動作します。
 */
/**
 * Illustrator / Photoshop 等での想定された画面幅を指定する箇所です。
 * この幅を元に vw 系のサイズ指定をする @function が存在します。
 */
/* フォントの変数 */
/* ユーザー投稿関連の設定 (.user_contents 内の変数群) */
/*
 * 高優先度なCSS
 */
.pc-none,
.pc,
.pc-b,
.pc-block {
  display: block !important;
}

.pc-ib,
.pc-inline-block {
  display: inline-block !important;
}

.pc-i,
.pc-inline {
  display: inline !important;
}

.pc-f,
.pc-flex {
  display: flex !important;
}

.sp,
.sp-i,
.sp-inline,
.sp-ib,
.sp-inline-block,
.sp-b,
.sp-block,
.sp-f,
.sp-flex {
  display: none !important;
}

@media (max-width: 768px) {
  .sp-none,
.pc,
.pc-i,
.pc-inline,
.pc-ib,
.pc-inline-block,
.pc-b,
.pc-block,
.pc-f,
.pc-flex {
    display: none !important;
  }

  .sp,
.sp-b,
.sp-block {
    display: block !important;
  }

  .sp-i,
.sp-inline {
    display: inline !important;
  }

  .sp-ib,
.sp-inline-block {
    display: inline-block !important;
  }

  .sp-f,
.sp-flex {
    display: flex !important;
  }
}
/* JavaScriptと連動して、スマホでも100vhの高さを適切に処理できるようにするクラス */
.js-height100vh,
[js-height100vh] {
  height: 100vh;
}

.js-min-heihgt100vh,
[js-min-heihgt100vh] {
  min-height: 100vh;
}

.js-max-heihgt100vh,
[js-max-heihgt100vh] {
  max-height: 100vh;
}

img[data-init] {
  opacity: 0;
}
img[data-init][data-loaded-delay] {
  transition: 0.2s;
  opacity: 1;
}

/*
 * 中優先度（通常の共通CSSはここに記述）
 */
.module_appheader {
  margin: 100px auto 96px;
  padding: 0 4px;
  text-align: center;
}
.module_appheader--title img {
  margin: 37px auto 0;
}
.module_appheader--title::before {
  content: "";
  display: block;
  margin: auto;
  background: url(../../images/application/title-crown.png) no-repeat center center;
  width: 190px;
  height: 32px;
}
.module_appheader--titlejp {
  margin-top: 20px;
  display: block;
  font-family: "Noto Serif JP", sans-serif;
  font-weight: 900;
  font-size: 2.5rem;
  letter-spacing: 0.1em;
  text-indent: 0.1em;
}

body.category-vlog {
  background: #45AFE1;
}

.bl_blogs {
  width: 1056px;
  max-width: 95%;
  margin-left: auto;
  margin-right: auto;
}
.bl_blogs--title {
  margin-top: 108px;
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
}
@media (max-width: 768px) {
  .bl_blogs--title {
    width: 53.8666666667vw;
    margin-left: auto;
    margin-right: auto;
  }
}

.bl_videoblog {
  padding-bottom: 95px;
}
.bl_videoblog--items {
  margin-top: 100px;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
.bl_videoblog--item {
  width: 47.3484848485%;
  padding-bottom: 79px;
  position: relative;
}
.bl_videoblog--place {
  font-size: 1rem;
  letter-spacing: 0.41em;
  text-indent: 0.41em;
  text-align: center;
  font-weight: 700;
  width: 110px;
  height: 43px;
  line-height: 43px;
  font-weight: 700;
  color: #fff;
  position: absolute;
  z-index: 10;
  border-radius: 5px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.bl_videoblog--videowrap {
  margin-top: -26px;
  display: block;
  width: 100%;
  height: 0;
  padding-top: 60%;
  position: relative;
  position: relative;
  overflow: hidden;
}
.bl_videoblog--video, .bl_videoblog--image {
  border: 0;
  position: absolute;
}
.bl_videoblog--video {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.bl_videoblog--image {
  left: 0;
  top: -100%;
  bottom: -100%;
  margin: auto;
  width: 100%;
  height: auto;
}
.bl_videoblog--caption {
  margin-top: 20px;
  font-size: 0.9375rem;
  line-height: 1.8666666667;
  letter-spacing: 0.1em;
  color: #000;
}
.bl_videoblog--caption:before, .bl_videoblog--caption:after {
  content: "";
  display: block;
  height: 0;
  width: 0;
}
.bl_videoblog--caption:before {
  margin-top: -0.4333333333em;
}
.bl_videoblog--caption:after {
  margin-bottom: -0.4333333333em;
}
.bl_videoblog--datetime {
  display: block;
  margin-top: 12px;
  font-family: "Avenir Roman", sans-serif;
  font-size: 0.9375rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
  color: #000;
  opacity: 0.5;
}
.bl_videoblog--more {
  margin-top: 29px;
  display: block;
  font-size: 0.8125rem;
  letter-spacing: 0.2em;
  text-indent: 0.2em;
  color: #fff;
  font-weight: 700;
  text-align: center;
  width: 100%;
  height: 50px;
  line-height: 50px;
  transition: 0.35s;
  background-color: #288ACC;
  border-radius: 4px;
  position: absolute;
  bottom: 0;
  left: 0;
}
.bl_videoblog--item {
  margin-bottom: 123px;
}
.bl_videoblog--item.east .bl_videoblog--place {
  background: #0346C7;
}
.bl_videoblog--item.east .bl_videoblog--more:hover {
  background-color: #0346C7;
}
.bl_videoblog--item.west .bl_videoblog--place {
  background: #D75A6A;
}
.bl_videoblog--item.west .bl_videoblog--more:hover {
  background-color: #D75A6A;
}
@media (max-width: 768px) {
  .bl_videoblog--items {
    margin-top: 14vw;
    width: 84vw;
    margin-left: auto;
    margin-right: auto;
  }
  .bl_videoblog--item {
    width: 100%;
    padding-bottom: 0;
    margin-bottom: 15.0666666667vw;
  }
  .bl_videoblog--videowrap:after {
    width: 26.7361111111%;
  }
  .bl_videoblog--inner {
    display: flex;
    flex-flow: column nowrap;
  }
  .bl_videoblog--place {
    width: 18.4189333333vw;
    height: 7.2vw;
    line-height: 7.2vw;
    font-size: 3.4666666667vw;
  }
  .bl_videoblog--videowrap {
    order: -1;
    margin-top: 0;
  }
  .bl_videoblog--more {
    display: none;
  }
}

.bl_pager {
  margin: 9.5168374817vw auto 6.7349926794vw;
}

.el_netsugen_profile {
  font-family: "Noto Sans JP", sans-serif;
  padding-bottom: 52px;
  margin-bottom: 60px;
  position: relative;
}
.el_netsugen_profile.west .el_netsugen_profile--icon img {
  margin: auto;
}
.el_netsugen_profile.west .el_netsugen_profile--icon .serial {
  background: #1B488E;
}
.el_netsugen_profile.west .el_netsugen_profile--more {
  background-color: #1B488E;
}
.el_netsugen_profile.east .el_netsugen_profile--icon .serial {
  background: #1B488E;
}
.el_netsugen_profile.east .el_netsugen_profile--more {
  background-color: #1B488E;
}
.el_netsugen_profile--icon {
  position: relative;
}
.el_netsugen_profile--icon .photo {
  width: 118px;
  height: 118px;
  margin: auto;
  border-radius: 50%;
  border: solid 4px #fff;
}
.el_netsugen_profile--icon .serial {
  display: none;
}
.el_netsugen_profile--catch {
  margin-top: 12px;
  font-size: 1rem;
  line-height: 1.3525;
  letter-spacing: 0.1em;
  font-weight: 500;
  color: #fff;
}
.el_netsugen_profile--name {
  margin-top: 8px;
}
.el_netsugen_profile--name .jp {
  display: block;
  font-size: 0.875rem;
  line-height: 1.5457142857;
  letter-spacing: 0.1em;
  font-weight: 700;
}
.el_netsugen_profile--name .en {
  margin-top: 3px;
  display: block;
  font-family: "Avenir Roman", "Noto Sans JP", sans-serif;
  font-weight: bold;
  font-size: 0.625rem;
  line-height: 1.2;
  letter-spacing: 0.05em;
}
.el_netsugen_profile--theme, .el_netsugen_profile--place {
  font-size: 0.875rem;
  line-height: 1.4285714286;
  margin-left: 18px;
  text-indent: -18px;
}
.el_netsugen_profile--theme:before, .el_netsugen_profile--place:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 13px;
  height: 13px;
  margin-right: 5px;
  background: no-repeat center center/contain;
}
.el_netsugen_profile--theme {
  margin-top: 9px;
}
.el_netsugen_profile--theme:before {
  background-image: url(../../images/index/jinzai/icon_theme@2x.png);
}
.el_netsugen_profile--place {
  margin-top: 3px;
}
.el_netsugen_profile--place:before {
  background-image: url(../../images/index/jinzai/icon_place@2x.png);
}
.el_netsugen_profile--more {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  border-radius: 3px;
  transition: 0.35s;
  width: 100%;
  height: 40px;
  position: absolute;
  left: 0;
  bottom: 0;
}
.el_netsugen_profile--more:hover {
  background-color: #000 !important;
}
@media (max-width: 468px) {
  .el_netsugen_profile {
    padding-bottom: 9.6vw;
    margin-bottom: 10.2666666667vw;
  }
  .el_netsugen_profile--icon .photo {
    width: 30vw;
    height: 30vw;
  }
  .el_netsugen_profile--icon .serial {
    width: 8.9333333333vw;
    height: 8.9333333333vw;
    font-size: 3.4666666667vw;
  }
  .el_netsugen_profile--catch {
    font-size: 3.8666666667vw;
    line-height: 5.1933333333vw;
  }
  .el_netsugen_profile--name .jp {
    font-size: 3.4666666667vw;
  }
  .el_netsugen_profile--name .en {
    font-size: 2.4vw;
  }
  .el_netsugen_profile--theme, .el_netsugen_profile--place {
    font-size: 3.4666666667vw;
    margin-left: 3.4666666667vw;
    text-indent: -3.4666666667vw;
    line-height: 4.8vw;
  }
  .el_netsugen_profile--theme:before, .el_netsugen_profile--place:before {
    width: 2.9333333333vw;
    height: 2.9333333333vw;
    margin-right: 0.8vw;
    vertical-align: baseline;
  }
  .el_netsugen_profile--place {
    margin-bottom: 2.9333333333vw;
  }
  .el_netsugen_profile--more {
    font-size: 3.7333333333vw;
    height: 9.6vw;
  }
}

@-webkit-keyframes el_common--dialog {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  1% {
    -webkit-transform: rotate(-10deg);
            transform: rotate(-10deg);
  }
  3% {
    -webkit-transform: rotate(12deg);
            transform: rotate(12deg);
  }
  5% {
    -webkit-transform: rotate(-8deg);
            transform: rotate(-8deg);
  }
  7% {
    -webkit-transform: rotate(10deg);
            transform: rotate(10deg);
  }
  8% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}

@keyframes el_common--dialog {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  1% {
    -webkit-transform: rotate(-10deg);
            transform: rotate(-10deg);
  }
  3% {
    -webkit-transform: rotate(12deg);
            transform: rotate(12deg);
  }
  5% {
    -webkit-transform: rotate(-8deg);
            transform: rotate(-8deg);
  }
  7% {
    -webkit-transform: rotate(10deg);
            transform: rotate(10deg);
  }
  8% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}
@-webkit-keyframes animation-wave-switch {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes animation-wave-switch {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
.el_common--inner {
  position: relative;
  z-index: 1;
}
.el_common--inner:before, .el_common--inner:after {
  content: "";
  display: block;
  background: repeat-y top center/contain;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  max-width: 1136px;
  margin: auto;
  z-index: -1;
  opacity: 0;
}
.el_common--inner:before {
  -webkit-animation: animation-wave-switch 12s 0s infinite;
          animation: animation-wave-switch 12s 0s infinite;
}
.el_common--inner:after {
  -webkit-animation: animation-wave-switch 12s 6s infinite;
          animation: animation-wave-switch 12s 6s infinite;
}

.el_common {
  padding: 87px 5px 310px;
  background: #8ACDEB;
  position: relative;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  overflow: hidden;
}
.el_common.mans {
  padding-bottom: 160px;
}
.el_common--inner {
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
}
.el_common--inner:before {
  background-image: url(../../images/202104/common/wave1.png);
}
.el_common--inner:after {
  background-image: url(../../images/202104/common/wave2.png);
}
.el_common--title-en.wide {
  margin-bottom: -30px;
}
@media (max-width: 768px) {
  .el_common--title-en.wide {
    margin-bottom: 0;
  }
}
.el_common--year {
  margin-top: 35px;
}
.el_common--title-ja {
  margin-top: 50px;
  font-size: 2.25rem;
  line-height: 1.5555555556;
  font-weight: 900;
  text-align: center;
}
.el_common--title-ja:before, .el_common--title-ja:after {
  content: "";
  display: block;
  height: 0;
  width: 0;
}
.el_common--title-ja:before {
  margin-top: -0.2777777778em;
}
.el_common--title-ja:after {
  margin-bottom: -0.2777777778em;
}
.el_common--eyecatch {
  margin-top: 37px;
  position: relative;
}
.el_common--eyecatch .dialog {
  position: absolute;
  top: 0;
  left: 90%;
  right: 0;
  margin: auto;
  -webkit-animation: el_common--dialog 3.5s 2s infinite;
          animation: el_common--dialog 3.5s 2s infinite;
  -webkit-transform-origin: left bottom;
          transform-origin: left bottom;
}
.el_common--title-sub {
  margin-top: 48px;
  font-size: 1.875rem;
  line-height: 1.8666666667;
  letter-spacing: 0.1em;
  text-indent: 0.1em;
  font-weight: 700;
}
.el_common--title-sub:before, .el_common--title-sub:after {
  content: "";
  display: block;
  height: 0;
  width: 0;
}
.el_common--title-sub:before {
  margin-top: -0.4333333333em;
}
.el_common--title-sub:after {
  margin-bottom: -0.4333333333em;
}
.el_common--description {
  margin-top: 42px;
  font-size: 1.125rem;
  line-height: 1.7322222222;
  letter-spacing: 0.1em;
  text-indent: 0.1em;
  font-weight: 700;
  white-space: pre-line;
  text-align: center;
}
.el_common--description:before, .el_common--description:after {
  content: "";
  display: block;
  height: 0;
  width: 0;
}
.el_common--description:before {
  margin-top: -0.3661111111em;
}
.el_common--description:after {
  margin-bottom: -0.3661111111em;
}
.el_common--objects {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  max-width: 1034px;
  height: 178px;
  z-index: 1;
}
.el_common.mans .el_common--objects {
  height: 335px;
}

.el_common--object-left, .el_common--object-right {
  position: absolute;
  top: 0;
  max-height: 100%;
}
.el_common--object-left {
  left: 0;
}
.el_common--object-right {
  right: 0;
}
@media (max-width: 768px) {
  .el_common {
    padding-top: 9.7333333333vw;
    padding-bottom: 44vw;
  }
  .el_common.mans {
    padding-bottom: 56vw;
  }
  .el_common.mans .el_common--objects {
    width: 66.9333333333vw;
    height: 44.6666666667vw;
  }
  .el_common.mans .el_common--object-left, .el_common.mans .el_common--object-right {
    max-width: none;
  }
  .el_common.mans .el_common--object-left {
    max-width: 20.5333333333vw;
  }
  .el_common.mans .el_common--object-right {
    max-width: 22.6666666667vw;
  }
  .el_common--inner {
    padding-top: 12.6666666667vw;
  }
  .el_common--inner:before, .el_common--inner:after {
    background-size: 100%;
    max-width: 84.5333333333vw;
  }
  .el_common--inner:before {
    background-image: url(../../images/202104/common/wave-bg-sp1.png);
    opacity: 1;
  }
  .el_common--inner:after {
    background-image: url(../../images/202104/common/wave-bg-sp2.png);
    opacity: 0;
  }
  .el_common--title-en {
    max-width: 68.2666666667vw;
  }
  .el_common--year {
    margin-top: 6.6666666667vw;
    max-width: 58.6666666667vw;
  }
  .el_common--title-ja {
    margin-top: 5.8666666667vw;
    font-size: 5.6vw;
  }
  .el_common--eyecatch {
    margin-top: 6.4vw;
    display: flex;
    flex-flow: column-reverse nowrap;
    max-width: 59.3333333333vw;
  }
  .el_common--eyecatch .dialog {
    margin-bottom: 3.6vw;
    position: static;
    max-width: 40.9866666667vw;
    -webkit-animation: none;
            animation: none;
  }
  .el_common--title-sub {
    margin-top: 6.1333333333vw;
    font-size: 4.8vw;
  }
  .el_common--description {
    margin-top: 6.9333333333vw;
    font-size: 3.4666666667vw;
    line-height: 6.8vw;
  }
  .el_common--objects {
    max-width: 81.8666666667vw;
    height: 35.0666666667vw;
  }
  .el_common--object-left {
    max-width: 26.6666666667vw;
  }
  .el_common--object-right {
    max-width: 24vw;
  }
}

.el_coming-soon {
  padding: 111px 5px 171px;
  background: #45AFE1;
}
.el_coming-soon--message {
  display: block;
  margin: auto;
}
@media (max-width: 768px) {
  .el_coming-soon {
    padding: 0 5px 16vw;
  }
  .el_coming-soon--message {
    max-width: 60.6vw;
  }
}

@-webkit-keyframes mod_yuragi {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  15% {
    -webkit-transform: translate(3%, 3%);
            transform: translate(3%, 3%);
  }
  24% {
    -webkit-transform: translate(6%, -1%);
            transform: translate(6%, -1%);
  }
  38% {
    -webkit-transform: translate(1%, -10%);
            transform: translate(1%, -10%);
  }
  62% {
    -webkit-transform: translate(-4%, 6%);
            transform: translate(-4%, 6%);
  }
  86% {
    -webkit-transform: translate(2%, -1%);
            transform: translate(2%, -1%);
  }
}

@keyframes mod_yuragi {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  15% {
    -webkit-transform: translate(3%, 3%);
            transform: translate(3%, 3%);
  }
  24% {
    -webkit-transform: translate(6%, -1%);
            transform: translate(6%, -1%);
  }
  38% {
    -webkit-transform: translate(1%, -10%);
            transform: translate(1%, -10%);
  }
  62% {
    -webkit-transform: translate(-4%, 6%);
            transform: translate(-4%, 6%);
  }
  86% {
    -webkit-transform: translate(2%, -1%);
            transform: translate(2%, -1%);
  }
}
.mod_yuragi {
  -webkit-animation: mod_yuragi 12s 0s infinite;
          animation: mod_yuragi 12s 0s infinite;
}
.mod_yuragi.delay {
  -webkit-animation-delay: 6s;
          animation-delay: 6s;
}

.module_wave {
  overflow-x: hidden;
  position: relative;
  height: 140px;
  overflow: hidden;
  margin-top: -140px;
}
.module_wave.mans {
  margin-top: -100px;
  height: 100px;
}
.module_wave.under-top-news {
  margin-top: 0 !important;
  background: #DAE13C;
}
.module_wave.under-island {
  margin-top: 0 !important;
  background: #45AFE1;
}
.module_wave > * {
  transition: 2s;
}
.module_wave .top {
  background: repeat-x top left;
  height: 27px;
  width: 21474836px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  position: relative;
  z-index: 1;
}
.module_wave .top:after {
  content: "";
  display: block;
  width: 100%;
  height: 1000px;
  position: absolute;
  z-index: 0;
  top: 100%;
  left: 0;
  -webkit-transform: translateY(-0.5px);
          transform: translateY(-0.5px);
}
.module_wave .bottom {
  height: 60px;
}
.module_wave.type1 .top {
  background-image: url(../../images/202104/common/moving-wave.png);
  border-bottom: solid 2px #45AFE1;
}
.module_wave.type1 .top:after {
  background: #45AFE1;
}
.module_wave.type1 .bottom {
  background: #45AFE1;
}
.module_wave.type2 {
  background: #E7E993;
  height: 260px;
}
.module_wave.type2 .top {
  background-image: url(../../images/index/wave2-repeat.png?2);
  height: 37px;
}
.module_wave.type2 .bottom {
  background: #80B0CB;
}
.module_wave.type3 .top {
  background-image: url(../../images/202104/common/moving-wave3.png);
  border-bottom: solid 2px #288ACC;
}
.module_wave.type3 .top:after {
  background: #288ACC;
}
.module_wave.type3 .bottom {
  background: #288ACC;
}
@media (max-width: 768px) {
  .module_wave {
    margin-top: -37.3333333333vw;
    height: 37.3333333333vw;
  }
  .module_wave .top {
    -webkit-transform: scaleX(0.75) translateX(-100vw);
            transform: scaleX(0.75) translateX(-100vw);
    -webkit-transform-origin: left top;
            transform-origin: left top;
  }
  .module_wave.type2 {
    height: 200px;
  }
  .module_wave.type2 .top:before {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  .module_wave.type2 .top:after {
    height: 500px;
  }
}

.el_profile {
  position: relative;
  padding-bottom: 46px;
}
.el_profile--header {
  display: flex;
  flex-flow: row nowrap;
  position: relative;
}
.el_profile--photo {
  margin-right: 18px;
}
.el_profile--photo img {
  display: block;
  width: 138px;
  height: 138px;
  border: solid 5px #fff;
  border-radius: 9px;
  background: #fff;
}
.el_profile--summary {
  display: flex;
  flex-flow: column nowrap;
  align-items: flex-start;
  justify-content: flex-end;
}
.el_profile--dialog {
  position: absolute;
  z-index: 1;
  right: 0;
  top: -40px;
  width: 125px;
  height: 103px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: url(../../images/202104/tsunagite/fukidashi.png) no-repeat center center/contain;
}
.el_profile--comment {
  color: #fff;
  font-size: 0.875rem;
  line-height: 1.505;
  text-align: center;
  font-weight: 700;
  white-space: pre-line;
  -webkit-transform: rotate(5deg);
          transform: rotate(5deg);
  margin-bottom: 9px;
}
.el_profile--born {
  display: none;
  width: 98px;
  height: 32px;
  border-radius: 4px;
  background-color: #2861B9;
  color: #fff;
  font-size: 0.875rem;
  line-height: 2.2857142857;
  letter-spacing: 0.05em;
  text-indent: 0.05em;
  text-align: center;
  font-weight: 700;
}
.el_profile--row {
  margin-top: 10px;
  display: flex;
  flex-flow: row nowrap;
}
.el_profile--name {
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  font-weight: 700;
  color: #040000;
}
.el_profile--twitter {
  display: block;
  margin-left: 18px;
  width: 25px;
  height: 25px;
  background: url(../../images/202104/tsunagite/twitter.svg) no-repeat center center/contain;
}
.el_profile--phonetic {
  margin-top: 8px;
  font-family: "Avenir Medium", sans-serif;
  font-size: 0.625rem;
  letter-spacing: 0.2em;
}
.el_profile--description {
  margin-top: 41px;
  font-size: 0.9375rem;
  line-height: 2.1333333333;
  letter-spacing: 0.05em;
  color: #040000;
  text-align: justify;
  text-justify: inter-ideograph;
}
.el_profile--description:before, .el_profile--description:after {
  content: "";
  display: block;
  height: 0;
  width: 0;
}
.el_profile--description:before {
  margin-top: -0.5666666667em;
}
.el_profile--description:after {
  margin-bottom: -0.5666666667em;
}
.el_profile--button {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 25px;
  line-height: 25px;
  background: #2861B9;
  color: #45AFE1;
  text-align: center;
  border-radius: 4px;
  font-size: 0.8125rem;
  letter-spacing: 0.05em;
  text-indent: 0.05em;
  text-align: center;
  transition: 0.35s;
}
.el_profile--button:hover {
  background: rgba(40, 97, 185, 0.5);
}
@media (max-width: 768px) {
  .el_profile {
    padding-bottom: 0;
  }
  .el_profile--photo img {
    width: 29.3333333333vw;
    height: 29.3333333333vw;
  }
  .el_profile--dialog {
    width: 24.8vw;
    height: 20.4vw;
    top: -8vw;
  }
  .el_profile--comment {
    font-size: 2.8vw;
    line-height: 4.2133333333vw;
  }
  .el_profile--born {
    height: 6.4vw;
    line-height: 6.4vw;
    width: 19.6vw;
    font-size: 2.8vw;
  }
  .el_profile--name {
    font-size: 4.8vw;
  }
  .el_profile--twitter {
    width: 5vw;
    height: 5vw;
    margin-left: 2.4vw;
  }
  .el_profile--phonetic {
    font-size: 2vw;
  }
  .el_profile--description {
    margin-top: 5.6vw;
    font-size: 3.4666666667vw;
  }
  .el_profile--button {
    position: static;
    margin-top: 5.8666666667vw;
    height: 10.6666666667vw;
    line-height: 10.6666666667vw;
    font-size: 3.4666666667vw;
  }
}

.bl_ocean {
  background: #45AFE1;
}

.ut_hover_images {
  display: inline-block;
  position: relative;
}
.ut_hover_images > * {
  transition: 0.35s;
}
.ut_hover_images > *:nth-of-type(1) {
  opacity: 1 !important;
  position: relative;
  z-index: 0;
}
.ut_hover_images > *:nth-of-type(2) {
  opacity: 0 !important;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 100%;
  height: 100%;
}
.ut_hover_images:hover > *:nth-of-type(1) {
  opacity: 0 !important;
}
.ut_hover_images:hover > *:nth-of-type(2) {
  opacity: 1 !important;
}

.module_apply_playicon {
  display: block;
  position: relative;
}
.module_apply_playicon:after {
  content: "";
  width: 17.5%;
  height: 100%;
  background: url(../../images/202104/videoblog/playicon.svg) no-repeat center center/contain;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  z-index: 1;
}

/*
 * 低優先度なCSS
 */
/*
 * WordPress5.4 の Gutenberg で作成された投稿を表示するためのCSS
 *  条件分岐による @import は利用できないため、@mixinに変換している。
 */
/*
common.js の footerBottomEdge 機能が有効なとき下記CSSを反映させると、
縦に短いページでも最下部にフッターが来るようになる。

※footerBottomEdge機能は body要素のpadding-bottom を $elm_footer の高さと同サイズを確保する
*/
/* 各種設定 */
/* 色の変数 */
/**
 * 他で使用する色
 */
/*
 * 優先して読み込まれるCSSに base/__structure.scss を含むかどうか
 * true : atf.scss に import されます
 * false: common.scss に import されます
 * ※ .pc-block, .sp-block 等、レスポンシブ時の表示非表示に関するCSSを含むため、trueにするとリフローが発生しなくなります。
 */
/*
 * Gutenbergエディタで作成されたコンテンツを表示するCSSを常に読み込むか
 * ・minifyしても80kbほどある（gzipで圧縮転送で 11kb程度）
 * ・falseにした場合、"投稿" コンテンツを表示する際のみ読み込まれる @ single-post.scss
 */
/*
 * 属性セレクタの指定
 */
/*
 * スクロールバーの指定
 */
/* 色の変数 */
/**
 * 他で使用する色
 */
/**
 * スマートフォンに切り替わる際の幅を指定します。
 * この幅を元に一部の @mixin が動作します。
 */
/**
 * Illustrator / Photoshop 等での想定された画面幅を指定する箇所です。
 * この幅を元に vw 系のサイズ指定をする @function が存在します。
 */
/* フォントの変数 */
/* ユーザー投稿関連の設定 (.user_contents 内の変数群) */
html.js .bl_footer {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}

/*
フッターのCSSを記述するところ。
なお croccs/base/structure/_footer.scss にもフッターのレイアウトに関する記述がある。
*/
/* 各種設定 */
/* 色の変数 */
/**
 * 他で使用する色
 */
/*
 * 優先して読み込まれるCSSに base/__structure.scss を含むかどうか
 * true : atf.scss に import されます
 * false: common.scss に import されます
 * ※ .pc-block, .sp-block 等、レスポンシブ時の表示非表示に関するCSSを含むため、trueにするとリフローが発生しなくなります。
 */
/*
 * Gutenbergエディタで作成されたコンテンツを表示するCSSを常に読み込むか
 * ・minifyしても80kbほどある（gzipで圧縮転送で 11kb程度）
 * ・falseにした場合、"投稿" コンテンツを表示する際のみ読み込まれる @ single-post.scss
 */
/*
 * 属性セレクタの指定
 */
/*
 * スクロールバーの指定
 */
/* 色の変数 */
/**
 * 他で使用する色
 */
/**
 * スマートフォンに切り替わる際の幅を指定します。
 * この幅を元に一部の @mixin が動作します。
 */
/**
 * Illustrator / Photoshop 等での想定された画面幅を指定する箇所です。
 * この幅を元に vw 系のサイズ指定をする @function が存在します。
 */
/* フォントの変数 */
/* ユーザー投稿関連の設定 (.user_contents 内の変数群) */
html.js .bl_footer {
  z-index: 1;
}

.bl_footer {
  background: #1B488D;
  color: #fff;
  padding: 37px 5px 21px;
}
.bl_footer--menus {
  font-size: 0.8125rem;
  line-height: 2.3846153846;
  letter-spacing: 0.1em;
  text-indent: 0.1em;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
}
.bl_footer--menu {
  padding: 0 13.5px;
  position: relative;
}
.bl_footer--menu:after {
  content: "";
  width: 1px;
  height: 10px;
  opacity: 0.3;
  background: #fff;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
.bl_footer--menu a {
  color: inherit;
}
.bl_footer--menu:last-of-type:after {
  display: none;
}
.bl_footer--information {
  margin-top: 38px;
  font-size: 0.8125rem;
  line-height: 1.8461538462;
  opacity: 0.7;
  text-align: center;
}
.bl_footer--copyright {
  margin-top: 20px;
  display: block;
  text-align: center;
  font-size: 0.6875rem;
  opacity: 0.5;
}
.bl_footer--icons {
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  align-items: center;
}
.bl_footer--icon {
  width: 26px;
  margin: 12px 13px 0;
}
.bl_footer--fixed-banner {
  position: fixed;
  z-index: 99;
  bottom: 25px;
  right: -1000px;
  opacity: 0;
  transition: opacity 0.35s;
}
html.out-of-firstview .bl_footer--fixed-banner {
  right: 25px;
  opacity: 1;
}

@media (max-width: 768px) {
  .bl_footer {
    padding: 0 0 8.5333333333vw;
  }
  .bl_footer--title {
    margin: 11.2vw auto 8vw;
    width: 51.3333333333vw;
  }
  .bl_footer--inner {
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
  }
  .bl_footer--icons {
    margin-top: 8.6666666667vw;
    justify-content: center;
    order: 999;
  }
  .bl_footer--menus {
    flex-flow: row wrap;
    justify-content: space-between;
    width: 83.7333333333vw;
    margin: auto;
  }
  .bl_footer--menu {
    width: 38.1333333333vw;
    font-size: 3.7333333333vw;
    height: 10.6666666667vw;
    line-height: 10.6666666667vw;
    border-top: solid 1px rgba(255, 255, 255, 0.2);
    margin: 0;
    white-space: nowrap;
    padding: 0;
  }
  .bl_footer--menu:after {
    display: none;
  }
  .bl_footer--menu.sp-none {
    display: none;
  }
  .bl_footer--menu.o1 {
    order: 1;
  }
  .bl_footer--menu.o2 {
    order: 2;
  }
  .bl_footer--menu.o3 {
    order: 3;
  }
  .bl_footer--menu.o4 {
    order: 4;
  }
  .bl_footer--menu.o5 {
    order: 5;
  }
  .bl_footer--menu.o6 {
    order: 6;
  }
  .bl_footer--menu.o7 {
    order: 7;
  }
  .bl_footer--menu.o8 {
    order: 8;
  }
  .bl_footer--menu.o9 {
    order: 9;
  }
  .bl_footer--menu.o10 {
    order: 10;
  }
  .bl_footer--menu.o11 {
    order: 11;
  }
  .bl_footer--menu.o10, .bl_footer--menu.o11 {
    border-bottom: solid 1px rgba(255, 255, 255, 0.2);
  }
  .bl_footer--icon {
    width: 8vw;
    margin: 0 3vw;
  }
  .bl_footer--copyright {
    color: #fff;
    opacity: 1;
  }
  .bl_footer--information {
    font-size: 3.7333333333vw;
    opacity: 1;
  }
}
@media (max-width: 768px) and (max-width: 768px) {
  .bl_footer--fixed-banner {
    display: none;
  }
  body.page-index .bl_footer--fixed-banner {
    display: block;
    max-width: 90%;
    margin: auto;
    right: 0;
    left: 0;
  }
}
@media (max-width: 450px) {
  .bl_footer--menus {
    font-size: 3.92vw;
  }
  .bl_footer--copyright {
    font-size: 3.22vw;
  }
}

/*
Form の初期設定
*/
/* 各種設定 */
/* 色の変数 */
/**
 * 他で使用する色
 */
/*
 * 優先して読み込まれるCSSに base/__structure.scss を含むかどうか
 * true : atf.scss に import されます
 * false: common.scss に import されます
 * ※ .pc-block, .sp-block 等、レスポンシブ時の表示非表示に関するCSSを含むため、trueにするとリフローが発生しなくなります。
 */
/*
 * Gutenbergエディタで作成されたコンテンツを表示するCSSを常に読み込むか
 * ・minifyしても80kbほどある（gzipで圧縮転送で 11kb程度）
 * ・falseにした場合、"投稿" コンテンツを表示する際のみ読み込まれる @ single-post.scss
 */
/*
 * 属性セレクタの指定
 */
/*
 * スクロールバーの指定
 */
/* 色の変数 */
/**
 * 他で使用する色
 */
/**
 * スマートフォンに切り替わる際の幅を指定します。
 * この幅を元に一部の @mixin が動作します。
 */
/**
 * Illustrator / Photoshop 等での想定された画面幅を指定する箇所です。
 * この幅を元に vw 系のサイズ指定をする @function が存在します。
 */
/* フォントの変数 */
/* ユーザー投稿関連の設定 (.user_contents 内の変数群) */
input:focus,
select:focus,
textarea:focus,
button:focus {
  outline: solid 1px rgba(30, 90, 164, 0.5);
}

/* Reduced Motion
*****************/
/*
* 1. Immediately jump any animation to the end point
* 2. Remove transitions & fixed background attachment
* See: https://github.com/mozdevs/cssremedy/issues/11
*/
@media (prefers-reduced-motion: reduce) {
  *,
::before,
::after {
    -webkit-animation-delay: -1ms !important;
            animation-delay: -1ms !important;
    -webkit-animation-duration: 1ms !important;
            animation-duration: 1ms !important;
    -webkit-animation-iteration-count: 1 !important;
            animation-iteration-count: 1 !important;
    background-attachment: initial !important;
    scroll-behavior: auto !important;
    transition-delay: 0s !important;
    transition-duration: 0s !important;
  }
}

/*# sourceMappingURL=common.css.map */