@charset "UTF-8";
@font-face {
  font-family: "heroz";
  src: url("./assets/font/HerozSansCJKjp.woff") format("woff");
}
@font-face {
  font-family: "herozLight";
  src: url("./assets/font/NotoSansCJKjp-Regular.woff2") format("woff2"), url("./assets/font/NotoSansCJKjp-Regular.woff") format("woff"), url("./assets/font/NotoSansCJKjp-Regular.otf") format("opentype");
}
@font-face {
  font-family: "herozMedium";
  src: url("./assets/font/NotoSansCJKjp-Bold.woff2") format("woff2"), url("./assets/font/NotoSansCJKjp-Bold.woff") format("woff"), url("./assets/font/NotoSansCJKjp-Bold.otf") format("opentype");
}
@keyframes gradient {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -200% 0;
  }
}
.hide {
  display: none !important;
}

.txC {
  text-align: center !important;
}

.txL {
  text-align: left !important;
}

.txR {
  text-align: right !important;
}

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

.ti0 {
  font-indent: 0px !important;
}

.ti1 {
  font-indent: 1px !important;
}

.ti2 {
  font-indent: 2px !important;
}

.ti3 {
  font-indent: 3px !important;
}

.ti4 {
  font-indent: 4px !important;
}

.ti5 {
  font-indent: 5px !important;
}

.ti10 {
  font-indent: 10px !important;
}

.ti15 {
  font-indent: 15px !important;
}

.ti20 {
  font-indent: 20px !important;
}

.ti25 {
  font-indent: 25px !important;
}

.ti30 {
  font-indent: 30px !important;
}

.ti35 {
  font-indent: 35px !important;
}

.ti40 {
  font-indent: 40px !important;
}

.ti45 {
  font-indent: 45px !important;
}

.ti50 {
  font-indent: 50px !important;
}

.ti55 {
  font-indent: 55px !important;
}

.ti60 {
  font-indent: 60px !important;
}

.ti65 {
  font-indent: 65px !important;
}

.ti70 {
  font-indent: 70px !important;
}

.ti75 {
  font-indent: 75px !important;
}

.ti80 {
  font-indent: 80px !important;
}

.ti85 {
  font-indent: 85px !important;
}

.ti90 {
  font-indent: 90px !important;
}

.ti95 {
  font-indent: 95px !important;
}

.ti100 {
  font-indent: 100px !important;
}

.p0 {
  padding: 0px !important;
}

.p1 {
  padding: 1px !important;
}

.p2 {
  padding: 2px !important;
}

.p3 {
  padding: 3px !important;
}

.p4 {
  padding: 4px !important;
}

.p5 {
  padding: 5px !important;
}

.p10 {
  padding: 10px !important;
}

.p15 {
  padding: 15px !important;
}

.p20 {
  padding: 20px !important;
}

.p25 {
  padding: 25px !important;
}

.p30 {
  padding: 30px !important;
}

.p35 {
  padding: 35px !important;
}

.p40 {
  padding: 40px !important;
}

.p45 {
  padding: 45px !important;
}

.p50 {
  padding: 50px !important;
}

.p55 {
  padding: 55px !important;
}

.p60 {
  padding: 60px !important;
}

.p65 {
  padding: 65px !important;
}

.p70 {
  padding: 70px !important;
}

.p75 {
  padding: 75px !important;
}

.p80 {
  padding: 80px !important;
}

.p85 {
  padding: 85px !important;
}

.p90 {
  padding: 90px !important;
}

.p95 {
  padding: 95px !important;
}

.p100 {
  padding: 100px !important;
}

.px0 {
  padding-left: 0px !important;
  padding-right: 0px !important;
}

.px1 {
  padding-left: 1px !important;
  padding-right: 1px !important;
}

.px2 {
  padding-left: 2px !important;
  padding-right: 2px !important;
}

.px3 {
  padding-left: 3px !important;
  padding-right: 3px !important;
}

.px4 {
  padding-left: 4px !important;
  padding-right: 4px !important;
}

.px5 {
  padding-left: 5px !important;
  padding-right: 5px !important;
}

.px10 {
  padding-left: 10px !important;
  padding-right: 10px !important;
}

.px15 {
  padding-left: 15px !important;
  padding-right: 15px !important;
}

.px20 {
  padding-left: 20px !important;
  padding-right: 20px !important;
}

.px25 {
  padding-left: 25px !important;
  padding-right: 25px !important;
}

.px30 {
  padding-left: 30px !important;
  padding-right: 30px !important;
}

.px35 {
  padding-left: 35px !important;
  padding-right: 35px !important;
}

.px40 {
  padding-left: 40px !important;
  padding-right: 40px !important;
}

.px45 {
  padding-left: 45px !important;
  padding-right: 45px !important;
}

.px50 {
  padding-left: 50px !important;
  padding-right: 50px !important;
}

.px55 {
  padding-left: 55px !important;
  padding-right: 55px !important;
}

.px60 {
  padding-left: 60px !important;
  padding-right: 60px !important;
}

.px65 {
  padding-left: 65px !important;
  padding-right: 65px !important;
}

.px70 {
  padding-left: 70px !important;
  padding-right: 70px !important;
}

.px75 {
  padding-left: 75px !important;
  padding-right: 75px !important;
}

.px80 {
  padding-left: 80px !important;
  padding-right: 80px !important;
}

.px85 {
  padding-left: 85px !important;
  padding-right: 85px !important;
}

.px90 {
  padding-left: 90px !important;
  padding-right: 90px !important;
}

.px95 {
  padding-left: 95px !important;
  padding-right: 95px !important;
}

.px100 {
  padding-left: 100px !important;
  padding-right: 100px !important;
}

.py0 {
  padding-top: 0px !important;
  padding-bottom: 0px !important;
}

.py1 {
  padding-top: 1px !important;
  padding-bottom: 1px !important;
}

.py2 {
  padding-top: 2px !important;
  padding-bottom: 2px !important;
}

.py3 {
  padding-top: 3px !important;
  padding-bottom: 3px !important;
}

.py4 {
  padding-top: 4px !important;
  padding-bottom: 4px !important;
}

.py5 {
  padding-top: 5px !important;
  padding-bottom: 5px !important;
}

