@charset "utf-8";

/*全体*/
body {
  margin: 0;
}

ul {
  list-style-type: none;
}

a {
  text-decoration: none;
  color: #fff;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: bold;
}

h1 {
  margin: auto 0;
}

.SP {
  display: none;
}

p {
  color: #3e271d;
}

main {
  background-image: url(../images/common/bg_pc.png);
  background-repeat: repeat-y;
  background-position: 50% 0;
}

.company_profile_main {
  width: 100%;
  text-align: center;
  font-family: 'メイリオ', sans-serif;
  font-size: 15px;
  margin-bottom: 160px;
  line-height: normal;
  padding-top: 90px;
}

/*カテゴリーファーストビュー*/
.company_profile_main .first_view {
  width: 1080px;
  margin: 80px auto;
  background-color: rgba(224, 236, 116, 0.08);
  padding: 14px;
  color: #00a99d;
  font-family: 'メイリオ', sans-serif;
  margin: 0px auto;
}

.company_profile_main .first_view_english {
  color: #00a99d;
  font-family: 'メイリオ', sans-serif;
  margin: 0 auto;
  text-align: center;
  font-size: 24px;
}

.company_profile_main .first_view_english_explain {
  color: #00a99d;
  font-family: 'メイリオ', sans-serif;
  margin: 0 auto;
  text-align: center;
  font-size: 18px;
  margin: 32px auto 21px;
  line-height: 36px;
}

.company_profile_main .first_view2 {
  display: flex;
  justify-content: center;
}

.company_profile_main .first_view2 img {
  width: 120px;
  vertical-align: bottom;
}

.first_view2 .right {
  align-self: flex-end;
  display: block;
}

.first_view2 .right-sp {
  display: none;
}

.first_view2 .left {
  align-self: flex-start;
  display: block;
}

.first_view2 .left-sp {
  display: none;
}

.company_profile_main .first_view2 .center {
  width: 840px;
}

.company_profile_main .first_view2 .center h2 {
  font-size: 36px;
  margin: 30px auto 18px;
}

/*ナビ*/
.width1080 {
  min-width: 1080px;
}

.company_profile_overview_blue {
  width: 980px;
  margin: 70px auto 0;
  padding: 80px 0 0px;
  font-size: 24px;
  text-align: center;
}

.company_profile_overview_blue a {
  text-decoration: none;
}

hr.company_profile_vertical_blue {
  width: 2px;
  height: 80px;
  text-align: center;
  margin: 20px auto -130px;
  border-style: none;
  border-radius: 50px;
  background-color: #00a99d;
}

p.english_blue {
  font-size: 24px;
  text-align: center;
  margin: auto;
  font-family: 'メイリオ', sans-serif;
  color: #00a99d;
  padding-bottom: 26px;
}

.company_profile_overview_blue .flex2 {
  display: flex;
  margin: 0;
  width: 980px;
  height: auto;
  padding: 0;
  background: none;
  align-items: center;
  font-size: 18px;
  flex-wrap: wrap;
  align-content: space-between;
  list-style-type: none;
}

.company_profile_overview_blue .flex2 .center_padding20 {
  padding: 0 40px;
}

