@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap");
.mt0 { margin-top: 0rem !important; }

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

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

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

.pt0 { padding-top: 0rem !important; }

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

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

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

.mt5 { margin-top: 0.5rem !important; }

.mr5 { margin-right: 0.5rem !important; }

.mb5 { margin-bottom: 0.5rem !important; }

.ml5 { margin-left: 0.5rem !important; }

.pt5 { padding-top: 0.5rem !important; }

.pr5 { padding-right: 0.5rem !important; }

.pb5 { padding-bottom: 0.5rem !important; }

.pl5 { padding-left: 0.5rem !important; }

.mt10 { margin-top: 1rem !important; }

.mr10 { margin-right: 1rem !important; }

.mb10 { margin-bottom: 1rem !important; }

.ml10 { margin-left: 1rem !important; }

.pt10 { padding-top: 1rem !important; }

.pr10 { padding-right: 1rem !important; }

.pb10 { padding-bottom: 1rem !important; }

.pl10 { padding-left: 1rem !important; }

.mt15 { margin-top: 1.5rem !important; }

.mr15 { margin-right: 1.5rem !important; }

.mb15 { margin-bottom: 1.5rem !important; }

.ml15 { margin-left: 1.5rem !important; }

.pt15 { padding-top: 1.5rem !important; }

.pr15 { padding-right: 1.5rem !important; }

.pb15 { padding-bottom: 1.5rem !important; }

.pl15 { padding-left: 1.5rem !important; }

.mt20 { margin-top: 2rem !important; }

.mr20 { margin-right: 2rem !important; }

.mb20 { margin-bottom: 2rem !important; }

.ml20 { margin-left: 2rem !important; }

.pt20 { padding-top: 2rem !important; }

.pr20 { padding-right: 2rem !important; }

.pb20 { padding-bottom: 2rem !important; }

.pl20 { padding-left: 2rem !important; }

.mt25 { margin-top: 2.5rem !important; }

.mr25 { margin-right: 2.5rem !important; }

.mb25 { margin-bottom: 2.5rem !important; }

.ml25 { margin-left: 2.5rem !important; }

.pt25 { padding-top: 2.5rem !important; }

.pr25 { padding-right: 2.5rem !important; }

.pb25 { padding-bottom: 2.5rem !important; }

.pl25 { padding-left: 2.5rem !important; }

.mt30 { margin-top: 3rem !important; }

.mr30 { margin-right: 3rem !important; }

.mb30 { margin-bottom: 3rem !important; }

.ml30 { margin-left: 3rem !important; }

.pt30 { padding-top: 3rem !important; }

.pr30 { padding-right: 3rem !important; }

.pb30 { padding-bottom: 3rem !important; }

.pl30 { padding-left: 3rem !important; }

.mt35 { margin-top: 3.5rem !important; }

.mr35 { margin-right: 3.5rem !important; }

.mb35 { margin-bottom: 3.5rem !important; }

.ml35 { margin-left: 3.5rem !important; }

.pt35 { padding-top: 3.5rem !important; }

.pr35 { padding-right: 3.5rem !important; }

.pb35 { padding-bottom: 3.5rem !important; }

.pl35 { padding-left: 3.5rem !important; }

.mt40 { margin-top: 4rem !important; }

.mr40 { margin-right: 4rem !important; }

.mb40 { margin-bottom: 4rem !important; }

.ml40 { margin-left: 4rem !important; }

.pt40 { padding-top: 4rem !important; }

.pr40 { padding-right: 4rem !important; }

.pb40 { padding-bottom: 4rem !important; }

.pl40 { padding-left: 4rem !important; }

.mt45 { margin-top: 4.5rem !important; }

.mr45 { margin-right: 4.5rem !important; }

.mb45 { margin-bottom: 4.5rem !important; }

.ml45 { margin-left: 4.5rem !important; }

.pt45 { padding-top: 4.5rem !important; }

.pr45 { padding-right: 4.5rem !important; }

.pb45 { padding-bottom: 4.5rem !important; }

.pl45 { padding-left: 4.5rem !important; }

.mt50 { margin-top: 5rem !important; }

.mr50 { margin-right: 5rem !important; }

.mb50 { margin-bottom: 5rem !important; }

.ml50 { margin-left: 5rem !important; }

.pt50 { padding-top: 5rem !important; }

.pr50 { padding-right: 5rem !important; }

.pb50 { padding-bottom: 5rem !important; }

.pl50 { padding-left: 5rem !important; }

.mt55 { margin-top: 5.5rem !important; }

.mr55 { margin-right: 5.5rem !important; }

.mb55 { margin-bottom: 5.5rem !important; }

.ml55 { margin-left: 5.5rem !important; }

.pt55 { padding-top: 5.5rem !important; }

.pr55 { padding-right: 5.5rem !important; }

.pb55 { padding-bottom: 5.5rem !important; }

.pl55 { padding-left: 5.5rem !important; }

.mt60 { margin-top: 6rem !important; }

.mr60 { margin-right: 6rem !important; }

.mb60 { margin-bottom: 6rem !important; }

.ml60 { margin-left: 6rem !important; }

.pt60 { padding-top: 6rem !important; }

.pr60 { padding-right: 6rem !important; }

.pb60 { padding-bottom: 6rem !important; }

.pl60 { padding-left: 6rem !important; }

.mt65 { margin-top: 6.5rem !important; }

.mr65 { margin-right: 6.5rem !important; }

.mb65 { margin-bottom: 6.5rem !important; }

.ml65 { margin-left: 6.5rem !important; }

.pt65 { padding-top: 6.5rem !important; }

.pr65 { padding-right: 6.5rem !important; }

.pb65 { padding-bottom: 6.5rem !important; }

.pl65 { padding-left: 6.5rem !important; }

.mt70 { margin-top: 7rem !important; }

.mr70 { margin-right: 7rem !important; }

.mb70 { margin-bottom: 7rem !important; }

.ml70 { margin-left: 7rem !important; }

.pt70 { padding-top: 7rem !important; }

.pr70 { padding-right: 7rem !important; }

.pb70 { padding-bottom: 7rem !important; }

.pl70 { padding-left: 7rem !important; }

.mt75 { margin-top: 7.5rem !important; }

.mr75 { margin-right: 7.5rem !important; }

.mb75 { margin-bottom: 7.5rem !important; }

.ml75 { margin-left: 7.5rem !important; }

.pt75 { padding-top: 7.5rem !important; }

.pr75 { padding-right: 7.5rem !important; }

.pb75 { padding-bottom: 7.5rem !important; }

.pl75 { padding-left: 7.5rem !important; }

.mt80 { margin-top: 8rem !important; }

.mr80 { margin-right: 8rem !important; }

.mb80 { margin-bottom: 8rem !important; }

.ml80 { margin-left: 8rem !important; }

.pt80 { padding-top: 8rem !important; }

.pr80 { padding-right: 8rem !important; }

.pb80 { padding-bottom: 8rem !important; }

.pl80 { padding-left: 8rem !important; }

.mt85 { margin-top: 8.5rem !important; }

.mr85 { margin-right: 8.5rem !important; }

.mb85 { margin-bottom: 8.5rem !important; }

.ml85 { margin-left: 8.5rem !important; }

.pt85 { padding-top: 8.5rem !important; }

.pr85 { padding-right: 8.5rem !important; }

.pb85 { padding-bottom: 8.5rem !important; }

.pl85 { padding-left: 8.5rem !important; }

.mt90 { margin-top: 9rem !important; }

.mr90 { margin-right: 9rem !important; }

.mb90 { margin-bottom: 9rem !important; }

.ml90 { margin-left: 9rem !important; }

.pt90 { padding-top: 9rem !important; }

.pr90 { padding-right: 9rem !important; }

.pb90 { padding-bottom: 9rem !important; }

.pl90 { padding-left: 9rem !important; }

.mt95 { margin-top: 9.5rem !important; }

.mr95 { margin-right: 9.5rem !important; }

.mb95 { margin-bottom: 9.5rem !important; }

.ml95 { margin-left: 9.5rem !important; }

.pt95 { padding-top: 9.5rem !important; }

.pr95 { padding-right: 9.5rem !important; }

.pb95 { padding-bottom: 9.5rem !important; }

.pl95 { padding-left: 9.5rem !important; }

.mt100 { margin-top: 10rem !important; }

.mr100 { margin-right: 10rem !important; }

.mb100 { margin-bottom: 10rem !important; }

.ml100 { margin-left: 10rem !important; }

.pt100 { padding-top: 10rem !important; }

.pr100 { padding-right: 10rem !important; }

.pb100 { padding-bottom: 10rem !important; }

.pl100 { padding-left: 10rem !important; }

@media screen and (min-width: 961px) { .pc-mt0 { margin-top: 0rem !important; }
  .pc-mr0 { margin-right: 0rem !important; }
  .pc-mb0 { margin-bottom: 0rem !important; }
  .pc-ml0 { margin-left: 0rem !important; }
  .pc-pt0 { padding-top: 0rem !important; }
  .pc-pr0 { padding-right: 0rem !important; }
  .pc-pb0 { padding-bottom: 0rem !important; }
  .pc-pl0 { padding-left: 0rem !important; }
  .pc-mt5 { margin-top: 0.5rem !important; }
  .pc-mr5 { margin-right: 0.5rem !important; }
  .pc-mb5 { margin-bottom: 0.5rem !important; }
  .pc-ml5 { margin-left: 0.5rem !important; }
  .pc-pt5 { padding-top: 0.5rem !important; }
  .pc-pr5 { padding-right: 0.5rem !important; }
  .pc-pb5 { padding-bottom: 0.5rem !important; }
  .pc-pl5 { padding-left: 0.5rem !important; }
  .pc-mt10 { margin-top: 1rem !important; }
  .pc-mr10 { margin-right: 1rem !important; }
  .pc-mb10 { margin-bottom: 1rem !important; }
  .pc-ml10 { margin-left: 1rem !important; }
  .pc-pt10 { padding-top: 1rem !important; }
  .pc-pr10 { padding-right: 1rem !important; }
  .pc-pb10 { padding-bottom: 1rem !important; }
  .pc-pl10 { padding-left: 1rem !important; }
  .pc-mt15 { margin-top: 1.5rem !important; }
  .pc-mr15 { margin-right: 1.5rem !important; }
  .pc-mb15 { margin-bottom: 1.5rem !important; }
  .pc-ml15 { margin-left: 1.5rem !important; }
  .pc-pt15 { padding-top: 1.5rem !important; }
  .pc-pr15 { padding-right: 1.5rem !important; }
  .pc-pb15 { padding-bottom: 1.5rem !important; }
  .pc-pl15 { padding-left: 1.5rem !important; }
  .pc-mt20 { margin-top: 2rem !important; }
  .pc-mr20 { margin-right: 2rem !important; }
  .pc-mb20 { margin-bottom: 2rem !important; }
  .pc-ml20 { margin-left: 2rem !important; }
  .pc-pt20 { padding-top: 2rem !important; }
  .pc-pr20 { padding-right: 2rem !important; }
  .pc-pb20 { padding-bottom: 2rem !important; }
  .pc-pl20 { padding-left: 2rem !important; }
  .pc-mt25 { margin-top: 2.5rem !important; }
  .pc-mr25 { margin-right: 2.5rem !important; }
  .pc-mb25 { margin-bottom: 2.5rem !important; }
  .pc-ml25 { margin-left: 2.5rem !important; }
  .pc-pt25 { padding-top: 2.5rem !important; }
  .pc-pr25 { padding-right: 2.5rem !important; }
  .pc-pb25 { padding-bottom: 2.5rem !important; }
  .pc-pl25 { padding-left: 2.5rem !important; }
  .pc-mt30 { margin-top: 3rem !important; }
  .pc-mr30 { margin-right: 3rem !important; }
  .pc-mb30 { margin-bottom: 3rem !important; }
  .pc-ml30 { margin-left: 3rem !important; }
  .pc-pt30 { padding-top: 3rem !important; }
  .pc-pr30 { padding-right: 3rem !important; }
  .pc-pb30 { padding-bottom: 3rem !important; }
  .pc-pl30 { padding-left: 3rem !important; }
  .pc-mt35 { margin-top: 3.5rem !important; }
  .pc-mr35 { margin-right: 3.5rem !important; }
  .pc-mb35 { margin-bottom: 3.5rem !important; }
  .pc-ml35 { margin-left: 3.5rem !important; }
  .pc-pt35 { padding-top: 3.5rem !important; }
  .pc-pr35 { padding-right: 3.5rem !important; }
  .pc-pb35 { padding-bottom: 3.5rem !important; }
  .pc-pl35 { padding-left: 3.5rem !important; }
  .pc-mt40 { margin-top: 4rem !important; }
  .pc-mr40 { margin-right: 4rem !important; }
  .pc-mb40 { margin-bottom: 4rem !important; }
  .pc-ml40 { margin-left: 4rem !important; }
  .pc-pt40 { padding-top: 4rem !important; }
  .pc-pr40 { padding-right: 4rem !important; }
  .pc-pb40 { padding-bottom: 4rem !important; }
  .pc-pl40 { padding-left: 4rem !important; }
  .pc-mt45 { margin-top: 4.5rem !important; }
  .pc-mr45 { margin-right: 4.5rem !important; }
  .pc-mb45 { margin-bottom: 4.5rem !important; }
  .pc-ml45 { margin-left: 4.5rem !important; }
  .pc-pt45 { padding-top: 4.5rem !important; }
  .pc-pr45 { padding-right: 4.5rem !important; }
  .pc-pb45 { padding-bottom: 4.5rem !important; }
  .pc-pl45 { padding-left: 4.5rem !important; }
  .pc-mt50 { margin-top: 5rem !important; }
  .pc-mr50 { margin-right: 5rem !important; }
  .pc-mb50 { margin-bottom: 5rem !important; }
  .pc-ml50 { margin-left: 5rem !important; }
  .pc-pt50 { padding-top: 5rem !important; }
  .pc-pr50 { padding-right: 5rem !important; }
  .pc-pb50 { padding-bottom: 5rem !important; }
  .pc-pl50 { padding-left: 5rem !important; }
  .pc-mt55 { margin-top: 5.5rem !important; }
  .pc-mr55 { margin-right: 5.5rem !important; }
  .pc-mb55 { margin-bottom: 5.5rem !important; }
  .pc-ml55 { margin-left: 5.5rem !important; }
  .pc-pt55 { padding-top: 5.5rem !important; }
  .pc-pr55 { padding-right: 5.5rem !important; }
  .pc-pb55 { padding-bottom: 5.5rem !important; }
  .pc-pl55 { padding-left: 5.5rem !important; }
  .pc-mt60 { margin-top: 6rem !important; }
  .pc-mr60 { margin-right: 6rem !important; }
  .pc-mb60 { margin-bottom: 6rem !important; }
  .pc-ml60 { margin-left: 6rem !important; }
  .pc-pt60 { padding-top: 6rem !important; }
  .pc-pr60 { padding-right: 6rem !important; }
  .pc-pb60 { padding-bottom: 6rem !important; }
  .pc-pl60 { padding-left: 6rem !important; }
  .pc-mt65 { margin-top: 6.5rem !important; }
  .pc-mr65 { margin-right: 6.5rem !important; }
  .pc-mb65 { margin-bottom: 6.5rem !important; }
  .pc-ml65 { margin-left: 6.5rem !important; }
  .pc-pt65 { padding-top: 6.5rem !important; }
  .pc-pr65 { padding-right: 6.5rem !important; }
  .pc-pb65 { padding-bottom: 6.5rem !important; }
  .pc-pl65 { padding-left: 6.5rem !important; }
  .pc-mt70 { margin-top: 7rem !important; }
  .pc-mr70 { margin-right: 7rem !important; }
  .pc-mb70 { margin-bottom: 7rem !important; }
  .pc-ml70 { margin-left: 7rem !important; }
  .pc-pt70 { padding-top: 7rem !important; }
  .pc-pr70 { padding-right: 7rem !important; }
  .pc-pb70 { padding-bottom: 7rem !important; }
  .pc-pl70 { padding-left: 7rem !important; }
  .pc-mt75 { margin-top: 7.5rem !important; }
  .pc-mr75 { margin-right: 7.5rem !important; }
  .pc-mb75 { margin-bottom: 7.5rem !important; }
  .pc-ml75 { margin-left: 7.5rem !important; }
  .pc-pt75 { padding-top: 7.5rem !important; }
  .pc-pr75 { padding-right: 7.5rem !important; }
  .pc-pb75 { padding-bottom: 7.5rem !important; }
  .pc-pl75 { padding-left: 7.5rem !important; }
  .pc-mt80 { margin-top: 8rem !important; }
  .pc-mr80 { margin-right: 8rem !important; }
  .pc-mb80 { margin-bottom: 8rem !important; }
  .pc-ml80 { margin-left: 8rem !important; }
  .pc-pt80 { padding-top: 8rem !important; }
  .pc-pr80 { padding-right: 8rem !important; }
  .pc-pb80 { padding-bottom: 8rem !important; }
  .pc-pl80 { padding-left: 8rem !important; }
  .pc-mt85 { margin-top: 8.5rem !important; }
  .pc-mr85 { margin-right: 8.5rem !important; }
  .pc-mb85 { margin-bottom: 8.5rem !important; }
  .pc-ml85 { margin-left: 8.5rem !important; }
  .pc-pt85 { padding-top: 8.5rem !important; }
  .pc-pr85 { padding-right: 8.5rem !important; }
  .pc-pb85 { padding-bottom: 8.5rem !important; }
  .pc-pl85 { padding-left: 8.5rem !important; }
  .pc-mt90 { margin-top: 9rem !important; }
  .pc-mr90 { margin-right: 9rem !important; }
  .pc-mb90 { margin-bottom: 9rem !important; }
  .pc-ml90 { margin-left: 9rem !important; }
  .pc-pt90 { padding-top: 9rem !important; }
  .pc-pr90 { padding-right: 9rem !important; }
  .pc-pb90 { padding-bottom: 9rem !important; }
  .pc-pl90 { padding-left: 9rem !important; }
  .pc-mt95 { margin-top: 9.5rem !important; }
  .pc-mr95 { margin-right: 9.5rem !important; }
  .pc-mb95 { margin-bottom: 9.5rem !important; }
  .pc-ml95 { margin-left: 9.5rem !important; }
  .pc-pt95 { padding-top: 9.5rem !important; }
  .pc-pr95 { padding-right: 9.5rem !important; }
  .pc-pb95 { padding-bottom: 9.5rem !important; }
  .pc-pl95 { padding-left: 9.5rem !important; }
  .pc-mt100 { margin-top: 10rem !important; }
  .pc-mr100 { margin-right: 10rem !important; }
  .pc-mb100 { margin-bottom: 10rem !important; }
  .pc-ml100 { margin-left: 10rem !important; }
  .pc-pt100 { padding-top: 10rem !important; }
  .pc-pr100 { padding-right: 10rem !important; }
  .pc-pb100 { padding-bottom: 10rem !important; }
  .pc-pl100 { padding-left: 10rem !important; } }

