/* --- Base Theme --- */
html{
  --primary-color: #a11f24;
  --secondary-color: #F7EDED;
}
:root:has(.container_main.theme_bup ){
  --primary-color: #194A72;
  --secondary-color: #deecf8;
}
body{
  color: #333;
  counter-reset: detailNum;
  font: 400 15px "Helvetica Neue", "Noto Sans JP", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, メイリオ, Meiryo, sans-serif;
  line-height: 1.6;
  letter-spacing: .1em;
}
#base {
  width: 1220px;
}
div#cont { margin: 0; }
.wrapper_main {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
  margin: 20px auto 0;
  width: 100%;
}
.container_main {
  position: relative;
  width: 750px;
}
.slick-slide{
  height: auto !important;
}
@media screen and (max-width: 768px) {
  #base {
    width: 100%;
  }
  .container_main {
    width: 100%;
  }
  #sideNavRev{
    display: none;
  }
}
/* ------
layout
------ */
/* --- Section --- */
.l_section{}
.l_section__item{}
.l_section--primary > .l_section__item + .l_section__item{
  margin-top: 32px;
}
.l_section--secondary > .l_section__item + .l_section__item{
  margin-top: 24px;
}

/* ---grid --- */
.l_grid{
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
}
.l_grid__item{
  display: flex;
}
.l_grid__inner{
  display: block;
  width: 100%;
}
.l_grid--lineup{
  margin: -10px;
}
.l_grid--lineup > .l_grid__item{
  padding: 10px;
}
.l_grid--cta{
  margin: -15px;
  justify-content: center;
}
.l_grid--cta > .l_grid__item{
  padding: 15px;
}
/* ------
module
------ */
/* --- icon --- */
.m_hasIco{
  position: relative;
  display: block;
  width: fit-content;
}
.m_hasIco::before,
.m_hasIco__item{
  position: absolute;
  left: 0;
  display: block;
}
.m_hasIco--dot{
  padding-left: 1em;
}
.m_hasIco--dot::before{
  content: "・";
}
.m_hasIco--ast{
  padding-left: 1em;
}
.m_hasIco--ast::before{
  content: "※";
}
.m_hasIco--label{
  padding-left: 84px;
}
.m_hasIco--label .m_hasIco__item{
  top: calc((1lh - 1em) / 2 + 4px);
  padding: 3px 5px;
  border-radius: 2px;
  color: #fff;
  line-height: 1;
  letter-spacing: 0;
  font-weight: bold;
  font-size: 11px;
}
.m_hasIco--worksessionTag{
  position: relative;
  padding-left: 84px;
}
.m_hasIco--worksessionTag .m_hasIco__item{
  position: absolute;
  top: calc((1lh - 1em) / 2 + 4px);
  left: 0;
  display: block;
  padding: 3px 5px;
  border-radius: 2px;
  color: #fff;
  line-height: 1;
  letter-spacing: 0;
  font-weight: bold;
  font-size: 11px;
  &.m_hasIco__item--primary{
    background: #B89623;
  }
  &.m_hasIco__item--secondary{
    background: #245A8C;
  }
  &.m_hasIco__item--tertiary{
    background: #3A8F65;
  }
}