.company_profile_overview_blue .flex2 li {
  background: -moz-linear-gradient(0% 50% 0deg, rgba(129, 221, 171, 1) 0%, rgba(59, 129, 224, 1) 100%);
  background: -webkit-linear-gradient(0deg, rgba(129, 221, 171, 1) 0%, rgba(59, 129, 224, 1) 100%);
  background: -webkit-gradient(linear, 0% 50%, 100% 50%, color-stop(0, rgba(129, 221, 171, 1)), color-stop(1, rgba(59, 129, 224, 1)));
  background: -o-linear-gradient(0deg, rgba(129, 221, 171, 1) 0%, rgba(59, 129, 224, 1) 100%);
  background: -ms-linear-gradient(0deg, rgba(129, 221, 171, 1) 0%, rgba(59, 129, 224, 1) 100%);
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#81DDAB', endColorstr='#3B81E0' ,GradientType=0)";
  background: linear-gradient(90deg, rgba(129, 221, 171, 1) 0%, rgba(59, 129, 224, 1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#81DDAB', endColorstr='#3B81E0', GradientType=1);
  color: #fff;
  width: 300px;
  line-height: 50px;
  margin-bottom: 20px;
  border:solid rgba(255,255,255,1) 2px;
}

.company_profile_overview_blue .flex2 li:hover {
  border: solid #00A99D 2px;
  background: #fff;
  color: #00A99D;
  line-height: 50px;
}

.company_profile_overview_blue ul li {
  margin: 0;
}


/*デジタルアーカイブ事業*/

.company_profile_overview {
  width: 1080px;
  margin: 80px auto;
  background-color: rgba(224, 236, 116, 0.08);
  padding: 80px 0 80px;
}

hr.company_profile_vertical {
  width: 5px;
  height: 120px;
  text-align: center;
  margin: 80px auto -130px;
  border-style: none;
  border-radius: 50px;
  background-color: #e0ec74;
}


.company_profile_main .width1080 {
  min-width: 1080px;
}

.company_profile_main p.english {
  color: #e0ec74;
  font-size: 24px;
  text-align: center;
  margin: auto;
  font-family: 'メイリオ', sans-serif;
  margin-top: -10px;
}

.company_profile_main h3 {
  color: #3e271d;
  font-size: 34px;
  margin-top: 18px;
}




.company_profile_main h4 {
  color: #3e271d;
  font-size: 24px;
  font-weight: bold;
  text-align: left;
  width: 720px;
  margin: 70px auto 15px;
}

.company_profile_main .digital_left,
.company_profile_main .digital_center {
  min-width: 60px;
}

.company_profile_main .bold:first-child {
  font-weight: bold;
}

.company_profile_main .digital_right span {
  padding-left: 20px;
}

.company_profile_main figure {
  text-align: left;
  margin-left: 0;
}

.company_profile_main p.explain {
  font-size: 24px;
  padding: 20px 0 60px;
}

.company_profile_main p.explain2 {
  font-size: 16px;
  line-height: 30px;
}

.company_profile_main img.explain_img {
  padding: 40px 0 46px;
}

.company_profile_main p.blue_line {
  font-size: 22px;
  font-weight: bold;
}

.company_profile_main .blue_line2 {
  background: #00a99d;
  opacity: 0.2;
  padding: 8px 0;
  margin: -12px 220px 0;
}

.company_profile_main .blue_line3 {
  background: #00a99d;
  opacity: 0.2;
  padding: 8px 0;
  margin: -12px 260px 0;
}


.company_profile_main .blue_line4 {
  background: #00a99d;
  opacity: 0.2;
  padding: 8px 0;
  margin: -12px 270px 0;
}

.ueni_yohaku {
  margin-top: 60px;
  margin-bottom: 20px;
}

.company_profile_main .flex {
  width: 920px;
  display: flex;
  margin: auto;
  margin-top: 50px;
  flex-wrap: wrap;
  justify-content: space-between;
}

.company_profile_main .flex a img:hover {
  /*opacity: 0.5;*/
}

.company_profile_main .flex img.width280 {
  width: 280px;
}

.margin_top26 {
  margin-top: 26px;
}

.company_profile_main .margin_top20 {
  margin-top: 20px;
  margin-bottom: 70px;
}

.company_profile_main .margin_40 {
  margin: 40px;
}

.company_profile_main .margin_top0 {
  margin-top: 0px;
}

.company_profile_main .margin_top26 {
  margin-top: 26px;
}

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

.company_profile_main .padding_top20 {
  padding-top: 35px;
}

.company_profile_main .flex_wrap {}

.company_profile_main .flex .right {
  width: 424px;
  height: 220px;
}

.company_profile_main .flex .left {
  width: 424px;
  height: 220px;
}

.company_profile_main .margin0 {
  margin-top: 0;
  margin-bottom: 0;
}

.company_profile_main .border3 {
  border: 3px solid #e0ec74;
  padding: 24px 0;
  justify-content: space-evenly;
  border-radius: 5px;
  background: #fff;
}

.company_profile_main .flex_wrap h4.margin_top0 {
  padding-top: 16px;
  font-size: 22px;
}

.company_profile_main .flex_wrap h4:after {
  content: "";
  display: block;
  width: 50px;
  border-bottom: 3px solid #e0ec74;
  padding-bottom: 20px;
  margin-bottom: 23px;
}

.company_profile_main .flex_wrap p {
  text-align: left;
  font-size: 16px;
  line-height: 32px;
}

.company_profile_main .margin_top20nomi {
  margin-top: 20px;
}

.company_profile_main p.explain br {
  display: none;
}

.blue_lineA,
.blue_lineA2,
.blue_lineB,
.blue_lineB2 {
  display: none;
}

.blue_line {
  background: linear-gradient(transparent 60%, rgba(0,169,157,0.2) 0%);
  font-size: 22px;
  font-weight: bold;
}

.padding_left_right40 {
  margin: 0 40px;
}

.pc_kieru {
  display: none;
}

.PC_gazo_block {
  display: block;
  margin: 0 auto;
}

.SP_gazo_block {
  display: none;
  text-align: center;
}

.small {
  width: 180px;
}

/*ドローン事業*/
.company_profile_main .about h3 {
  text-align: center;
  margin-bottom: 30px;
}

.company_profile_main .about p {
  text-align: center;
  margin: 0 0 40px 0;
  font-size: 24px;
  font-family: 'メイリオ', sans-serif;
  padding: 0 3%;
}

.company_profile_main .about p.explain2 {
  font-size: 16px;
  margin-top: 40px;
}


.company_profile_main .about p.english {
  margin-top: 26px;
  margin-bottom: 18px;
  font-family: 'メイリオ', sans-serif;
}

.company_profile_main .about p.explain {
  margin: 30px 0 80px 0;
}

.company_profile_main .service .flex {
  width: 920px;
  background: none;
  margin-top: 0;
}

.company_profile_main .service .flex img {
  margin-bottom: 24px;
}

.company_profile_main .service h4 {
  width: 100%;
  text-align: center;
  margin: 0 0 24px 0;
  font-weight: bold;
  font-size: 22px;
}

.company_profile_main .service h4:after {
  content: "";
  display: block;
  width: 50px;
  margin: 24px auto 0;
  text-align: center;
  border-bottom: 3px solid #e0ec74;
}

.company_profile_main .service p {
  text-align: left;
  margin: 0;
  font-size: 16px;
  line-height: 32px;
  font-family: 'メイリオ', sans-serif;
}

.topleft {
  border: 3px solid #e0ec74;
  width: 440px;
  height: 420px;
  padding: 32px;
  margin-right: 40px;
  margin-bottom: 40px;
  background-color: #fff;
}

.topright {
  border: 3px solid #e0ec74;
  width: 440px;
  height: 420px;
  padding: 32px;
  margin-bottom: 40px;
  background-color: #fff;
}

.bottomleft {
  border: 3px solid #e0ec74;
  width: 440px;
  height: 420px;
  padding: 32px;
  margin-right: 40px;
  margin-bottom: 80px;
  background-color: #fff;
}

.bottomright {
  border: 3px solid #e0ec74;
  width: 440px;
  height: 420px;
  padding: 32px;
  margin-bottom: 80px;
  background-color: #fff;
  border-radius: 5px;
}

.padding_bottom0 {
  padding-bottom: 0 !important;
  margin-bottom: 240px !important;
}

.about p br {
  display: none;
}

.about p.explain2 br {
  display: inline;
}


.company_profile_main .SP_gazo {
  display: none;
}

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


/* Edge のみ適用 */
@supports (-ms-ime-align: auto) {
  .company_profile_main .border3 {
    justify-content: space-around;
  }
}

/*レスポンシブ*/
@media screen and (max-width:1080px) {

  main {
    background-image: url(../images/common/sp_bg.png);
    background-repeat: repeat-y;
    background-size: 100% auto;
  }

  .SP {
    display: block;
  }

  .PC {
    display: none;
  }

  p {
    text-align: left;
  }

  /*ファーストビュー*/
  .company_profile_main {
    padding-top: 50px;
    margin-bottom: 120px;
  }

  .company_profile_main .first_view {
    width: 94%;
    margin: 0 3% 0 3%;
  }

  .company_profile_main .width1080 {
    width: 100%;
    max-width: 100%;
    min-width: 0%;
  }

  .company_profile_main .first_view2 .center {
    width: 100%;
  }

  .company_profile_main .first_view2 .center p.first_view_english_explain {
    text-align: left;
  }

  .company_profile_main .first_view2 .center br {
    display: none;
  }

  .company_profile_main .first_view2 {
    display: block;
    padding: 10px;
  }

  .company_profile_main .first_view2 .left {
    display: none;
  }

  .company_profile_main .first_view2 .left-sp {
    display: block;
  }

  .company_profile_main .first_view2 .right {
    display: none;
    text-align: right;
  }

  .company_profile_main .first_view2 .right-sp {
    display: block;
    text-align: right;
  }

  .company_profile_main .first_view2 img {
    width: 60px;
    height: 60px;
  }

  .company_profile_main .first_view2 .center h2 {
    font-size: 28px;
    padding-bottom: 10px;
    margin: 0 auto;
  }

  .company_profile_main .first_view_english {
    font-size: 18px;
  }

  .company_profile_main .first_view_english_explain {
    font-size: 16px;
    margin: 0 auto 0;
    line-height: 32px;
    padding-top: 40px;
    padding-left: 5%;
    padding-right: 5%;
  }

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


  /*ナビ*/
  .company_profile_overview_blue {
    width: 100%;
  }

  .company_profile_main .company_profile_overview_blue .flex2 {
    width: 100%;
    height: auto;
    flex-wrap: wrap;
    justify-content: space-evenly;
  }

  .company_profile_main .company_profile_overview_blue .flex2 a {
    width: 94%;
    margin-bottom: 15px;
    height: 47px;
  }

  .company_profile_main .company_profile_overview_blue .flex2 a:last-child {
    float: left;
  }

  .company_profile_main .company_profile_overview_blue .flex2 li {
    width: 100%;
  }

  hr.company_profile_vertical_blue {
    margin: 0 auto;
    height: 36px;
  }

  .company_profile_overview_blue {
    margin: 0;
    padding: 0;
  }

  .company_profile_overview_blue .flex2 .center_padding20 {
    padding: 0;
  }


  /*デジタルアーカイブ事業*/
  .company_profile_overview {
    width: 100%;
  }

  .company_profile_main .width1080 {
    width: 100%;
    padding-top: 24px;
  }



  hr.company_profile_vertical {
    margin: 0px auto 0px;
    height: 75px;
  }

  .company_profile_overview {
    margin: -30px auto 0;
    padding: 42px 0 16px;
  }

  .company_profile_main p.english {
    font-size: 20px;
    margin-top: 0px;
  }

  .company_profile_main h3 {
    font-size: 28px;
    margin-top: 0;
    margin-bottom: 0;
    padding-bottom: 40px;
    padding-top: 8px;
  }

  h3.Android {
    margin-top: 8px;
  }

  .company_profile_main p.explain {
    font-size: 20px;
    padding: 0 3%;
    padding-bottom: 0px;
    line-height: 36px;
    text-align: center;
  }

  .company_profile_main p.explain br {
    display: inline;
  }

  .company_profile_main p.explain2 {
    text-align: left;
    padding: 30px 3%;
  }

  .company_profile_main img.explain_img {
    padding: 0 3%;
  }

  .company_profile_main p.explain2 br {
    display: none;
  }

  .company_profile_main .padding20 {
    padding: 20px 0 10px !important;
  }

  .company_profile_main p.english_blue {
    font-size: 20px;
    padding-bottom: 10px;
  }

  .blue_line,
  .blue_line2,
  .blue_line3 {
    display: none;
  }

  .blue_lineA,
  .blue_lineA2,
  .blue_lineB,
  .blue_lineB2 {
    display: inline;
  }

  .blue_lineA,
  .blue_lineB {
    font-weight: bold;
    padding-left: 3%;
    padding-right: 3%;
    padding-top: 30px;
    text-align: center;
    font-size: 20px;
  }

  .blue_lineA2{
    background: linear-gradient(transparent 60%, rgba(0,169,157,0.2) 0%);
  }

  .shitani_yohaku2 p {
    text-align: center;
    font-size: 20px;
    font-weight: bold;
  }

  .padding10 {
    padding-bottom: 10px;
  }

  .padding_top40 {
    padding-top: 40px;
  }

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

  .padding_top24 {
    padding-top: 24px;
  }

  .blue_lineB2 {
    margin: -12px 8%;
  }

  .blue_lineA3,
  .blue_lineB3 {
    background: #00a99d;
    opacity: 0.2;
    padding: 8px 0;
  }

  .blue_lineA3 {
    margin: -12px 12%;
  }

  .blue_lineB3 {
    margin: -12px 15%;
  }

  .ueni_yohaku {
    display: none;
  }

  .company_profile_main .flex {
    width: 96%;
    display: flex;
    margin: auto;
    justify-content: space-evenly;
    margin-top: 55px;
    flex-wrap: wrap;
  }

  .company_profile_main .flex img {
    width: 100%;
    padding-bottom: 16px;
  }

  .company_profile_main .width45 a {
    width: 45.5%;
  }

  .company_profile_main .PC_gazo {
    display: none !important;
  }

  .company_profile_main .flex_wrap h4 {
    margin-top: 0px;
    padding-top: 0px !important;
  }

  .company_profile_main .margin_top20 {
    margin-top: 0 !important;
  }

  .company_profile_main .margin_top26 {
    margin-top: 0px;
  }

  .company_profile_main .flex img.width280 {
    width: 100%;
  }

  .company_profile_main .margin_top0 a {
    width: 45.5%;
  }

  .company_profile_main .flex .left {
    width: 100%;
    margin-top: 20px;
    height: auto;
  }

  .company_profile_main .flex_wrap h4::after {
    margin-bottom: 20px;
  }

  .company_profile_main .flex .right {
    width: 100%;
    height: auto;
  }

  .company_profile_main .flex img.right {
    padding-left: 18px;
    padding-right: 18px;
    padding-top: 18px;
    width: 100%;
    padding-bottom: 0;
    height: auto;
  }

  .company_profile_main .border3 {
    padding: 18px 0;
  }

  .company_profile_main .border3 a {
    width: 100%;
  }

  .company_profile_main h4 {
    text-align: center;
    width: 100%;
    margin-bottom: 23px;
  }

  .company_profile_main .flex_wrap h4::after {
    margin: auto;
  }

  .company_profile_main .flex_wrap p {
    text-align: left;
    font-size: 14px;
    padding: 0 18px;
    line-height: 26px;
  }

  .margin_top16nomi {
    /*margin-top: 16px !important;*/
  }

  .company_profile_main .flex_wrap {
    margin-top: 0;
  }

  .flex_wrap .border3 {
    margin-top: 16px;
  }


  .padding_left_right40 {
    margin: 0;
  }

  .pc_kieru {
    display: inline;
    opacity: 0;
  }

  img.pc_kieru:hover {
    opacity: 0 !important;
  }

  .shitani_yohaku2 {
    margin-bottom: 60px;
  }

  .company_profile_main .margin_40 {
    padding-left:3%;
    padding-right:3%;
    margin-left: 0;
    margin-right: 0;
  }

  .company_profile_main img.margin_40 {
    width: 50%;
  }

  .PC_gazo_block {
    display: none;
  }

  .SP_gazo_block {
    display: block;
    margin: 0 auto;
  }

  .blue_line {
    display: none;
  }

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

  .margin_bottom48 {
    margin-bottom: 48px !important;
  }

  .margin_top0sp {
    margin-top: 0 !important;
  }

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

  .company_profile_main .flex_wrap h4::after {
    margin-bottom: 20px;
  }

  .company_profile_main .flex .right {
    margin-top: 20px;
  }


  /*ドローン*/

  .company_profile_main .service .flex {
    width: 100%;
    display: block;
    padding: 0;
    padding-left: 3%;
    padding-right: 3%;
  }

  .company_profile_main .service .flex img {
    margin-bottom: 24px;
    display: block;
    width: 100%;
    /*  height: 180px; */
    padding-bottom: 0;
  }

  .company_profile_main .service h4 {
    margin: 0px 0 20px 0;
  }

  .company_profile_main .service h4:after {
    margin: 20px auto 0;
  }

  .company_profile_main .service p {
    font-size: 14px;
    line-height: 26px;
  }

  .topleft,
  .topright,
  .bottomleft,
  .bottomright {
    width: 100%;
    height: auto;
    padding: 18px;
    margin-bottom: 16px;
  }

  .about p br {
    display: inline;
  }

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

  .company_profile_main .about p.english {
    margin-top: 0px;
    margin-bottom: 0px;
    font-family: 'メイリオ', sans-serif;
  }

  .company_profile_main .about h3 {
    margin-bottom: 0px;
  }

  .padding_bottom16 {
    padding-bottom: 16px !important;
    margin-bottom: 0px !important;
  }

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

  .padding_top20sp {
    padding-top: 20px;
  }

}
