@charset "UTF-8";
/* ===================================================================
	file name: defult.css
=================================================================== */
/* contents
----------------------------------------
 * reset                  /*リセット
 * default settings       /*デフォルトセッティング
 * font                   /*フォント･テキスト関係
 * clearfix               /*クリアフィックス
 * float/display/flex     /*フロート・ディスプレイ関係
 * rollover               /*cssロールオーバー
 * fade Animation         /*フェード アニメーション
 * margin                 /*マージン調整
 * padding                /*パディング調整
 * scrollbar              /*フスクロールバー
 * CSS Animation          /*CSS アニメション
 * js Animation           /*jS アニメーション
 * popup modal            /*モーダルウィンドウ設定

---------------------------------------- */
/* =========================================================
 * reset                  /*リセット
========================================================= */
@import url("https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&family=Roboto+Condensed:ital,wght@0,100..900;1,100..900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Roboto+Condensed:ital,wght@0,100..900;1,100..900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Barlow+Condensed:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Overpass:ital,wght@0,100..900;1,100..900&family=Zen+Kaku+Gothic+New&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Oswald:wght@200..700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");
blockquote,
body,
div,
dl,
dt,
dd,
fieldset,
form,
h1,
h2,
h3,
h4,
h5,
h6,
input,
li,
ol,
p,
pre,
select,
span,
textarea,
td,
th,
ul,
figure,
figcaption {
  margin: 0px;
  padding: 0px;
}

fieldset,
img {
  border: 0;
}

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

ol {
  list-style-type: none;
}

ul {
  list-style-type: none;
}
ul li {
  list-style-type: none;
}
ul li img {
  line-height: 0;
  font-size: 0;
  vertical-align: top;
}

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

caption,
th {
  text-align: left;
}

iframe {
  border: none;
}

a:focus {
  outline: none;
}

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

/* IE */
* html ul li dl,
* html ol li dl {
  display: inline;
}
*:first-child + html ul li dl,
*:first-child + html ol li dl {
  display: inline;
}

/* =========================================================
 * default settings       /*デフォルトセッティング
========================================================= */
* {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  word-break: break-all;
  /*CJK (中国語、台湾語、日本語、韓国語) 以外のテキストにおいて、単語中などでの文字の改行に関する禁則処理を解除し、どの文字の間でも改行するようにします。*/
}

html,
body {
  font-size: 62.5%;
  overflow: auto;
}

body {
  overflow: hidden;
  -webkit-text-size-adjust: 100%;
  font: inherit;
  font-size: 1vw;
  font-family: YuGothic, "Yu Gothic medium", "Yu Gothic", "Hiragino Sans", Meiryo, "sans-serif";
  font-weight: 400;
  line-height: 1.4;
  font-feature-settings: "palt";
  /*日本語フォントの文字間隔（カーニング）全角スペースを詰める調整、句読点や括弧などの約物を含めた文字間をしっかり詰めてくれます。*/
  color: #231815;
  background: #fff;
}

main {
  display: block;
}

/*リンクテキスト全般の設定*/
a {
  width: 100%;
  height: 100%;
  display: block;
  text-decoration: none;
  color: #000;
  -webkit-transition: opacity 0.3s ease-out;
  -moz-transition: opacity 0.3s ease-out;
  -ms-transition: opacity 0.3s ease-out;
  transition: opacity 0.3s ease-out;
}
a:hover {
  opacity: .7;
  -webkit-opacity: .7;
  -moz-opacity: .7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}

.disabled {
  pointer-events: none;
}

.soon {
  pointer-events: none;
  opacity: .5;
}

.hide,
.hidden {
  visibility: hidden;
}

/*テキスト周りのタグ*/
p {
  line-break: strict;
  text-align: justify;
}

/*注釈 annotation*/
.txtanno {
  font-size: 0.8333333333vw !important;
  font-weight: 400;
  line-height: 1.2 !important;
  text-align: left;
  display: block;
  text-indent: -1em;
  padding-left: 1em;
  margin: 1em 0;
}

/*上付き*/
.txtsup {
  vertical-align: super;
}

/*下付き*/
.txtsub {
  vertical-align: sub;
}

/*画像全般の設定*/
img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
  border: none;
}

/*videoタグ*/
video {
  max-width: 100%;
}

/*iframeタグ*/
iframe {
  width: 100%;
}

/*レスポンシブ切り替え表示の設定*/
.pc {
  display: block;
}

.sp {
  display: none;
}

@media screen and (max-width: 767px) {
  body {
    min-width: 100%;
    font-size: 3.2vw;
  }

  /*リンクテキスト全般の設定*/
  a {
    -webkit-transition: none;
    -moz-transition: none;
    -ms-transition: none;
    transition: none;
  }
  a:hover {
    opacity: 1;
    -webkit-opacity: 1;
    -moz-opacity: 1;
    filter: alpha(opacity=100);
    /* IE lt 8 */
    -ms-filter: "alpha(opacity=100)";
    /* IE 8 */
  }

  /*画像全般の設定*/
  img {
    width: 100%;
  }

  /*テキスト周りのタグ*/
  /*注釈 annotation*/
  .txtanno {
    font-size: 2.6666666667vw !important;
  }

  /*レスポンシブ切り替え表示の設定*/
  .pc {
    display: none;
  }

  .sp {
    display: block;
  }
}
/* =========================================================
 * font                   /*フォント･テキスト関係
========================================================= */
/* ウェイト・サイズ */
.fNormal {
  font-weight: normal;
}

.fBold {
  font-weight: bold;
}

.fItalic {
  font-style: italic;
}

.f09 {
  font-size: 75% !important;
}

/* base 13px = 9px  */
.f10 {
  font-size: 77% !important;
}

/* base 13px = 10px */
.f11 {
  font-size: 85% !important;
}

/* base 13px = 11px */
.f12 {
  font-size: 93% !important;
}

/* base 13px        */
.f13 {
  font-size: 100% !important;
}

/* base 13px = 13px */
.f14 {
  font-size: 108% !important;
}

/* base 13px = 14px */
.f15 {
  font-size: 116% !important;
}

/* base 13px = 15px */
.f16 {
  font-size: 124% !important;
}

/* base 13px = 16px */
.f17 {
  font-size: 131% !important;
}

/* base 13px = 17px */
.f18 {
  font-size: 139% !important;
}

/* base 13px = 18px */
.f19 {
  font-size: 147% !important;
}

/* base 13px = 18px */
.f20 {
  font-size: 154% !important;
}

/* base 13px = 18px */
/* カラー */
　
.txtC {
  text-align: center;
}

.txtR {
  text-align: right;
}

.txtL {
  text-align: left;
}

/* テキストインデント */
.hidetxt,
.hd {
  line-height: 150;
  overflow: hidden;
}
.hidetxt a,
.hd a {
  overflow: hidden;
}

/*Lato*/
/*Roboto Condensed & Roboto*/
/*barlow-condensed*/
/*zen kaku*/
/*Noto Sans Japanese*/
/*Oawald*/
/*poppins*/
.poppins-thin {
  font-family: "Poppins", sans-serif;
  font-weight: 100;
}

.poppins-extralight {
  font-family: "Poppins", sans-serif;
  font-weight: 200;
}

.poppins-light {
  font-family: "Poppins", sans-serif;
  font-weight: 300;
}

.poppins-regular {
  font-family: "Poppins", sans-serif;
  font-weight: 400;
}

.poppins-medium {
  font-family: "Poppins", sans-serif;
  font-weight: 500;
}

.poppins-semibold {
  font-family: "Poppins", sans-serif;
  font-weight: 600;
}

.poppins-bold {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
}

.poppins-extrabold {
  font-family: "Poppins", sans-serif;
  font-weight: 800;
}

.poppins-black {
  font-family: "Poppins", sans-serif;
  font-weight: 900;
}

/* =========================================================
 * clearfix               /*クリアフィックス
========================================================= */
/* For modern browsers */
.clearfix {
  zoom: 1;
  /* For IE 6/7 (trigger hasLayout) */
}
.clearfix:before, .clearfix:after {
  content: "";
  display: table;
}
.clearfix:after {
  clear: both;
}

