@charset "UTF-8";
/*----------
コンテンツ
----------*/
.grid-item>.l-grid{
  margin-bottom: 50px;
}
.grid-item>.l-grid img{
  margin-bottom: 20px;
}
.grid-item>.l-grid img.mb0{
  margin-bottom: 0px;
}
/*--下部の共通individualページメニュー--*/
ul.individual_menu{
  list-style:none;
  padding: 5px 0 0;
}
ul.individual_menu li{
  position: relative;
  padding:12px;
  background-color:#EEEEEF;
  margin-top: 10px;
  font-weight: bold;
}
ul.individual_menu li:hover,
ul.individual_menu li.active:hover{
  background-color:#E50020;
  cursor: pointer;
}
ul.individual_menu li:hover a{
  color: #fff;
}
ul.individual_menu li a{
  display: block;
}
ul.individual_menu li.active{
  background-color:#3E3A39;
}
ul.individual_menu li.active a{
  color: #fff;
}
ul.individual_menu li.active a:hover{
  color: #fff;
}
ul.individual_menu li::before{
  content: '';
  width: 10px;
  height: 10px;
  border: 0px;
  border-top: solid 1px #888;
  border-right: solid 1px #888;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 13px;
  margin-top: -7px;
}
ul.individual_menu li.active::before{
  border-top: solid 1px #fff;
  border-right: solid 1px #fff;
}
ul.individual_menu li:hover::before,
ul.individual_menu li.active:hover::before{
  border-top: solid 1px #fff;
  border-right: solid 1px #fff;
}

