@charset "UTF-8";

/* ----------------------------------------
site設定
------------------------------------------*/
html {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 62.5%;
  vertical-align: baseline;
  text-size-adjust: none;
  -webkit-text-size-adjust: none;
  -moz-text-size-adjust: none;
  -ms-text-size-adjust: none;
  scroll-behavior: smooth;
}
body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 1.6rem;
  font-family: "Noto Sans JP", sans-serif;
  color: #181818;
  vertical-align: baseline;
  box-sizing: border-box;
  line-height: 1.8;
}
article, aside, details, figcaption, figure, footer, header, main, menu, nav, section {
  display: block;
}
a {
  color: #181818;
  text-decoration: none;
  -webkit-transition: opacity .5s ease;
  -o-transition: opacity .5s ease;
  transition: opacity .5s ease;
  cursor: pointer;
  word-break: break-word;
}
a:hover {
  opacity: .5;
  -webkit-transition: opacity .5s ease;
  -o-transition: opacity .5s ease;
  transition: opacity .5s ease;
}
iframe {
  vertical-align: bottom;
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}
video {
  max-width: 100%;
  vertical-align: bottom;
}
ol, ul {
  list-style: none;
}
button {
  background: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
}
address {
  font-style: normal;
}

/* ----------------------------------------
margin & padding
------------------------------------------*/
.m00{margin:0!important;}.m05{margin:5px!important;}.m10{margin:10px!important;}.m15{margin:15px!important;}.m20{margin:20px!important;}.m25{margin:25px!important;}.m30{margin:30px!important;}.m35{margin:35px!important;}.m40{margin:40px!important;}.m45{margin:45px!important;}.m50{margin:50px!important;}.mt00{margin-top:0!important;}.mt05{margin-top:5px!important;}.mt10{margin-top:10px!important;}.mt15{margin-top:15px!important;}.mt20{margin-top:20px!important;}.mt25{margin-top:25px!important;}.mt30{margin-top:30px!important;}.mt35{margin-top:35px!important;}.mt40{margin-top:40px!important;}.mt45{margin-top:45px!important;}.mt50{margin-top:50px!important;}.mb00{margin-bottom:0!important;}.mb05{margin-bottom:5px!important;}.mb10{margin-bottom:10px!important;}.mb15{margin-bottom:15px!important;}.mb20{margin-bottom:20px!important;}.mb25{margin-bottom:25px!important;}.mb30{margin-bottom:30px!important;}.mb35{margin-bottom:35px!important;}.mb40{margin-bottom:40px!important;}.mb45{margin-bottom:45px!important;}.mb50{margin-bottom:50px!important;}.mb100{margin-bottom:100px!important;}.ml00{margin-left:0!important;}.ml05{margin-left:5px!important;}.ml10{margin-left:10px!important;}.ml15{margin-left:15px!important;}.ml20{margin-left:20px!important;}.ml25{margin-left:25px!important;}.ml30{margin-left:30px!important;}.ml35{margin-left:35px!important;}.ml40{margin-left:40px!important;}.ml45{margin-left:45px!important;}.ml50{margin-left:50px!important;}.mr00{margin-right:0!important;}.mr05{margin-right:5px!important;}.mr10{margin-right:10px!important;}.mr15{margin-right:15px!important;}.mr20{margin-right:20px!important;}.mr25{margin-right:25px!important;}.mr30{margin-right:30px!important;}.mr35{margin-right:35px!important;}.mr40{margin-right:40px!important;}.mr45{margin-right:45px!important;}.mr50{margin-right:50px!important;}
.p00{padding:0!important;}.p05{padding:5px!important;}.p10{padding:10px!important;}.p15{padding:15px!important;}.p20{padding:20px!important;}.p25{padding:25px!important;}.p30{padding:30px!important;}.p35{padding:35px!important;}.p40{padding:40px!important;}.p45{padding:45px!important;}.p50{padding:50px!important;}.pt00{padding-top:0!important;}.pt05{padding-top:5px!important;}.pt10{padding-top:10px!important;}.pt15{padding-top:15px!important;}.pt20{padding-top:20px!important;}.pt25{padding-top:25px!important;}.pt30{padding-top:30px!important;}.pt35{padding-top:35px!important;}.pt40{padding-top:40px!important;}.pt45{padding-top:45px!important;}.pt50{padding-top:50px!important;}.pb00{padding-bottom:0!important;}.pb05{padding-bottom:5px!important;}.pb10{padding-bottom:10px!important;}.pb15{padding-bottom:15px!important;}.pb20{padding-bottom:20px!important;}.pb25{padding-bottom:25px!important;}.pb30{padding-bottom:30px!important;}.pb35{padding-bottom:35px!important;}.pb40{padding-bottom:40px!important;}.pb45{padding-bottom:45px!important;}.pb50{padding-bottom:50px!important;}.pl00{padding-left:0!important;}.pr00{padding-right:0!important;}.pr05{padding-right:5px!important;}.pr10{padding-right:10px!important;}.pr15{padding-right:15px!important;}.pr20{padding-right:20px!important;}.pr25{padding-right:25px!important;}.pr30{padding-right:30px!important;}.pr35{padding-right:35px!important;}.pr40{padding-right:40px!important;}.pr45{padding-right:45px!important;}.pr50{padding-right:50px!important;}