@media screen and (max-width: 960px) { .sp-mt0 { margin-top: 0rem !important; }
  .sp-mr0 { margin-right: 0rem !important; }
  .sp-mb0 { margin-bottom: 0rem !important; }
  .sp-ml0 { margin-left: 0rem !important; }
  .sp-pt0 { padding-top: 0rem !important; }
  .sp-pr0 { padding-right: 0rem !important; }
  .sp-pb0 { padding-bottom: 0rem !important; }
  .sp-pl0 { padding-left: 0rem !important; }
  .sp-mt5 { margin-top: 0.5rem !important; }
  .sp-mr5 { margin-right: 0.5rem !important; }
  .sp-mb5 { margin-bottom: 0.5rem !important; }
  .sp-ml5 { margin-left: 0.5rem !important; }
  .sp-pt5 { padding-top: 0.5rem !important; }
  .sp-pr5 { padding-right: 0.5rem !important; }
  .sp-pb5 { padding-bottom: 0.5rem !important; }
  .sp-pl5 { padding-left: 0.5rem !important; }
  .sp-mt10 { margin-top: 1rem !important; }
  .sp-mr10 { margin-right: 1rem !important; }
  .sp-mb10 { margin-bottom: 1rem !important; }
  .sp-ml10 { margin-left: 1rem !important; }
  .sp-pt10 { padding-top: 1rem !important; }
  .sp-pr10 { padding-right: 1rem !important; }
  .sp-pb10 { padding-bottom: 1rem !important; }
  .sp-pl10 { padding-left: 1rem !important; }
  .sp-mt15 { margin-top: 1.5rem !important; }
  .sp-mr15 { margin-right: 1.5rem !important; }
  .sp-mb15 { margin-bottom: 1.5rem !important; }
  .sp-ml15 { margin-left: 1.5rem !important; }
  .sp-pt15 { padding-top: 1.5rem !important; }
  .sp-pr15 { padding-right: 1.5rem !important; }
  .sp-pb15 { padding-bottom: 1.5rem !important; }
  .sp-pl15 { padding-left: 1.5rem !important; }
  .sp-mt20 { margin-top: 2rem !important; }
  .sp-mr20 { margin-right: 2rem !important; }
  .sp-mb20 { margin-bottom: 2rem !important; }
  .sp-ml20 { margin-left: 2rem !important; }
  .sp-pt20 { padding-top: 2rem !important; }
  .sp-pr20 { padding-right: 2rem !important; }
  .sp-pb20 { padding-bottom: 2rem !important; }
  .sp-pl20 { padding-left: 2rem !important; }
  .sp-mt25 { margin-top: 2.5rem !important; }
  .sp-mr25 { margin-right: 2.5rem !important; }
  .sp-mb25 { margin-bottom: 2.5rem !important; }
  .sp-ml25 { margin-left: 2.5rem !important; }
  .sp-pt25 { padding-top: 2.5rem !important; }
  .sp-pr25 { padding-right: 2.5rem !important; }
  .sp-pb25 { padding-bottom: 2.5rem !important; }
  .sp-pl25 { padding-left: 2.5rem !important; }
  .sp-mt30 { margin-top: 3rem !important; }
  .sp-mr30 { margin-right: 3rem !important; }
  .sp-mb30 { margin-bottom: 3rem !important; }
  .sp-ml30 { margin-left: 3rem !important; }
  .sp-pt30 { padding-top: 3rem !important; }
  .sp-pr30 { padding-right: 3rem !important; }
  .sp-pb30 { padding-bottom: 3rem !important; }
  .sp-pl30 { padding-left: 3rem !important; }
  .sp-mt35 { margin-top: 3.5rem !important; }
  .sp-mr35 { margin-right: 3.5rem !important; }
  .sp-mb35 { margin-bottom: 3.5rem !important; }
  .sp-ml35 { margin-left: 3.5rem !important; }
  .sp-pt35 { padding-top: 3.5rem !important; }
  .sp-pr35 { padding-right: 3.5rem !important; }
  .sp-pb35 { padding-bottom: 3.5rem !important; }
  .sp-pl35 { padding-left: 3.5rem !important; }
  .sp-mt40 { margin-top: 4rem !important; }
  .sp-mr40 { margin-right: 4rem !important; }
  .sp-mb40 { margin-bottom: 4rem !important; }
  .sp-ml40 { margin-left: 4rem !important; }
  .sp-pt40 { padding-top: 4rem !important; }
  .sp-pr40 { padding-right: 4rem !important; }
  .sp-pb40 { padding-bottom: 4rem !important; }
  .sp-pl40 { padding-left: 4rem !important; }
  .sp-mt45 { margin-top: 4.5rem !important; }
  .sp-mr45 { margin-right: 4.5rem !important; }
  .sp-mb45 { margin-bottom: 4.5rem !important; }
  .sp-ml45 { margin-left: 4.5rem !important; }
  .sp-pt45 { padding-top: 4.5rem !important; }
  .sp-pr45 { padding-right: 4.5rem !important; }
  .sp-pb45 { padding-bottom: 4.5rem !important; }
  .sp-pl45 { padding-left: 4.5rem !important; }
  .sp-mt50 { margin-top: 5rem !important; }
  .sp-mr50 { margin-right: 5rem !important; }
  .sp-mb50 { margin-bottom: 5rem !important; }
  .sp-ml50 { margin-left: 5rem !important; }
  .sp-pt50 { padding-top: 5rem !important; }
  .sp-pr50 { padding-right: 5rem !important; }
  .sp-pb50 { padding-bottom: 5rem !important; }
  .sp-pl50 { padding-left: 5rem !important; }
  .sp-mt55 { margin-top: 5.5rem !important; }
  .sp-mr55 { margin-right: 5.5rem !important; }
  .sp-mb55 { margin-bottom: 5.5rem !important; }
  .sp-ml55 { margin-left: 5.5rem !important; }
  .sp-pt55 { padding-top: 5.5rem !important; }
  .sp-pr55 { padding-right: 5.5rem !important; }
  .sp-pb55 { padding-bottom: 5.5rem !important; }
  .sp-pl55 { padding-left: 5.5rem !important; }
  .sp-mt60 { margin-top: 6rem !important; }
  .sp-mr60 { margin-right: 6rem !important; }
  .sp-mb60 { margin-bottom: 6rem !important; }
  .sp-ml60 { margin-left: 6rem !important; }
  .sp-pt60 { padding-top: 6rem !important; }
  .sp-pr60 { padding-right: 6rem !important; }
  .sp-pb60 { padding-bottom: 6rem !important; }
  .sp-pl60 { padding-left: 6rem !important; }
  .sp-mt65 { margin-top: 6.5rem !important; }
  .sp-mr65 { margin-right: 6.5rem !important; }
  .sp-mb65 { margin-bottom: 6.5rem !important; }
  .sp-ml65 { margin-left: 6.5rem !important; }
  .sp-pt65 { padding-top: 6.5rem !important; }
  .sp-pr65 { padding-right: 6.5rem !important; }
  .sp-pb65 { padding-bottom: 6.5rem !important; }
  .sp-pl65 { padding-left: 6.5rem !important; }
  .sp-mt70 { margin-top: 7rem !important; }
  .sp-mr70 { margin-right: 7rem !important; }
  .sp-mb70 { margin-bottom: 7rem !important; }
  .sp-ml70 { margin-left: 7rem !important; }
  .sp-pt70 { padding-top: 7rem !important; }
  .sp-pr70 { padding-right: 7rem !important; }
  .sp-pb70 { padding-bottom: 7rem !important; }
  .sp-pl70 { padding-left: 7rem !important; }
  .sp-mt75 { margin-top: 7.5rem !important; }
  .sp-mr75 { margin-right: 7.5rem !important; }
  .sp-mb75 { margin-bottom: 7.5rem !important; }
  .sp-ml75 { margin-left: 7.5rem !important; }
  .sp-pt75 { padding-top: 7.5rem !important; }
  .sp-pr75 { padding-right: 7.5rem !important; }
  .sp-pb75 { padding-bottom: 7.5rem !important; }
  .sp-pl75 { padding-left: 7.5rem !important; }
  .sp-mt80 { margin-top: 8rem !important; }
  .sp-mr80 { margin-right: 8rem !important; }
  .sp-mb80 { margin-bottom: 8rem !important; }
  .sp-ml80 { margin-left: 8rem !important; }
  .sp-pt80 { padding-top: 8rem !important; }
  .sp-pr80 { padding-right: 8rem !important; }
  .sp-pb80 { padding-bottom: 8rem !important; }
  .sp-pl80 { padding-left: 8rem !important; }
  .sp-mt85 { margin-top: 8.5rem !important; }
  .sp-mr85 { margin-right: 8.5rem !important; }
  .sp-mb85 { margin-bottom: 8.5rem !important; }
  .sp-ml85 { margin-left: 8.5rem !important; }
  .sp-pt85 { padding-top: 8.5rem !important; }
  .sp-pr85 { padding-right: 8.5rem !important; }
  .sp-pb85 { padding-bottom: 8.5rem !important; }
  .sp-pl85 { padding-left: 8.5rem !important; }
  .sp-mt90 { margin-top: 9rem !important; }
  .sp-mr90 { margin-right: 9rem !important; }
  .sp-mb90 { margin-bottom: 9rem !important; }
  .sp-ml90 { margin-left: 9rem !important; }
  .sp-pt90 { padding-top: 9rem !important; }
  .sp-pr90 { padding-right: 9rem !important; }
  .sp-pb90 { padding-bottom: 9rem !important; }
  .sp-pl90 { padding-left: 9rem !important; }
  .sp-mt95 { margin-top: 9.5rem !important; }
  .sp-mr95 { margin-right: 9.5rem !important; }
  .sp-mb95 { margin-bottom: 9.5rem !important; }
  .sp-ml95 { margin-left: 9.5rem !important; }
  .sp-pt95 { padding-top: 9.5rem !important; }
  .sp-pr95 { padding-right: 9.5rem !important; }
  .sp-pb95 { padding-bottom: 9.5rem !important; }
  .sp-pl95 { padding-left: 9.5rem !important; }
  .sp-mt100 { margin-top: 10rem !important; }
  .sp-mr100 { margin-right: 10rem !important; }
  .sp-mb100 { margin-bottom: 10rem !important; }
  .sp-ml100 { margin-left: 10rem !important; }
  .sp-pt100 { padding-top: 10rem !important; }
  .sp-pr100 { padding-right: 10rem !important; }
  .sp-pb100 { padding-bottom: 10rem !important; }
  .sp-pl100 { padding-left: 10rem !important; } }

.col-0p { width: 0%; }

.col-1p { width: 1%; }

.col-2p { width: 2%; }

.col-3p { width: 3%; }

.col-4p { width: 4%; }

.col-5p { width: 5%; }

.col-6p { width: 6%; }

.col-7p { width: 7%; }

.col-8p { width: 8%; }

.col-9p { width: 9%; }

.col-10p { width: 10%; }

.col-11p { width: 11%; }

.col-12p { width: 12%; }

.col-13p { width: 13%; }

.col-14p { width: 14%; }