/*--見出し--*/
/*左に赤線*/
.h_left-red{
  padding:2px 0 2px 8px;
  border-left: 2px solid #E50020;
  font-size: 17px;
  line-height: 1.3em;
  color: #231815;
  margin-bottom: 15px;
  margin-top: 10px;
  display: inline-block;
}
.h_left-red+img{
  margin-top: 10px;
}
p+.h_left-red{
  margin-top: 40px;
}
/*大きな赤い文字*/
.h_red_big{
  font-size: 31px;
  line-height: 1em;
  margin-bottom: 30px;
}
.h_red_big span{
  float: right;
  position: relative;
  top: -12px;
}
.h_red_big span img{
  margin: 0;
}
/*小さな赤い文字*/
.h_red_small{
  font-size: 17px;
  color:#E50020;
  margin-bottom: 20px;
}
/*--individual--*/
div.individual_top{
  margin-top: 30px;
}
div.individual_top h3{
  text-align: center;
  font-size: 38px;
  line-height: 1em;
  margin-bottom: 30px;
}
div.individual_top h3 span{
  display: block;
}
div.individual_top h3 span img{
  margin-bottom: 5px !important;
}
div.individual_top h3 span.small{
  font-size: 20px;
}
div.individual_top p{
  text-align: center;
  font-weight: bold;
  font-size:17px;
  margin-bottom: 0;
}
/*--individualmessage--*/
div.individualmessage img.president{
  margin-bottom: 34px;
}
div.individualmessage p{
  margin-bottom: 2em;
}
div.individualmessage p.signature{
  text-align: right;
}
div.what_toumei01{
  margin-bottom: 30px;
}
div.what_toumei02{
  margin-bottom: 20px;
}
div.what_toumei01{
  text-align: center;
  padding: 10px 50px;
  background-color: #F9D9DF;
}
div.what_toumei01 h4{
  font-size: 24px;
  color: #E50020;
  border-bottom: #E26479 1px solid;
}
div.what_toumei01 p{
  text-align: center;
  font-size: 20px;
  color: #E50020;
  margin-bottom: 0;
}
div.what_toumei02{
  text-align: center;
  padding: 10px 50px;
  background-color: #DFE1EF;
}
div.what_toumei02 h4{
  font-size: 24px;
  color: #00479D;
  border-bottom: #8C9EAF 1px solid;
}
div.what_toumei02 p{
  text-align: center;
  font-size: 20px;
  color: #00479D;
  margin-bottom: 0;
}
div.what_toumei03{
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-around;
    justify-content: space-around;
  padding: 20px 20px 10px;
  background-color:#F7F7F7;
  margin-bottom: 30px;
}
div.what_toumei03 .what_toumei03_icon01,
div.what_toumei03 .what_toumei03_icon02,
div.what_toumei03 .what_toumei03_icon03{
  position: relative;
  text-align: center;
}
div.what_toumei03 .what_toumei03_icon01 p,
div.what_toumei03 .what_toumei03_icon02 p,
div.what_toumei03 .what_toumei03_icon03 p{
  text-align: center;
  font-size: 17px;
  font-weight: bold;
  margin-bottom: 0;
  line-height : 1.3;
}
div.what_toumei03 .what_toumei03_icon01 img,
div.what_toumei03 .what_toumei03_icon02 img,
div.what_toumei03 .what_toumei03_icon03 img{
  margin-bottom: 13px;
}
div.what_toumei03 .what_toumei03_sign01,
div.what_toumei03 .what_toumei03_sign02{
  position: relative;
}
div.what_toumei03 .what_toumei03_sign01::before,
div.what_toumei03 .what_toumei03_sign01::after,
div.what_toumei03 .what_toumei03_sign02::before,
div.what_toumei03 .what_toumei03_sign02::after {
  box-sizing: border-box;
  display: block;
  position: absolute;
  left: 0;
  height: 3px;
  content: "";
  background-color: #333;
  z-index: 1;
}
div.what_toumei03 .what_toumei03_sign01::before,
div.what_toumei03 .what_toumei03_sign01::after{
  top: 63px;
  width: 40px;
  margin-left: -20px;
}
div.what_toumei03 .what_toumei03_sign01::before {
  -webkit-transform: rotate(-135deg);
  -ms-transform: rotate(-135deg);
  transform: rotate(-135deg);
}
div.what_toumei03 .what_toumei03_sign01::after {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

div.what_toumei03 .what_toumei03_sign02::before,
div.what_toumei03 .what_toumei03_sign02::after {
  width: 30px;
  margin-left: -15px;
}
div.what_toumei03 .what_toumei03_sign02::before {
  top: 57px;
}

div.what_toumei03 .what_toumei03_sign02::after {
  top: 69px;
}

b.red{
  font-weight: bold;
  color: #E50020;
}
/*--灰色の背景箇所の共通--*/
div.gray_box{
  text-align: center;
  padding: 20px;
  display: block;
  background-color: #F7F7F7;
  margin-bottom: 30px;
}
div.gray_box h5{
  display: inline-block;
  color: #E50020;
  font-size: 17px;
  text-align: center;
  margin-bottom: 30px;
}
div.gray_box h5 span{
  border-bottom: #E50020 solid 2px;
}
main .gray_box p img {
  margin: 0;
  }
/*--画像背景色なし箇所の共通--*/
div.white_box{
  text-align: center;
  padding: 20px;
  display: block;
  background-color: transparent;
}
@media (max-width: 900px)
{
  div.gray_box h5 span{
    line-height: 1.7;
  }
}
/*--individualbusiness--*/
ul.office119{
  padding: 0;
  margin: 0;
  display:flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  /*flex-wrap: wrap;*/
  flex-direction:row;
  justify-content:center;
  align-items:center;
}
ul.office119 li{
  list-style: none;
  color: #231815;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  padding: 0 5px;
}
ul.office119 li img{
  display: block;
  margin-bottom: 10px !important;
}
div.frame_black{
  padding: 15px 20px;
  border:1px solid #231815;
  font-size: 14px;
  margin-bottom:20px;
  display: flex;
  flex-direction: column;
}
div.frame_black h5{
  font-size: 15px;
  font-weight: bold;
  text-align: center;
  padding: 15px 0 10px;
}
div.frame_black p{
  margin: 0;
}
ul.lifelin{
  padding: 0;
  margin: 0;
  display:flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  /*flex-wrap: wrap;*/
  flex-direction:row;
  justify-content:center;
  align-items:center;
}
ul.lifelin li{
  list-style: none;
  text-align: center;
  font-size: 17px;
  font-weight: bold;
  padding: 20px 0;
  display: block;
  background-color: #F7F7F7;
  margin-bottom: 30px;
  margin-left: 10px;
  width: 32%;
}
ul.lifelin li:first-child{
  margin-left: 0;
}
ul.lifelin li p{
  text-align: center;
}
ul.lifelin li span{
  display: block;
  font-size: 13px;
}
ul.lifelin li img{
  display: block;
  margin: 5px auto 0 !important;
}
div.lifelineset{
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
    justify-content: space-between;
  padding: 20px 20px 10px;
  background-color:#F7F7F7;
  margin-bottom: 30px;
}
div.lifelineset .lifelineset_icon{
  position: relative;
  text-align: center;
  width: 25%;
}
div.lifelineset .lifelineset_icon p{
  text-align: center;
  font-size: 17px;
  font-weight: bold;
  margin-bottom: 0;
}
div.lifelineset .lifelineset_icon p span{
  display: block;
  font-size: 7px;
  letter-spacing: -1.5px;
  white-space: nowrap;
  margin-top: -6px;
}
div.lifelineset .lifelineset_icon img{
  margin-bottom: 10px;
}
div.lifelineset .lifelineset_sign01{
  position: relative;
}
div.lifelineset .lifelineset_sign01::before,
div.lifelineset .lifelineset_sign01::after{
  box-sizing: border-box;
  display: block;
  position: absolute;
  content: "";
  background-color: #333;
  z-index: 1;
}
div.lifelineset .lifelineset_sign01::before {
  top: 30%;
  left: -11px;
  width: 24px;
  height: 2px;
}
div.lifelineset .lifelineset_sign01::after {
  top: 22%;
  left: 0;
  width: 2px;
  height: 24px;
}
article.partner_box{
  display: -webkit-flex;
  display: flex;
  flex-flow: row;
  margin-top: 35px;
}
article.partner_box p{
  display: block;
  border-radius: 50%;
  font-size: 27px;
  font-weight:bold;
  color:#E50020;
  background-color: #FBD9DE;
  padding: 55px 20px;
  text-align: center;
  line-height: 1.5em;
  letter-spacing: -1.5px;
  height: 220px;
  width: 220px;
  margin-right: 20px;
}
@media screen and (max-width: 980px) {
  article.partner_box p{
    font-size: 23px;
    height: 210px;
    width: 210px;
  }
}
ul.teian{
  padding:0;
  margin:0 auto 20px;
  display: inline-block;
  font-weight: bold;
}
ul.teian li{
  padding:0;
  margin: 0 20px;
  list-style: none;
  border-radius: 50%;
  height: 120px;
  width: 120px;
  font-size:17px;
  text-align: center;
  padding: 48px 0;
  float: left;
}
div.gray_box.bus_goteian h5{
  display: block;
}
@media screen and (max-width: 880px) {
  ul.teian li{
    margin: 0 5px;
  }
}
ul.teian .teian01{
  color: #E50020;
  background-color: #F9D9DF;
}
ul.teian .teian02{
  color: #00479D;
  background-color: #DFE1EF;
}
ul.teian .teian03{
  color: #3D9138;
  background-color: #F2F6DC;
}
ul.service{
  padding:0;
  list-style: none;
  display: block;
  overflow: hidden;
}
ul.service li{
  float:left;
  text-align: center;
  width:20%;
  display: -webkit-flex;
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  margin:15px 0;
  line-height: 1.2;
  font-size: 13px;
  font-weight: normal;
}
ul.service.denki{
  display: flex;
  justify-content: center;
}
ul.service.denki li{
  float: none;
}
ul.service.oh li{
  width:25%;
}
ul.service.os li{
  height: 130px;
}
ul.service li span{
  display: flex;
  align-items: center;
  height:70px;
}
ul.service li span img{
  margin-bottom: 10px !important;
}
ul.service.oh li span img{
  margin-bottom: 15px !important;
}
ul.service.os li span img{
  margin-bottom: 30px !important;
}
ul.service + p {
  font-size: 18px;
  font-weight: bold;
  background-color: #FBD9DE;
  border-radius: 50px;
  display: inline-block;
  padding: 6px 50px;
  margin: 10px auto 25px;
}

article.hoken_photo{
  margin-bottom:0 !important;
}
article.hoken_photo img{
  margin:0 !important;
}
article.hoken_photo p{
  margin-bottom:15px !important;
  background-color:#DBDCDC;
  font-size:14px;
  line-height:1em;
  padding:8px;
}

/*--individualgrowth--*/
.growth{
  position: relative;
  display: -webkit-flex;
  display: flex;
  flex-flow: row;
  align-items: center;
  background-color:#F9D9DF;
  padding:25px 20px;
  margin-bottom: 35px;
}
.growth span.growth_img{
  width:23%;
}
.growth span.growth_img img{
  margin: 0;
}
.growth .growth_text{
  width:77%;
}
.growth .growth_text h4{
  font-size:24px;
  line-height: 1.2em;
  display: flex;
  flex-direction: row;
}
.growth .growth_text h4 span{
  width: 20%;
  display: inline-block;
}
.growth .growth_text p{
  margin: 0;
}
.growth_red{
  background-color:#E50020;
  text-align: center;
  color:#fff;
  font-size:21px;
  font-weight:bold;
  line-height:1em;
  padding:15px 0 12px;
}
.growth:before{
  position: absolute;
  content:"";
  bottom:-23px;
  left:50%;
  margin-left:-4px;
  width: 0;
  height: 0;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-top: 8px solid black;
}
.grid-item .grid-item.growth_under{
  padding-bottom:60px;
}

p.small{
  font-size:12px;
  margin-bottom:45px !important;
}

/*--PCでデザインが崩れる時--*/
@media screen and (max-width: 1010px) {
  ul.office119 li{
    width: 33%;
    margin-bottom: 10px;
  }
  ul.office119 li img{
    margin: auto;
  }
}
@media screen and (max-width: 960px) {
  .growth .growth_text h4{
    font-size: 22px;
    flex-direction: column;
  }
}
@media screen and (max-width: 890px) {
  .growth span.growth_img{
    width:25%;
  }
  .growth .growth_text{
    width:75%;
  }
  .growth .growth_text h4 span{
    display: block;
    width: 100%;
    margin-bottom: 5px;
  }
}
@media screen and (max-width: 850px) {
  ul.service li,
  ul.service.oh li,
  ul.service.os li{
    width:33%;
  }
  ul.service.oh li{
    height: 105px;
  }
  ul.service.os li{
    height: 110px;
  }
  ul.service + p {
    font-size: 15px;
    text-align: center;
    padding: 6px 30px;
  }
  ul.lifelin li{
    font-size:14px;
    width:31%;
  }
  ul.lifelin li span{
    font-size: 11px;
  }
}
/*--スマホ用--*/
@media screen and (max-width: 767px) {
  .grid-item>.l-grid{
    margin-bottom: 30px;
  }
  .grid-item>.l-grid img{
    margin-bottom: 20px;
  }
  .grid-item>.l-grid img.mb0{
    margin-bottom: 0px;
  }
  .h_red_big{
    font-size:24px;
    display: flex;
    flex-direction: column-reverse;
  }
  .h_red_big span{
    width: 30%;
    top: auto;
  }
  .h_red_big span img{
    margin-bottom: 20px !important;
  }
  .h_red_big span.denki{
    width: 45%;
  }
  .h_red_small{
    font-size: 15px;
  }
  div.gray_box{
    padding: 20px;
  }
  div.gray_box h5{
    font-size:14px;
    line-height: 1.6;
  }
  div.gray_box h5 span{
    border-bottom:1px solid #E50020;
    margin-bottom:5px;
  }
  div.individual_top h3{
    margin-bottom: 10px;
  }
  div.individual_top p{
    font-size: 14px;
    margin-bottom: 20px;
  }
  div.individualmessage img.president{
    margin-bottom: 27px;
  }
  div.what_toumei02{
    margin-bottom: 10px;
  }
  div.what_toumei01,
  div.what_toumei02{
    padding: 10px;
  }
  div.what_toumei01 h4,
  div.what_toumei02 h4{
    padding-bottom: 5px;
  }
  div.what_toumei01 h4,
  div.what_toumei01 p,
  div.what_toumei02 h4,
  div.what_toumei02 p{
    font-size:16px;
  }
  div.what_toumei03{
    padding: 10px;
  }
  div.what_toumei03 .what_toumei03_icon01,
  div.what_toumei03 .what_toumei03_icon02,
  div.what_toumei03 .what_toumei03_icon03{
    width: 30%;
  }
  div.what_toumei03 .what_toumei03_icon01 p,
  div.what_toumei03 .what_toumei03_icon02 p,
  div.what_toumei03 .what_toumei03_icon03 p{
    font-size: 14px;
  }
    div.what_toumei03 .what_toumei03_sign01, div.what_toumei03 .what_toumei03_sign02{
    width: 5%;
  }
  div.what_toumei03 .what_toumei03_sign01::before, div.what_toumei03 .what_toumei03_sign01::after{
    height: 2px;
    top: 37%;
    left: 50%;
    margin-left: -12px;
    width:24px;
  }
  div.what_toumei03 .what_toumei03_sign02::before, div.what_toumei03 .what_toumei03_sign02::after{
    height: 2px;
    top: 35%;
    left: 50%;
    margin-left: -9px;
    width:18px;
  }
  div.what_toumei03 .what_toumei03_sign02::after{
    margin-top: 8px;
  }
  ul.office119{
    margin-left: -15px;
    margin-right: -15px;
  }
  ul.office119 li{
    padding: 0 12px;
    margin-bottom: 20px;
  }
  article.partner_box{
    display: -webkit-flex;
    display: flex;
    flex-flow:column-reverse ;
  }
  article.partner_box>div{
    text-align:center;
  }
  article.partner_box p{
    background: none;
    font-size:22px;
    padding: 0;
    width: 100%;
    height: auto;
  }
  ul.lifelin {
    margin-bottom: 20px;
  }
  ul.lifelin li{
    display: -webkit-flex;
    display: flex;
    flex-flow: row-reverse;
    -webkit-justify-content: center;
    justify-content: center;
    align-items: center;
    padding: 10px 15px;
    margin-bottom: 10px;
    margin-left: 0;
    width: 100%;
  }
  ul.lifelin li p{
    text-align: left;
    margin:0 0 0 15px;
    width: 70%;
    font-size:15px;
  }
  ul.lifelin li p span{
    font-size:14px;
  }
  ul.lifelin li img{
    width:30%;
  }
  div.lifelineset{
    padding: 10px 10px 5px;
  }
  div.lifelineset .lifelineset_icon img{
    width:85%;
    margin-bottom: 5px;
  }
  div.lifelineset .lifelineset_sign01::before {
    top: 35%;
  }
  div.lifelineset .lifelineset_sign01::after {
    top: 29%;
  }
  ul.teian li{
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    align-items: center;
    width:90px;
    height:90px;
    padding: 0;
    font-size:16px;
    font-weight:bold;
    line-height: 1.2em;
  }
  ul.service li,
  ul.service.oh li,
  ul.service.os li{
    width:33%;
  }
  ul.service.oh li{
    height: 105px;
  }
  ul.service.os li{
    height: 120px;
  }
  div.frame_black{
    margin-bottom: 20px;
  }
  ul.service + p {
    font-size: 15px;
    padding: 6px 40px;
  }
  .growth{
    padding:20px 15px;
    margin-bottom: 30px;
  }
  .growth:before{
    bottom: -20px;
  }
  .growth span.growth_img{
    width:40%;
  }
  .growth .growth_text h4{
    font-size:17px;
  }
  .growth_red{
    font-size:17px;
    padding:22px 0 19px;
  }
  .grid-item .grid-item.growth_under{
    padding-bottom:30px;
  }
  article.partner_box p{
    line-height: 1.4
  }
}
@media screen and (min-width: 480px) and (max-width: 767px){
  ul.teian li{
    width: 130px;
    height: 130px;
    font-size: 18px;
  }
}
@media screen and (max-width: 480px) {
  div.lifelineset .lifelineset_sign01::before{
    top: 35px;
    left: -5px;
    width: 12px;
    height: 1px;
  }
  div.lifelineset .lifelineset_sign01::after{
    top: 29px;
    left: 0;
    width: 1px;
    height: 12px;
  }
}
/*--SE用--*/
@media screen and (max-width: 320px) {
  ul.office119 li{
    padding: 0 5px;
    margin-bottom: 20px;
    font-size:13px;
  }
  .h_red_big{
    font-size: 22px;
  }
  .h_red_big span{
    top: -4px;
  }
  ul.teian li{
    width:70px;
    height:70px;
  }
  div.lifelineset .lifelineset_icon img{
    width:50px;
  }
  .growth span.growth_img{
    padding-right: 10px;
  }
}
