@charset "utf-8";
/*
Theme Name: Lightning Child
Theme URI:
Template: lightning
Description:
Author:
Tags:
Version: 0.0.0
*/

@import url('https://fonts.googleapis.com/css2?family=Anton&family=Cinzel:wght@400..900&family=Corinthia:wght@400;700&family=Montserrat:ital,wght@0,100..900;1,100..900&family=Noto+Sans+JP:wght@100..900&family=Oswald:wght@200..700&family=Outfit:wght@100..900&family=Questrial&family=Righteous&family=Zen+Kaku+Gothic+Antique&family=Zen+Old+Mincho&display=swap');

body{
  font-family: "Noto Sans JP", sans-serif;
}


h2{
  border:none;
  font-size:18px;
  font-weight:bold;
  position:relative;
}

h2 .alp{
  border:none;
  font-size:36px;
  display:block;
}

h2 .fixed_alp{
  position:absolute;
  right:0;
  top:0;
  font-size:113px;
  font-weight:bold;
  color:#f6f7f9;
}

h3.kon{
  border:none;
  font-size:24px;
  color:#FFF;
  background:#2470b3;
  line-height:1;
  padding:12px 20px;
}

h3.kon:after{
  border-bottom:2px solid #2470b3;
  width:100%;
  left:0;
  bottom:-7px;
}

h4.kon{
  font-size:36px;
  font-weight:bold;
  color:#2470b3;
}

.bt1{
  border-top:1px solid #9fa0a0;
  padding-top:10px;
}

.bb1{
  border-bottom:1px solid #d1cfcf;
}

.siteHeader_logo img{
  min-width:290px;
  fill:#f00;
}

.siteHeadContainer{
  padding:20px 20px 15px 20px;
}

.gMenu_outer{
  min-height:intial;
  min-height:auto;
}


.gMenu > li a{
  color:#2470b3;
}


.device-pc .gMenu>li a {
    padding-left: 2em;
    padding-right: 2em;
}


.gMenu li:last-child a{
  border-top:1px solid #2470b3;
  border-left:1px solid #2470b3;
  border-bottom:1px solid #2470b3;
  border-right:1px solid #2470b3;
  }

.gMenu>li:before{
  display:none;
}

.header_scrolled .navbar-header{
  margin-bottom:0;
}

.header_scrolled .siteHeader{
  position:fixed;
  z-index:1000;
  top:0;
  left:0;
}

.home.header_scrolled .siteHeader{
  background:#2470b3;
}

.home.header_scrolled .gMenu a{
}

.header_scrolled .gMenu_outer{
  position:static;
  width:initial;
  width:auto;
  clear:none;
  box-shadow:none;
  background:none;
}

.header_scrolled .gMenu_outer nav{
  width:initial;
  width:auto;
  display:table-cell;
  margin:0;
  padding:0;
}

.header_scrolled .gMenu>li{
  border-left:0px;
}

.header_scrolled .gMenu>li:last-child{
  border-right:0;
}


.siteFooter{
  background:#f6f7f9;
  border:none;
}

.siteFooter .widget_nav_menu ul > li > a{
  font-weight:bold;
  font-size:13px;
  color:#67656d;
}

.siteFooter .widget_nav_menu ul > li > ul > li > a{
  font-size:12px;
  font-weight:normal;
  color:#67656d;
  padding-left:0;
}

.siteFooter .widget_nav_menu ul > li > ul > li > a:before{
  content:"- ";
}

.siteFooter .widget_nav_menu ul li a{
  border-bottom:0;
}


.footerMenu li a{
  border:none;
}

.footerMenu li:last-child a{
  border:none;
}

#copyrightOuter .container{
  border-top:1px solid #e6e6e5;
}

.copySection{
  display:block;
  padding-top:10px;
}

.page-header_pageTitle, h1.page-header_pageTitle:first-child{
  font-size:18px;
  font-weight:bold;
}

