@charset "UTF-8";
/* foundation */
body {
  line-height: normal;
  counter-reset: qaIndex;
}
.wrapper{
  font:400 14px "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;
}
[v-cloak]{
  display: none;
}

/* ================
component
================ */
/* 節 */
.c_section{}
.c_section__item{}
.c_section--primary{}
.c_section--primary > .c_section__item + .c_section__item{
  margin-top: 24px;
  padding-top: 24px;
  border-top: 1px solid #2c4b79;
}
/* プレミアム版 */
.c_section--primary.premium > .c_section__item + .c_section__item{
    border-top: 2px solid #362d2c;
}
.c_section--secondary{}
.c_section--secondary > *:not(img):not(h3){
  padding-left: 1.5em;
}
.c_section--secondary > *:not(h3) + *{
  margin-top: 16px;
}
.c_section--secondary > * > * + *{
  margin-top: 8px;
}
.c_section--secondary h3{
  position: relative;
  margin-bottom: 8px;
  padding-left: 1.5em;
  font-weight: bold;
  font-size: 14px;
}
.c_section--secondary h3::before{
  content: "◆";
  position: absolute;
  left: 0;
}
.c_section--secondary h4{
  font-weight: bold;
  font-size: 14px;
}
.c_section--secondary h5{
  position: relative;
  color: #8E6200;
  font-weight: bold;
  font-size: 16px;
}
.c_section--secondary a{
  position: relative;
  display: block;
  color: #1B1464;
}
.c_section--secondary a:hover{
  text-decoration: underline
}
.c_section--secondary a:not(.num){
  padding-left: 1em;
}
.c_section--secondary a:not(.num)::before{
  content: "\f105";
  position: absolute;
  left: 0;
  display: block;
  color: #2c4b79;
  font: 22px / 1  FontAwesome;
}
.c_section--secondary .num{
  position: relative;
  display: block;
  padding-left: 1.5em;
}
.c_section--secondary .num > span{
  position: absolute;
  display: block;
  left: 0;
}
.c_section--secondary .dot{
  position: relative;
  display: block;
  padding-left: 1em;
}
.c_section--secondary .dot::before{
  content: "・";
  position: absolute;
  display: block;
  left: 0;
}
.c_section--secondary .ast{
  position: relative;
  display: block;
  padding-left: 1.5em;
}
.c_section--secondary .ast::before{
  content: "※";
  position: absolute;
  display: block;
  left: 0;
}
.c_section--secondary .small{
  font-size: 12px;
}
.c_section--secondary .arrow{
  width: 0;
  margin-left: auto;
  margin-right: auto;
  padding: 0 !important;
  border-top: 24px solid #ccc;
  border-left: 40px solid transparent;
  border-right: 40px solid transparent;
}
.c_section--movie{}
.c_section--movie > .c_section__item{
  padding-left: 1.5em;
}
.c_section--movie > .c_section__item--img{
  padding-left: 0;
}
.c_section--movie > .c_section__item + .c_section__item{
  margin-top: 16px;
}

@media screen and (max-width: 599px){
  .c_section--secondary{
    padding-left: 0;
  }
}
/* ナビ */
.c_nav{
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  margin: -1px;
}
.c_nav__item{
  display: flex;
  width: 100%;
  /* padding: 1px; */
}
.c_nav__target{
  display: block;
  width: 100%;
  text-align: center;
  color: inherit;
  line-height: 1;
}
.c_nav--local{}
.c_nav--local .c_nav__target{
  background-color: #eee;
  padding: 8px 0;
  border-bottom: 2px solid transparent;
  color: #000;
}
.c_nav--local .c_nav__target:hover{
  background-color: #2c4b79;
  color: #eee;
}
/* プレミアム版 */
.c_nav--local .c_nav__target.premium{
  background-color: #f5efd9;
}
.c_nav--local .c_nav__target.premium:hover{
  background-color: #362d2c;
  color: #f5efd9;
}