/* --- link --- */
.m_link{
  position: relative;
  display: block;
  width: fit-content;
  padding-left: 15px;
}
.m_link::before{
  content: "";
  position: absolute;
  left: 0;
  top: .5lh;
  display: block;
  width: 6px;
  height: 6px;
  border-top: 2px solid;
  border-right: 2px solid;
  transform: rotate(45deg) translate(-50%);
}
.m_link--right{
  margin-left: auto;
}
/* --- img only --- */
.m_onlyImg{
  display: block;
  line-height: 0;
  text-align: center;
}
.m_onlyImg img{
  max-width: 100%;
  height: auto;
}
.m_onlyImg--link{
  transition: .3s opacity;
}
.m_onlyImg--link:hover{
  opacity: .7;
}
/* --- btn --- */
.m_btn{
  display: flex;
  align-items: center;
  justify-content: center;
  transition: .3s opacity;
}
.m_btn:hover{
  opacity: .7;
}
.m_btn--primary {
  height: 3em;
  font-size: 16px;
  border-radius: 7px;
  max-width: 400px;
  margin: 0 auto;
  color: #fff;
}
.m_btn--clrHaken{
  background-color: #A11F24;
}
.m_btn--clrBup{
  background-color: #194a72;
}
.m_btn_link_wrap_multi{
  width: 100%;
  margin: 10px 0;
}
.m_btn_link_wrap_bup{
  background-color: #194a72;
}
.m_btn_link_wrap:hover {
/*
  opacity: 0.6;
*/
  text-decoration: none;
  box-shadow: none;
  transform: translate(2px, 2px)
}
.m_btn_link_target {
  color: #fff;
  display: block;
  padding: 15px;
}
.m_btn_links{
  display: flex;
  align-items: stretch;
  margin: -15px
}

.m_btn_links_item{
  width: 100%;
  padding: 15px;
}
@media screen and (max-width: 599px){
  .m_btn_links{
    display: block;
    margin: -3px;
  }
  .m_btn_links_item{
    padding: 3px;
  }
}

/* --- Headings --- */
.m_heading{}
.m_heading__ttl {
  font-weight: bold;
  line-height: 1.4;
}
.m_heading--primary {
  margin-bottom: 20px;
}
.m_heading--primary > .m_heading__ttl {
  position: relative;
  padding-left: 20px;
  font-size: 20px;
}
.m_heading--primary > .m_heading__ttl::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  transform: translateX(-50%);
  width: 10px;
  height: 1lh;
  background: var(--primary-color);
}

.m_heading--secondary {
  margin-bottom: 16px;
}
.m_heading--secondary > .m_heading__ttl {
  position: relative;
  padding-left: 30px;
  font-size: 16px;
}
.m_heading--secondary > .m_heading__ttl::after {
  content: "";
  position: absolute;
  top: .5lh;
  left: 0;
  transform: translateY(-50%);
  width: 20px;
  height: 4px;
  background: var(--primary-color);
}
@media screen and (max-width: 768px){
  .m_heading--primary > .m_heading__ttl {
    font-size: 16px;
  }
  .m_heading--secondary > .m_heading__ttl {
    font-size: 14px;
  }
}

/* --- Contents --- */
.m_contents{}
.m_contents__body{}
.m_contents__item + .m_contents__item{
  margin-top: 20px;
}
.m_contents__msg--em{
  font-weight: bold;
  font-size: 1.1em;
}
.m_contents__msg + .m_contents__msg{
  margin-top: 10px;
}
.m_contents__item--img{
  width: fit-content;
  margin-inline: auto;
  line-height: 0;
  text-align: center;
}
.m_contents__item--img img{
  max-width: 100%;
  height: auto;
}
.m_contents__item--em{
  padding: 15px 20px;
  border: 1px solid;
  border-radius: 2px;
}
/* --- contentsList --- */
.m_contentsList{}
.m_contentsList__item + .m_contentsList__item{
  margin-top: 5px;
}
.m_contentsList__item--note{
  font-size: 11px;
}

/* --- HerosArea --- */
.m_herosArea{
  margin-bottom: 20px;
}
.m_herosArea__keyvisual{}

/* --- KeyVisual --- */
.m_keyvisual{
  line-height: 0;
}
.m_keyvisual img{
  width: 100%;
  height: auto;
}

/* リード文 */
.m_lead{
  font: 700 16px YakuHanJPs, "Zen Kaku Gothic New", "Noto Sans JP", "yu gothic", YuGothic, "ãƒ’ãƒ©ã‚®ãƒŽè§’ã‚´ pron w3", hiragino kaku gothic pron, Arial, ãƒ¡ã‚¤ãƒªã‚ª, Meiryo, sans-serif;
}
.m_lead__msg{
  line-height: 1.4;
}
.m_lead__msg + .m_lead__msg{
  margin-top: 5px;
}
@media screen and (max-width: 768px){
  .m_leadg{
    padding: 0;
  }
}