.page-header_pageTitle span{
  display:block;
  color:#fff;
  font-size:40px;
  margin-bottom:5px;
}

.post-type-result .page-header_pageTitle span,
.single-result .page-header_pageTitle span{
  color:#fff;
}

.catch{
  font-size:50px;
  font-weight:bold;
  color:#2470b3;
  margin-bottom:30px;
}

/* home */
.home .siteHeader{
  position:fixed;
  background:none;
  box-shadow:none;
}

.home.admin-bar .siteHeader {
    top: 32px;
}

.home .siteContent{
  padding-top:0;
}

.home .gMenu a{
  color:#FFF;
}

.home .gMenu  li:last-child #menu-item-73 a{
  border-top:1px solid #FFF;
  border-left:1px solid #FFF;
  border-bottom:1px solid #FFF;
  border-right:1px solid #FFF;
  
}

.home h2{
  text-align:center;
}

.btn-more{
  color:#2470b3;
  font-style: italic;  
  position:relative;
  padding-left:50px;
  font-size:18px;
}

.btn-more:before{
  position:absolute;
  left:0;
  top: 50%;
  -webkit-transform: translateY(-50%); /* Safari用 */
  transform: translateY(-50%);
  content:"";
  background:#9fa0a0;
  height:2px;
  width:40px;
  
}

.btn-more2{
  color:#2470b3;
  position:relative;
  padding-left:50px;
  font-size:18px;
}


.topnews{
  padding-top:30px;
}

.topnews .newstitle{
  border-bottom:1px solid #ccc;
  margin-bottom:20px;
}


.topnews .title{
  font-size:36px;
}

.topnews .date{
  padding:0px 10px;
}

.topnews .categoryTag{
  padding:0px 10px;
}

.topnews .categoryTag span{
  background:#3f5d79;
  color:#fff;
  padding:2px 10px;
  border-radius:2px;
}

.topnews .d-flex{
  position:relative;
}

.topnews a{
  color:#101618;
}

.topnews .news_more{
  position:absolute;
  top: 50%;
  -webkit-transform: translateY(-50%); /* Safari用 */
  transform: translateY(-50%);
  right:0px;

  display:inline-block;
  padding:5px 40px;
  border:1px solid #cccccc;
  border-radius:20px;
}

.business {
  position:relative;
  margin-bottom:30px;
}

.business img{
  width:60%;
}

.business .container_outer{
  width:100%;
  position:absolute;
  left:0;
  top: 50%;
  -webkit-transform: translateY(-50%); /* Safari用 */
  transform: translateY(-50%);
}

.business h3{
  border:none;
  font-size:18px;
  font-weight:bold;
  margin-bottom:15px;  
}

.business h3 .alp{
  display:block;
  font-size:44px;
  color:#2470b3;
  margin-bottom:10px;    
}


.business h3:after{
  display:none;
}

.business .inner{
  background:rgba(255,255,255,0.7);
  padding:30px 30px;
}

.corporatebtn{
  display:block;
  position:relative;
}

.corporatebtn .corporate_inner{
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%); /* Safari用 */
  transform: translate(-50%, -50%);
  color:#FFF;
}

.corporatebtn .corporate_inner .title_alp{
  font-size:24px;
  font-weight:bold;
}

.corporatebtn .corporate_inner .title_jp{
  font-size:12px;
}


.blankline{
  display:inline-block;
  width:1px;
  height:185px;
  background:#9fa0a0;
}

.font12{
  font-size:12px;
}

.lh2{
  line-height:2;
}

#topcorporate .panel-grid-cell{
  position:relative;
}

#topcorporate .widget_sow-image{
  position:absolute;
  right:50%;
  bottom:-200px;
  z-index:-10;
}

#topcorporate .widget_sow-image img{
  max-width:initial;
  max-width:auto;
}

.partner_line{
  border-right:1px solid #9fa0a0;
}

.topresults{
}

.topresults .categoryTag{
  background:#FFF !important;
  border:1px solid #ccc !important;
  color:#101618;
  font-size: .8rem;
    line-height: 1;
    padding: 4px 1em 2px;

}