.py10 {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

.py15 {
  padding-top: 15px !important;
  padding-bottom: 15px !important;
}

.py20 {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

.py25 {
  padding-top: 25px !important;
  padding-bottom: 25px !important;
}

.py30 {
  padding-top: 30px !important;
  padding-bottom: 30px !important;
}

.py35 {
  padding-top: 35px !important;
  padding-bottom: 35px !important;
}

.py40 {
  padding-top: 40px !important;
  padding-bottom: 40px !important;
}

.py45 {
  padding-top: 45px !important;
  padding-bottom: 45px !important;
}

.py50 {
  padding-top: 50px !important;
  padding-bottom: 50px !important;
}

.py55 {
  padding-top: 55px !important;
  padding-bottom: 55px !important;
}

.py60 {
  padding-top: 60px !important;
  padding-bottom: 60px !important;
}

.py65 {
  padding-top: 65px !important;
  padding-bottom: 65px !important;
}

.py70 {
  padding-top: 70px !important;
  padding-bottom: 70px !important;
}

.py75 {
  padding-top: 75px !important;
  padding-bottom: 75px !important;
}

.py80 {
  padding-top: 80px !important;
  padding-bottom: 80px !important;
}

.py85 {
  padding-top: 85px !important;
  padding-bottom: 85px !important;
}

.py90 {
  padding-top: 90px !important;
  padding-bottom: 90px !important;
}

.py95 {
  padding-top: 95px !important;
  padding-bottom: 95px !important;
}

.py100 {
  padding-top: 100px !important;
  padding-bottom: 100px !important;
}

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

.pl1 {
  padding-left: 1px !important;
}

.pl2 {
  padding-left: 2px !important;
}

.pl3 {
  padding-left: 3px !important;
}

.pl4 {
  padding-left: 4px !important;
}

.pl5 {
  padding-left: 5px !important;
}

.pl10 {
  padding-left: 10px !important;
}

.pl15 {
  padding-left: 15px !important;
}

.pl20 {
  padding-left: 20px !important;
}

.pl25 {
  padding-left: 25px !important;
}

.pl30 {
  padding-left: 30px !important;
}

.pl35 {
  padding-left: 35px !important;
}

.pl40 {
  padding-left: 40px !important;
}

.pl45 {
  padding-left: 45px !important;
}

.pl50 {
  padding-left: 50px !important;
}

.pl55 {
  padding-left: 55px !important;
}

.pl60 {
  padding-left: 60px !important;
}

.pl65 {
  padding-left: 65px !important;
}

.pl70 {
  padding-left: 70px !important;
}

.pl75 {
  padding-left: 75px !important;
}

.pl80 {
  padding-left: 80px !important;
}

.pl85 {
  padding-left: 85px !important;
}

.pl90 {
  padding-left: 90px !important;
}

.pl95 {
  padding-left: 95px !important;
}

.pl100 {
  padding-left: 100px !important;
}

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

.pr1 {
  padding-right: 1px !important;
}

.pr2 {
  padding-right: 2px !important;
}

.pr3 {
  padding-right: 3px !important;
}

.pr4 {
  padding-right: 4px !important;
}

.pr5 {
  padding-right: 5px !important;
}

.pr10 {
  padding-right: 10px !important;
}

.pr15 {
  padding-right: 15px !important;
}

.pr20 {
  padding-right: 20px !important;
}

.pr25 {
  padding-right: 25px !important;
}

.pr30 {
  padding-right: 30px !important;
}

.pr35 {
  padding-right: 35px !important;
}

.pr40 {
  padding-right: 40px !important;
}

.pr45 {
  padding-right: 45px !important;
}

.pr50 {
  padding-right: 50px !important;
}

.pr55 {
  padding-right: 55px !important;
}

.pr60 {
  padding-right: 60px !important;
}

.pr65 {
  padding-right: 65px !important;
}

.pr70 {
  padding-right: 70px !important;
}

.pr75 {
  padding-right: 75px !important;
}

.pr80 {
  padding-right: 80px !important;
}

.pr85 {
  padding-right: 85px !important;
}

.pr90 {
  padding-right: 90px !important;
}

.pr95 {
  padding-right: 95px !important;
}

.pr100 {
  padding-right: 100px !important;
}

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

.pt1 {
  padding-top: 1px !important;
}

.pt2 {
  padding-top: 2px !important;
}

.pt3 {
  padding-top: 3px !important;
}

.pt4 {
  padding-top: 4px !important;
}

.pt5 {
  padding-top: 5px !important;
}

.pt10 {
  padding-top: 10px !important;
}

.pt15 {
  padding-top: 15px !important;
}

.pt20 {
  padding-top: 20px !important;
}

.pt25 {
  padding-top: 25px !important;
}

.pt30 {
  padding-top: 30px !important;
}

.pt35 {
  padding-top: 35px !important;
}

.pt40 {
  padding-top: 40px !important;
}

.pt45 {
  padding-top: 45px !important;
}

.pt50 {
  padding-top: 50px !important;
}

.pt55 {
  padding-top: 55px !important;
}

.pt60 {
  padding-top: 60px !important;
}

.pt65 {
  padding-top: 65px !important;
}

.pt70 {
  padding-top: 70px !important;
}

.pt75 {
  padding-top: 75px !important;
}

.pt80 {
  padding-top: 80px !important;
}

.pt85 {
  padding-top: 85px !important;
}

.pt90 {
  padding-top: 90px !important;
}

.pt95 {
  padding-top: 95px !important;
}

.pt100 {
  padding-top: 100px !important;
}

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

.pb1 {
  padding-bottom: 1px !important;
}

.pb2 {
  padding-bottom: 2px !important;
}

.pb3 {
  padding-bottom: 3px !important;
}

.pb4 {
  padding-bottom: 4px !important;
}

.pb5 {
  padding-bottom: 5px !important;
}

.pb10 {
  padding-bottom: 10px !important;
}

.pb15 {
  padding-bottom: 15px !important;
}

.pb20 {
  padding-bottom: 20px !important;
}

.pb25 {
  padding-bottom: 25px !important;
}

.pb30 {
  padding-bottom: 30px !important;
}

.pb35 {
  padding-bottom: 35px !important;
}

.pb40 {
  padding-bottom: 40px !important;
}

.pb45 {
  padding-bottom: 45px !important;
}

.pb50 {
  padding-bottom: 50px !important;
}

.pb55 {
  padding-bottom: 55px !important;
}

.pb60 {
  padding-bottom: 60px !important;
}

.pb65 {
  padding-bottom: 65px !important;
}

.pb70 {
  padding-bottom: 70px !important;
}

.pb75 {
  padding-bottom: 75px !important;
}

.pb80 {
  padding-bottom: 80px !important;
}

.pb85 {
  padding-bottom: 85px !important;
}

.pb90 {
  padding-bottom: 90px !important;
}

.pb95 {
  padding-bottom: 95px !important;
}

.pb100 {
  padding-bottom: 100px !important;
}

/* 要素の位置 */
.mL {
  margin-right: auto !important;
}

.mR {
  margin-left: auto !important;
}

.mC {
  margin-left: auto !important;
  margin-right: auto !important;
}

.m0 {
  margin: 0px !important;
}

.m1 {
  margin: 1px !important;
}

.m2 {
  margin: 2px !important;
}

.m3 {
  margin: 3px !important;
}

.m4 {
  margin: 4px !important;
}

.m5 {
  margin: 5px !important;
}

.m10 {
  margin: 10px !important;
}

.m15 {
  margin: 15px !important;
}

.m20 {
  margin: 20px !important;
}

.m25 {
  margin: 25px !important;
}

.m30 {
  margin: 30px !important;
}

.m35 {
  margin: 35px !important;
}

.m40 {
  margin: 40px !important;
}

.m45 {
  margin: 45px !important;
}

.m50 {
  margin: 50px !important;
}

.m55 {
  margin: 55px !important;
}

.m60 {
  margin: 60px !important;
}

.m65 {
  margin: 65px !important;
}

.m70 {
  margin: 70px !important;
}

.m75 {
  margin: 75px !important;
}

.m80 {
  margin: 80px !important;
}

.m85 {
  margin: 85px !important;
}

.m90 {
  margin: 90px !important;
}

.m95 {
  margin: 95px !important;
}

.m100 {
  margin: 100px !important;
}

.mx0 {
  margin-left: 0px !important;
  margin-right: 0px !important;
}

.mx1 {
  margin-left: 1px !important;
  margin-right: 1px !important;
}

.mx2 {
  margin-left: 2px !important;
  margin-right: 2px !important;
}

.mx3 {
  margin-left: 3px !important;
  margin-right: 3px !important;
}

.mx4 {
  margin-left: 4px !important;
  margin-right: 4px !important;
}

.mx5 {
  margin-left: 5px !important;
  margin-right: 5px !important;
}

.mx10 {
  margin-left: 10px !important;
  margin-right: 10px !important;
}

.mx15 {
  margin-left: 15px !important;
  margin-right: 15px !important;
}

.mx20 {
  margin-left: 20px !important;
  margin-right: 20px !important;
}

.mx25 {
  margin-left: 25px !important;
  margin-right: 25px !important;
}

.mx30 {
  margin-left: 30px !important;
  margin-right: 30px !important;
}

.mx35 {
  margin-left: 35px !important;
  margin-right: 35px !important;
}

.mx40 {
  margin-left: 40px !important;
  margin-right: 40px !important;
}

.mx45 {
  margin-left: 45px !important;
  margin-right: 45px !important;
}

.mx50 {
  margin-left: 50px !important;
  margin-right: 50px !important;
}

.mx55 {
  margin-left: 55px !important;
  margin-right: 55px !important;
}

.mx60 {
  margin-left: 60px !important;
  margin-right: 60px !important;
}

.mx65 {
  margin-left: 65px !important;
  margin-right: 65px !important;
}

.mx70 {
  margin-left: 70px !important;
  margin-right: 70px !important;
}

.mx75 {
  margin-left: 75px !important;
  margin-right: 75px !important;
}

.mx80 {
  margin-left: 80px !important;
  margin-right: 80px !important;
}

.mx85 {
  margin-left: 85px !important;
  margin-right: 85px !important;
}

.mx90 {
  margin-left: 90px !important;
  margin-right: 90px !important;
}

.mx95 {
  margin-left: 95px !important;
  margin-right: 95px !important;
}

.mx100 {
  margin-left: 100px !important;
  margin-right: 100px !important;
}

.my0 {
  margin-top: 0px !important;
  margin-bottom: 0px !important;
}

.my1 {
  margin-top: 1px !important;
  margin-bottom: 1px !important;
}

.my2 {
  margin-top: 2px !important;
  margin-bottom: 2px !important;
}

.my3 {
  margin-top: 3px !important;
  margin-bottom: 3px !important;
}

.my4 {
  margin-top: 4px !important;
  margin-bottom: 4px !important;
}

.my5 {
  margin-top: 5px !important;
  margin-bottom: 5px !important;
}

.my10 {
  margin-top: 10px !important;
  margin-bottom: 10px !important;
}

.my15 {
  margin-top: 15px !important;
  margin-bottom: 15px !important;
}

.my20 {
  margin-top: 20px !important;
  margin-bottom: 20px !important;
}

.my25 {
  margin-top: 25px !important;
  margin-bottom: 25px !important;
}

.my30 {
  margin-top: 30px !important;
  margin-bottom: 30px !important;
}

.my35 {
  margin-top: 35px !important;
  margin-bottom: 35px !important;
}

.my40 {
  margin-top: 40px !important;
  margin-bottom: 40px !important;
}

.my45 {
  margin-top: 45px !important;
  margin-bottom: 45px !important;
}

.my50 {
  margin-top: 50px !important;
  margin-bottom: 50px !important;
}

.my55 {
  margin-top: 55px !important;
  margin-bottom: 55px !important;
}

.my60 {
  margin-top: 60px !important;
  margin-bottom: 60px !important;
}

.my65 {
  margin-top: 65px !important;
  margin-bottom: 65px !important;
}

.my70 {
  margin-top: 70px !important;
  margin-bottom: 70px !important;
}

.my75 {
  margin-top: 75px !important;
  margin-bottom: 75px !important;
}

.my80 {
  margin-top: 80px !important;
  margin-bottom: 80px !important;
}

.my85 {
  margin-top: 85px !important;
  margin-bottom: 85px !important;
}

.my90 {
  margin-top: 90px !important;
  margin-bottom: 90px !important;
}

.my95 {
  margin-top: 95px !important;
  margin-bottom: 95px !important;
}

.my100 {
  margin-top: 100px !important;
  margin-bottom: 100px !important;
}

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

.ml1 {
  margin-left: 1px !important;
}

.ml2 {
  margin-left: 2px !important;
}

.ml3 {
  margin-left: 3px !important;
}

.ml4 {
  margin-left: 4px !important;
}

.ml5 {
  margin-left: 5px !important;
}

.ml10 {
  margin-left: 10px !important;
}

.ml15 {
  margin-left: 15px !important;
}

.ml20 {
  margin-left: 20px !important;
}

.ml25 {
  margin-left: 25px !important;
}

.ml30 {
  margin-left: 30px !important;
}

.ml35 {
  margin-left: 35px !important;
}

.ml40 {
  margin-left: 40px !important;
}

.ml45 {
  margin-left: 45px !important;
}

.ml50 {
  margin-left: 50px !important;
}

.ml55 {
  margin-left: 55px !important;
}

.ml60 {
  margin-left: 60px !important;
}

.ml65 {
  margin-left: 65px !important;
}

.ml70 {
  margin-left: 70px !important;
}

.ml75 {
  margin-left: 75px !important;
}

.ml80 {
  margin-left: 80px !important;
}

.ml85 {
  margin-left: 85px !important;
}

.ml90 {
  margin-left: 90px !important;
}

.ml95 {
  margin-left: 95px !important;
}

.ml100 {
  margin-left: 100px !important;
}

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

.mr1 {
  margin-right: 1px !important;
}

.mr2 {
  margin-right: 2px !important;
}

.mr3 {
  margin-right: 3px !important;
}

.mr4 {
  margin-right: 4px !important;
}

.mr5 {
  margin-right: 5px !important;
}

.mr10 {
  margin-right: 10px !important;
}

.mr15 {
  margin-right: 15px !important;
}

.mr20 {
  margin-right: 20px !important;
}

.mr25 {
  margin-right: 25px !important;
}

.mr30 {
  margin-right: 30px !important;
}

.mr35 {
  margin-right: 35px !important;
}

.mr40 {
  margin-right: 40px !important;
}

.mr45 {
  margin-right: 45px !important;
}

.mr50 {
  margin-right: 50px !important;
}

.mr55 {
  margin-right: 55px !important;
}

.mr60 {
  margin-right: 60px !important;
}

.mr65 {
  margin-right: 65px !important;
}

.mr70 {
  margin-right: 70px !important;
}

.mr75 {
  margin-right: 75px !important;
}

.mr80 {
  margin-right: 80px !important;
}

.mr85 {
  margin-right: 85px !important;
}

.mr90 {
  margin-right: 90px !important;
}

.mr95 {
  margin-right: 95px !important;
}

.mr100 {
  margin-right: 100px !important;
}

.mt0 {
  margin-top: 0px !important;
}

.mt1 {
  margin-top: 1px !important;
}

.mt2 {
  margin-top: 2px !important;
}

.mt3 {
  margin-top: 3px !important;
}

.mt4 {
  margin-top: 4px !important;
}

.mt5 {
  margin-top: 5px !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mt15 {
  margin-top: 15px !important;
}

.mt20 {
  margin-top: 20px !important;
}

.mt25 {
  margin-top: 25px !important;
}

.mt30 {
  margin-top: 30px !important;
}

.mt35 {
  margin-top: 35px !important;
}

.mt40 {
  margin-top: 40px !important;
}

.mt45 {
  margin-top: 45px !important;
}

.mt50 {
  margin-top: 50px !important;
}

.mt55 {
  margin-top: 55px !important;
}

.mt60 {
  margin-top: 60px !important;
}

.mt65 {
  margin-top: 65px !important;
}

.mt70 {
  margin-top: 70px !important;
}

.mt75 {
  margin-top: 75px !important;
}

.mt80 {
  margin-top: 80px !important;
}

.mt85 {
  margin-top: 85px !important;
}

.mt90 {
  margin-top: 90px !important;
}

.mt95 {
  margin-top: 95px !important;
}

.mt100 {
  margin-top: 100px !important;
}

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

.mb1 {
  margin-bottom: 1px !important;
}

.mb2 {
  margin-bottom: 2px !important;
}

.mb3 {
  margin-bottom: 3px !important;
}

.mb4 {
  margin-bottom: 4px !important;
}

.mb5 {
  margin-bottom: 5px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.mb25 {
  margin-bottom: 25px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.mb35 {
  margin-bottom: 35px !important;
}

.mb40 {
  margin-bottom: 40px !important;
}

.mb45 {
  margin-bottom: 45px !important;
}

.mb50 {
  margin-bottom: 50px !important;
}

.mb55 {
  margin-bottom: 55px !important;
}

.mb60 {
  margin-bottom: 60px !important;
}

.mb65 {
  margin-bottom: 65px !important;
}

.mb70 {
  margin-bottom: 70px !important;
}

.mb75 {
  margin-bottom: 75px !important;
}

.mb80 {
  margin-bottom: 80px !important;
}

.mb85 {
  margin-bottom: 85px !important;
}

.mb90 {
  margin-bottom: 90px !important;
}

.mb95 {
  margin-bottom: 95px !important;
}

.mb100 {
  margin-bottom: 100px !important;
}

.fs10 {
  font-size: 10px !important;
}

.fs11 {
  font-size: 11px !important;
}

.fs12 {
  font-size: 12px !important;
}

.fs13 {
  font-size: 13px !important;
}

.fs14 {
  font-size: 14px !important;
}

.fs15 {
  font-size: 15px !important;
}

.fs16 {
  font-size: 16px !important;
}

.fs17 {
  font-size: 17px !important;
}

.fs18 {
  font-size: 18px !important;
}

.fs19 {
  font-size: 19px !important;
}

.fs20 {
  font-size: 20px !important;
}

.fs21 {
  font-size: 21px !important;
}

.fs22 {
  font-size: 22px !important;
}

.fs23 {
  font-size: 23px !important;
}

.fs24 {
  font-size: 24px !important;
}

.fs25 {
  font-size: 25px !important;
}

.fs26 {
  font-size: 26px !important;
}

.fs27 {
  font-size: 27px !important;
}

.fs28 {
  font-size: 28px !important;
}

.fs29 {
  font-size: 29px !important;
}

.fs30 {
  font-size: 30px !important;
}

.fs31 {
  font-size: 31px !important;
}

.fs32 {
  font-size: 32px !important;
}

.fs33 {
  font-size: 33px !important;
}

.fs34 {
  font-size: 34px !important;
}

.fs35 {
  font-size: 35px !important;
}

/* ページ印刷での非表示設定 */
@media print {
  .print {
    display: none;
  }
}
#wpadminbar {
  display: none !important;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  margin: 0 !important;
  height: 100%;
}

body {
  padding: 128px 0px 0px 0px;
  margin: 0;
  font-size: 0px;
  font-family: "heroz";
  line-height: 1.32857143;
  color: #4c4c4c;
  width: 100%;
  height: 100%;
  background-color: #ffffff;
  position: relative;
  text-align: center;
}
body section {
  padding: 0px;
  text-align: center;
}
body section article {
  font-size: 15px;
  letter-spacing: 0.1em;
  font-family: herozLight;
  line-height: 1.75;
  text-align: left;
}
body section article h2 {
  margin: 0;
  font-size: 40px;
  text-align: center;
  line-height: 1.2;
  color: #f6770f;
  font-weight: normal;
  margin: 50px 0px;
}
body section article h2 span {
  margin: 0;
  font-size: 12px;
  font-family: herozMedium;
  display: block;
  color: #f6770f;
  font-weight: 500;
}
body section article h3 {
  font-size: 24px;
  font-weight: normal;
  font-family: herozLight;
  text-align: left;
  margin: 20px 0px;
  background-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22h3%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%201542.05%201542.05%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.st0%20%7B%20fill%3A%20%23ea761b%3B%20fill-rule%3A%20evenodd%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Cpath%20class%3D%22st0%22%20d%3D%22M771.03.89L253.59%2C319.77.89%2C1541.15h1540.26l-252.7-1221.38L771.03.89ZM771.02%2C129.25l-421.05%2C261.81-205.37%2C1047.41h1252.78l-205.37-1047.41-420.99-261.81Z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-size: 25px;
  background-position: 0px 50%;
  padding-left: 30px;
}
body section article h4 {
  font-family: herozLight;
  padding-left: 12px;
  border-left: solid 2px #f6770f;
  font-size: 22px;
  line-height: 1;
  font-weight: normal;
  margin: 10px 0px;
}
body section article h5 {
  font-family: herozLight;
  font-size: 18px;
  font-weight: normal;
}
body section#default {
  display: inline-block;
  max-width: 1200px;
  width: 100%;
  position: relative;
  text-align: left;
  margin: 0px;
}
body section#fullsize {
  display: inline-block;
  width: 100%;
  position: relative;
  text-align: left;
  margin: 0px;
}
body section:nth-of-type(even) {
  background-color: #f9f9f9;
}

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

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

ul.list_cautionary li {
  padding-left: 16px;
  font-size: 14px;
  position: relative;
}
ul.list_cautionary li:after {
  content: "※";
  display: inline-block;
  width: 16px;
  height: 16px;
  line-height: 16px;
  position: absolute;
  left: 0px;
  top: 4px;
  text-align: center;
}
ul.list_circle {
  width: 100%;
  padding: 0px 0px 0px 20px;
  margin-bottom: 20px;
}
ul.list_circle > p {
  display: none !important;
}
ul.list_circle li {
  position: relative;
  padding: 3px 3px 3px 25px;
}
ul.list_circle li:before {
  content: "●";
  position: absolute;
  font-size: 8px;
  line-height: 10px;
  width: 10px;
  height: 10px;
  left: 5px;
  top: 11px;
}
ul.list_number {
  counter-reset: list-counter;
  width: 100%;
  padding: 0px 0px 0px 20px;
  margin-bottom: 20px;
}
ul.list_number > p {
  display: none !important;
}
ul.list_number li {
  counter-increment: list-counter;
  position: relative;
  padding: 3px 3px 3px 25px;
}
ul.list_number li::before {
  content: counter(list-counter) ". ";
  position: absolute;
  font-size: 14px;
  line-height: 10px;
  width: 15px;
  height: 10px;
  left: 0px;
  top: 11px;
}
ul.list_nomark {
  width: 100%;
  padding: 0px 0px 0px 20px;
  margin-bottom: 20px;
}
ul.list_nomark > p {
  display: none !important;
}
ul.list_nomark li {
  position: relative;
  padding: 3px 3px 3px 5px;
}

a {
  color: #ffa600;
  text-decoration: underline;
}
a:hover {
  text-decoration: none;
}
a:hover img,
a:hover svg {
  opacity: 0.6;
}
a.link_box {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  background-color: #f6770f;
  background-image: -webkit-gradient(linear, left top, right top, from(#f6770f), color-stop(#f6bd0f), to(#f6770f));
  background-image: -webkit-linear-gradient(left, #f6770f, #f6bd0f, #f6770f);
  background-image: linear-gradient(to right, #f6770f, #f6bd0f, #f6770f);
  background-size: 200% 100%;
  background-repeat: repeat;
  -webkit-animation: gradient 8s linear 0s infinite;
  animation: gradient 8s linear 0s infinite;
  padding: 12px 20px;
  font-size: 14px;
  color: #ffffff;
  text-decoration: none;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
}
a.link_box > span {
  position: relative;
  top: -3px;
  width: 20px;
  height: 5px;
  margin-left: 10px;
}
a.link_box > span svg {
  fill: currentColor;
  vertical-align: middle;
}
a.link_box > span svg:not(:root) {
  overflow: hidden;
}
a.link_box:hover {
  opacity: 0.8;
}
a.link_icon {
  text-decoration: none;
  color: #333;
  font-size: 18px;
  line-height: 18px;
  margin: 0px 10px;
}
a.link_icon span {
  width: 17px;
  margin-right: 8px;
  display: inline-block;
  vertical-align: text-top;
  margin-right: 10px;
}
a.link_icon span svg {
  width: 17px;
  height: 17px;
}

b {
  font-weight: bold;
}
b.blue {
  color: blue;
}
b.red {
  color: red;
}

blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
  content: "";
  content: none;
}

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

input::placeholder {
  color: #ccc;
}
input:focus {
  outline: none;
}
input:disabled {
  background-color: #ebebe4;
}

p {
  padding: 0;
  margin: 0;
}

pre {
  word-break: break-all;
  overflow: hidden;
  width: 100%;
  white-space: pre-wrap;
  box-sizing: border-box;
}

br.sp {
  display: none;
}
br.pc {
  display: inline-block;
}

picture {
  display: inline-block;
}

img {
  max-width: 100%;
}

/* 各ページタイトル設定 */
h1 {
  margin: 0;
  padding: 30px 10px;
  box-sizing: border-box;
  font-size: 38px;
  color: #f6770f;
  text-align: center;
  background: linear-gradient(to bottom, #fafafa 0%, #ffffff 35%, #ffffff 65%, #fafafa 100%);
}
h1 article {
  font-family: herozLight;
  font-weight: 500;
  text-align: left;
  max-width: 1200px;
  width: 100%;
  display: inline-block;
}

@media (min-width: 841px) and (max-width: 1240px) {
  body section {
    padding: 0px 10px !important;
  }
  body section .inner .contact_form {
    padding: 20px !important;
  }
}
@media (max-width: 840px) {
  a.link_box {
    width: 100%;
  }
  br.sp {
    display: inline-block;
  }
  br.pc {
    display: none;
  }
  h1 {
    padding: 20px 10px;
    font-size: 22px;
  }
  body {
    padding-top: 64px;
  }
  body section {
    padding: 0px 10px;
  }
  body section article {
    font-size: 12px;
    width: 100%;
    padding: 10px 0px;
  }
  body section article h2 {
    margin: 20px 0px;
  }
  body section article h3 {
    font-size: 17px;
    font-weight: normal;
    font-family: herozLight;
    text-align: left;
    margin: 10px 0px;
    background-repeat: no-repeat;
    background-size: 20px;
    background-position: 0px 50%;
    padding-left: 25px;
  }
  body section article h4 {
    font-size: 15px;
  }
}
/* ヘッダー設定 */
header {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  width: 100%;
  height: 64px;
  z-index: 10;
  text-align: center;
  background-color: rgba(255, 255, 255, 0.7);
  -webkit-backdrop-filter: blur(30px);
  backdrop-filter: blur(30px);
  -webkit-box-shadow: 0 0 10px 10px rgba(0, 0, 0, 0.02);
  box-shadow: 0 0 10px 10px rgba(0, 0, 0, 0.02);
  /* グローバルメニュー表示エリア */
}
header article {
  max-width: 1200px;
  width: 100%;
  display: inline-block;
  position: relative;
}
header article #logo {
  position: absolute;
  height: 40px;
  width: 155px;
  display: inline-block;
  left: 10px;
  top: 10px;
}
header article #logo a {
  padding: 5px;
  display: inline-block;
  height: 100%;
  width: 100%;
  box-sizing: border-box;
  text-align: left;
}
header article #logo a svg {
  max-width: 100%;
  max-height: 100%;
}
header article #menu {
  display: inline-block;
  position: absolute;
  right: 95px;
  top: 0px;
  padding: 0px;
  margin: 0;
}
header article #menu li {
  font-size: 0;
  display: inline-block;
  height: 100%;
  text-decoration: none;
}
header article #menu li a {
  font-family: herozLight;
  font-size: 15px;
  text-decoration: none;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  overflow: hidden;
  color: #4c4c4c;
  line-height: 64px;
  padding: 0px 20px;
  height: 64px;
  display: inline-block;
  position: relative;
}
header article #menu li a:hover:after {
  content: "";
  display: inline-block;
  position: absolute;
  bottom: 13px;
  left: calc(50% - 2px);
  width: 0;
  height: 0;
  border: solid 2px #f6770f;
  border-radius: 50%;
}
header article #menu li a.selected:after {
  content: "";
  display: inline-block;
  position: absolute;
  bottom: 13px;
  left: calc(50% - 2px);
  width: 0;
  height: 0;
  border: solid 2px #f6770f;
  border-radius: 50%;
}
header article #menu li.request-info a {
  background: -webkit-gradient(linear, left top, right top, color-stop(0, #3E4858), color-stop(51%, #727b80), to(#798498));
  background: linear-gradient(90deg, #3E4858 0, #727b80 51%, #798498 100%);
  background-position: right center;
  background-size: 200% auto;
  color: #FFF;
}
header article #menu li.request-info a:hover {
  opacity: 0.7;
}
header article #menu li.request-info a:hover:after {
  display: none;
}
header article #menu li.contact a {
  background: -webkit-gradient(linear, left top, right top, color-stop(0, #f87700), color-stop(51%, #f59e00), to(#f87700));
  background: linear-gradient(90deg, #f87700 0, #f59e00 51%, #f87700 100%);
  background-position: right center;
  background-size: 200% auto;
  color: #FFF;
}
header article #menu li.contact a:hover {
  opacity: 0.7;
}
header article #menu li.contact a:hover:after {
  display: none;
}
header article #menu li.contact a:before {
  content: "";
  margin-bottom: -0.1em;
  margin-right: 0.5em;
  width: 21px;
  height: 14px;
  background-image: url(./assets/image/lp/common/icon-email.svg);
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
}
header article #language {
  display: inline-block;
  width: 80px;
  padding: 0 10px;
  text-align: center;
  color: #4c4c4c;
  text-decoration: none;
  font-size: 15px;
  line-height: 30px;
  border: solid 1px #e1e1e1;
  position: absolute;
  right: 10px;
  top: 15px;
}
header article #language a {
  text-decoration: none;
  color: #333;
}
header article #btn_sp-menu {
  width: 54px;
  height: 54px;
  position: absolute;
  right: 5px;
  top: 5px;
  display: none;
}

#lp header article {
  width: 100%;
  max-width: 100%;
  position: relative;
}
#lp header article #menu {
  right: 0px;
}

@media (max-width: 840px) {
  header #menu {
    display: none !important;
  }
  header #language {
    display: none !important;
  }
  header #btn_sp-menu {
    display: inline-block !important;
  }
}
/* サブメニュー表示エリア */
nav {
  margin: 0;
  padding: 0;
  position: fixed;
  top: 64px;
  width: 100%;
  height: 64px;
  left: 0;
  background-color: rgba(233, 233, 233, 0.7);
  -webkit-backdrop-filter: blur(30px);
  backdrop-filter: blur(30px);
  z-index: 10;
  text-align: center;
}
nav ul {
  text-align: center;
  padding: 0px;
  max-width: 1200px;
  width: 100%;
  display: inline-block;
}
nav ul li {
  font-size: 14px;
  height: 64px;
  line-height: 64px;
  text-align: center;
  display: inline-block;
  vertical-align: top;
  margin: 0px 10px;
}
nav ul li a {
  display: inline-block;
  font-family: herozLight;
  color: #4c4c4c;
  text-decoration: none;
  height: 100%;
  text-align: center;
  position: relative;
}
nav ul li a:hover:after {
  content: "";
  display: inline-block;
  position: absolute;
  bottom: 13px;
  left: calc(50% - 2px);
  width: 0;
  height: 0;
  border: solid 2px #f6770f;
  border-radius: 50%;
}
nav ul li a.selected:after {
  content: "";
  display: inline-block;
  position: absolute;
  bottom: 13px;
  left: calc(50% - 2px);
  width: 0;
  height: 0;
  border: solid 2px #f6770f;
  border-radius: 50%;
}

