/*ーーーーーーーーーーーーーーーーーーーーーーーーーー
reset css
ーーーーーーーーーーーーーーーーーーーーーーーーーー*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, var, b, i,
dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure,  footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}/*supはキャンセル解除*/
html {font-size:62.5%}
body {line-height:1}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {display:block}
nav ul, ul, li{list-style:none}
.head_navi_PC nav ul li:not(:first-child){
  border-left:1px solid #aaa;                 
  padding-left:16px;                
}
blockquote, q {quotes:none}
blockquote:before, blockquote:after,q:before, q:after {content:'';content:none}
a {margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent;color: #333;text-decoration: none}
ins {background-color:#ff9;color:#000;text-decoration:none}
mark {background-color:#ff9;color:#000; font-style:italic;font-weight:bold}
del {text-decoration: line-through}
abbr[title], dfn[title] {border-bottom:1px dotted;cursor:help}
table {border-collapse:collapse;border-spacing:0}
hr {display:block;height:1px;border:0;border-top:1px solid #cccccc;margin:1em 0;padding:0}
input, select {vertical-align:middle}
body{font-family: 'Noto Sans JP',"游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
background-color: #FAFDFF;}
body:lang(en){font-family: Helvetica, Verdana, Arial, sans-serif}

.mb10{margin-bottom:10px}.mb20{margin-bottom:20px}.mb30{margin-bottom:30px}.mb40{margin-bottom:40px}.mb50{margin-bottom:50px}.mb60{margin-bottom:60px}.mb70{margin-bottom:70px}.mb80{margin-bottom:80px}.mb90{margin-bottom:90px}.mb100{margin-bottom:100px}
.pb10{padding-bottom:10px}.pb20{padding-bottom:20px}.pb30{padding-bottom:30px}.pb40{padding-bottom:40px}.pb50{padding-bottom:50px}.pb60{padding-bottom:60px}.pb70{padding-bottom:70px}.pb80{padding-bottom:80px}.pb90{padding-bottom:90px}.pb100{padding-bottom:100px}
.mt10{margin-top:10px}.mt20{margin-top:20px}.mt30{margin-top:30px}.mt40{margin-top:40px;margin-bottom:60px;}.mt50{margin-top:50px}.mt60{margin-top:60px}.mt70{margin-top:70px}.mt80{margin-top:80px}.mt90{margin-top:90px}.mt100{margin-top:100px}
.pt10{padding-top:10px}.pt20{padding-top:20px}.pt30{padding-top:30px}.pt40{padding-top:40px}.pt50{padding-top:50px}.pt60{padding-top:60px}.pt70{padding-top:70px}.pt80{padding-top:80px}.pt90{padding-top:90px}.pt100{padding-top:100px}
.indent1{text-indent:-1em;padding-left:1em;margin-bottom: 15px;}.indent2{text-indent:-1em;padding-left:2em;margin-bottom: 20px;}.kome{font-size: 1.3rem;text-indent:-1em;padding-left:1em;}
.indent3{padding-left: 1em;}
.bold{font-weight: bold;}

main {display:flex;flex-direction: column;min-height:calc(100vh - 247px);}/*footerをブラウザ最下部に固定*/
main{margin-top: 110px}/*ヘッダー固定分の高さ*/

/*ーーーーーーーーーーーーーーーーーーーーーーーーーー
style
ーーーーーーーーーーーーーーーーーーーーーーーーーー*/
/*グローバルナビ*/
/*header{background-color: #FFF;border-bottom:solid 1px #CECECE;position:fixed;height:110px;width:100%;top:0;z-index:100;transition:0.3s}
header .head_container {height:110px;transition:0.3s;width: 95vw;max-width: 1200px; margin: 0 auto;display: flex;justify-content: space-between;align-items: center;}
header .head_container .logo {display:inline-block;transition:0.3s;text-align: center;position: relative;}
header .head_container .logo a img{transition:0.3s;	-webkit-backface-visibility: hidden;height: 60px;z-index: 10;}
header .head_container .head_navi_PC{width:100%;text-align:right;height: auto;}
nav {display: flex;z-index: 5;margin-top: 0;align-items: center;transition:0.3s}
nav ul li{display:inline-block;text-align:right;font-size:1.6rem;font-weight:bold;margin: 0 0 0 20px}
nav ul li a{transition:0.5s;position:relative}
nav ul li a:hover{color:#444285;opacity:0.8}
nav ul li a::after{position:absolute;bottom:-2px;left:0;content:"";width:100%;height:2px;background-color:#444285;visibility:hidden;transition:0.5s;opacity:0}
nav ul li a:hover::after{bottom:-6px;visibility:visible;opacity:0.8}
nav ul{text-align:right}*/
html {
  scroll-behavior: smooth;
}
header{
  background-color: #FFF;position:fixed;height:110px;width:100%;top:0;z-index:100;box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, 0.1);
}
header .head_container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  height: 110px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 5px;
}
.logo {
  display: block;
  font-size: 30px;
  font-weight: bold;
}
.footer_container .logo{font-size: 20px;}
.footer_container .logo a{color: #fff;}
header .head_container .logo a{color: #444285;}
.logo:hover {
  opacity: 0.7;
}
header .head_container .logo a img{
  width: 360px;
}
header .head_navi_SP{
  display:none;
}
header .head_container .head_navi_PC ul{
  display: flex;
}

header .head_container .head_navi_PC ul li{
  font-size: 16px;
  margin-left: 25px;
  white-space: nowrap;
  flex-shrink: 0;
}
header .head_container .head_navi_PC ul li a{transition:0.5s;position:relative}
header .head_container .head_navi_PC ul li a:hover,.p-header-menu__nav ul li a:hover{opacity:0.7}
/* header .head_container .head_navi_PC ul li a::after{position:absolute;bottom:-2px;left:0;content:"";width:100%;height:2px;background-color:#444088;visibility:hidden;transition:0.5s;opacity:0}
header .head_container .head_navi_PC ul li a:hover::after{bottom:-6px;visibility:visible;opacity:0.8} */
sub {
  vertical-align: sub;
  font-size: smaller;
}
p sub {
  vertical-align: sub !important;
  font-size: 0.8em !important;
}
/*SPハンバーガーメニュー*/
.p-header-menu__button{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;position:absolute;top:0;right:0;width:74px;height:74px;border:none;background:none;cursor:pointer}
.p-header-menu__button i{display:block;width:35px;height:3px;background-color:#333333}
.p-header-menu__button i+i{margin-top:9px}
.is-menu-active .p-header-menu__button i{position:absolute;top:50%;left:50%;-webkit-transition:-webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1);transition:-webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1);transition:transform 1s cubic-bezier(0.19, 1, 0.22, 1);transition:transform 1s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1)}
.is-menu-active .p-header-menu__button i:nth-child(1){-webkit-transform:rotate(45deg);transform:rotate(45deg);margin-top:-4px;margin-left:-16px}
.is-menu-active .p-header-menu__button i:nth-child(3){-webkit-transform:rotate(-45deg);transform:rotate(-45deg);margin-top:-4px;margin-left:-16px}
.is-menu-active .p-header-menu__button i:nth-child(2){display:none}
/*SPメニューパネル*/
body.is-menu-active{height:100%;overflow:hidden}/*メニューオープン時固定*/
.p-header-menu__panel{position:absolute;top:75px;left:0;z-index:100;width:100%;height:calc( 100vh - 60px);overflow:auto;background-color: rgba(255, 255, 255, 0.8);pointer-events:none;opacity:0;-webkit-transition:opacity 1s cubic-bezier(0.19, 1, 0.22, 1);transition:opacity 1s cubic-bezier(0.19, 1, 0.22, 1)}
.is-menu-active .p-header-menu__panel{pointer-events:auto;opacity:1}
/*SPメニュー*/
.p-header-menu__nav{margin: 0 auto;width:100%;background-color: #FAFDFF;border-top: solid 1px #ddd;padding-bottom: 50px;box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, 0.1);}
.p-header-menu__nav ul li a{display:block;font-size:2rem;line-height:1.8;padding:15px 5%;color: #444285;}
.p-header-menu__nav--close a{display:block;padding:22px 0;background-color:#333333;color:#fff;font-size:16px;text-align:center}
.p-header-menu__nav--close .fa{margin-left:8px}


/*レスポンシブ*/
.sp-only{display: none;}
@media screen and (max-width: 850px) {
  .sp-only{
    display: block;
  }
}
.pc-only{display: block;}
@media screen and (max-width: 850px) {
  .pc-only{
    display: none;
  }
}

/* 共通 */
article{margin-bottom: 100px;}
article p{font-size: 1.6rem;line-height:2;color:#333333;margin: 0 0 30px 0}
article ul{font-size: 1.6rem;line-height:1;color:#333333}
article h1{font-size: 4.2rem;color: #444285;
    text-align: center;}
article h2{font-size: 3.6rem;line-height:1.5}
article h3{font-size: 2.4rem;margin: 0 0 20px 0;line-height:1.5;color: #444285;}
table, tr, th, td {font-size:1.6rem;text-align:left}
table{width:100%;}
.section_title_inner, .section_title-biz_inner, .head_container, .footer_container, .main_visual_container, .container, .sp_maincopy_container{margin: 0 auto;width:90%;max-width: 980px}
.container {padding:45px 0px}
/* .section_sub {margin: 0 auto 100px;width:100%;max-width:1000px;padding: 0px 10px} */
.section_sub {margin: 0 auto 100px;max-width:1000px;padding: 0px 10px}
.section_sub .business_main_img{width: 100%;margin-bottom: 40px;}
.section_sub-biz {margin: 0 auto;width:90%;max-width: 820px;padding-top: 50px;padding-bottom: 0px}
.section_sub-biz .business_main_img{width: 100%;margin-bottom: 20px;}
.section_sub-biz2 {margin: 0 auto;margin-bottom: 164px;width:90%;max-width: 820px;padding: 0px 0px}
.section_sub-biz2 .business_main_img{width: 100%;margin-bottom: 40px;}
.section_title{background-size:cover;background-position: center;}
.main_visual{margin-bottom: 50px;}
.section_title_inner{height:160px;position:relative;}
#business .section_title{
  margin-bottom: 30px;
  }
.section_title_inner h1{color: #FFFFFF;position:relative;z-index:10;padding-top:55px}
/* .section_title_sub{background-color:#444285;} */
.section_title_sub_inner{margin:0 auto;width:100%;max-width:1000px;color:#FFFFFF;}
.section_title_sub_inner h1{padding:35px 5px 0;color: #444285;text-align:start;}
.section_title_sub_inner h1 span{padding-bottom: 8px;font-size: 16px;display: block;font-weight: normal;}

.section_title-biz-en{height:200px;background-size:cover;background-position: center;}

.section_title-biz{height:280px;background-size:cover;background-position: center;}
.section_title-biz_inner{height:280px;position:relative;}
.sp-br {
  display: none;
}
#business .section_title_inner_harf::before{content:"";background-color:rgba(0,0,0,0.6);background-image:url("/img/back_business.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;position:absolute;height:160px;width:100%;right:50%;}

 #company .section_title_inner_harf::before{content:"";background-color:rgba(0,0,0,0.6);background-image:url("/img/back_company.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;position:absolute;height:160px;width:100%;right:50%;}
.section_title-biz_inner h1{color: #FFFFFF;position:relative;z-index:10;padding-top:55px}
.section_title-biz_inner h1:lang(en){color: #FFFFFF;position:relative;z-index:10;padding-top:50px}
.section_title-biz_inner ul {position:relative;z-index:10;padding-top:40px;}
.section_title-biz_inner ul::before{content:"";background-color: #FFFFFF;position:absolute;height:1px;width:30px;left:0;top:20px;}
.section_title-biz_inner ul li{position:relative;display:inline-block;color:#FFFFFF;margin-right: 10px;}
.section_title-biz_inner ul li a{font-size:1.3rem;color:#FFFFFF;display:inline-block;transition: 0.5s}
.section_title-biz_inner ul li a:lang(en){line-height: 1.7;font-size:1.3rem;color:#FFFFFF;display:inline-block;transition: 0.5s;}
.section_title-biz_inner ul li a:hover{opacity: 0.7;}
.section_title-biz_sub{background-color:#333;}
.section_title-biz_sub_inner{margin:0 auto;width:90%;max-width:980px;color:#FFFFFF;}
.section_title-biz_sub_inner h1{padding:35px 0;}
.section_title-biz_sub_inner h1 span{padding-bottom: 8px;font-size: 16px;display: block;font-weight: normal;}

#contents{margin-bottom:90px;}
#contents .section_sub h2{text-align: start;}
.img_wrapper img{text-align: center;
    max-width: 100%;
    height: auto;
    display: block;}
#news,#business{scroll-margin-top: 144px;}
#company{scroll-margin-top: 74px;}
.sec-main{margin: 0 auto;max-width: 1000px;padding: 0 10px;}
#news{padding-top: 20px;}
.main_visual {width:100%;height:0;padding-top: calc(586/ 1280 * 100%); /* calc(画像高さ ÷ 画像横幅 × 100%) */position: relative;-webkit-backface-visibility: hidden;background: url(/img/keyvisual.png?v2) center bottom / cover no-repeat;}
.main_visual h1{position: absolute;
  top: 44%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  font-size: 6rem;
  font-weight: bold;
  line-height: 1.5;
  z-index: 10;
width: 100%;
text-align: center;}
.main_visual .tagline{position: absolute;
  top: 44%;
  left: 5%;
  transform: translate(-50%, -50%);
  z-index: 10;
width: 13%;}
.main_visual .tagline img{height: auto;display: block;width: 100%;}
.bg-video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  transform: translate(-50%, -50%);
  z-index: 0;
  object-fit: cover;
}
.sp_maincopy{background-color:#333333;width:100%;}
.sp_maincopy_container h1{font-size:4rem;line-height:1.2;color:#FFFFFF;font-weight:bold;padding:20px 0}

/*ニュース*/
#news section h2, #company section h2, #contents section h2{color:#444285;text-align:center;font-size:3.2rem;font-weight:normal;margin: 0 0 35px 0}
#news .news_topics {margin: 0 auto 15px;max-width: 800px;}
#news dl {display: table-row;color: #333333;margin: 0 0 25px 0;}
#news dl dt {display: table-cell;font-size:1.6rem;margin: 0 0 10px 0;vertical-align:top;line-height:1.5;width: 250px}
#news .news_date{display: table-cell;font-size:1.6rem;font-weight:bold;margin: 0 0 10px 0;vertical-align:top;line-height:1.5;width: 150px}
#news dl dd {display: table-cell;font-size:1.6rem;line-height:1.5;padding-left: 20px;}
#news dl dt span,.category2_Business,.category1_news{display: inline-block;font-size:1.3rem;font-weight: normal;padding:2px 0px;margin:0 0 0 30px;width:100px;text-align: center;}
#news .category1_news{color: #74A658;border: solid 1px #74A658;}
#news .category2_Business,.category2_Business{color: #444285;border: solid 1px #444285;}
#news .topocs_blue{background-color:#605f99;color: #fff;}
#news .topocs_black{background-color:#333333;color: #FFF}
#news dl dd a:hover{opacity:0.7;text-decoration:underline;}
#news section h2.topics_h2{color:#000000;text-align:left;font-size:34px;font-weight:normal;margin: 0 0 5px 0}
#news .topics_category-name{color:#605F99;font-size:18px;margin: 0 0 3px 0;}
#news .section_sub{width: 90%;}
#news .news-flex{display: flex;}
#news figure{text-align: right;
    margin-bottom: 150px;
    padding-right: 5px;}

/* NEWS一覧/お知らせ一覧 */
ul.newsList li {width: 100%; font-size: 16px; color: #000000; padding-bottom: 25px; vertical-align: baseline; display: flex;justify-content: flex-start;align-items: center;}
ul.newsList li:last-of-type{padding-bottom: 40px;}
span.top-news-date {width: 120px;font-size: 1.5rem;font-weight: bold;}
span.cate { width: 105px;padding: 2px 0;text-align: center;font-size: 11px;letter-spacing: -0.8px;color: #fff;background-color: #6593BA;margin-left: 1%;margin-right: 1%;line-height: 1.5; }
span.cate2 {width: 105px;padding: 2px 0;text-align: center;font-size: 11px;letter-spacing: -0.8px;color: #fff;background-color: #444088;margin-left: 1%;margin-right: 1%;line-height: 1.5; }
p.titleText { width: 75%;line-height: 1.8;float: left; display: block; margin: 0;}
.titleText_news{padding-left: 10px;}
p.titleText a {color: #000000;text-decoration: none;}
p.titleText a:hover { opacity: 0.7;text-decoration: underline;}
.clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden;} 
.clearfix { display: inline-table;} 
/* Hides from IE-mac \*/ 
* html .clearfix { height: 1%;} 
.clearfix { display: block;}
#news .news_title{text-align: start;}
#news img{margin-bottom: 150px;max-width: 1000px;width: 100%;padding: 0 5px;}

/*会社情報*/
#company{background-color: #fff;padding-bottom: 80px;margin-bottom: 0;padding-top: 150px;}
#company .section_title{margin-bottom: 45px;}
#company th, #company td {padding:20px 0 25px 0;}
#company td{line-height:1.7;}
#company td ul li{line-height:1.5;margin:0 0 15px 0;text-indent:-2em;padding-left:2em}
#company th{width:100px;line-height: 1.5}
.company_date{width: 50%;}
.company_map{width: 45%;}
.tbl{display: table;width: 100%}
.tbl_row{display: table-row;}
.tbl_cell_th{display: table-cell;width: 280px}
.tbl_cell_td{display: table-cell;}
@media screen and (max-width: 480px) {
  .tbl_cell_th{display: table-cell;width: 150px}
}
#company #corpolate .link_under {text-decoration:underline}
#company #corpolate .link_under:hover{opacity: 0.7}
#company #group  {margin-top:-54px;padding-top:104px}/*アンカーリンク調整*/
#company #group .group_img img{width:100%;max-width:686px}
#company #group .group_img{text-align:center}
#map{padding-top:200px}/*アンカーリンク調整*/
#map{height:525px;width:100%;position:relative;z-index:0}
#map iframe{width:100%;height:365px;position:relative;z-index: 0}
#company .map_box{width: 80%;box-shadow: 0px 0px 10px 5px rgba(0,0,0,0.1);padding:15px;margin:-130px auto 0 10px;position:relative;z-index:10;background-color:#FFFFFF}
.conpany_name{font-size:1.6rem;font-weight: bold;margin-bottom: 10px;}
#company .company_flex{display: flex;max-width: 1000px;margin: 0 auto;justify-content: space-between;padding: 0 50px;}

/*事業案内*/
#business {margin-bottom: 100px;}
#business #planning_research{margin-top:-54px;padding-top:104px;}/*アンカーリンク調整*/
#business #technology_promotion{margin-top:-54px;padding-top:104px;}/*アンカーリンク調整*/
#business .section_title-biz{background-image: url(/common/img/business_title.jpg)}
#business .section_title-biz-en{background-image: url(/common/img/business_title.jpg)}
#business .bggray {background-color: #F5F5F5;padding-bottom: 100px;padding-top: 25px}
#business section h2 {color: #444088;text-align: center;font-size: 3.2rem;margin: 0 0 20px 0;line-height:1;font-weight: normal;}
#business section h2::before {margin-right:2rem}
#business section h2::after {margin-left:2rem}
#business section .h2_sub {color:#444285;text-align:center;font-size:1.8rem;display:block;font-weight:normal;margin:10px 0 30px 0;font-family: "Helvetica Neue" , Helvetica , Arial , Verdana , sans-serif;}
#business section .business_white{background-color:#FFFFFF;margin:30px auto;padding:30px 20px;width:100%;max-width:820px;box-sizing:border-box}
#business section .business_white p:last-child {margin-bottom:0}
.mccs{display: flex;max-width: 845px;padding: 20px;box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, 0.1);
    background-color: #FFFFFF;
    position: relative;
    z-index: 10;
    margin: -80px auto 0;flex-direction: row-reverse;width: 80%;}
.mccs-back{background-image: url(/common/img/boso.png);width: 100%;
    height: 315px;
    background-size: cover;
    background-repeat: no-repeat;max-width: 1200px;
    margin: 0 auto;}
.mccs p{padding: 15px 15px 15px 2rem;}
#business .mccs-sec{ max-width: none;margin-bottom: 80px;}
#business .title-box {
    box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, 0.1);
    padding: 5px 10px;
    position: relative;
    z-index: 10;
    background-color: #FFFFFF;
    width: 50%;
    margin: -60px auto 30px;
    text-align: center;
}
.lazyload{max-width: 100%;margin-bottom: 20px;}
.lazyload:hover{cursor: pointer;opacity: 0.5;transition: all 0.5s;}
.tight-spacing {
  letter-spacing: -0.03em;
}



/*プロジェクト概要*/
col {
    --wide: initial;
    width: var(--wide);
}
.m-table--scrollPC, .m-table--scrollSP {
    position: relative;
}
.m-table__table {
    background-color: var(--COLOR_BACKGROUND_LIGHT);
    border-collapse: collapse;
    border-left: 1px solid var(--COLOR_OUTLINE_DARK);
    border-top: 1px solid var(--COLOR_OUTLINE_DARK);
    width: 100%;
}
.m-table__head {
    background-color: #e8e8eb;
}
.m-table__cell--head, .m-table__cell--strong {
    font-weight: 700;
    text-align: center;
}
.m-table__cell {
    background-color:#fff;
    border: 1px solid #ccc;
    padding: 20px;
    word-break: break-word;
}
/* @media (min-width: 900px) {
    .m-table__cell {
        padding: 18px 24px;
    }
} */
.m-list__item:before {
    background-color: #000;
    border-radius: 50%;
    content: "";
    display: block;
    height: 6px;
    left: 0;
    position: absolute;
    top: .35em;
    width: 6px;
}
*, :after, :before {
    box-sizing: border-box;
}
.m-list__item {
    list-style: none;
    padding-left: 1em;
    position: relative;
}
.m-table__cell--head {
    background-color:#f5f5f5;
    width: 30%;
}
.m-list {
    display: grid;
    gap: 16px;
}
/*faq*/
#faq .section_sub{max-width: 900px;}
#faq h2{text-align: start;font-size: 2.6rem;color: #444285;margin:0 0 15px;font-weight: normal;text-indent: -2.8rem;max-width: 100%;
    overflow-wrap: break-word;
    word-break: break-word;padding-left: 2rem;}
#faq .section_sub p{padding-left: 2.5rem;margin-bottom: 50px;}


/*プライバシーポリシー*/
.policy_last{margin-bottom: 40px;}

/*フッター*/
footer{background-color:#444285;color:#FFFFFF;}
footer .logo img{width: 250px;}
footer p{text-align:center;font-size:1.3rem}
footer p a{color:#FFFFFF;transition:0.5s;padding:0 15px;letter-spacing: -1.5px;}
footer p a:hover{opacity: 0.7;}
.footer_container{position:relative;max-width: 1200px;}
.footer_top {
  display: flex;
  align-items: center; 
  justify-content: space-between;
  padding: 30px 0;
  flex-direction: row-reverse;
}
.footer_link{padding:30px 0 0 0}
.copyright{font-size:1.2rem;padding:30px 0 15px;letter-spacing:0.1rem;line-height:1.5}
#page_top{margin:-84px auto -60px auto;width:90%;max-width:980px;position:relative;height:54px}
#page_top a{width:54px;height:54px;display:block;text-decoration:none;background:rgba(0,0,0,0.4);position:absolute;right:0;top:0;text-align:center;transition: 0.5s}
#page_top a:hover{opacity: 0.5}

/*その他アイテム*/
#link{background-color:rgba(0, 126, 151, 0.55) ;margin-bottom: 5px;height: 235px;}
#link p{color: #fff;text-align: center;padding-top: 20px;font-size: 20ox;}
#link .btn-form,#link .btn-faq{color: #fff;font-size: 3.2rem;font-weight: bold;}
#link .btn-faq{padding-right: 10rem;}
.arrow05{margin-top:22px;display:inline-block;width:12px;height:12px;border-top:solid 2px #FFF;border-right:solid 2px #FFF;-webkit-transform:rotate(-45deg);transform: rotate(-45deg)}
.btn_link{border-radius: 9999px;position:relative;background-color:#74A658;text-align:center;color:#fff;transition:0.5s;font-size:1.6rem;font-weight:bold;padding: 15px;box-sizing:border-box;margin:auto;display:block;width:100%;max-width: 250px;}
.btn_link:hover,#link a span:hover{opacity: 0.7;}
.arrow01{position: absolute;
    right: 20px;}
.arrow03{position: absolute;
    right: 200px;}
.arrow02{position: absolute;
    right: 750px;}
#link .btn-form::before {
  content: "";
  position: absolute;
  inset: 0;
  border-left: 1px solid #fff;
  pointer-events: none; /* hover無効 */
}
/* .arrow01{display:inline-block;width:8px;height:8px;border-top: solid 2px #fff;border-right: solid 2px #fff;-webkit-transform:rotate(45deg);transform:rotate(45deg);position:absolute;right:15px;top:18px;transition: 0.5s}
.arrow01b{display:inline-block;width:8px;height:8px;border-top: solid 2px #000;border-right: solid 2px #000;-webkit-transform:rotate(45deg);transform:rotate(45deg);position:absolute;right:15px;top:18px;transition: 0.5s} */
/* .btn_link:hover .arrow01{border-top:solid 2px #fff;border-right: solid 2px #fff} */
.btn_link .fa{margin-left:8px}
.section_sub .btn-container{
  display: flex;
  flex-wrap: wrap;
  max-width: none;width: auto;justify-content: center;
}
.btn-form{padding-left: 12rem;position: relative;
  display: inline-block;}
.section_sub .l-top-btn-flex-box2{flex: none;width: auto;min-width: 250px;}
/* .arrow02{display:inline-block;width:8px;height:8px;border-top: solid 2px #fff;border-right: solid 2px #fff;-webkit-transform:rotate(45deg);transform:rotate(45deg);position:absolute;right:15px;top:18px;transition: 0.5s}
.btn-faq:hover{background-color: #fff;color:#444285;border-color: #444285;}
.btn-faq:hover .arrow02{border-top:solid 2px #444285;border-right: solid 2px #444285}
.arrow03{display:inline-block;width:8px;height:8px;border-top: solid 2px #fff;border-right: solid 2px #fff;-webkit-transform:rotate(45deg);transform:rotate(45deg);position:absolute;right:15px;top:18px;transition: 0.5s}
.btn-form:hover{background-color: #fff;color:#F6A900;border-color: #F6A900}
.btn-form:hover .arrow03{border-top:solid 2px #F6A900;border-right: solid 2px #F6A900} */
/*.btn_link2{position:relative;background-color:#F68B23;text-align:center;color:#FFF;transition:0.5s;font-size:1.6rem;font-weight:bold;padding: 15px;box-sizing:border-box;margin-top: 30px;display:block;border:solid 1px #F68B23;width:100%;max-width: 220px;}
.btn_link2:hover{background-color: #FFF;color:#F68B23;}
.btn_link2:hover .arrow01{border-top:solid 2px #F68B23;border-right: solid 2px #F68B23}
.btn_link2 .fa{margin-left:8px}
.btn_link3{position:relative;background-color:#FFF;text-align:center;color:#000;transition:0.5s;font-size:1.6rem;font-weight:bold;padding: 15px;box-sizing:border-box;margin-top: 30px;display:block;border:solid 1px #C0C0C0;width:100%;max-width: 220px;}
.btn_link3:hover{background-color: #888;color:#FFF;}
.btn_link3:hover .arrow01b{border-top:solid 2px #FFF;border-right: solid 2px #FFF}
.btn_link3 .fa{margin-left:8px}
.btn_link4{position:relative;background-color:#888;text-align:center;color:#FFF;transition:0.5s;font-size:1.6rem;font-weight:bold;padding: 15px;box-sizing:border-box;margin-top: 30px;display:block;border:solid 1px #C0C0C0;width:100%;max-width: 220px;}
.btn_link4 .fa{margin-left:8px}*/
.btn_link-biz{position:relative;background-color:#F68B23;text-align:center;color:#FFF;transition:0.5s;font-size:1.6rem;font-weight:bold;padding: 15px;box-sizing:border-box;display:block;border:solid 1px #F68B23;width:100%;max-width: 220px;}
.btn_link-biz:hover{background-color: #FFF;color:#F68B23;}
.btn_link-biz:hover .arrow01{border-top:solid 2px #F68B23;border-right: solid 2px #F68B23}
.btn_link-biz .fa{margin-left:8px}
.btn_contact{position:relative;background-color:#F68B23;text-align:center;color:#FFF;transition:0.5s;font-size:1.8rem;font-weight:bold;padding:24px;box-sizing:border-box;margin:auto;display:block;border:solid 1px #F68B23;width:100%;max-width:440px}
.btn_contact:hover{background-color:#FFF;color:#F68B23;}
/* .arrow02{display:inline-block;width:10px;height:10px;border-top:solid 2px #FFFFFF;border-right:solid 2px #FFFFFF;-webkit-transform:rotate(45deg);transform:rotate(45deg);position:absolute;right:25px;top:27px;transition: 0.5s}
.btn_contact:hover .arrow02{border-top: solid 2px #F68B23;border-right: solid 2px #F68B23;}
.btn_mini{position: relative;background-color: #F68B23;text-align: center;color: #FFF;transition: 0.5s;font-size: 1.2rem;font-weight: normal;padding: 1px 20px 1px 5px;box-sizing:border-box;margin:5px 0;display:inline-block;border:solid 1px #F68B23;}
.btn_mini:hover{background-color: #FFF;color:#F68B23}
.arrow03{display:inline-block;width:6px;height:6px;border-top:solid 2px #FFFFFF;border-right:solid 2px #FFFFFF;-webkit-transform:rotate(135deg);transform:rotate(135deg);position:absolute;right:5px;top:5px;transition: 0.5s}
.btn_mini:hover .arrow03{border-top: solid 2px #F68B23;border-right: solid 2px #F68B23;}
.arrow04{margin:13px 8px 13px 0;display:inline-block;width:8px;height:8px;border-top:solid 2px #444285;border-right:solid 2px #444285;-webkit-transform:rotate(45deg);transform:rotate(45deg);transition:0.5s;vertical-align:middle} */
.fa_black{color:#333}
.fa_text{margin-left:10px;}
.pnkz{margin:15px auto;width:98%;max-width:980px;}
.pnkz p {font-size:1.3rem;color: #858585;margin-bottom: 50px;}
.pnkz p a:hover{text-decoration: underline;}


/*ーーーーーーーーーーーーーーーーーーーーーーーーーー
トップページ ボタン
ーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.l-top-btn-flex-box {display:flex;justify-content: space-around;max-width: 540px;padding-top: 30px;}
.l-top-btn-flex-box{width: 100%}
@media screen and (max-width: 530px) {
  .l-top-btn-flex-box{display: block;}.l-top-btn-flex-box{padding-top: 20px;}.l-top-btn-flex-box a{margin: 10px auto;}
}
/* .btn_link{max-width: 100%;} */

/*ーーーーーーーーーーーーーーーーーーーーーーーーーー
事業案内一覧ページ
ーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.biz-pic-article{width: 48%;position: relative;background-image: url(/common/img/planning_pic.jpg);background-size: cover;%;height: 240px;}
@media screen and (max-width: 768px) {.biz-pic-article{width: 100%;margin-bottom: 20px;height: 225px;}
}
.biz-pic-article p{color: #FFF;font-size: 35px;font-weight: bold;line-height: 1;}
.biz-pic-article p span{padding-bottom: 8px;font-size: 14px;display: block;font-weight: normal;}

.biz-pic-article2{width: 48%;position: relative;background-image: url(/common/img/technology_pic.jpg);background-size: cover;%;height: 240px;}
@media screen and (max-width: 768px) {.biz-pic-article2{width: 100%;margin-bottom: 20px;height: 225px;}
}
.biz-pic-article2 p{color: #FFF;font-size: 35px;font-weight: bold;line-height: 1;}
.biz-pic-article2 p span{padding-bottom: 8px;font-size: 14px;display: block;font-weight: normal;}

.biz-centerize{text-align: -webkit-center;margin-top: 50px;}
.biz-list{display:flex;flex-direction: row;flex-wrap: wrap;justify-content: space-between;max-width: 820px;}
.biz-pic img{width:100%;}

/*タブ切り替え全体のスタイル*/
.member_tabs {
  margin: 0 auto;
}

/*タブのスタイル*/
.tabBox {
  margin-bottom: 30px;
}

.tabBox .tabArea {
  width: 100%;
  height: 180px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.tabBox .tabArea .one_tab {
  width: 18%;
}

.tabBox .tabArea .one_tab a {
  position: relative;
  display: block;
  text-decoration: none;
  transition: all 0.2s ease;
  text-align: center;
}

.tab_item {
  height: 180px;
  background-color: #E3E2FF;
  color: #444285;
  font-size: 15.5px;
  letter-spacing: -0.7px;
  text-align: center;
  line-height: 1.2;
  display: block;
  border-radius: 8px;
  transition: all 0.2s ease;
  position: relative;
}

.tab_item.select {
  height: 180px;
  background-color: #444285;
  color: #fff;
  font-size: 15.5px;
  letter-spacing: -0.7px;
  text-align: center;
  line-height: 1.2;
  display: block;
  border-radius: 8px;
  transition: all 0.2s ease;
  pointer-events: none;
}

.tab_high_name {
  width: 100%;
  position: absolute;
  top: 100px;
  right: 0;
}

.tabBox .tabArea .one_tab a:hover {
  background-color: #444285;
  color: #fff;
  transition: all 0.2s ease;
}

.tab_item_low {
  height: 97px;
  background-color: #E3E2FF;
  color: #444285;
  font-size: 15.5px;
  letter-spacing: -0.7px;
  text-align: center;
  line-height: 1.2;
  display: block;
  transition: all 0.2s ease;
}

.tab_item_low.select {
  background-color: #444285;
  color: #fff;
  pointer-events: none;
}

.tab_low_name {
  width: 100%;
  position: absolute;
  top: 40px;
  right: 0;
}

.tabBox .tabArea.bottom {
  align-items: flex-start;
}

.contents .tab_main {
  display: none;
  transition-duration: 0.3s;
}

.tab_main.is_show {
  display: block;
}

/* アイコンsvg */
.field_icon_svg svg {fill: #444285;padding: 20px 0;}
.tab_item:hover svg {fill: #fff;}
.tab_item.select svg {fill: #fff;}
.tab_content_description h2 {text-align: left;font-size: 24px;padding-left: 15px;border-left: 5px solid #F68B23;}
.dli-chevron-down {display: inline-block;text-align: center;vertical-align: middle;color: #fff;line-height: 1;width: 9px;height: 9px;border: 2px solid currentColor;border-left: 0;border-bottom: 0;box-sizing: border-box;transform: translateY(-25%) rotate(135deg);margin-top: 48px;transition: all 0.2s ease;}
.select .dli-chevron-down {width: 18px;height: 18px;color: #fff;}
.dli-chevron-up {display: inline-block;vertical-align: middle;color: #fff;line-height: 1;width: 9px;height: 9px;border: 2px solid currentColor;border-left: 0;border-bottom: 0;box-sizing: border-box;transform: translateY(25%) rotate(-45deg);margin-top: 15px;transition: all 0.2s ease;}
.select .dli-chevron-up {width: 18px;height: 18px;color: #fff;}
.tab_item:hover .dli-chevron-down {width: 18px;height: 18px;}
.tab_item_low:hover .dli-chevron-up {width: 18px;height: 18px;}

/* プロフィール */
.profile_box {padding: 40px 0 ;border-bottom: solid 1px #D9D9D9;line-height: 1.5;}
.profile_box:last-of-type {border-bottom: none;}
.profile_name h3 {margin: 0;}
.profile_name p {font-size: 14px;margin: 0;}
.profile_about dt {font-size: 20px;font-weight: bold;margin-top: 50px;margin-bottom: 10px;}
.field_name dt {margin-top: 10px;}
.profile_about dd {font-size: 16px;}
.field_list li {list-style: inside;line-height: 1.5;}
.profile_link {text-decoration: underline;transition: all 0.2s ease;}
.profile_link:hover {color: #F68B23;}
.profile_flex {display: flex;align-items: flex-start;}
.profile_flex img {margin-right: 90px;}

/*ーーーーーーーーーーーーーーーーーーーーーーーーーー
メディアクエリ
ーーーーーーーーーーーーーーーーーーーーーーーーーー*/
@media screen and (min-width: 1500px) {.main_visual {height: 0;margin: auto;}}
.main_visual_container h1{font-size: 6rem;bottom:145px;}
.main_visual_container h1:lang(en){font-size: 5rem;bottom:145px;}
@media screen and (max-width: 1500px) {.main_visual_container h1{font-size: 5.5rem;bottom:130px;}.main_visual_container h1:lang(en){font-size: 4.5rem;bottom:130px;}}
@media screen and (max-width: 1200px) {.main_visual_container h1{font-size: 5rem;bottom:110px;}.main_visual_container h1:lang(en){font-size: 4rem;bottom:110px;}}
@media screen and (max-width: 1000px) {.main_visual_container h1{font-size: 4.5rem;bottom:90px;}.main_visual_container h1:lang(en){font-size: 4rem;bottom:90px;}}
@media screen and (max-width: 480px) {.sp_maincopy_container h1{font-size: 2.8rem;}.sp_maincopy_container h1:lang(en){font-size: 2.6rem;}}
@media screen and (max-width: 910px) {#company #message .message_left .president_name {margin: 0}#company #message .message_left p {line-height: 1.5;}}
/* @media screen and (max-width: 768px) { */
@media screen and (max-width: 1024px) {
  .head_navi_PC {
        display: none;
    }
}
/*キャッチコピー、タグライン*/
@media screen and (max-width: 1024px) {
  .main_visual h1{font-size: 4.8rem;}
}
@media screen and (max-width: 650px) {
   .main_visual h1{font-size: 2.8rem;}
}
@media screen and (max-width: 685px) {
  .mccs-sec .mccs{margin-top: -228px;}
}
@media screen and (max-width: 768px) {
.mccs{display: block;margin: -180px auto 0;padding: 0;width: 80%;}
}
@media screen and (max-width: 850px) {
  #news .news_title{font-size:2.2rem;}
  .h280{height: 180px}
  main {min-height: calc(100vh - 236px);}
  main{margin-top: 75px}/*ヘッダーの高さ分*/
  .hideonSP{display: none}
  header{height: 75px;}
  header .head_container .logo {top:10px}
  header .head_container .logo a img{width: 250px;}
  header .head_container{position:relative;height:74px;}
  header.smaller {opacity:1}
  article h1{font-size:2.8rem}
  #contents .section_sub h2{font-size: 2.4rem;}
  article h2{font-size:2.8rem}
  article h3{font-size:1.8rem}
  article h4 {font-size: 1.6rem}
  article h4:lang(en) {font-size: 1.6rem}
  .btn_link2{max-width: 175px}
/* .sec-main{max-width: 373px;} */
  /* .section_title{height:130px} */
  .section_title_inner{height:130px}
  .section_title_inner::before{height:130px;width:200%;right:40%}
  .section_title_inner h1{padding-top:48px}
  .section_title_sub_inner h1{padding:30px 0 45px}
  .section_title_sub img{width: 100%}
  #link btn-container span img{height: 25px;}
  .mccs-back{background-size: contain;}
  /* .mccs{display: block;max-width: 350px;margin: -180px auto 0;padding: 0;} */
  .mccs{margin-top: -160px;}
  .mccs p{margin: 0;padding: 20px 20px 0;}
  .mccs div{text-align: end;padding: 0 10px 10px 0;}
  #link{height: 450px;}
  #link.link-news{height: 380px;}
  #link .sec-main{padding: 0;}
#link .sec-main p{border-bottom: solid 1px rgba(255, 255, 255, 0.5);padding: 20px 0;margin: 0;}
#link .section_sub .btn-container{display: block;}
.section_sub .l-top-btn-flex-box2{text-align: center;border-bottom: solid 1px rgba(255, 255, 255, 0.5);padding: 50px;margin: 0 auto;}
#link .section_sub .btn-form-box{border-bottom: none;}
.l-top-btn-flex-box{max-width: none;}
#news img{margin-bottom: 5px;}
#news .news-flex{display: block;}
#link .btn-form, #link .btn-faq{padding: 0;font-size: 24px;}
#link .btn-form::before{border: none;}
.sp-br {
    display: inline; /* br は inline でOK */
  }
#link .btn-container span{display: flex;
    align-items: center;
    justify-content: center;}
#company .section_title{padding: 0;margin-bottom: 30px;}
#company .company_flex{display: block;padding: 0;}
#company .company_date{padding: 0 20px;}
#company .company_date tr{display: block;}
#company .company_date td{padding-bottom: 15px;}
#company .company_date th{padding-bottom: 5px;}
#company .company_flex div{width: auto;margin-bottom: 50px;}
  .section_title-biz{height:180px}
  .section_title-biz_inner{height:180px}
  .section_title-biz_inner::before{height:180px;width:200%;right:40%}
  .section_title-biz_inner h1{padding-top:36px}
  .section_title-biz_sub_inner h1{padding:30px 0}
  .section_title-biz_sub img{width: 100%}
  .section_sub-biz2{width: 100%;margin-bottom: 71px;}
  /* #news section h2, #company section h2, #contents section h2{font-size:2rem} */
  #news section h2.topics_h2{font-size:2.5rem}
  #news dl dt {display: block;width: 100%}
  #news dl dd {display: block;width: 100%}
  #news dl dt:lang(en) {display: block;width: 100%}
  #news dl dd:lang(en) {display: block;width: 100%}
  #company {margin-top:-70px;padding-top:74px}/*アンカーリンク調整*/
  #company #message .message_colum {display:block}
  #company #message .message_left {margin: 0}
  #company #message .message_left p {line-height: 1.6}
  #company #message .message_left .president_name {text-align: right;margin: 0 0 20px 0}
  #company #message .message_left .president_name p {margin:0 15px 0 0;display:inline-block;vertical-align:middle}
  #company #message .message_left .president_name img {width:126px;display:inline-block;vertical-align:middle}
  /* #company #message .message_rigth img {max-height:809px} */
  #company #vision .vision_box p{font-size:17px}
  #company #vision .vision_box .vision_blue{font-size:2rem}
  #company #corpolate th, #company #corpolate  td {display:block}
  #company #corpolate th{padding:20px 0 8px 0;width: 100%}
  #company #corpolate td{padding:8px 0 20px 0}
  #company #map{height:300px;width:100%;position:relative;z-index:0}
  #company iframe{width:100%;height:365px;position:relative;z-index:0}
  #company .map_box{width:100%;padding:15px;margin:-100px 5px 0 50px;position:relative;z-index:10}
  #company .conpany_name{font-size:1.6rem;font-weight:bold;line-height:1}
  #faq h2{font-size: 2.2rem;margin-bottom: 20px;}
  #faq .section_sub p{padding-left: 2rem;margin-bottom: 70px;}

.gm-style-cc {      /* 地図データの表示 */

  bottom: -100px !important;
  
}

  #business{margin-top:-40px;padding-top:74px;margin-bottom: 30px;}/*アンカーリンク調整*/
  #business section h2 {font-size: 2.4rem}
  #business section h2::before , #business section h2::after {margin-top:14px}
  #business section h2::before {margin-right:1rem}
  #business section h2::after {margin-left:1rem}
  #business section .business_white{padding:30px 10px}
  #business section .h2_sub {font-size:1.4rem;margin:10px 0 30px 0}
  #business .bggray {padding-bottom:60px}
  .btn_mini{font-size:1.2rem;margin:5px 0;display:inline-block}
  .footer_link{padding:0 0 40px 0}
  .copyright{padding:30px 0 10px 0;font-size: 10px;}
  .pnkz{display:none}
  footer{margin-top:0px}
  .footer_top{display: block;text-align: center;}
  #page_top{display:none}

/* 上タブ */
  .field_icon_svg {
    display: none;
  }

  .tab_item {
    height: 60px;
    font-size: 14px;
  }

  .tab_item.select {
    height: 60px;
    font-size: 14px;
  }

  .tab_high_name {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .tab_high_name br {
    display: none;
  }
  .dli-chevron-down {
    display: none;
  }

/* 下タブ */
  .tab_item_low {
    height: 60px;
    font-size: 14px;
    border-radius: 8px;
  }

  .tab_item_low.select {
    height: 60px;
    font-size: 14px;
    border-radius: 8px;
  }

  .dli-chevron-up {
    display: none;
  }

  .tab_low_name {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }

  .tab_low_name br {
    display: none;
  }

  /* プロフィール */
  .profile_name h3 {
    font-size: 20px;
  }

  .profile_about dt {
    font-size: 18px;
    margin-top: 20px;
  }

  .profile_flex {
    flex-wrap: wrap;
  }

  .profile_flex img {
    margin-bottom: 20px;
  }
  /* プロジェクト概要 */
     .m-table--scrollSP {
        overflow: auto;
    } 

}


/* ニュース下層ページ */
@media screen and (max-width: 900px){
  ul.newsList li{flex-wrap: wrap;}
  p.titleText{width: 100%;padding: 0 1em;}
}
/* @media screen and (min-width: 769px) { */
@media screen and (min-width: 851px) {
  .hideonPC{display:none}
  .head_navi_SP{display:none}
  /*スクロール時縮小*/
  header.smaller {height:74px;opacity:0.9}
  header.smaller .head_container {height:74px}
  header.smaller .head_container .logo {display:inline-block;top:10px}
  header.smaller .head_container .logo a img{width: 300px}
  header.smaller .head_container .head_navi_PC{height:74px}
  header.smaller nav {margin-top:30px}
  header.smaller nav ul li{font-size:1.6rem}
}
@media screen and (min-width: 1024px) {
  .head_navi_SP{display:none}
}
@media screen and (max-width: 1024px) {
  #top .head_navi_SP{display:block}
  header,header .head_container{height: 80px}
main{margin-top: 80px;}
}
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
  .section_title_inner::before{background-color:rgba(0,0,0,0.6)}
  .section_title_sub_inner h1{padding:36px 0 22px 0}
  .section_title-biz_inner::before{background-color:rgba(0,0,0,0.6)}
  .section_title-biz_sub_inner h1{padding:36px 0 22px 0}
  .btn_contact{padding:28px 24px 20px 24px}
}

@media screen and (max-width: 480px){
  span.top-news-date{
      width: 50%;
  }
  p.titleText{
    width: 100%;
    padding: 0.5em 1em;
  }
}