.col-15p { width: 15%; }

.col-16p { width: 16%; }

.col-17p { width: 17%; }

.col-18p { width: 18%; }

.col-19p { width: 19%; }

.col-20p { width: 20%; }

.col-21p { width: 21%; }

.col-22p { width: 22%; }

.col-23p { width: 23%; }

.col-24p { width: 24%; }

.col-25p { width: 25%; }

.col-26p { width: 26%; }

.col-27p { width: 27%; }

.col-28p { width: 28%; }

.col-29p { width: 29%; }

.col-30p { width: 30%; }

.col-31p { width: 31%; }

.col-32p { width: 32%; }

.col-33p { width: 33%; }

.col-34p { width: 34%; }

.col-35p { width: 35%; }

.col-36p { width: 36%; }

.col-37p { width: 37%; }

.col-38p { width: 38%; }

.col-39p { width: 39%; }

.col-40p { width: 40%; }

.col-41p { width: 41%; }

.col-42p { width: 42%; }

.col-43p { width: 43%; }

.col-44p { width: 44%; }

.col-45p { width: 45%; }

.col-46p { width: 46%; }

.col-47p { width: 47%; }

.col-48p { width: 48%; }

.col-49p { width: 49%; }

.col-50p { width: 50%; }

.col-51p { width: 51%; }

.col-52p { width: 52%; }

.col-53p { width: 53%; }

.col-54p { width: 54%; }

.col-55p { width: 55%; }

.col-56p { width: 56%; }

.col-57p { width: 57%; }

.col-58p { width: 58%; }

.col-59p { width: 59%; }

.col-60p { width: 60%; }

.col-61p { width: 61%; }

.col-62p { width: 62%; }

.col-63p { width: 63%; }

.col-64p { width: 64%; }

.col-65p { width: 65%; }

.col-66p { width: 66%; }

.col-67p { width: 67%; }

.col-68p { width: 68%; }

.col-69p { width: 69%; }

.col-70p { width: 70%; }

.col-71p { width: 71%; }

.col-72p { width: 72%; }

.col-73p { width: 73%; }

.col-74p { width: 74%; }

.col-75p { width: 75%; }

.col-76p { width: 76%; }

.col-77p { width: 77%; }

.col-78p { width: 78%; }

.col-79p { width: 79%; }

.col-80p { width: 80%; }

.col-81p { width: 81%; }

.col-82p { width: 82%; }

.col-83p { width: 83%; }

.col-84p { width: 84%; }

.col-85p { width: 85%; }

.col-86p { width: 86%; }

.col-87p { width: 87%; }

.col-88p { width: 88%; }

.col-89p { width: 89%; }

.col-90p { width: 90%; }

.col-91p { width: 91%; }

.col-92p { width: 92%; }

.col-93p { width: 93%; }

.col-94p { width: 94%; }

.col-95p { width: 95%; }

.col-96p { width: 96%; }

.col-97p { width: 97%; }

.col-98p { width: 98%; }

.col-99p { width: 99%; }

.col-100p { width: 100%; }

@media screen and (max-width: 960px) { .col-0p-sp { width: 0%; }
  .col-1p-sp { width: 1%; }
  .col-2p-sp { width: 2%; }
  .col-3p-sp { width: 3%; }
  .col-4p-sp { width: 4%; }
  .col-5p-sp { width: 5%; }
  .col-6p-sp { width: 6%; }
  .col-7p-sp { width: 7%; }
  .col-8p-sp { width: 8%; }
  .col-9p-sp { width: 9%; }
  .col-10p-sp { width: 10%; }
  .col-11p-sp { width: 11%; }
  .col-12p-sp { width: 12%; }
  .col-13p-sp { width: 13%; }
  .col-14p-sp { width: 14%; }
  .col-15p-sp { width: 15%; }
  .col-16p-sp { width: 16%; }
  .col-17p-sp { width: 17%; }
  .col-18p-sp { width: 18%; }
  .col-19p-sp { width: 19%; }
  .col-20p-sp { width: 20%; }
  .col-21p-sp { width: 21%; }
  .col-22p-sp { width: 22%; }
  .col-23p-sp { width: 23%; }
  .col-24p-sp { width: 24%; }
  .col-25p-sp { width: 25%; }
  .col-26p-sp { width: 26%; }
  .col-27p-sp { width: 27%; }
  .col-28p-sp { width: 28%; }
  .col-29p-sp { width: 29%; }
  .col-30p-sp { width: 30%; }
  .col-31p-sp { width: 31%; }
  .col-32p-sp { width: 32%; }
  .col-33p-sp { width: 33%; }
  .col-34p-sp { width: 34%; }
  .col-35p-sp { width: 35%; }
  .col-36p-sp { width: 36%; }
  .col-37p-sp { width: 37%; }
  .col-38p-sp { width: 38%; }
  .col-39p-sp { width: 39%; }
  .col-40p-sp { width: 40%; }
  .col-41p-sp { width: 41%; }
  .col-42p-sp { width: 42%; }
  .col-43p-sp { width: 43%; }
  .col-44p-sp { width: 44%; }
  .col-45p-sp { width: 45%; }
  .col-46p-sp { width: 46%; }
  .col-47p-sp { width: 47%; }
  .col-48p-sp { width: 48%; }
  .col-49p-sp { width: 49%; }
  .col-50p-sp { width: 50%; }
  .col-51p-sp { width: 51%; }
  .col-52p-sp { width: 52%; }
  .col-53p-sp { width: 53%; }
  .col-54p-sp { width: 54%; }
  .col-55p-sp { width: 55%; }
  .col-56p-sp { width: 56%; }
  .col-57p-sp { width: 57%; }
  .col-58p-sp { width: 58%; }
  .col-59p-sp { width: 59%; }
  .col-60p-sp { width: 60%; }
  .col-61p-sp { width: 61%; }
  .col-62p-sp { width: 62%; }
  .col-63p-sp { width: 63%; }
  .col-64p-sp { width: 64%; }
  .col-65p-sp { width: 65%; }
  .col-66p-sp { width: 66%; }
  .col-67p-sp { width: 67%; }
  .col-68p-sp { width: 68%; }
  .col-69p-sp { width: 69%; }
  .col-70p-sp { width: 70%; }
  .col-71p-sp { width: 71%; }
  .col-72p-sp { width: 72%; }
  .col-73p-sp { width: 73%; }
  .col-74p-sp { width: 74%; }
  .col-75p-sp { width: 75%; }
  .col-76p-sp { width: 76%; }
  .col-77p-sp { width: 77%; }
  .col-78p-sp { width: 78%; }
  .col-79p-sp { width: 79%; }
  .col-80p-sp { width: 80%; }
  .col-81p-sp { width: 81%; }
  .col-82p-sp { width: 82%; }
  .col-83p-sp { width: 83%; }
  .col-84p-sp { width: 84%; }
  .col-85p-sp { width: 85%; }
  .col-86p-sp { width: 86%; }
  .col-87p-sp { width: 87%; }
  .col-88p-sp { width: 88%; }
  .col-89p-sp { width: 89%; }
  .col-90p-sp { width: 90%; }
  .col-91p-sp { width: 91%; }
  .col-92p-sp { width: 92%; }
  .col-93p-sp { width: 93%; }
  .col-94p-sp { width: 94%; }
  .col-95p-sp { width: 95%; }
  .col-96p-sp { width: 96%; }
  .col-97p-sp { width: 97%; }
  .col-98p-sp { width: 98%; }
  .col-99p-sp { width: 99%; }
  .col-100p-sp { width: 100%; } }

/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */
/** 1. Change the default font family in all browsers (opinionated). 2. Prevent adjustments of font size after orientation changes in IE and iOS. */
html { font-family: sans-serif; /* 1 */ -ms-text-size-adjust: 100%; /* 2 */ -webkit-text-size-adjust: 100%; /* 2 */ }

/** Remove the margin in all browsers (opinionated). */
body { margin: 0; }

/* HTML5 display definitions ========================================================================== */
/** Add the correct display in IE 9-. 1. Add the correct display in Edge, IE, and Firefox. 2. Add the correct display in IE. */
article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary { /* 1 */ display: block; }

/** Add the correct display in IE 9-. */
audio, canvas, progress, video { display: inline-block; }

/** Add the correct display in iOS 4-7. */
audio:not([controls]) { display: none; height: 0; }

/** Add the correct vertical alignment in Chrome, Firefox, and Opera. */
progress { vertical-align: baseline; }

/** Add the correct display in IE 10-. 1. Add the correct display in IE. */
template, [hidden] { display: none; }

/* Links ========================================================================== */
/** 1. Remove the gray background on active links in IE 10. 2. Remove gaps in links underline in iOS 8+ and Safari 8+. */
a { background-color: transparent; /* 1 */ -webkit-text-decoration-skip: objects; /* 2 */ }

/** Remove the outline on focused links when they are also active or hovered in all browsers (opinionated). */
a:active, a:hover { outline-width: 0; }

/* Text-level semantics ========================================================================== */
/** 1. Remove the bottom border in Firefox 39-. 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. */
abbr[title] { border-bottom: none; /* 1 */ text-decoration: underline; /* 2 */ text-decoration: underline dotted; /* 2 */ }

/** Prevent the duplicate application of `bolder` by the next rule in Safari 6. */
b, strong { font-weight: inherit; }

/** Add the correct font weight in Chrome, Edge, and Safari. */
b, strong { font-weight: bolder; }

/** Add the correct font style in Android 4.3-. */
dfn { font-style: italic; }

/** Correct the font size and margin on `h1` elements within `section` and `article` contexts in Chrome, Firefox, and Safari. */
h1 { font-size: 2em; margin: 0.67em 0; }

/** Add the correct background and color in IE 9-. */
mark { background-color: #ff0; color: #000; }

/** Add the correct font size in all browsers. */
small { font-size: 80%; }

/** Prevent `sub` and `sup` elements from affecting the line height in all browsers. */
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }

sub { bottom: -0.25em; }

sup { top: -0.5em; }

/* Embedded content ========================================================================== */
/** Remove the border on images inside links in IE 10-. */
img { border-style: none; }

/** Hide the overflow in IE. */
svg:not(:root) { overflow: hidden; }

/* Grouping content ========================================================================== */
/** 1. Correct the inheritance and scaling of font size in all browsers. 2. Correct the odd `em` font sizing in all browsers. */
code, kbd, pre, samp { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ }

/** Add the correct margin in IE 8. */
figure { margin: 1em 40px; }

/** 1. Add the correct box sizing in Firefox. 2. Show the overflow in Edge and IE. */
hr { -moz-box-sizing: content-box; box-sizing: content-box; /* 1 */ height: 0; /* 1 */ overflow: visible; /* 2 */ }

/* Forms ========================================================================== */
/** 1. Change font properties to `inherit` in all browsers (opinionated). 2. Remove the margin in Firefox and Safari. */
button, input, select, textarea { font: inherit; /* 1 */ margin: 0; /* 2 */ }

/** Restore the font weight unset by the previous rule. */
optgroup { font-weight: bold; }

/** Show the overflow in IE. 1. Show the overflow in Edge. */
button, input { /* 1 */ overflow: visible; }

/** Remove the inheritance of text transform in Edge, Firefox, and IE. 1. Remove the inheritance of text transform in Firefox. */
button, select { /* 1 */ text-transform: none; }

/** 1. Prevent a WebKit bug where (2) destroys native `audio` and `video` controls in Android 4. 2. Correct the inability to style clickable types in iOS and Safari. */
button, html [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; /* 2 */ }

/** Remove the inner border and padding in Firefox. */
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; }

/** Restore the focus styles unset by the previous rule. */
button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; }

/** Change the border, margin, and padding in all browsers (opinionated). */
fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; }

/** 1. Correct the text wrapping in Edge and IE. 2. Correct the color inheritance from `fieldset` elements in IE. 3. Remove the padding so developers are not caught out when they zero out `fieldset` elements in all browsers. */
legend { -moz-box-sizing: border-box; box-sizing: border-box; /* 1 */ color: inherit; /* 2 */ display: table; /* 1 */ max-width: 100%; /* 1 */ padding: 0; /* 3 */ white-space: normal; /* 1 */ }

/** Remove the default vertical scrollbar in IE. */
textarea { overflow: auto; }

/** 1. Add the correct box sizing in IE 10-. 2. Remove the padding in IE 10-. */
[type="checkbox"], [type="radio"] { -moz-box-sizing: border-box; box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ }

/** Correct the cursor style of increment and decrement buttons in Chrome. */
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; }

/** 1. Correct the odd appearance in Chrome and Safari. 2. Correct the outline style in Safari. */
[type="search"] { -webkit-appearance: textfield; /* 1 */ outline-offset: -2px; /* 2 */ }