@media (max-width: 840px) {
  nav {
    display: none !important;
  }
}
/* スマホ用メニュー */
#sp_header-menu {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
  bottom: 100%;
  z-index: 1000;
  display: none;
  overflow: hidden;
  background-color: #f6770f;
  background-image: -webkit-gradient(linear, left top, right top, from(#f6770f), color-stop(#f6bd0f), to(#f6770f));
  background-image: -webkit-linear-gradient(left, #f6770f, #f6bd0f, #f6770f);
  background-image: linear-gradient(to right, #f6770f, #f6bd0f, #f6770f);
  background-size: 200% 100%;
  background-repeat: repeat;
  -webkit-animation: gradient 8s linear 0s infinite;
  animation: gradient 8s linear 0s infinite;
  -webkit-transition-property: bottom;
  transition-property: bottom;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-in;
  transition-timing-function: ease-in;
}
#sp_header-menu ul.menu_list {
  position: absolute;
  overflow: auto;
  padding-top: 20px;
  padding-bottom: 20px;
  left: 20px;
  right: 20px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  max-height: 100%;
}
#sp_header-menu ul.menu_list li {
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  line-height: 50px;
}
#sp_header-menu ul.menu_list li a {
  color: #FFF;
  text-decoration: none;
}
#sp_header-menu svg {
  width: 100%;
  height: 100%;
}
#sp_header-menu #btn_close {
  width: 54px;
  height: 54px;
  position: absolute;
  right: 5px;
  top: 5px;
}
#sp_header-menu #btn_en {
  position: absolute;
  bottom: 10px;
  right: 10px;
}
#sp_header-menu #btn_en a {
  display: block;
  color: #fff;
  text-decoration: none;
  padding: 6px;
  font-size: 18px;
  border: solid 1px #FFF;
}

@media (max-width: 840px) {
  #sp_header-menu.open {
    display: block;
  }
}
/* フッター設定 */
footer {
  position: relative;
  background-color: #f2f2f2;
  text-align: center;
}
footer article {
  max-width: 1200px;
  width: 100%;
  display: inline-block;
}
footer article #sp_footer-menu {
  display: none;
}
footer article .sitemap {
  padding-top: 50px;
  width: 100%;
}
footer article .sitemap dl {
  display: inline-block;
  width: 16%;
  vertical-align: top;
  text-align: left;
}
footer article .sitemap dl dt {
  font-weight: bold;
  font-size: 15px;
  margin-bottom: 12px;
}
footer article .sitemap dl dt span {
  display: none;
}
footer article .sitemap dl dt a {
  text-decoration: none;
  color: #4c4c4c;
  font-family: "heroz";
}
footer article .sitemap dl dt a:hover {
  opacity: 0.6;
}
footer article .sitemap dl dd {
  font-size: 14px;
  padding: 6px 0px;
}
footer article .sitemap dl dd span {
  display: none;
}
footer article .sitemap dl dd a {
  text-decoration: none;
  color: #4c4c4c;
  font-family: "herozLight";
}
footer article .sitemap dl dd a:hover {
  opacity: 0.6;
}
footer article .other {
  padding: 70px 0px 30px 0px;
  width: 100%;
  text-align: left;
  position: relative;
}
footer article .other p.copyright {
  display: inline-block;
  height: 50px;
  font-size: 14px;
  padding: 0;
  margin: 0;
  line-height: 50px;
}
footer article .other ul.guideline {
  display: inline-block;
  height: 50px;
  width: 350px;
  font-size: 0;
  padding: 0;
  margin: 0;
  vertical-align: top;
  position: absolute;
  right: 300px;
}
footer article .other ul.guideline li {
  font-size: 14px;
  display: inline-block;
  height: 25px;
  line-height: 25px;
}
footer article .other ul.guideline li a {
  text-decoration: none;
  color: #4c4c4c;
}
footer article .other ul.guideline li a:hover {
  opacity: 0.6;
}
footer article .other ul.guideline li:nth-of-type(1),
footer article .other ul.guideline li:nth-of-type(2) {
  width: 50%;
  text-align: center;
}
footer article .other ul.guideline li:nth-of-type(3) {
  width: 100%;
  text-align: center;
}
footer article .other dl.social {
  display: inline-block;
  vertical-align: top;
  position: absolute;
  right: 0px;
}
footer article .other dl.social dt {
  vertical-align: top;
  display: inline-block;
  width: 100px;
  line-height: 50px;
  font-size: 14px;
  border-left: 1px solid #999999;
  text-align: center;
}
footer article .other dl.social dd {
  vertical-align: top;
  width: 50px;
  height: 50px;
  display: inline-block;
  margin-left: 10px;
}
footer article .other div.isms {
  width: 100%;
  padding-top: 20px;
  text-align: right;
}

@media (min-width: 841px) and (max-width: 1240px) {
  footer {
    padding: 0px 10px !important;
  }
}
@media (max-width: 840px) {
  footer {
    padding: 0px !important;
  }
  footer .sitemap {
    width: 100%;
    padding-top: 0px !important;
    border-top: solid 1px #d4d4d4;
  }
  footer .sitemap dl {
    width: 100% !important;
    vertical-align: top;
    text-align: left;
    border-bottom: solid 1px #d4d4d4;
  }
  footer .sitemap dl dt {
    font-weight: bold;
    font-size: 15px;
    margin-bottom: 0px !important;
    position: relative;
    padding: 12px 10px;
  }
  footer .sitemap dl dt span {
    display: inline-block !important;
    width: 13px;
    height: 13px;
    position: absolute;
    right: 15px;
    top: 17px;
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-transition-delay: 0.1s;
    transition-delay: 0.1s;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;
    -webkit-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    transform: translateY(-2px);
  }
  footer .sitemap dl dd {
    display: none;
    font-size: 14px;
    background-color: #ececec;
    border-top: solid 1px #d4d4d4;
    padding: 0px !important;
  }
  footer .sitemap dl dd span {
    display: inline-block !important;
    width: 20px;
    height: 20px;
    position: absolute;
    right: 15px;
  }
  footer .sitemap dl dd a {
    text-decoration: none;
    color: #4c4c4c;
    font-family: "herozLight";
    padding: 12px 10px 12px 30px !important;
    display: block;
  }
  footer .sitemap dl dd a:hover {
    opacity: 0.6;
  }
  footer .sitemap dl[open] dt span {
    -webkit-transform: translateY(2px) rotate(180deg);
    -ms-transform: translateY(2px) rotate(180deg);
    transform: translateY(2px) rotate(180deg);
  }
  footer .sitemap dl[open] dd {
    display: block !important;
  }
  footer .other {
    height: 440px;
    position: relative;
    box-sizing: border-box;
  }
  footer .other p.copyright {
    width: 100%;
    text-align: center;
    position: absolute;
    top: 250px;
  }
  footer .other ul.guideline {
    position: absolute;
    width: 100% !important;
    left: 0px;
    top: 180px;
  }
  footer .other ul.guideline li {
    font-size: 14px;
    display: inline-block;
    height: 25px;
    line-height: 25px;
    padding: 10px;
    box-sizing: border-box;
  }
  footer .other ul.guideline li:nth-of-type(1) {
    width: 50%;
    text-align: right !important;
  }
  footer .other ul.guideline li:nth-of-type(2) {
    width: 50%;
    text-align: left !important;
  }
  footer .other ul.guideline li:nth-of-type(3) {
    width: 100%;
    text-align: center;
  }
  footer .other dl.social dt {
    position: absolute !important;
    width: 100% !important;
    text-align: center;
    top: -40px;
    left: 0px;
    box-sizing: border-box;
    border-left: none !important;
  }
  footer .other dl.social {
    position: absolute;
    width: 100% !important;
    left: 0px;
    top: 100px;
    text-align: center;
    box-sizing: border-box;
  }
  footer .other div.isms {
    padding-top: 20px;
    text-align: center !important;
    position: absolute;
    left: 0px;
    bottom: 30px;
  }
}
body#top {
  padding: 64px 0px 0px 0px;
}
body#top section.top_header {
  background-image: url("./assets/image/top/top_h1-bg.png");
  padding: 0px !important;
}
body#top section.top_header div {
  padding: 50px 0px 60px 0px;
  text-align: center;
  background-image: url("./assets/image/top/bg_koma-l.png"), url("./assets/image/top/bg_koma-r.png");
  background-position: left 20px, right -40px;
  background-repeat: no-repeat, no-repeat;
}
body#top section.top_header div h1 {
  font-size: 27px;
  background: none;
}
body#top section.top_header div p {
  font-family: herozLight;
  font-weight: 500;
  font-size: 16px;
  color: #f6770f;
  line-height: 32px;
  margin-bottom: 30px;
}
body#top section.top_news article {
  max-width: 1200px;
  width: 100%;
  display: inline-block;
  text-align: left;
  padding-bottom: 50px;
}
body#top section.top_news article .news_list {
  padding: 0px 50px;
}
body#top section.top_news article .news_list li {
  border-bottom: 1px solid #efefef;
  padding: 10px 0px;
}
body#top section.top_news article .news_list li a {
  font-family: herozLight;
  font-size: 13px;
  width: 100%;
  text-decoration: none;
  line-height: 1.75;
  display: block;
  padding-left: 240px;
  color: #4c4c4c;
  position: relative;
}
body#top section.top_news article .news_list li a:hover {
  opacity: 0.6;
}
body#top section.top_news article .news_list li a date {
  font-size: 15px;
  width: 120px;
  color: #4c4c4c;
  display: inline-block;
  position: absolute;
  left: 0px;
  top: 50%;
  transform: translate(0, -50%);
}
body#top section.top_news article .news_list li a aside {
  font-size: 10px;
  color: #ffffff;
  padding: 0 4px 1px;
  width: 100px;
  text-align: center;
  display: inline-block;
  position: absolute;
  left: 110px;
  top: 50%;
  transform: translate(0, -50%);
}
body#top section.top_news article .news_list li a aside.Media {
  background-color: #5ccb5c;
}
body#top section.top_news article .news_list li a aside.Media:after {
  content: "メディア";
}
body#top section.top_news article .news_list li a aside.Event {
  background-color: #5c8ee9;
}
body#top section.top_news article .news_list li a aside.Event:after {
  content: "ニュース/イベント";
}
body#top section.top_news article .news_list li a aside.Release {
  background-color: #ff905c;
}
body#top section.top_news article .news_list li a aside.Release:after {
  content: "プレスリリース";
}
body#top section.top_recruit article {
  display: inline-block;
  max-width: 1200px;
  width: 100%;
  padding-bottom: 50px;
}
body#top section.top_recruit article dl {
  padding: 0px 150px;
  font-size: 0;
  height: 253px;
}
body#top section.top_recruit article dl dt {
  display: inline-block;
  vertical-align: top;
  width: 50%;
  height: 100%;
}
body#top section.top_recruit article dl dt img {
  width: 100%;
}
body#top section.top_recruit article dl dd {
  display: inline-block;
  width: 49%;
  height: 100%;
  position: relative;
}
body#top section.top_recruit article dl dd div {
  display: inline-block;
  position: absolute;
  left: 0px;
  top: 50%;
  transform: translate(0, -50%);
  font-size: 15px;
  padding-left: 20px;
}
body#top section.top_recruit article dl dd div h3 {
  font-weight: normal;
  font-size: 26px;
  margin-top: 0px;
  background-image: none;
  background-repeat: no-repeat;
  text-indent: 0px;
  padding-left: 0px;
}
body#top section.top_presskit article {
  display: inline-block;
  max-width: 1200px;
  width: 100%;
  padding-bottom: 50px;
}
body#top section.top_presskit article dl {
  border: 1px solid #e1e1e1;
  font-size: 0;
  height: 180px;
  margin-bottom: 30px;
}
body#top section.top_presskit article dl dt {
  display: inline-block;
  vertical-align: top;
  width: 30%;
  height: 100%;
  position: relative;
}
body#top section.top_presskit article dl dt picture {
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  width: 100%;
  text-align: center;
}
body#top section.top_presskit article dl dt picture img {
  max-width: 202px;
}
body#top section.top_presskit article dl dd {
  display: inline-block;
  width: 69%;
  height: 100%;
  position: relative;
}
body#top section.top_presskit article dl dd div {
  display: inline-block;
  position: absolute;
  left: 0px;
  top: 50%;
  transform: translate(0, -50%);
  font-size: 15px;
  padding-left: 20px;
}
body#top section.top_presskit article dl dd div h3 {
  font-weight: normal;
  font-size: 26px;
  margin-top: 0px;
  background-image: none;
  background-repeat: no-repeat;
  text-indent: 0px;
  padding-left: 0px;
}
body#top {
  /* 20240325 TOP ASKバナー */
}
body#top #heroz_ask_banner {
  width: 420px;
  height: 160px;
  position: fixed;
  right: 10px;
  bottom: 10px;
  z-index: 2;
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}
body#top #heroz_ask_banner.visible {
  opacity: 1;
  transform: translateY(0);
}
body#top #heroz_ask_banner .close_button {
  display: inline-block;
  color: #00aaff;
  z-index: 3;
  position: absolute;
  right: 2px;
  top: 2px;
  font-size: 22px;
  background-color: rgba(255, 255, 255, 0.5);
  width: 30px;
  height: 30px;
  line-height: 30px;
  text-align: center;
  border-radius: 15px;
  cursor: pointer;
}
body#top #heroz_ask_banner .close_button:hover {
  color: #f6770f;
}
body#en-top {
  padding: 64px 0px 0px 0px;
}
body#en-top section.top_header {
  background-image: url("./assets/image/top/top_h1-bg.png");
  padding: 0px !important;
}
body#en-top section.top_header div {
  padding: 50px 0px 60px 0px;
  text-align: center;
  background-image: url("./assets/image/top/bg_koma-l.png"), url("./assets/image/top/bg_koma-r.png");
  background-position: left 20px, right -40px;
  background-repeat: no-repeat, no-repeat;
}
body#en-top section.top_header div h1 {
  font-size: 27px;
  background: none;
}
body#en-top section.top_header div p {
  font-family: herozLight;
  font-weight: 500;
  font-size: 16px;
  color: #f6770f;
  line-height: 32px;
  margin-bottom: 30px;
}
body#en-top section.en-top_service article {
  max-width: 1200px;
  width: 100%;
  display: inline-block;
  text-align: left;
  padding-bottom: 50px;
}
body#en-top section.en-top_service article dl {
  border: solid 1px #e1e1e1;
  font-size: 0;
  height: 253px;
}
body#en-top section.en-top_service article dl dt {
  display: inline-block;
  vertical-align: top;
  width: 509px;
  height: 251px;
}
body#en-top section.en-top_service article dl dt img {
  width: 100%;
}
body#en-top section.en-top_service article dl dd {
  display: inline-block;
  width: calc(100% - 511px);
  height: 100%;
  position: relative;
}
body#en-top section.en-top_service article dl dd div {
  display: inline-block;
  position: absolute;
  left: 0px;
  top: 50%;
  transform: translate(0, -50%);
  font-size: 15px;
  padding-left: 20px;
}
body#en-top section.en-top_service article dl dd div h3 {
  font-weight: normal;
  font-size: 26px;
  margin-top: 0px;
  background-image: none;
  background-repeat: no-repeat;
  text-indent: 0px;
  padding-left: 0px;
}
body#en-top section.en-top_about-us article {
  max-width: 1200px;
  width: 100%;
  display: inline-block;
  text-align: left;
  padding-bottom: 50px;
}
body#en-top section.en-top_about-us article ul {
  text-align: center;
  width: 100%;
}
body#en-top section.en-top_about-us article ul li {
  width: 28%;
  display: inline-block;
  font-size: 0;
}
body#en-top section.en-top_about-us article ul li a {
  text-decoration: none;
  color: #666;
  width: 100%;
  height: 100%;
}
body#en-top section.en-top_about-us article ul li img {
  max-width: 100%;
}
body#en-top section.en-top_about-us article ul li p {
  position: relative;
  border-width: 0px 1px 1px 1px;
  border-style: none solid solid solid;
  border-color: #e1e1e1;
  font-size: 12px;
  line-height: 50px;
}
body#en-top section.en-top_about-us article ul li p span {
  width: 20px;
  height: 5px;
  display: inline-block;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translate(0, -50%);
}
body#en-top section.en-top_about-us article ul li p span svg {
  vertical-align: top;
}
body#en-top section.en-top_ir article {
  max-width: 1200px;
  width: 100%;
  display: inline-block;
  text-align: left;
  padding-bottom: 50px;
}
body#en-top section.en-top_ir article .ir_list {
  padding: 20px 30px;
}
body#en-top section.en-top_ir article .ir_list li {
  border-bottom: 1px solid #ddd;
}
body#en-top section.en-top_ir article .ir_list li a {
  text-decoration: none;
  font-weight: normal;
  font-size: 13px;
  color: #333;
  display: block;
  line-height: 3;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
body#en-top section.en-top_ir article .ir_list li a date {
  display: inline-block;
  margin-right: 20px;
}
body#en-top section.en-top_ir article .ir_list li a:hover {
  opacity: 0.6;
}
body#en-top section:nth-of-type(odd) {
  background-color: #f9f9f9 !important;
}
body#en-top section:nth-of-type(even) {
  background-color: #FFF !important;
}
body#en-top footer .inner .sitemap dl {
  display: inline-block;
  width: 25%;
}

@media (max-width: 840px) {
  body#top section.top_header {
    background-image: url("./assets/image/top/top_h1-bg.png");
    padding: 0px !important;
  }
  body#top section.top_header div {
    padding: 10px 10px 30px 10px !important;
    text-align: center;
    background-image: none;
  }
  body#top section.top_header div h1 {
    font-size: 27px;
    background: none;
  }
  body#top section.top_header div p {
    font-family: herozLight;
    font-weight: 500;
    font-size: 14px;
    color: #f6770f;
    line-height: 20px;
  }
  body#top section.top_news article .news_list {
    margin-top: 0 !important;
    padding: 0px !important;
  }
  body#top section.top_news article .news_list li a {
    padding: 30px 0px 0px 0px !important;
  }
  body#top section.top_news article .news_list li a date {
    top: -2px !important;
    transform: translate(0, 0) !important;
  }
  body#top section.top_news article .news_list li a aside {
    top: 10px !important;
    left: 95px !important;
  }
  body#top section.top_recruit article dl {
    padding: 0px !important;
    height: auto !important;
    border: 1px solid #e1e1e1;
  }
  body#top section.top_recruit article dl dt, body#top section.top_recruit article dl dd {
    width: 100% !important;
    height: auto !important;
  }
  body#top section.top_recruit article dl dt picture {
    width: 100% !important;
    position: relative !important;
    display: block;
    text-align: center;
    left: 0px;
    top: 0px;
    transform: translate(0);
    padding-left: 0px !important;
    padding: 0px !important;
  }
  body#top section.top_recruit article dl dt picture img {
    max-width: 100%;
  }
  body#top section.top_recruit article dl dd div {
    width: 100%;
    position: relative !important;
    left: 0px;
    top: 0px;
    transform: translate(0);
    padding-left: 0px !important;
    padding: 10px !important;
  }
  body#top section.top_presskit article dl {
    padding: 0px !important;
    height: auto !important;
  }
  body#top section.top_presskit article dl dt, body#top section.top_presskit article dl dd {
    width: 100% !important;
    height: auto !important;
  }
  body#top section.top_presskit article dl dt picture {
    width: 100% !important;
    position: relative !important;
    display: block;
    text-align: center;
    left: 0px;
    top: 0px;
    transform: translate(0);
    padding-left: 0px !important;
    padding: 20px 0px !important;
  }
  body#top section.top_presskit article dl dt picture img {
    max-width: 160px;
  }
  body#top section.top_presskit article dl dd div {
    width: 100%;
    position: relative !important;
    left: 0px;
    top: 0px;
    transform: translate(0);
    padding-left: 0px !important;
    padding: 10px !important;
  }
  body#en-top section.top_en_service {
    padding: 0px !important;
    height: auto !important;
  }
  body#en-top section.top_en_service dt, body#en-top section.top_en_service dd {
    width: 100% !important;
    height: auto !important;
  }
  body#en-top section.top_en_service dd {
    padding: 10px;
  }
  body#en-top section.top_en_service dd div {
    width: 100%;
    position: relative !important;
    left: 0px;
    top: 0px;
    transform: translate(0);
    padding-left: 0px !important;
    padding: 10px 0px !important;
  }
}
body#service .service_top {
  padding: 100px 130px;
}
body#service .service_top strong {
  padding: 0px;
  font-size: 18px;
  color: #f6770f;
  font-family: herozMedium;
}
body#service .service_top .underline {
  border-bottom: solid 1px #f6770f;
}
body#service .service_top .service_thumbnail_list {
  padding: 0px;
  margin: 30px 0px;
}
body#service .service_top .service_thumbnail_list li {
  width: 30%;
  display: inline-block;
  vertical-align: top;
  padding: 0px 1%;
  -webkit-box-flex: 0;
  -webkit-flex-grow: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
