/* #mainImg
================================================ */
#company #mainImg { background: url("../img/company/bg_cv01_sp.png") no-repeat top center/cover; margin-top: 0; padding-top: 50px; }

#company #mainImg .inner { position: static; }

#company #mainImg .inner:before { display: none; }

@media all and (min-width: 600px) { #company #mainImg { background: url("../img/company/bg_cv01_pc.png") no-repeat top center/cover; margin-top: 95px; padding-top: 0; }
  #company #mainImg .inner:before { display: none; } }

/* #lnav
================================================ */
#lnav .list { min-width: 600px; }

@media all and (min-width: 600px) { #lnav { /* .inner{ padding-top: 44px; } */ } }

/*  #policy
================================================== */
#policy { padding-top: 90px; margin-top: -45px; }

#policy .inner { padding-top: 45px; padding-bottom: 42px; position: relative; background: url("../img/company/bg_policy01_sp.png") no-repeat center bottom/cover; color: #fff; margin-top: -45px; }

#policy .head { margin-bottom: 19px; }

#policy .leadTxt { margin-bottom: 13px; font-size: 1.7rem; line-height: 1.5; font-weight: 700; text-align: center; letter-spacing: .08em; }

@media all and (min-width: 600px) { #policy { margin-top: 0px; background: url("../img/company/bg_policy01_pc.png") no-repeat center bottom/cover; }
  #policy .inner { padding: 110px 40px 117px; background: none; }
  #policy .head { margin-bottom: 24px; }
  #policy .leadTxt { margin-bottom: 17px; font-size: 2.4rem; line-height: 1.75; } }

.is_sticky #policy { margin-top: 130px; }

/*  #vision
================================================== */
#vision { padding-top: 90px; margin-top: -45px; }

#vision .inner { padding-bottom: 45px; }

#vision .head { margin-bottom: 16px; }

#vision .subTit { margin-bottom: 3px; font-size: 1.7rem; font-weight: 700; letter-spacing: 0.12em; text-align: center; color: #1cacda; }

#vision .secVision { color: #fff; background: #eeeeee; position: relative; }

#vision .secVision .line { top: 3px; left: 6px; }

#vision .secVision .circleBorder { box-sizing: border-box; position: absolute; top: 50%; right: -67px; width: 1604px; height: 1604px; margin-top: -802px; border-radius: 50%; border: 1px solid #e4f5fb; }

#vision .secVision .inner { position: relative; overflow: hidden; min-height: 804px; padding-top: 57px; padding-bottom: 64px; }

#vision .secVision .circle { box-sizing: border-box; position: absolute; top: 0; bottom: 0; width: 100%; right: 0; overflow: hidden; }

#vision .secVision .circle .circleCenter { position: absolute; top: 50%; right: -67px; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); width: 1604px; height: 1604px; border-radius: 50%; background: #0171b8; }

#vision .secVision .content { position: relative; z-index: 1; }

#vision .secVision .areaHead .en { font-size: 1rem; }

#vision .secVision .areaHead .tit { position: relative; margin-bottom: 20px; padding-bottom: 16px; font-size: 2.1rem; line-height: 1.5; font-weight: 700; }

#vision .secVision .areaHead .tit:after { content: ""; display: block; position: absolute; bottom: 0; left: 0; width: 42px; height: 2px; background: #1cacda; }

#vision .secVision .areaHead .txt { margin-bottom: 20px; }

#vision .secVision .areaList .list .item { box-shadow: 0px 0px 16px 0px rgba(0, 0, 0, 0.15); }

#vision .secVision .areaList .list .item + .item { margin-top: 15px; }

#vision .secVision .areaList .list .item:nth-child(1) .head { background: url("../img/company/bg_enegy01.png") no-repeat center bottom/cover; }

#vision .secVision .areaList .list .item:nth-child(2) .head { background: url("../img/company/bg_iot01.png") no-repeat center bottom/cover; }

#vision .secVision .areaList .list .item:nth-child(3) .head { background: url("../img/company/bg_engineering01.png") no-repeat center bottom/cover; }

#vision .secVision .areaList .list .item a { display: block; text-decoration: none; position: relative; }

#vision .secVision .areaList .list .item a:before { -webkit-transition: all 750ms cubic-bezier(0.165, 0.84, 0.44, 1); transition: all 750ms cubic-bezier(0.165, 0.84, 0.44, 1); width: 100%; height: 100%; padding-bottom: 1px; position: absolute; content: ''; top: -1px; left: 0; background-color: transparent; -webkit-transform-origin: 0; -ms-transform-origin: 0; transform-origin: 0; -webkit-transform: rotateY(90deg); transform: rotateY(90deg); }

#vision .secVision .areaList .list .item a .head { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -ms-flex-wrap: wrap; flex-wrap: wrap; margin-bottom: 0; padding: 49px 0 51px; color: #fff; text-align: center; }

#vision .secVision .areaList .list .item a .head .en { width: 100%; margin-bottom: -5px; line-height: 1.5; font-size: 2.5rem; font-weight: 700; }

#vision .secVision .areaList .list .item a .head .copy { width: 100%; font-size: 1.3rem; font-weight: 700; }

#vision .secVision .areaList .list .item a .txt { position: relative; background: #fff; padding: 18px 35px 26px 24px; font-size: 1.2rem; }

#vision .secVision .areaList .list .item a .txt:after { content: ""; display: block; position: absolute; top: 50%; right: 0; width: 20px; height: 1px; background: #016cb1; }

@media all and (min-width: 600px) { #vision .inner { padding-top: 60px; padding-bottom: 94px; }
  #vision .head { margin-bottom: 20px; }
  #vision .subTit { margin-bottom: 12px; font-size: 2.4rem; }
  #vision .txt { text-align: center; }
  #vision .secVision .line { left: 181px; top: -44px; }
  #vision .secVision .circle { right: 150px; width: 1320px; }
  #vision .secVision .circle .circleCenter { width: 1320px; height: 1320px; right: 0; overflow: hidden; }
  #vision .secVision .circle .circleCenter:after { position: absolute; z-index: 2; top: 732px; left: -40px; content: ""; display: block; width: 726px; height: 591px; background: url(../img/company/bg_vision01.png) no-repeat center/contain; }
  #vision .secVision .circle .circleCenterParticle { position: absolute; bottom: -176px; left: -50px; width: 800px; height: 800px; border-radius: 50%; overflow: hidden; }
  #vision .secVision .circleBorder { right: 50%; width: 1320px; height: 1320px; margin: -658px -495px 0 0; border: 0; }
  #vision .secVision .circleBorder svg { -webkit-transform: rotate(90deg); -ms-transform: rotate(90deg); transform: rotate(90deg); }
  #vision .secVision .inner { overflow: inherit; height: 840px; padding-top: 119px; }
  #vision .secVision .content { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
  #vision .secVision .areaHead { width: 350px; padding: 45px 0 0; font-size: 1.6rem; }
  #vision .secVision .areaHead .en { font-size: 1.5rem; }
  #vision .secVision .areaHead .tit { margin-bottom: 22px; padding-bottom: 16px; font-size: 3rem; }
  #vision .secVision .areaHead .txt { line-height: 1.85; text-align: left; }
  #vision .secVision .areaList { width: 680px; margin-top: 0; }
  #vision .secVision .areaList .list .item { width: 580px; }
  #vision .secVision .areaList .list .item + .item { margin-top: 32px; }
  #vision .secVision .areaList .list .item:nth-child(even) { margin-left: 100px; }
  #vision .secVision .areaList .list .item a { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
  #vision .secVision .areaList .list .item a:before { -webkit-transition: all 750ms cubic-bezier(0.165, 0.84, 0.44, 1); transition: all 750ms cubic-bezier(0.165, 0.84, 0.44, 1); width: 100%; height: 100%; padding-bottom: 1px; position: absolute; content: ''; top: -1px; left: 0; background-color: transparent; -webkit-transform-origin: 0; -ms-transform-origin: 0; transform-origin: 0; -webkit-transform: rotateY(90deg); transform: rotateY(90deg); }
  #vision .secVision .areaList .list .item a:hover { border-color: #016cb1; }
  #vision .secVision .areaList .list .item a:hover:before { background-color: #016cb1; -webkit-transform: rotateX(0); transform: rotateX(0); z-index: 2; opacity: 0.6; color: #fff; }
  #vision .secVision .areaList .list .item a .head { width: 290px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; padding: 55px 0; }
  #vision .secVision .areaList .list .item a .head .en { margin-bottom: 0; font-size: 2.8rem; }
  #vision .secVision .areaList .list .item a .head .copy { font-size: 1.5rem; }
  #vision .secVision .areaList .list .item a .txt { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-align: center; -ms-flex-align: center; align-items: center; position: relative; width: 230px; padding: 0 30px; font-size: 1.4rem; text-align: left; }
  #vision .secVision .areaList .list .item a .txt:after { width: 20px; height: 1px; } }

/*  #growth
================================================== */
#growth { padding-top: 90px; margin-top: -45px; background: #e5f0f7; }

#growth .inner { padding-bottom: 50px; }

#growth .head { margin-bottom: 17px; }

#growth .subTit { margin-bottom: 2px; font-size: 1.7rem; font-weight: 700; text-align: center; color: #1cacda; }

#growth .txt { margin-bottom: 26px; }

#growth .list { counter-reset: num; }

#growth .list .item { background: #fff; border: 1px solid  #c6c6c6; counter-increment: num; padding: 23px 25px 25px; position: relative; }

#growth .list .item + .item { margin-top: 15px; }

#growth .list .item:before { content: ""; display: block; position: absolute; top: 36px; left: 25px; width: 25px; height: 25px; border-radius: 50%; margin-top: -12px; background: #1cacda; }

#growth .list .item:after { content: counter(num, decimal-leading-zero); font-size: 1rem; font-weight: 700; color: #fff; position: absolute; top: 28px; left: 31px; }

#growth .list .item .copy { padding-left: 33px; font-size: 1.5rem; font-weight: 700; border-bottom: 1px solid #c6c6c6; position: relative; margin-bottom: 9px; padding-bottom: 14px; }

#growth .list .item .childList { margin-bottom: 0; }

#growth .list .item .bgTxt { position: absolute; bottom: -15px; right: 0; font-size: 3rem; font-weight: 700; letter-spacing: .04em; color: #016cb1; opacity: .2; }

@media all and (min-width: 600px) { #growth { padding-top: 60px; }
  #growth .inner { padding-top: 120px; padding-bottom: 119px; }
  #growth .head { margin-bottom: 20px; }
  #growth .subTit { margin-bottom: 12px; font-size: 2.4rem; }
  #growth .txt { margin-bottom: 53px; text-align: center; }
  #growth .list { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
  #growth .list .item { width: calc(33.33% - 17px); box-sizing: border-box; padding: 27px 30px 35px; }
  #growth .list .item + .item { margin-top: 0; }
  #growth .list .item:before { width: 50px; height: 50px; top: 44px; left: 29px; }
  #growth .list .item:after { top: 40px; left: 42px; font-size: 2rem; }
  #growth .list .item .copy { padding-left: 69px; font-size: 2rem; line-height: 1.5; margin-bottom: 12px; padding-bottom: 15px; }
  #growth .list .item .childList .childItem { font-size: 1.5rem; }
  #growth .list .item .bgTxt { bottom: -17px; font-size: 4rem; } }

/*  #about
================================================== */
#about { padding-top: 90px; margin-top: -45px; margin-bottom: 50px; }

#about .inner { padding-bottom: 50px; }

#about .table { margin-bottom: 0; }

#about .table td .txt + .txt { margin-top: 5px; }

#about .table td .txt span { display: block; font-weight: 700; }

#about .table td a { color: #0171b8; }

#about .table td a[target="_blank"] { position: relative; }

#about .table td .box { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; }

#about .table td .box + .box { margin-top: 15px; }

#about .table td .box .img { width: calc(36% - 8px); }

#about .table td .box .areaTxt { width: calc(64% - 8px); margin-top: -6px; margin-left: 14px; }

#about .table td .box .txt + .txt { margin-top: 5px; }

@media all and (min-width: 600px) { #about { margin-top: -80px; }
  #about .inner { padding-top: 100px; padding-bottom: 120px; }
  #about .table td a { -webkit-transition: all 0.3s ease; transition: all 0.3s ease; }
  #about .table td a:hover { text-decoration: none; }
  #about .table td .box + .box { margin-top: 20px; }
  #about .table td .box .img { width: 140px; }
  #about .table td .box .txt { width: 580px; margin-left: 6px; } }

/*  #access
================================================== */
#access { background: #eeeeee; padding-top: 45px; margin-top: -45px; }

#access .inner { padding-bottom: 69px; }

#access .head { margin-bottom: 19px; }

#access .secAccess + .secAccess { margin-top: 41px; }

#access .secAccess .subTit { margin-bottom: 26px; }

#access .secAccess .map { position: relative; height: 185px; margin-bottom: 12px; }

#access .secAccess .map iframe { position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto; width: 100%; height: 100%; }

#access .secAccess .area .areaTxt + .areaTxt { margin-top: 22px; }

#access .secAccess .area .areaTxt .copy { margin-bottom: 3px; }

#access .secAccess .area .areaTxt .txt { margin-bottom: -12px; }

#access .secAccess .area .areaTxt dl + dl { margin-top: 5px; }

#access .secAccess .area .areaTxt dl dt { font-weight: 700; }

@media all and (min-width: 600px) { #access { margin-top: -35px; }
  #access .inner { padding-top: 110px; padding-bottom: 60px; }
  #access .head { margin-bottom: 22px; }
  #access .secAccess + .secAccess { margin-top: 86px; }
  #access .secAccess .subTit { margin-bottom: 35px; }
  #access .secAccess .map { height: 370px; margin-bottom: 30px; }
  #access .secAccess .area { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
  #access .secAccess .area .areaTxt { width: 50%; box-sizing: border-box; }
  #access .secAccess .area .areaTxt + .areaTxt { margin-top: 0; padding-left: 40px; }
  #access .secAccess .area .areaTxt .copy { margin-bottom: 9px; }
  #access .secAccess .area .areaTxt .txt { margin-bottom: 23px; }
  #access .secAccess .area .areaTxt .btn { margin: 0; }
  #access .secAccess .area .areaTxt .btn a { padding: 12px 0; } }

.mod_table01 td .iso_link[target="_blank"]:after{
	display: none;
}