.topresulttitle{
  font-weight:bold;
  color:#000;
}

/* top animation */
.timeline_txt {
    -webkit-text-fill-color: transparent;
    background: -webkit-linear-gradient(left,#000 0,#000 25%,rgba(211,211,211,1) 25%,rgba(211,211,211,1) 75%,transparent 75%,transparent 100%);
    background: linear-gradient(to right,#000 0,#000 25%,rgba(211,211,211,1) 25%,rgba(211,211,211,1) 75%,transparent 75%,transparent 100%);
    background-clip: text;
    -webkit-background-clip: text;
    background-size: 400% 100%;
    background-position: 100% 0;
}
#section1{
  position:relative;
  padding:100px 0px;
  margin-bottom:80px;
}

#section1 > .timeline_block_left{
  position:absolute;
  right:0;
  top:0;
  width:auto;
  height:100%;
  z-index:-1;
}


.spread {
  position: relative;
  overflow: visible;
}

.spread:after {
    content: "";
    display: block;
    width: 100%;
    padding-top: 38.38772%;
}

.spread:after{
    content: "";
    display: block;
    width: 100%;
    padding-top: 400/1042*100+%;
}
.spread__inner{
  position: absolute;
  top: 50%;
  right: 0;
  width: 100%;
  height: 30%;
  transform: translateY(-50%);
}
.spread__img{
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
  font-family: 'object-fit: cover; object-position: 50% 50%;';
}

.spread_left .spread__inner{
  right: auto;
  left: auto;
}

.spread_left .spread__img{
  right: auto;
  left: auto;
}


/* about */

#abouttop{
  background-image:url("/wp-content/uploads/2021/10/back_sss.png");
  background-repeat:no-repeat;
  background-position:100% 0%;
}

table.companytab{
  border-top:0px;
}

table.companytab tr th{
  border-bottom:1px solid #231815;
  font-size:16px;
  font-weight:bold;
}

table.companytab tr td{
  border-bottom:1px solid #d1cfcf;
  font-size:16px;
}

h3.sidetitle{
  font-size:16px;
  border:0;
  padding:0;
  padding-left:60px;
}

h3.sidetitle:after{
  left:0;
  bottom:auto;
  top: 50%;
  -webkit-transform: translateY(-50%); /* Safari用 */
  transform: translateY(-50%);
  width:45px;
  border-bottom: 1px solid #231815;
}


ul.sidelist{
  list-style:none;
  padding-left:0;
}

ul.sidelist li{
  border-bottom:1px solid #231815;
  text-align:center;
}

ul.sidelist li a{
  font-size:12px;
  color:#000;
}





.post-type-archive .entry-meta_items_term,
.post-type-result .entry-meta_items_term,
.single-result .entry-meta_items_term{
  float:none;
}
.post-type-archive .entry-meta_items_term a,
.post-type-result .entry-meta_items_term a,
.single-result .entry-meta_items_term a{
  background:none !important;
  border:1px solid #ccc !important;
  color:#101618;
}

.swiper {
  width: 100%;
  height: 100%;
  padding-bottom:20px !important;
  margin-bottom:60px;
}

.swiper-slide {
  text-align: center;
  font-size: 18px;
  background: #fff;

  /* Center slide text vertically */
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
}

.swiper-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.swiper-slide {
  width: 60%;
}



.swiper-slide {
  width: 80%;
}

.swiper-horizontal > .swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-horizontal, .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite, .swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{
  top:auto;
  bottom:0;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{
  background:#231815;
}


.swiper-horizontal>.swiper-scrollbar{
  left:0;
  width:100%;
  height:2px;
}

.swiper-scrollbar-drag{
  background:#231815;
}


.result_tab{
  margin-bottom:60px;
}

.result_tab tr th,
.result_tab tr td{
  color:#101618;
  font-size:16px;
}

.result_tab tr th{
  background:#f7f9f9;
}

#result_map{
  height:400px;
  width:100%;
  margin-bottom:40px;
}

