/*初期設定CSS*/
#localNav, #catNav, #lineup_coutainer, #c3_ll, #subNav, .top_img_Bbox, #kenshu_flow_nav{
  color:#333;
  font:400 15px/1.6 "Helvetica Neue", "Noto Sans JP", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, メイリオ, Meiryo, sans-serif;
  letter-spacing:.1em;
}
/**********
attention
外部CSSの上書き／他CSSの流用
**********/
#base{ width: 100%;}
div#cont{ 
  width: 1220px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
div#cont div#c3_lrr{
  width: 750px;
}
div#cont div#c3_ll{
  overflow: visible;
}
@media screen and (max-width: 768px){
  div#cont{ 
    width: 100%;
    display: block;
  }
  div#cont div#c3_lrr{
    width: 100%;
  }
}

/* -----
レイアウト
----- */
/* グリッド */
.l_grid{
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: wrap;
}
.l_grid__item{
  display: flex;
}
.l_grid__inner{
  display: block;
  width: 100%;
}
.l_grid--fLineup{
  margin: -15px;
}
.l_grid--fLineup > .l_grid__item{
  padding: 15px;
}

/* -----
モジュール
----- */
/* リンク */
.m_link{
  position: relative;
  display: block;
  width: fit-content;
  padding-left: 1em;
  color: #052674;
}
.m_link--right{
  margin-left: auto;
}
.m_link::before{
  content: "";
  position: absolute;
  left: 0;
  top: .48lh;
  display: block;
  width: 6px;
  height: 6px;
  border-top: 2px solid;
  border-right: 2px solid;
  transform: rotate(45deg) translate(-50%);
}
/* メインコンテンツ */
.m_mainCont {
  line-height: 1.6;
}
/* キービジュアル */
.m_keyvisual{
  margin-bottom: 40px;
}
.m_keyvisual__img{
  line-height: 0;
  text-align: center;
}
.m_keyvisual__img img{
  max-width: 100%;
  height: auto;
}



/* コンテンツ */
.m_cotents{}
.m_cotents--attention{
  padding: 20px 15px;
  border: 1px solid #164A84;
}
.m_cotents__heading{}
.m_cotents__ttl{}
.m_cotents__body{}
.m_cotents__item{}
.m_cotents__item + .m_cotents__item{
  margin-top: 15px;
}
.m_cotents__msg{}
.m_cotents__msg + .m_cotents__msg{
  margin-top: 10px;
}
.m_cotents__msg--lead{
  color: #164A84;
  font-weight: bold;
  font-size: 18px;
}
.m_linkCard__footer{
  margin-top: 15px;
}

/* F式リスト型ラインナップ */
.m_fLineupList{}
.m_fLineupList__heading{
  margin-bottom: 10px;
}
.m_fLineupList__ttl{
  line-height: 1.4;
  font-weight: bold;
  font-size: 16px;
  padding-right: 5px;
  color: #75192b
}
.m_fLineupList__body{}
.m_fLineupList__item + .m_fLineupList__item{
  margin-top: 8px;
}
.m_fLineupList__link{
  position: relative;
  display: block;
  padding-left: 12px;
  color: #333;
  font-weight: bold;
  font-size: 12px;
  transition: opacity .3s;
}
/* .m_fLineupList__link::after{
  content: "";
  position: absolute;
  left: 0;
  top: 7px;
  display: block;
  width: 4px;
  height: 4px;
  border-right: 1px solid;
  border-bottom: 1px solid;
  transform: rotate(-45deg);
}*/
.m_fLineupList__link:hover{
  opacity: .7;
}
.m_fLineupList__link--comingsoon{
  color: #7a7a7a;
}
.m_fLineupList__link--comingsoon::before{
  opacity: .7;
}
.m_fLineupList__link--comingsoon::after{
  content: "coming soon";
  color: #d66c00;
  font-weight: bold;
  margin-left: 10px;
}
[service_type].m_fLineupList__link{
  position: relative;
  padding-left: 52px;
}
/*[service_type].m_fLineupList__link::after{
  content: none;
}*/
[service_type].m_fLineupList__link::before{
  position: absolute;
  top: 2px;
  left: 0;
  display: block;
  padding: 2px 3px;
  border: 1px solid;
  border-radius: 2px;
  line-height: 1;
  letter-spacing: 0;
  font-size: 10px;
  min-width: 40px;
  text-align: center;
}