@media screen and (max-width: 599px){
  .c_nav--local{
    flex-wrap: wrap;
    margin: -2px;
  }
  .c_nav--local .c_nav__item{
    width: 33.333%;
    padding: 2px;
  }
  .c_nav--local .c_nav__target{
    font-size: 12px;
    letter-spacing: 0;
  }
}
/* ボタン */
.c_btn{}
.c_btn__target{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  line-height: 1;
  color: inherit;
}
.c_btn__target:hover{
  opacity: .7;
}
.c_btn__target::before{
  content: "";
  display: block;
  height: 2.5em;
}
.c_btn__target::before{
  display: block;
  height: 2.5em;
}
.c_btn--mainAsk{}
.c_btn--mainAsk > .c_btn__target{
  width: calc(100% - 2px);
  border-radius: 120px;
  background: #2c4b79;
  color: #fff;
  letter-spacing: 3px;
  font-weight: bold;
  font-size: 18px;
  box-shadow: 2px 2px 2px #333;
}
.c_btn--mainAsk > .c_btn__target.premium{
    background: #362d2c;
}
.c_btn--print{
  width: 88px;
}
.c_btn--print > .c_btn__target{
  border: 1px solid #ccc;
  border-radius: 4px;
  background: linear-gradient(to top ,#ccc 0%, transparent 50%);
  font-weight: bold;
}
.c_btn--subAsk{
  width: 190px;
  margin-right: 2px;
}
.c_btn--subAsk > .c_btn__target{box-shadow: 2px 2px 0 rgb(0, 0, 0, 1);border-radius: 4px;background-image: linear-gradient(#0f7036, #003515, #1a1a1a);color: #fff;font-weight: bold;background-size: 130%;}

/* アイコン */
.c_hasIco{
  position: relative;
  display: block;
}
.c_hasIco::before{
  content: "";
  position: absolute;
  left: 0;
  display: block;
}
.c_hasIco--link{
  padding-left: 1em;
}

.c_hasIco--link::before{
  content: "\f105";
  color: #2c4b79;
  font: 22px / 1  FontAwesome;
}
.c_hasIco--print{
  padding-left: 1.5em;
}
.c_hasIco--print::before{
  content: "\f02f";
  top: 50%;
  font-family: FontAwesome;
  font-size: 16px;
  transform: translateY(-50%);
}
.c_hasIco--heading{
  padding-left: 2.2em;
}
.c_hasIco--heading::before{
  top: 50%;
  color: #2c4b79;
  font-family: FontAwesome;
  font-size: 24px;
  transform: translateY(-50%);
}
/* プレミアム版 */
.c_hasIco--heading.premium::before{
  color: #362d2c;
}

.c_hasIco--target::before{
  content : "\f007";
  left: 8px;
}
.c_hasIco--task::before{
  content : "\f27a";
  left: 4px;
}
.c_hasIco--cause::before{
  content : "\f0e7";
  left: 8px;
}
.c_hasIco--solution::before{
  content : "\f024";
  left: 4px;
}
.c_hasIco--contents::before{
  content : "\f03a";
  left: 4px;
}
.c_hasIco--trainer::before{
  content : "\f19d";
  left: 4px;
}
.c_hasIco--movie::before{
  content : "\f03d";
  left: 4px;
}
.c_hasIco--levelup::before{
  content: url(/resource/img/package/icon_levelup.png);
}
/* 見出し */
.c_heading{}
.c_heading__ttl{
  font-weight: bold;
  line-height: 1;
}
.c_heading__img{
  line-height: 0;
}
.c_heading__img > img{
  max-width: 100%;
  height: auto;
}
.c_heading__imgWrap{}
.c_heading__sub{
  line-height: 1;
}
.c_heading--primary{
  position: relative;
  margin-bottom: 8px;
  padding-top: 12px;
  border-top: 3px solid #2c4b79;
}
.c_heading--primary::before {
  content: url(/resource/img/package/icon_blue.jpg);
  position: absolute;
  top: 0px;
  left: 0;
  z-index: 1;
  width: 88px;
  text-align: center;
  /*background: #2c4b79;*/
  /* padding-top: 2px; */
}
.c_heading--primary .c_heading__imgWrap{
  position: relative;
}
.c_heading--primary .c_heading__imgIco{
  position: absolute;
  top: 4px;
  right: 4px;
  display: block;
  padding: 4px;
  line-height: 0;
  background: rgba(255, 255, 255, .9);
}
.c_heading--primary .c_heading__imgIco:hover{
  opacity: .7;
}
/* プレミアム版 */
.c_heading--primary.premium{
  border-top: 3px solid #362d2c;
}
.c_heading--primary.premium::before {
  content: url("/resource/img/package/icon_brown.jpg");
  /*background: #774f00;*/
}
.c_heading--primary > .c_heading__ttl{
  margin-bottom: 8px;
  padding-left: 104px;
  font-size: 22px;
}
.c_heading--primary > .c_heading__sub{
  margin-bottom: 8px;
  padding-left: 104px;
  font-size: 16px;
}
.c_heading--secondary{
  margin-bottom: 16px;
}
.c_heading--secondary > .c_heading__ttl{
  font-size: 18px;
}
@media screen and (max-width: 768px){
  .c_heading--primary > .c_heading__sub{
    font-size: 14px;
    line-height: 1.4;
  }
  .c_heading--primary > .c_heading__ttl{
    font-size: 16px;
    line-height: 1.3;
  }
}
@media screen and (max-width: 599px){
  .c_heading--primary::before,
  .c_heading--primary.premium::before {
    content: none;
  }
  .c_heading--primary > .c_heading__ttl,
  .c_heading--primary > .c_heading__sub{
    padding-left: 0;
  }
  .c_heading--primary .c_heading__imgIco{
    width: 64px;
  }
}
/* リンク */
.c_link{
  color: #1B1464;
}
.c_link:hover{
  text-decoration: underline
}


/* ================
project
================ */
/* ボタンボックス */
.p_btnBox{
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin: 0 -8px;
}
.p_btnBox__item{
  padding: 0 8px;
}
/* キャッチコピー */
.p_catch{
  padding: 32px 28px;
  font-weight: bold;
  font-size: 15px;
}
.p_catch--colorTheme{
  background: #ffffff;
  background-image: url("/resource/img/package/corner_b_top.png"), url("/resource/img/package/corner_b_bottom.png");
  background-repeat: no-repeat,no-repeat;
  background-position: top right, bottom left;
  border: 2px solid #2c4b79;
  position: relative;
  color: #000;
}

.p_catch--colorTheme::before {
  content: "プラン概要";
  color: #2c4b79;
  background-color: #fff;
  /* background-image: url("/resource/img/package/overview_icon-csp.png"); */
  background-repeat: no-repeat;
  display: block;
  width: auto;
  padding: 0 10px;
  position: absolute;
  left: 16px;
  top: -24px;
  height: 41px;
  line-height: 41px;
}
/* プレミアム版 */
.p_catch--colorTheme.premium{
  background-image: url("/resource/img/package/corner_a_top.png"), url("/resource/img/package/corner_a_bottom.png");
  background-repeat: no-repeat,no-repeat;
  background-position: top right, bottom left;
  border: 2px solid #362d2c;
}
.p_catch--colorTheme.premium::before {
  color: #362d2c;
  /* background-image: url("/resource/img/package/overview_icon-csp.png"); */
}

/* 概要 */
.p_overview{}
.p_overview__item{
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: wrap;
}
.p_overview__item + .p_overview__item{
  margin: 2px -1px 0 -1px;
}
.p_overview__inner{
  display: flex;
  padding: 0 1px;
}
.p_overview__msg{
  width: 100%;
  padding: 4px 1em;
}
.p_overview__msg--term{
  display: flex;
  align-items: center;
  background: #2c4b79;
  color: #eee;
}
.p_overview__msg--descr{
  display: block;
  border: 1px solid #2c4b79;
  color: #000;
}
/* プレミアム版 */
.p_overview__msg--term.premium{
  background: #362d2c;
  color:#f5efd9;
}
.p_overview__msg--descr.premium{
  border: 1px solid #362d2c;
}

@media screen and (max-width: 599px){
  .p_overview__item + .p_overview__item{
    margin: 8px 0 0 0;
  }
}
/* 提案リンク */
.p_proposalLink{}
.p_proposalLink__target{
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin: 0 -8px;
  color: inherit;
  text-decoration: none;
}
.p_proposalLink__target:hover{
  color: inherit;
  text-decoration: none;
  opacity: .7;
}
.p_proposalLink__img{
  width: 144px;
  padding: 0 8px;
  line-height: 0;
}
.p_proposalLink__img > img{
  max-width: 100%;
  height: auto;
}
.p_proposalLink__body{
  width: calc(100% - 144px);
  padding: 0 8px;
  font-weight: bold;
  font-size: 16px;
}
.p_proposalLink__body--colorTheme{
  color: #2c4b79;
}
/* プレミアム版 */
.p_proposalLink__body--colorTheme.premium{
  color: #362d2c;
}

@media screen and (max-width: 599px){
  .p_proposalLink__img{
    width: 80px;
  }
  .p_proposalLink__body{
    width: calc(100% - 80px);
    font-size: 12px;
  }
}
/* 講師リンク */
.p_trainierLink{
  display: flex;
  justify-content: flex-end;
}
/* 強調メッセージ */
.p_strongMsg{
  text-align: center;
  font-weight: bold;
  font-size: 16px;
}
.p_strongMsg--colorTheme{
  color: #2c4b79;
}
@media screen and (max-width: 599px){
  .p_strongMsg{
    font-size: 12px;
  }
}
/* 丸アイコンをもつボックス */
.p_hasCircleList  li{
  position: relative;
  padding-left: 1.5em
}
.p_hasCircleList li::before{
  content: "●";
  position: absolute;
  left: 0;
  font-size: .8em;
  line-height: 1;
  top: 6px;
}
.p_hasCircleList--colorTheme li::before{
  color: #2c4b79;
}
/* プレミアム版 */
.p_hasCircleList--colorTheme.premium li::before{
  color: #362d2c;
}

/* レコメンドリスト */
.p_recommendList{}
.p_recommendList a::before{
  top: 50%;
  transform: translateY(-50%);
}
.p_recommendList span{
  display: block;
  text-decoration: underline;
}

/* プランナー動画 */
.p_movie{
  position: relative;
  width: 100%;
  padding-top: calc(100% * 9 / 16);
}
.p_movie > iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/* プランナー動画のサムネイル */
.p_thumbnailMovie{
  text-align: center;
}
.p_thumbnailMovie__target{
  position: relative;
  display: inline-block;
  overflow: hidden;
  line-height: 0;
  color: inherit;
}
.p_thumbnailMovie__target::before{
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  width: 20%;
  padding-top: 20%;
  display: block;
  background: radial-gradient(circle at center, rgba(255, 255, 255, .8) calc(100% * .707), transparent 0);
  transform: translate(-50%, -50%);
  transition: .3s transform;
}
.p_thumbnailMovie__target:hover::before{
  transform: translate(-50%, -50%) scale(1.6);
}
.p_thumbnailMovie__target::after{
  content: "▼";
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  font-size: 24px;
  line-height: 0;
  transform: translate(-50%, -50%) rotate(-90deg);
}
.p_thumbnailMovie__target > img{
  max-width: 100%;
  height: auto;
}

/* 更新情報 */
.p_infoBox {
  display: flex;
  justify-content: flex-end;
  line-height: 1;
  font-size: 11px;
  margin-top: 3px;
}

.p_code + .p_heading_date { margin-left: 16px; }

/* faq */
.p_faq{}
.p_faq .p_faq__q{
  color: inherit;
  cursor: pointer;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.3;
  padding-left: 2em;
  position: relative;
  counter-increment: qaIndex;
}
.p_faq .p_faq__q::before{
  content: "Q" counter(qaIndex);
  color: #9E2730;
}
.p_faq__a{
  position: relative;
  padding-left: 2em;
  white-space: pre-wrap;
  font-family: inherit;
}
.p_faq__a::before{
  content: "A";
  position: absolute;
  top: 0;
  left: 0;
  font-weight: bold;
}
.p_faq__link{
  display: flex;
  justify-content: flex-end;
  margin-top: 20px;
}
.answer-enter-active,.answer-leave-active{transition:.5s height,.5s opacity;}
.answer-enter{opacity:0;}
.answer-leave-to{height:0;opacity:0;}

/* プリント用コピーライト */
.p_printCopyRight{
  font-size: 11px;
  text-align: center;
}


/*
    サイドナビ
================================*/
/* 記事一覧 */
.p_sideListBox { 
  font-family: "Helvetica Neue", "Noto Sans JP", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, メイリオ, Meiryo, sans-serif;
  margin-bottom: 20px
}

.p_sideListBox_ttl {
  border-top: 3px solid #2c4b79;
  border-bottom: 1px solid #362d2c;
  font-size: 14px;
  font-weight: normal;
  margin-bottom: 5px;
  padding: 5px 0;
}

/* プレミアム版 */
.premium .p_sideListBox_ttl {border-top-color: #372d2c;}

.p_sideListBox_link {
  align-items: center;
  color: currentColor;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}

.p_sideListBox_link::before {
  content: "";
  color: #2c4b79;
  font-family: "Font Awesome 5 Free";
  font-weight: bold;
  font-size: 1.2em;
  display: block;
  margin-right: 5px;
}

.p_sideListBox_link.theme::before { content: "\f002"; }
.p_sideListBox_link.layered::before { content: "\f5fd"; }
.p_sideListBox_link.industry::before { content: "\f277"; }
.p_sideListBox_link.organization::before { content: "\f059"; }

/* プレミアム版 */
.premium .p_sideListBox_link::before { color: #372d2c; }


.p_pageNav_link.is-on:hover { cursor: default; }

.p_sideListBox_link::after {
  border-top: 3px solid #2c4b79;
  border-right: 3px solid #2c4b79;
  content: "";
  display: inline-block;
  height: .5em;
  margin-right: 8px;
  margin-left: auto;
  transform: rotate(45deg);
  width: .5em;
}

/* プレミアム版 */
.premium .p_sideListBox_link::after {
  border-top-color: #372d2c;
  border-right-color: #372d2c;
}

 
.p_sideListBox_link:hover {
  opacity: .6;
}

.p_sideList {}

.p_sideList_item {}

.p_sideList_item + .p_sideList_item {
  margin-top: 5px;
}

.p_sideList_item > a {
  color: inherit;
  display: block;
  position: relative;
  transition: .3s;
}

.p_sideList_item > a:hover {
  opacity: .6;
  text-decoration: none;
}

/* 検索ボックス非表示 */
.p_sideList_search { display: none; }

/* banner */
.p_sideBannerBox { margin-bottom: 20px; }

.p_sideBannerBox_img {}

.p_sideBannerBox_img + .p_sideBannerBox_img { margin-top: 8px; }

.p_sideBannerBox_img a {}

.p_sideBannerBox_img a:hover { opacity: .6; }

.p_sideBannerBox_img img { display: block; }



/* オーバーレイ */
.p_overlay{
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
  min-width: 100vw;
  min-height: 100vh;
  background: #333;
  opacity: .9;
}
/* ================
state
================ */
[v-cloak]{
  display: none;
}
.js_modal-enter-active, .js_modal-leave-active{
  transition: .8s opacity;
}
.js_modal-enter, .js_modal-leave-to{
  opacity: 0;
}

/* ================
utility
================ */
/*横幅*/
.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_mb8{
  margin-bottom: 8px;
}
.u_mb16{
  margin-bottom: 16px;
}
.u_mb24{
  margin-bottom: 24px;
}
.u_mb40{
  margin-bottom: 40px;
}
.u_mt8{
  margin-top: 8px;
}
.u_mt16{
  margin-top: 16px;
}
.u_mt24{
  margin-top: 24px;
}
.u_mt40{
  margin-top: 40px;
}

/*表示*/
.u_hide{
  display: none;
}