body#service .service_top .service_thumbnail_list li h3 {
  padding-left: 8px;
  border-left: solid 2px #f6770f;
  margin: 0px 0px 24px 0px;
  font-size: 20px;
  line-height: 1;
  font-weight: normal;
  background: none;
  text-indent: 0;
}
body#service .service_top .service_thumbnail_list li picture img {
  max-width: 100%;
}
body#service .service_top .service_thumbnail_list li p {
  font-size: 16px;
}
body#service .service_top .service_thumbnail_list li p strong {
  font-size: 18px;
  color: #f6770f;
  font-family: herozMedium;
  background-color: #fff;
  background-size: 6px 6px;
  background-repeat: repeat;
}
body#service .service_top dl {
  font-size: 0;
}
body#service .service_top dl dt {
  display: inline-block;
  vertical-align: top;
  font-size: 16px;
  padding-right: 20px;
  width: calc(100% - 515px);
  box-sizing: border-box;
}
body#service .service_top dl dd {
  display: inline-block;
  width: 460px;
}
body#service .service_btoc dl {
  border-top: solid 1px #e1e1e1;
  margin-bottom: 50px;
  padding-top: 30px;
}
body#service .service_btoc dl:first-of-type {
  border: none;
}
body#service .service_btoc dl dt {
  width: 200px;
  padding: 20px;
  box-sizing: border-box;
  display: inline-block;
  vertical-align: top;
}
body#service .service_btoc dl dt picture img {
  max-width: 100%;
}
body#service .service_btoc dl dd {
  width: calc(100% - 210px);
  padding-left: 10px;
  box-sizing: border-box;
  display: inline-block;
}
body#service .service_btoc dl dd h3 {
  text-indent: 0;
  background: none;
  padding-left: 0px;
}
body#service .service_btoc dl dd h4 {
  border: none;
  margin: 0px 0px 15px 0px;
  font-size: 19px;
  text-indent: 0;
  padding: 0;
}
body#service .service_btoc dl dd p {
  margin: 0px 0px 20px 0px;
}

@media (max-width: 840px) {
  body#service .service_thumbnail_list {
    margin: 10px 0px !important;
  }
  body#service .service_thumbnail_list li {
    width: 100% !important;
  }
  body#service .service_thumbnail_list p {
    margin: 0px 0px 10px 0px;
  }
  body#service .service_btoc dt, body#service .service_btoc dd {
    width: 100% !important;
    padding: 0px !important;
  }
  body#service .service_btoc dt {
    text-align: center;
  }
  body#service .service_btoc dt picture {
    display: inline-block;
    max-width: 160px;
  }
  body#service .service_top {
    padding: 0 10px;
  }
  body#service .service_top dl dt {
    width: 100% !important;
  }
  body#service .service_top dl dd {
    width: 100% !important;
  }
}
body#company section article {
  padding: 50px 0px;
}
body#company section article .company_board {
  width: 100%;
  font-size: 0;
  margin-bottom: 20px;
}
body#company section article .company_board dt {
  width: 400px;
  display: inline-block;
  vertical-align: top;
}
body#company section article .company_board dt img {
  width: 100%;
}
body#company section article .company_board dd {
  width: calc(100% - 402px);
  display: inline-block;
  padding: 5px 0px 0px 20px;
  font-size: 15px;
  box-sizing: border-box;
}
body#company section article .company_board dd h3 {
  background: none;
  border: none;
  text-indent: 0;
  font-size: 25px;
  margin: 10px 0px 15px 0px;
}
body#company section article .company_board dd h4 {
  font-size: 14px;
  margin: 0;
}
body#company section article .company_board dd p {
  margin: 0px 0px 4px 0px;
}
body#company section article .company_board dd p:before {
  content: "-";
  display: inline-block;
  margin-right: 8px;
}
body#company section article .company_board dd p date {
  display: inline-block;
  vertical-align: top;
  width: 90px;
  margin-right: 8px;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
body#company section article .company_board dd p span {
  display: inline-block;
  vertical-align: top;
  margin: 0;
}
body#company section article .company_board_sub {
  margin-top: 100px;
  padding-top: 100px;
  border-top: solid 1px #e1e1e1;
  font-size: 0;
}
body#company section article .company_board_sub li {
  display: inline-block;
  padding: 5px 0px 0px 20px;
  font-size: 15px;
  box-sizing: border-box;
  width: 49%;
  margin-bottom: 70px;
  vertical-align: top;
}
body#company section article .company_board_sub li h3 {
  background: none;
  border: none;
  text-indent: 0;
  font-size: 25px;
  margin: 20px 0px 15px 0px;
}
body#company section article .company_board_sub li h4 {
  font-size: 14px;
  margin: 0;
}
body#company section article .company_board_sub li p {
  margin: 0px 0px 4px 0px;
  font-size: 15px;
}
body#company section article .company_board_sub li p:before {
  content: "-";
  display: inline-block;
  margin-right: 8px;
}
body#company section article .company_board_sub li p date {
  display: inline-block;
  vertical-align: top;
  width: 90px;
  margin-right: 8px;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
body#company section article .company_board_sub li p span {
  display: inline-block;
  vertical-align: top;
  margin: 0;
}
body#company section article .company_philosophy_head {
  text-align: center;
}
body#company section article .company_philosophy_head h3 {
  margin: 0 0 20px 0;
  color: #f6770f;
  font-size: 32px;
  font-weight: normal;
  background: none;
  text-indent: 0px;
  text-align: center;
}
body#company section article .company_philosophy_head h4 {
  border: none;
  text-align: center;
  margin: 0 0 16px;
  font-size: 26px;
  font-weight: normal;
}
body#company section article .company_philosophy_head p {
  text-align: center;
  margin-bottom: 50px;
}
body#company section article .company_philosophy_guidelines {
  margin: 100px auto;
  background-color: #f9f9f9;
  padding: 20px;
  width: 900px;
}
body#company section article .company_philosophy_guidelines h4 {
  border: none;
  padding: 30px 0px;
  text-indent: 0px;
  margin: 0px;
  font-size: 30px;
  text-align: center;
}
body#company section article .company_philosophy_guidelines dl {
  margin-bottom: 50px;
}
body#company section article .company_philosophy_guidelines dl dt {
  color: #f6770f;
  font-size: 32px;
  font-weight: normal;
  width: 200px;
  text-align: center;
  display: inline-block;
  vertical-align: top;
}
body#company section article .company_philosophy_guidelines dl dd {
  display: inline-block;
  vertical-align: top;
  width: calc(100% - 210px);
}
body#company section article .company_philosophy_guidelines dl dd h5 {
  margin: 0px;
  font-size: 24px;
  font-weight: 500;
}
body#company section article .company_philosophy_guidelines dl dd p {
  margin: 10px 0px 0px 0px;
  font-size: 18px;
}
body#company section article .company_info dl {
  border-top: solid 1px #e1e1e1;
  font-size: 0;
  width: 900px;
  padding: 20px 10px;
  margin: 0px auto;
}
body#company section article .company_info dl:first-of-type {
  border: none;
}
body#company section article .company_info dl dt {
  font-size: 15px;
  font-weight: bold;
  width: 150px;
  display: inline-block;
  vertical-align: top;
}
body#company section article .company_info dl dd {
  width: calc(100% - 160px);
  font-size: 15px;
  display: inline-block;
  vertical-align: top;
}
body#company section article .company_info dl dd p {
  margin: 0;
}
body#company section article .company_access {
  padding: 100px 0px;
}
body#company section article .company_access dl {
  font-size: 0;
}
body#company section article .company_access dl dt {
  display: inline-block;
  vertical-align: top;
  width: 600px;
}
body#company section article .company_access dl dd {
  width: calc(100% - 625px);
  display: inline-block;
  font-size: 16px;
  padding-left: 20px;
}

@media (max-width: 840px) {
  body#company section article .company_board dt {
    width: 100% !important;
  }
  body#company section article .company_board dt img {
    width: 100%;
  }
  body#company section article .company_board dd {
    width: 100% !important;
    padding: 10px 0px !important;
  }
  body#company section article .company_board_sub {
    margin-top: 20px;
    padding-top: 20px;
    border-top: solid 1px #e1e1e1;
    font-size: 0;
  }
  body#company section article .company_board_sub li {
    margin-bottom: 20px;
    padding: 10px 0px;
    width: 100%;
  }
  body#company section article .company_philosophy_guidelines {
    margin: 0px auto !important;
    padding: 0px !important;
    width: 100% !important;
  }
  body#company section article .company_philosophy_guidelines h4 {
    border: none;
    padding: 10px 0px !important;
    font-size: 20px !important;
  }
  body#company section article .company_philosophy_guidelines dl {
    margin-bottom: 50px;
  }
  body#company section article .company_philosophy_guidelines dl dt {
    font-size: 20px !important;
    font-weight: normal;
    text-align: left !important;
    width: 100% !important;
  }
  body#company section article .company_philosophy_guidelines dl dd {
    width: 100% !important;
  }
  body#company section article .company_philosophy_guidelines dl dd h5 {
    font-size: 18px !important;
  }
  body#company section article .company_philosophy_guidelines dl dd p {
    margin: 0px !important;
    font-size: 14px;
  }
  body#company section article .company_info {
    padding: 10px 0px !important;
    margin-bottom: 30px;
  }
  body#company section article .company_info dl {
    border-top: none !important;
    width: 100% !important;
    padding: 10px 0px 0px 0px !important;
  }
  body#company section article .company_info dl dt {
    width: 100% !important;
  }
  body#company section article .company_info dl dd {
    width: 100% !important;
    border-bottom: solid 1px #e1e1e1;
  }
  body#company section article .company_info dl dd p {
    margin: 0;
  }
  body#company section article .company_access {
    padding: 10px 0px !important;
  }
  body#company section article .company_access dl {
    font-size: 0;
  }
  body#company section article .company_access dl dt {
    width: 100% !important;
  }
  body#company section article .company_access dl dt iframe {
    width: 100%;
    max-height: 300px;
  }
  body#company section article .company_access dl dd {
    width: 100% !important;
    padding-left: 0px !important;
  }
}
body#topics section article {
  padding: 50px 0px;
}
body#topics section article .news_list {
  padding: 0px 50px;
}
body#topics section article .news_list li {
  border-bottom: 1px solid #efefef;
  padding: 10px 0px;
}
body#topics section article .news_list li a {
  font-family: herozLight;
  font-size: 13px;
  width: 100%;
  text-decoration: none;
  line-height: 1.75;
  display: block;
  padding-left: 240px;
  color: #4c4c4c;
  position: relative;
}
body#topics section article .news_list li a:hover {
  opacity: 0.6;
}
body#topics section article .news_list li a date {
  font-size: 15px;
  width: 120px;
  color: #4c4c4c;
  display: inline-block;
  position: absolute;
  left: 0px;
  top: 50%;
  transform: translate(0, -50%);
}
body#topics section article .news_list li a aside {
  font-size: 10px;
  color: #ffffff;
  padding: 0 4px 1px;
  width: 100px;
  text-align: center;
  display: inline-block;
  position: absolute;
  left: 110px;
  top: 50%;
  transform: translate(0, -50%);
}
body#topics section article .news_list li a aside.Media {
  background-color: #5ccb5c;
}
body#topics section article .news_list li a aside.Media:after {
  content: "メディア";
}
body#topics section article .news_list li a aside.Event {
  background-color: #5c8ee9;
}
body#topics section article .news_list li a aside.Event:after {
  content: "ニュース/イベント";
}
body#topics section article .news_list li a aside.Release {
  background-color: #ff905c;
}
body#topics section article .news_list li a aside.Release:after {
  content: "プレスリリース";
}
body#topics section article .pagination {
  margin-top: 20px;
  text-align: center;
}
body#topics section article .pagination .page-numbers {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  margin: 0 4px;
  width: 40px;
  height: 40px;
  text-decoration: none;
  color: #4c4c4c;
}
body#topics section article .pagination .page-numbers.current {
  background-color: #fff;
  background-image: -webkit-linear-gradient(135deg, #fff 25%, rgba(246, 119, 15, 0.2) 25%, rgba(246, 119, 15, 0.2) 37.5%, #fff 37.5%, #fff 75%, rgba(246, 119, 15, 0.2) 75%, rgba(246, 119, 15, 0.2) 87.5%, #fff 87.5%, #fff);
  background-image: linear-gradient(-45deg, #fff 25%, rgba(246, 119, 15, 0.2) 25%, rgba(246, 119, 15, 0.2) 37.5%, #fff 37.5%, #fff 75%, rgba(246, 119, 15, 0.2) 75%, rgba(246, 119, 15, 0.2) 87.5%, #fff 87.5%, #fff);
  background-size: 6px 6px;
  background-repeat: repeat;
  color: #f6770f;
}
body#news {
  padding: 64px 0px 0px 0px;
}
body#news section article {
  padding: 50px 0px;
}
body#news section article .news_header {
  display: block;
  position: relative;
  padding-top: 40px;
  padding-bottom: 10px;
  padding-right: 190px;
  font-size: 20px;
  border-bottom: 1px solid #efefef;
  line-height: 28px;
}
body#news section article .news_header time {
  font-size: 15px;
  width: 90px;
  color: #4c4c4c;
  display: inline-block;
  position: absolute;
  left: 0px;
  top: 0px;
  line-height: 40px;
}
body#news section article .news_header aside {
  font-size: 10px;
  color: #ffffff;
  padding: 0 4px 1px;
  width: 100px;
  text-align: center;
  display: inline-block;
  position: absolute;
  left: 100px;
  top: 9px;
  line-height: 20px;
}
body#news section article .news_header aside.Media {
  background-color: #5ccb5c;
}
body#news section article .news_header aside.Media:after {
  content: "メディア";
}
body#news section article .news_header aside.Event {
  background-color: #5c8ee9;
}
body#news section article .news_header aside.Event:after {
  content: "ニュース/イベント";
}
body#news section article .news_header aside.Release {
  background-color: #ff905c;
}
body#news section article .news_header aside.Release:after {
  content: "プレスリリース";
}
body#news section article .news_content {
  padding: 30px 100px;
}
body#news section article .news_content h3 {
  margin: 10px 0px !important;
}
body#news section article .news_content table {
  display: inline-block;
  border-collapse: collapse;
  border-spacing: 0;
  margin: 0px 15px 30px 15px;
}
body#news section article .news_content table thead th, body#news section article .news_content table tbody th {
  font-size: 14px;
  padding: 0.3em 10px;
  border: 1px solid #ccc;
  word-wrap: break-word;
  word-break: break-all;
  background: #eee;
  text-align: center;
}
body#news section article .news_content table thead td, body#news section article .news_content table tbody td {
  padding: 0.3em 10px;
  border: 1px solid #ccc;
  word-wrap: break-word;
  word-break: break-all;
}
body#news section article .news_content p {
  padding-bottom: 20px;
}
body#news section article .news_content ul.list_nomark {
  padding: 0px 0px 0px 15px !important;
}
body#news section article .news_content ul.list_nomark li {
  padding: 3px 3px 3px 3px !important;
}
body#news section article .news_content picture.has-border img {
  border: 1px solid #ccc;
}
body#news section article .news_share {
  position: absolute;
  right: 0px;
  top: calc(100% - 35px);
  width: 140px;
  height: 30px;
  display: inline-block;
  text-align: right;
}
body#news section article .news_share a {
  display: inline-block;
  width: 30px;
  height: 30px;
}
body#news section article .news_share a picture {
  max-width: 100%;
  display: block;
}
body#news section article .news_share a picture svg {
  max-width: 100%;
}
body#news section article .news_thumbnail {
  font-size: 0;
  width: 100%;
  display: block;
}
body#news section article .news_thumbnail dt {
  width: 250px;
  vertical-align: top;
  display: inline-block;
}
body#news section article .news_thumbnail dt picture {
  cursor: pointer;
}
body#news section article .news_thumbnail dt picture img {
  max-width: 100%;
  border: 1px solid #ccc;
}
body#news section article .news_thumbnail dd {
  vertical-align: top;
  display: inline-block;
  width: calc(100% - 252px);
  font-size: 13px;
  padding: 10px;
}