/* =========================================================
 * float/display/flex     /*フロート・ディスプレイ関係
========================================================= */
/* float*/
.flotL {
  display: inline;
  float: left;
}

.flotR {
  display: inline;
  float: right;
}

.ovhid {
  overflow: hidden;
  zoom: 1;
}

/*display*/
.block {
  display: block;
}

.none {
  display: none;
}

.inline {
  display: inline;
}

.inlineb {
  display: inline-block;
}

.bnone {
  border: none !important;
}

/*flex*/
.flex {
  display: flex;
}

.flexjcA {
  justify-content: space-around;
}

.flexjcB {
  justify-content: space-between;
}

.flexjcC {
  justify-content: center;
}

.flexrow-r {
  flex-direction: row-reverse;
}

.flexrow {
  flex-direction: row;
}

.flexaiB {
  align-items: baseline;
}

.flexaiS {
  align-items: flex-start;
}

.flexaiE {
  align-items: flex-end;
}

.flexaiC {
  align-items: center;
}

/* =========================================================
 * rollover               /*cssロールオーバー
========================================================= */
.hover a:hover img {
  opacity: .7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha( opacity=70 )";
}

/* =========================================================
 * fade Animation         /*フェード アニメーション
========================================================= */
.fade,
.fadein,
.fadein-top,
.fadein-left,
.fadein-right,
.opening,
.fadein-popup {
  position: relative;
  opacity: 0;
  transition: opacity 0.875s ease-in-out , transform 0.875s ease-in-out;
}

.fade {
  transform: translate(0, 0);
}

.fadein {
  transform: translate(0, 50px);
}

.fadein-top {
  transform: translate(0, -50px);
}

.fadein-left {
  transform: translate(-50px, 0);
}

.fadein-right {
  transform: translate(50px, 0);
}

.fadein-popup {
  translate: none;
  rotate: none;
  scale: none;
  transform: translateY(20px) scale(0.8) !important;
  transition: opacity 0.5s ease-in-out , transform 0.5s ease-in-out;
}

.fade.scrollin,
.fadein.scrollin,
.fadein-top.scrollin,
.fadein-left.scrollin,
.fadein-right.scrollin,
.opening.active {
  opacity: 1;
  transform: translate(0, 0);
}