#result_map_view{
  height:400px;
  width:100%;
}

.result_title a{
  font-weight:bold;
  font-size:16px;
  color:#101618;
}


.submenu_title{
  text-align:center;
  border-bottom:1px solid #dcdddd;
}

.submenu_title a{
  color:#000;
/*
  color:#c9caca;
  font-weight:bold;
  font-size:14px;
*/
}

ul.submenu{
  list-style:none;
  padding-left:0;
}

ul.submenu li{
  display:inline-block;
}

ul.submenu a{
  display:inline-block;
  border:1px solid #231815;
  padding:2px 10px;
  color:#231815;
  transition:.3s;
}

ul.submenu a:hover{
  border:1px solid #2470b3;
  color:#fff;
  background:#2470b3;
  text-decoration:none;
  transition:.3s;
}

ul.submenu li.current a{
  border:1px solid #2470b3;
  color:#fff;
  background:#2470b3;
}



.tax-result_category .archive-header_title{
  display:none;
}


#result_type #result_category_area{
  display:none;
}

#result_area #result_category_submenu{
  display:none;
}

table.contact{
  margin-bottom:30px;
}

table.contact tr th{
  background:#f5fbfe;
  border-bottom:1px solid #231815;
}

table.contact tr td{
  border-bottom:1px solid #d1cfcf;
}

table.contact input{
  width:initial;
  width:auto;
  display:inline-block;
}

table.contact .required{
  color:#e60012;
  margin-left:10px;
  display:inline-block;
}

table.contact .blue{
  color:#1d2088;
}

/* recruit */
.recruit_text{
  background-position:100% 50%;
}
.entry-loading {
	text-align: center;
	margin: 3em 0;
	font-weight: 700;
	width: 100%;
	display: none;
}

.entry-loading.is-show {
	display: block;
}

/* sdgs */
.post-name-sdgs h2{
  font-size:36px;
  margin-bottom:0;
}

.post-name-sdgs h3{
  border:none;
  background:#0c3768;
  line-height:1;
  padding:10px 20px;
  color:#FFF;
}

.post-name-sdgs h3:after{
  width:100%;
  bottom:-8px;
  left:0;
  border-bottom:3px solid #0c3768;
}

.post-name-sdgs h4{
  border:1px solid #4ec0ef;
  display:flex;
}

.post-name-sdgs h4 .head{
  background:#4ec0ef;
  padding:10px 0px;
  width:120px;
  text-align:center;
  color:#FFF;
  font-size:83px;
}

.post-name-sdgs h4 .tail{
    display: flex; /* 子要素をflexboxで揃える */
    flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
    justify-content: center; /* 子要素をflexboxにより中央に配置する */
    align-items: center;  /* 子要素をflexboxにより中央に配置する */
    padding-left:20px;
    color:#4ec0ef;
    line-height:1.5;
    font-size:24px;
    font-weight:bold;
}


.post-name-sdgs .catch{
  font-size:24px;
}

.sdgs_goal{
  border-bottom:1px solid #d1cfcf;
  font-weight:bold;
  padding-bottom:10px;
  margin-bottom:20px;
}

#sdgs6 .title{
  color:#00a6d9;
}

#sdgs7 .title{
  color:#fabd00;
}

#sdgs12 .title{
  color:#d39200;
}

#sdgs13 .title{
  color:#427935;
}

#sdgs14 .title{
  color:#0075ba;
}

#sdgs15 .title{
  color:#28a838;
}


.sdgs .title{
  font-weight:bold;
}

.sdgs .sdgs_inner{
  display:flex;
}

.sdgs .sdgs_inner .sdgs_right{
  padding-left:30px;
}

.sdgs .subtitle{
  font-size:18px;
  font-weight:bold;
}

.sdgs .sdgs_right ul{
  font-size:16px;
  padding-left:0;
}