/** Remove the inner padding and cancel buttons in Chrome and Safari on OS X. */
[type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

/** Correct the text style of placeholders in Chrome, Edge, and Safari. */
::-webkit-input-placeholder { color: inherit; opacity: 0.54; }

/** 1. Correct the inability to style clickable types in iOS and Safari. 2. Change font properties to `inherit` in Safari. */
::-webkit-file-upload-button { -webkit-appearance: button; /* 1 */ font: inherit; /* 2 */ }

html { font-size: 62.5%; }

@media screen and (max-width: 960px) { html { font-size: 1.5625vw; } }

/*@media only (min-width: 750px) and (max-width: 768px) {
    html {
        font-size: 1.6vw;
    }
}*/
body { font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", 'Hiragino Kaku Gothic Pro', "メイリオ", 'Meiryo', "ＭＳ Ｐゴシック", 'MS PGothic', Arial, sans-serif; font-style: normal; font-size: 15px; font-size: 1.5rem; line-height: 1.28571; color: #323232; background-color: #EFEFEF; word-break: normal; line-break: strict; font-weight: 500; letter-spacing: 0.05em; }

@media screen and (max-width: 960px) { body { font-size: 2.4rem; } }

a { color: inherit; text-decoration: none; -webkit-transition-duration: 0.3s; -moz-transition-duration: 0.3s; transition-duration: 0.3s; }

a:hover { text-decoration: none; }

@media screen and (min-width: 961px) { a:hover { opacity: .75; } }

a:focus { outline: none; text-decoration: none; }

ul, ol { margin: 0; padding: 0; }

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

h1, h2, h3, h4, h5, h6 { font-weight: 700; margin: 0; }

p { margin: 0px 0px 30px 0px; padding: 0; }

p:last-child { margin-bottom: 0px; }

@media screen and (max-width: 768px) { p { margin: 0 0 4.6875vw 0; } }

figure { margin: 0; padding: 0; line-height: 0; }

figure img { max-width: 100%; height: auto; }

input[type="submit"] { border: none; -webkit-transition-duration: 0.2s; -moz-transition-duration: 0.2s; transition-duration: 0.2s; }

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

dl, dt, dd { margin: 0; padding: 0; }

* { -moz-box-sizing: border-box; box-sizing: border-box; word-break: break-word; }

img { max-width: 100%; height: auto; vertical-align: middle; }

/* clearfix (micro) */
.clearfix:before, .clearfix:after { content: ' '; display: table; }

.clearfix:after { clear: both; }

/* For IE 6/7 only */
.clearfix { *zoom: 1; }

div, p { word-break: break-all; }

html, 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, strong, 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, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video, nav, picture { margin: 0; padding: 0; border: 0; vertical-align: baseline; }

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

.text-bold { font-weight: 700; }

.align-center { text-align: center; }

.align-right { text-align: right; }

.c-white { color: #fff; }

.fw-bold { font-weight: bold; }

.fit { font-family: "object-fit: cover;"; height: 100%; width: 100%; object-fit: cover; }

#wrapper { margin: 0 auto; position: relative; overflow: hidden; /*&:before { position: fixed; content: ''; width: 60rem; height: 100%; right: 49rem; top: 0; background: rgba(255,255,255,0.7); transform: skewX(-45deg); z-index: -1; @include sp { width: 60rem; left: 0rem; //position: absolute; top: 5rem; } } &:after { position: fixed; content: ''; left: 0; top: 0; width: 0; height: 0; border-top: 44rem solid #666666; border-right: 44rem solid transparent; z-index: -1; @include sp { border-top: 24.4rem solid #666666; border-right: 24.4rem solid transparent; } }*/ }

#wrapper.p-wrapper_no:after { width: -webkit-calc(312/1280 * 100%); width: -moz-calc(312/1280 * 100%); width: calc(312/1280 * 100%); }

@media screen and (max-width: 960px) { #wrapper.p-wrapper_no:after { width: 17rem; } }

@media screen and (max-width: 960px) { #wrapper.p-wrapper_no .page-header { -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; padding-top: 0.5rem; }
  #wrapper.p-wrapper_no .site-logo { width: 7.4rem; } }

@media screen and (min-width: 961px) { #wrapper { min-width: 102.4rem; } }

.container { max-width: 103rem; padding: 0 1.5rem; margin: 0 auto; }

@media screen and (max-width: 960px) { .container { padding: 0 4rem; } }

.inner { max-width: 99rem; margin: 0 auto; padding: 0 1.5rem; }

@media screen and (max-width: 960px) { .inner { padding: 0 3.125vw; } }

#hambuger { width: 6rem; height: 6rem; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-flow: column; flex-flow: column; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; z-index: 12; background: #6CB2D3; cursor: pointer; position: relative; -moz-border-radius: 50%; border-radius: 50%; }

#hambuger.open { background: #5D5F63; }

#hambuger.open span.open { display: none; }

#hambuger.open span.close { display: inline-block; }

.nav-icon ul { position: relative; width: 2.8rem; height: 1.8rem; }

.nav-icon ul li { list-style: none; position: absolute; background: #fff; width: 2.8rem; height: 0.2rem; left: 50%; -moz-border-radius: 20px; border-radius: 20px; -webkit-transform: translate(-50%, -50%); -moz-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); -webkit-transition: all .3s ease; -moz-transition: all .3s ease; transition: all .3s ease; }

.nav-icon ul li:nth-of-type(1) { top: 10%; }

.nav-icon ul li:nth-of-type(2) { top: 50%; }

.nav-icon ul li:nth-of-type(3) { top: 90%; }

.nav-icon ul li span { display: inline-block; }

.nav-icon.open ul { opacity: 1; visibility: visible; }

.nav-icon.open ul li { background: #fff; }

.nav-icon.open ul li:nth-of-type(1) { width: 100%; top: 50%; -webkit-transform: translate(-50%, -50%) rotate(36deg); -moz-transform: translate(-50%, -50%) rotate(36deg); -ms-transform: translate(-50%, -50%) rotate(36deg); transform: translate(-50%, -50%) rotate(36deg); }

.nav-icon.open ul li:nth-of-type(3) { width: 100%; top: 50%; -webkit-transform: translate(-50%, -50%) rotate(-36deg); -moz-transform: translate(-50%, -50%) rotate(-36deg); -ms-transform: translate(-50%, -50%) rotate(-36deg); transform: translate(-50%, -50%) rotate(-36deg); }

.nav-icon.open ul li:nth-of-type(2) { opacity: 0; }

@media screen and (min-width: 961px) { .show_sp { display: none !important; }
  .show_pc { display: inherit; }
  .MissingWH { position: relative; overflow: hidden; height: 100%; width: 100%; }
  .MissingWH img { position: absolute; left: 0; top: 0; margin: 0; width: auto !important; display: none; height: auto; min-width: 100%; min-height: 100%; max-height: none; max-width: none; -webkit-transition: 0.5s ease-in-out; -moz-transition: 0.5s ease-in-out; transition: 0.5s ease-in-out; }
  a[href^=tel] { pointer-events: none; text-decoration: none; opacity: 1 !important; cursor: default !important; } }

@media screen and (max-width: 960px) { body p { word-break: normal; line-break: strict; }
  .show_sp { display: inherit; }
  .show_pc { display: none !important; } }

.mode-txt { writing-mode: vertical-rl; -webkit-writing-mode: vertical-rl; -ms-writing-mode: vertical-rl; }

.txt_center { text-align: center; }

.js-view { opacity: 0; -webkit-transform: translate(0, 50px); -moz-transform: translate(0, 50px); -ms-transform: translate(0, 50px); transform: translate(0, 50px); -webkit-transition: all 0.8s; -moz-transition: all 0.8s; transition: all 0.8s; }

.js-view.fadein { opacity: 1; -webkit-transform: translate(0, 0); -moz-transform: translate(0, 0); -ms-transform: translate(0, 0); transform: translate(0, 0); }

.pace { -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; pointer-events: none; }

.pace-inactive { display: none; }

.page-home .pace-progress { position: fixed; z-index: 2000; top: 50%; margin-top: -2px; right: 100%; width: 100%; height: 4px; background: #e6eaed; }

.p-wrapper { -webkit-transition: opacity 0.5s cubic-bezier(0.4, 0, 0.2, 1) 0.3s; -moz-transition: opacity 0.5s cubic-bezier(0.4, 0, 0.2, 1) 0.3s; transition: opacity 0.5s cubic-bezier(0.4, 0, 0.2, 1) 0.3s; opacity: 0; }

.pace-done .p-wrapper { opacity: 1; }

.p-loading { position: fixed; z-index: 100; top: 0; left: 0; display: -webkit-box; display: -ms-flexbox; display: -moz-box; display: flex; visibility: visible; -webkit-box-align: center; -moz-box-align: center; align-items: center; -ms-flex-align: center; -webkit-box-pack: center; -ms-flex-pack: center; -moz-box-pack: center; justify-content: center; width: 100%; height: 100%; text-align: center; opacity: 1; background: #fff; }

.pace-done .p-loading { visibility: hidden; -webkit-transition: opacity .8s ease-out .2s, visibility 0s ease-out 1.2s; -moz-transition: opacity .8s ease-out .2s, visibility 0s ease-out 1.2s; transition: opacity .8s ease-out .2s, visibility 0s ease-out 1.2s; opacity: 0; }

.p-loading__copy { font-size: 1.6rem; font-weight: 700; margin: 0 -.5em 20px 0; }

.p-loading__logo { width: 320px; height: 46px; margin: 0 0 100px -2%; }

.p-loading__icon { width: 50px; height: 50px; margin: -4% auto 0; -webkit-animation: 1s loading linear infinite; -moz-animation: 1s loading linear infinite; animation: 1s loading linear infinite; border: 1px solid #e6eaed; border-top: 1px solid #63676b; -moz-border-radius: 50%; border-radius: 50%; background-color: transparent; }

.p-loading__copy, .p-loading__logo { -webkit-transition: all 0.8s cubic-bezier(0.4, 0, 0.2, 1) 0s; -moz-transition: all 0.8s cubic-bezier(0.4, 0, 0.2, 1) 0s; transition: all 0.8s cubic-bezier(0.4, 0, 0.2, 1) 0s; -webkit-transform: translateY(20px); -ms-transform: translateY(20px); -moz-transform: translateY(20px); transform: translateY(20px); opacity: 0; }

.p-loading__copy.is-shown, .p-loading__logo.is-shown { -webkit-transform: translateY(0); -ms-transform: translateY(0); -moz-transform: translateY(0); transform: translateY(0); opacity: 1; }

.pace-done .key-visual-title { opacity: 1; visibility: visible; -webkit-transform: translateY(0); -moz-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }

.pace-done .key-visual-sub { opacity: 1; visibility: visible; -webkit-transform: translateY(0); -moz-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); -webkit-transition-delay: 1.7s; -moz-transition-delay: 1.7s; transition-delay: 1.7s; }

.pace-done .key-visual-txt { opacity: 1; visibility: visible; -webkit-transform: translateY(0); -moz-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); -webkit-transition-delay: 1.7s; -moz-transition-delay: 1.7s; transition-delay: 1.7s; }

.pace-done .key-visual-img { opacity: 1; visibility: visible; -webkit-transform: translateY(0); -moz-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); -webkit-transition-delay: 1.7s; -moz-transition-delay: 1.7s; transition-delay: 1.7s; }

/*========= LoadingのためのCSS ===============*/
/* Loading背景画面設定　*/
#splash { /*fixedで全面に固定*/ position: fixed; width: 100%; height: 100%; z-index: 999; text-align: center; color: #fff; }

/* Loading画像中央配置　*/
#splash_text { position: absolute; top: 50%; left: 50%; z-index: 999; -webkit-transform: translate(-50%, -50%); -moz-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); color: #fff; width: 100%; }

/*IE11対策用バーの線の高さ※対応しなければ削除してください*/
#splash_text svg { height: 2px; }

#splash_text svg path { stroke: #e6eaed; fill: #e6eaed; }

/*割れる画面のアニメーション*/
.loader_cover { width: 100%; height: 50%; -webkit-transition: all 0.2s cubic-bezier(0.04, 0.435, 0.315, 0.9); -moz-transition: all 0.2s cubic-bezier(0.04, 0.435, 0.315, 0.9); transition: all 0.2s cubic-bezier(0.04, 0.435, 0.315, 0.9); -webkit-transform: scaleY(1); -moz-transform: scaleY(1); -ms-transform: scaleY(1); transform: scaleY(1); background: #666666; /*background: rgba(173,255,249,1); background: -moz-linear-gradient(left, rgba(173,255,249,1) 0%, rgba(35,185,188,1) 70%, rgba(42,218,221,1) 100%); background: -webkit-gradient(left top, right top, color-stop(0%, rgba(173,255,249,1)), color-stop(70%, rgba(35,185,188,1)), color-stop(100%, rgba(42,218,221,1))); background: -webkit-linear-gradient(left, rgba(173,255,249,1) 0%, rgba(35,185,188,1) 70%, rgba(42,218,221,1) 100%); background: -o-linear-gradient(left, rgba(173,255,249,1) 0%, rgba(35,185,188,1) 70%, rgba(42,218,221,1) 100%); background: -ms-linear-gradient(left, rgba(173,255,249,1) 0%, rgba(35,185,188,1) 70%, rgba(42,218,221,1) 100%); background: linear-gradient(to right, rgba(173,255,249,1) 0%, rgba(35,185,188,1) 70%, rgba(42,218,221,1) 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#adfff9', endColorstr='#2adadd', GradientType=1 );*/ }

/*上の画面*/
.loader_cover-up { -webkit-transform-origin: center top; -moz-transform-origin: center top; -ms-transform-origin: center top; transform-origin: center top; }

/*下の画面*/
.loader_cover-down { position: absolute; bottom: 0; -webkit-transform-origin: center bottom; -moz-transform-origin: center bottom; -ms-transform-origin: center bottom; transform-origin: center bottom; }

/*クラス名がついたらY軸方向に0*/
.coveranime { -webkit-transform: scaleY(0); -moz-transform: scaleY(0); -ms-transform: scaleY(0); transform: scaleY(0); }

@-webkit-keyframes loading { from { -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  to { -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

@-moz-keyframes loading { from { -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
      transform: rotate(0deg); }
  to { -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
      transform: rotate(360deg); } }

@keyframes loading { from { -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
      transform: rotate(0deg); }
  to { -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
      transform: rotate(360deg); } }

@-webkit-keyframes AnimeBtnLink_Next { 0% { -webkit-transform: translate3d(-50%, -50%, 0); transform: translate3d(-50%, -50%, 0); }
  30.99% { -webkit-transform: translate3d(70%, -50%, 0); transform: translate3d(70%, -50%, 0);
    opacity: 0; }
  70% { -webkit-transform: translate3d(-70%, -50%, 0); transform: translate3d(-70%, -50%, 0);
    opacity: 0; }
  to { -webkit-transform: translate3d(-50%, -50%, 0); transform: translate3d(-50%, -50%, 0);
    opacity: 1; } }

@-moz-keyframes AnimeBtnLink_Next { 0% { -moz-transform: translate3d(-50%, -50%, 0); transform: translate3d(-50%, -50%, 0); }
  30.99% { -moz-transform: translate3d(70%, -50%, 0); transform: translate3d(70%, -50%, 0);
    opacity: 0; }
  70% { -moz-transform: translate3d(-70%, -50%, 0); transform: translate3d(-70%, -50%, 0);
    opacity: 0; }
  to { -moz-transform: translate3d(-50%, -50%, 0); transform: translate3d(-50%, -50%, 0);
    opacity: 1; } }

@keyframes AnimeBtnLink_Next { 0% { -webkit-transform: translate3d(-50%, -50%, 0); -moz-transform: translate3d(-50%, -50%, 0); transform: translate3d(-50%, -50%, 0); }
  30.99% { -webkit-transform: translate3d(70%, -50%, 0); -moz-transform: translate3d(70%, -50%, 0); transform: translate3d(70%, -50%, 0);
    opacity: 0; }
  70% { -webkit-transform: translate3d(-70%, -50%, 0); -moz-transform: translate3d(-70%, -50%, 0); transform: translate3d(-70%, -50%, 0);
    opacity: 0; }
  to { -webkit-transform: translate3d(-50%, -50%, 0); -moz-transform: translate3d(-50%, -50%, 0); transform: translate3d(-50%, -50%, 0);
    opacity: 1; } }

.btn { border: 1px solid #1A1A1A; width: 100%; max-width: 22rem; height: 5.6rem; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; font-size: 1.6rem; font-weight: bold; position: relative; }

.btn:before { position: absolute; content: ''; width: 4.7rem; height: 0.1rem; right: -2.4rem; top: 50%; background: #1A1A1A; -webkit-transition: all .3s linear; -moz-transition: all .3s linear; transition: all .3s linear; }

.btn:after { position: absolute; content: ''; width: 0.1rem; height: 1.4rem; right: -2rem; top: 50%; margin-top: -1.1rem; background: #1A1A1A; -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); -ms-transform: rotate(-45deg); transform: rotate(-45deg); -webkit-transition: all .3s linear; -moz-transition: all .3s linear; transition: all .3s linear; }

.btn.color_white { color: #fff; border-color: #fff; }

.btn.color_white:before { background: #fff; }

.btn.color_white:after { background: #fff; }

.btn:hover:before { width: 6rem; right: -3.7rem; }

.btn:hover:after { right: -3.2rem; }

.heading-lv2 span { display: inline-block; font-size: 3.6rem; font-family: "Inter", sans-serif; font-weight: 100; }

.heading-lv3 { font-size: 4.1rem; font-weight: bold; line-height: 1.45; }

.page-main { position: relative; }

.bg__title { position: relative; padding-top: 8rem; }

.bg__title:before { position: absolute; content: ''; width: 7rem; height: 7.6rem; left: 0; top: 0; background: url(../img/bg_title.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; }

.anchor { display: inline-block; visibility: hidden; height: 0; padding-top: 10rem; margin-top: -10rem; }

@media screen and (max-width: 960px) { .anchor { padding-top: 6.6rem; margin-top: -6.6rem; } }

.key-visual { padding: 18rem 0 12.5rem; position: relative; background: #5D5F63; z-index: 2; }

@media screen and (max-width: 960px) { .key-visual { padding: 11rem 0 8rem; } }

.key-visual:after { position: absolute; content: ''; width: 112rem; height: 86.4rem; right: -60rem; bottom: 0; background: url(../img/splash_kv_sub.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; z-index: -1; -webkit-transform: translateX(100%); -moz-transform: translateX(100%); -ms-transform: translateX(100%); transform: translateX(100%); -webkit-transition: all 1s linear; -moz-transition: all 1s linear; transition: all 1s linear; }

@media screen and (max-width: 960px) { .key-visual:after { width: 71.6rem; height: 52.6rem; right: -38rem; } }

@media screen and (min-width: 961px) { .key-visual_inner { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -moz-box-orient: horizontal; -moz-box-direction: normal; -ms-flex-flow: row; flex-flow: row; -webkit-box-align: end; -moz-box-align: end; -ms-flex-align: end; align-items: flex-end; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; width: -webkit-calc((100% - 1440px) / 2 + 1440px); width: -moz-calc((100% - 1440px) / 2 + 1440px); width: calc((100% - 1440px) / 2 + 1440px); position: relative; } }

.key-visual_ttl { color: #D0D0D0; font-family: "Inter", sans-serif; font-size: 8.4rem; font-weight: 500; line-height: 1; letter-spacing: 0; }

@media screen and (max-width: 960px) { .key-visual_ttl { font-size: 8rem; } }

.key-visual_desc { color: #fff; font-size: 2.8rem; font-weight: bold; line-height: 1.75; margin-top: 3rem; }

@media screen and (max-width: 960px) { .key-visual_desc { font-size: 2.4rem; } }

.key-visual_ctn { opacity: 0; -webkit-transform: translateY(50px); -moz-transform: translateY(50px); -ms-transform: translateY(50px); transform: translateY(50px); -webkit-transition: all 1s linear; -moz-transition: all 1s linear; transition: all 1s linear; }

@media screen and (min-width: 961px) { .key-visual_ctn { width: -webkit-calc((100% - 1440px) / 2 + 720px); width: -moz-calc((100% - 1440px) / 2 + 720px); width: calc((100% - 1440px) / 2 + 720px); position: relative; }
  .key-visual_ctn--inner { margin-left: -12rem; /*position: absolute; right: 0; //bottom: 0; width: 69.2rem; z-index: 3; display: flex; flex-flow: column; align-items: flex-end;*/ } }

@media screen and (max-width: 960px) { .key-visual_ctn { padding: 0 4rem; margin: 5.5rem 0 0; } }

.key-visual_img { position: relative; overflow: hidden; }

@media screen and (min-width: 961px) { .key-visual_img { width: -webkit-calc((100% - 1440px) / 2 + 720px); width: -moz-calc((100% - 1440px) / 2 + 720px); width: calc((100% - 1440px) / 2 + 720px); } }

.key-visual_img figure { width: 100%; position: relative; height: 55.8rem; }

.key-visual_img img { width: auto; max-width: inherit; height: 55.8rem; position: absolute; right: 0; }

@media screen and (max-width: 960px) { .key-visual_img { height: 45rem; margin-right: 4rem; }
  .key-visual_img figure { position: absolute; right: 0; top: 0; } }

.p_line_ttl { font-size: 3rem; line-height: 1.6; margin-bottom: 4rem; padding-left: 7.5rem; position: relative; }

.p_line_ttl:before { position: absolute; content: ''; width: 6rem; height: 6rem; top: 50%; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); left: 0; background: url(../img/cpn_ttl_line.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; }

.font_en { font-family: "Inter", sans-serif; }

.maskToLeft { position: relative; -webkit-transform: translateZ(0); -moz-transform: translateZ(0); transform: translateZ(0); overflow: hidden; transition: transform 0.8s ease, opacity 1s ease, -webkit-transform 0.8s ease; }

.maskToLeft:before { position: absolute; content: ""; width: 100%; height: 100%; left: 0; top: 0; -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); background: #5D5F63; -webkit-transition: -webkit-transform 0.8s linear; transition: -webkit-transform 0.8s linear; -webkit-transition: -webkit-transform 1.2s linear; transition: -webkit-transform 1.2s linear; -moz-transition: transform 1.2s linear, -moz-transform 1.2s linear; transition: transform 1.2s linear; transition: transform 1.2s linear, -webkit-transform 1.2s linear, -moz-transform 1.2s linear; transition: transform 1.2s linear, -webkit-transform 1.2s linear; z-index: 2; }

.maskToLeft.active:before { -webkit-transform: translate3d(-100%, 0, 0); -moz-transform: translate3d(-100%, 0, 0); transform: translate3d(-100%, 0, 0); }

.pace-done .loadImg.active .maskToLeft:before { -webkit-transform: translate3d(-100%, 0, 0); -moz-transform: translate3d(-100%, 0, 0); transform: translate3d(-100%, 0, 0); }

.pace-done .key-visual:after { opacity: 1; -webkit-transform: translateX(0); -moz-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); }

.pace-done .key-visual_ctn { opacity: 1; -webkit-transform: translateY(0); -moz-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }

/*----------------------------------------------------------
    keyframes
----------------------------------------------------------*/
@-webkit-keyframes menu { 0% { -webkit-transform: translateX(0); transform: translateX(0); }
  50% { -webkit-transform: translateX(100%); transform: translateX(100%); }
  50.001% { -webkit-transform: translateX(-100%); transform: translateX(-100%); }
  100% { -webkit-transform: translateX(0); transform: translateX(0); } }
@-moz-keyframes menu { 0% { -moz-transform: translateX(0); transform: translateX(0); }
  50% { -moz-transform: translateX(100%); transform: translateX(100%); }
  50.001% { -moz-transform: translateX(-100%); transform: translateX(-100%); }
  100% { -moz-transform: translateX(0); transform: translateX(0); } }
@keyframes menu { 0% { -webkit-transform: translateX(0); -moz-transform: translateX(0); transform: translateX(0); }
  50% { -webkit-transform: translateX(100%); -moz-transform: translateX(100%); transform: translateX(100%); }
  50.001% { -webkit-transform: translateX(-100%); -moz-transform: translateX(-100%); transform: translateX(-100%); }
  100% { -webkit-transform: translateX(0); -moz-transform: translateX(0); transform: translateX(0); } }

@-webkit-keyframes openMenu { 0% { -webkit-transform: translateY(120%); transform: translateY(120%); }
  40% { -webkit-transform: translateY(120%); transform: translateY(120%); }
  100% { -webkit-transform: translateY(0); transform: translateY(0); } }

@-moz-keyframes openMenu { 0% { -moz-transform: translateY(120%); transform: translateY(120%); }
  40% { -moz-transform: translateY(120%); transform: translateY(120%); }
  100% { -moz-transform: translateY(0); transform: translateY(0); } }

@keyframes openMenu { 0% { -webkit-transform: translateY(120%); -moz-transform: translateY(120%); transform: translateY(120%); }
  40% { -webkit-transform: translateY(120%); -moz-transform: translateY(120%); transform: translateY(120%); }
  100% { -webkit-transform: translateY(0); -moz-transform: translateY(0); transform: translateY(0); } }

@-webkit-keyframes closeMenu { 0% { -webkit-transform: translateY(0); transform: translateY(0); }
  60% { -webkit-transform: translateY(-120%); transform: translateY(-120%); }
  100% { -webkit-transform: translateY(-120%); transform: translateY(-120%); } }

@-moz-keyframes closeMenu { 0% { -moz-transform: translateY(0); transform: translateY(0); }
  60% { -moz-transform: translateY(-120%); transform: translateY(-120%); }
  100% { -moz-transform: translateY(-120%); transform: translateY(-120%); } }

@keyframes closeMenu { 0% { -webkit-transform: translateY(0); -moz-transform: translateY(0); transform: translateY(0); }
  60% { -webkit-transform: translateY(-120%); -moz-transform: translateY(-120%); transform: translateY(-120%); }
  100% { -webkit-transform: translateY(-120%); -moz-transform: translateY(-120%); transform: translateY(-120%); } }

@-webkit-keyframes scrollDown { 0% { -webkit-transform: scaleY(0); transform: scaleY(0);
    -webkit-transform-origin: 100% 0;
            transform-origin: 100% 0; }
  50% { -webkit-transform-origin: 100% 0; transform-origin: 100% 0;
    -webkit-transform: scaleY(1);
            transform: scaleY(1); }
  50.1% { -webkit-transform: scaleY(1); transform: scaleY(1);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%; }
  100% { -webkit-transform: scaleY(0); transform: scaleY(0);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%; } }

@-moz-keyframes scrollDown { 0% { -moz-transform: scaleY(0); transform: scaleY(0);
    -moz-transform-origin: 100% 0;
         transform-origin: 100% 0; }
  50% { -moz-transform-origin: 100% 0; transform-origin: 100% 0;
    -moz-transform: scaleY(1);
         transform: scaleY(1); }
  50.1% { -moz-transform: scaleY(1); transform: scaleY(1);
    -moz-transform-origin: 0 100%;
         transform-origin: 0 100%; }
  100% { -moz-transform: scaleY(0); transform: scaleY(0);
    -moz-transform-origin: 0 100%;
         transform-origin: 0 100%; } }

@keyframes scrollDown { 0% { -webkit-transform: scaleY(0); -moz-transform: scaleY(0); transform: scaleY(0);
    -webkit-transform-origin: 100% 0;
       -moz-transform-origin: 100% 0;
            transform-origin: 100% 0; }
  50% { -webkit-transform-origin: 100% 0; -moz-transform-origin: 100% 0; transform-origin: 100% 0;
    -webkit-transform: scaleY(1);
       -moz-transform: scaleY(1);
            transform: scaleY(1); }
  50.1% { -webkit-transform: scaleY(1); -moz-transform: scaleY(1); transform: scaleY(1);
    -webkit-transform-origin: 0 100%;
       -moz-transform-origin: 0 100%;
            transform-origin: 0 100%; }
  100% { -webkit-transform: scaleY(0); -moz-transform: scaleY(0); transform: scaleY(0);
    -webkit-transform-origin: 0 100%;
       -moz-transform-origin: 0 100%;
            transform-origin: 0 100%; } }

.js-effect { -webkit-transition: opacity 0.5s, -webkit-transform 0.5s; transition: opacity 0.5s, -webkit-transform 0.5s; -moz-transition: transform 0.5s, opacity 0.5s, -moz-transform 0.5s; transition: transform 0.5s, opacity 0.5s; transition: transform 0.5s, opacity 0.5s, -webkit-transform 0.5s, -moz-transform 0.5s; }

.delay_01 { -webkit-transition-delay: 0.1s; -moz-transition-delay: 0.1s; transition-delay: 0.1s; }

.delay_02 { -webkit-transition-delay: 0.2s; -moz-transition-delay: 0.2s; transition-delay: 0.2s; }

.delay_03 { -webkit-transition-delay: 0.3s; -moz-transition-delay: 0.3s; transition-delay: 0.3s; }

.delay_04 { -webkit-transition-delay: 0.4s; -moz-transition-delay: 0.4s; transition-delay: 0.4s; }

.delay_05 { -webkit-transition-delay: 0.5s; -moz-transition-delay: 0.5s; transition-delay: 0.5s; }

.delay_06 { -webkit-transition-delay: 0.6s; -moz-transition-delay: 0.6s; transition-delay: 0.6s; }

.delay_07 { -webkit-transition-delay: 0.7s; -moz-transition-delay: 0.7s; transition-delay: 0.7s; }

.delay_08 { -webkit-transition-delay: 0.8s; -moz-transition-delay: 0.8s; transition-delay: 0.8s; }

.delay_09 { -webkit-transition-delay: 0.9s; -moz-transition-delay: 0.9s; transition-delay: 0.9s; }

.delay_10 { -webkit-transition-delay: 1s; -moz-transition-delay: 1s; transition-delay: 1s; }

.delay_11 { -webkit-transition-delay: 1.1s; -moz-transition-delay: 1.1s; transition-delay: 1.1s; }

.delay_12 { -webkit-transition-delay: 1.2s; -moz-transition-delay: 1.2s; transition-delay: 1.2s; }

.delay_13 { -webkit-transition-delay: 1.3s; -moz-transition-delay: 1.3s; transition-delay: 1.3s; }

.delay_14 { -webkit-transition-delay: 1.4s; -moz-transition-delay: 1.4s; transition-delay: 1.4s; }

.delay_15 { -webkit-transition-delay: 1.5s; -moz-transition-delay: 1.5s; transition-delay: 1.5s; }

.fadeIn { opacity: 0; }

.fadeIn.active { opacity: 1; }

.slideUp { -webkit-transform: translate3d(0, 10rem, 0); -moz-transform: translate3d(0, 10rem, 0); transform: translate3d(0, 10rem, 0); opacity: 0; }

.slideUp.active { opacity: 1; -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }

.slideToRight { -webkit-transform: translate3d(10rem, 0, 0); -moz-transform: translate3d(10rem, 0, 0); transform: translate3d(10rem, 0, 0); opacity: 0; }

.slideToRight.active { -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); opacity: 1; }

.fadeInUp { opacity: 0; -webkit-transform: translate(0, 5rem); -moz-transform: translate(0, 5rem); -ms-transform: translate(0, 5rem); transform: translate(0, 5rem); }

.fadeInUp.active { opacity: 1; -webkit-transform: translate(0, 0); -moz-transform: translate(0, 0); -ms-transform: translate(0, 0); transform: translate(0, 0); }

/** header area
====================================== **/
.page-header { position: fixed; left: 0; top: 0; width: 100%; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; padding: 2rem 3rem; z-index: 9; }

.page-header.is_active .svg .cls-1 { fill: #000; }

.page-header.is_active.open .svg .cls-1 { fill: #fff; }

.site-logo { width: 31.4rem; line-height: 0; position: relative; z-index: 12; -webkit-transition: all .3s ease; -moz-transition: all .3s ease; transition: all .3s ease; }

.site-logo a { display: inline-block; }

.site-logo a img, .site-logo a .svg { width: 31.4rem; height: auto; }

@media screen and (max-width: 960px) { .site-logo a img, .site-logo a .svg { width: 25.9rem; } }

@media screen and (max-width: 960px) { .site-logo { width: 25.9rem; } }

.menu-item + .menu-item { margin-top: 4rem; }

.menu-item_en { display: inline-block; font-family: "Inter", sans-serif; font-size: 3.5rem; font-weight: 600; letter-spacing: 0; vertical-align: middle; line-height: 1; }

@media screen and (max-width: 960px) { .menu-item_en { font-size: 3.2rem; } }

.menu-item_ja { display: inline-block; font-size: 1.8rem; font-weight: 500; line-height: 1.5; vertical-align: middle; border-left: 1px solid #EA032F; padding-left: 3rem; margin-left: 3rem; }

.menu-item a { display: inline-block; position: relative; color: #5D5F63; background: #FFFFFF; padding: 2rem 3rem 2rem 2rem; }

.menu-item a:hover { opacity: 1; background: #6CB2D3; }

.g-nav { background: #98C9E0; position: fixed; left: 0; top: 0; width: 100%; height: 100vh; z-index: 9; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; opacity: 0; visibility: hidden; -webkit-transition: all .3s linear; -moz-transition: all .3s linear; transition: all .3s linear; }

.g-nav.open { opacity: 1; visibility: visible; }

.g-nav_sns { margin-top: 6rem; }

.g-nav_sns a { display: inline-block; font-size: 3rem; font-family: "Inter", sans-serif; font-weight: 400; border-bottom: 1px solid #fff; color: #fff; }

.g-nav_sns a:hover { color: #686A6E; border-bottom: 1px solid #686A6E; }

@media screen and (max-width: 960px) { .g-nav_sns a { font-size: 2.6rem; } }

@media screen and (min-width: 961px) { .g-nav .container { width: 100%; } }

/** footer
======================================= **/
.page-footer { padding: 6rem 0; position: relative; z-index: 2; }

@media screen and (min-width: 961px) { .page-footer .container { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; } }

@media screen and (max-width: 960px) { .page-footer { padding: 6rem 4rem 2rem; } }

@media screen and (min-width: 961px) { .footer-info { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; } }

@media screen and (max-width: 960px) { .footer-info { text-align: center; } }

.footer-logo { width: 14.4rem; }

@media screen and (max-width: 960px) { .footer-logo { width: 25.6rem; margin: 0 auto; } }

.footer-desc { font-size: 1.4rem; font-weight: bold; margin-left: 2.5rem; }

@media screen and (max-width: 960px) { .footer-desc { font-size: 1.8rem; } }

.footer-desc span { display: block; font-size: 2rem; margin-top: 1rem; }

@media screen and (max-width: 960px) { .footer-desc span { font-size: 2.6rem; } }

@media screen and (min-width: 961px) { .footer-corp { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-flow: column; flex-flow: column; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; text-align: right; } }

.footer-sns a { display: inline-block; font-family: "Inter", sans-serif; font-size: 1.6rem; font-weight: 400; color: #323232; border-bottom: 1px solid #323232; }

@media screen and (max-width: 960px) { .footer-sns { display: none; } }

.copyright { display: inline-block; font-size: 1.2rem; font-family: "Inter", sans-serif; font-weight: 300; color: #686A6E; }

@media screen and (max-width: 960px) { .copyright { margin-top: 5rem; display: block; text-align: center; } }

/** home
======================================= **/
@-webkit-keyframes header_animate { 0% { opacity: 1;
    -webkit-transform: scale(1.1);
            transform: scale(1.1); }
  25% { opacity: 1; }
  100% { opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1); } }
@-moz-keyframes header_animate { 0% { opacity: 1;
    -moz-transform: scale(1.1);
         transform: scale(1.1); }
  25% { opacity: 1; }
  100% { opacity: 1;
    -moz-transform: scale(1);
         transform: scale(1); } }
@keyframes header_animate { 0% { opacity: 1;
    -webkit-transform: scale(1.1);
       -moz-transform: scale(1.1);
            transform: scale(1.1); }
  25% { opacity: 1; }
  100% { opacity: 1;
    -webkit-transform: scale(1);
       -moz-transform: scale(1);
            transform: scale(1); } }

.main-visual { padding: 18rem 0 0; position: relative; background: #5D5F63; }

@media screen and (max-width: 960px) { .main-visual { padding: 11rem 0 5rem; } }

@media screen and (min-width: 961px) { .main-visual_inner { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -moz-box-orient: horizontal; -moz-box-direction: normal; -ms-flex-flow: row; flex-flow: row; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; width: -webkit-calc((100% - 1440px) / 2 + 1220px); width: -moz-calc((100% - 1440px) / 2 + 1220px); width: calc((100% - 1440px) / 2 + 1220px); position: relative; } }

.main-visual_ttl { font-family: "Inter", sans-serif; font-size: 9rem; font-weight: 500; line-height: 1.25; color: #D0D0D0; letter-spacing: 0; }

@media screen and (max-width: 960px) { .main-visual_ttl { font-size: 9rem; } }

.main-visual_desc { font-size: 2.8rem; font-weight: bold; line-height: 1.75; color: #fff; }

.main-visual_ctn { opacity: 0; -webkit-transform: translateY(50px); -moz-transform: translateY(50px); -ms-transform: translateY(50px); transform: translateY(50px); -webkit-transition: all 1s linear; -moz-transition: all 1s linear; transition: all 1s linear; }

@media screen and (min-width: 961px) { .main-visual_ctn { position: relative; }
  .main-visual_ctn--inner { position: absolute; right: 0; width: 100rem; z-index: 3; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-flow: column; flex-flow: column; -webkit-box-align: end; -moz-box-align: end; -ms-flex-align: end; align-items: flex-end; } }

@media screen and (max-width: 960px) { .main-visual_ctn { padding: 0 4rem; position: relative; z-index: 2; margin-top: -10rem; }
  .main-visual_ctn--inner { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: reverse; -moz-box-orient: vertical; -moz-box-direction: reverse; -ms-flex-flow: column-reverse; flex-flow: column-reverse; text-align: right; } }

.main-visual_img { position: relative; }

.main-visual_img:after { position: absolute; content: ''; width: 137.5rem; height: 112rem; right: 0; top: 0; background: url(../img/splash_kv.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; -webkit-transform: translateX(-100%); -moz-transform: translateX(-100%); -ms-transform: translateX(-100%); transform: translateX(-100%); -webkit-transition: all 1s linear; -moz-transition: all 1s linear; transition: all 1s linear; }

@media screen and (max-width: 960px) { .main-visual_img:after { width: 102rem; height: 83rem; } }

@media screen and (min-width: 961px) { .main-visual_img { width: -webkit-calc((100% - 1200px) / 2 + 850px); width: -moz-calc((100% - 1200px) / 2 + 850px); width: calc((100% - 1200px) / 2 + 850px); overflow: hidden; margin-right: auto; }
  .main-visual_img figure { width: 100%; position: relative; height: 83rem; }
  .main-visual_img img { width: auto; max-width: inherit; height: 83rem; position: absolute; right: 0; } }

@media screen and (max-width: 960px) { .main-visual_img { height: 60rem; margin-right: 11rem; }
  .main-visual_img figure { position: absolute; right: 0; top: 0; }
  .main-visual_img img { width: auto; max-width: inherit; height: 60rem; } }

.pace-done .main-visual_img img { -webkit-animation: header_animate 2s linear; -moz-animation: header_animate 2s linear; animation: header_animate 2s linear; }

.pace-done .main-visual_img:after { -webkit-transform: translateX(0); -moz-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); }

.pace-done .main-visual_ctn { opacity: 1; -webkit-transform: translateY(0); -moz-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }

.p-home { padding: 0 0 17rem 0; /*&:after { position: absolute; content: ''; width: 200%; height: 150%; left: 0; top: 0; background: #8795A2; z-index: -1; transform: skew(0deg, -45deg); @media (min-width: 961px) and (max-width: 1600px) { width: 230%; } @include sp { height: 67%; top: auto; bottom: 0; } }*/ }

@media screen and (max-width: 960px) { .p-home { padding: 0 0 10rem 0; } }

/** p-home_policy **/
.p-home_policy { padding: 16rem 0 25rem; position: relative; z-index: 2; }

.p-home_policy:after { position: absolute; content: ''; width: 98.2rem; height: 72.6rem; right: -100%; bottom: 0; background: url(../img/top/poli_line.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; z-index: -1; -webkit-transition: all 2s linear; -moz-transition: all 2s linear; transition: all 2s linear; -webkit-transition-delay: 0.1s; -moz-transition-delay: 0.1s; transition-delay: 0.1s; opacity: 0; }

@media screen and (max-width: 960px) { .p-home_policy:after { width: 75rem; height: 55rem; right: -33rem; bottom: 15rem; } }

.p-home_policy.fadein:after { right: -40rem; opacity: 1; }

@media screen and (max-width: 960px) { .p-home_policy { padding: 10rem 0 45rem; } }

.p-home_policy .heading-lv2 { margin-bottom: 10rem; }

@media screen and (min-width: 961px) { .p-home_policy_row { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
  .p-home_policy_row_img { width: 33.8rem; } }

@media screen and (max-width: 960px) { .p-home_policy_row_img { width: 34rem; margin: 0 auto; } }

.p-home_policy_row_ctn .heading-lv3 { margin-bottom: 5rem; }

.p-home_policy_row_ctn p { line-height: 1.8667; }

@media screen and (max-width: 960px) { .p-home_policy_row_ctn { margin-bottom: 7rem; } }

/** p-home_link **/
@media screen and (max-width: 960px) { .p-home_link .bg__title { padding: 0 0 0 10rem; }
  .p-home_link .bg__title:before { top: 1rem; } }

.p-home_link_item + .p-home_link_item { margin-top: 8rem; }

@media screen and (max-width: 960px) { .p-home_link_item + .p-home_link_item { margin-top: 4rem; } }

.p-home_link_item__img { width: -webkit-calc(660/1000 * 100%); width: -moz-calc(660/1000 * 100%); width: calc(660/1000 * 100%); }

@media screen and (max-width: 960px) { .p-home_link_item__img { width: 100%; } }

.p-home_link_item__ctn { width: -webkit-calc(340/1000 * 100%); width: -moz-calc(340/1000 * 100%); width: calc(340/1000 * 100%); padding: 3rem; }

@media screen and (max-width: 960px) { .p-home_link_item__ctn { width: 100%; padding: 2rem 3rem; background-color: #323232; min-height: 19rem; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-flow: column; flex-flow: column; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; } }

.p-home_link_item__overlay { position: absolute; left: 0; top: 0; width: 100%; height: 100%; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; background: rgba(234, 3, 47, 0.85); opacity: 0; visibility: hidden; -webkit-transition: all 0.3s linear; -moz-transition: all 0.3s linear; transition: all 0.3s linear; }

.p-home_link_item__overlay span { display: inline-block; }

.p-home_link_item__overlay span img { width: 9rem; height: auto; }

.p-home_link_item__ttl { font-size: 5.4rem; font-family: "Inter", sans-serif; font-weight: 100; letter-spacing: 0; line-height: 1.15; white-space: nowrap; }

@media screen and (max-width: 960px) { .p-home_link_item__ttl { font-size: 4.4rem; } }

.p-home_link_item__sub { font-size: 1.8rem; font-weight: 500; margin-top: 2rem; }

@media screen and (max-width: 960px) { .p-home_link_item__sub { font-size: 2rem; padding-left: 10rem; } }

.p-home_link_item a { position: relative; overflow: hidden; background: #323232; color: #FFFFFF; }

@media screen and (min-width: 961px) { .p-home_link_item a { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -moz-box-orient: horizontal; -moz-box-direction: normal; -ms-flex-flow: row wrap; flex-flow: row wrap; }
  .p-home_link_item a:hover { opacity: 1; }
  .p-home_link_item a:hover .p-home_link_item__overlay { opacity: 1; visibility: visible; } }

.p-home_link_item.reverse a { -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -moz-box-orient: horizontal; -moz-box-direction: reverse; -ms-flex-flow: row-reverse; flex-flow: row-reverse; }

@media screen and (min-width: 961px) { .p-home_link_item:nth-child(3) .p-home_link_item__sub, .p-home_link_item:nth-child(4) .p-home_link_item__sub { margin-top: 8rem; } }

.process-step_box { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -moz-box-orient: horizontal; -moz-box-direction: normal; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; background: #EFEFEF; padding: 2rem 2rem 2rem 14rem; position: relative; min-height: 19rem; }

@media screen and (max-width: 960px) { .process-step_box { padding: 6.5rem 5rem 3rem; } }

.process-step_box:after { position: absolute; content: ''; width: 0; height: 0; left: 50%; bottom: -3.2rem; border-left: 2.5rem solid transparent; border-right: 2.5rem solid transparent; border-top: 3.2rem solid #EFEFEF; }

.process-step_box + .process-step_box { margin-top: 7rem; }

.process-step_box__icon { width: 12.8rem; height: 12.8rem; position: absolute; left: 0; top: 0; overflow: hidden; z-index: 2; padding: 1.25rem 0 0 1.25rem; }

@media screen and (max-width: 960px) { .process-step_box__icon { padding: 2rem 0 0 1rem; } }

.process-step_box__icon:after { position: absolute; content: ''; width: 0; height: 0; left: -8.5rem; top: -2.5rem; border-left: 10.8rem solid transparent; border-right: 10.8rem solid transparent; border-bottom: 10.8rem solid #6CB2D3; -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); -ms-transform: rotate(-45deg); transform: rotate(-45deg); z-index: -1; }

.process-step_box__icon img { width: 6.1rem; height: auto; }

.process-step_box__ctn { width: 60rem; }

@media screen and (max-width: 960px) { .process-step_box__ctn { width: 100%; } }

.process-step_box__ctn dt { font-size: 2rem; font-weight: bold; color: #EA032F; line-height: 1.7; margin-bottom: 2rem; }

@media screen and (max-width: 960px) { .process-step_box__ctn dt { font-size: 3rem; padding-left: 5rem; } }

.process-step_box__ctn dd { line-height: 1.867; }

@media screen and (max-width: 960px) { .process-step_box__ctn dd { letter-spacing: 0; } }

.process-step_box__img { width: 19rem; }

@media screen and (max-width: 960px) { .process-step_box__img { width: 100%; text-align: center; margin-top: 2rem; }
  .process-step_box__img img { max-width: 19rem; }
  .process-step_box__img.show_sp { display: block; } }

@media screen and (min-width: 961px) { .process-step_box.no_img .process-step_box__ctn { width: 100%; } }

.p-business { position: relative; }

.p-business:before, .p-business:after { position: absolute; content: ''; z-index: -1; }

.p-business:before { width: 80%; height: 40%; left: 42%; top: 32%; background: rgba(174, 175, 177, 0.3); -webkit-transform: skewX(45deg); -moz-transform: skewX(45deg); -ms-transform: skewX(45deg); transform: skewX(45deg); }

@media screen and (max-width: 960px) { .p-business:before { width: 330%; height: 88%; left: 262%; top: 30.99%; } }

.p-business:after { width: 80%; height: 40%; top: -8%; left: 42%; background: rgba(174, 175, 177, 0.3); -webkit-transform: skewX(-45deg); -moz-transform: skewX(-45deg); -ms-transform: skewX(-45deg); transform: skewX(-45deg); }

@media screen and (max-width: 960px) { .p-business:after { width: 330%; height: 88%; top: -57%; left: 262%; } }

@media screen and (max-width: 960px) { .p-business { padding: 0 0 8rem; } }

.p-business_policy { margin: 10rem 0 20rem 0; position: relative; z-index: 2; }

@media screen and (max-width: 960px) { .p-business_policy { margin: 0; padding: 16rem 0 17rem; } }

@media screen and (min-width: 961px) { .p-business_policy .container { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; } }

@media screen and (min-width: 961px) { .p-business_policy__left { width: -webkit-calc(475/1000 * 100%); width: -moz-calc(475/1000 * 100%); width: calc(475/1000 * 100%); } }

.p-business_policy__left .heading-lv2 { margin-bottom: 4rem; }

.p-business_policy__left figure { width: 56.1rem; margin-left: -16.1rem; }

.p-business_policy__right { line-height: 1.867; }

@media screen and (min-width: 961px) { .p-business_policy__right { width: -webkit-calc(470/1000 * 100%); width: -moz-calc(470/1000 * 100%); width: calc(470/1000 * 100%); padding-top: 8rem; } }

.p-business_environment { padding: 10rem 0 17rem; position: relative; z-index: 2; }

@media screen and (max-width: 960px) { .p-business_environment { padding: 22rem 0 30rem; } }

.p-business_environment__title .heading-lv2 { margin-bottom: 5rem; }

@media screen and (max-width: 960px) { .p-business_environment__title .heading-lv2 { margin-bottom: 6rem; } }

.p-business_environment__title h3 { font-size: 3.8rem; font-weight: bold; line-height: 1.45; }

.p-business_environment__line { width: -webkit-calc((100% - 1440px) / 2 + 480px); width: -moz-calc((100% - 1440px) / 2 + 480px); width: calc((100% - 1440px) / 2 + 480px); }

.p-business_environment__line figure { width: 100%; height: 100%; position: relative; overflow: hidden; }

.p-business_environment__line figure img { width: auto; max-width: inherit; height: 112rem; position: absolute; top: 0; right: 0; }

@media screen and (max-width: 960px) { .p-business_environment__line { display: none; } }

@media screen and (min-width: 961px) { .p-business_environment__ctn { width: -webkit-calc((100% - 1440px) / 2 + 880px); width: -moz-calc((100% - 1440px) / 2 + 880px); width: calc((100% - 1440px) / 2 + 880px); } }

.p-business_environment__row { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -moz-box-orient: horizontal; -moz-box-direction: normal; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; margin: 19rem 0 0; }

@media screen and (max-width: 960px) { .p-business_environment__row { padding: 0 4rem; margin: 10rem 0 0; } }

.p-business_environment__row dl { max-width: 66rem; line-height: 1.867; }

.p-business_environment__row dl dt { font-size: 3rem; font-weight: bold; line-height: 1.5; margin-bottom: 2rem; }

.p-business_environment__row dl dt:not(:first-child) { margin-top: 12rem; }

@media screen and (min-width: 961px) { .p-business_environment__row dl dd ul > li { padding-left: 1.5rem; text-indent: -1.5rem; } }

@media screen and (min-width: 961px) { .p-business_environment__row dl dd ul ol { padding-left: 1.5rem; } }

@media screen and (max-width: 960px) { .p-business_environment__row figure { text-align: right; margin-top: 12rem; }
  .p-business_environment__row figure img { width: 46rem; } }

.p-business_process { position: relative; z-index: 2; padding: 7rem 0 24rem; background: #5D5F63; }

.p-business_process:after { position: absolute; content: ''; width: 88rem; height: 56rem; right: -42rem; bottom: 0; background: url(../img/business/business_line_process.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; z-index: -1; }

.p-business_process__heading { margin-bottom: 10rem; }

.p-business_process__heading .heading-lv2 { margin-bottom: 5rem; }

.p-business_process__heading .bg__title { color: #fff; }

.p-business_process__heading .bg__title:after { width: 15.8rem; height: 3.3rem; background: url(../img/business/bg_title.svg) left bottom no-repeat; -moz-background-size: cover; background-size: cover; }

.p-business_process__title { font-size: 4.1rem; font-weight: bold; color: #fff; }

@media screen and (max-width: 960px) { .p-business_process__title { font-size: 3.8rem; } }

.p-business_gallery { position: relative; }

@media screen and (max-width: 960px) { .p-business_gallery:before { position: absolute; content: ''; width: 0; height: 0; top: -81rem; right: 0; border-bottom: 81rem solid #E7EAEC; border-left: 81rem solid transparent; z-index: -1; } }

@media screen and (min-width: 961px) { .gallery__slider__item { max-width: 100rem !important; } }

.gallery__slider .slick-slide { width: 31.2rem; }

.p-record { padding: 20rem 0 26rem 0; }

.p-record:after { position: absolute; content: ''; width: 200%; height: 150%; top: 0; left: -10%; background: rgba(93, 95, 99, 0.3); z-index: -1; -webkit-transform: skewY(-45deg); -moz-transform: skewY(-45deg); -ms-transform: skewY(-45deg); transform: skewY(-45deg); }

@media screen and (max-width: 960px) { .p-record { padding: 10rem 0 15rem 0; } }

.p-record__ttl { font-size: 2.4rem; font-weight: 500; color: #fff; text-align: center; margin-bottom: 7rem; }

.p-record__list li + li { margin-top: 6rem; }

.p-record__list li a { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -moz-box-orient: horizontal; -moz-box-direction: normal; -ms-flex-flow: row; flex-flow: row; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; width: 100%; height: 10rem; background: #323232; color: #fff; border: 2px solid #AEAFB1; }

.p-record__list li a:hover { background: #5D5F63; opacity: 1; }

.p-record__item--logo { width: 11.5rem; }

.p-record__item--cp { font-family: "Inter", sans-serif; font-weight: 300; line-height: 1; font-size: 3.3rem; font-weight: 300; letter-spacing: 0; margin-left: 3rem; }

/** style modal **/
.p-record_modal { width: 100%; max-width: 100rem; padding: 4rem 3rem; border: 0.8rem solid #EA032F; background: #C6C7C8; overflow: hidden; }

.p-record_modal:after { position: absolute; content: ''; width: 98.4rem; height: 105.4rem; left: 0; bottom: 0; background: url(../img/works/works_bg.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; z-index: 1; }

.p-record_modal.modal2 { max-width: 80rem; }

.p-record_modal__heading { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; margin: 0 0 3rem 0; }

@media screen and (max-width: 960px) { .p-record_modal__heading { margin: 0 0 3rem 0; } }

.p-record_modal__heading h2 { display: inline-block; font-size: 3.3rem; font-family: "Inter", sans-serif; font-weight: 300; line-height: 1; letter-spacing: 0; margin-left: 2.5rem; }

.p-record_modal__heading span { display: inline-block; width: 11.5rem; line-height: 0; }

.p-record_modal__content { position: relative; z-index: 2; }

.p-record_modal__content .tbl01 { width: 100%; }

.p-record_modal__content .tbl01 thead th { font-size: 13px; font-weight: bold; padding: 1rem; vertical-align: middle; color: #000; }

@media screen and (max-width: 960px) { .p-record_modal__content .tbl01 thead th { padding: 5px; } }

.p-record_modal__content .tbl01 tbody tr:nth-child(odd) td { background: #AEAFB1; }

.p-record_modal__content .tbl01 tbody td { padding: 5px 10px; font-size: 12px; font-weight: 500; letter-spacing: 0; line-height: 1.35; vertical-align: middle; color: #000; height: 3.4rem; }

.p-record_modal__content .tbl01 tbody td:nth-child(1) { width: 270px; }

.p-record_modal__content .tbl01 tbody td:nth-child(2) { width: 170px; }

.p-record_modal__content .tbl01 tbody td:nth-child(3) { width: 80px; }

.p-record_modal__content .tbl01 tbody td:nth-child(4) { width: 210px; }

.p-record_modal__content .tbl01 tbody td:nth-child(5) { width: 180px; }

@media screen and (max-width: 960px) { .p-record_modal__content .tbl01 tbody td { padding: 5px; } }

.p-record_modal__content .tbl02 { width: 100%; }

.p-record_modal__content .tbl02 thead th { font-size: 15px; text-align: left; border-left: 1px solid #686A6E; border-bottom: 1px solid #686A6E; vertical-align: middle; padding: 1rem 3rem; }

.p-record_modal__content .tbl02 thead th:nth-child(1) { border-left: none; width: 70%; padding-left: 6rem; }

.p-record_modal__content .tbl02 tbody th, .p-record_modal__content .tbl02 tbody td { font-size: 14px; letter-spacing: 0; line-height: 1.5; padding: 0.5rem 3rem; }

.p-record_modal__content .tbl02 tbody th { padding-left: 6rem; font-weight: normal; }

.p-record_modal__content .tbl02 tbody td { border-left: 1px solid #686A6E; }

@media screen and (max-width: 960px) { .p-record_modal .table_wrap { width: 100%; padding-bottom: 15px; overflow-x: scroll; }
  .p-record_modal .table_wrap::-webkit-scrollbar { height: 10px; }
  .p-record_modal .table_wrap::-webkit-scrollbar-track { background: #ececec; }
  .p-record_modal .table_wrap::-webkit-scrollbar-thumb { background: #686A6E; }
  .p-record_modal .table_wrap table { width: 920px; } }

.p-record_modal .fancybox-button.fancybox-close-small { top: 3rem; right: 3rem; width: 6rem; height: 6rem; padding: 0; background: url(../img/icon_close.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; }

.p-record_modal .fancybox-button.fancybox-close-small svg { display: none; }

.p-record_modal__note { font-size: 10px; margin: 1.5rem 0 0 1rem; color: #000; }

.p-recruit { padding: 10rem 0 13.5rem 0; position: relative; }

.p-recruit:before, .p-recruit:after { position: absolute; content: ''; z-index: -1; }

.p-recruit:before { width: 100%; height: 80%; left: 35%; top: 80%; background: rgba(174, 175, 177, 0.3); -webkit-transform: skewX(45deg); -moz-transform: skewX(45deg); -ms-transform: skewX(45deg); transform: skewX(45deg); }

@media screen and (max-width: 960px) { .p-recruit:before { width: 335%; height: 150%; left: 150%; top: 53%; } }

.p-recruit:after { width: 100%; height: 80%; top: 0; left: 35%; background: rgba(174, 175, 177, 0.3); -webkit-transform: skewX(-45deg); -moz-transform: skewX(-45deg); -ms-transform: skewX(-45deg); transform: skewX(-45deg); }

@media screen and (max-width: 960px) { .p-recruit:after { width: 260%; height: 93%; top: -40%; left: 60%; } }

@media screen and (max-width: 960px) { .p-recruit { padding: 10rem 0 0; } }

@media screen and (max-width: 960px) { .p-recruit__heading { margin-bottom: 18rem; } }

.p-recruit .heading-lv3 { font-size: 3rem; margin-top: 2rem; }

.p-recruit_box + .p-recruit_box { margin-top: 2.5rem; }

@media screen and (max-width: 960px) { .p-recruit_box + .p-recruit_box { margin-top: 4.5rem; } }

.p-recruit_box dl { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; border-bottom: 1px solid #6CB2D3; padding: 1rem 0; line-height: 1.867; }

.p-recruit_box dl dt { font-weight: 500; width: -webkit-calc(120/574 * 100%); width: -moz-calc(120/574 * 100%); width: calc(120/574 * 100%); padding: 0 1rem; }

@media screen and (max-width: 960px) { .p-recruit_box dl dt { width: 14rem; padding: 0; } }

.p-recruit_box dl dd { font-weight: 500; width: -webkit-calc(454/574 * 100%); width: -moz-calc(454/574 * 100%); width: calc(454/574 * 100%); padding: 0 1rem; }

@media screen and (max-width: 960px) { .p-recruit_box dl dd { width: 34rem; padding: 0; } }

@media screen and (max-width: 960px) { .p-recruit_ttl { font-size: 3.8rem; margin-bottom: 7rem; } }

.p-recruit_sub { font-size: 2rem; font-weight: bold; line-height: 1.8; }

@media screen and (max-width: 960px) { .p-recruit_sub { font-size: 3.2rem; } }

.p-recruit_top { position: relative; z-index: 2; }

@media screen and (min-width: 961px) { .p-recruit_top__right { width: 67.6rem; margin-left: auto; margin-top: 8rem; }
  .p-recruit_top__right h4:not(.first) { margin-top: 7rem; } }

@media screen and (max-width: 960px) { .p-recruit_top__right h4:not(.first) { margin-top: 11rem; } }

.p-recruit_bottom { padding: 12rem 0 0; position: relative; z-index: 2; }

@media screen and (min-width: 961px) { .p-recruit_bottom { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; position: relative; } }

@media screen and (max-width: 960px) { .p-recruit_bottom { padding: 14rem 0 42rem; }
  .p-recruit_bottom:after { position: absolute; content: ''; width: 71.6rem; height: 52.6rem; left: -40rem; bottom: -20rem; background: url(../img/company/cpn_line1_sp.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; } }

.p-recruit_bottom__line { width: -webkit-calc((100% - 1440px) / 2 + 480px); width: -moz-calc((100% - 1440px) / 2 + 480px); width: calc((100% - 1440px) / 2 + 480px); }

.p-recruit_bottom__line figure { width: 100%; height: 100%; position: relative; margin-top: 22rem; }

.p-recruit_bottom__line figure img { width: auto; max-width: inherit; height: 112rem; position: absolute; top: 0; right: 0; }

@media screen and (max-width: 960px) { .p-recruit_bottom__line { display: none; } }

@media screen and (min-width: 961px) { .p-recruit_bottom__ctn { width: -webkit-calc((100% - 1440px) / 2 + 880px); width: -moz-calc((100% - 1440px) / 2 + 880px); width: calc((100% - 1440px) / 2 + 880px); padding-left: 6rem; } }

@media screen and (max-width: 960px) { .p-recruit_bottom__ctn { padding: 0 4rem; } }

.p-recruit_bottom__inner { max-width: 67.6rem; }

.p-recruit_info { background: #5D5F63; margin-top: 10rem; }

.p-recruit_info__top { color: #fff; padding: 3rem 3rem 1.5rem 3rem; }

@media screen and (max-width: 960px) { .p-recruit_info__top { padding: 3rem 2rem 3rem 3rem; } }

.p-recruit_info__top h3 { font-size: 1.9rem; position: relative; padding-left: 5rem; margin-bottom: 1.5rem; }

.p-recruit_info__top h3:before { position: absolute; content: ''; width: 4rem; height: 4.4rem; left: 0; top: 50%; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); background: url(../img/recruit/rc_line_ttl.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; }

@media screen and (max-width: 960px) { .p-recruit_info__top h3 { font-size: 3rem; padding-left: 8rem; }
  .p-recruit_info__top h3:before { width: 6.5rem; height: 7rem; } }

.p-recruit_info__top p { padding-left: 5rem; line-height: 1.75; }

@media screen and (max-width: 960px) { .p-recruit_info__top p { padding-left: 8rem; } }

.p-recruit_info__bottom { background: #6CB2D3; padding: 1.5rem 3rem; }

@media screen and (min-width: 961px) { .p-recruit_info__bottom { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; } }

@media screen and (max-width: 960px) { .p-recruit_info__bottom { text-align: center; padding: 3rem 0 4rem; } }

.p-recruit_info__bottom span { display: inline-block; font-family: "Inter", sans-serif; font-weight: 500; font-size: 2.1rem; }

@media screen and (max-width: 960px) { .p-recruit_info__bottom span { font-size: 3.8rem; margin: 1.5rem 0; } }

.p-recruit_info__bottom a { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; width: 20.2rem; height: 3.9rem; font-size: 1.6rem; font-weight: 500; background: #5D5F63; color: #fff; -moz-border-radius: 0.6rem; border-radius: 0.6rem; }

.p-recruit_info__bottom a:hover { background: #E50044; }

@media screen and (max-width: 960px) { .p-recruit_info__bottom a { width: 32.4rem; height: 6.2rem; margin: 0 auto; font-size: 2.6rem; } }

.p-company { padding: 0 0 0 0; }

.p-company:before, .p-company:after { position: absolute; content: ''; z-index: -1; }

.p-company:before { width: 80%; height: 60%; left: 44%; top: 50%; background: rgba(174, 175, 177, 0.3); -webkit-transform: skewX(45deg); -moz-transform: skewX(45deg); -ms-transform: skewX(45deg); transform: skewX(45deg); }

@media screen and (max-width: 960px) { .p-company:before { width: 200%; height: 100%; left: 280%; top: 30%; } }

.p-company:after { width: 80%; height: 60%; top: -10%; left: 44%; background: rgba(174, 175, 177, 0.3); -webkit-transform: skewX(-45deg); -moz-transform: skewX(-45deg); -ms-transform: skewX(-45deg); transform: skewX(-45deg); }

@media screen and (max-width: 960px) { .p-company:after { width: 200%; height: 100%; top: -70%; left: 280%; } }

@media screen and (max-width: 960px) { .p-company { padding: 0 0 12rem 0; } }

.p-company_profile { padding: 10rem 0 12rem; }

@media screen and (min-width: 961px) { .p-company_profile .container { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; } }

.p-company_profile .heading-lv2 { margin-bottom: 4rem; }

@media screen and (max-width: 960px) { .p-company_profile .heading-lv3 { font-size: 3.8rem; margin-bottom: 16rem; } }

@media screen and (min-width: 961px) { .p-company_profile__content { width: -webkit-calc(650/1000 * 100%); width: -moz-calc(650/1000 * 100%); width: calc(650/1000 * 100%); margin-top: 8rem; } }

.p-company_profile__ttl { font-size: 4.1rem; margin-bottom: 6rem; }

.p-company_profile__row { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -moz-box-orient: horizontal; -moz-box-direction: normal; -ms-flex-flow: row wrap; flex-flow: row wrap; padding: 2rem 0; position: relative; }

@media screen and (max-width: 960px) { .p-company_profile__row { -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; } }

.p-company_profile__row:after { position: absolute; content: ''; width: 100%; height: 1px; left: 0; bottom: 0; background: #6CB2D3; }

.p-company_profile__row dt { font-weight: bold; color: #323232; width: -webkit-calc(150/564 * 100%); width: -moz-calc(150/564 * 100%); width: calc(150/564 * 100%); }

@media screen and (max-width: 960px) { .p-company_profile__row dt { width: 18rem; } }

.p-company_profile__row dd { width: -webkit-calc(414/564 * 100%); width: -moz-calc(414/564 * 100%); width: calc(414/564 * 100%); line-height: 1.867; font-weight: 500; }

@media screen and (max-width: 960px) { .p-company_profile__row dd { width: 37rem; letter-spacing: 0; } }

@media screen and (min-width: 961px) { .p-company_profile__row.near_last:after { max-width: 46.7rem; }
  .p-company_profile__row.last:after { max-width: 26.1rem; } }

@media screen and (max-width: 960px) { .p-company_profile__row.last:after { background: none; } }

.p-company_info { position: relative; /** top **/ /** middle **/ /** bottom **/ }

@media screen and (min-width: 961px) { .p-company_info__row { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -moz-box-orient: horizontal; -moz-box-direction: normal; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; } }

@media screen and (min-width: 961px) { .p-company_info__cols--left { width: -webkit-calc(330/1000 * 100%); width: -moz-calc(330/1000 * 100%); width: calc(330/1000 * 100%); } }

@media screen and (min-width: 961px) { .p-company_info__cols--right { width: -webkit-calc(560/1000 * 100%); width: -moz-calc(560/1000 * 100%); width: calc(560/1000 * 100%); } }

@media screen and (min-width: 961px) { .p-company_info__top .p-company_info__cols--left { padding: 0 0 0 4rem; } }

.p-company_info__top__item { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }

@media screen and (min-width: 961px) { .p-company_info__top .p-company_info__cols--right .p-company_info__top__list { max-width: 29rem; } }

@media screen and (max-width: 960px) { .p-company_info__top .p-company_info__cols--right { margin-top: 13rem; } }

@media screen and (max-width: 960px) { .p-company_info__middle { padding: 29rem 0 0; position: relative; }
  .p-company_info__middle:before { position: absolute; content: ''; width: 71.6rem; height: 52.6rem; left: -41rem; top: 9rem; background: url(../img/company/cpn_line1_sp.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; } }

.p-company_info__middle .p-company_info__row { -webkit-box-align: end; -moz-box-align: end; -ms-flex-align: end; align-items: flex-end; }

.p-company_info__middle .cpn-img { margin-left: -8.5rem; }

@media screen and (max-width: 960px) { .p-company_info__middle .cpn-img { margin-left: auto; margin-bottom: 11rem; } }

.p-company_info__middle .p-company_info__cols--left.fadein .maskToLeft:before { -webkit-transform: translate3d(-100%, 0, 0); -moz-transform: translate3d(-100%, 0, 0); transform: translate3d(-100%, 0, 0); }

@media screen and (min-width: 961px) { .p-company_info__middle__box { max-width: 43rem; } }

.p-company_info__middle__box + .p-company_info__middle__box { margin-top: 4rem; }

.p-company_info__middle__box--ttl { font-size: 2rem; line-height: 1.8; }

@media screen and (max-width: 960px) { .p-company_info__middle__box--ttl { font-size: 2.6rem; } }

.p-company_info__bottom { padding: 12rem 0 18rem 0; position: relative; }

@media screen and (max-width: 960px) { .p-company_info__bottom { padding: 18rem 0 30rem; } }

.p-company_info__bottom:after { position: absolute; content: ''; width: 88rem; height: 56rem; right: -43rem; bottom: 0; background: url(../img/company/cpn_line2.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; z-index: -1; }

@media screen and (max-width: 960px) { .p-company_info__bottom:after { width: 65.3rem; height: 41.5rem; right: -28rem; } }

.p-company_info__bottom .cpn-img { margin: 8rem 0 0 auto; }

@media screen and (max-width: 960px) { .p-company_info__bottom .cpn-img { margin: 10rem auto 0 0; } }

.p-company_info__bottom .p-company_info__cols--right.fadein .maskToLeft:before { -webkit-transform: translate3d(-100%, 0, 0); -moz-transform: translate3d(-100%, 0, 0); transform: translate3d(-100%, 0, 0); }

@media screen and (min-width: 961px) { .p-company_info__bottom .p-company_info__cols--left { padding: 0 0 0 4rem; } }

.p-company_info__bottom__box--item { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }

.lis-item { border-bottom: 1px solid #6CB2D3; padding: 0.5rem 0; font-weight: 500; }

.lis-item + .lis-item { margin-top: 1rem; }

@media screen and (max-width: 960px) { .lis-item { font-size: 2.2rem; letter-spacing: 0; } }

.cpn-img { width: 43rem; }

.p-contact { position: relative; }

.p-contact:before, .p-contact:after { position: absolute; content: ''; }

@media screen and (max-width: 960px) { .p-contact:before { width: 150%; height: 100%; left: 75%; top: 90%; background: rgba(174, 175, 177, 0.3); -webkit-transform: skewX(45deg); -moz-transform: skewX(45deg); -ms-transform: skewX(45deg); transform: skewX(45deg); } }

.p-contact:after { width: 200%; height: 150%; top: 0; left: -10%; background: rgba(93, 95, 99, 0.3); z-index: -1; -webkit-transform: skewY(-45deg); -moz-transform: skewY(-45deg); -ms-transform: skewY(-45deg); transform: skewY(-45deg); }

@media screen and (max-width: 960px) { .p-contact:after { width: 270%; height: 220%; top: -130.05%; left: 175%; background: rgba(174, 175, 177, 0.3); -webkit-transform: skewX(-45deg); -moz-transform: skewX(-45deg); -ms-transform: skewX(-45deg); transform: skewX(-45deg); } }

.p-contact_wrap { position: relative; padding: 15rem 0 14rem 0; }

@media screen and (max-width: 960px) { .p-contact_wrap { padding: 11rem 0 42rem; } }

.p-contact_wrap:before { position: absolute; content: ''; width: 88rem; height: 56rem; right: 70%; bottom: 0; background: url(../img/business/business_line_process.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; z-index: -1; }

@media screen and (max-width: 960px) { .p-contact_wrap:before { width: 71.6rem; height: 52.6rem; left: -35rem; bottom: -20rem; background: url(../img/company/cpn_line1_sp.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; z-index: 1; } }

.p-contact.p-thanks:before { width: 0; height: 0; background: transparent; }

@media screen and (max-width: 960px) { .p-contact.p-thanks:after { width: 500%; height: 200%; top: -45%; left: 0; } }

.p-contact.p-thanks .p-contact_wrap:before { width: 0; height: 0; background: transparent; }

.ckb_box input { padding: 0; height: initial; width: initial; margin-bottom: 0; display: none; cursor: pointer; }

.ckb_box input:checked + label:after { content: ''; display: block; position: absolute; top: -7px; left: 12px; width: 6px; height: 25px; border: solid #686A6E; border-width: 0 2px 2px 0; -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); }

.ckb_box label { position: relative; cursor: pointer; }

.ckb_box label:before { content: ''; -webkit-appearance: none; background-color: transparent; border: 1px solid #686A6E; padding: 0; width: 1.9rem; height: 1.9rem; display: inline-block; position: relative; vertical-align: middle; cursor: pointer; margin-right: 1rem; }

.ipt { width: 100%; height: 100%; border: none; outline: none; padding: 1.2rem 2.5rem; }

.ipt.are { height: 45rem; }

.req { display: inline-block; color: #5D5F63; font-size: 1.3rem; font-weight: 500; border: 1px solid #5D5F63; background: #fff; -moz-border-radius: 1rem; border-radius: 1rem; padding: 0.3rem 0.5rem; line-height: 1; margin-left: 1rem; }

@media screen and (max-width: 960px) { .req { font-size: 1.8rem; padding: 0.3rem 1rem; line-height: 1.5; -moz-border-radius: 2rem; border-radius: 2rem; } }

@media screen and (min-width: 961px) { .p-frm { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; } }

.p-frm + .p-frm { margin-top: 2rem; }

@media screen and (max-width: 960px) { .p-frm + .p-frm { margin-top: 3rem; } }

.p-frm.last .p-frm_lbl { padding-top: 2.5rem; -webkit-box-align: start; -moz-box-align: start; -ms-flex-align: start; align-items: flex-start; }

.p-frm_lbl { font-weight: 500; padding: 1.5rem 2.5rem 1.5rem 3rem; }

@media screen and (min-width: 961px) { .p-frm_lbl { width: -webkit-calc(220/1000 * 100%); width: -moz-calc(220/1000 * 100%); width: calc(220/1000 * 100%); } }

.p-frm_ctn { background: #FFFFFF; position: relative; }

@media screen and (min-width: 961px) { .p-frm_ctn { width: -webkit-calc(717/1000 * 100%); width: -moz-calc(717/1000 * 100%); width: calc(717/1000 * 100%); } }

.p-frm_ctn ul { padding: 1.2rem 2.5rem; }

.p-frm_ctn ul li + li { margin-top: 1rem; }

.p-frm_btn { margin-top: 7rem; }

.p-frm_btn .frm__btn { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; border: none; outline: none; -moz-border-radius: 0.5rem; border-radius: 0.5rem; background: #E50044; color: #fff; font-size: 1.6rem; font-weight: bold; cursor: pointer; width: 20rem; height: 4.6rem; margin: 0 auto; -webkit-transition: all .3s ease; -moz-transition: all .3s ease; transition: all .3s ease; }

.p-frm_btn .frm__btn:hover { background: #6CB2D3; }

@media screen and (max-width: 960px) { .p-frm_btn .frm__btn { width: 100%; height: 11rem; font-size: 3.2rem; } }

.p-contact_thank { max-width: 88rem; margin: 0 auto; text-align: center; }

.p-contact_thank h2 { font-size: 4.1rem; font-weight: bold; margin-bottom: 12rem; line-height: 1.5; }

@media screen and (max-width: 960px) { .p-contact_thank h2 { font-size: 3.3rem; } }

.p-contact_thank p { line-height: 1.86; margin-bottom: 7rem; }

@media screen and (max-width: 960px) { .p-contact_thank p { text-align: left; } }

.p-contact_thank .frm__btn { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; border: none; outline: none; -moz-border-radius: 0.5rem; border-radius: 0.5rem; background: #E50044; color: #fff; font-size: 1.6rem; font-weight: bold; cursor: pointer; width: 20rem; height: 4.6rem; margin: 0 auto; -webkit-transition: all .3s ease; -moz-transition: all .3s ease; transition: all .3s ease; }

.p-contact_thank .frm__btn:hover { background: #6CB2D3; }

@media screen and (max-width: 960px) { .p-contact_thank .frm__btn { width: 100%; height: 11rem; font-size: 3.2rem; } }

.p-contact_form__confirm .p-frm_ctn { padding: 1.5rem; }

.p-contact_form__confirm .p-frm_btn { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; }

.p-contact_form__confirm .p-frm_btn .frm__back { margin-right: 2rem; background: #686A6E; color: #FFE900; }

.p-contact_form__confirm .p-frm_btn .frm__back:hover { background: #FFE900; color: #686A6E; }

.entry-form__error { background: #fff; color: #E60013; padding: 2rem; margin-bottom: 2rem; }

.entry-form__error .error-ttl { margin-bottom: 1rem; font-size: 1.6rem; line-height: 1.5; font-weight: 500; }

.entry-form__error ul li { position: relative; }

.entry-form__error ul li:before { content: "・"; display: inline-block; }

.entry-form__error ul li + li { margin-top: 1rem; }

.error { position: absolute; left: 2.5rem; bottom: 0; }

.error em { font-size: 1.2rem; color: #E60013; }

@media screen and (max-width: 960px) { .error em { font-size: 2rem; } }