/* ----------------------------------------
配置
------------------------------------------*/
.pR {
  position: relative !important;
}
.taL {
  text-align: left !important;
}
.taC {
  text-align: center !important;
}
.taR {
  text-align: right !important;
}
.aiC {
  align-items: center !important;
}

/* ----------------------------------------
表示分岐
------------------------------------------*/
.sp-only {
  display: none !important;
}
.res-show {
  display: none !important;
}
@media screen and (max-width: 1180px) {
  .res-show {
    display: block !important;
  }
  .res-none {
    display: none !important;
  }
}
@media screen and (max-width: 767px) {
  .sp-only {
    display: block !important;
  }
  .sp-none {
    display: none !important;
  }
}

/* ----------------------------------------
ページリンク
------------------------------------------*/
.link {
  color: #0B1E46;
  text-decoration: underline;
  word-break: break-all;
}
.anchor {
  scroll-margin-top: 80px;
}
@media screen and (max-width: 767px) {
  .anchor {
    scroll-margin-top: 50px;
  }
}

/* ----------------------------------------
はみ出し防止
------------------------------------------*/
.ofH {
  overflow: hidden;
}

/* ----------------------------------------
animate.cssカスタム
------------------------------------------*/
.animate__delay-01s {animation-delay: calc(var(--animate-delay) * 0.1);}
.animate__delay-02s {animation-delay: calc(var(--animate-delay) * 0.2);}
.animate__delay-03s {animation-delay: calc(var(--animate-delay) * 0.3);}
.animate__delay-04s {animation-delay: calc(var(--animate-delay) * 0.4);}
.animate__delay-05s {animation-delay: calc(var(--animate-delay) * 0.5);}
.animate__delay-06s {animation-delay: calc(var(--animate-delay) * 0.6);}
.animate__delay-07s {animation-delay: calc(var(--animate-delay) * 0.7);}
.animate__delay-08s {animation-delay: calc(var(--animate-delay) * 0.8);}
.animate__delay-09s {animation-delay: calc(var(--animate-delay) * 0.9);}
.animate__delay-10s {animation-delay: calc(var(--animate-delay) * 1);}
.animate__delay-11s {animation-delay: calc(var(--animate-delay) * 1.1);}
.animate__delay-12s {animation-delay: calc(var(--animate-delay) * 1.2);}
.animate__delay-13s {animation-delay: calc(var(--animate-delay) * 1.3);}
.animate__delay-14s {animation-delay: calc(var(--animate-delay) * 1.4);}
.animate__delay-15s {animation-delay: calc(var(--animate-delay) * 1.5);}
.animate__delay-16s {animation-delay: calc(var(--animate-delay) * 1.6);}
.animate__delay-17s {animation-delay: calc(var(--animate-delay) * 1.7);}
.animate__delay-18s {animation-delay: calc(var(--animate-delay) * 1.8);}
.animate__delay-19s {animation-delay: calc(var(--animate-delay) * 1.9);}
.animate__delay-20s {animation-delay: calc(var(--animate-delay) * 2);}