.sdgs .sdgs_right ul li{
  list-style:none;
  margin-bottom:0;
  
}

.sdgs .sdgs_left ul li{
  list-style:none;
  margin-bottom:0;
  
}



.sdgs_common .subtitle{
  color:#00a6d9;
}
.sdgs_common ul,#sdgs11 ul{
  font-size:16px;
  padding-left:0;
}

.sdgs_common ul li{
  list-style:none;
  margin-bottom:0;
}

.sdgs ul li:before{
  content:"▷▷";
  margin-right:10px;
  
}

#sdgs7 .subtitle{
  color:#f1be1d;
}

#sdgs12 .subtitle{
  color:#b68a2d;
}

#sdgs13 .subtitle{
  color:#3d7a44;
}

#sdgs14 .subtitle{
  color:#1b8dca;
}

#sdgs15 .subtitle{
  color:#59b431;
}

#sdgs1 .title .col-md-1{
  color:#d62a39;
}

#sdgs1 .subtitle{
  color:#d62a39;
}

#sdgs2 .title .col-md-1{
  color:#d7a600;
}

#sdgs6 .subtitle{
  color:#2fb2d4;
}

#sdgs17 .subtitle{
  color:#174667;
}
#sdgs17 .title .col-md-1{
  color:#076395;
}

#sdgs3 .subtitle{
  color:#4a973b;
}
#sdgs3 .title .col-md-1{
  color:#4a973b;
}

#sdgs4 .subtitle{
  color:#ba1d2d;
}
#sdgs4 .title .col-md-1{
  color:#ba1d2d;
}

#sdgs5 .subtitle{
  color:#e83f24;
}
#sdgs5 .title .col-md-1{
  color:#e83f24;
}

#sdgs8 .subtitle{
  color:#9a1d3f;
}
#sdgs8 .title .col-md-1{
  color:#9a1d3f;
}

#sdgs9 .subtitle{
  color:#ec672c;
}
#sdgs9 .title .col-md-1{
  color:#ec672c;
}

#sdgs10 .subtitle{
  color:#ce1c62;
}
#sdgs10 .title .col-md-1{
  color:#ce1c62;
}

#sdgs11 .subtitle{
  color:#f39828;
}
#sdgs11 .title .col-md-1{
  color:#f39828;
}

#sdgs16 .subtitle{
  color:#076395;
}
#sdgs16 .title .col-md-1{
  color:#076395;
}


@media (max-width: 769px){
  .business{
    margin-bottom:100px;
  }
  .sdgs .sdgs_inner .sdgs_left{
    width:25%;
  }
  .sdgs .sdgs_inner .sdgs_right{
    width:75%;
  }
}

@media (max-width: 415px){
  .siteHeader_logo img{
    min-width:initial;
    min-width:auto;
    width:100%;
  }

  table.companytab,
  table.companytab tbody,
  table.companytab tbody tr,
  table.companytab tbody tr th,
  table.companytab tbody tr td{
    display:block;
    width:100%;
  }

  table.contact,
  table.contact tbody,
  table.contact tbody tr,
  table.contact tbody tr th,
  table.contact tbody tr td{
    display:block;
    width:100%;
  }

  h4.kon{
    font-size:22px;
  }

  .post-name-sdgs h4 .tail{
    font-size:18px;
  }

   .sdgs .sdgs_inner{
    display:block;
  }

  .sdgs .sdgs_inner .sdgs_left{
    width:100%;
    text-align:center;
    margin-bottom:30px;
  }
  .sdgs .sdgs_inner .sdgs_right{
    width:100%;
    padding-left:0px;
  }

  .sdgs .title{
    font-size:18px;
  }

  .catch{
    font-size:22px;
  }

  h2 .fixed_alp{
    display:block;
    position:static;
    font-size:50px;
  }

  .topnews .d-flex{
    display:block !important;
  }
  
  .topnews .news_more{
    /*position:static;
    transform:none;*/
  }

.topnews .date {
    padding: 0px 0px;
    display: inline-block;
}
  .topnews .categoryTag{
    margin-bottom:5px;
    display: inline-block;
    font-size:12px;   
  }



  .topnews a {
    display: block;
  }

  #section1 > .timeline_block_left{
    display:none;
  }

  .business{
    min-height:300px;
  }

  .business img{
    height:70vh;
  }

  .business .container_outer{
    top:10%;
    position:static;
  }

  .business h3 .alp{
    font-size:24px;
  }

  .siteFooter .widget{
    margin-bottom:0;
  }

  h2 .alp {
    font-size: 28px;
  }