/* F式カード（大） */
.m_fCardLg{
  display: block;
  width: 100%;
  color: inherit;
  transition: opacity .3s;
}
.m_fCardLg:hover{
  opacity: .7;
}
.m_fCardLg__ttl{
  position: relative;
  margin-bottom: 4px;
  line-height: 1.4;
  font-weight: bold;
  font-size: 18px;
  height: calc(18px * 2 * 1.4);
  overflow: hidden;
}
.m_fCardLg__ttl::after{
  content: '';
  position: absolute;
  right: 0;
  bottom: 0;
  display: block;
  width: 3em;
  height: calc(18px * 1.4);
  background: linear-gradient(to left,#fff,rgba(255,255,255,0.96) 25%,rgba(255,255,255,0) 100%)
}
.m_fCardLg__body{}
.m_fCardLg__infos{
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin: 0 -5px;
}
.m_fCardLg__infosWrap{}
.m_fCardLg__info{
  font-size: 12px;
  padding: 0 5px;
}
.m_fCardLg__info--type{
  color: #666;
}
.m_fCardLg__info--type::before{
  display: block;
  color: #666;
  padding: 2px 3px;
  border: 1px solid;
  border-radius: 2px;
  line-height: 1;
  font-size: 11px;
  min-width: 40px;
  text-align: center;
}
.m_fCardLg__info--date{
  color: #d66c00;
}
.m_fCardLg__infosWrap + .m_fCardLg__img{
  margin-top: 5px;
}
.m_fCardLg__img{
  line-height: 0;
  text-align: center;
}
.m_fCardLg__img img{
  max-width: 100%;
  height: auto;
}
.m_fCardLg__img--certification{}
.m_fCardLg__img--certification img{
  max-height: 100px;
}

.m_fCardLg__img + .m_fCardLg__cont{
  margin-top: 10px;
}
.m_fCardLg__infosWrap + .m_fCardLg__cont{
  margin-top: 10px;
}
.m_fCardLg__cont{
  position: relative;
  max-height: calc(13px * 4 * 1.6);
  line-height: 1.6;
  font-size: 13px;
  overflow: hidden;
}
.m_fCardLg__cont::after{
  content: '';
  position: absolute;
  right: 0;
  bottom: 0;
  display: block;
  width: 3em;
  height: calc(13px * 1.6);
  background: linear-gradient(to left,#fff,rgba(255,255,255,0.96) 25%,rgba(255,255,255,0) 100%)
}
@media screen and (max-width: 768px){
  .m_fCardLg__ttl{
    height: auto;
    max-height: calc(18px * 2 * 1.4);
  }
}
/* F式カード（小） */
.m_fCardMd{
  display: flex;
  align-items: center;
  width: 100%;
  color: inherit;
  transition: opacity .3s;
}
.m_fCardMd:hover{
  opacity: .7;
}
.m_fCardMd__body{
  flex: 1 1 auto;
}
.m_fCardMd__ttl{
  position: relative;
  height: calc(14px * 2 * 1.5);
  margin-bottom: 4px;
  font-weight: bold;
  font-size: 14px;
  line-height: 1.5;
  overflow: hidden;
}
.m_fCardMd__ttl::after{
  content: '';
  position: absolute;
  right: 0;
  bottom: 0;
  display: block;
  width: 3em;
  height: calc(14px * 1.5);
  background: linear-gradient(to left,#fff,rgba(255,255,255,0.96) 25%,rgba(255,255,255,0) 100%)
}
.m_fCardMd__infosWrap{}
.m_fCardMd__infos{
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin: 0 -5px;
}
.m_fCardMd__info{
  font-size: 12px;
  padding: 0 5px;
}
.m_fCardMd__info--type{
  color: #666;
}
.m_fCardMd__info--type::before{
  display: block;
  padding: 2px 3px;
  border: 1px solid;
  border-radius: 2px;
  line-height: 1;
  font-size: 11px;
  min-width: 40px;
  text-align: center;
}
.m_fCardMd__info--date{
  color: #d66c00;
}
.m_fCardMd__body + .m_fCardMd__img{
  margin-left: 4px;
}
.m_fCardMd__img{
  flex: 0 0 86px;
  line-height: 0;
  text-align: center;
}
.m_fCardMd__img img{
  max-width: 100%;
  height: auto;
}
@media screen and (max-width: 768px){
  .m_fCardMd__ttl{
    height: auto;
    max-height: calc(14px * 2 * 1.5);
  }
}

/* ラベル */
[service_type=douga]::before {
  content: "\52d5\753b\95a2\9023"!important;
  color: #cc2d5e!important;
  background: none!important;
}
[service_type=middle]::before {
  content: "\307e\3068\3081"!important;
  color: #842e30!important;
  background: none!important;
}
[service_type=haken]::before {
  content: "\6D3E\9063"!important;
  color: #842e30!important;
  background: none!important;
}
[service_type=bup]::before {
  content: "\516C\958B"!important;
  color: #0c3f71!important;
  background: none!important;
}
[service_type=other]::before {
  content: "\4ed6\ff7b\ff70\ff8b\ff9e\ff7d"!important;
  color: #e6002d!important;
  background: none!important;
}
[service_type=it]::before {
  content: "IT\FF7B\FF70\FF8B\FF9E\FF7D"!important;
  color: #008d79!important;
  background: none!important;
}
[service_type=free]::before {
  content: "\7121\6599\FF7E\FF90\FF85\FF70"!important;
  color: #333!important;
  background: none!important;
}
[service_type=cont]::before {
  content: "\8AAD\307F\7269"!important;
  color: #0c3f71!important;
  background: none!important;
}
[service_type=consul]::before {
  content: "\30B3\30F3\30B5\30EB"!important;
  color: #7a614f!important;
  background: none!important;
}

/* Leaf Lightning STUDIO対応 */
[href="/it-tool/studio-pbl.html"] .m_fCardLg__ttl{
  font-size: 0;
}
[href="/it-tool/studio-pbl.html"] .m_fCardLg__ttl::before{
  content: "Leaf lightning STUDIO～定額制eラーニング視聴サービス";
  font-size: 18px;
}

/**********
utility
**********/
/*横幅*/
.u_col1{width:8.333%;}
.u_col2{width:16.667%;}
.u_col25{width:20%;}
.u_col3{width:25%;}
.u_col4{width:33.333%;}
.u_col5{width:41.666%;}
.u_col6{width:50%;}
.u_col7{width:58.333%;}
.u_col8{width:66.666%;}
.u_col9{width:75%;}
.u_col10{width:83.33%;}
.u_col11{width:91.666%;}
.u_col12{width:100%;}
@media screen and (max-width:768px){
  .u_resMdCol1{width:8.333%;}
  .u_resMdCol2{width:16.667%;}
  .u_resMdCol3{width:25%;}
  .u_resMdCol4{width:33.333%;}
  .u_resMdCol5{width:41.666%;}
  .u_resMdCol6{width:50%;}
  .u_resMdCol7{width:58.333%;}
  .u_resMdCol8{width:66.666%;}
  .u_resMdCol9{width:75%;}
  .u_resMdCol10{width:83.33%;}
  .u_resMdCol11{width:91.666%;}
  .u_resMdCol12{width:100%;}
}
@media screen and (max-width:599px){
  .u_resSmCol1{width:8.333%;}
  .u_resSmCol2{width:16.667%;}
  .u_resSmCol3{width:25%;}
  .u_resSmCol4{width:33.333%;}
  .u_resSmCol5{width:41.666%;}
  .u_resSmCol6{width:50%;}
  .u_resSmCol7{width:58.333%;}
  .u_resSmCol8{width:66.666%;}
  .u_resSmCol9{width:75%;}
  .u_resSmCol10{width:83.33%;}
  .u_resSmCol11{width:91.666%;}
  .u_resSmCol12{width:100%;}
}