/*------------------------------
Loader
------------------------------*/
.Loader {
  width: 100%;/*100%で全画面表示*/
  height: 100%;/*100%で全画面表示*/
  background: #fff;/*背景色*/
  position: fixed;
  top: 0;/*画面上部からの位置*/
  left: 0;/*画面左部からの位置*/
  z-index: 9999;/*レイヤー(この他にpositionを使用していない場合は不要)*/
}
.Loader__Box {
    box-sizing: border-box;
    display: flex;
    flex: 0 1 auto;
    flex-direction: column;
    flex-grow: 1;
    flex-shrink: 0;
  width:100%;
  height:100%;
    align-items: center;
    justify-content: center;
    perspective: 500px;
}
@-webkit-keyframes ball-grid-pulse {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1); }
  50% {
    -webkit-transform: scale(0.5);
            transform: scale(0.5);
    opacity: 0.7; }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1; } }

@keyframes ball-grid-pulse {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1); }
  50% {
    -webkit-transform: scale(0.5);
            transform: scale(0.5);
    opacity: 0.7; }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1; } }

.ball-grid-pulse {
  width: 57px; }
  .ball-grid-pulse > div:nth-child(1) {
    -webkit-animation-delay: 0.22s;
            animation-delay: 0.22s;
    -webkit-animation-duration: 0.9s;
            animation-duration: 0.9s; }
  .ball-grid-pulse > div:nth-child(2) {
    -webkit-animation-delay: 0.64s;
            animation-delay: 0.64s;
    -webkit-animation-duration: 1s;
            animation-duration: 1s; }
  .ball-grid-pulse > div:nth-child(3) {
    -webkit-animation-delay: -0.15s;
            animation-delay: -0.15s;
    -webkit-animation-duration: 0.63s;
            animation-duration: 0.63s; }
  .ball-grid-pulse > div:nth-child(4) {
    -webkit-animation-delay: -0.03s;
            animation-delay: -0.03s;
    -webkit-animation-duration: 1.24s;
            animation-duration: 1.24s; }
  .ball-grid-pulse > div:nth-child(5) {
    -webkit-animation-delay: 0.08s;
            animation-delay: 0.08s;
    -webkit-animation-duration: 1.37s;
            animation-duration: 1.37s; }
  .ball-grid-pulse > div:nth-child(6) {
    -webkit-animation-delay: 0.43s;
            animation-delay: 0.43s;
    -webkit-animation-duration: 1.55s;
            animation-duration: 1.55s; }
  .ball-grid-pulse > div:nth-child(7) {
    -webkit-animation-delay: 0.05s;
            animation-delay: 0.05s;
    -webkit-animation-duration: 0.7s;
            animation-duration: 0.7s; }
  .ball-grid-pulse > div:nth-child(8) {
    -webkit-animation-delay: 0.05s;
            animation-delay: 0.05s;
    -webkit-animation-duration: 0.97s;
            animation-duration: 0.97s; }
  .ball-grid-pulse > div:nth-child(9) {
    -webkit-animation-delay: 0.3s;
            animation-delay: 0.3s;
    -webkit-animation-duration: 0.63s;
            animation-duration: 0.63s; }
  .ball-grid-pulse > div {
    background-color: #446aec;
    width: 15px;
    height: 15px;
    border-radius: 100%;
    margin: 2px;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
    display: inline-block;
    float: left;
    -webkit-animation-name: ball-grid-pulse;
            animation-name: ball-grid-pulse;
    -webkit-animation-iteration-count: infinite;
            animation-iteration-count: infinite;
    -webkit-animation-delay: 0;
            animation-delay: 0;
            }