.page-header_pageTitle, h1.page-header_pageTitle:first-child {
    font-size: 16px;
}


.page-header_pageTitle span {
    font-size: 30px;
}

.textwidget p br {
   display:none;
}

.btn-more {

    font-size: 14px;
    padding-left: 30px;
}

.btn-more:before {
    width: 20px;
}

.media .media-body .media-heading {
    font-size: 18px;

}


h3.kon {
    font-size: 16px;
}


table.companytab tr th,table.companytab tr td {
    font-size: 14px;
}

td, th {
    padding: 0.7em;
}

ul.submenu a {
    font-size: 12px!important;
}



h1.entry-title {
    font-size: 18px;
}

.result_tab tr th,.result_tab tr td {
    font-size: 14px;
}


.swiper-button-next, .swiper-button-prev {
    width: calc(var(--swiper-navigation-size)/ 44 * 10);
    margin-top: calc(0px - (var(--swiper-navigation-size)/1.5));
}

.swiper-button-next:after, .swiper-button-prev:after {
    font-size: 30px;

}

.postNextPrev .card {
    margin-bottom: 10px;
}


.post-name-sdgs h3 {
    font-size: 16px;
}

.post-name-sdgs .catch {
    font-size: 18px;
    line-height: 1.4;
}


.post-name-sdgs h4 .tail,.sdgs_goal {
    font-size: 14px;
}


.post-name-sdgs h4 .head {
width: 60px;
font-size: 40px;
}

.sdgs_common ul li ,.sdgs .sdgs_right ul li,.sdgs .sdgs_left ul li{
    font-size: 14px;
}

.sdgs .subtitle,.sdgs .title {
    font-size: 16px;
}



.sdgs img, #panel-27-3-0-3 img {
    max-width: 30%;
}


.sdgs .subtitle,.sdgs .sdgs_left ul li {
text-align: left;
}




}

.swiper-slide{
  height:initial;
  height:auto;
}

.swiper-slide > img {
   object-fit: cover; /* IE: not support */
   width: 100%;
   height: 100%;
}

.resultthumb{
  max-height:220px;
}


.resultthumb a {
  display:block;
  max-height:220px;
}

.resultthumb a img {
  object-fit: cover; /* この一行を追加するだけでOK! */
  max-height:220px;
}


/* member */
h2.member_title{
  text-align:center;
  font-size:28px;
  font-weight:normal;
  position:relative;
  display:inline-block;
  padding-left:55px;
  padding-right:55px;
  margin-left:auto;
  margin-right:auto;
  margin:0px auto;
}

h2.member_title:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0px;
    display: inline-block;
    width: 45px;
    height: 1px;
    background-color: #000000;
}

h2.member_title:after {
    content: '';
    position: absolute;
    top: 50%;
    right: 0px;
    width: 45px;
    height: 1px;
    background-color: #000000;
}



h3.member_sub{
  font-weight:bold;
  font-size:1.1rem;
  border:none;
  margin-bottom:0;
}

h3.member_sub:after{
  display:none;
}

table.member_tab{
  border-top:1px solid #252525;
  border-left:1px solid #252525;
}

table.member_tab th{
  background:#f5f5f5;
}

table.member_tab th,
table.member_tab td{
  font-size:16px;
  border-right:1px solid #252525;
  border-bottom:1px solid #252525;
}

table.member_tab i{
  margin-right:5px;
}