/* --- flow wrapper --- */
.m_flowWrap{
  position: relative;
}
.m_flowWrap::before{
  content: "";
  position: absolute;
  display: block;
  width: 6px;
  height: 100%;
  left: 38px;
  background-color: var(--primary-color);
}
.m_flowWrap__item + .m_flowWrap__item{
  padding-top: 20px;
}
@media screen and (max-width: 768px){
  .m_flowWrap::before{
    left: 28px;
  }
}

/* --- flow --- */
.m_flow{
  position: relative;
  z-index: 1;
  display: flex;
  align-items: flex-start;
  gap: 30px;
}
.m_flow__step{
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 83px;
  color: #fff;
  letter-spacing: 0;
  font-size: 18px;
  font-weight: 500;
  background-color: var(--primary-color);
  border-radius: 50%;
  aspect-ratio: 1 / 1;
}
.m_flow__cont{
  flex: 1 1 auto;
}
.m_flow__ttl{
  margin-bottom: 10px;
  color: var(--primary-color);
  font-size: 16px;
  font-weight: 500;
}
.m_flow__body{}
.m_flow__item{}
.m_flow__item + .m_flow__item{
  margin-top: 10px;
}
.m_flow__item--lead{
  padding: 5px 10px;
  background-color: var(--secondary-color);
  border-radius: 2px;
  font-size: 16px;
}
.m_flow__msg{}
.m_flow__msg + .m_flow__msg{
  margin-top: 5px;
}
.m_flow__listItem{}
.m_flow__listItem + .m_flow__listItem{
  margin-top: 3px;
}
.m_flow__footer{
  margin-top: 10px;
}
@media screen and (max-width: 768px){
  .m_flow{
    gap: 20px;
  }
  .m_flow__step{
    width: 64px;
    font-size: 14px;
  }
}

/* --- メインカードのラッパー --- */
.m_mainCardWrap{}
.m_mainCardWrap__item + .m_mainCardWrap__item{
  margin-top: 20px;
}
.m_mainCardWrap__inner{}

/* --- メインカード --- */
.m_mainCard{
  padding: 10px 20px;
  border: 1px solid var(--primary-color);
  border-radius: 2px;
}
.m_mainCard__heading{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 10px;
}
.m_mainCard__ttl{
  font-size: 20px;
  font-weight: bold;
}
.m_mainCard__tags{
  display: flex;
  align-items: center;
  gap: 10px;
}
.m_mainCard__tag{
  display: block;
  width: 64px;
}
.m_mainCard__tag img{
  width: 100%;
  height: auto;
}
.m_mainCard__tagLink{
  transition: .3s opacity;
}
.m_mainCard__tagLink:hover{
  opacity: .7;
}
.m_mainCard__tagLink--haken{
  filter: hue-rotate(-43deg) saturate(100%) brightness(.75) contrast(2);
}
.m_mainCard__tagLink--bup{}
.m_mainCard__tag:has(.m_mainCard__tagLink--worksession){
  width: 160px;
}
.m_mainCard__body{}
.m_mainCard__item + .m_mainCard__item{
  margin-top: 16px;
}

@media screen and (max-width: 768px){
  .m_mainCard__ttl{
    font-size: 16px;
  }
}
@media screen and (max-width: 599px){
  .m_mainCard__heading{
    align-items: flex-end;
    flex-direction: column-reverse;
    gap: 10px;
  }
}

/* --- メインカードのコンテンツ --- */
.m_mainCardContens{}
.m_mainCardContens__ttl{
  margin-bottom: 5px;
  padding: 0 0 5px 5px;
  border-bottom: 1px solid var(--primary-color);
  font-size: 16px;
  font-weight: bold;
}
.m_mainCardContens__body{}
.m_mainCardContens__item{}
.m_mainCardContens__item + .m_mainCardContens__item {
  margin-top: 10px;
}
@media screen and (max-width: 768px){
  .m_mainCardContens__ttl{
    font-size: 14px;
  }
}