@media (max-width: 840px) {
  body#topics section article {
    padding: 10px 0px !important;
  }
  body#topics section article .news_header {
    margin-top: 0px !important;
    padding-top: 40px !important;
    padding-bottom: 40px !important;
    padding-right: 0px !important;
  }
  body#topics section article .news_thumbnail dt {
    width: 100% !important;
  }
  body#topics section article .news_thumbnail dd {
    width: 100% !important;
  }
  body#topics section article .news_list {
    margin-top: 0 !important;
    padding: 0px !important;
  }
  body#topics section article .news_list li a {
    padding: 30px 0px 0px 0px !important;
  }
  body#topics section article .news_list li a date {
    top: -2px !important;
    transform: translate(0, 0) !important;
  }
  body#topics section article .news_list li a aside {
    top: 10px !important;
    left: 95px !important;
  }
  body#topics section article .news_content {
    padding: 10px !important;
  }
  body#topics section article .news_share {
    left: 0px !important;
  }
  body#news section article {
    padding: 10px 0px !important;
  }
  body#news section article .news_header {
    margin-top: 0px !important;
    padding-top: 40px !important;
    padding-bottom: 40px !important;
    padding-right: 0px !important;
  }
  body#news section article .news_thumbnail dt {
    width: 100% !important;
  }
  body#news section article .news_thumbnail dd {
    width: 100% !important;
  }
  body#news section article .news_list {
    margin-top: 0 !important;
    padding: 0px !important;
  }
  body#news section article .news_list li a {
    padding: 30px 0px 0px 0px !important;
  }
  body#news section article .news_list li a date {
    top: -2px !important;
    transform: translate(0, 0) !important;
  }
  body#news section article .news_list li a aside {
    top: 10px !important;
    left: 95px !important;
  }
  body#news section article .news_content {
    padding: 10px !important;
  }
  body#news section article .news_share {
    left: 0px !important;
  }
}
body#lp {
  padding: 64px 0px 0px 0px !important;
}
body#lp > h1 {
  display: none;
}
body#lp section article {
  padding: 0px 0px !important;
  width: 100% !important;
  max-width: 100% !important;
}
body#lp section article .lp_header {
  background-image: url("./assets/image/lp/top/header_bg.png");
  background-size: cover;
  height: clamp(250px, 50vw, 600px);
  position: relative;
  background-position: 50% 10%;
  text-align: center;
}
body#lp section article .lp_header p.tagline {
  font-family: "herozMedium";
  font-size: clamp(20px, 5vw, 50px);
  line-height: 1.1;
  color: #333;
  text-align: left;
  font-weight: bold;
  display: inline-block;
  margin-top: 50px;
}
body#lp section article .lp_header p.tagline span {
  color: rgb(239, 141, 58);
  font-size: clamp(30px, 10vw, 115px);
}
body#lp section article .lp_header .waves {
  position: absolute;
  width: 100%;
  bottom: 0px;
  left: 0px;
  height: clamp(30px, 15vw, 250px);
}
body#lp section article .lp_header .waves .parallax > use {
  animation: move-forever 25s cubic-bezier(0.55, 0.5, 0.45, 0.5) infinite;
}
body#lp section article .lp_header .waves .parallax > use:nth-child(1) {
  animation-delay: -2s;
  animation-duration: 7s;
}
body#lp section article .lp_header .waves .parallax > use:nth-child(2) {
  animation-delay: -3s;
  animation-duration: 10s;
}
body#lp section article .lp_header .waves .parallax > use:nth-child(3) {
  animation-delay: -4s;
  animation-duration: 13s;
}
body#lp section article .lp_header .waves .parallax > use:nth-child(4) {
  animation-delay: -5s;
  animation-duration: 20s;
}
@keyframes move-forever {
  0% {
    transform: translate3d(-90px, 0, 0);
  }
  100% {
    transform: translate3d(85px, 0, 0);
  }
}
body#lp section article .lp_case-study {
  background-color: #ef8d3a;
  text-align: center;
  padding: 50px 0px 80px 0px;
}
body#lp section article .lp_case-study h2 {
  color: #FFF;
}
body#lp section article .lp_case-study h2 span {
  color: #FFF;
  font-family: "heroz";
}
body#lp section article .lp_case-study ul {
  display: inline-block;
  width: 100%;
  max-width: 1200px;
  text-align: center;
}
body#lp section article .lp_case-study ul li {
  width: 380px;
  background-color: #FFF;
  position: relative;
  display: inline-block;
  margin: 10px;
  vertical-align: top;
  padding-bottom: 70px;
  height: 370px;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.3);
  transition: transform 0.3s; /* 0.3秒かけて変化 */
}
body#lp section article .lp_case-study ul li:hover {
  transform: translateY(-10px); /* 上に10px移動 */
}
body#lp section article .lp_case-study ul li a {
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none;
}
body#lp section article .lp_case-study ul li a:hover {
  opacity: 0.8;
}
body#lp section article .lp_case-study ul li a span {
  background-color: #ffa600;
  padding: 0px 15px;
  position: absolute;
  top: 185px;
  left: 20px;
  z-index: 2;
  color: #FFF;
}
body#lp section article .lp_case-study ul li a picture {
  width: 100%;
  height: 200px;
  overflow: hidden;
  display: block;
}
body#lp section article .lp_case-study ul li a picture img {
  width: 100%;
}
body#lp section article .lp_case-study ul li a p {
  color: #333;
  text-decoration: none;
  text-align: left;
  padding: 20px 10px 0px 10px;
}
body#lp section article .lp_case-study ul li a aside {
  position: absolute;
  height: 50px;
  right: 10px;
  bottom: 10px;
  text-align: right;
}
body#lp section article .lp_case-study ul li a aside img {
  height: 50px;
}
body#lp section article .lp_logos h2 {
  color: #333;
}
body#lp section article .lp_logos h2 span {
  color: #333;
  font-family: "heroz";
}
body#lp section article .lp_logos {
  overflow: hidden;
}
body#lp section article .lp_logos ul {
  display: flex;
  margin: 0;
  padding: 0;
  width: max-content;
}
body#lp section article .lp_logos ul li {
  list-style: none;
  padding: 10px 20px;
  width: 200px;
}
body#lp section article .lp_logos ul li img {
  width: 100%;
}
body#lp section article .lp_technology h2 {
  color: #333;
}
body#lp section article .lp_technology h2 span {
  color: #333;
  font-family: "heroz";
}
body#lp section article .lp_technology {
  text-align: center;
  padding: 50px 0px;
}
body#lp section article .lp_technology .lp_technology-inner {
  display: inline-block;
  width: 100%;
  max-width: 1200px;
}
body#lp section article .lp_technology .lp_technology-inner .lp_technology-lead p {
  font-size: clamp(14px, 4vw, 44px);
  margin-bottom: min(3.5807291667vw, 55px);
}
body#lp section article .lp_technology .lp_technology-inner .lp_technology-lead aside {
  font-size: clamp(10px, 1.0416666667vw, 16px);
}
body#lp section article .lp_technology .lp_technology-inner .lp_technology-lead span {
  color: #f5780f;
}
body#lp section article .lp_technology .lp_technology-inner .lp_technology-bottom {
  margin-top: 30px;
}
body#lp section article .lp_technology .lp_technology-inner .lp_technology-bottom p {
  font-size: clamp(12px, 2vw, 25px);
  margin-bottom: 0.9765625vw;
}
body#lp section article .lp_technology .lp_technology-inner .lp_technology-bottom aside {
  font-size: clamp(10px, 1.1vw, 16px);
}
body#lp section article .lp_technology .lp_technology-inner .lp_technology-bottom span {
  color: #f5780f;
}
body#lp section article .lp_strength {
  text-align: center;
  padding: 20px 0px 50px 0px;
}
body#lp section article .lp_strength .lp_strength-inner {
  width: 100%;
  max-width: 1200px;
  display: inline-block;
}
body#lp section article .lp_strength .lp_strength-inner h2 {
  color: #333;
}
body#lp section article .lp_strength .lp_strength-inner h2 span {
  color: #333;
  font-family: "heroz";
}
body#lp section article .lp_strength .lp_strength-inner dl {
  max-width: 1200px;
  width: 100%;
  font-size: 0;
  text-align: center;
  margin-bottom: 50px;
  display: flex;
  flex-direction: row;
  align-items: stretch;
  justify-content: space-between;
  width: 100%;
  gap: 0;
}
body#lp section article .lp_strength .lp_strength-inner dl:nth-of-type(even) {
  flex-direction: row-reverse !important;
}
body#lp section article .lp_strength .lp_strength-inner dl dt, body#lp section article .lp_strength .lp_strength-inner dl dd {
  width: 49%;
  vertical-align: top;
  position: relative;
  display: inline-block;
}
body#lp section article .lp_strength .lp_strength-inner dl dt img {
  width: 100%;
}
body#lp section article .lp_strength .lp_strength-inner dl dd {
  padding: 10px 20px;
}
body#lp section article .lp_strength .lp_strength-inner dl dd h3 {
  font-size: 29px;
  line-height: 38px;
  background: none;
  padding-left: 0px !important;
  margin: 10px 0px !important;
}
body#lp section article .lp_strength .lp_strength-inner dl dd aside {
  width: 60px;
  height: 50px;
  font-size: 25px;
  margin-bottom: 20px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background-color: #f5780f;
  -webkit-clip-path: polygon(25% 0, 75% 0, 100% 50%, 75% 100%, 25% 100%, 0% 50%);
  clip-path: polygon(25% 0, 75% 0, 100% 50%, 75% 100%, 25% 100%, 0% 50%);
  font-family: "Advent Pro", sans-serif;
  font-weight: 400;
  color: #ffffff;
  text-align: center;
}
body#lp section article .lp_strength .lp_strength-inner dl dd p {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  color: #707070;
  line-height: 2.2;
  font-size: 12px;
  text-align: left;
}
body#lp section article .lp_strength .lp_strength-inner dl dd p span {
  border-bottom: 2px solid #f5780f;
}
body#lp section article .lp_strength .lp_strength-inner div a {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  background-color: #f6770f;
  background-image: -webkit-gradient(linear, left top, right top, from(#f6770f), color-stop(#f6bd0f), to(#f6770f));
  background-image: -webkit-linear-gradient(left, #f6770f, #f6bd0f, #f6770f);
  background-image: linear-gradient(to right, #f6770f, #f6bd0f, #f6770f);
  background-size: 200% 100%;
  background-repeat: repeat;
  -webkit-animation: gradient 8s linear 0s infinite;
  animation: gradient 8s linear 0s infinite;
  padding: 12px 20px;
  font-size: 14px;
  color: #ffffff;
  text-decoration: none;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
}
body#lp section article .lp_strength .lp_strength-inner div a > span {
  position: relative;
  top: -3px;
  width: 20px;
  height: 5px;
  margin-left: 10px;
}
body#lp section article .lp_strength .lp_strength-inner div a > span svg {
  fill: currentColor;
  vertical-align: middle;
}
body#lp section article .lp_strength .lp_strength-inner div a > span svg:not(:root) {
  overflow: hidden;
}
body#lp section article .lp_strength .lp_strength-inner div a:hover {
  opacity: 0.8;
}
body#lp section article .lp_flow {
  background-color: rgb(247, 248, 250);
  background-image: url(assets/image/lp/top/bg-flow.png);
  background-repeat: no-repeat;
  background-size: 30%;
  background-position: left top;
  padding: 20px 0px;
  text-align: center;
}
body#lp section article .lp_flow ul {
  display: flex;
  width: 100%;
  max-width: 1200px;
  margin: 0px auto;
}
body#lp section article .lp_flow ul li {
  display: inline-block;
  vertical-align: top;
}
body#lp section article .lp_flow ul li:nth-of-type(1) {
  width: calc(100% - 700px);
  text-align: left;
  padding: 0px 50px;
  min-width: 250px;
}
body#lp section article .lp_flow ul li:nth-of-type(1) h2 {
  margin: 0px 0px 50px 0px;
  text-align: left;
  color: #333;
}
body#lp section article .lp_flow ul li:nth-of-type(1) h2 span {
  color: #333;
  font-family: "heroz";
}
body#lp section article .lp_flow ul li:nth-of-type(2) {
  width: 695px;
}
body#lp section article .lp_flow ul li:nth-of-type(2) dl {
  background-color: #FFF;
  margin-bottom: 30px;
}
body#lp section article .lp_flow ul li:nth-of-type(2) dl dt {
  display: inline-block;
  width: 350px;
  text-align: left;
  vertical-align: top;
  font-size: 30px;
  padding: 20px 30px;
}
body#lp section article .lp_flow ul li:nth-of-type(2) dl dt p {
  display: inline-block;
}
body#lp section article .lp_flow ul li:nth-of-type(2) dl dt p span {
  color: #f5780f;
}
body#lp section article .lp_flow ul li:nth-of-type(2) dl dt aside {
  margin-right: 20px;
  font-family: "Advent Pro", sans-serif;
  font-weight: 300;
  display: inline-block;
}
body#lp section article .lp_flow ul li:nth-of-type(2) dl dd {
  display: inline-block;
  width: calc(100% - 355px);
  text-align: left;
  vertical-align: top;
  padding: 30px;
}
body#lp section article .lp_flow ul li:nth-of-type(2) dl dd p {
  position: relative;
}
body#lp section article .lp_flow ul li:nth-of-type(2) dl dd p:before {
  content: "";
  position: absolute;
  width: 8px;
  height: 8px;
  background-color: rgb(245, 120, 15);
  top: calc(50% - 0.195312vw);
  left: -1.5rem;
  border-radius: 4px;
}
body#lp section article .lp_flow ul li:nth-of-type(2) dl dd p:nth-of-type(1):after {
  content: "";
  position: absolute;
  width: 40px;
  height: 1px;
  background-color: rgb(245, 120, 15);
  top: calc(50% + 3px - 0.195312vw);
  left: calc(-40px - 1.5rem);
}
body#lp section article .lp_form {
  background-color: rgb(247, 248, 250);
  text-align: center;
  padding: 20px 0px 50px 0px;
}
body#lp section article .lp_form ul {
  display: flex;
  width: 100%;
  max-width: 1200px;
  margin: 0px auto;
}
body#lp section article .lp_form ul li {
  display: inline-block;
  width: 50%;
  vertical-align: top;
}
body#lp section article .lp_form ul li h3 {
  padding-left: 0px !important;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: rgb(245, 120, 15);
  display: inline-block;
  border-bottom: 1px solid rgb(245, 120, 15);
  font-size: 40px;
  background: none;
}
body#lp section article .lp_form ul li dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  margin-bottom: min(1.6927083333vw, 26px);
}
body#lp section article .lp_form ul li dl dt {
  display: inline-block;
  width: 40%;
}
body#lp section article .lp_form ul li dl dt p {
  text-align: left;
}
body#lp section article .lp_form ul li dl dt p span {
  color: #ffffff;
  background-color: #f5780f;
  border-radius: 2px;
  margin-left: 0.5rem;
  font-size: 12px;
  padding: 2px 5px 3px 5px;
}
body#lp section article .lp_form ul li dl dd {
  display: inline-block;
  width: 60%;
  position: relative;
}
body#lp section article .lp_form ul li dl dd input {
  width: 100%;
  border-radius: 4px;
  border: 1px solid rgba(114, 123, 140, 0.4);
  color: #2b2b2b;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  padding: 0.3rem 1rem;
}
body#lp section article .lp_form ul li dl dd select {
  width: 100%;
  border-radius: 4px;
  border: 1px solid rgba(114, 123, 140, 0.25);
  color: #2b2b2b;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  padding: 0.3rem 1rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