.fadein-popup.scrollin {
  transform: translate(0, 0) scale(1) !important;
  animation: popup 0.55s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

.fadein-topleft {
  animation: topleft 10s infinite linear 1s both;
}

.fadein-topright {
  animation: topright 6.3s infinite linear 1s both;
}

.fadein-topright02 {
  animation: topright 9.5s infinite linear 1s both;
}

.fadein-bottomleft {
  animation: bottomleft 5.5s infinite linear 1s both;
}

.fadein-bottomright {
  animation: bottomright 5.5s infinite linear 1s both;
}

@keyframes topleft {
  0% {
    transform: translate(-50%, -50%);
  }
  100% {
    transform: translate(250%, 250%);
  }
}
@keyframes topright {
  0% {
    transform: translate(50%, 50%);
  }
  100% {
    transform: translate(-100%, 200%);
  }
}
@keyframes bottomleft {
  0% {
    transform: translate(-50%, -50%);
  }
  100% {
    transform: translate(150%, -250%);
  }
}
@keyframes bottomright {
  0% {
    transform: translate(50%, 50%);
  }
  100% {
    transform: translate(-150%, 250%);
  }
}
@keyframes popup {
  0% {
    opacity: 0;
  }
  80%, 100% {
    opacity: 1;
  }
}
/* =========================================================
 * margin                 /*マージン調整
========================================================= */
.mt00 {
  margin-top: 0 !important;
}

.mt05 {
  margin-top: 0.4166666667vw !important;
}

.mt10 {
  margin-top: 0.8333333333vw !important;
}

.mt12 {
  margin-top: 1vw !important;
}

.mt15 {
  margin-top: 1.25vw !important;
}

.mt20 {
  margin-top: 1.6666666667vw !important;
}

.mt25 {
  margin-top: 2.0833333333vw !important;
}

.mt30 {
  margin-top: 2.5vw !important;
}

.mt35 {
  margin-top: 2.9166666667vw !important;
}

.mt40 {
  margin-top: 3.3333333333vw !important;
}

.mt45 {
  margin-top: 3.75vw !important;
}

.mt50 {
  margin-top: 4.1666666667vw !important;
}

.mt55 {
  margin-top: 4.5833333333vw !important;
}

.mt60 {
  margin-top: 5vw !important;
}

.mt65 {
  margin-top: 5.4166666667vw !important;
}

.mt70 {
  margin-top: 5.8333333333vw !important;
}

.mt75 {
  margin-top: 6.25vw !important;
}

.mt80 {
  margin-top: 6.6666666667vw !important;
}

.mt85 {
  margin-top: 7.0833333333vw !important;
}

.mt90 {
  margin-top: 7.5vw !important;
}

.mt95 {
  margin-top: 7.9166666667vw !important;
}

.mt100 {
  margin-top: 8.3333333333vw !important;
}

.mr00 {
  margin-right: 0 !important;
}

.mr05 {
  margin-right: 0.4166666667vw !important;
}

.mr10 {
  margin-right: 0.8333333333vw !important;
}

.mr12 {
  margin-right: 1vw !important;
}

.mr15 {
  margin-right: 1.25vw !important;
}

.mr20 {
  margin-right: 1.6666666667vw !important;
}

.mr25 {
  margin-right: 2.0833333333vw !important;
}

.mr30 {
  margin-right: 2.5vw !important;
}

.mr35 {
  margin-right: 2.9166666667vw !important;
}

.mr40 {
  margin-right: 3.3333333333vw !important;
}

.mr45 {
  margin-right: 3.75vw !important;
}

.mr50 {
  margin-right: 4.1666666667vw !important;
}

.mr55 {
  margin-right: 4.5833333333vw !important;
}

.mr60 {
  margin-right: 5vw !important;
}

.mr65 {
  margin-right: 5.4166666667vw !important;
}

.mr70 {
  margin-right: 5.8333333333vw !important;
}

.mr75 {
  margin-right: 6.25vw !important;
}

.mr80 {
  margin-right: 6.6666666667vw !important;
}

.mr85 {
  margin-right: 7.0833333333vw !important;
}

.mr90 {
  margin-right: 7.5vw !important;
}

.mr95 {
  margin-right: 7.9166666667vw !important;
}

.mr100 {
  margin-right: 8.3333333333vw !important;
}

.mb00 {
  margin-bottom: 0 !important;
}

.mb05 {
  margin-bottom: 0.4166666667vw !important;
}

.mb10 {
  margin-bottom: 0.8333333333vw !important;
}

.mb12 {
  margin-bottom: 1vw !important;
}

.mb15 {
  margin-bottom: 1.25vw !important;
}

.mb20 {
  margin-bottom: 1.6666666667vw !important;
}

.mb25 {
  margin-bottom: 2.0833333333vw !important;
}

.mb30 {
  margin-bottom: 2.5vw !important;
}

.mb35 {
  margin-bottom: 2.9166666667vw !important;
}

.mb40 {
  margin-bottom: 3.3333333333vw !important;
}

.mb45 {
  margin-bottom: 3.75vw !important;
}

.mb50 {
  margin-bottom: 4.1666666667vw !important;
}

.mb55 {
  margin-bottom: 4.5833333333vw !important;
}

.mb60 {
  margin-bottom: 5vw !important;
}

.mb65 {
  margin-bottom: 5.4166666667vw !important;
}

.mb70 {
  margin-bottom: 5.8333333333vw !important;
}

.mb75 {
  margin-bottom: 6.25vw !important;
}

.mb80 {
  margin-bottom: 6.6666666667vw !important;
}

.mb85 {
  margin-bottom: 7.0833333333vw !important;
}

.mb90 {
  margin-bottom: 7.5vw !important;
}

.mb95 {
  margin-bottom: 7.9166666667vw !important;
}

.mb100 {
  margin-bottom: 8.3333333333vw !important;
}

.ml00 {
  margin-left: 0 !important;
}

.ml05 {
  margin-left: 0.4166666667vw !important;
}

.ml10 {
  margin-left: 0.8333333333vw !important;
}

.ml12 {
  margin-left: 1vw !important;
}

.ml15 {
  margin-left: 1.25vw !important;
}

.ml20 {
  margin-left: 1.6666666667vw !important;
}

.ml25 {
  margin-left: 2.0833333333vw !important;
}

.ml30 {
  margin-left: 2.5vw !important;
}

.ml35 {
  margin-left: 2.9166666667vw !important;
}

.ml40 {
  margin-left: 3.3333333333vw !important;
}

.ml45 {
  margin-left: 3.75vw !important;
}

.ml50 {
  margin-left: 4.1666666667vw !important;
}

.ml55 {
  margin-left: 4.5833333333vw !important;
}

.ml60 {
  margin-left: 5vw !important;
}

.ml65 {
  margin-left: 5.4166666667vw !important;
}

.ml70 {
  margin-left: 5.8333333333vw !important;
}

.ml75 {
  margin-left: 6.25vw !important;
}

.ml80 {
  margin-left: 6.6666666667vw !important;
}

.ml85 {
  margin-left: 7.0833333333vw !important;
}

.ml90 {
  margin-left: 7.5vw !important;
}

.ml95 {
  margin-left: 7.9166666667vw !important;
}

.ml100 {
  margin-left: 8.3333333333vw !important;
}

@media screen and (max-width: 767px) {
  .mt00 {
    margin-top: 0 !important;
  }

  .mt05 {
    margin-top: 2.6666666667vw !important;
  }

  .mt10 {
    margin-top: 5.3333333333vw !important;
  }

  .mt12 {
    margin-top: 6.4vw !important;
  }

  .mt15 {
    margin-top: 8vw !important;
  }

  .mt20 {
    margin-top: 10.6666666667vw !important;
  }

  .mt25 {
    margin-top: 13.3333333333vw !important;
  }

  .mt30 {
    margin-top: 16vw !important;
  }

  .mt35 {
    margin-top: 18.6666666667vw !important;
  }

  .mt40 {
    margin-top: 21.3333333333vw !important;
  }

  .mt45 {
    margin-top: 24vw !important;
  }

  .mt50 {
    margin-top: 26.6666666667vw !important;
  }

  .mt55 {
    margin-top: 29.3333333333vw !important;
  }

  .mt60 {
    margin-top: 32vw !important;
  }

  .mt65 {
    margin-top: 34.6666666667vw !important;
  }

  .mt70 {
    margin-top: 37.3333333333vw !important;
  }

  .mt75 {
    margin-top: 40vw !important;
  }

  .mt80 {
    margin-top: 42.6666666667vw !important;
  }

  .mt85 {
    margin-top: 45.3333333333vw !important;
  }

  .mt90 {
    margin-top: 48vw !important;
  }

  .mt95 {
    margin-top: 50.6666666667vw !important;
  }

  .mt100 {
    margin-top: 53.3333333333vw !important;
  }

  .mr00 {
    margin-right: 0 !important;
  }

  .mr05 {
    margin-right: 2.6666666667vw !important;
  }

  .mr10 {
    margin-right: 5.3333333333vw !important;
  }

  .mr12 {
    margin-right: 6.4vw !important;
  }

  .mr15 {
    margin-right: 8vw !important;
  }

  .mr20 {
    margin-right: 10.6666666667vw !important;
  }

  .mr25 {
    margin-right: 13.3333333333vw !important;
  }

  .mr30 {
    margin-right: 16vw !important;
  }

  .mr35 {
    margin-right: 18.6666666667vw !important;
  }

  .mr40 {
    margin-right: 21.3333333333vw !important;
  }

  .mr45 {
    margin-right: 24vw !important;
  }

  .mr50 {
    margin-right: 26.6666666667vw !important;
  }

  .mr55 {
    margin-right: 29.3333333333vw !important;
  }

  .mr60 {
    margin-right: 32vw !important;
  }

  .mr65 {
    margin-right: 34.6666666667vw !important;
  }

  .mr70 {
    margin-right: 37.3333333333vw !important;
  }

  .mr75 {
    margin-right: 40vw !important;
  }

  .mr80 {
    margin-right: 42.6666666667vw !important;
  }

  .mr85 {
    margin-right: 45.3333333333vw !important;
  }

  .mr90 {
    margin-right: 48vw !important;
  }

  .mr95 {
    margin-right: 50.6666666667vw !important;
  }

  .mr100 {
    margin-right: 53.3333333333vw !important;
  }

  .mb00 {
    margin-bottom: 0 !important;
  }

  .mb05 {
    margin-bottom: 2.6666666667vw !important;
  }

  .mb10 {
    margin-bottom: 5.3333333333vw !important;
  }

  .mb12 {
    margin-bottom: 6.4vw !important;
  }

  .mb15 {
    margin-bottom: 8vw !important;
  }

  .mb20 {
    margin-bottom: 10.6666666667vw !important;
  }

  .mb25 {
    margin-bottom: 13.3333333333vw !important;
  }

  .mb30 {
    margin-bottom: 16vw !important;
  }

  .mb35 {
    margin-bottom: 18.6666666667vw !important;
  }

  .mb40 {
    margin-bottom: 21.3333333333vw !important;
  }

  .mb45 {
    margin-bottom: 24vw !important;
  }

  .mb50 {
    margin-bottom: 26.6666666667vw !important;
  }

  .mb55 {
    margin-bottom: 29.3333333333vw !important;
  }

  .mb60 {
    margin-bottom: 32vw !important;
  }

  .mb65 {
    margin-bottom: 34.6666666667vw !important;
  }

  .mb70 {
    margin-bottom: 37.3333333333vw !important;
  }

  .mb75 {
    margin-bottom: 40vw !important;
  }

  .mb80 {
    margin-bottom: 42.6666666667vw !important;
  }

  .mb85 {
    margin-bottom: 45.3333333333vw !important;
  }

  .mb90 {
    margin-bottom: 48vw !important;
  }

  .mb95 {
    margin-bottom: 50.6666666667vw !important;
  }

  .mb100 {
    margin-bottom: 53.3333333333vw !important;
  }

  .ml00 {
    margin-left: 0 !important;
  }

  .ml05 {
    margin-left: 2.6666666667vw !important;
  }

  .ml10 {
    margin-left: 5.3333333333vw !important;
  }

  .ml12 {
    margin-left: 6.4vw !important;
  }

  .ml15 {
    margin-left: 8vw !important;
  }

  .ml20 {
    margin-left: 10.6666666667vw !important;
  }

  .ml25 {
    margin-left: 13.3333333333vw !important;
  }

  .ml30 {
    margin-left: 16vw !important;
  }

  .ml35 {
    margin-left: 18.6666666667vw !important;
  }

  .ml40 {
    margin-left: 21.3333333333vw !important;
  }

  .ml45 {
    margin-left: 24vw !important;
  }

  .ml50 {
    margin-left: 26.6666666667vw !important;
  }

  .ml55 {
    margin-left: 29.3333333333vw !important;
  }

  .ml60 {
    margin-left: 32vw !important;
  }

  .ml65 {
    margin-left: 34.6666666667vw !important;
  }

  .ml70 {
    margin-left: 37.3333333333vw !important;
  }

  .ml75 {
    margin-left: 40vw !important;
  }

  .ml80 {
    margin-left: 42.6666666667vw !important;
  }

  .ml85 {
    margin-left: 45.3333333333vw !important;
  }

  .ml90 {
    margin-left: 48vw !important;
  }

  .ml95 {
    margin-left: 50.6666666667vw !important;
  }

  .ml100 {
    margin-left: 53.3333333333vw !important;
  }
}
/* ======================================================
 * padding                /*パディング調整
====================================================== */
.pt00 {
  padding-top: 0 !important;
}

.pt05 {
  padding-top: 0.4166666667vw !important;
}

.pt10 {
  padding-top: 0.8333333333vw !important;
}

.pt12 {
  padding-top: 1vw !important;
}

.pt15 {
  padding-top: 1.25vw !important;
}

.pt20 {
  padding-top: 1.6666666667vw !important;
}

.pt25 {
  padding-top: 2.0833333333vw !important;
}

.pt30 {
  padding-top: 2.5vw !important;
}

.pt35 {
  padding-top: 2.9166666667vw !important;
}

.pt40 {
  padding-top: 3.3333333333vw !important;
}

.pt45 {
  padding-top: 3.75vw !important;
}

.pt50 {
  padding-top: 4.1666666667vw !important;
}

.pt55 {
  padding-top: 4.5833333333vw !important;
}

.pt60 {
  padding-top: 5vw !important;
}

.pt65 {
  padding-top: 5.4166666667vw !important;
}

.pt70 {
  padding-top: 5.8333333333vw !important;
}

.pt75 {
  padding-top: 6.25vw !important;
}

.pt80 {
  padding-top: 6.6666666667vw !important;
}

.pt85 {
  padding-top: 7.0833333333vw !important;
}

.pt90 {
  padding-top: 7.5vw !important;
}

.pt95 {
  padding-top: 7.9166666667vw !important;
}

.pt100 {
  padding-top: 8.3333333333vw !important;
}

.pr00 {
  padding-right: 0 !important;
}

.pr05 {
  padding-right: 0.4166666667vw !important;
}

.pr10 {
  padding-right: 0.8333333333vw !important;
}

.pr12 {
  padding-right: 1vw !important;
}

.pr15 {
  padding-right: 1.25vw !important;
}

.pr20 {
  padding-right: 1.6666666667vw !important;
}

.pr25 {
  padding-right: 2.0833333333vw !important;
}

.pr30 {
  padding-right: 2.5vw !important;
}

.pr35 {
  padding-right: 2.9166666667vw !important;
}

.pr40 {
  padding-right: 3.3333333333vw !important;
}

.pr45 {
  padding-right: 3.75vw !important;
}

.pr50 {
  padding-right: 4.1666666667vw !important;
}

.pr55 {
  padding-right: 4.5833333333vw !important;
}

.pr60 {
  padding-right: 5vw !important;
}

.pr65 {
  padding-right: 5.4166666667vw !important;
}

.pr70 {
  padding-right: 5.8333333333vw !important;
}

.pr75 {
  padding-right: 6.25vw !important;
}

.pr80 {
  padding-right: 6.6666666667vw !important;
}

.pr85 {
  padding-right: 7.0833333333vw !important;
}

.pr90 {
  padding-right: 7.5vw !important;
}

.pr95 {
  padding-right: 7.9166666667vw !important;
}

.pr100 {
  padding-right: 8.3333333333vw !important;
}

.pb00 {
  padding-bottom: 0 !important;
}

.pb05 {
  padding-bottom: 0.4166666667vw !important;
}

.pb10 {
  padding-bottom: 0.8333333333vw !important;
}

.pb12 {
  padding-bottom: 1vw !important;
}

.pb15 {
  padding-bottom: 1.25vw !important;
}

.pb20 {
  padding-bottom: 1.6666666667vw !important;
}

.pb25 {
  padding-bottom: 2.0833333333vw !important;
}

.pb30 {
  padding-bottom: 2.5vw !important;
}

.pb35 {
  padding-bottom: 2.9166666667vw !important;
}

.pb40 {
  padding-bottom: 3.3333333333vw !important;
}

.pb45 {
  padding-bottom: 3.75vw !important;
}

.pb50 {
  padding-bottom: 4.1666666667vw !important;
}

.pb55 {
  padding-bottom: 4.5833333333vw !important;
}

.pb60 {
  padding-bottom: 5vw !important;
}

.pb65 {
  padding-bottom: 5.4166666667vw !important;
}

.pb70 {
  padding-bottom: 5.8333333333vw !important;
}

.pb75 {
  padding-bottom: 6.25vw !important;
}

.pb80 {
  padding-bottom: 6.6666666667vw !important;
}

.pb85 {
  padding-bottom: 7.0833333333vw !important;
}

.pb90 {
  padding-bottom: 7.5vw !important;
}

.pb95 {
  padding-bottom: 7.9166666667vw !important;
}

.pb100 {
  padding-bottom: 8.3333333333vw !important;
}

.pl00 {
  padding-left: 0 !important;
}

.pl05 {
  padding-left: 0.4166666667vw !important;
}

.pl10 {
  padding-left: 0.8333333333vw !important;
}

.pl12 {
  padding-left: 1vw !important;
}

.pl15 {
  padding-left: 1.25vw !important;
}

.pl20 {
  padding-left: 1.6666666667vw !important;
}

.pl25 {
  padding-left: 2.0833333333vw !important;
}

.pl30 {
  padding-left: 2.5vw !important;
}

.pl35 {
  padding-left: 2.9166666667vw !important;
}

.pl40 {
  padding-left: 3.3333333333vw !important;
}

.pl45 {
  padding-left: 3.75vw !important;
}

.pl50 {
  padding-left: 4.1666666667vw !important;
}

.pl55 {
  padding-left: 4.5833333333vw !important;
}

.pl60 {
  padding-left: 5vw !important;
}

.pl65 {
  padding-left: 5.4166666667vw !important;
}

.pl70 {
  padding-left: 5.8333333333vw !important;
}

.pl75 {
  padding-left: 6.25vw !important;
}

.pl80 {
  padding-left: 6.6666666667vw !important;
}

.pl85 {
  padding-left: 7.0833333333vw !important;
}

.pl90 {
  padding-left: 7.5vw !important;
}

.pl95 {
  padding-left: 7.9166666667vw !important;
}

.pl100 {
  padding-left: 8.3333333333vw !important;
}

@media screen and (max-width: 767px) {
  .pt00 {
    padding-top: 0 !important;
  }

  .pt05 {
    padding-top: 2.6666666667vw !important;
  }

  .pt10 {
    padding-top: 5.3333333333vw !important;
  }

  .pt12 {
    padding-top: 6.4vw !important;
  }

  .pt15 {
    padding-top: 8vw !important;
  }

  .pt20 {
    padding-top: 10.6666666667vw !important;
  }

  .pt25 {
    padding-top: 13.3333333333vw !important;
  }

  .pt30 {
    padding-top: 16vw !important;
  }

  .pt35 {
    padding-top: 18.6666666667vw !important;
  }

  .pt40 {
    padding-top: 21.3333333333vw !important;
  }

  .pt45 {
    padding-top: 24vw !important;
  }

  .pt50 {
    padding-top: 26.6666666667vw !important;
  }

  .pt55 {
    padding-top: 29.3333333333vw !important;
  }

  .pt60 {
    padding-top: 32vw !important;
  }

  .pt65 {
    padding-top: 34.6666666667vw !important;
  }

  .pt70 {
    padding-top: 37.3333333333vw !important;
  }

  .pt75 {
    padding-top: 40vw !important;
  }

  .pt80 {
    padding-top: 42.6666666667vw !important;
  }

  .pt85 {
    padding-top: 45.3333333333vw !important;
  }

  .pt90 {
    padding-top: 48vw !important;
  }

  .pt95 {
    padding-top: 50.6666666667vw !important;
  }

  .pt100 {
    padding-top: 53.3333333333vw !important;
  }

  .pr00 {
    padding-right: 0 !important;
  }

  .pr05 {
    padding-right: 2.6666666667vw !important;
  }

  .pr10 {
    padding-right: 5.3333333333vw !important;
  }

  .pr12 {
    padding-right: 6.4vw !important;
  }

  .pr15 {
    padding-right: 8vw !important;
  }

  .pr20 {
    padding-right: 10.6666666667vw !important;
  }

  .pr25 {
    padding-right: 13.3333333333vw !important;
  }

  .pr30 {
    padding-right: 16vw !important;
  }

  .pr35 {
    padding-right: 18.6666666667vw !important;
  }

  .pr40 {
    padding-right: 21.3333333333vw !important;
  }

  .pr45 {
    padding-right: 24vw !important;
  }

  .pr50 {
    padding-right: 26.6666666667vw !important;
  }

  .pr55 {
    padding-right: 29.3333333333vw !important;
  }

  .pr60 {
    padding-right: 32vw !important;
  }

  .pr65 {
    padding-right: 34.6666666667vw !important;
  }

  .pr70 {
    padding-right: 37.3333333333vw !important;
  }

  .pr75 {
    padding-right: 40vw !important;
  }

  .pr80 {
    padding-right: 42.6666666667vw !important;
  }

  .pr85 {
    padding-right: 45.3333333333vw !important;
  }

  .pr90 {
    padding-right: 48vw !important;
  }

  .pr95 {
    padding-right: 50.6666666667vw !important;
  }

  .pr100 {
    padding-right: 53.3333333333vw !important;
  }

  .pb00 {
    padding-bottom: 0 !important;
  }

  .pb05 {
    padding-bottom: 2.6666666667vw !important;
  }

  .pb10 {
    padding-bottom: 5.3333333333vw !important;
  }

  .pb12 {
    padding-bottom: 6.4vw !important;
  }

  .pb15 {
    padding-bottom: 8vw !important;
  }

  .pb20 {
    padding-bottom: 10.6666666667vw !important;
  }

  .pb25 {
    padding-bottom: 13.3333333333vw !important;
  }

  .pb30 {
    padding-bottom: 16vw !important;
  }

  .pb35 {
    padding-bottom: 18.6666666667vw !important;
  }

  .pb40 {
    padding-bottom: 21.3333333333vw !important;
  }

  .pb45 {
    padding-bottom: 24vw !important;
  }

  .pb50 {
    padding-bottom: 26.6666666667vw !important;
  }

  .pb55 {
    padding-bottom: 29.3333333333vw !important;
  }

  .pb60 {
    padding-bottom: 32vw !important;
  }

  .pb65 {
    padding-bottom: 34.6666666667vw !important;
  }

  .pb70 {
    padding-bottom: 37.3333333333vw !important;
  }

  .pb75 {
    padding-bottom: 40vw !important;
  }

  .pb80 {
    padding-bottom: 42.6666666667vw !important;
  }

  .pb85 {
    padding-bottom: 45.3333333333vw !important;
  }

  .pb90 {
    padding-bottom: 48vw !important;
  }

  .pb95 {
    padding-bottom: 50.6666666667vw !important;
  }

  .pb100 {
    padding-bottom: 53.3333333333vw !important;
  }

  .pl00 {
    padding-left: 0 !important;
  }

  .pl05 {
    padding-left: 2.6666666667vw !important;
  }

  .pl10 {
    padding-left: 5.3333333333vw !important;
  }

  .pl12 {
    padding-left: 6.4vw !important;
  }

  .pl15 {
    padding-left: 8vw !important;
  }

  .pl20 {
    padding-left: 10.6666666667vw !important;
  }

  .pl25 {
    padding-left: 13.3333333333vw !important;
  }

  .pl30 {
    padding-left: 16vw !important;
  }

  .pl35 {
    padding-left: 18.6666666667vw !important;
  }

  .pl40 {
    padding-left: 21.3333333333vw !important;
  }

  .pl45 {
    padding-left: 24vw !important;
  }

  .pl50 {
    padding-left: 26.6666666667vw !important;
  }

  .pl55 {
    padding-left: 29.3333333333vw !important;
  }

  .pl60 {
    padding-left: 32vw !important;
  }

  .pl65 {
    padding-left: 34.6666666667vw !important;
  }

  .pl70 {
    padding-left: 37.3333333333vw !important;
  }

  .pl75 {
    padding-left: 40vw !important;
  }

  .pl80 {
    padding-left: 42.6666666667vw !important;
  }

  .pl85 {
    padding-left: 45.3333333333vw !important;
  }

  .pl90 {
    padding-left: 48vw !important;
  }

  .pl95 {
    padding-left: 50.6666666667vw !important;
  }

  .pl100 {
    padding-left: 53.3333333333vw !important;
  }
}
/* =========================================================
 * CSS Animation          /*CSS アニメション
========================================================= */
/*<div class="scroll">
	<div class="scroll--inner">
		<span>Scroll</span>
		<div class="bar"></div>
	</div>
</div>*/
.scroll {
  position: absolute;
  bottom: -2.5vw;
  left: 50%;
  transform: translateX(-50%);
  z-index: 9;
}
.scroll--inner {
  position: relative;
}
.scroll--inner span {
  font-size: 1.1666666667vw;
  font-weight: 300;
  line-height: 1;
  color: #fff;
  box-sizing: border-box;
  font-feature-settings: normal;
  display: inline;
  box-sizing: border-box;
}
.scroll--inner .bar {
  width: 100%;
  height: 5vw;
  margin-top: .5em;
  overflow: hidden;
  position: relative;
}
.scroll--inner .bar:before {
  content: '';
  display: block;
  position: absolute;
  width: 1px;
  height: 100%;
  top: 0;
  left: 50%;
  border-left: 1px solid #fff;
  transform: translateX(-50%);
  -webkit-animation: arrow-move 2.2s 0.5s ease-in-out infinite;
  animation: arrow-move 2.2s 0.5s ease-in-out infinite;
}

@media screen and (max-width: 767px) {
  .scroll {
    bottom: -8vw;
  }
  .scroll--inner span {
    font-size: 3.7333333333vw;
  }
  .scroll--inner .bar {
    height: 16vw;
  }
}
/*メインビジュのSCROLL*/
/*
-webkit-animation: arrow-move 2.2s 0.5s ease-in-out infinite;
animation: arrow-move 2.2s 0.5s ease-in-out infinite;
*/
@keyframes arrow-move {
  0% {
    top: -100%;
  }
  50% {
    top: 0;
  }
  100% {
    top: 100%;
  }
}
@-webkit-keyframes arrow-move {
  0% {
    top: -100%;
  }
  50% {
    top: 0;
  }
  100% {
    top: 100%;
  }
}
/*
-webkit-animation: 
animation: 
*/
@keyframes animationZoom {
  100% {
    transform: scale(1.1);
  }
}
/*
-webkit-animation: 
animation: 
*/
@keyframes slideshow {
  0% {
    opacity: 0;
    transform: scale(1.2, 1.2);
  }
  10% {
    opacity: 1;
    transform: scale(1, 1);
  }
  28% {
    opacity: 1;
    transform: scale(1, 1);
  }
  38% {
    opacity: 0;
    transform: scale(1, 1);
  }
  100% {
    opacity: 0;
    transform: scale(1, 1);
  }
}
/*#noise*/
.noise {
  width: 100%;
  height: 100%;
  position: fixed;
  left: 0;
  top: 0;
  pointer-events: none;
  z-index: 0;
  overflow: hidden;
}
.noise:after {
  content: "";
  width: calc(100% + 20rem);
  height: calc(100% + 20rem);
  background-image: url(../images/common/noise.png);
  background-position: 50%;
  position: absolute;
  left: -10rem;
  top: -10rem;
  will-change: transform;
  -webkit-animation: noise 1s steps(2) infinite;
  animation: noise 1s steps(2) infinite;
}

@media all and (-ms-high-contrast: none) {
  .noise {
    display: none;
  }
}
/* =========================================================
 * popup modal            /*モーダルウィンドウ設定
========================================================= */
.mfp-bg {
  background-color: rgba(0, 0, 0, 0.8);
  -webkit-transition: all 0.15s ease-out;
  -moz-transition: all 0.15s ease-out;
  transition: all 0.15s ease-out;
}

.mfp-close {
  text-indent: -9999px;
  font-family: serif;
  font-size: 64px;
  right: -10px !important;
  padding-right: 0 !important;
  top: -50px !important;
}

/* overlay animate in */
.mfp-bg.mfp-ready {
  opacity: .8;
}

/* overlay animate out */
.mfp-bg.mfp-removing {
  opacity: 0;
}

/* content at start */
.mfp-wrap {
  /* content animate it */
  /* content animate out */
}
.mfp-wrap .modal-content {
  transform: translateY(-30px);
  opacity: 0;
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
.mfp-wrap.mfp-ready .modal-content {
  transform: translateY(0);
  opacity: 1;
}
.mfp-wrap.mfp-removing .modal-content {
  transform: translateY(30px);
  opacity: 0;
}

.mfp-iframe-holder .mfp-content {
  width: 125vmin !important;
  max-width: 90% !important;
}

#pagetop {
  position: fixed;
  width: 4.5833333333vw;
  right: 2.5vw;
  bottom: 2.5vw;
  z-index: 200;
}
#pagetop.ptbottom {
  bottom: 10vw !important;
}