/* リンクカード */
.m_linkCard{
  display: block;
  padding: 20px;
  border: 1px solid #942D2D;
  border-radius: 2px;
  color: inherit;
  text-align: left;
}
.m_linkCard:hover{
  opacity: .7;
}
.m_linkCard__heading{
  margin-bottom: 15px;
}
.m_linkCard__ttl{
  color: #942D2D;
  font-weight: bold;
  font-size: 20px;
}
.m_linkCard__body{
  display: flex;
  align-items: center;
  margin: -10px;
}
.m_linkCard__msg + .m_linkCard__msg{
  margin-top: 10px;
}
.m_linkCard__cont{
  flex: 1 1 auto;
  padding: 10px;
}
.m_linkCard__img{
  flex: 0 0 240px;
  padding: 10px;
  line-height: 0;
  text-align: center;
}
.m_linkCard__img img{
  max-width: 100%;
  height: auto;
}
.m_linkCard__footer{
  margin-top: 20px;
}
@media screen and (max-width: 599px){
  .m_linkCard__body{
    display: block;
    align-items: center;
    margin: -10px;
  }
}
/* スケジュールの表 */
.m_sheduleTable{}
.m_sheduleTable__tableWrap{
  overflow: auto;　　
}
.m_sheduleTable__table{
  font-feature-settings: "palt" 1;
  table-layout: fixed;
  font-size: 12px;
  width: 100%;
  min-width: 708px;
}

.m_sheduleTable__header {}
.m_sheduleTable--hasPlace .m_sheduleTable__header{
  font-size: 12px;
}
.m_sheduleTable__header th > p {
  background-color: #f3f3f3;
  border-top: 4px solid #194a72;
  color: #194a72;
  padding: 6px 5px;
  text-align: center;
}

.m_sheduleTable__header th.th_date{
  width: 210px;
}
.m_sheduleTable__header th.th_place {
  width: 130px;
  padding-left: 3px;
}
.m_sheduleTable__header th.th_price {
  width: 100%;
  padding-left: 3px;
}
.m_sheduleTable__header th.th_point {
  width: 100%;
  padding-left: 3px;
}
.m_sheduleTable__body > tr {
  border-bottom: 1px solid #cbcbcb;
}
.m_sheduleTable__body > tr > td {
  padding: 5px 0;
  text-align: center;
  vertical-align: middle;
}
.m_sheduleTable__body > tr > td:not(:first-of-type):not(:nth-child(2)){
  text-align: right;
}
.m_sheduleTable__body > tr > td > * {
  font-size: 11px;
}
.m_sheduleTable__footer{
  margin-top: 10px;
}

.m_mainCard__item:has(.m_sheduleTable__body:empty) {
  display: none;
}