body#lp section article .lp_form ul li dl.lp_form-name dd p span input {
  width: calc((100% - 15px) / 2);
}
body#lp section article .lp_form ul li dl.lp_form-name dd p span:nth-of-type(1) input {
  margin-right: 15px;
}
body#lp section article .lp_form ul li dl.lp_form-position dd:before {
  content: "";
  position: absolute;
  width: 1px;
  height: 50%;
  background-color: rgba(114, 123, 140, 0.25);
  top: 25%;
  right: 2.2rem;
  pointer-events: none;
  z-index: 2;
}
body#lp section article .lp_form ul li dl.lp_form-position dd:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 4.5px 0 4.5px;
  border-color: #000000 transparent transparent transparent;
  top: calc(50% - 0.15rem);
  right: 1rem;
  pointer-events: none;
  z-index: 2;
}
body#lp section article .lp_form ul li.lp_form-cf7 {
  padding-left: 100px;
}
body#lp section article .lp_form ul li.lp_form-cf7 p {
  font-size: 16px;
}
body#lp section article .lp_form ul li.lp_form-cf7 .wpcf7-not-valid-tip {
  display: none !important;
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-form-wrapper div.lp_form-submit {
  padding-top: 30px;
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-form-wrapper div.lp_form-submit p {
  padding: 0px 50px;
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-form-wrapper div.lp_form-submit p button {
  background-color: #f6770f;
  background-image: -webkit-gradient(linear, left top, right top, from(#f6770f), color-stop(#f6bd0f), to(#f6770f));
  background-image: -webkit-linear-gradient(left, #f6770f, #f6bd0f, #f6770f);
  background-image: linear-gradient(to right, #f6770f, #f6bd0f, #f6770f);
  background-size: 200% 100%;
  background-repeat: repeat;
  -webkit-animation: gradient 8s linear 0s infinite;
  animation: gradient 8s linear 0s infinite;
  padding: 12px 20px;
  font-size: 14px;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  border: none;
  border-radius: 7px;
  width: 100%;
  margin-bottom: 10px;
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-form-wrapper div.lp_form-submit p button:disabled {
  cursor: not-allowed;
  background-color: #DDDDDD;
  background-image: -webkit-gradient(linear, left top, right top, from(#DDDDDD), color-stop(#DDDDDD), to(#DDDDDD));
  background-image: -webkit-linear-gradient(left, #DDDDDD, #DDDDDD, #DDDDDD);
  background-image: linear-gradient(to right, #DDDDDD, #DDDDDD, #DDDDDD);
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-form-wrapper div.lp_form-submit .wpcf7-spinner {
  display: none;
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-form-wrapper div.lp_form-privacy p {
  font-size: 14px;
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-confirm-wrapper > p {
  padding: 15px 0px;
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-confirm-wrapper dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  margin-bottom: min(1.6927083333vw, 26px);
  background-color: #FFF;
  padding: 10px;
  margin-bottom: 7px;
  border-radius: 5px;
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-confirm-wrapper dl dt {
  display: inline-block;
  width: 40%;
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-confirm-wrapper dl dt p {
  text-align: left;
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-confirm-wrapper dl dt p span {
  color: #ffffff;
  background-color: #f5780f;
  border-radius: 2px;
  margin-left: 0.5rem;
  font-size: 12px;
  padding: 2px 5px 3px 5px;
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-confirm-wrapper dl dd {
  display: inline-block;
  width: 60%;
  position: relative;
  text-align: left;
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-confirm-wrapper dl dd input {
  width: 100%;
  border-radius: 4px;
  border: 1px solid rgba(114, 123, 140, 0.4);
  color: #2b2b2b;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  padding: 0.3rem 1rem;
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-confirm-wrapper dl dd select {
  width: 100%;
  border-radius: 4px;
  border: 1px solid rgba(114, 123, 140, 0.25);
  color: #2b2b2b;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  padding: 0.3rem 1rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-confirm-wrapper dl.lp_form-name dd p span input {
  width: calc((100% - 15px) / 2);
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-confirm-wrapper dl.lp_form-name dd p span:nth-of-type(1) input {
  margin-right: 15px;
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-confirm-wrapper dl.lp_form-position dd:before {
  content: "";
  position: absolute;
  width: 1px;
  height: 50%;
  background-color: rgba(114, 123, 140, 0.25);
  top: 25%;
  right: 2.2rem;
  pointer-events: none;
  z-index: 2;
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-confirm-wrapper dl.lp_form-position dd:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 4.5px 0 4.5px;
  border-color: #000000 transparent transparent transparent;
  top: calc(50% - 0.15rem);
  right: 1rem;
  pointer-events: none;
  z-index: 2;
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-confirm-wrapper .lp_form-submit-confirm {
  padding: 20px 50px 0px 50px;
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-confirm-wrapper .lp_form-submit-confirm button {
  margin: 0px 10px;
  background-color: #f6770f;
  background-image: -webkit-gradient(linear, left top, right top, from(#f6770f), color-stop(#f6bd0f), to(#f6770f));
  background-image: -webkit-linear-gradient(left, #f6770f, #f6bd0f, #f6770f);
  background-image: linear-gradient(to right, #f6770f, #f6bd0f, #f6770f);
  background-size: 200% 100%;
  background-repeat: repeat;
  -webkit-animation: gradient 8s linear 0s infinite;
  animation: gradient 8s linear 0s infinite;
  padding: 12px 30px;
  font-size: 14px;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  border: none;
  border-radius: 7px;
  margin-bottom: 10px;
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-confirm-wrapper .lp_form-submit-confirm button#back-btn {
  background-color: #999;
  background-image: -webkit-gradient(linear, left top, right top, from(#999), color-stop(#999), to(#999));
  background-image: -webkit-linear-gradient(left, #999, #999, #999);
  background-image: linear-gradient(to right, #999, #999, #999);
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-confirm-wrapper .lp_form-submit-confirm button:disabled {
  background-color: #DDDDDD;
  background-image: -webkit-gradient(linear, left top, right top, from(#DDDDDD), color-stop(#DDDDDD), to(#DDDDDD));
  background-image: -webkit-linear-gradient(left, #DDDDDD, #DDDDDD, #DDDDDD);
  background-image: linear-gradient(to right, #DDDDDD, #DDDDDD, #DDDDDD);
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-confirm-wrapper .lp_form-submit-confirm input[type=submit] {
  background-color: #f6770f;
  background-image: -webkit-gradient(linear, left top, right top, from(#f6770f), color-stop(#f6bd0f), to(#f6770f));
  background-image: -webkit-linear-gradient(left, #f6770f, #f6bd0f, #f6770f);
  background-image: linear-gradient(to right, #f6770f, #f6bd0f, #f6770f);
  background-size: 200% 100%;
  background-repeat: repeat;
  -webkit-animation: gradient 8s linear 0s infinite;
  animation: gradient 8s linear 0s infinite;
  padding: 12px 30px;
  font-size: 14px;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  border: none;
  border-radius: 7px;
  margin-bottom: 10px;
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-confirm-wrapper .lp_form-submit-confirm input[type=submit]:disabled {
  cursor: not-allowed;
  background-color: #DDDDDD;
  background-image: -webkit-gradient(linear, left top, right top, from(#DDDDDD), color-stop(#DDDDDD), to(#DDDDDD));
  background-image: -webkit-linear-gradient(left, #DDDDDD, #DDDDDD, #DDDDDD);
  background-image: linear-gradient(to right, #DDDDDD, #DDDDDD, #DDDDDD);
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-thankyou-wrapper {
  padding: 100px 10px;
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-thankyou-wrapper p {
  padding: 20px 0px;
}
body#lp section article .lp_form ul li.lp_form-cf7 div#cf7-thankyou-wrapper p a {
  background-color: #f6770f;
  background-image: -webkit-gradient(linear, left top, right top, from(#f6770f), color-stop(#f6bd0f), to(#f6770f));
  background-image: -webkit-linear-gradient(left, #f6770f, #f6bd0f, #f6770f);
  background-image: linear-gradient(to right, #f6770f, #f6bd0f, #f6770f);
  background-size: 200% 100%;
  background-repeat: repeat;
  -webkit-animation: gradient 8s linear 0s infinite;
  animation: gradient 8s linear 0s infinite;
  padding: 30px 20px;
  font-size: 20px;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  border: none;
  border-radius: 7px;
  display: inline-block;
  width: 100%;
}
body#lp section article .lp_case-study_header {
  padding: 30px 0px;
  border-bottom: 1px solid rgba(112, 112, 112, 0.2);
  margin-bottom: 20px;
}
body#lp section article .lp_case-study_header aside {
  display: inline-block;
  font-weight: 400;
  padding: 0 0.7rem;
  color: #ffffff;
  margin-right: 0.1rem;
}
body#lp section article .lp_case-study_header aside:nth-of-type(1) {
  background-color: #727b8c;
}
body#lp section article .lp_case-study_header aside:nth-of-type(1):before {
  content: "導入事例 #";
}
body#lp section article .lp_case-study_header aside:nth-of-type(2) {
  background-color: #f5780f;
}
body#lp section article .lp_case-study_header p {
  font-size: 45px;
  line-height: 45px;
  margin-top: 20px;
}
body#lp section article .lp_case-study_header p span {
  font-size: 25px;
  display: block;
}
body#lp section article .lp_case-study_eyecatch {
  margin: 30px 0px;
}
body#lp section article .lp_case-study_eyecatch picture {
  display: block;
}
body#lp section article .lp_case-study_eyecatch picture img {
  width: 100%;
}
body#lp section article .lp_case-study_eyecatch aside {
  display: flex;
  justify-content: space-between;
  padding: 0px 20px;
}
body#lp section article .lp_case-study_eyecatch aside p {
  display: inline-block;
  vertical-align: top;
}
body#lp section article .lp_case-study_overview {
  max-width: 1000px;
  border: 1px solid #f5780f;
  background-color: #fefefe;
  margin: 0px auto 50px auto;
}
body#lp section article .lp_case-study_overview h3 {
  background-color: #f5780f;
  background-image: none;
  margin: 0px;
  text-align: center;
  padding-left: 0px;
  color: #FFF;
}
body#lp section article .lp_case-study_overview h3 span {
  margin-left: 20px;
  font-size: 14px;
}
body#lp section article .lp_case-study_overview div {
  padding: 20px;
}
body#lp section article .lp_case-study_overview div dl {
  border-bottom: 1px solid #f5780f;
  padding-bottom: 10px;
  margin-bottom: 10px;
  display: flex;
  justify-content: space-between;
}
body#lp section article .lp_case-study_overview div dl dt {
  width: 150px;
  display: inline-block;
  vertical-align: top;
  font-weight: bold;
}
body#lp section article .lp_case-study_overview div dl dd {
  width: calc(100% - 160px);
}
body#lp section article .lp_case-study_overview div dl dd ul {
  margin-bottom: 5px;
  padding-left: 15px;
}
body#lp section article .lp_case-study_overview div dl dd ul li {
  list-style-type: disc;
}
body#lp section article .lp_case-study_overview div dl dd p {
  margin-bottom: 5px;
}
body#lp section article .lp_case-study_overview div dl dd :last-child {
  margin-bottom: 0px;
}
body#lp section article .lp_case-study_overview div dl:last-of-type {
  border-bottom: none;
  padding-bottom: 0px;
  margin-bottom: 0px;
}
body#lp section article .lp_case-study_lead {
  max-width: 1000px;
  margin: 0px auto 50px auto;
}
body#lp section article .lp_case-study_content {
  max-width: 1000px;
  margin: 0px auto 50px auto;
}
body#lp section article .lp_case-study_content h3 {
  background-image: none;
  padding-left: 0px;
  font-size: 30px;
}
body#lp section article .lp_case-study_content picture {
  text-align: center;
  margin: 30px 0px;
  width: 100%;
}
body#lp section article .lp_case-study_content picture img {
  width: 100%;
}
body#lp section article .lp_case-study_content picture img.border {
  border: 1px solid #999999;
}
body#lp section article .lp_case-study_content picture img.reference {
  max-width: 780px;
  width: 100%;
}
body#lp section article .lp_case-study_content picture.double {
  display: flex;
  justify-content: space-between;
}
body#lp section article .lp_case-study_content picture.double img {
  width: 48%;
}
body#lp section article .lp_case-study_content dl.host {
  margin-bottom: 30px;
}
body#lp section article .lp_case-study_content dl.host dt {
  width: 100px;
  height: 10px;
  display: inline-block;
  vertical-align: top;
  padding-right: 5px;
}
body#lp section article .lp_case-study_content dl.host dt:before {
  content: "";
  display: block;
  width: 100%;
  height: 16px;
  border-bottom: 1px solid #000;
}
body#lp section article .lp_case-study_content dl.host dd {
  width: calc(100% - 105px);
  display: inline-block;
  font-size: 20px;
}
body#lp section article .lp_case-study_content dl.heroz {
  margin-bottom: 30px;
}
body#lp section article .lp_case-study_content dl.heroz dt {
  width: 100px;
  height: 10px;
  display: inline-block;
  vertical-align: top;
  padding-right: 5px;
  text-align: right;
  color: #f5780f;
  font-family: herozMedium;
}
body#lp section article .lp_case-study_content dl.heroz dd {
  width: calc(100% - 105px);
  display: inline-block;
  font-size: 14px;
}
body#lp section article .lp_case-study_content dl.client {
  margin-bottom: 30px;
}
body#lp section article .lp_case-study_content dl.client dt {
  width: 100px;
  height: 10px;
  display: inline-block;
  vertical-align: top;
  padding-right: 5px;
  text-align: right;
  font-family: herozMedium;
}
body#lp section article .lp_case-study_content dl.client dd {
  width: calc(100% - 105px);
  display: inline-block;
  font-size: 14px;
}
body#lp section article .lp_case-study_request-form {
  background-image: url("./assets/image/lp/top/bg-cta.png");
  background-repeat: no-repeat;
  background-size: cover;
  margin-top: 50px;
}
body#lp section article .lp_case-study_request-form dl {
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
body#lp section article .lp_case-study_request-form dl dt {
  width: 45%;
}
body#lp section article .lp_case-study_request-form dl dd {
  width: 55%;
  text-align: center;
  padding: 100px 30px 50px 30px;
}
body#lp section article .lp_case-study_request-form dl dd p {
  font-size: 40px;
  line-height: 55px;
  margin-bottom: 30px;
}
body#lp section article .lp_case-study_request-form dl dd p span {
  color: #f5780f;
}
body#lp section article .lp_case-study_request-form dl dd ul li {
  width: 100%;
}
body#lp section article .lp_case-study_request-form dl dd ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  border-radius: 4px;
  color: #FFF;
  padding: 20px 0px;
  font-size: 25px;
  background-position: right center;
  background-size: 200% auto;
  position: relative;
  overflow: hidden;
  text-decoration: none;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
body#lp section article .lp_case-study_request-form dl dd ul li a:hover {
  background-position: left center;
  opacity: 0.7;
}
body#lp section article .lp_case-study_request-form dl dd ul li a:before {
  aspect-ratio: 19/25;
  height: auto;
  width: min(1.7584635417vw, 30.9138px, 27.01px);
  left: min(3.90625vw, 60px);
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  max-width: 23.844px;
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 2;
  background-repeat: no-repeat;
  background-size: contain;
}
body#lp section article .lp_case-study_request-form dl dd ul li a span {
  font-size: 15px;
}
body#lp section article .lp_case-study_request-form dl dd ul li:first-of-type {
  margin-bottom: 20px;
}
body#lp section article .lp_case-study_request-form dl dd ul li:first-of-type a {
  background: -webkit-gradient(linear, left top, right top, color-stop(0, #3E4858), color-stop(51%, #727b80), to(#798498));
  background: linear-gradient(90deg, #3E4858 0, #727b80 51%, #798498 100%);
}
body#lp section article .lp_case-study_request-form dl dd ul li:first-of-type a:before {
  background-image: url("./assets/image/lp/common/icon-doc.svg");
}
body#lp section article .lp_case-study_request-form dl dd ul li:last-of-type a {
  background: -webkit-gradient(linear, left top, right top, color-stop(0, #f87700), color-stop(51%, #f59e00), to(#f87700));
  background: linear-gradient(90deg, #f87700 0, #f59e00 51%, #f87700 100%);
}
body#lp section article .lp_case-study_request-form dl dd ul li:last-of-type a:before {
  background-image: url("./assets/image/lp/common/icon-email.svg");
}

@media (min-width: 841px) and (max-width: 1240px) {
  body#lp section {
    padding: 0px 0px !important;
  }
}
@media (max-width: 840px) {
  body#lp section {
    padding: 0px 0px !important;
  }
  body#lp section article {
    padding: 0px 0px !important;
  }
  body#lp section article .lp_technology {
    padding: 20px 0px 50px 0px;
  }
  body#lp section article .lp_strength {
    text-align: center;
    padding: 20px 0px 50px 0px;
  }
  body#lp section article .lp_strength .lp_strength-inner dl {
    width: 100%;
    display: block !important;
  }
  body#lp section article .lp_strength .lp_strength-inner dl dt, body#lp section article .lp_strength .lp_strength-inner dl dd {
    width: 100% !important;
  }
  body#lp section article .lp_strength .lp_strength-inner dl dt img {
    width: 100%;
  }
  body#lp section article .lp_strength .lp_strength-inner dl dd {
    padding: 10px 20px;
    margin-top: 20px;
  }
  body#lp section article .lp_strength .lp_strength-inner dl dd h3 {
    font-size: 29px;
    line-height: 38px;
    background: none;
    padding-left: 0px !important;
    margin: 10px 0px !important;
  }
  body#lp section article .lp_strength .lp_strength-inner dl dd aside {
    position: absolute !important;
    left: 50% !important;
    transform: translate(-50%, -55px) !important;
  }
  body#lp section article .lp_strength .lp_strength-inner dl dd p {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    color: #707070;
    line-height: 2.2;
    font-size: 12px;
    text-align: left;
  }
  body#lp section article .lp_strength .lp_strength-inner dl dd p span {
    border-bottom: 2px solid #f5780f;
  }
  body#lp section article .lp_strength .lp_strength-inner div a {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    background-color: #f6770f;
    background-image: -webkit-gradient(linear, left top, right top, from(#f6770f), color-stop(#f6bd0f), to(#f6770f));
    background-image: -webkit-linear-gradient(left, #f6770f, #f6bd0f, #f6770f);
    background-image: linear-gradient(to right, #f6770f, #f6bd0f, #f6770f);
    background-size: 200% 100%;
    background-repeat: repeat;
    -webkit-animation: gradient 8s linear 0s infinite;
    animation: gradient 8s linear 0s infinite;
    padding: 12px 20px;
    font-size: 14px;
    color: #ffffff;
    text-decoration: none;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
  }
  body#lp section article .lp_strength .lp_strength-inner div a > span {
    position: relative;
    top: -3px;
    width: 20px;
    height: 5px;
    margin-left: 10px;
  }
  body#lp section article .lp_strength .lp_strength-inner div a > span svg {
    fill: currentColor;
    vertical-align: middle;
  }
  body#lp section article .lp_strength .lp_strength-inner div a > span svg:not(:root) {
    overflow: hidden;
  }
  body#lp section article .lp_strength .lp_strength-inner div a:hover {
    opacity: 0.8;
  }
  body#lp section article .lp_case-study ul {
    display: block;
    width: 100%;
    padding: 0px 10px;
    box-sizing: border-box;
  }
  body#lp section article .lp_case-study ul li {
    width: 100%;
    background-color: #FFF;
    position: relative;
    display: inline-block;
    margin: 0px 0px 15px 0px;
    vertical-align: top;
    height: auto;
    padding: 0px;
    min-height: 110px;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.3);
    transition: transform 0.3s;
  }
  body#lp section article .lp_case-study ul li a {
    display: block;
    width: 100%;
    height: 100%;
    padding-left: 140px;
  }
  body#lp section article .lp_case-study ul li a picture {
    display: none;
  }
  body#lp section article .lp_case-study ul li a span {
    padding: 0px 7px;
    top: 15px;
    left: 150px;
    font-size: 11px;
    line-height: 18px;
  }
  body#lp section article .lp_case-study ul li a p {
    padding: 40px 10px 10px 10px;
  }
  body#lp section article .lp_case-study ul li a aside {
    position: absolute;
    width: 125px;
    height: 50px;
    left: 10px;
    top: 50%;
    text-align: center;
    transform: translateY(-50%);
  }
  body#lp section article .lp_flow ul {
    display: block;
  }
  body#lp section article .lp_flow ul li {
    width: 100%;
  }
  body#lp section article .lp_flow ul li:nth-of-type(1) {
    width: 100%;
    text-align: center;
    padding: 0px 0px 20px 0px;
  }
  body#lp section article .lp_flow ul li:nth-of-type(1) h2 {
    text-align: center;
    margin: 0px 0px 10px 0px;
  }
  body#lp section article .lp_flow ul li:nth-of-type(2) {
    width: 100%;
    padding: 10px;
  }
  body#lp section article .lp_flow ul li:nth-of-type(2) dl {
    margin-bottom: 10px;
    padding: 10px 10px 10px 30px;
  }
  body#lp section article .lp_flow ul li:nth-of-type(2) dl dt {
    width: 100%;
    padding: 0px;
  }
  body#lp section article .lp_flow ul li:nth-of-type(2) dl dd {
    width: 100%;
    padding: 0px 10px 0px 70px;
  }
  body#lp section article .lp_form ul {
    display: block;
  }
  body#lp section article .lp_form ul li {
    width: 100%;
  }
  body#lp section article .lp_form ul li:nth-of-type(1) {
    width: 100%;
    text-align: center;
    padding: 0px 0px 20px 0px;
  }
  body#lp section article .lp_form ul li:nth-of-type(1) h3 {
    text-align: center;
    margin: 0px 0px 10px 0px;
  }
  body#lp section article .lp_form ul li:nth-of-type(1) picture {
    display: none;
  }
  body#lp section article .lp_form ul li:nth-of-type(2) {
    width: 100%;
    padding: 10px;
  }
  body#lp section article .lp_form ul li:nth-of-type(2) form #cf7-form-wrapper dl {
    margin-bottom: 10px;
    padding: 0px 20px;
    display: block;
  }
  body#lp section article .lp_form ul li:nth-of-type(2) form #cf7-form-wrapper dl dt {
    width: 100%;
    padding: 10px 10px 0px 10px;
  }
  body#lp section article .lp_form ul li:nth-of-type(2) form #cf7-form-wrapper dl dt p {
    font-size: 15px;
    line-height: 30px;
  }
  body#lp section article .lp_form ul li:nth-of-type(2) form #cf7-form-wrapper dl dd {
    width: 100%;
    padding: 0px;
  }
  body#lp section article .lp_form ul li:nth-of-type(2) form #cf7-form-wrapper .lp_form-privacy {
    margin-top: 20px;
  }
  body#lp section article .lp_case-study_header {
    padding: 10px 10px;
  }
  body#lp section article .lp_case-study_header p {
    font-size: 30px;
    line-height: 35px;
  }
  body#lp section article .lp_case-study_header p span {
    font-size: 15px;
  }
  body#lp section article .lp_case-study_eyecatch {
    margin: 10px 0px;
  }
  body#lp section article .lp_case-study_eyecatch aside {
    display: block;
    text-align: center;
  }
  body#lp section article .lp_case-study_overview {
    max-width: 100%;
    margin: 0px 10px 20px 10px;
  }
  body#lp section article .lp_case-study_overview h3 {
    margin: 0px;
  }
  body#lp section article .lp_case-study_overview div dl {
    display: block;
  }
  body#lp section article .lp_case-study_overview div dl dt {
    width: 100%;
    font-size: 15px;
    margin-bottom: 5px;
  }
  body#lp section article .lp_case-study_overview div dl dd {
    width: 100%;
  }
  body#lp section article .lp_case-study_lead {
    max-width: 100%;
    margin: 0px auto 20px auto;
    padding: 10px;
  }
  body#lp section article .lp_case-study_content h3 {
    font-size: 20px;
    line-height: 30px;
    padding: 10px;
  }
  body#lp section article .lp_case-study_content dl.host {
    margin-bottom: 15px;
  }
  body#lp section article .lp_case-study_content dl.host dd {
    font-size: 18px;
    padding-right: 10px;
  }
  body#lp section article .lp_case-study_content dl.client {
    margin-bottom: 15px;
  }
  body#lp section article .lp_case-study_content dl.client dd {
    padding-right: 10px;
  }
  body#lp section article .lp_case-study_content picture {
    margin: 10px 0px;
  }
  body#lp section article .lp_case-study_content picture img {
    border: none;
  }
  body#lp section article .lp_case-study_request-form dl {
    display: block;
  }
  body#lp section article .lp_case-study_request-form dl dt {
    display: none;
  }
  body#lp section article .lp_case-study_request-form dl dd {
    width: 100%;
    padding: 10px 30px 50px 30px;
  }
  body#lp section article .lp_case-study_request-form dl dd ul li a:before {
    display: none;
  }
}
body#ir section article {
  padding: 50px 0px;
}
body#ir section article .ir_list {
  padding: 20px 30px;
}
body#ir section article .ir_list li {
  border-bottom: 1px solid #ddd;
}
body#ir section article .ir_list li a {
  text-decoration: none;
  font-weight: normal;
  font-size: 13px;
  color: #333;
  display: block;
  line-height: 3;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
