@charset "UTF-8";
/* ***************************** Import file to Scss or Sass. */
/* -----------------------------------------------------------------
Title: reset.css
Created: 2020-02-20
Last Modified: 2020-03-26
------------------------------------------------------------------ */
/*　目次 
-----------------------------------------------------------------

#01-リセット
#02-基本タグの定義
#03-CSSハック

------------------------------------------------------------------ */
/* -----------------------------------------------------------------

#01　リセット

------------------------------------------------------------------ */
* { font-style: normal; margin: 0px; padding: 0px; text-decoration: none; }

html { font-size: 62.5%; line-height: 1.6; }

table { border-collapse: collapse; border-spacing: 0; }

caption, th { text-align: left; }

ol, ul, dl { list-style: none; }

fieldset { border: 0; }

img { border: 0; vertical-align: bottom; }

/* -----------------------------------------------------------------

#02　基本タグの定義
    font-family: 'Josefin Sans', sans-serif;
    font-family: 'Noto Sans JP', sans-serif;
    font-family: 'Oswald', sans-serif;

------------------------------------------------------------------ */
body { position: relative; top: 0; left: 0; color: #000000; font-family: "游ゴシック", "ヒラギノ角ゴ Pro", "メイリオ", sans-serif; -webkit-font-feature-settings: 'palt' 1; font-feature-settings: 'palt' 1; background-color: #FFFFFF; font-weight: 400; letter-spacing: 0.08em; text-align: left; width: auto; height: 100%; margin: 0px auto; background-position: top; }

body .montserrat { font-family: 'Montserrat', sans-serif; }

body .mincho { font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }

@media all and (-ms-high-contrast: none) { body { letter-spacing: 0; } }

h1, h2, h3, h4, h5, h6 { font-weight: 100; }

p { text-align: left; font-size: 1.3em; }

span { font-size: 1em; text-align: left; }

address, caption, cite, code, dfn, em, strong, th, var { font-style: normal; font-weight: 100; }

a img { border-style: none; outline: medium none; }

object { border-style: none; outline: medium none; }

/** anchors */
/**************************************/
a { font-size: 1em; color: #023461; text-decoration: none; outline: none; -webkit-transition: opacity 0.30s; -moz-transition: opacity 0.30s; -ms-transition: opacity 0.30s; -o-transition: opacity 0.30s; transition: opacity 0.30s; }

a:hover { opacity: 0.7; }

a:link { outline: medium none; }

a:visited { outline: medium none; }

/* -----------------------------------------------------------------
@mixin
------------------------------------------------------------------ */
/* -----------------------------------------------------------------
base content
------------------------------------------------------------------ */
p.pagetop:hover { opacity: 0.7; }

.nolink { pointer-events: none; }

.pc { display: none !important; }

@media screen and (min-width: 1100px) { .pc { display: inherit !important; } }

@media screen and (min-width: 1100px) { .sp { display: none !important; } }

img { display: block; width: 100%; height: auto; }

.fix { position: fixed; bottom: -300px; left: 0; background: rgba(0, 0, 0, 0.5); padding: 15px 0; width: 100%; z-index: 20; -webkit-transition: 0.30s; -moz-transition: 0.30s; -ms-transition: 0.30s; -o-transition: 0.30s; transition: 0.30s; }

.fix.on { bottom: 0; }

.fix p { width: 320px; margin: 0 auto; }

@media screen and (max-width: 1100px) { .fix { padding: 1.73333vw 0 1.33333vw 0; }
  .fix p { width: 59.46667vw; } }

header { position: fixed; top: 0; left: 0; background: #FFFFFF; width: 100%; z-index: 20; }

header .flex { position: relative; top: 0; left: 0; display: -webkit-flex; display: -ms-flex; display: flex; justify-content: space-between; align-items: center; background: #FFFFFF; max-width: 1280px; width: 100%; height: 90px; box-sizing: border-box; padding: 0 50px 0 40px; margin: 0 auto; z-index: 10; }

header .flex .logo .log { width: 326px; }

header .flex ul { display: -webkit-flex; display: -ms-flex; display: flex; align-items: center; padding: 3px 0 0 0; }

header .flex ul li { margin: 0 52px 0 0; }

header .flex ul li:last-child { margin: 0; }

header .flex ul li a { display: block; text-decoration: none; font-size: 14px; color: #000000; font-weight: bold; }

@media screen and (max-width: 1100px) { header .flex { width: 100%; height: 13.33333vw; padding: 0 0 0 4.8vw; }
  header .flex .logo .log { width: 55.73333vw; }
  header .flex ul { display: none; }
  header .flex .icon_box { position: absolute; top: 4.93333vw; right: 6.26667vw; width: 6.13333vw; }
  header .flex .icon_box .icon a { display: -webkit-flex; display: -ms-flex; display: flex; justify-content: center; align-items: center; width: 6.13333vw; height: 4.13333vw; }
  header .flex .icon_box .icon a span { position: relative; top: 0; left: 0; display: -webkit-flex; display: -ms-flex; display: flex; justify-content: center; flex-direction: column; width: 6.13333vw; height: 4.13333vw; }
  header .flex .icon_box .icon a span::before, header .flex .icon_box .icon a span::after { position: absolute; left: 0; display: block; content: ""; width: 6.13333vw; height: 0.4vw; background: #1a1a1a; -webkit-transition: 0.3s; transition: 0.3s; }
  header .flex .icon_box .icon a span::before { top: 0; }
  header .flex .icon_box .icon a span::after { bottom: 0; }
  header .flex .icon_box .icon a span em { display: block; width: 6.13333vw; height: 0.4vw; background: #1a1a1a; }
  header .flex .icon_box .icon a span.on:before { margin-top: -1px; top: 48%; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }
  header .flex .icon_box .icon a span.on:after { bottom: 48%; -webkit-transform: rotate(-135deg); transform: rotate(-135deg); }
  header .flex .icon_box .icon a span.on em { display: none; } }

header #menu { position: absolute; top: 0; left: 0; background: #004ea0; width: 100%; height: 0; overflow: hidden; padding: 0; box-sizing: border-box; -webkit-transition: height 0.30s; -moz-transition: height 0.30s; -ms-transition: height 0.30s; -o-transition: height 0.30s; transition: height 0.30s; z-index: 10; }

@media screen and (max-width: 1100px) { header #menu.on { height: 100vh; overflow-y: scroll; }
  header #menu .icon_box { position: absolute; top: 4.53333vw; right: 6.26667vw; width: 6.13333vw; padding: 0; }
  header #menu .icon_box .icon a { display: -webkit-flex; display: -ms-flex; display: flex; justify-content: center; align-items: center; width: 6.13333vw; height: 4.13333vw; }
  header #menu .icon_box .icon a span { position: relative; top: 0; left: 0; display: -webkit-flex; display: -ms-flex; display: flex; justify-content: center; flex-direction: column; width: 6.13333vw; height: 4.13333vw; }
  header #menu .icon_box .icon a span::before, header #menu .icon_box .icon a span::after { position: absolute; left: 0; display: block; content: ""; width: 6.13333vw; height: 0.4vw; background: #FFFFFF; -webkit-transition: 0.3s; transition: 0.3s; }
  header #menu .icon_box .icon a span::before { top: 0; }
  header #menu .icon_box .icon a span::after { bottom: 0; }
  header #menu .icon_box .icon a span em { display: block; width: 6.13333vw; height: 0.4vw; background: #FFFFFF; }
  header #menu .icon_box .icon a span.on:before { margin-top: -1px; top: 48%; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }
  header #menu .icon_box .icon a span.on:after { bottom: 48%; -webkit-transform: rotate(-135deg); transform: rotate(-135deg); }
  header #menu .icon_box .icon a span.on em { display: none; }
  header #menu div#menu_list { padding: 0; }
  header #menu div#menu_list .inner h2 { color: #FFFFFF; text-align: center; font-size: 8vw; padding: 15.86667vw 0 7.2vw 0; }
  header #menu div#menu_list .inner h2:after { content: ''; display: block; background: #FFFFFF; width: 1px; height: 20vw; margin: 5.33333vw auto 0 auto; }
  header #menu div#menu_list .inner ul li { text-align: center; margin: 0 0 5.6vw 0; }
  header #menu div#menu_list .inner ul li:last-child { margin: 0 0 6.66667vw 0; }
  header #menu div#menu_list .inner ul li a { color: #FFFFFF; font-size: 4vw; }
  header #menu div#menu_list .inner .link { width: 59.46667vw; margin: 0 auto 16.26667vw auto; }
  header #menu div#menu_list .inner div { text-align: center; padding: 0 0 10.66667vw 0; }
  header #menu div#menu_list .inner div a { display: inline-block; color: #FFFFFF; font-size: 3.2vw; }
  header #menu div#menu_list .inner div a img { display: inline-block; vertical-align: middle; width: 2.53333vw; margin: 0 0 0 1.86667vw; } }

main { position: relative; top: 0; left: 0; }

main div.inner { max-width: 1280px; margin-right: auto; margin-left: auto; }

@media screen and (min-width: 1100px) { main div.inner { width: 100%; } }

footer { position: relative; top: 0; left: 0; background: #14a6ec; padding: 0 0 90px 0; }

footer .inner { display: -webkit-flex; display: -ms-flex; display: flex; justify-content: space-between; width: 100%; max-width: 1280px; padding: 37px 32px 37px 49px; box-sizing: border-box; margin: 0 auto; }

footer .inner .left h3 { width: 326px; margin: 0 0 16px 0; }

footer .inner .left p a { border-bottom: 1px solid #1a1a1a; font-size: 14px; color: #1a1a1a; text-decoration: none; padding: 0 0 4px 0; }

footer .inner .left p a img { display: inline-block; vertical-align: baseline; width: 11px; margin: 0 0 0 2px; }

footer .inner .right { padding: 7px 0 0 0; }

footer .inner .right p { font-size: 12px; text-align: right; }

@media screen and (max-width: 1100px) { footer { padding: 0 0 14.66667vw 0; }
  footer .inner { display: block; padding: 8.53333vw 0 7.73333vw 0; }
  footer .inner .left { margin: 0 0 5.73333vw 0; }
  footer .inner .left h3 { width: 66.13333vw; margin: 0 auto 3.73333vw auto; }
  footer .inner .left p { text-align: center; }
  footer .inner .left p a { display: inline-block; border-bottom: 2px solid #1a1a1a; font-size: 3.2vw; padding: 0; }
  footer .inner .left p a img { width: 2.53333vw; margin: 0 0 0 0.53333vw; }
  footer .inner .right { padding: 0; }
  footer .inner .right p { text-align: center; font-size: 2.53333vw; } }

/* -----------------------------------------------------------------
640px以下
------------------------------------------------------------------ */
/* -----------------------------------------------------------------
944px以下かつ641px以上
------------------------------------------------------------------ */
/* -----------------------------------------------------------------
944px以下
------------------------------------------------------------------ */
@media screen and (max-width: 999px) { header .pc { display: none; }
  #wrapper { font-size: 2.667vw; } }

/* -----------------------------------------------------------------
960px以上
------------------------------------------------------------------ */
@media screen and (min-width: 1000px) { /* ----------------------------------------------------------------- ヘッダー ------------------------------------------------------------------ */ }

.nolink { pointer-events: none; }

@media screen and (min-width: 1000px) { /* ----------------------------------------------------------------- float ------------------------------------------------------------------ */
  .float_l { float: left; }
  .float_r { float: right; } }

/* -----------------------------------------------------------------
ClearFix
------------------------------------------------------------------ */
.clear:after { content: " "; height: 0px; clear: both; visibility: hidden; display: block; }

.clear { display: inline-block; }

* html .clear { height: 1%; }

.clear { display: block; }

/* -----------------------------------------------------------------
margin
------------------------------------------------------------------ */
.ma { margin: 0 auto; }

.mt5 { margin-top: 0.66667vw; }

@media screen and (min-width: 1100px) { .mt5 { margin-top: 5px; } }

.mr5 { margin-right: 0.66667vw; }

@media screen and (min-width: 1100px) { .mr5 { margin-right: 5px; } }

.mb5 { margin-bottom: 0.66667vw; }

@media screen and (min-width: 1100px) { .mb5 { margin-bottom: 5px; } }

.ml5 { margin-left: 0.66667vw; }

@media screen and (min-width: 1100px) { .ml5 { margin-left: 5px; } }

.pt5 { padding-top: 0.66667vw; }

@media screen and (min-width: 1100px) { .pt5 { padding-top: 5px; } }

.pr5 { padding-right: 0.66667vw; }

@media screen and (min-width: 1100px) { .pr5 { padding-right: 5px; } }

.pb5 { padding-bottom: 0.66667vw; }

@media screen and (min-width: 1100px) { .pb5 { padding-bottom: 5px; } }

.pl5 { padding-left: 0.66667vw; }

@media screen and (min-width: 1100px) { .pl5 { padding-left: 5px; } }

.mt10 { margin-top: 1.33333vw; }

@media screen and (min-width: 1100px) { .mt10 { margin-top: 10px; } }

.mr10 { margin-right: 1.33333vw; }

@media screen and (min-width: 1100px) { .mr10 { margin-right: 10px; } }

.mb10 { margin-bottom: 1.33333vw; }

@media screen and (min-width: 1100px) { .mb10 { margin-bottom: 10px; } }

.ml10 { margin-left: 1.33333vw; }

@media screen and (min-width: 1100px) { .ml10 { margin-left: 10px; } }

.pt10 { padding-top: 1.33333vw; }

@media screen and (min-width: 1100px) { .pt10 { padding-top: 10px; } }

.pr10 { padding-right: 1.33333vw; }

@media screen and (min-width: 1100px) { .pr10 { padding-right: 10px; } }

.pb10 { padding-bottom: 1.33333vw; }

@media screen and (min-width: 1100px) { .pb10 { padding-bottom: 10px; } }

.pl10 { padding-left: 1.33333vw; }

@media screen and (min-width: 1100px) { .pl10 { padding-left: 10px; } }

.mt15 { margin-top: 2vw; }

@media screen and (min-width: 1100px) { .mt15 { margin-top: 15px; } }

.mr15 { margin-right: 2vw; }

@media screen and (min-width: 1100px) { .mr15 { margin-right: 15px; } }

.mb15 { margin-bottom: 2vw; }

@media screen and (min-width: 1100px) { .mb15 { margin-bottom: 15px; } }

.ml15 { margin-left: 2vw; }

@media screen and (min-width: 1100px) { .ml15 { margin-left: 15px; } }

.pt15 { padding-top: 2vw; }

@media screen and (min-width: 1100px) { .pt15 { padding-top: 15px; } }

.pr15 { padding-right: 2vw; }

@media screen and (min-width: 1100px) { .pr15 { padding-right: 15px; } }

.pb15 { padding-bottom: 2vw; }

@media screen and (min-width: 1100px) { .pb15 { padding-bottom: 15px; } }

.pl15 { padding-left: 2vw; }

@media screen and (min-width: 1100px) { .pl15 { padding-left: 15px; } }

.mt20 { margin-top: 2.66667vw; }

@media screen and (min-width: 1100px) { .mt20 { margin-top: 20px; } }

.mr20 { margin-right: 2.66667vw; }

@media screen and (min-width: 1100px) { .mr20 { margin-right: 20px; } }

.mb20 { margin-bottom: 2.66667vw; }

@media screen and (min-width: 1100px) { .mb20 { margin-bottom: 20px; } }

.ml20 { margin-left: 2.66667vw; }

@media screen and (min-width: 1100px) { .ml20 { margin-left: 20px; } }

.pt20 { padding-top: 2.66667vw; }

@media screen and (min-width: 1100px) { .pt20 { padding-top: 20px; } }

.pr20 { padding-right: 2.66667vw; }

@media screen and (min-width: 1100px) { .pr20 { padding-right: 20px; } }

.pb20 { padding-bottom: 2.66667vw; }

@media screen and (min-width: 1100px) { .pb20 { padding-bottom: 20px; } }

.pl20 { padding-left: 2.66667vw; }

@media screen and (min-width: 1100px) { .pl20 { padding-left: 20px; } }

.mt25 { margin-top: 3.33333vw; }

@media screen and (min-width: 1100px) { .mt25 { margin-top: 25px; } }

.mr25 { margin-right: 3.33333vw; }

@media screen and (min-width: 1100px) { .mr25 { margin-right: 25px; } }

.mb25 { margin-bottom: 3.33333vw; }

@media screen and (min-width: 1100px) { .mb25 { margin-bottom: 25px; } }

.ml25 { margin-left: 3.33333vw; }

@media screen and (min-width: 1100px) { .ml25 { margin-left: 25px; } }

.pt25 { padding-top: 3.33333vw; }

@media screen and (min-width: 1100px) { .pt25 { padding-top: 25px; } }

.pr25 { padding-right: 3.33333vw; }

@media screen and (min-width: 1100px) { .pr25 { padding-right: 25px; } }

.pb25 { padding-bottom: 3.33333vw; }

@media screen and (min-width: 1100px) { .pb25 { padding-bottom: 25px; } }

.pl25 { padding-left: 3.33333vw; }

@media screen and (min-width: 1100px) { .pl25 { padding-left: 25px; } }

.mt30 { margin-top: 4vw; }

@media screen and (min-width: 1100px) { .mt30 { margin-top: 30px; } }

.mr30 { margin-right: 4vw; }

@media screen and (min-width: 1100px) { .mr30 { margin-right: 30px; } }

.mb30 { margin-bottom: 4vw; }

@media screen and (min-width: 1100px) { .mb30 { margin-bottom: 30px; } }

.ml30 { margin-left: 4vw; }

@media screen and (min-width: 1100px) { .ml30 { margin-left: 30px; } }

.pt30 { padding-top: 4vw; }

@media screen and (min-width: 1100px) { .pt30 { padding-top: 30px; } }

.pr30 { padding-right: 4vw; }

@media screen and (min-width: 1100px) { .pr30 { padding-right: 30px; } }

.pb30 { padding-bottom: 4vw; }

@media screen and (min-width: 1100px) { .pb30 { padding-bottom: 30px; } }

.pl30 { padding-left: 4vw; }

@media screen and (min-width: 1100px) { .pl30 { padding-left: 30px; } }

.mt35 { margin-top: 4.66667vw; }

@media screen and (min-width: 1100px) { .mt35 { margin-top: 35px; } }

.mr35 { margin-right: 4.66667vw; }

@media screen and (min-width: 1100px) { .mr35 { margin-right: 35px; } }

.mb35 { margin-bottom: 4.66667vw; }

@media screen and (min-width: 1100px) { .mb35 { margin-bottom: 35px; } }

.ml35 { margin-left: 4.66667vw; }

@media screen and (min-width: 1100px) { .ml35 { margin-left: 35px; } }

.pt35 { padding-top: 4.66667vw; }

@media screen and (min-width: 1100px) { .pt35 { padding-top: 35px; } }

.pr35 { padding-right: 4.66667vw; }

@media screen and (min-width: 1100px) { .pr35 { padding-right: 35px; } }

.pb35 { padding-bottom: 4.66667vw; }

@media screen and (min-width: 1100px) { .pb35 { padding-bottom: 35px; } }

.pl35 { padding-left: 4.66667vw; }

@media screen and (min-width: 1100px) { .pl35 { padding-left: 35px; } }

.mt40 { margin-top: 5.33333vw; }

@media screen and (min-width: 1100px) { .mt40 { margin-top: 40px; } }

.mr40 { margin-right: 5.33333vw; }

@media screen and (min-width: 1100px) { .mr40 { margin-right: 40px; } }

.mb40 { margin-bottom: 5.33333vw; }

@media screen and (min-width: 1100px) { .mb40 { margin-bottom: 40px; } }

.ml40 { margin-left: 5.33333vw; }

@media screen and (min-width: 1100px) { .ml40 { margin-left: 40px; } }

.pt40 { padding-top: 5.33333vw; }

@media screen and (min-width: 1100px) { .pt40 { padding-top: 40px; } }

.pr40 { padding-right: 5.33333vw; }

@media screen and (min-width: 1100px) { .pr40 { padding-right: 40px; } }

.pb40 { padding-bottom: 5.33333vw; }

@media screen and (min-width: 1100px) { .pb40 { padding-bottom: 40px; } }

.pl40 { padding-left: 5.33333vw; }

@media screen and (min-width: 1100px) { .pl40 { padding-left: 40px; } }

.mt45 { margin-top: 6vw; }

@media screen and (min-width: 1100px) { .mt45 { margin-top: 45px; } }

.mr45 { margin-right: 6vw; }

@media screen and (min-width: 1100px) { .mr45 { margin-right: 45px; } }

.mb45 { margin-bottom: 6vw; }

@media screen and (min-width: 1100px) { .mb45 { margin-bottom: 45px; } }

.ml45 { margin-left: 6vw; }

@media screen and (min-width: 1100px) { .ml45 { margin-left: 45px; } }

.pt45 { padding-top: 6vw; }

@media screen and (min-width: 1100px) { .pt45 { padding-top: 45px; } }

.pr45 { padding-right: 6vw; }

@media screen and (min-width: 1100px) { .pr45 { padding-right: 45px; } }

.pb45 { padding-bottom: 6vw; }

@media screen and (min-width: 1100px) { .pb45 { padding-bottom: 45px; } }

.pl45 { padding-left: 6vw; }

@media screen and (min-width: 1100px) { .pl45 { padding-left: 45px; } }

.mt50 { margin-top: 6.66667vw; }

@media screen and (min-width: 1100px) { .mt50 { margin-top: 50px; } }

.mr50 { margin-right: 6.66667vw; }

@media screen and (min-width: 1100px) { .mr50 { margin-right: 50px; } }

.mb50 { margin-bottom: 6.66667vw; }

@media screen and (min-width: 1100px) { .mb50 { margin-bottom: 50px; } }

.ml50 { margin-left: 6.66667vw; }

@media screen and (min-width: 1100px) { .ml50 { margin-left: 50px; } }

.pt50 { padding-top: 6.66667vw; }

@media screen and (min-width: 1100px) { .pt50 { padding-top: 50px; } }

.pr50 { padding-right: 6.66667vw; }

@media screen and (min-width: 1100px) { .pr50 { padding-right: 50px; } }

.pb50 { padding-bottom: 6.66667vw; }

@media screen and (min-width: 1100px) { .pb50 { padding-bottom: 50px; } }

.pl50 { padding-left: 6.66667vw; }

@media screen and (min-width: 1100px) { .pl50 { padding-left: 50px; } }

.mt55 { margin-top: 7.33333vw; }

@media screen and (min-width: 1100px) { .mt55 { margin-top: 55px; } }

.mr55 { margin-right: 7.33333vw; }

@media screen and (min-width: 1100px) { .mr55 { margin-right: 55px; } }

.mb55 { margin-bottom: 7.33333vw; }

@media screen and (min-width: 1100px) { .mb55 { margin-bottom: 55px; } }

.ml55 { margin-left: 7.33333vw; }

@media screen and (min-width: 1100px) { .ml55 { margin-left: 55px; } }

.pt55 { padding-top: 7.33333vw; }

@media screen and (min-width: 1100px) { .pt55 { padding-top: 55px; } }

.pr55 { padding-right: 7.33333vw; }

@media screen and (min-width: 1100px) { .pr55 { padding-right: 55px; } }

.pb55 { padding-bottom: 7.33333vw; }

@media screen and (min-width: 1100px) { .pb55 { padding-bottom: 55px; } }

.pl55 { padding-left: 7.33333vw; }

@media screen and (min-width: 1100px) { .pl55 { padding-left: 55px; } }

.mt60 { margin-top: 8vw; }

@media screen and (min-width: 1100px) { .mt60 { margin-top: 60px; } }

.mr60 { margin-right: 8vw; }

@media screen and (min-width: 1100px) { .mr60 { margin-right: 60px; } }

.mb60 { margin-bottom: 8vw; }

@media screen and (min-width: 1100px) { .mb60 { margin-bottom: 60px; } }

.ml60 { margin-left: 8vw; }

@media screen and (min-width: 1100px) { .ml60 { margin-left: 60px; } }

.pt60 { padding-top: 8vw; }

@media screen and (min-width: 1100px) { .pt60 { padding-top: 60px; } }

.pr60 { padding-right: 8vw; }

@media screen and (min-width: 1100px) { .pr60 { padding-right: 60px; } }

.pb60 { padding-bottom: 8vw; }

@media screen and (min-width: 1100px) { .pb60 { padding-bottom: 60px; } }

.pl60 { padding-left: 8vw; }

@media screen and (min-width: 1100px) { .pl60 { padding-left: 60px; } }

.mt65 { margin-top: 8.66667vw; }

@media screen and (min-width: 1100px) { .mt65 { margin-top: 65px; } }

.mr65 { margin-right: 8.66667vw; }

@media screen and (min-width: 1100px) { .mr65 { margin-right: 65px; } }

.mb65 { margin-bottom: 8.66667vw; }

@media screen and (min-width: 1100px) { .mb65 { margin-bottom: 65px; } }

.ml65 { margin-left: 8.66667vw; }

@media screen and (min-width: 1100px) { .ml65 { margin-left: 65px; } }

.pt65 { padding-top: 8.66667vw; }

@media screen and (min-width: 1100px) { .pt65 { padding-top: 65px; } }

.pr65 { padding-right: 8.66667vw; }

@media screen and (min-width: 1100px) { .pr65 { padding-right: 65px; } }

.pb65 { padding-bottom: 8.66667vw; }

@media screen and (min-width: 1100px) { .pb65 { padding-bottom: 65px; } }

.pl65 { padding-left: 8.66667vw; }

@media screen and (min-width: 1100px) { .pl65 { padding-left: 65px; } }

.mt70 { margin-top: 9.33333vw; }

@media screen and (min-width: 1100px) { .mt70 { margin-top: 70px; } }

.mr70 { margin-right: 9.33333vw; }

@media screen and (min-width: 1100px) { .mr70 { margin-right: 70px; } }

.mb70 { margin-bottom: 9.33333vw; }

@media screen and (min-width: 1100px) { .mb70 { margin-bottom: 70px; } }

.ml70 { margin-left: 9.33333vw; }

@media screen and (min-width: 1100px) { .ml70 { margin-left: 70px; } }

.pt70 { padding-top: 9.33333vw; }

@media screen and (min-width: 1100px) { .pt70 { padding-top: 70px; } }

.pr70 { padding-right: 9.33333vw; }

@media screen and (min-width: 1100px) { .pr70 { padding-right: 70px; } }

.pb70 { padding-bottom: 9.33333vw; }

@media screen and (min-width: 1100px) { .pb70 { padding-bottom: 70px; } }

.pl70 { padding-left: 9.33333vw; }

@media screen and (min-width: 1100px) { .pl70 { padding-left: 70px; } }

.mt75 { margin-top: 10vw; }

@media screen and (min-width: 1100px) { .mt75 { margin-top: 75px; } }

.mr75 { margin-right: 10vw; }

@media screen and (min-width: 1100px) { .mr75 { margin-right: 75px; } }

.mb75 { margin-bottom: 10vw; }

@media screen and (min-width: 1100px) { .mb75 { margin-bottom: 75px; } }

.ml75 { margin-left: 10vw; }

@media screen and (min-width: 1100px) { .ml75 { margin-left: 75px; } }

.pt75 { padding-top: 10vw; }

@media screen and (min-width: 1100px) { .pt75 { padding-top: 75px; } }

.pr75 { padding-right: 10vw; }

@media screen and (min-width: 1100px) { .pr75 { padding-right: 75px; } }

.pb75 { padding-bottom: 10vw; }

@media screen and (min-width: 1100px) { .pb75 { padding-bottom: 75px; } }

.pl75 { padding-left: 10vw; }

@media screen and (min-width: 1100px) { .pl75 { padding-left: 75px; } }

.mt80 { margin-top: 10.66667vw; }

@media screen and (min-width: 1100px) { .mt80 { margin-top: 80px; } }

.mr80 { margin-right: 10.66667vw; }

@media screen and (min-width: 1100px) { .mr80 { margin-right: 80px; } }

.mb80 { margin-bottom: 10.66667vw; }

@media screen and (min-width: 1100px) { .mb80 { margin-bottom: 80px; } }

.ml80 { margin-left: 10.66667vw; }

@media screen and (min-width: 1100px) { .ml80 { margin-left: 80px; } }

.pt80 { padding-top: 10.66667vw; }

@media screen and (min-width: 1100px) { .pt80 { padding-top: 80px; } }

.pr80 { padding-right: 10.66667vw; }

@media screen and (min-width: 1100px) { .pr80 { padding-right: 80px; } }

.pb80 { padding-bottom: 10.66667vw; }

@media screen and (min-width: 1100px) { .pb80 { padding-bottom: 80px; } }

.pl80 { padding-left: 10.66667vw; }

@media screen and (min-width: 1100px) { .pl80 { padding-left: 80px; } }

.mt85 { margin-top: 11.33333vw; }

@media screen and (min-width: 1100px) { .mt85 { margin-top: 85px; } }

.mr85 { margin-right: 11.33333vw; }

@media screen and (min-width: 1100px) { .mr85 { margin-right: 85px; } }

.mb85 { margin-bottom: 11.33333vw; }

@media screen and (min-width: 1100px) { .mb85 { margin-bottom: 85px; } }

.ml85 { margin-left: 11.33333vw; }

@media screen and (min-width: 1100px) { .ml85 { margin-left: 85px; } }

.pt85 { padding-top: 11.33333vw; }

@media screen and (min-width: 1100px) { .pt85 { padding-top: 85px; } }

.pr85 { padding-right: 11.33333vw; }

@media screen and (min-width: 1100px) { .pr85 { padding-right: 85px; } }

.pb85 { padding-bottom: 11.33333vw; }

@media screen and (min-width: 1100px) { .pb85 { padding-bottom: 85px; } }

.pl85 { padding-left: 11.33333vw; }

@media screen and (min-width: 1100px) { .pl85 { padding-left: 85px; } }

.mt90 { margin-top: 12vw; }

@media screen and (min-width: 1100px) { .mt90 { margin-top: 90px; } }

.mr90 { margin-right: 12vw; }

@media screen and (min-width: 1100px) { .mr90 { margin-right: 90px; } }

.mb90 { margin-bottom: 12vw; }

@media screen and (min-width: 1100px) { .mb90 { margin-bottom: 90px; } }

.ml90 { margin-left: 12vw; }

@media screen and (min-width: 1100px) { .ml90 { margin-left: 90px; } }

.pt90 { padding-top: 12vw; }

@media screen and (min-width: 1100px) { .pt90 { padding-top: 90px; } }

.pr90 { padding-right: 12vw; }

@media screen and (min-width: 1100px) { .pr90 { padding-right: 90px; } }

.pb90 { padding-bottom: 12vw; }

@media screen and (min-width: 1100px) { .pb90 { padding-bottom: 90px; } }

.pl90 { padding-left: 12vw; }

@media screen and (min-width: 1100px) { .pl90 { padding-left: 90px; } }

.mt95 { margin-top: 12.66667vw; }

@media screen and (min-width: 1100px) { .mt95 { margin-top: 95px; } }

.mr95 { margin-right: 12.66667vw; }

@media screen and (min-width: 1100px) { .mr95 { margin-right: 95px; } }

.mb95 { margin-bottom: 12.66667vw; }

@media screen and (min-width: 1100px) { .mb95 { margin-bottom: 95px; } }

.ml95 { margin-left: 12.66667vw; }

@media screen and (min-width: 1100px) { .ml95 { margin-left: 95px; } }

.pt95 { padding-top: 12.66667vw; }

@media screen and (min-width: 1100px) { .pt95 { padding-top: 95px; } }

.pr95 { padding-right: 12.66667vw; }

@media screen and (min-width: 1100px) { .pr95 { padding-right: 95px; } }

.pb95 { padding-bottom: 12.66667vw; }

@media screen and (min-width: 1100px) { .pb95 { padding-bottom: 95px; } }

.pl95 { padding-left: 12.66667vw; }

@media screen and (min-width: 1100px) { .pl95 { padding-left: 95px; } }

.mt100 { margin-top: 13.33333vw; }

@media screen and (min-width: 1100px) { .mt100 { margin-top: 100px; } }

.mr100 { margin-right: 13.33333vw; }

@media screen and (min-width: 1100px) { .mr100 { margin-right: 100px; } }

.mb100 { margin-bottom: 13.33333vw; }

@media screen and (min-width: 1100px) { .mb100 { margin-bottom: 100px; } }

.ml100 { margin-left: 13.33333vw; }

@media screen and (min-width: 1100px) { .ml100 { margin-left: 100px; } }

.pt100 { padding-top: 13.33333vw; }

@media screen and (min-width: 1100px) { .pt100 { padding-top: 100px; } }

.pr100 { padding-right: 13.33333vw; }

@media screen and (min-width: 1100px) { .pr100 { padding-right: 100px; } }

.pb100 { padding-bottom: 13.33333vw; }

@media screen and (min-width: 1100px) { .pb100 { padding-bottom: 100px; } }

.pl100 { padding-left: 13.33333vw; }

@media screen and (min-width: 1100px) { .pl100 { padding-left: 100px; } }

.fs10 { font-size: 1em; }

.fs11 { font-size: 1.1em; }

.fs12 { font-size: 1.2em; }

.fs13 { font-size: 1.3em; }

.fs14 { font-size: 1.4em; }

.fs15 { font-size: 1.5em; }

/* -----------------------------------------------------------------
@mixin
------------------------------------------------------------------ */
.ad { position: absolute; top: 0; left: 0; width: 100%; z-index: 40; opacity: 0.5; }

.ad img { display: block; width: 100%; max-width: 1280px; margin: 0 auto; }

/*** 基本設定 ***/
.field { position: absolute; top: 0; left: 0; overflow: hidden; width: 100%; z-index: 1; }

.bubble { position: absolute; bottom: 0; left: 50%; opacity: 0; }

.bubble .item { display: block; border-radius: 100%; position: relative; }

.bubble .item:after { display: block; width: 20%; height: 20%; border-radius: 100%; background: rgba(255, 255, 255, 0.6); position: absolute; right: 15%; top: 15%; transform: rotateZ(45deg) scaleY(0.8); -webkit-transform: rotateZ(45deg) scaleY(0.8); }

.size1 { width: 97px; height: 97px; }

.size2 { width: 64px; height: 64px; }

.size3 { width: 36px; height: 36px; }

.size4 { width: 76px; height: 76px; }

.size5 { width: 58px; height: 58px; }

@media screen and (max-width: 1100px) { .size1 { width: 12.93333vw; height: 12.93333vw; }
  .size2 { width: 8.53333vw; height: 8.53333vw; }
  .size3 { width: 4.8vw; height: 4.8vw; }
  .size4 { width: 10.13333vw; height: 10.13333vw; }
  .size5 { width: 7.73333vw; height: 7.73333vw; } }

.color1 { background: #71c5d3; }

.color2 { background: #0088b2; }

.color3 { background: #00a4e5; }

.color4 { background: #007abf; }

.color5 { background: #7cb2dc; }

/** アニメーション **/
/* 伸縮 */
@keyframes stretch { 0% { transform: scaleX(1) scaleY(1); }
  33% { transform: scaleX(0.9) scaleY(1); }
  66% { transform: scaleX(1) scaleY(0.9); }
  100% { transform: scaleX(1) scaleY(1); } }

@-webkit-keyframes stretch { 0% { -webkit-transform: scaleX(1) scaleY(1); }
  33% { -webkit-transform: scaleX(0.9) scaleY(1); }
  66% { -webkit-transform: scaleX(1) scaleY(0.9); }
  100% { -webkit-transform: scaleX(1) scaleY(1); } }

/* 横揺れ */
@keyframes shake { 0% { transform: translateX(10px); }
  50% { transform: translateX(-10px); }
  100% { transform: translateX(10px); } }

@-webkit-keyframes shake { 0% { -webkit-transform: translateX(10px); }
  50% { -webkit-transform: translateX(-10px); }
  100% { -webkit-transform: translateX(10px); } }

/* 移動 */
@keyframes move { 0% { opacity: 0; }
  5% { opacity: 1; }
  95% { bottom: 95%; }
  100% { opacity: 0;
    left: 50%; } }

@-webkit-keyframes move { 0% { opacity: 0; }
  5% { opacity: 1; }
  95% { bottom: 95%; }
  100% { opacity: 0;
    left: 50%; } }

/*** 泡のアニメーションパターン量産(SCSS) ***/
/* 横揺れスピード */
.shake0 { animation: shake 2s ease 0s infinite normal; -webkit-animation: shake 2s ease 0s infinite normal; }

/* 移動スピード */
.move0 { animation: move 5s ease 0s infinite normal; -webkit-animation: move 5s ease 0s infinite normal; position: absolute; bottom: 90%; }

/* 配置 */
.pos0 { left: 0%; }

/* 大きさ */
/* 横揺れスピード */
.shake1 { animation: shake 5s ease 0s infinite normal; -webkit-animation: shake 5s ease 0s infinite normal; }

/* 移動スピード */
.move1 { animation: move 8s ease 3s infinite normal; -webkit-animation: move 8s ease 0.1s infinite normal; position: absolute; bottom: 89%; }

/* 配置 */
.pos1 { left: 2%; }

/* 大きさ */
/* 横揺れスピード */
.shake2 { animation: shake 8s ease 0s infinite normal; -webkit-animation: shake 8s ease 0s infinite normal; }

/* 移動スピード */
.move2 { animation: move 11s ease 6s infinite normal; -webkit-animation: move 11s ease 0.2s infinite normal; position: absolute; bottom: 88%; }

/* 配置 */
.pos2 { left: 4%; }

/* 大きさ */
/* 横揺れスピード */
.shake3 { animation: shake 11s ease 0s infinite normal; -webkit-animation: shake 11s ease 0s infinite normal; }

/* 移動スピード */
.move3 { animation: move 14s ease 9s infinite normal; -webkit-animation: move 14s ease 0.3s infinite normal; position: absolute; bottom: 87%; }

/* 配置 */
.pos3 { left: 6%; }

/* 大きさ */
/* 横揺れスピード */
.shake4 { animation: shake 14s ease 0s infinite normal; -webkit-animation: shake 14s ease 0s infinite normal; }

/* 移動スピード */
.move4 { animation: move 17s ease 12s infinite normal; -webkit-animation: move 17s ease 0.4s infinite normal; position: absolute; bottom: 86%; }

/* 配置 */
.pos4 { left: 8%; }

/* 大きさ */
/* 横揺れスピード */
.shake5 { animation: shake 17s ease 0s infinite normal; -webkit-animation: shake 17s ease 0s infinite normal; }

/* 移動スピード */
.move5 { animation: move 20s ease 15s infinite normal; -webkit-animation: move 20s ease 0.5s infinite normal; position: absolute; bottom: 85%; }

/* 配置 */
.pos5 { left: 10%; }

/* 大きさ */
/* 横揺れスピード */
.shake6 { animation: shake 20s ease 0s infinite normal; -webkit-animation: shake 20s ease 0s infinite normal; }

/* 移動スピード */
.move6 { animation: move 23s ease 18s infinite normal; -webkit-animation: move 23s ease 0.6s infinite normal; position: absolute; bottom: 84%; }

/* 配置 */
.pos6 { left: 12%; }

/* 大きさ */
/* 横揺れスピード */
.shake7 { animation: shake 23s ease 0s infinite normal; -webkit-animation: shake 23s ease 0s infinite normal; }

/* 移動スピード */
.move7 { animation: move 26s ease 21s infinite normal; -webkit-animation: move 26s ease 0.7s infinite normal; position: absolute; bottom: 83%; }

/* 配置 */
.pos7 { left: 14%; }

/* 大きさ */
/* 横揺れスピード */
.shake8 { animation: shake 26s ease 0s infinite normal; -webkit-animation: shake 26s ease 0s infinite normal; }

/* 移動スピード */
.move8 { animation: move 29s ease 24s infinite normal; -webkit-animation: move 29s ease 0.8s infinite normal; position: absolute; bottom: 82%; }

/* 配置 */
.pos8 { left: 16%; }

/* 大きさ */
/* 横揺れスピード */
.shake9 { animation: shake 29s ease 0s infinite normal; -webkit-animation: shake 29s ease 0s infinite normal; }

/* 移動スピード */
.move9 { animation: move 32s ease 27s infinite normal; -webkit-animation: move 32s ease 0.9s infinite normal; position: absolute; bottom: 81%; }

/* 配置 */
.pos9 { left: 18%; }

/* 大きさ */
/* 横揺れスピード */
.shake10 { animation: shake 32s ease 0s infinite normal; -webkit-animation: shake 32s ease 0s infinite normal; }

/* 移動スピード */
.move10 { animation: move 35s ease 30s infinite normal; -webkit-animation: move 35s ease 1s infinite normal; position: absolute; bottom: 80%; }

/* 配置 */
.pos10 { left: 20%; }

/* 大きさ */
/* 横揺れスピード */
.shake11 { animation: shake 35s ease 0s infinite normal; -webkit-animation: shake 35s ease 0s infinite normal; }

/* 移動スピード */
.move11 { animation: move 38s ease 33s infinite normal; -webkit-animation: move 38s ease 1.1s infinite normal; position: absolute; bottom: 79%; }

/* 配置 */
.pos11 { left: 22%; }

/* 大きさ */
/* 横揺れスピード */
.shake12 { animation: shake 38s ease 0s infinite normal; -webkit-animation: shake 38s ease 0s infinite normal; }

/* 移動スピード */
.move12 { animation: move 41s ease 36s infinite normal; -webkit-animation: move 41s ease 1.2s infinite normal; position: absolute; bottom: 78%; }

/* 配置 */
.pos12 { left: 24%; }

/* 大きさ */
/* 横揺れスピード */
.shake13 { animation: shake 41s ease 0s infinite normal; -webkit-animation: shake 41s ease 0s infinite normal; }

/* 移動スピード */
.move13 { animation: move 44s ease 39s infinite normal; -webkit-animation: move 44s ease 1.3s infinite normal; position: absolute; bottom: 77%; }

/* 配置 */
.pos13 { left: 26%; }

/* 大きさ */
/* 横揺れスピード */
.shake14 { animation: shake 44s ease 0s infinite normal; -webkit-animation: shake 44s ease 0s infinite normal; }

/* 移動スピード */
.move14 { animation: move 47s ease 42s infinite normal; -webkit-animation: move 47s ease 1.4s infinite normal; position: absolute; bottom: 76%; }

/* 配置 */
.pos14 { left: 28%; }

/* 大きさ */
/* 横揺れスピード */
.shake15 { animation: shake 47s ease 0s infinite normal; -webkit-animation: shake 47s ease 0s infinite normal; }

/* 移動スピード */
.move15 { animation: move 50s ease 45s infinite normal; -webkit-animation: move 50s ease 1.5s infinite normal; position: absolute; bottom: 75%; }

/* 配置 */
.pos15 { left: 30%; }

/* 大きさ */
/* 横揺れスピード */
.shake16 { animation: shake 50s ease 0s infinite normal; -webkit-animation: shake 50s ease 0s infinite normal; }

/* 移動スピード */
.move16 { animation: move 53s ease 48s infinite normal; -webkit-animation: move 53s ease 1.6s infinite normal; position: absolute; bottom: 74%; }

/* 配置 */
.pos16 { left: 32%; }

/* 大きさ */
/* 横揺れスピード */
.shake17 { animation: shake 53s ease 0s infinite normal; -webkit-animation: shake 53s ease 0s infinite normal; }

/* 移動スピード */
.move17 { animation: move 56s ease 51s infinite normal; -webkit-animation: move 56s ease 1.7s infinite normal; position: absolute; bottom: 73%; }

/* 配置 */
.pos17 { left: 34%; }

/* 大きさ */
/* 横揺れスピード */
.shake18 { animation: shake 56s ease 0s infinite normal; -webkit-animation: shake 56s ease 0s infinite normal; }

/* 移動スピード */
.move18 { animation: move 59s ease 54s infinite normal; -webkit-animation: move 59s ease 1.8s infinite normal; position: absolute; bottom: 72%; }

/* 配置 */
.pos18 { left: 36%; }

/* 大きさ */
/* 横揺れスピード */
.shake19 { animation: shake 59s ease 0s infinite normal; -webkit-animation: shake 59s ease 0s infinite normal; }

/* 移動スピード */
.move19 { animation: move 62s ease 57s infinite normal; -webkit-animation: move 62s ease 1.9s infinite normal; position: absolute; bottom: 71%; }

/* 配置 */
.pos19 { left: 38%; }

/* 大きさ */
/* 横揺れスピード */
.shake20 { animation: shake 62s ease 0s infinite normal; -webkit-animation: shake 62s ease 0s infinite normal; }

/* 移動スピード */
.move20 { animation: move 65s ease 60s infinite normal; -webkit-animation: move 65s ease 2s infinite normal; position: absolute; bottom: 70%; }

/* 配置 */
.pos20 { left: 40%; }

/* 大きさ */
/* 横揺れスピード */
.shake21 { animation: shake 65s ease 0s infinite normal; -webkit-animation: shake 65s ease 0s infinite normal; }

/* 移動スピード */
.move21 { animation: move 68s ease 63s infinite normal; -webkit-animation: move 68s ease 2.1s infinite normal; position: absolute; bottom: 69%; }

/* 配置 */
.pos21 { left: 42%; }

/* 大きさ */
/* 横揺れスピード */
.shake22 { animation: shake 68s ease 0s infinite normal; -webkit-animation: shake 68s ease 0s infinite normal; }

/* 移動スピード */
.move22 { animation: move 71s ease 66s infinite normal; -webkit-animation: move 71s ease 2.2s infinite normal; position: absolute; bottom: 68%; }

/* 配置 */
.pos22 { left: 44%; }

/* 大きさ */
/* 横揺れスピード */
.shake23 { animation: shake 71s ease 0s infinite normal; -webkit-animation: shake 71s ease 0s infinite normal; }

/* 移動スピード */
.move23 { animation: move 74s ease 69s infinite normal; -webkit-animation: move 74s ease 2.3s infinite normal; position: absolute; bottom: 67%; }

/* 配置 */
.pos23 { left: 46%; }

/* 大きさ */
/* 横揺れスピード */
.shake24 { animation: shake 74s ease 0s infinite normal; -webkit-animation: shake 74s ease 0s infinite normal; }

/* 移動スピード */
.move24 { animation: move 77s ease 72s infinite normal; -webkit-animation: move 77s ease 2.4s infinite normal; position: absolute; bottom: 66%; }

/* 配置 */
.pos24 { left: 48%; }

/* 大きさ */
/* 横揺れスピード */
.shake25 { animation: shake 77s ease 0s infinite normal; -webkit-animation: shake 77s ease 0s infinite normal; }

/* 移動スピード */
.move25 { animation: move 80s ease 75s infinite normal; -webkit-animation: move 80s ease 2.5s infinite normal; position: absolute; bottom: 65%; }

/* 配置 */
.pos25 { left: 50%; }

/* 大きさ */
/* 横揺れスピード */
.shake26 { animation: shake 80s ease 0s infinite normal; -webkit-animation: shake 80s ease 0s infinite normal; }

/* 移動スピード */
.move26 { animation: move 83s ease 78s infinite normal; -webkit-animation: move 83s ease 2.6s infinite normal; position: absolute; bottom: 64%; }

/* 配置 */
.pos26 { left: 52%; }

/* 大きさ */
/* 横揺れスピード */
.shake27 { animation: shake 83s ease 0s infinite normal; -webkit-animation: shake 83s ease 0s infinite normal; }

/* 移動スピード */
.move27 { animation: move 86s ease 81s infinite normal; -webkit-animation: move 86s ease 2.7s infinite normal; position: absolute; bottom: 63%; }

/* 配置 */
.pos27 { left: 54%; }

/* 大きさ */
/* 横揺れスピード */
.shake28 { animation: shake 86s ease 0s infinite normal; -webkit-animation: shake 86s ease 0s infinite normal; }

/* 移動スピード */
.move28 { animation: move 89s ease 84s infinite normal; -webkit-animation: move 89s ease 2.8s infinite normal; position: absolute; bottom: 62%; }

/* 配置 */
.pos28 { left: 56%; }

/* 大きさ */
/* 横揺れスピード */
.shake29 { animation: shake 89s ease 0s infinite normal; -webkit-animation: shake 89s ease 0s infinite normal; }

/* 移動スピード */
.move29 { animation: move 92s ease 87s infinite normal; -webkit-animation: move 92s ease 2.9s infinite normal; position: absolute; bottom: 61%; }

/* 配置 */
.pos29 { left: 58%; }

/* 大きさ */
/* 横揺れスピード */
.shake30 { animation: shake 92s ease 0s infinite normal; -webkit-animation: shake 92s ease 0s infinite normal; }

/* 移動スピード */
.move30 { animation: move 95s ease 90s infinite normal; -webkit-animation: move 95s ease 3s infinite normal; position: absolute; bottom: 60%; }

/* 配置 */
.pos30 { left: 60%; }

/* 大きさ */
/* 横揺れスピード */
.shake31 { animation: shake 95s ease 0s infinite normal; -webkit-animation: shake 95s ease 0s infinite normal; }

/* 移動スピード */
.move31 { animation: move 98s ease 93s infinite normal; -webkit-animation: move 98s ease 3.1s infinite normal; position: absolute; bottom: 59%; }

/* 配置 */
.pos31 { left: 62%; }

/* 大きさ */
/* 横揺れスピード */
.shake32 { animation: shake 98s ease 0s infinite normal; -webkit-animation: shake 98s ease 0s infinite normal; }

/* 移動スピード */
.move32 { animation: move 101s ease 96s infinite normal; -webkit-animation: move 101s ease 3.2s infinite normal; position: absolute; bottom: 58%; }

/* 配置 */
.pos32 { left: 64%; }

/* 大きさ */
/* 横揺れスピード */
.shake33 { animation: shake 101s ease 0s infinite normal; -webkit-animation: shake 101s ease 0s infinite normal; }

/* 移動スピード */
.move33 { animation: move 104s ease 99s infinite normal; -webkit-animation: move 104s ease 3.3s infinite normal; position: absolute; bottom: 57%; }

/* 配置 */
.pos33 { left: 66%; }

/* 大きさ */
/* 横揺れスピード */
.shake34 { animation: shake 104s ease 0s infinite normal; -webkit-animation: shake 104s ease 0s infinite normal; }

/* 移動スピード */
.move34 { animation: move 107s ease 102s infinite normal; -webkit-animation: move 107s ease 3.4s infinite normal; position: absolute; bottom: 56%; }

/* 配置 */
.pos34 { left: 68%; }

/* 大きさ */
/* 横揺れスピード */
.shake35 { animation: shake 107s ease 0s infinite normal; -webkit-animation: shake 107s ease 0s infinite normal; }

/* 移動スピード */
.move35 { animation: move 110s ease 105s infinite normal; -webkit-animation: move 110s ease 3.5s infinite normal; position: absolute; bottom: 55%; }

/* 配置 */
.pos35 { left: 70%; }

/* 大きさ */
/* 横揺れスピード */
.shake36 { animation: shake 110s ease 0s infinite normal; -webkit-animation: shake 110s ease 0s infinite normal; }

/* 移動スピード */
.move36 { animation: move 113s ease 108s infinite normal; -webkit-animation: move 113s ease 3.6s infinite normal; position: absolute; bottom: 54%; }

/* 配置 */
.pos36 { left: 72%; }

/* 大きさ */
/* 横揺れスピード */
.shake37 { animation: shake 113s ease 0s infinite normal; -webkit-animation: shake 113s ease 0s infinite normal; }

/* 移動スピード */
.move37 { animation: move 116s ease 111s infinite normal; -webkit-animation: move 116s ease 3.7s infinite normal; position: absolute; bottom: 53%; }

/* 配置 */
.pos37 { left: 74%; }

/* 大きさ */
/* 横揺れスピード */
.shake38 { animation: shake 116s ease 0s infinite normal; -webkit-animation: shake 116s ease 0s infinite normal; }

/* 移動スピード */
.move38 { animation: move 119s ease 114s infinite normal; -webkit-animation: move 119s ease 3.8s infinite normal; position: absolute; bottom: 52%; }

/* 配置 */
.pos38 { left: 76%; }

/* 大きさ */
/* 横揺れスピード */
.shake39 { animation: shake 119s ease 0s infinite normal; -webkit-animation: shake 119s ease 0s infinite normal; }

/* 移動スピード */
.move39 { animation: move 122s ease 117s infinite normal; -webkit-animation: move 122s ease 3.9s infinite normal; position: absolute; bottom: 51%; }

/* 配置 */
.pos39 { left: 78%; }

/* 大きさ */
/* 横揺れスピード */
.shake40 { animation: shake 122s ease 0s infinite normal; -webkit-animation: shake 122s ease 0s infinite normal; }

/* 移動スピード */
.move40 { animation: move 125s ease 120s infinite normal; -webkit-animation: move 125s ease 4s infinite normal; position: absolute; bottom: 50%; }

/* 配置 */
.pos40 { left: 80%; }

/* 大きさ */
/* 横揺れスピード */
.shake41 { animation: shake 125s ease 0s infinite normal; -webkit-animation: shake 125s ease 0s infinite normal; }

/* 移動スピード */
.move41 { animation: move 128s ease 123s infinite normal; -webkit-animation: move 128s ease 4.1s infinite normal; position: absolute; bottom: 49%; }

/* 配置 */
.pos41 { left: 82%; }

/* 大きさ */
/* 横揺れスピード */
.shake42 { animation: shake 128s ease 0s infinite normal; -webkit-animation: shake 128s ease 0s infinite normal; }

/* 移動スピード */
.move42 { animation: move 131s ease 126s infinite normal; -webkit-animation: move 131s ease 4.2s infinite normal; position: absolute; bottom: 48%; }

/* 配置 */
.pos42 { left: 84%; }

/* 大きさ */
/* 横揺れスピード */
.shake43 { animation: shake 131s ease 0s infinite normal; -webkit-animation: shake 131s ease 0s infinite normal; }

/* 移動スピード */
.move43 { animation: move 134s ease 129s infinite normal; -webkit-animation: move 134s ease 4.3s infinite normal; position: absolute; bottom: 47%; }

/* 配置 */
.pos43 { left: 86%; }

/* 大きさ */
/* 横揺れスピード */
.shake44 { animation: shake 134s ease 0s infinite normal; -webkit-animation: shake 134s ease 0s infinite normal; }

/* 移動スピード */
.move44 { animation: move 137s ease 132s infinite normal; -webkit-animation: move 137s ease 4.4s infinite normal; position: absolute; bottom: 46%; }

/* 配置 */
.pos44 { left: 88%; }

/* 大きさ */
/* 横揺れスピード */
.shake45 { animation: shake 137s ease 0s infinite normal; -webkit-animation: shake 137s ease 0s infinite normal; }

/* 移動スピード */
.move45 { animation: move 140s ease 135s infinite normal; -webkit-animation: move 140s ease 4.5s infinite normal; position: absolute; bottom: 45%; }

/* 配置 */
.pos45 { left: 90%; }

/* 大きさ */
/* 横揺れスピード */
.shake46 { animation: shake 140s ease 0s infinite normal; -webkit-animation: shake 140s ease 0s infinite normal; }

/* 移動スピード */
.move46 { animation: move 143s ease 138s infinite normal; -webkit-animation: move 143s ease 4.6s infinite normal; position: absolute; bottom: 44%; }

/* 配置 */
.pos46 { left: 92%; }

/* 大きさ */
/* 横揺れスピード */
.shake47 { animation: shake 143s ease 0s infinite normal; -webkit-animation: shake 143s ease 0s infinite normal; }

/* 移動スピード */
.move47 { animation: move 146s ease 141s infinite normal; -webkit-animation: move 146s ease 4.7s infinite normal; position: absolute; bottom: 43%; }

/* 配置 */
.pos47 { left: 94%; }

/* 大きさ */
/* 横揺れスピード */
.shake48 { animation: shake 146s ease 0s infinite normal; -webkit-animation: shake 146s ease 0s infinite normal; }

/* 移動スピード */
.move48 { animation: move 149s ease 144s infinite normal; -webkit-animation: move 149s ease 4.8s infinite normal; position: absolute; bottom: 42%; }

/* 配置 */
.pos48 { left: 96%; }

/* 大きさ */
/* 横揺れスピード */
.shake49 { animation: shake 149s ease 0s infinite normal; -webkit-animation: shake 149s ease 0s infinite normal; }

/* 移動スピード */
.move49 { animation: move 152s ease 147s infinite normal; -webkit-animation: move 152s ease 4.9s infinite normal; position: absolute; bottom: 41%; }

/* 配置 */
.pos49 { left: 98%; }

/* 大きさ */
/* 横揺れスピード */
.shake50 { animation: shake 152s ease 0s infinite normal; -webkit-animation: shake 152s ease 0s infinite normal; }

/* 移動スピード */
.move50 { animation: move 155s ease 150s infinite normal; -webkit-animation: move 155s ease 5s infinite normal; position: absolute; bottom: 40%; }

/* 配置 */
.pos50 { left: 100%; }

/* 大きさ */
/* 横揺れスピード */
.shake51 { animation: shake 155s ease 0s infinite normal; -webkit-animation: shake 155s ease 0s infinite normal; }

/* 移動スピード */
.move51 { animation: move 158s ease 153s infinite normal; -webkit-animation: move 158s ease 5.1s infinite normal; position: absolute; bottom: 39%; }

/* 配置 */
.pos51 { left: 102%; }

/* 大きさ */
/* 横揺れスピード */
.shake52 { animation: shake 158s ease 0s infinite normal; -webkit-animation: shake 158s ease 0s infinite normal; }

/* 移動スピード */
.move52 { animation: move 161s ease 156s infinite normal; -webkit-animation: move 161s ease 5.2s infinite normal; position: absolute; bottom: 38%; }

/* 配置 */
.pos52 { left: 104%; }

/* 大きさ */
/* 横揺れスピード */
.shake53 { animation: shake 161s ease 0s infinite normal; -webkit-animation: shake 161s ease 0s infinite normal; }

/* 移動スピード */
.move53 { animation: move 164s ease 159s infinite normal; -webkit-animation: move 164s ease 5.3s infinite normal; position: absolute; bottom: 37%; }

/* 配置 */
.pos53 { left: 106%; }

/* 大きさ */
/* 横揺れスピード */
.shake54 { animation: shake 164s ease 0s infinite normal; -webkit-animation: shake 164s ease 0s infinite normal; }

/* 移動スピード */
.move54 { animation: move 167s ease 162s infinite normal; -webkit-animation: move 167s ease 5.4s infinite normal; position: absolute; bottom: 36%; }

/* 配置 */
.pos54 { left: 108%; }

/* 大きさ */
/* 横揺れスピード */
.shake55 { animation: shake 167s ease 0s infinite normal; -webkit-animation: shake 167s ease 0s infinite normal; }

/* 移動スピード */
.move55 { animation: move 170s ease 165s infinite normal; -webkit-animation: move 170s ease 5.5s infinite normal; position: absolute; bottom: 35%; }

/* 配置 */
.pos55 { left: 110%; }

/* 大きさ */
/* 横揺れスピード */
.shake56 { animation: shake 170s ease 0s infinite normal; -webkit-animation: shake 170s ease 0s infinite normal; }

/* 移動スピード */
.move56 { animation: move 173s ease 168s infinite normal; -webkit-animation: move 173s ease 5.6s infinite normal; position: absolute; bottom: 34%; }

/* 配置 */
.pos56 { left: 112%; }

/* 大きさ */
/* 横揺れスピード */
.shake57 { animation: shake 173s ease 0s infinite normal; -webkit-animation: shake 173s ease 0s infinite normal; }

/* 移動スピード */
.move57 { animation: move 176s ease 171s infinite normal; -webkit-animation: move 176s ease 5.7s infinite normal; position: absolute; bottom: 33%; }

/* 配置 */
.pos57 { left: 114%; }

/* 大きさ */
/* 横揺れスピード */
.shake58 { animation: shake 176s ease 0s infinite normal; -webkit-animation: shake 176s ease 0s infinite normal; }

/* 移動スピード */
.move58 { animation: move 179s ease 174s infinite normal; -webkit-animation: move 179s ease 5.8s infinite normal; position: absolute; bottom: 32%; }

/* 配置 */
.pos58 { left: 116%; }

/* 大きさ */
/* 横揺れスピード */
.shake59 { animation: shake 179s ease 0s infinite normal; -webkit-animation: shake 179s ease 0s infinite normal; }

/* 移動スピード */
.move59 { animation: move 182s ease 177s infinite normal; -webkit-animation: move 182s ease 5.9s infinite normal; position: absolute; bottom: 31%; }

/* 配置 */
.pos59 { left: 118%; }

/* 大きさ */
/* 横揺れスピード */
.shake60 { animation: shake 182s ease 0s infinite normal; -webkit-animation: shake 182s ease 0s infinite normal; }

/* 移動スピード */
.move60 { animation: move 185s ease 180s infinite normal; -webkit-animation: move 185s ease 6s infinite normal; position: absolute; bottom: 30%; }

/* 配置 */
.pos60 { left: 120%; }

/* 大きさ */
/* 横揺れスピード */
.shake61 { animation: shake 185s ease 0s infinite normal; -webkit-animation: shake 185s ease 0s infinite normal; }

/* 移動スピード */
.move61 { animation: move 188s ease 183s infinite normal; -webkit-animation: move 188s ease 6.1s infinite normal; position: absolute; bottom: 29%; }

/* 配置 */
.pos61 { left: 122%; }

/* 大きさ */
/* 横揺れスピード */
.shake62 { animation: shake 188s ease 0s infinite normal; -webkit-animation: shake 188s ease 0s infinite normal; }

/* 移動スピード */
.move62 { animation: move 191s ease 186s infinite normal; -webkit-animation: move 191s ease 6.2s infinite normal; position: absolute; bottom: 28%; }

/* 配置 */
.pos62 { left: 124%; }

/* 大きさ */
/* 横揺れスピード */
.shake63 { animation: shake 191s ease 0s infinite normal; -webkit-animation: shake 191s ease 0s infinite normal; }

/* 移動スピード */
.move63 { animation: move 194s ease 189s infinite normal; -webkit-animation: move 194s ease 6.3s infinite normal; position: absolute; bottom: 27%; }

/* 配置 */
.pos63 { left: 126%; }

/* 大きさ */
/* 横揺れスピード */
.shake64 { animation: shake 194s ease 0s infinite normal; -webkit-animation: shake 194s ease 0s infinite normal; }

/* 移動スピード */
.move64 { animation: move 197s ease 192s infinite normal; -webkit-animation: move 197s ease 6.4s infinite normal; position: absolute; bottom: 26%; }

/* 配置 */
.pos64 { left: 128%; }

/* 大きさ */
/* 横揺れスピード */
.shake65 { animation: shake 197s ease 0s infinite normal; -webkit-animation: shake 197s ease 0s infinite normal; }

/* 移動スピード */
.move65 { animation: move 200s ease 195s infinite normal; -webkit-animation: move 200s ease 6.5s infinite normal; position: absolute; bottom: 25%; }

/* 配置 */
.pos65 { left: 130%; }

/* 大きさ */
/* 横揺れスピード */
.shake66 { animation: shake 200s ease 0s infinite normal; -webkit-animation: shake 200s ease 0s infinite normal; }

/* 移動スピード */
.move66 { animation: move 203s ease 198s infinite normal; -webkit-animation: move 203s ease 6.6s infinite normal; position: absolute; bottom: 24%; }

/* 配置 */
.pos66 { left: 132%; }

/* 大きさ */
/* 横揺れスピード */
.shake67 { animation: shake 203s ease 0s infinite normal; -webkit-animation: shake 203s ease 0s infinite normal; }

/* 移動スピード */
.move67 { animation: move 206s ease 201s infinite normal; -webkit-animation: move 206s ease 6.7s infinite normal; position: absolute; bottom: 23%; }

/* 配置 */
.pos67 { left: 134%; }

/* 大きさ */
/* 横揺れスピード */
.shake68 { animation: shake 206s ease 0s infinite normal; -webkit-animation: shake 206s ease 0s infinite normal; }

/* 移動スピード */
.move68 { animation: move 209s ease 204s infinite normal; -webkit-animation: move 209s ease 6.8s infinite normal; position: absolute; bottom: 22%; }

/* 配置 */
.pos68 { left: 136%; }

/* 大きさ */
/* 横揺れスピード */
.shake69 { animation: shake 209s ease 0s infinite normal; -webkit-animation: shake 209s ease 0s infinite normal; }

/* 移動スピード */
.move69 { animation: move 212s ease 207s infinite normal; -webkit-animation: move 212s ease 6.9s infinite normal; position: absolute; bottom: 21%; }

/* 配置 */
.pos69 { left: 138%; }

/* 大きさ */
/* 横揺れスピード */
.shake70 { animation: shake 212s ease 0s infinite normal; -webkit-animation: shake 212s ease 0s infinite normal; }

/* 移動スピード */
.move70 { animation: move 215s ease 210s infinite normal; -webkit-animation: move 215s ease 7s infinite normal; position: absolute; bottom: 20%; }

/* 配置 */
.pos70 { left: 140%; }

/* 大きさ */
/* 横揺れスピード */
.shake71 { animation: shake 215s ease 0s infinite normal; -webkit-animation: shake 215s ease 0s infinite normal; }

/* 移動スピード */
.move71 { animation: move 218s ease 213s infinite normal; -webkit-animation: move 218s ease 7.1s infinite normal; position: absolute; bottom: 19%; }

/* 配置 */
.pos71 { left: 142%; }

/* 大きさ */
/* 横揺れスピード */
.shake72 { animation: shake 218s ease 0s infinite normal; -webkit-animation: shake 218s ease 0s infinite normal; }

/* 移動スピード */
.move72 { animation: move 221s ease 216s infinite normal; -webkit-animation: move 221s ease 7.2s infinite normal; position: absolute; bottom: 18%; }

/* 配置 */
.pos72 { left: 144%; }

/* 大きさ */
/* 横揺れスピード */
.shake73 { animation: shake 221s ease 0s infinite normal; -webkit-animation: shake 221s ease 0s infinite normal; }

/* 移動スピード */
.move73 { animation: move 224s ease 219s infinite normal; -webkit-animation: move 224s ease 7.3s infinite normal; position: absolute; bottom: 17%; }

/* 配置 */
.pos73 { left: 146%; }

/* 大きさ */
/* 横揺れスピード */
.shake74 { animation: shake 224s ease 0s infinite normal; -webkit-animation: shake 224s ease 0s infinite normal; }

/* 移動スピード */
.move74 { animation: move 227s ease 222s infinite normal; -webkit-animation: move 227s ease 7.4s infinite normal; position: absolute; bottom: 16%; }

/* 配置 */
.pos74 { left: 148%; }

/* 大きさ */
/* 横揺れスピード */
.shake75 { animation: shake 227s ease 0s infinite normal; -webkit-animation: shake 227s ease 0s infinite normal; }

/* 移動スピード */
.move75 { animation: move 230s ease 225s infinite normal; -webkit-animation: move 230s ease 7.5s infinite normal; position: absolute; bottom: 15%; }

/* 配置 */
.pos75 { left: 150%; }

/* 大きさ */
/* 横揺れスピード */
.shake76 { animation: shake 230s ease 0s infinite normal; -webkit-animation: shake 230s ease 0s infinite normal; }

/* 移動スピード */
.move76 { animation: move 233s ease 228s infinite normal; -webkit-animation: move 233s ease 7.6s infinite normal; position: absolute; bottom: 14%; }

/* 配置 */
.pos76 { left: 152%; }

/* 大きさ */
/* 横揺れスピード */
.shake77 { animation: shake 233s ease 0s infinite normal; -webkit-animation: shake 233s ease 0s infinite normal; }

/* 移動スピード */
.move77 { animation: move 236s ease 231s infinite normal; -webkit-animation: move 236s ease 7.7s infinite normal; position: absolute; bottom: 13%; }

/* 配置 */
.pos77 { left: 154%; }

/* 大きさ */
/* 横揺れスピード */
.shake78 { animation: shake 236s ease 0s infinite normal; -webkit-animation: shake 236s ease 0s infinite normal; }

/* 移動スピード */
.move78 { animation: move 239s ease 234s infinite normal; -webkit-animation: move 239s ease 7.8s infinite normal; position: absolute; bottom: 12%; }

/* 配置 */
.pos78 { left: 156%; }

/* 大きさ */
/* 横揺れスピード */
.shake79 { animation: shake 239s ease 0s infinite normal; -webkit-animation: shake 239s ease 0s infinite normal; }

/* 移動スピード */
.move79 { animation: move 242s ease 237s infinite normal; -webkit-animation: move 242s ease 7.9s infinite normal; position: absolute; bottom: 11%; }

/* 配置 */
.pos79 { left: 158%; }

/* 大きさ */
/* 横揺れスピード */
.shake80 { animation: shake 242s ease 0s infinite normal; -webkit-animation: shake 242s ease 0s infinite normal; }

/* 移動スピード */
.move80 { animation: move 245s ease 240s infinite normal; -webkit-animation: move 245s ease 8s infinite normal; position: absolute; bottom: 10%; }

/* 配置 */
.pos80 { left: 160%; }

/* 大きさ */
/* 横揺れスピード */
.shake81 { animation: shake 245s ease 0s infinite normal; -webkit-animation: shake 245s ease 0s infinite normal; }

/* 移動スピード */
.move81 { animation: move 248s ease 243s infinite normal; -webkit-animation: move 248s ease 8.1s infinite normal; position: absolute; bottom: 9%; }

/* 配置 */
.pos81 { left: 162%; }

/* 大きさ */
/* 横揺れスピード */
.shake82 { animation: shake 248s ease 0s infinite normal; -webkit-animation: shake 248s ease 0s infinite normal; }

/* 移動スピード */
.move82 { animation: move 251s ease 246s infinite normal; -webkit-animation: move 251s ease 8.2s infinite normal; position: absolute; bottom: 8%; }

/* 配置 */
.pos82 { left: 164%; }

/* 大きさ */
/* 横揺れスピード */
.shake83 { animation: shake 251s ease 0s infinite normal; -webkit-animation: shake 251s ease 0s infinite normal; }

/* 移動スピード */
.move83 { animation: move 254s ease 249s infinite normal; -webkit-animation: move 254s ease 8.3s infinite normal; position: absolute; bottom: 7%; }

/* 配置 */
.pos83 { left: 166%; }

/* 大きさ */
/* 横揺れスピード */
.shake84 { animation: shake 254s ease 0s infinite normal; -webkit-animation: shake 254s ease 0s infinite normal; }

/* 移動スピード */
.move84 { animation: move 257s ease 252s infinite normal; -webkit-animation: move 257s ease 8.4s infinite normal; position: absolute; bottom: 6%; }

/* 配置 */
.pos84 { left: 168%; }

/* 大きさ */
/* 横揺れスピード */
.shake85 { animation: shake 257s ease 0s infinite normal; -webkit-animation: shake 257s ease 0s infinite normal; }

/* 移動スピード */
.move85 { animation: move 260s ease 255s infinite normal; -webkit-animation: move 260s ease 8.5s infinite normal; position: absolute; bottom: 5%; }

/* 配置 */
.pos85 { left: 170%; }

/* 大きさ */
/* 横揺れスピード */
.shake86 { animation: shake 260s ease 0s infinite normal; -webkit-animation: shake 260s ease 0s infinite normal; }

/* 移動スピード */
.move86 { animation: move 263s ease 258s infinite normal; -webkit-animation: move 263s ease 8.6s infinite normal; position: absolute; bottom: 4%; }

/* 配置 */
.pos86 { left: 172%; }

/* 大きさ */
/* 横揺れスピード */
.shake87 { animation: shake 263s ease 0s infinite normal; -webkit-animation: shake 263s ease 0s infinite normal; }

/* 移動スピード */
.move87 { animation: move 266s ease 261s infinite normal; -webkit-animation: move 266s ease 8.7s infinite normal; position: absolute; bottom: 3%; }

/* 配置 */
.pos87 { left: 174%; }

/* 大きさ */
/* 横揺れスピード */
.shake88 { animation: shake 266s ease 0s infinite normal; -webkit-animation: shake 266s ease 0s infinite normal; }

/* 移動スピード */
.move88 { animation: move 269s ease 264s infinite normal; -webkit-animation: move 269s ease 8.8s infinite normal; position: absolute; bottom: 2%; }

/* 配置 */
.pos88 { left: 176%; }

/* 大きさ */
/* 横揺れスピード */
.shake89 { animation: shake 269s ease 0s infinite normal; -webkit-animation: shake 269s ease 0s infinite normal; }

/* 移動スピード */
.move89 { animation: move 272s ease 267s infinite normal; -webkit-animation: move 272s ease 8.9s infinite normal; position: absolute; bottom: 1%; }

/* 配置 */
.pos89 { left: 178%; }

/* 大きさ */
/* 横揺れスピード */
.shake90 { animation: shake 272s ease 0s infinite normal; -webkit-animation: shake 272s ease 0s infinite normal; }

/* 移動スピード */
.move90 { animation: move 275s ease 270s infinite normal; -webkit-animation: move 275s ease 9s infinite normal; position: absolute; bottom: 0%; }

/* 配置 */
.pos90 { left: 180%; }

/* 大きさ */
/* 横揺れスピード */
.shake91 { animation: shake 275s ease 0s infinite normal; -webkit-animation: shake 275s ease 0s infinite normal; }

/* 移動スピード */
.move91 { animation: move 278s ease 273s infinite normal; -webkit-animation: move 278s ease 9.1s infinite normal; position: absolute; bottom: -1%; }

/* 配置 */
.pos91 { left: 182%; }

/* 大きさ */
/* 横揺れスピード */
.shake92 { animation: shake 278s ease 0s infinite normal; -webkit-animation: shake 278s ease 0s infinite normal; }

/* 移動スピード */
.move92 { animation: move 281s ease 276s infinite normal; -webkit-animation: move 281s ease 9.2s infinite normal; position: absolute; bottom: -2%; }

/* 配置 */
.pos92 { left: 184%; }

/* 大きさ */
/* 横揺れスピード */
.shake93 { animation: shake 281s ease 0s infinite normal; -webkit-animation: shake 281s ease 0s infinite normal; }

/* 移動スピード */
.move93 { animation: move 284s ease 279s infinite normal; -webkit-animation: move 284s ease 9.3s infinite normal; position: absolute; bottom: -3%; }

/* 配置 */
.pos93 { left: 186%; }

/* 大きさ */
/* 横揺れスピード */
.shake94 { animation: shake 284s ease 0s infinite normal; -webkit-animation: shake 284s ease 0s infinite normal; }

/* 移動スピード */
.move94 { animation: move 287s ease 282s infinite normal; -webkit-animation: move 287s ease 9.4s infinite normal; position: absolute; bottom: -4%; }

/* 配置 */
.pos94 { left: 188%; }

/* 大きさ */
/* 横揺れスピード */
.shake95 { animation: shake 287s ease 0s infinite normal; -webkit-animation: shake 287s ease 0s infinite normal; }

/* 移動スピード */
.move95 { animation: move 290s ease 285s infinite normal; -webkit-animation: move 290s ease 9.5s infinite normal; position: absolute; bottom: -5%; }

/* 配置 */
.pos95 { left: 190%; }

/* 大きさ */
/* 横揺れスピード */
.shake96 { animation: shake 290s ease 0s infinite normal; -webkit-animation: shake 290s ease 0s infinite normal; }

/* 移動スピード */
.move96 { animation: move 293s ease 288s infinite normal; -webkit-animation: move 293s ease 9.6s infinite normal; position: absolute; bottom: -6%; }

/* 配置 */
.pos96 { left: 192%; }

/* 大きさ */
/* 横揺れスピード */
.shake97 { animation: shake 293s ease 0s infinite normal; -webkit-animation: shake 293s ease 0s infinite normal; }

/* 移動スピード */
.move97 { animation: move 296s ease 291s infinite normal; -webkit-animation: move 296s ease 9.7s infinite normal; position: absolute; bottom: -7%; }

/* 配置 */
.pos97 { left: 194%; }

/* 大きさ */
/* 横揺れスピード */
.shake98 { animation: shake 296s ease 0s infinite normal; -webkit-animation: shake 296s ease 0s infinite normal; }

/* 移動スピード */
.move98 { animation: move 299s ease 294s infinite normal; -webkit-animation: move 299s ease 9.8s infinite normal; position: absolute; bottom: -8%; }

/* 配置 */
.pos98 { left: 196%; }

/* 大きさ */
/* 横揺れスピード */
.shake99 { animation: shake 299s ease 0s infinite normal; -webkit-animation: shake 299s ease 0s infinite normal; }

/* 移動スピード */
.move99 { animation: move 302s ease 297s infinite normal; -webkit-animation: move 302s ease 9.9s infinite normal; position: absolute; bottom: -9%; }

/* 配置 */
.pos99 { left: 198%; }

/* 大きさ */
/* 横揺れスピード */
.shake100 { animation: shake 302s ease 0s infinite normal; -webkit-animation: shake 302s ease 0s infinite normal; }

/* 移動スピード */
.move100 { animation: move 305s ease 300s infinite normal; -webkit-animation: move 305s ease 10s infinite normal; position: absolute; bottom: -10%; }

/* 配置 */
.pos100 { left: 200%; }

/* 大きさ */
#bubble { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

#contact_link { position: relative; top: 0; left: 0; background: #00b6ec; background: -webkit-linear-gradient(bottom, rgba(0, 182, 236, 0.4) 0%, rgba(0, 144, 214, 0.1) 100%); background: -o-linear-gradient(bottom, rgba(0, 182, 236, 0.4) 0%, rgba(0, 144, 214, 0.1) 100%); background: linear-gradient(to top, rgba(0, 182, 236, 0.4) 0%, rgba(0, 144, 214, 0.1) 100%); padding: 80px 0 88px 0; z-index: 10; }

#contact_link .inner h2 { text-align: center; font-weight: bold; font-size: 31px; line-height: 1.74194; margin: 0 0 33px 0; }

#contact_link .inner .link a { position: relative; top: 0; left: 0; display: -webkit-flex; display: -ms-flex; display: flex; justify-content: center; align-items: center; border-radius: 107px; background: #004ea0; color: #FFFFFF; font-size: 33px; font-weight: bold; width: 680px; height: 107px; box-shadow: 2px 2px 5px 0px rgba(10, 106, 164, 0.2); margin: 0 auto; }

#contact_link .inner .link a em { position: absolute; top: 48px; right: 37px; display: block; width: 37px; }

@media screen and (max-width: 1100px) { #contact_link { padding: 11.46667vw 0 12.26667vw 0; }
  #contact_link .inner h2 { font-size: 5.73333vw; line-height: 1.48837; margin: 0 0 7.46667vw 0; }
  #contact_link .inner .link a { border-radius: 18.53333vw; font-size: 5.33333vw; width: 89.33333vw; height: 18.53333vw; box-shadow: 0.26667vw 0.26667vw 0.66667vw 0vw rgba(10, 106, 164, 0.2); }
  #contact_link .inner .link a em { top: 7.86667vw; right: 6.13333vw; width: 7.86667vw; } }

.interview main #key { position: relative; top: 0; left: 0; padding: 90px 0 95px 0; z-index: 10; }

.interview main #key h1 { width: 100%; }

@media screen and (max-width: 1100px) { .interview main #key { padding: 13.33333vw 0 7.33333vw 0; } }

.interview main #cont01 { z-index: 10; position: relative; top: 0; left: 0; padding: 0 0 75px 0; }

.interview main #cont01 .inner { width: 1000px; }

.interview main #cont01 .inner dl { width: 800px; margin: 0 auto 93px auto; }

.interview main #cont01 .inner dl dt { display: -webkit-flex; display: -ms-flex; display: flex; align-items: center; margin: 0 0 40px 0; }

.interview main #cont01 .inner dl dt strong { display: block; width: 50px; margin: 0 12px 0 0; }

.interview main #cont01 .inner dl dt p { font-weight: bold; font-size: 26px; line-height: 1.53846; width: 737px; }

.interview main #cont01 .inner dl dd { font-size: 18px; line-height: 1.77778; }

.interview main #cont01 .inner .img { width: 100%; margin: 0 0 89px 0; }

@media screen and (max-width: 1100px) { .interview main #cont01 { padding: 0 0 8vw 0; }
  .interview main #cont01 .inner { width: 89.33333vw; }
  .interview main #cont01 .inner dl { width: 100%; margin: 0 auto 8vw auto; }
  .interview main #cont01 .inner dl dt { margin: 0 0 5.33333vw 0; }
  .interview main #cont01 .inner dl dt strong { width: 9.33333vw; margin: 0 2.66667vw 0 0; }
  .interview main #cont01 .inner dl dt p { font-size: 4.26667vw; width: 77.33333vw; }
  .interview main #cont01 .inner dl dd { font-size: 2.93333vw; line-height: 1.5; }
  .interview main #cont01 .inner .img { margin: 0 0 8vw 0; } }

.top_index main { width: 100%; height: 100%; overflow: hidden; }

.top_index main .clossbox { position: relative; top: 0; left: 0; width: 0; overflow-x: hidden; }

.top_index main .clossbox:after { content: ''; display: block; position: absolute; top: 0; right: 0; width: 100%; height: 100%; background: #000000; }

.top_index main .clossbox.show { animation: passing-bar 1s ease 0s 1 normal forwards; }

.top_index main .clossbox.show:after { animation: passing-text 0.6s ease 0.5s 1 normal forwards; }

@keyframes passing-bar { 0% { width: 0; }
  50% { width: 100%; }
  51% { width: 100%; }
  100% { width: 100%; } }

@keyframes passing-text { 0% { width: 100%;
    opacity: 1; }
  99% { width: 0;
    opacity: 1; }
  100% { width: 0;
    opacity: 0; } }

.top_index main #key { position: relative; top: 0; left: 0; background: #00b6ec; background: linear-gradient(0deg, rgba(0, 182, 236, 0) 0%, #00b6ec 50%, #467bbb 100%); width: 100%; box-sizing: border-box; padding: 0 0 88px 0; }

.top_index main #key .inner { position: relative; top: 0; left: 0; width: 100%; max-width: 1280px; min-height: 100vh; height: auto; margin: 0 auto 68px auto; }

.top_index main #key .inner h1 { position: absolute; top: 0; right: 195px; width: 127px; height: 100vh; display: -webkit-flex; display: -ms-flex; display: flex; align-items: center; z-index: 10; }

.top_index main #key .inner .img { display: -webkit-flex; display: -ms-flex; display: flex; align-items: center; width: 400px; height: 100vh; margin: 0 auto; }

.top_index main #key .scroll { position: absolute; bottom: 0; left: 0; width: 100%; }

.top_index main #key .scroll p em { display: block; font-size: 12px; color: #FFFFFF; text-align: center; }

.top_index main #key .scroll p span { position: relative; top: 0; left: 0; display: -webkit-flex; display: -ms-flex; display: flex; justify-content: center; width: 1px; height: 90px; margin: 10px auto 0 auto; }

.top_index main #key .scroll p span::before { content: ''; display: block; background: #FFFFFF; width: 1px; height: 100%; animation: ScrollAnimation 3s infinite; }

@keyframes ScrollAnimation { 0% { height: 0; }
  45% { height: 100%; }
  55% { height: 100%; }
  100% { height: 0; } }

.top_index main #key .text_box { position: relative; top: 0; left: 0; z-index: 10; }

.top_index main #key .text_box p { font-size: 20px; line-height: 2; text-align: center; font-weight: bold; margin: 0 0 40px 0; }

.top_index main #key .text_box p:last-child { margin: 0; }

@media screen and (max-width: 1100px) { .top_index main #key { padding: 0 0 7.33333vw 0; }
  .top_index main #key .inner { max-width: 170.66667vw; margin: 0 auto 30vw auto; }
  .top_index main #key .inner h1 { right: 10vw; width: 22.93333vw; }
  .top_index main #key .inner .img { width: 70.13333vw; padding: 0; }
  .top_index main #key .scroll p em { font-size: 2.66667vw; }
  .top_index main #key .scroll p span { height: 16vw; margin: 2.13333vw auto 0 auto; }
  .top_index main #key .text_box p { font-size: 4vw; line-height: 1.93333; margin: 0 0 6.93333vw 0; }
  .top_index main #key .text_box p:last-child { margin: 0; } }

.top_index main #cont01 { z-index: 10; position: relative; top: 0; left: 0; padding: 0 0 80px 0; z-index: 10; }

.top_index main #cont01::after { content: ''; display: block; background: #1e67a7; width: 1px; height: 90px; margin: 0 auto; }

.top_index main #cont01 h2 { text-align: center; font-weight: bold; font-size: 36px; line-height: 1; letter-spacing: 0.05em; margin: 0 0 85px 0; }

.top_index main #cont01 h2::after { content: ''; display: block; background: #1e67a7; width: 1px; height: 90px; margin: 80px auto 0 auto; }

.top_index main #cont01 .area { position: relative; top: 0; left: 0; width: 952px; height: 791px; margin: 0 auto 84px auto; }

.top_index main #cont01 .area:before { position: absolute; top: 0; left: 0; content: ''; display: block; width: 0; height: 0; border-style: solid; border-width: 0 476px 791px 476px; border-color: transparent transparent rgba(30, 103, 167, 0.15) transparent; }

.top_index main #cont01 .area h3 { position: relative; top: 0; left: 0; display: block; width: 216px; padding: 58px 0 30px 0; margin: 0 auto; z-index: 10; }

.top_index main #cont01 .area dl { position: relative; top: 0; left: 0; margin: 0 0 20px 0; z-index: 10; }

.top_index main #cont01 .area dl.line_pare { padding: 4px 0 5px 0; }

.top_index main #cont01 .area dl dt { position: relative; top: 0; left: 0; }

.top_index main #cont01 .area dl dt strong { position: relative; top: 0; left: 0; display: -webkit-flex; display: -ms-flex; display: flex; justify-content: center; align-items: center; background: #004ea0; border-radius: 20px; color: #FFFFFF; font-size: 13px; width: 114px; height: 20px; margin: 0 auto 8px auto; }

.top_index main #cont01 .area dl dt.line { width: 390px; margin: 0 auto; }

.top_index main #cont01 .area dl dt.line:before { content: ''; display: block; position: absolute; top: 10px; left: 0; background: #004ea0; width: 100%; height: 1px; }

.top_index main #cont01 .area dl dt.line2 { width: 586px; margin: 0 auto; }

.top_index main #cont01 .area dl dt.line2:before { content: ''; display: block; position: absolute; top: 10px; left: 0; background: #004ea0; width: 100%; height: 1px; }

.top_index main #cont01 .area dl dd.table { padding: 10px 0 0 0; }

.top_index main #cont01 .area dl dd strong { display: block; text-align: center; font-size: 20px; line-height: 1.5; margin: 0 0 14px 0; }

.top_index main #cont01 .area dl dd strong:last-child { margin: 0; }

.top_index main #cont01 .area dl dd ul { display: -webkit-flex; display: -ms-flex; display: flex; justify-content: space-between; width: 534px; margin: 0 auto; padding: 6px 0 0 0; }

.top_index main #cont01 .area dl dd ul li h4 { color: #004ea0; font-size: 16px; font-weight: bold; text-align: center; margin: 0 0 3px 0; }

.top_index main #cont01 .area dl dd ul li p { text-align: center; font-size: 16px; line-height: 1.5; }

.top_index main #cont01 .area dl dd table { width: 492px; font-size: 16px; line-height: 1.5; margin: 0 auto; letter-spacing: 0.04em; }

.top_index main #cont01 .area dl dd table tr th { width: 154px; }

@media screen and (max-width: 1100px) { .top_index main #cont01 { padding: 0 0 12.26667vw 0; }
  .top_index main #cont01::after { height: 20vw; }
  .top_index main #cont01 h2 { font-size: 6.66667vw; line-height: 1.6; margin: 0 0 10.66667vw 0; }
  .top_index main #cont01 h2::after { height: 20vw; margin: 14vw auto 0 auto; }
  .top_index main #cont01 .area { width: 100%; height: 229.6vw; overflow: hidden; margin: 0 auto 14.66667vw auto; }
  .top_index main #cont01 .area:before { border-width: 0 50vw 72.8vw 50vw; border-color: transparent transparent rgba(30, 103, 167, 0.15) transparent; }
  .top_index main #cont01 .area:after { content: ''; display: block; position: absolute; bottom: 0; left: 0; background: rgba(30, 103, 167, 0.15); width: 100%; height: 156.8vw; }
  .top_index main #cont01 .area h3 { width: 28.8vw; padding: 13.33333vw 0 5.86667vw 0; }
  .top_index main #cont01 .area dl { margin: 0 0 3.33333vw 0; }
  .top_index main #cont01 .area dl.line_pare { padding: 0.93333vw 0 0.8vw 0; }
  .top_index main #cont01 .area dl dt strong { border-radius: 3.73333vw; font-size: 2.4vw; width: 21.6vw; height: 3.73333vw; margin: 0 auto 1.86667vw auto; }
  .top_index main #cont01 .area dl dt.line { width: 89.33333vw; }
  .top_index main #cont01 .area dl dt.line:before { top: 1.86667vw; width: 100%; }
  .top_index main #cont01 .area dl dt.line2 { width: 89.33333vw; }
  .top_index main #cont01 .area dl dt.line2:before { top: 1.86667vw; width: 100%; }
  .top_index main #cont01 .area dl dd.table { padding: 0.93333vw 0 0 0; }
  .top_index main #cont01 .area dl dd strong { font-size: 4vw; line-height: 1.4; margin: 0 0 2.93333vw 0; }
  .top_index main #cont01 .area dl dd strong:last-child { margin: 0; }
  .top_index main #cont01 .area dl dd ul { display: block; width: 100%; padding: 0.8vw 0 0 0; }
  .top_index main #cont01 .area dl dd ul li { width: 100%; margin: 0 0 4vw 0; }
  .top_index main #cont01 .area dl dd ul li:last-child { margin: 0; }
  .top_index main #cont01 .area dl dd ul li h4 { font-size: 2.93333vw; margin: 0 0 0.4vw 0; }
  .top_index main #cont01 .area dl dd ul li p { font-size: 3.73333vw; line-height: 1.39286; }
  .top_index main #cont01 .area dl dd ul li p br { display: none; }
  .top_index main #cont01 .area dl dd table { width: 100%; font-size: 3.73333vw; line-height: 1.35714; }
  .top_index main #cont01 .area dl dd table tr { display: block; margin: 0 0 1.86667vw 0; }
  .top_index main #cont01 .area dl dd table tr:last-child { margin: 0; }
  .top_index main #cont01 .area dl dd table tr th, .top_index main #cont01 .area dl dd table tr td { display: block; text-align: center; width: 100%; } }

.top_index main #cont02 { z-index: 10; position: relative; top: 0; left: 0; margin: 0 0 81px 0; }

.top_index main #cont02 .inner { width: 1140px; }

.top_index main #cont02 .inner .title { margin: 0 0 96px 0; }

.top_index main #cont02 .inner .title h2 { text-align: center; font-weight: bold; font-size: 40px; line-height: 1.35; letter-spacing: 0.05em; margin: 0 0 12px 0; }

.top_index main #cont02 .inner .title strong { display: -webkit-flex; display: -ms-flex; display: flex; justify-content: center; align-items: center; border-radius: 34px; background: #004ea0; color: #FFFFFF; font-size: 20px; width: 312px; height: 34px; margin: 0 auto 34px auto; }

.top_index main #cont02 .inner .title p { text-align: center; font-size: 16px; line-height: 1.8125; width: 876px; margin: 0 auto; }

.top_index main #cont02 .inner .box { display: -webkit-flex; display: -ms-flex; display: flex; }

.top_index main #cont02 .inner .box.right { justify-content: flex-end; }

.top_index main #cont02 .inner .area { position: relative; top: 0; left: 0; box-sizing: border-box; }

.top_index main #cont02 .inner .area .img { position: absolute; width: 100%; }

.top_index main #cont02 .inner .area .text { position: relative; top: 0; left: 0; width: 463px; }

.top_index main #cont02 .inner .area .text strong { display: block; font-weight: bold; font-size: 30px; line-height: 1.36667; margin: 0 0 12px 0; }

.top_index main #cont02 .inner .area .text p { font-size: 16px; line-height: 1.5; letter-spacing: 0.04em; }

.top_index main #cont02 .inner .area .text span { display: block; font-size: 12px; text-align: right; margin: 14px 0 0 0; }

.top_index main #cont02 .inner .area.area01 { width: 673px; padding: 292px 0 171px 109px; }

.top_index main #cont02 .inner .area.area01 .img { top: 0; left: 4px; }

.top_index main #cont02 .inner .area.area02 { width: 726px; padding: 167px 0 32px 135px; }

.top_index main #cont02 .inner .area.area02 .img { top: -108px; left: 3px; }

.top_index main #cont02 .inner .area.area02 .text strong { margin: 0 0 21px 0; }

.top_index main #cont02 .inner .area.area03 { width: 786px; padding: 349px 0 122px 118px; }

.top_index main #cont02 .inner .area.area03 .img { top: 0; left: 4px; }

.top_index main #cont02 .inner .area.area03 .text strong { margin: 0 0 17px 0; }

.top_index main #cont02 .inner .area.area04 { width: 712px; height: 690px; padding: 250px 0 0 100px; }

.top_index main #cont02 .inner .area.area04 .img { top: -27px; left: 5px; }

.top_index main #cont02 .inner .area.area04 .text strong { margin: 0 0 13px 0; }

@media screen and (max-width: 1100px) { .top_index main #cont02 { margin: 0 0 11.06667vw 0; }
  .top_index main #cont02 .inner { width: 100%; }
  .top_index main #cont02 .inner .title { margin: 0 0 21.06667vw 0; }
  .top_index main #cont02 .inner .title h2 { font-size: 6.66667vw; line-height: 1.32; margin: 0 0 2.66667vw 0; }
  .top_index main #cont02 .inner .title strong { border-radius: 6.13333vw; font-size: 3.6vw; width: 56.8vw; height: 6.13333vw; margin: 0 auto 6.93333vw auto; }
  .top_index main #cont02 .inner .title p { font-size: 3.73333vw; line-height: 1.5; width: 89.33333vw; }
  .top_index main #cont02 .inner .area .text { width: 89.33333vw; margin: 0 auto; }
  .top_index main #cont02 .inner .area .text strong { font-size: 6.4vw; line-height: 1.375; margin: 0 0 2.66667vw 0; }
  .top_index main #cont02 .inner .area .text p { font-size: 3.73333vw; line-height: 1.5; text-align: justify; letter-spacing: 0.02em; }
  .top_index main #cont02 .inner .area .text span { font-size: 3.2vw; margin: 0.53333vw 0 0 0; }
  .top_index main #cont02 .inner .area.area01 { width: 100%; height: 160.26667vw; padding: 71.06667vw 0 0 0; margin: 0 0 28.26667vw 0; }
  .top_index main #cont02 .inner .area.area01 .img { top: 0; left: 0; }
  .top_index main #cont02 .inner .area.area02 { width: 100%; height: 166.93333vw; padding: 64.26667vw 0 0 0; margin: 0 0 22.26667vw 0; }
  .top_index main #cont02 .inner .area.area02 .img { top: -6.4vw; left: 0; }
  .top_index main #cont02 .inner .area.area02 .text strong { margin: 0 0 2.8vw 0; }
  .top_index main #cont02 .inner .area.area03 { width: 100%; height: 156.26667vw; padding: 70.93333vw 0 0 0; margin: 0 0 30.53333vw 0; }
  .top_index main #cont02 .inner .area.area03 .img { top: -2.93333vw; left: 0; }
  .top_index main #cont02 .inner .area.area03 .text strong { margin: 0 0 2.8vw 0; }
  .top_index main #cont02 .inner .area.area04 { width: 100%; height: 156.26667vw; padding: 70.66667vw 0 0 0; margin: 0 0 16.13333vw 0; }
  .top_index main #cont02 .inner .area.area04 .img { top: 0; left: 0; }
  .top_index main #cont02 .inner .area.area04 .text strong { margin: 0 0 2.8vw 0; } }

.top_index main #cont03 { z-index: 10; position: relative; top: 0; left: 0; background: #00b6ec; background: -webkit-linear-gradient(bottom, rgba(0, 182, 236, 0.4) 0%, rgba(0, 144, 214, 0.1) 100%); background: -o-linear-gradient(bottom, rgba(0, 182, 236, 0.4) 0%, rgba(0, 144, 214, 0.1) 100%); background: linear-gradient(to top, rgba(0, 182, 236, 0.4) 0%, rgba(0, 144, 214, 0.1) 100%); padding: 104px 0 106px 0; }

.top_index main #cont03 .line { display: block; position: absolute; top: -45px; left: 0; width: 100%; }

.top_index main #cont03 .line::before { content: ''; display: block; background: #1e67a7; width: 1px; height: 90px; margin: 0 auto; }

.top_index main #cont03 .line2 { display: block; position: absolute; bottom: -45px; left: 0; width: 100%; }

.top_index main #cont03 .line2::before { content: ''; display: block; background: #1e67a7; width: 1px; height: 90px; margin: 0 auto; }

.top_index main #cont03 .inner { width: 1150px; }

.top_index main #cont03 .inner h2 { text-align: center; font-weight: bold; font-size: 45px; line-height: 1.2; margin: 0 auto 62px auto; }

.top_index main #cont03 .inner ul { display: -webkit-flex; display: -ms-flex; display: flex; flex-wrap: wrap; padding: 0 0 17px 0; }

.top_index main #cont03 .inner ul li { display: none; width: 362px; margin: 0 32px 32px 0; }

.top_index main #cont03 .inner ul li:nth-child(3n) { margin: 0 0 32px 0; }

.top_index main #cont03 .inner ul li a img { -webkit-transition: 0.30s; -moz-transition: 0.30s; -ms-transition: 0.30s; -o-transition: 0.30s; transition: 0.30s; }

.top_index main #cont03 .inner ul li a:hover img { transform: scale(1.05, 1.05); }

.top_index main #cont03 .inner .link a { position: relative; top: 0; left: 0; display: -webkit-flex; display: -ms-flex; display: flex; justify-content: center; align-items: center; border-radius: 32px; background: #004ea0; color: #FFFFFF; font-size: 16px; font-weight: bold; width: 273px; height: 63px; box-shadow: 2px 2px 5px 0px rgba(10, 106, 164, 0.2); margin: 0 auto; }

.top_index main #cont03 .inner .link a:before, .top_index main #cont03 .inner .link a::after { content: ''; display: block; position: absolute; border-radius: 8px; top: 30px; right: 23px; background: #FFFFFF; width: 14px; height: 2px; }

.top_index main #cont03 .inner .link a::after { transform: rotate(-90deg); -webkit-transition: 0.30s; -moz-transition: 0.30s; -ms-transition: 0.30s; -o-transition: 0.30s; transition: 0.30s; }

@media screen and (max-width: 1100px) { .top_index main #cont03 { padding: 17.33333vw 0 26.93333vw 0; }
  .top_index main #cont03 .line { top: -10vw; }
  .top_index main #cont03 .line::before { height: 20vw; }
  .top_index main #cont03 .line2 { bottom: -10vw; }
  .top_index main #cont03 .line2::before { height: 20vw; }
  .top_index main #cont03 .inner { width: 80vw; }
  .top_index main #cont03 .inner h2 { font-size: 6.66667vw; line-height: 1.08; margin: 0 auto 6.93333vw auto; }
  .top_index main #cont03 .inner ul { display: block; padding: 0 0 3.33333vw 0; }
  .top_index main #cont03 .inner ul li { width: 100%; margin: 0 0 5.33333vw 0; }
  .top_index main #cont03 .inner ul li:nth-child(3n) { margin: 0 0 5.33333vw 0; }
  .top_index main #cont03 .inner .link a { border-radius: 15.6vw; font-size: 4vw; width: 66.66667vw; height: 15.6vw; box-shadow: 0.26667vw 0.26667vw 0.66667vw 0vw rgba(10, 106, 164, 0.2); }
  .top_index main #cont03 .inner .link a:before, .top_index main #cont03 .inner .link a::after { top: 7.6vw; right: 5.6vw; width: 3.46667vw; height: 0.53333vw; } }

.top_index main #cont04 { z-index: 10; position: relative; top: 0; left: 0; padding: 100px 0 118px 0; }

.top_index main #cont04 h2 { text-align: center; font-weight: bold; font-size: 45px; line-height: 1.2; margin: 0 0 61px 0; }

.top_index main #cont04 ul { width: 1000px; margin: 0 auto; }

.top_index main #cont04 ul li a img { -webkit-transition: 0.30s; -moz-transition: 0.30s; -ms-transition: 0.30s; -o-transition: 0.30s; transition: 0.30s; }

.top_index main #cont04 ul li a:hover { opacity: 1; }

.top_index main #cont04 ul li a:hover img { transform: scale(1.05, 1.05); }

.top_index main #cont04 ol { width: 1020px; margin: 0 auto; }

.top_index main #cont04 ol .slick-slide { position: relative; top: 0; left: 0; width: 322px; margin: 18px 10px 0 10px; }

.top_index main #cont04 ol .slick-slide img { border-radius: 5px; }

.top_index main #cont04 ol .slick-slide.slick-current::after { content: ''; display: block; position: absolute; top: 0; left: 0; border: 4px solid #004ea0; box-sizing: border-box; border-radius: 5px; width: 100%; height: 100%; }

.top_index main #cont04 ol .slick-slide.slick-current::before { content: ''; display: block; position: absolute; top: -14px; left: 149px; width: 0; height: 0; border-style: solid; border-width: 0 12px 14px 12px; border-color: transparent transparent #004ea0 transparent; }

@media screen and (max-width: 1100px) { .top_index main #cont04 { padding: 17.6vw 0 26.66667vw 0; }
  .top_index main #cont04 h2 { font-size: 6.66667vw; line-height: 1.08; margin: 0 0 7.33333vw 0; }
  .top_index main #cont04 .slick-dots { display: -webkit-flex; display: -ms-flex; display: flex; justify-content: center; margin: 2.66667vw 0 0 0; }
  .top_index main #cont04 .slick-dots li { margin: 0 1.33333vw; }
  .top_index main #cont04 .slick-dots li button { text-indent: -9999px; border-radius: 2.13333vw; border: none; background: #cbcbcb; width: 2.13333vw; height: 2.13333vw; }
  .top_index main #cont04 .slick-dots li button:hover { background: #004ea0; }
  .top_index main #cont04 .slick-dots li.slick-active button { background: #004ea0; }
  .top_index main #cont04 ul { width: 80vw; }
  .top_index main #cont04 ol { display: none; } }