/* カード */
.m_card{
  padding-bottom: 10px;
  border-bottom: 1px solid #ccc;
}
.m_card__ttl{
  position:relative;
  height: 2lh;
  margin-bottom: 5px;
  line-height: 1.4;
  overflow: hidden;
}
.m_card__ttl::after{
  content: '';
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  width: 3em;
  height: 1lh;
  background: linear-gradient(to left, #fff, rgba(255, 255, 255, 0.96) 25%, rgba(255, 255, 255, 0) 100%);
  pointer-events: none;
}
.m_card__list{
  display: flex;
  align-items: stretch;
  gap: 5px;
}
.m_card__item{
  display: flex;
}
.m_card__link{
  display: block;
  padding: 2px 4px;
  border: 1px solid;
  border-radius: 2px;
  line-height: 1;
  color: inherit;
  font-weight: bold;
  font-size: 12px;
}
.m_card__link:hover{
  opacity: .7;
}
.m_card__link--haken{
  color: #9E2730;
}
.m_card__link--bup{
  color: #164A84;
}

/* 省略要素 */
.m_omission{
  position: relative;
  display: block;
  aspect-ratio: 3 / 1;
  overflow: hidden;
}
.m_omission::before{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(to top, #fff 0, rgba(255, 255, 255, 0) 50%);
  pointer-events: none;
}
.m_omission::after{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, .3);
  pointer-events: none;
}
.m_omission__inner{}
.m_omission__inner::before{
  content: "";
  width: 1.5em;
  height: 1.5em;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
  margin: auto;
  border-radius: .2em;
  font-size: clamp(40px, 5.4vw, 56px);
  background: rgba(255, 255, 255, 8);
  pointer-events: none;   
}
.m_omission__inner::after{
  content: "\f00e";
  font-family: "FontAwesome";
  width: 1em;
  height: 1em;
  display: block;
  font-weight: normal;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 2;
  margin: auto;
  color: #333;
  font-size: clamp(40px, 5.4vw, 56px);
  line-height: 1;
  pointer-events: none;
}

/* 同じカテゴリのシリーズ（特集）*/
.m_sameCatSeries{
  position: relative;
  padding-bottom: 26px;
}
.m_sameCatSeries__header{
  margin-bottom: 10px;
}
.m_sameCatSeries__img{
  line-height: 0;
  text-align: center;
}
.m_sameCatSeries__img img{
  max-width: 100%;
  height: auto;
}
.m_sameCatSeries__imgLink{
  display: block;
}
.m_sameCatSeries__imgLink:hover{
  opacity: .7;
}
.m_sameCatSeries__info{
  display: flex;
  justify-content: space-between;
}
.m_sameCatSeries__infoItem{}
.m_sameCatSeries__date{
  color: #d66c00;
  font-size: 12px!important;
  font-weight: bold;
}

.m_sameCatSeries__img + .m_sameCatSeries__info,
.m_sameCatSeries__info + .m_sameCatSeries__ttl{
  margin-top: 5px;
}
.m_sameCatSeries__ttl{
  position:relative;
  height: 2lh;
  line-height: 1.4;
  font-size: 14px!important;
  font-weight: bold;
  overflow: hidden;
}
.m_sameCatSeries__ttl::after{
  content: '';
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  width: 3em;
  height: 1lh;
  background: linear-gradient(to left, #fff, rgba(255, 255, 255, 0.96) 25%, rgba(255, 255, 255, 0) 100%);
  pointer-events: none;
}
.m_sameCatSeries__body{
  padding-top: 10px;
  border-top: 1px solid #333;
}
.m_sameCatSeries__footer{
  position: absolute;
  bottom: 0;
  right: 0;
}
.m_sameCatSeries__more{
  display: flex;
  justify-content: flex-end;
}
.m_sameCatSeries__moreTarget{
  border: 1px solid #ccc;
  display: block;
  color: inherit;
  transition: .3s;
  font-weight: bold;
  padding: 3px 10px;
  line-height: 1;
  font-size: 13px;
}
.m_sameCatSeries__moreTarget:hover{
  text-decoration: none;
  opacity: .7;
}

/* 同じカテゴリのシリーズ（特集）、個別研修リストの上書き */
.m_sameCatContentsList{
  padding-top: 0;
  border-top: none;
}
.l_section--primary > .l_section__item + .m_sameCatContentsList,
.l_section--primary > .m_sameCatContentsList + .l_section__item{
  margin-top: 32px;
} 
.m_sameCatContentsList__ttl {
  font-weight: bold;
  line-height: 1.4;
}
.m_sameCatContentsList__ttl {
  position: relative;
  margin-bottom: 20px;
  padding-left: 20px;
}
.m_sameCatContentsList__ttl::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  transform: translateX(-50%);
  width: 10px;
  height: 1lh;
  background: var(--primary-color);
}
.m_sameCatContentsList__jewel{
  display: none;
}

/* モーダル */
.m_modal{
  display: none;
  padding: 20px;
}
.m_modal__inner{
  max-width: 1000px;
  max-height: 80vh;
  overflow: auto;
}
.m_modal__btn{
  position: absolute;
  top: 0;
  right: 0;
  transform: translate(50%, -50%);
}
.m_modal__btnTatget{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: 2px solid;
  border-radius: 50%;
  background: #fff;
  color: inherit;
  font-size: 20px;
  line-height: 1;
  font-weight: bold;
  transition: opacity .3;
}
.m_modal__btnTatget:hover{
  opacity: .7;
}
/* 上書き */
.m_modal__inner .m_csvDiagramTable{
  overflow: visible;
}
.m_modal{
  width: fit-content !important;
}
/* 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);
  }
}
/* ワークセッションのリスト */
.m_worksessionList{
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
  margin: -10px;
}
.m_worksessionList__item{
  display: flex;
  width: 50%;
  padding: 10px;
}
.m_worksessionList__inner{
  display: block;
  width: 100%;
}
@media screen and (max-width: 768px){
  .m_worksessionList__item{
    width: 100%;
  }
}
/* ワークセッションのカード */
.m_worksessionCard{
  padding: 15px 20px;
  border: 1px solid;
  border-radius: 2px;
}
.m_worksessionCard__ttl{
  margin-bottom: 20px;
  padding-bottom: 10px;
  border-bottom: 1px solid;
}
.m_worksessionCard__item + .m_worksessionCard__item{
  margin-top: 10px;
}
.m_worksessionCard__item{}
.m_worksessionCard__plan{
  position: absolute;
  left: 0;
  display: block;
  padding: 3px 5px;
  border-radius: 2px;
  color: #fff;
  line-height: 1;
  letter-spacing: 0;
  font-weight: bold;
  font-size: 11px;
}
.m_worksessionCard__plan--primary{
  background: #B89623;
}
.m_worksessionCard__plan--secondary{
  background: #245A8C;
}
.m_worksessionCard__plan--tertiary{
  background: #3A8F65;
}

/* 成果物 */
.p_output{
  display: flex;
  align-items: stretch;
  margin: -10px;
  flex-wrap: wrap;
}
.p_output__item{
  display: flex;
  width: 50%;
  padding: 10px;
}
.p_output__card{
  display: block;
  color: inherit;
  transition: .3s opacity;
}
.p_output__card:hover{
  opacity: .3;
  text-decoration: none;
}
.p_output__ttl{
  margin-bottom: 10px;
  padding: 0;
  font-weight bold;
  font-size: 16px;
}
.p_output__text{
  padding-top: 0 !important;
}
.p_output__text + .p_output__text{
  margin-top: 5px;
}
.p_output__text img{
  max-width: 100%;
  height: auto;
  vertical-align: top;
}
@media screen and (max-width: 768px){
  .p_output__item{
    width: 100%;
  }
}

/* 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;
}


/*===============================

    State

================================*/
.scroll-hint-icon-wrap{
  z-index: 2;
  letter-spacing: 0;
}
.scroll-hint-icon{
  left: 50%;
  top: 50%;
  width: 140px;
  height: auto;
  transform: translate(-50%, -50%);
}
.scroll-hint-text{
  white-space: pre-wrap;
}
/*===============================

    Utility

================================*/
/* col */

.u_col1{width:8.333%;}
.u_col2{width:16.667%;}
.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%;}
}

.u_hasGutterXs{padding:2.5px;}
.u_hasGutterSm{padding:5px;}
.u_hasGutterMd{padding:7.5px;}
.u_hasGutterLg{padding:10px;}
.u_hasGutterXl{padding:12.5px;}

.u_noGutterXs{margin:-2.5px;}
.u_noGutterSm{margin:-5px;}
.u_noGutterMd{margin:-7.5px;}
.u_noGutterLg{margin:-10px;}
.u_noGutterXl{margin:-12.5px;}

@media screen and (max-width:599px) {
}

/* margin */
.u_mt20{
  margin-top: 20px;
}
.u_mb20{
  margin-bottom: 20px;
}


/* order */
.u_ord0 { order: 0 !important; }
.u_ord1 { order: 1 !important; }
.u_ord2 { order: 2 !important; }
.u_ord3 { order: 3 !important; }
.u_ord4 { order: 4 !important; }
.u_ord5 { order: 5 !important; }
.u_ord6 { order: 6 !important; }
.u_ord9999 { order: 9999 !important; }
.u_ord-1 { order: -1 !important; }