body#ir section article .ir_list li a date {
  display: inline-block;
  margin-right: 20px;
}
body#ir section article .ir_list li a:hover {
  opacity: 0.6;
}
body#ir section article .ir_card_box {
  border: solid 1px #e1e1e1;
  font-size: 0;
  margin-bottom: 50px;
}
body#ir section article .ir_card_box dt {
  width: 700px;
  vertical-align: top;
  display: inline-block;
}
body#ir section article .ir_card_box dd {
  width: calc(100% - 702px);
  display: inline-block;
  padding-left: 20px;
  box-sizing: border-box;
}
body#ir section article .ir_card_box dd h3 {
  border: none;
  padding: 0;
  text-indent: 0;
  background: none;
  font-size: 30px;
}
body#ir section article .ir_card_box dd p {
  font-size: 15px;
}
body#ir section article .ir_cards_box {
  font-size: 0;
  padding: 0;
  display: flex;
  justify-content: space-between;
}
body#ir section article .ir_cards_box li {
  border: solid 1px #e1e1e1;
  width: 48%;
  display: inline-block;
  vertical-align: top;
  min-height: 245px;
  justify-content: space-between;
  padding: 0px 20px;
  box-sizing: border-box;
}
body#ir section article .ir_cards_box li h3 {
  border: none;
  padding: 0;
  text-indent: 0;
  background: none;
  font-size: 30px;
}
body#ir section article .ir_cards_box li p {
  font-size: 15px;
}
body#ir section article .ir_cards_box li:last-of-type {
  margin-left: calc(4% - 6px);
}
body#ir section article .ir_analyst_table {
  margin: 30px 0px;
}
body#ir section article .ir_analyst_table table {
  border-style: solid;
  border-color: #FFFFFF;
  border-top-width: 1px;
  border-left-width: 1px;
  border-right-width: 0px;
  border-bottom-width: 0px;
  border-collapse: collapse;
  min-width: 50%;
}
body#ir section article .ir_analyst_table table th, body#ir section article .ir_analyst_table table td {
  border-style: solid;
  border-color: #FFFFFF;
  border-top-width: 0;
  border-left-width: 0;
  border-right-width: 1px;
  border-bottom-width: 1px;
  padding: 10px 20px;
  vertical-align: middle;
  font-size: 12px;
}
body#ir section article .ir_analyst_table table th {
  background-color: #f6770f;
  color: #FFFFFF;
  text-align: center;
  font-weight: normal;
  white-space: nowrap;
}
body#ir section article .ir_analyst_table table tr {
  background-color: #F9F9F9;
}
body#ir section article .ir_analyst_table table tr:nth-child(even) {
  background-color: #EEEEEE;
}
body#ir section article .ir_analyst_table table .bindcolor {
  background-color: #f6770f;
  color: #FFFFFF;
}
body#ir section article .ir_analyst_table .qirTableContainer {
  clear: both;
}
body#ir section article .ir_analyst_table .current {
  background-color: #FAFAFA;
}
body#ir section article .ir_stock_point table {
  border-style: solid;
  border-color: #FFFFFF;
  border-top-width: 1px;
  border-left-width: 1px;
  border-right-width: 0px;
  border-bottom-width: 0px;
  border-collapse: collapse;
}
body#ir section article .ir_stock_point table th, body#ir section article .ir_stock_point table td {
  border-style: solid;
  border-color: #FFFFFF;
  border-top-width: 0;
  border-left-width: 0;
  border-right-width: 1px;
  border-bottom-width: 1px;
  padding: 1px;
  vertical-align: middle;
  font-size: 12px;
}
body#ir section article .ir_stock_point table th {
  background-color: #EEE;
  padding: 1px;
  text-align: center;
  font-weight: normal;
  white-space: nowrap;
}
body#ir section article .ir_stock_point table td {
  text-align: right;
  padding-right: 1px;
}
body#ir section article .ir_stock_point table tr:nth-child(even) {
  background-color: #EEEEEE;
}
body#ir section article .ir_stock_point table .bindcolor {
  background-color: #f6770f;
  color: #FFFFFF;
}
body#ir section article .ir_stock_point .qirTableContainer {
  clear: both;
}
body#ir section article .ir_stock_point .current {
  background-color: #FAFAFA;
}
body#ir section article .eir {
  margin-top: -50px;
}
body#ir section article .eir .eirItem a {
  font-family: herozLight;
  font-size: 13px;
  width: 100%;
  text-decoration: none;
  line-height: 1.75;
  display: block;
  color: #4c4c4c;
  position: relative;
  border-bottom: 1px solid #efefef;
  padding: 7px 0px;
}
body#ir section article .eir .eirItem a:hover {
  opacity: 0.6;
}
body#ir section article .eir .eirItem a .p-archive-list__inner {
  position: relative;
  padding: 10px 10px 10px 220px;
  text-align: left;
}
body#ir section article .eir .eirItem a .p-archive-list__inner .eirItem_date {
  font-size: 15px;
  width: 120px;
  color: #4c4c4c;
  display: inline-block;
  position: absolute;
  left: 0px;
  top: 50%;
  transform: translate(0, -50%);
}
body#ir section article .eir .eirItem a .p-archive-list__inner .eirItem_category {
  font-size: 10px;
  color: #ffffff;
  padding: 0 4px 1px;
  width: 100px;
  text-align: center;
  display: inline-block;
  position: absolute;
  left: 110px;
  top: 50%;
  transform: translate(0, -50%);
}
body#ir section article .eir .eirItem a .p-archive-list__inner .eirItem_category p {
  background-color: #666666;
}
body#ir section article .eir .eirItem a .p-archive-list__inner .eirItem_title {
  display: inline-block;
  text-align: left;
}
body#ir section article .eir .eirItem a .p-archive-list__inner .eirItem_type {
  position: absolute;
  right: 150px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
body#ir section article .eir .eirItem a .p-archive-list__inner .eirItem_size {
  position: absolute;
  right: 65px;
}
body#ir section article .eir .eirItem a .p-archive-list__inner .eirItem_new {
  position: absolute;
  right: 5px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
body#ir section article .eir .eir_pdfNote_item {
  font-size: 14px;
  line-height: 21px;
}

@media (max-width: 840px) {
  body#ir section article .eir {
    margin-top: 0px !important;
  }
  body#ir section article .eir .eirItem a:hover {
    opacity: 0.6;
  }
  body#ir section article .eir .eirItem a .p-archive-list__inner {
    padding: 35px 62px 0px 0px !important;
  }
  body#ir section article .eir .eirItem a .p-archive-list__inner .eirItem_date {
    top: 20px !important;
  }
  body#ir section article .eir .eirItem a .p-archive-list__inner .eirItem_category {
    left: 90px !important;
    top: 20px !important;
  }
  body#ir section article .eir .eirItem a .p-archive-list__inner .eirItem_category p {
    background-color: #666666;
  }
  body#ir section article .eir .eirItem a .p-archive-list__inner .eirItem_title {
    line-height: 18px;
  }
  body#ir section article .eir .eirItem a .p-archive-list__inner .eirItem_type {
    right: 150px !important;
    top: 20px !important;
  }
  body#ir section article .eir .eirItem a .p-archive-list__inner .eirItem_size {
    right: 65px !important;
    top: 13px !important;
    height: 20px !important;
    line-height: 16px !important;
  }
  body#ir section article .eir .eir_pdfNote_item {
    font-size: 14px;
    line-height: 21px;
  }
  body#ir section article .ir_card_box {
    margin: 10px 0px 0px 0px !important;
  }
  body#ir section article .ir_card_box dt {
    width: 100% !important;
  }
  body#ir section article .ir_card_box dd {
    width: 100% !important;
    padding: 10px !important;
  }
  body#ir section article .ir_card_box dd h3 {
    margin: 0px 0px 10px 0px !important;
  }
  body#ir section article .ir_cards_box {
    display: block !important;
  }
  body#ir section article .ir_cards_box li {
    width: 100% !important;
    margin: 10px 0px 0px 0px !important;
    padding: 10px !important;
    min-height: 100px !important;
  }
  body#ir section article .ir_cards_box li h3 {
    margin: 0px 0px 10px 0px !important;
  }
}
body#recruit section article {
  text-align: center;
  overflow: hidden;
  position: relative;
  font-size: 0;
}
body#recruit section article .recruit_top {
  position: relative;
}
body#recruit section article .recruit_top .top_bg img {
  max-width: 100%;
  object-fit: cover;
  min-height: 600px;
}
body#recruit section article .recruit_top .text_box {
  position: absolute;
  bottom: 48px;
  max-width: 1000px;
  margin: 0 auto;
  left: calc((100% - 1000px) / 2);
}
body#recruit section article .recruit_top .text_box .text_01 img,
body#recruit section article .recruit_top .text_box .text_02 img {
  max-width: 100%;
}
body#recruit section article .recruit_top .text_box .text_01 {
  margin-bottom: 6vw;
}
body#recruit section article .recruit_top .text_box .text_01 img {
  height: 331.5px;
}
body#recruit section article .recruit_top .text_box .text_02 img {
  height: 70px;
}
body#recruit section article .recruit_top_message {
  font-size: 15px;
  max-width: 940px;
  margin: 0 auto;
  text-align: center;
}
body#recruit section article .recruit_top_message .message_title {
  text-align: center;
  color: #E3731E;
  font-size: 25px;
  font-family: "Century Gothic", sans-serif;
  margin: 15px 0 10px;
}
body#recruit section article .recruit_top_message p {
  font-size: 16px;
  font-weight: bold;
  text-align: justify;
}
body#recruit section article .recruit_top_message dl {
  display: inline-block;
  text-align: center;
}
body#recruit section article .recruit_top_message dl dt {
  font-weight: normal;
  margin-top: 10px;
  text-align: center;
}
body#recruit section article .recruit_top_message dl dd {
  border-top: 1px solid #3E3A39;
  display: inline-block;
  font-family: YuMincho, "Yu Mincho", serif;
  margin-bottom: 20px;
  text-align: center;
}
body#recruit section article .recruit_top_about,
body#recruit section article .recruit_top_culture,
body#recruit section article .recruit_top_job {
  position: relative;
  font-size: 15px;
}
body#recruit section article .recruit_top_about .about_bg,
body#recruit section article .recruit_top_about .culture_bg,
body#recruit section article .recruit_top_about .job_bg,
body#recruit section article .recruit_top_culture .about_bg,
body#recruit section article .recruit_top_culture .culture_bg,
body#recruit section article .recruit_top_culture .job_bg,
body#recruit section article .recruit_top_job .about_bg,
body#recruit section article .recruit_top_job .culture_bg,
body#recruit section article .recruit_top_job .job_bg {
  font-size: 0;
}
body#recruit section article .recruit_top_about .about_bg img,
body#recruit section article .recruit_top_about .culture_bg img,
body#recruit section article .recruit_top_about .job_bg img,
body#recruit section article .recruit_top_culture .about_bg img,
body#recruit section article .recruit_top_culture .culture_bg img,
body#recruit section article .recruit_top_culture .job_bg img,
body#recruit section article .recruit_top_job .about_bg img,
body#recruit section article .recruit_top_job .culture_bg img,
body#recruit section article .recruit_top_job .job_bg img {
  object-fit: cover;
  height: 540px;
  width: 100%;
}
body#recruit section article .recruit_top_about .text_box,
body#recruit section article .recruit_top_culture .text_box,
body#recruit section article .recruit_top_job .text_box {
  position: absolute;
  top: 0px;
  height: 100%;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  color: #fff;
  width: 100%;
  text-align: center;
}
body#recruit section article .recruit_top_about .text_box .text_title,
body#recruit section article .recruit_top_culture .text_box .text_title,
body#recruit section article .recruit_top_job .text_box .text_title {
  font-size: 60px;
  font-family: "Century Gothic", sans-serif;
  opacity: 0.8;
  line-height: 1;
  margin-top: 60px;
  margin-bottom: 15px;
}
body#recruit section article .recruit_top_about .text_box .text_subtitle,
body#recruit section article .recruit_top_culture .text_box .text_subtitle,
body#recruit section article .recruit_top_job .text_box .text_subtitle {
  font-size: 30px;
  line-height: 1;
}
body#recruit section article .recruit_top_about .text_box .link_box,
body#recruit section article .recruit_top_culture .text_box .link_box,
body#recruit section article .recruit_top_job .text_box .link_box {
  position: absolute;
  bottom: 50px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  width: 100%;
}
body#recruit section article .recruit_top_about .text_box .link_box a,
body#recruit section article .recruit_top_culture .text_box .link_box a,
body#recruit section article .recruit_top_job .text_box .link_box a {
  background: #fff;
  border-radius: 20px;
  min-width: 275px;
  padding: 0 20px;
  box-sizing: border-box;
  height: 38px;
  display: inline-block;
  align-items: center;
  justify-content: center;
  text-align: center;
  margin: 0 10px 20px 10px;
  color: #3E3A39;
  font-size: 18px;
  line-height: 38px;
  text-decoration: none;
}
body#recruit section article .recruit_about_head {
  margin: 0;
  width: 100%;
  height: 210px;
  line-height: 210px;
  background-color: #3F3B3A;
  color: #A6A6A7;
  font-size: 85px;
  font-family: "Century Gothic", sans-serif;
  font-weight: bold;
}
body#recruit section article .recruit_about_head p {
  margin: 0;
}
body#recruit section article .recruit_about_head:after {
  content: "";
  background: url(assets/image/recruit/about_geometry_01.png) center;
  width: 100%;
  height: 1106.5px;
  background-size: auto 1106.5px;
  top: -385px;
  display: block;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}
body#recruit section article .recruit_about_vision {
  max-width: 1040px;
  display: inline-block;
  font-size: 15px;
  text-align: left;
}
body#recruit section article .recruit_about_vision .txt_box {
  padding-top: 50px;
}
body#recruit section article .recruit_about_vision .img_box {
  display: flex;
  margin-top: 30px;
  justify-content: space-between;
  z-index: 1;
  position: relative;
}
body#recruit section article .recruit_about_vision .img_box picture {
  vertical-align: top;
}
body#recruit section article .recruit_about_vision .img_box picture img {
  height: auto;
  max-height: 371.5px;
}
body#recruit section article .recruit_about_vision img {
  max-width: 100%;
}
body#recruit section article .recruit_about_vision h3 {
  font-size: 45px;
  font-family: YuMincho, "Yu Mincho", serif;
  color: #F9770F;
  line-height: 1;
  margin: 20px 0px 20px 0px;
  background: none;
  text-indent: 0;
  font-weight: 600;
  padding: 0px;
}
body#recruit section article .recruit_about_vision h4 {
  padding-left: 0;
  border-left: none;
  font-size: 35px;
  line-height: 1;
  font-weight: 600;
  margin: 0;
}
body#recruit section article .recruit_about_philosophy {
  background-color: #F0EFF0;
  overflow: hidden;
  position: relative;
  text-align: center;
  font-size: 15px;
}
body#recruit section article .recruit_about_philosophy .inner {
  max-width: 1040px;
  display: inline-block;
  text-align: left;
}
body#recruit section article .recruit_about_philosophy .inner h2 {
  font-size: 45px;
  padding: 40px 0 0 0;
  margin: 0;
  letter-spacing: 1px;
  font-weight: 600;
  text-align: left;
  color: #333;
}
body#recruit section article .recruit_about_philosophy .inner .txt_box h3 {
  font-size: 30px;
  position: relative;
  margin-bottom: 10px;
  font-weight: 600;
  border: none;
  text-indent: 0;
  background: none;
}
body#recruit section article .recruit_about_philosophy .inner .txt_box h3:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  background: #3E3A39;
  top: 22px;
  left: -100.5%;
  padding-left: 2px;
}
body#recruit section article .recruit_about_philosophy .inner .txt_box dl {
  font-size: 0;
}
body#recruit section article .recruit_about_philosophy .inner .txt_box dl dt {
  color: #F9770F;
  font-size: 50px;
  font-weight: bold;
  margin-right: 20px;
  min-width: 260px;
  text-align: right;
  font-family: "Century Gothic", sans-serif;
  line-height: 1;
  display: inline-block;
  vertical-align: top;
}
body#recruit section article .recruit_about_philosophy .inner .txt_box dl dd {
  width: calc(100% - 285px);
  display: inline-block;
  font-size: 18px;
}
body#recruit section article .recruit_about_philosophy .inner .txt_box dl dd h4 {
  font-family: YuMincho, "Yu Mincho", serif;
  margin: 9px 0 0 0;
  font-size: 35px;
  font-weight: 600;
}
body#recruit section article .recruit_about_philosophy .inner .txt_box dl dd p {
  margin: 10px 0px;
}
body#recruit section article .recruit_about_philosophy:after {
  content: "";
  background: url(assets/image/recruit/about_geometry_04.png) center;
  width: 100%;
  height: 1106.5px;
  background-size: auto 1106.5px;
  position: absolute;
  bottom: 0;
  display: block;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}
body#recruit section article .recruit_culture_head {
  width: 100%;
  margin: 0 auto;
  position: relative;
  color: #fff;
  font-size: 0;
  display: inline-block;
}
body#recruit section article .recruit_culture_head .txt_box {
  position: absolute;
  top: 50%;
  margin: 0 auto;
  left: 0;
  right: 0;
  font-size: 1.8rem;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