@media screen and (max-width: 767px) {
  #pagetop {
    width: 13.3333333333vw;
    right: 1.3333333333vw;
    bottom: 26.6666666667vw;
  }
  #pagetop.ptbottom {
    bottom: 61.3333333333vw !important;
  }
}
.top .slider {
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100vw;
  height: 100vh;
}
.top .slider li {
  width: 100%;
  height: 100%;
}
.top .slider li.slick-slide {
  min-height: 100vh;
}
.top .slider li.slide01 {
  background: url("../images/top/challenge_slide01.jpg") no-repeat center/cover;
}
.top .slider li.slide02 {
  background: url("../images/top/challenge_slide02.jpg") no-repeat center/cover;
}
.top .header {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 20;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: rgba(255, 255, 255, 0);
  transition: all 0.875s ease-in-out;
}
.top .header--logo {
  width: 9.1666666667vw;
  margin: 1.0833333333vw 0 1.0833333333vw 2.3333333333vw;
}
.top .header--logo a {
  display: block;
  width: 100%;
}
.top .header--logo a img {
  width: 100%;
}
.top .header--menu {
  width: 69.1666666667vw;
  height: 100%;
}
.top .header--menu .menu {
  display: none;
}
.top .header--menu .globalnav {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.top .header--menu .globalnav .nav_content {
  width: 41.6666666667vw;
  height: 100%;
}
.top .header--menu .globalnav .nav_content ul {
  width: 100%;
  display: flex;
  align-items: center;
}
.top .header--menu .globalnav .nav_content ul li a {
  display: block;
  padding: 0 2.0833333333vw;
  font-size: 1.3333333333vw;
  line-height: 1.6666666667vw;
  text-align: center;
  color: #ff0134;
  font-weight: bold;
}
.top .header--menu .globalnav .nav_content ul li:not(:first-of-type) {
  border-left: 1px solid #ff0134;
}
.top .header--menu .globalnav--entry {
  width: 14.1666666667vw;
  height: 3.1666666667vw;
  border-radius: 1.5833333333vw;
  margin-right: 3.6666666667vw;
}
.top .header--menu .globalnav--entry a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  border-radius: 1.5833333333vw;
  font-size: 1.25vw;
  line-height: 3.1666666667vw;
  box-sizing: border-box;
  background: #ff0134;
  color: #fff;
  font-weight: bold;
  border: 1px solid #fff;
}
.top .header.scrolled {
  background: white;
  box-shadow: 10px 5px 5px rgba(0, 0, 0, 0.2);
}
.top article {
  width: 100%;
}
.top article .mv {
  width: 100%;
  height: 62.6666666667vw;
  background: url("../images/top/challenge_slide-deco.png") no-repeat center/cover;
  display: flex;
  justify-content: center;
  align-items: center;
}
.top article .mv--inner {
  width: 80vw;
}
.top article .mv--inner h2 {
  color: #e50019;
  font-size: 5.25vw;
  line-height: 1.1;
}
.top article .mv--inner h3 {
  color: #1a1a1a;
  font-weight: bold;
  font-size: 1.6666666667vw;
  margin-top: 2.5vw;
}
.top article .message {
  width: 100%;
  padding: 8.75vw 0 9.1666666667vw;
  background: rgba(0, 0, 0, 0.2);
}
.top article .message--inner {
  width: 80vw;
  color: #fff;
  margin: 0 auto;
}
.top article .message--inner--ttl {
  width: 100%;
  display: flex;
  align-items: center;
}
.top article .message--inner--ttl .ttl-txt-en {
  font-size: 4.1666666667vw;
}
.top article .message--inner--ttl .ttl-txt-jp {
  font-weight: bold;
  font-size: 2vw;
  margin-left: 2.0833333333vw;
}
.top article .message--inner--main {
  width: 100%;
  margin-top: 2.6666666667vw;
}
.top article .message--inner--main p {
  font-size: 1.3333333333vw;
  line-height: 2;
  letter-spacing: .05em;
}
.top article .message--inner h2 {
  font-size: 2.5833333333vw;
  margin-top: 3.6666666667vw;
}
.top article .anchor {
  width: 100%;
  padding: 4.6666666667vw 5% 5.5vw;
  background: #fff;
}
.top article .anchor ul {
  width: 59.6666666667vw;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
.top article .anchor ul li {
  width: 18.8333333333vw;
  height: 7.3333333333vw;
}
.top article .anchor ul li a {
  display: block;
  width: 100%;
  height: 100%;
  color: #fff;
  background: #e50019;
  font-size: 1.6666666667vw;
  line-height: 7.3333333333vw;
  font-weight: bold;
  text-align: center;
  position: relative;
}
.top article .anchor ul li a::after {
  content: '';
  display: block;
  position: absolute;
  bottom: -1.667vw;
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
  width: 0.8333333333vw;
  height: 0.8333333333vw;
  border-right: 2px solid #e50019;
  border-bottom: 2px solid #e50019;
  border-left: 2px solid transparent;
  border-top: 2px solid transparent;
  transition: all 0.3s ease-in-out;
}
.top article .anchor ul li a:hover::after {
  bottom: -2vw;
}
.top article .block {
  width: 100%;
}
.top article .block .block-mainttl {
  width: 100%;
  height: 31.9166666667vw;
  display: flex;
  justify-content: center;
  align-items: center;
}
.top article .block .block-mainttl.faq {
  background: url("../images/top/challenge_block02-img01.jpg") no-repeat center/cover;
}
.top article .block .block-mainttl.info {
  background: url("../images/top/challenge_block03-img01.jpg") no-repeat center/cover;
}
.top article .block .block-ttl {
  width: 80vw;
  margin: 0 auto;
  color: #fff;
  position: relative;
  z-index: 1;
}
.top article .block .block-ttl--en {
  font-size: 5vw;
}
.top article .block .block-ttl--jp {
  font-size: 2.3333333333vw;
  font-weight: bold;
}
.top article .voice {
  position: relative;
  padding: 9.6666666667vw 5% 10.3333333333vw;
  background: #fff;
}
.top article .voice .voice-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.top article .voice--person {
  width: 80vw;
  margin: 3.5833333333vw auto 0;
}
.top article .voice--person--bnr {
  width: 100%;
  position: relative;
  padding: 1.4166666667vw 3.8333333333vw 1.4166666667vw 5vw;
  display: flex;
  align-items: center;
  cursor: pointer;
}
.top article .voice--person--bnr .icon {
  width: 8.75vw;
}
.top article .voice--person--bnr .name {
  color: #fff;
  font-size: 2.5vw;
  letter-spacing: .05em;
  font-weight: bold;
  margin-left: 2.6666666667vw;
}
.top article .voice--person--bnr::after {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  right: 3.8333333333vw;
  transform: translateY(-50%);
  width: 2.4166666667vw;
  height: 2.4166666667vw;
  background: url("../images/top/challenge_open.png") no-repeat center/contain;
}
.top article .voice--person--bnr.open::after {
  background: url("../images/top/challenge_close.png") no-repeat center/contain;
}
.top article .voice--person--bnr.red {
  background: #e50019;
}
.top article .voice--person--bnr.orange {
  background: #ff7a00;
}
.top article .voice--person--qa {
  display: none;
  width: 100%;
  padding: 4.1666666667vw 4.6666666667vw 5.8333333333vw;
  background: #f5f6f6;
}
.top article .voice--person--qa--item {
  width: 100%;
  padding: 1.6666666667vw 2.9166666667vw;
  background: #fff;
}
.top article .voice--person--qa--item .question {
  width: 100%;
  display: flex;
}
.top article .voice--person--qa--item .question.red {
  border-bottom: 1px solid #ff0134;
}
.top article .voice--person--qa--item .question.orange {
  border-bottom: 1px solid #ff7a00;
}
.top article .voice--person--qa--item .question .q {
  width: 5vw;
  font-size: 3.3333333333vw;
  letter-spacing: .05em;
}
.top article .voice--person--qa--item .question .q.red {
  color: #e50019;
}
.top article .voice--person--qa--item .question .q.orange {
  color: #ff7a00;
}
.top article .voice--person--qa--item .question .q-txt {
  width: calc(100% - 5vw);
  margin-top: 1.25vw;
  color: #000000;
  font-size: 1.6666666667vw;
  letter-spacing: .05em;
  font-weight: bold;
}
.top article .voice--person--qa--item .answer {
  width: 100%;
  display: flex;
}
.top article .voice--person--qa--item .answer .a {
  width: 5vw;
  font-size: 3.3333333333vw;
  letter-spacing: .05em;
}
.top article .voice--person--qa--item .answer .a.red {
  color: #e50019;
}
.top article .voice--person--qa--item .answer .a.orange {
  color: #ff7a00;
}
.top article .voice--person--qa--item .answer .a-txt {
  width: calc(100% - 5vw);
  margin-top: 1.25vw;
  color: #000000;
  font-size: 1.3333333333vw;
  line-height: 1.6;
  letter-spacing: .05em;
}
.top article .voice--person--qa--item:not(:first-of-type) {
  margin-top: 1.9166666667vw;
}
.top article .voice--person.person01 {
  margin-top: 16.6666666667vw;
}
.top article .faq {
  width: 100%;
}
.top article .faq .faq-contents {
  width: 100%;
  padding: 10vw 0;
  background: #f5f6f6;
}
.top article .faq .faq-contents--inner {
  width: 80vw;
  margin: 0 auto;
  padding: 7.75vw 5% 7.9166666667vw;
  background: #fff;
}
.top article .faq .faq-contents--inner--block {
  width: 64.6666666667vw;
  margin: 0 auto;
}
.top article .faq .faq-contents--inner--block .faq-q {
  width: 100%;
  display: flex;
  border-bottom: 1px solid rgba(255, 1, 52, 0.5);
}
.top article .faq .faq-contents--inner--block .faq-q--ttl {
  width: 4.75vw;
  background: #ff0134;
}
.top article .faq .faq-contents--inner--block .faq-q--ttl--qttl {
  color: #fff;
  font-size: 2.9166666667vw;
  line-height: 5vw;
  text-align: center;
}
.top article .faq .faq-contents--inner--block .faq-q--txt {
  width: calc(100% - 4.75vw);
  padding: 1.3333333333vw 0 1.1666666667vw 2vw;
}
.top article .faq .faq-contents--inner--block .faq-q--txt--qtxt {
  color: #ff0134;
  font-size: 1.6666666667vw;
  letter-spacing: .02em;
  font-weight: bold;
}
.top article .faq .faq-contents--inner--block .faq-a {
  width: 100%;
  display: flex;
}
.top article .faq .faq-contents--inner--block .faq-a--ttl {
  width: 4.75vw;
  background: #dfdfdf;
}
.top article .faq .faq-contents--inner--block .faq-a--ttl--attl {
  color: #ff0134;
  font-size: 2.9166666667vw;
  line-height: 5vw;
  text-align: center;
}
.top article .faq .faq-contents--inner--block .faq-a--txt {
  width: calc(100% - 4.75vw);
  padding: 1.1666666667vw 0 1.1666666667vw 2vw;
}
.top article .faq .faq-contents--inner--block .faq-a--txt--atxt {
  color: #000000;
  font-size: 1.3333333333vw;
  line-height: 1.6;
  letter-spacing: .05em;
}
.top article .faq .faq-contents--inner--block .faq-a--txt--atxt .red {
  color: #ff0134;
}
.top article .faq .faq-contents--inner--block:not(:first-of-type) {
  margin-top: 2.9166666667vw;
}
.top article .info {
  width: 100%;
}
.top article .info .info-contents {
  width: 100%;
  padding: 10vw 0;
  background: #f5f6f6;
}
.top article .info .info-contents--inner {
  width: 80vw;
  margin: 0 auto;
  padding: 6.4166666667vw 5% 6.0833333333vw;
  background: #fff;
}
.top article .info .info-contents--inner dl {
  width: 64.5vw;
  margin: 0 auto;
  padding: 2.0833333333vw 0;
  display: flex;
  border-bottom: 1px solid rgba(255, 122, 0, 0.5);
}
.top article .info .info-contents--inner dl dt {
  width: 9.8333333333vw;
}
.top article .info .info-contents--inner dl dt .dt-txt {
  color: #ff7a00;
  font-size: 1.1666666667vw;
  letter-spacing: .015em;
  font-weight: bold;
}
.top article .info .info-contents--inner dl dd {
  width: calc(100% - 9.833vw);
}
.top article .info .info-contents--inner dl dd .dd-box:not(:first-of-type) {
  margin-top: 1.8333333333vw;
  padding-top: 1.8333333333vw;
  border-top: 1px solid rgba(255, 122, 0, 0.5);
}
.top article .info .info-contents--inner dl dd .dd-txt {
  color: #333333;
  font-size: 1.3333333333vw;
  line-height: 1.5;
}
.top article .info .info-contents--inner dl dd .dd-txt .small {
  font-size: 1.1666666667vw;
}
.top article .info .info-contents--inner dl:first-of-type {
  border-top: 1px solid rgba(255, 122, 0, 0.5);
}
.top .footer {
  width: 100%;
  padding: 13vw 5% 9.1666666667vw;
  background: #fff;
}
.top .footer--inner {
  width: 90.4166666667vw;
  margin: 0 auto;
}
.top .footer--inner .upper {
  width: 100%;
  padding-bottom: 3vw;
  position: relative;
}
.top .footer--inner .upper .foot-logo {
  width: 15.25vw;
  margin: 0 auto;
}
.top .footer--inner .upper::before, .top .footer--inner .upper::after {
  content: '';
  display: block;
  position: absolute;
  bottom: 0;
  width: 50%;
  height: 1px;
}
.top .footer--inner .upper::before {
  left: 0;
  background: #e50019;
}
.top .footer--inner .upper::after {
  right: 0;
  background: #004097;
}
.top .footer--inner .lower {
  width: 100%;
  padding-top: 1.5vw;
}
.top .footer--inner .lower--ul {
  width: 100%;
  display: flex;
  justify-content: center;
}
.top .footer--inner .lower--ul li {
  border-right: 1px solid #1a1a1a;
}
.top .footer--inner .lower--ul li a {
  display: block;
  padding: 0 1vw;
  color: #1a1a1a;
  font-size: 1.0833333333vw;
  letter-spacing: .05em;
  text-align: center;
}
.top .footer--inner .lower--ul li:first-of-type {
  border-left: 1px solid #1a1a1a;
}
.top .footer--inner .lower .copyright {
  margin-top: 2.8333333333vw;
  text-align: center;
}
.top .footer--inner .lower .copyright small {
  color: #231815;
  font-size: 0.8333333333vw;
}

@media screen and (max-width: 767px) {
  .top .slider li.slide01 {
    background: url("../images/top/challenge_slide01.jpg") no-repeat 60% center/cover;
  }
  .top .slider li.slide02 {
    background: url("../images/top/challenge_slide02.jpg") no-repeat 70% center/cover;
  }
  .top .header {
    height: 21.3333333333vw;
  }
  .top .header--logo {
    width: 22%;
    margin: 2.6666666667vw 0 2.6666666667vw 4%;
  }
  .top .header--menu {
    width: 74%;
    height: 100%;
    position: relative;
  }
  .top .header--menu .menu {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    transition: all .4s ease-in-out;
    box-sizing: border-box;
    cursor: pointer;
  }
  .top .header--menu .menu span {
    position: absolute;
    right: 10%;
    width: 9.0666666667vw;
    height: 0.8vw;
    background: #e50019;
    transition: all .4s ease-in-out;
    box-sizing: border-box;
    cursor: pointer;
  }
  .top .header--menu .menu span:nth-of-type(1) {
    top: 8vw;
  }
  .top .header--menu .menu span:nth-of-type(2) {
    top: 11.4666666667vw;
  }
  .top .header--menu .menu span:nth-of-type(3) {
    top: 14.9333333333vw;
  }
  .top .header--menu .menu.active span:nth-of-type(1) {
    top: 50%;
    -webkit-transform: translate(0, -50%) rotate(-45deg);
    transform: translate(0, -50%) rotate(-45deg);
  }
  .top .header--menu .menu.active span:nth-of-type(2) {
    display: none;
  }
  .top .header--menu .menu.active span:nth-of-type(3) {
    top: 50%;
    -webkit-transform: translate(0, -50%) rotate(45deg);
    transform: translate(0, -50%) rotate(45deg);
  }
  .top .header--menu .globalnav {
    width: 100vw;
    height: auto;
    display: none;
    position: absolute;
    top: 21.3333333333vw;
    left: -26vw;
    right: 0;
    background: #fff;
    padding-bottom: 26.6666666667vw;
  }
  .top .header--menu .globalnav .nav_content {
    width: 100%;
    height: auto;
  }
  .top .header--menu .globalnav .nav_content ul {
    display: block;
  }
  .top .header--menu .globalnav .nav_content ul li {
    margin-top: 13.3333333333vw;
  }
  .top .header--menu .globalnav .nav_content ul li a {
    padding: 0;
    font-size: 5.3333333333vw;
    line-height: 8vw;
  }
  .top .header--menu .globalnav .nav_content ul li:not(:first-of-type) {
    border-left: none;
  }
  .top .header--menu .globalnav--entry {
    width: 72vw;
    height: 12.8vw;
    border-radius: 6.4vw;
    margin: 13.3333333333vw auto 0;
  }
  .top .header--menu .globalnav--entry a {
    border-radius: 6.4vw;
    font-size: 5.3333333333vw;
    line-height: 12.8vw;
  }
  .top .header--menu .globalnav.active {
    display: block;
  }
  .top article .mv {
    height: 80vw;
  }
  .top article .mv--inner {
    width: 80%;
    padding-top: 21.3333333333vw;
  }
  .top article .mv--inner h2 {
    font-size: 8vw;
  }
  .top article .mv--inner h3 {
    font-size: 3.7333333333vw;
    margin-top: 2.6666666667vw;
  }
  .top article .message {
    padding: 17.3333333333vw 0 21.3333333333vw;
  }
  .top article .message--inner {
    width: 90%;
  }
  .top article .message--inner--ttl .ttl-txt-en {
    font-size: 9.0666666667vw;
  }
  .top article .message--inner--ttl .ttl-txt-jp {
    font-size: 4.8vw;
    margin-left: 6.6666666667vw;
  }
  .top article .message--inner--main {
    margin-top: 8.5333333333vw;
  }
  .top article .message--inner--main p {
    font-size: 3.7333333333vw;
  }
  .top article .message--inner h2 {
    font-size: 6.4vw;
    margin-top: 11.7333333333vw;
  }
  .top article .anchor {
    padding: 9.6vw 5% 12.2666666667vw;
  }
  .top article .anchor ul {
    width: 90%;
  }
  .top article .anchor ul li {
    width: 30%;
    height: 11.7333333333vw;
  }
  .top article .anchor ul li a {
    font-size: 3.7333333333vw;
    line-height: 11.7333333333vw;
  }
  .top article .anchor ul li a::after {
    bottom: -4vw;
    width: 2.6666666667vw;
    height: 2.6666666667vw;
  }
  .top article .block .block-mainttl {
    height: 50.6666666667vw;
  }
  .top article .block .block-ttl {
    width: 80%;
  }
  .top article .block .block-ttl--en {
    font-size: 9.0666666667vw;
  }
  .top article .block .block-ttl--jp {
    font-size: 4.8vw;
  }
  .top article .voice {
    padding: 10.6666666667vw 5% 16vw;
  }
  .top article .voice--person {
    width: 95%;
    margin: 5.3333333333vw auto 0;
  }
  .top article .voice--person--bnr {
    padding: 2.6666666667vw 4.2666666667vw 2.6666666667vw 2.6666666667vw;
  }
  .top article .voice--person--bnr .icon {
    width: 17.3333333333vw;
  }
  .top article .voice--person--bnr .name {
    font-size: 4.2666666667vw;
    margin-left: 5.8666666667vw;
  }
  .top article .voice--person--bnr::after {
    right: 4.2666666667vw;
    width: 7.7333333333vw;
    height: 7.7333333333vw;
  }
  .top article .voice--person--qa {
    padding: 8vw 5%;
  }
  .top article .voice--person--qa--item {
    padding: 5.3333333333vw 5%;
  }
  .top article .voice--person--qa--item .question {
    padding-bottom: 2.6666666667vw;
  }
  .top article .voice--person--qa--item .question .q {
    width: 13.3333333333vw;
    font-size: 8vw;
  }
  .top article .voice--person--qa--item .question .q-txt {
    margin-top: 1.3333333333vw;
    font-size: 4.2666666667vw;
  }
  .top article .voice--person--qa--item .answer {
    padding-top: 2.6666666667vw;
  }
  .top article .voice--person--qa--item .answer .a {
    width: 13.3333333333vw;
    font-size: 8vw;
  }
  .top article .voice--person--qa--item .answer .a-txt {
    margin-top: 1.3333333333vw;
    font-size: 3.7333333333vw;
  }
  .top article .voice--person--qa--item:not(:first-of-type) {
    margin-top: 6.1333333333vw;
  }
  .top article .voice--person.person01 {
    margin-top: 5.3333333333vw;
  }
  .top article .faq .faq-contents {
    padding: 13.3333333333vw 0;
  }
  .top article .faq .faq-contents--inner {
    width: 90%;
    padding: 10.6666666667vw 2% 13.3333333333vw;
  }
  .top article .faq .faq-contents--inner--block {
    width: 96%;
  }
  .top article .faq .faq-contents--inner--block .faq-q--ttl {
    width: 15.2vw;
  }
  .top article .faq .faq-contents--inner--block .faq-q--ttl--qttl {
    font-size: 8vw;
    line-height: 16vw;
  }
  .top article .faq .faq-contents--inner--block .faq-q--txt {
    padding: 1.6vw 0 1.0666666667vw 3.7333333333vw;
  }
  .top article .faq .faq-contents--inner--block .faq-q--txt--qtxt {
    font-size: 4.2666666667vw;
  }
  .top article .faq .faq-contents--inner--block .faq-a--ttl {
    width: 15.2vw;
  }
  .top article .faq .faq-contents--inner--block .faq-a--ttl--attl {
    font-size: 8vw;
    line-height: 16vw;
  }
  .top article .faq .faq-contents--inner--block .faq-a--txt {
    padding: 3.2vw 0 1.0666666667vw 3.7333333333vw;
  }
  .top article .faq .faq-contents--inner--block .faq-a--txt--atxt {
    font-size: 3.7333333333vw;
  }
  .top article .faq .faq-contents--inner--block:not(:first-of-type) {
    margin-top: 9.3333333333vw;
  }
  .top article .info .info-contents {
    padding: 13.3333333333vw 0;
  }
  .top article .info .info-contents--inner {
    width: 90%;
    padding: 10.6666666667vw 2% 13.3333333333vw;
  }
  .top article .info .info-contents--inner dl {
    width: 96%;
    padding: 6.6666666667vw 0;
  }
  .top article .info .info-contents--inner dl dt {
    width: 31.4666666667vw;
  }
  .top article .info .info-contents--inner dl dt .dt-txt {
    font-size: 3.7333333333vw;
  }
  .top article .info .info-contents--inner dl dd .dd-box:not(:first-of-type) {
    margin-top: 5.8666666667vw;
    padding-top: 5.8666666667vw;
  }
  .top article .info .info-contents--inner dl dd .dd-txt {
    font-size: 3.7333333333vw;
  }
  .top article .info .info-contents--inner dl dd .dd-txt .small {
    font-size: 3.2vw;
  }
  .top .footer {
    padding: 28.2666666667vw 5% 21.3333333333vw;
  }
  .top .footer--inner {
    width: 95%;
  }
  .top .footer--inner .upper {
    padding-bottom: 9.6vw;
  }
  .top .footer--inner .upper .foot-logo {
    width: 48.8vw;
  }
  .top .footer--inner .lower {
    padding-top: 4.8vw;
  }
  .top .footer--inner .lower--ul li a {
    padding: 0 2.1333333333vw;
    font-size: 3.2vw;
  }
  .top .footer--inner .lower .copyright {
    margin-top: 9.0666666667vw;
  }
  .top .footer--inner .lower .copyright small {
    font-size: 2.6666666667vw;
  }
}

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