body#recruit section article .recruit_culture_head .txt_box h2 {
  text-align: center;
  font-size: 85px !important;
  font-family: "Century Gothic", sans-serif;
  line-height: 1;
  margin-bottom: 90px;
  opacity: 0.75;
  color: #FFF !important;
}
body#recruit section article .recruit_culture_head .txt_box p {
  text-align: justify;
  font-size: 17px;
  max-width: 470px;
  margin: 0 auto;
  line-height: 28px;
}
body#recruit section article .recruit_culture_head picture img {
  max-width: 100%;
  min-height: 432.5px;
  object-fit: cover;
}
body#recruit section article .recruit_culture_work {
  text-align: center;
}
body#recruit section article .recruit_culture_work h3 {
  font-size: 27px;
  text-align: center;
  background: #F0F0F0;
  height: 66px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 0;
}
body#recruit section article .recruit_culture_work .inner {
  width: 100%;
  max-width: 1200px;
  display: inline-block;
  padding-bottom: 50px;
}
body#recruit section article .recruit_culture_work ul {
  display: inline-block;
  font-size: 0;
  text-align: center;
}
body#recruit section article .recruit_culture_work ul li {
  max-width: 48%;
  text-align: center;
  margin-top: 35px;
  display: inline-block;
  vertical-align: top;
}
body#recruit section article .recruit_culture_work ul li picture {
  box-sizing: inherit;
}
body#recruit section article .recruit_culture_work ul li picture img {
  width: 100%;
  max-width: 100%;
  border: 0;
  vertical-align: top;
}
body#recruit section article .recruit_culture_work ul li h4 {
  font-family: herozLight;
  border-left: none;
  margin-top: 0;
  font-size: 22px;
  line-height: 1;
  font-weight: normal;
  margin-bottom: 0;
  margin-top: 10px;
  padding-left: 0px;
}
body#recruit section article .recruit_culture_work ul li p {
  margin-top: 10px;
  line-height: 1.2;
  font-size: 16px;
}
body#recruit section article .recruit_culture_work ul li:nth-of-type(odd) {
  margin-right: 1%;
}
body#recruit section article .recruit_culture_work ul li:nth-of-type(even) {
  margin-left: 1%;
}
body#recruit section article .recruit_culture_system {
  text-align: center;
}
body#recruit section article .recruit_culture_system .inner {
  width: 100%;
  max-width: 1200px;
  display: inline-block;
  padding-bottom: 50px;
}
body#recruit section article .recruit_culture_system h3 {
  font-size: 27px;
  text-align: center;
  background: #F0F0F0;
  height: 66px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 0;
}
body#recruit section article .recruit_culture_system ul {
  display: inline-block;
  font-size: 0;
  text-align: center;
}
body#recruit section article .recruit_culture_system ul li {
  width: 32%;
  text-align: center;
  margin-top: 30px;
  display: inline-block;
  vertical-align: top;
}
body#recruit section article .recruit_culture_system ul li picture {
  box-sizing: inherit;
}
body#recruit section article .recruit_culture_system ul li picture img {
  width: 100%;
  max-width: 100%;
  border: 0;
  vertical-align: top;
}
body#recruit section article .recruit_culture_system ul li h4 {
  font-family: herozLight;
  border-left: none;
  margin-top: 0;
  font-size: 22px;
  line-height: 1;
  font-weight: normal;
  margin-bottom: 0;
  margin-top: 10px;
  padding-left: 0px;
}
body#recruit section article .recruit_culture_system ul li p {
  margin-top: 10px;
  line-height: 1.2;
  font-size: 16px;
}
body#recruit section article .recruit_culture_system ul li:nth-of-type(2), body#recruit section article .recruit_culture_system ul li:nth-of-type(5), body#recruit section article .recruit_culture_system ul li:nth-of-type(8) {
  margin: 30px 1.5% 0 1.5%;
}
body#recruit section article .recruit_culture_tour {
  background: #424040;
  color: #fff;
  padding: 20px 0 50px;
}
body#recruit section article .recruit_culture_tour .inner {
  width: 100%;
  max-width: 1200px;
  display: inline-block;
  padding-bottom: 50px;
}
body#recruit section article .recruit_culture_tour h3 {
  font-size: 27px;
  background: none;
  text-align: center;
  font-family: "Century Gothic", sans-serif;
  letter-spacing: 5px;
  margin-bottom: 18px;
}
body#recruit section article .recruit_culture_tour ul {
  max-width: 1366px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: 10px;
}
body#recruit section article .recruit_culture_tour ul li {
  width: 31%;
  text-align: center;
  font-size: 1.4rem;
  margin-bottom: 5px;
}
body#recruit section article .recruit_culture_tour ul li picture {
  box-sizing: inherit;
}
body#recruit section article .recruit_culture_tour ul li picture img {
  width: 100%;
  max-width: 100%;
  border: 0;
  vertical-align: top;
}
body#recruit section article .recruit_culture_tour ul li p {
  line-height: 1.2;
  font-size: 16px;
  padding: 10px 0px 20px 0px;
}
body#recruit section article .recruit_entry {
  padding: 20px 0px;
}
body#recruit section article .recruit_entry p {
  text-align: center;
}
body#recruit section article .recruit_entry p a {
  width: 250px;
  max-width: 100%;
  display: inline-block;
  height: 35px;
  line-height: 35px;
  color: #fff;
  font-size: 23px;
  text-align: center;
  background: #009FE8;
  border-radius: 5px;
  margin: 0 30px;
  text-decoration: none;
}

@media (min-width: 841px) and (max-width: 1240px) {
  body#recruit {
    padding: 0px !important;
  }
}
@media (max-width: 840px) {
  body#recruit section {
    padding: 0px !important;
  }
  body#recruit section article .recruit_top .text_box {
    left: 0px !important;
  }
  body#recruit section article .recruit_top_message {
    padding: 10px !important;
  }
  body#recruit section article .recruit_about_vision .txt_box {
    padding-top: 20px !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
  body#recruit section article .recruit_about_vision .img_box {
    display: block !important;
  }
  body#recruit section article .recruit_about_philosophy h2 {
    font-size: 25px !important;
    padding: 10px 0 0 0 !important;
    text-align: center !important;
  }
  body#recruit section article .recruit_about_philosophy h3 {
    padding-left: 0px !important;
    margin-top: 30px !important;
  }
  body#recruit section article .recruit_about_philosophy h3:before {
    display: none !important;
  }
  body#recruit section article .recruit_about_philosophy .txt_box {
    padding: 0px 10px !important;
  }
  body#recruit section article .recruit_about_philosophy .txt_box dl {
    margin-top: 15px;
  }
  body#recruit section article .recruit_about_philosophy .txt_box dl dt {
    width: 100% !important;
    font-size: 20px !important;
    text-align: left !important;
  }
  body#recruit section article .recruit_about_philosophy .txt_box dl dd {
    width: 100% !important;
    font-size: 14px !important;
  }
  body#recruit section article .recruit_culture_head picture img {
    object-position: left;
  }
  body#recruit section article .recruit_culture_head .txt_box {
    width: 100% !important;
  }
  body#recruit section article .recruit_culture_work h3 {
    margin: 0px !important;
  }
  body#recruit section article .recruit_culture_work li {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0px !important;
  }
  body#recruit section article .recruit_culture_work li p {
    margin-bottom: 20px;
    font-size: 13px !important;
  }
  body#recruit section article .recruit_culture_system h3 {
    margin: 0px !important;
  }
  body#recruit section article .recruit_culture_system li {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0px !important;
  }
  body#recruit section article .recruit_culture_system li p {
    margin-bottom: 20px;
    font-size: 13px !important;
  }
  body#recruit section article .recruit_culture_tour {
    padding: 20px 0 0 0 !important;
  }
  body#recruit section article .recruit_culture_tour li {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0px !important;
  }
  body#recruit section article .recruit_culture_tour li p {
    margin-bottom: 20px;
    font-size: 13px !important;
    padding-top: 10px !important;
  }
}
body#contact section article .contact_form {
  padding: 20px 150px;
}
body#contact section article .contact_form .wpcf7 {
  font-size: 16px;
}
body#contact section article .contact_form .wpcf7 form div#cf7-form-wrapper dl {
  display: block;
  font-size: 0;
  box-sizing: border-box;
}
body#contact section article .contact_form .wpcf7 form div#cf7-form-wrapper dl dt {
  display: inline-block;
  width: 250px;
  padding: 10px;
  vertical-align: top;
  font-size: 14px;
  font-weight: bold;
  line-height: 41px;
}
body#contact section article .contact_form .wpcf7 form div#cf7-form-wrapper dl dd {
  display: inline-block;
  width: calc(100% - 252px);
  padding: 10px 0px 10px 45px;
  vertical-align: top;
  position: relative;
}
body#contact section article .contact_form .wpcf7 form div#cf7-form-wrapper dl dd input {
  width: 100%;
  border: solid 1px #e1e1e1;
  padding: 12px 8px;
}
body#contact section article .contact_form .wpcf7 form div#cf7-form-wrapper dl dd select {
  position: relative;
  width: 100%;
  border: solid 1px #e1e1e1;
  padding: 12px 8px;
}
body#contact section article .contact_form .wpcf7 form div#cf7-form-wrapper dl dd textarea {
  position: relative;
  width: 100%;
  border: solid 1px #e1e1e1;
  padding: 12px 8px;
}
body#contact section article .contact_form .wpcf7 form div#cf7-form-wrapper dl dd.required:after {
  content: "必須";
  position: absolute;
  top: 50%;
  left: 0px;
  transform: translate(0, -50%);
  display: inline-block;
  color: #f6770f;
  border: solid 1px;
  font-size: 12px;
  font-family: herozLight;
  line-height: 1;
  padding: 2px 4px;
}
body#contact section article .contact_form .wpcf7 form div#cf7-form-wrapper #terms {
  font-size: 14px;
  height: 150px;
  overflow-y: scroll;
  border-style: solid;
  border-width: 1px 1px 0px 1px;
  border-color: #ddd;
  padding: 10px;
}
body#contact section article .contact_form .wpcf7 form div#cf7-form-wrapper .teams_info {
  font-size: 13px;
  padding: 15px;
  border-style: solid;
  border-width: 0px 1px 1px 1px;
  border-color: #ddd;
  background-color: #eee;
  text-align: center;
}
body#contact section article .contact_form .wpcf7 form div#cf7-form-wrapper .teams_info #agree {
  background-color: #FFF;
  display: inline-block;
  border-radius: 30px;
  padding: 10px 20px 8px 25px;
  margin-top: 10px;
}
body#contact section article .contact_form .wpcf7 form div#cf7-form-wrapper .teams_info #agree .wpcf7-list-item {
  display: inline-block;
  margin: 0;
  line-height: 20px;
}
body#contact section article .contact_form .wpcf7 form div#cf7-form-wrapper .teams_info #agree .wpcf7-list-item .wpcf7-list-item-label {
  line-height: 20px;
  display: inline-block;
}
body#contact section article .contact_form .wpcf7 form div#cf7-form-wrapper .teams_info #agree .wpcf7-list-item input[type=checkbox] {
  width: 20px;
  height: 20px;
  vertical-align: sub;
  margin-right: 5px;
}
body#contact section article .contact_form .wpcf7 form div#cf7-form-wrapper .teams_info #agree .wpcf7-list-item input[type=checkbox]:disabled {
  cursor: not-allowed;
}
body#contact section article .contact_form .wpcf7 form div#cf7-form-wrapper .teams_info #agree .wpcf7-list-item:has(input[type=checkbox]:disabled) {
  opacity: 0.4;
  cursor: not-allowed;
}
body#contact section article .contact_form .wpcf7 form div#cf7-form-wrapper .contact_form-submit {
  text-align: center;
  padding: 30px 0px 20px 0px;
}
body#contact section article .contact_form .wpcf7 form div#cf7-form-wrapper .contact_form-submit button {
  cursor: pointer;
  background-color: #f6770f;
  background-image: -webkit-gradient(linear, left top, right top, from(#f6770f), color-stop(#f6bd0f), to(#f6770f));
  background-image: -webkit-linear-gradient(left, #f6770f, #f6bd0f, #f6770f);
  background-image: linear-gradient(to right, #f6770f, #f6bd0f, #f6770f);
  background-size: 200% 100%;
  background-repeat: repeat;
  -webkit-animation: gradient 8s linear 0s infinite;
  animation: gradient 8s linear 0s infinite;
  color: #ffffff;
  width: 250px;
  padding: 12px;
  border: none;
}
body#contact section article .contact_form .wpcf7 form div#cf7-form-wrapper .contact_form-submit button:disabled {
  cursor: not-allowed;
  background-color: #DDDDDD;
  background-image: -webkit-gradient(linear, left top, right top, from(#DDDDDD), color-stop(#DDDDDD), to(#DDDDDD));
  background-image: -webkit-linear-gradient(left, #DDDDDD, #DDDDDD, #DDDDDD);
  background-image: linear-gradient(to right, #DDDDDD, #DDDDDD, #DDDDDD);
}
body#contact section article .contact_form .wpcf7 form div#cf7-form-wrapper .contact_form-submit .wpcf7-spinner {
  display: none;
}
body#contact section article .contact_form .wpcf7 form div#cf7-confirm-wrapper > p {
  padding: 10px 0px;
  background-color: #DDD;
  text-align: center;
  border-radius: 5px 5px 0px 0px;
  margin-top: 50px;
}
body#contact section article .contact_form .wpcf7 form div#cf7-confirm-wrapper div.contact_form-confirm-inner {
  border: 1px solid #ddd;
  padding: 5px 5px 0px 5px;
}
body#contact section article .contact_form .wpcf7 form div#cf7-confirm-wrapper div.contact_form-confirm-inner dl {
  display: flex;
  font-size: 0;
  box-sizing: border-box;
  margin-bottom: 5px;
}
body#contact section article .contact_form .wpcf7 form div#cf7-confirm-wrapper div.contact_form-confirm-inner dl dt {
  display: inline-block;
  min-width: 160px;
  padding: 10px;
  vertical-align: top;
  font-size: 14px;
  font-weight: bold;
  background-color: #eeeeee;
}
body#contact section article .contact_form .wpcf7 form div#cf7-confirm-wrapper div.contact_form-confirm-inner dl dd {
  padding: 10px;
}
body#contact section article .contact_form .wpcf7 form div#cf7-confirm-wrapper div.contact_form-confirm-inner dl dd p {
  font-size: 14px;
}
body#contact section article .contact_form .wpcf7 form div#cf7-confirm-wrapper .contact_form-submit-confirm {
  padding: 30px 50px 30px 50px;
  text-align: center;
}
body#contact section article .contact_form .wpcf7 form div#cf7-confirm-wrapper .contact_form-submit-confirm button {
  margin: 0px 10px;
  background-color: #f6770f;
  background-image: -webkit-gradient(linear, left top, right top, from(#f6770f), color-stop(#f6bd0f), to(#f6770f));
  background-image: -webkit-linear-gradient(left, #f6770f, #f6bd0f, #f6770f);
  background-image: linear-gradient(to right, #f6770f, #f6bd0f, #f6770f);
  background-size: 200% 100%;
  background-repeat: repeat;
  -webkit-animation: gradient 8s linear 0s infinite;
  animation: gradient 8s linear 0s infinite;
  padding: 12px 20px;
  font-size: 14px;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  border: none;
  border-radius: 7px;
  margin-bottom: 10px;
}
body#contact section article .contact_form .wpcf7 form div#cf7-confirm-wrapper .contact_form-submit-confirm button#back-btn {
  background-color: #999;
  background-image: -webkit-gradient(linear, left top, right top, from(#999), color-stop(#999), to(#999));
  background-image: -webkit-linear-gradient(left, #999, #999, #999);
  background-image: linear-gradient(to right, #999, #999, #999);
}
body#contact section article .contact_form .wpcf7 form div#cf7-confirm-wrapper .contact_form-submit-confirm button:disabled {
  background-color: #DDDDDD;
  background-image: -webkit-gradient(linear, left top, right top, from(#DDDDDD), color-stop(#DDDDDD), to(#DDDDDD));
  background-image: -webkit-linear-gradient(left, #DDDDDD, #DDDDDD, #DDDDDD);
  background-image: linear-gradient(to right, #DDDDDD, #DDDDDD, #DDDDDD);
}
body#contact section article .contact_form .wpcf7 form div#cf7-confirm-wrapper .contact_form-submit-confirm input[type=submit] {
  background-color: #f6770f;
  background-image: -webkit-gradient(linear, left top, right top, from(#f6770f), color-stop(#f6bd0f), to(#f6770f));
  background-image: -webkit-linear-gradient(left, #f6770f, #f6bd0f, #f6770f);
  background-image: linear-gradient(to right, #f6770f, #f6bd0f, #f6770f);
  background-size: 200% 100%;
  background-repeat: repeat;
  -webkit-animation: gradient 8s linear 0s infinite;
  animation: gradient 8s linear 0s infinite;
  padding: 12px 30px;
  font-size: 14px;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  border: none;
  border-radius: 7px;
  margin-bottom: 10px;
}
body#contact section article .contact_form .wpcf7 form div#cf7-confirm-wrapper .contact_form-submit-confirm input[type=submit]:disabled {
  cursor: not-allowed;
  background-color: #DDDDDD;
  background-image: -webkit-gradient(linear, left top, right top, from(#DDDDDD), color-stop(#DDDDDD), to(#DDDDDD));
  background-image: -webkit-linear-gradient(left, #DDDDDD, #DDDDDD, #DDDDDD);
  background-image: linear-gradient(to right, #DDDDDD, #DDDDDD, #DDDDDD);
}
body#contact section article .contact_form .wpcf7 form div#cf7-confirm-wrapper .contact_form-submit-confirm .wpcf7-spinner {
  display: none;
}
body#contact section article .contact_form .wpcf7 form div#cf7-thankyou-wrapper {
  padding: 100px 10px;
  text-align: center;
}
body#contact section article .contact_form .wpcf7 form div#cf7-thankyou-wrapper p {
  padding: 20px 0px;
  border: 1px solid #DDD;
}
body#contact section article .contact_form .wpcf7 form div#cf7-thankyou-wrapper p a {
  background-color: #f6770f;
  background-image: -webkit-gradient(linear, left top, right top, from(#f6770f), color-stop(#f6bd0f), to(#f6770f));
  background-image: -webkit-linear-gradient(left, #f6770f, #f6bd0f, #f6770f);
  background-image: linear-gradient(to right, #f6770f, #f6bd0f, #f6770f);
  background-size: 200% 100%;
  background-repeat: repeat;
  -webkit-animation: gradient 8s linear 0s infinite;
  animation: gradient 8s linear 0s infinite;
  padding: 30px 20px;
  font-size: 20px;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  border: none;
  border-radius: 7px;
  display: inline-block;
  width: 100%;
}
body#other {
  padding: 64px 0px 0px 0px !important;
}
body#other section article .privacy {
  margin-top: 30px;
  font-size: 14px;
}
body#other section article .privacy p {
  margin-bottom: 20px;
}
body#other section article .privacy dl.privacy_policy {
  padding: 0px 20px;
  margin-bottom: 30px;
}
body#other section article .privacy dl.privacy_policy dt {
  width: 25px;
  vertical-align: top;
  display: inline-block;
  font-weight: bold;
}
body#other section article .privacy dl.privacy_policy dd {
  width: calc(100% - 30px);
  display: inline-block;
}
body#other section article .privacy hr {
  margin: 50px 0px;
}
body#other section article .privacy table tbody td {
  padding: 5px;
}
body#other section article .isms {
  margin-top: 30px;
  font-size: 14px;
}
body#other section article .isms p {
  margin-bottom: 30px;
}
body#other section article .guideline_game {
  padding: 20px 0px;
}

@media (max-width: 840px) {
  body#contact section article .contact_form {
    padding: 20px 0px !important;
  }
  body#contact section article .contact_form dl dt {
    width: 100% !important;
    line-height: 41px;
    padding: 0px !important;
  }
  body#contact section article .contact_form dl dd {
    width: 100% !important;
    padding: 0px 0px 0px 45px !important;
    margin-bottom: 20px;
  }
  body#contact section article .contact_form #terms {
    font-size: 14px;
  }
  body#contact section article .contact_form input[type=submit] {
    cursor: pointer;
    background-color: #f6770f;
    background-image: -webkit-gradient(linear, left top, right top, from(#f6770f), color-stop(#f6bd0f), to(#f6770f));
    background-image: -webkit-linear-gradient(left, #f6770f, #f6bd0f, #f6770f);
    background-image: linear-gradient(to right, #f6770f, #f6bd0f, #f6770f);
    background-size: 200% 100%;
    background-repeat: repeat;
    -webkit-animation: gradient 8s linear 0s infinite;
    animation: gradient 8s linear 0s infinite;
    color: #ffffff;
    width: 250px;
    padding: 12px;
    border: none;
  }
  body#contact section article .contact_form .wpcf7-spinner {
    display: none;
  }
}