@charset "utf-8";
/* CSS Document */


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

    common

================================*/
:root { font-size: 62.5%; }/* 1(r)em = 10px */

div#cont { margin: 0;}

.wrapper {
  box-sizing: border-box;
  /* font-family:"Helvetica Neue", "Noto Sans JP", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, メイリオ, Meiryo, sans-serif; */
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6;
  margin: 20px auto 0;
  overflow:hidden;
  text-align: left;
  width: 980px;
}

@media print {
.wrapper { font-family: '游ゴシック' , 'Hiragino Kaku Gothic ProN' , 'ヒラギノ角ゴ ProN' , Meiryo , 'メイリオ' , sans-serif; }
}

.header { margin: 20px 0; }

.container {
  float: right;
  width: 730px;
}

.sectionBox {}

.sectionBox + .sectionBox { margin-top: 50px; }

.sectionBox-sub { margin: 30px 0; }

/*.sectionBox-sub + .sectionBox-sub { margin-top: 30px; }*/



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

    project

================================*/
/*
    キービジュアル
================================*/
.topImage { margin-bottom: 30px; }
.topImage img {
  display: block;
  height: auto;
  width: 100%;
}


/*
    ナビ
================================*/
.list_navi {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 20px -5px;
}

.list_navi_item {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  padding: 5px;
  width: 50%;
}

.list_navi_link {
  -ms-align-items: center;
  align-items: center;
  background-color: #8b4513;
  border-radius: 5px;
  color: #fff;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
  line-height: 1;
  padding: 10px;
  text-decoration: none;
  width: 100%;
}

.list_navi_link:hover {
  color: #fff;
  opacity: .6;
  text-decoration: none;
}


/*
    見出し
================================*/
.simple h2,
.p_heading-primary {
  background-color: #ffdab9;
  border-left: 8px solid #8b4513;
  color: #333333;
  font-size: 24px;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 20px;
  padding: 10px;
}

.p_heading-secondary {
  border-left: 8px solid #8b4513;
  color: #8b4513;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 10px;
  padding: 8px;
}

/* 関連の研修を探す 
.simple h2 {
  border-left-color: #F54A11;
  color: #F54A11;
  font-size: 25px;
  margin: 25px 0 20px;
  padding: 5px 0 5px 10px;
}*/


/*
    dl
================================*/
.p_descriptionBox {}

.p_descriptionBox_inner {}

.p_descriptionBox_inner + .p_descriptionBox_inner { margin-top: 20px; }

.p_descriptionBox_ttl {
  border-bottom: 2px dotted #F5BD11;
  margin-bottom: 5px;
  padding-bottom: 5px;
}

.p_descriptionBox_txt {}


/*
    table
================================*/
.p_tbl {
  border-collapse: collapse;
  font-size: 16px;
  width: 100%;
}

.p_tbl-simple {
  background-color: #fffaf0;
  font-size: .85em;
  margin: 20px 0;
}

.p_tbl-simple tr:nth-of-type(2n-1) {
  background-color: #ffdab9;
}

.p_tbl-simple td {
  padding: 10px;
}

.p_tbl-simple td:first-of-type {
  border-right: 1px solid #fff;
  font-weight: 700;
  text-align: center;
  vertical-align: middle;
  width: 25%;
}

/* 価格表 */
.p_tbl-price {
  border: 3px solid #F5BD11;
  font-size: .85em;
  margin: 20px 0 0;
}

.p_tbl-price tr.bgColor { background-color: #F5D67A; }
.p_tbl-price tr.attention td { color: red; }

.p_tbl-price th {
  border: 1px solid #F5BD11;
  padding: 5px;
  text-align: center;
  width: 15%;
}
.p_tbl-price td {
  border: 1px solid #F5BD11;
  padding: 5px;
  text-align: center;
  vertical-align: middle;
}

/* NEW価格表 */
.container_table {
  overflow: auto;
  width: 100%;
}

.tbl_price {
  border-collapse: collapse;
  font-size: 15px;
  width: 100%;
}

.tbl_price thead {
  background-color: #8b4513;
  border-bottom: 3px solid #fff;
  color: #fff;
  text-align: center;
}

.tbl_price thead th {
  border-left: 1px solid #fff;
  font-weight: normal;
  padding: 3px;
}

.tbl_price thead th:first-of-type { border-left: none; }

.tbl_price tbody {}

.tbl_price tbody td {
  border-left: 1px solid #fff;
  padding: 3px 5px;
  /*text-align: center;*/
  vertical-align: middle;
}

.tbl_price tbody tr:nth-of-type(2n+1) > td { background-color: #FFDAB9; }
.tbl_price tbody tr:nth-of-type(2n) > td { background-color: #fffaf0; }

.tbl_price tbody td:nth-of-type(3) ,
.tbl_price tbody td:nth-of-type(2n)  { text-align: right; }

@media screen and (max-width: 599px){
  .tbl_price { width: 730px; }
}


/*
    リスト
================================*/
/* ※リスト */
.list_note {
  color: #666;
  font-size: 12px;
  margin: 10px 0;
  padding-left: 1em;
}

.list_note_item {
  text-indent: -1em;
}

.list_note_item::before {
  content: "※";
  display: inline;
}

/* 点 */
.list_bullet {}

.list_bullet_item {
  padding-left: 1em;
  text-indent: -1em;
}

/* 矢印 */
.list_hasArrow { margin: 30px 0; }

.list_hasArrow_item {
  -ms-align-items: baseline;
  align-items: baseline;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}

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

.list_hasArrow_item::before {
  border: 5px solid transparent;
  border-right: none;
  border-left: 8px solid #8b4513;
  content: "";
  display: block;
  flex-shrink: 0;
  height: 0;
  margin-right: 10px;
  width: 0;
}

/*.list_hasArrow_item > a {
  color: currentColor;
  text-decoration: none;
}

.list_hasArrow_item > a:hover {
  color: currentColor;
  text-decoration: underline;
}*/




/*
    flex box
================================*/
.p_flexBox {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}

.p_flexBox-frame {
  border: 3px solid #F5114A;
  border-radius: 5px;
  padding: 10px;
}

.p_flexBox-frame.hasPaddingL {
  padding-left: 110px;
}

/* new flex box */
.box_flex {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 -10px;
}

.box_flex_inner {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  padding: 10px;
}

.box_flex-full {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 0 30px;
}

.box_flex-full_inner {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}

/*横幅*/
.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){
  .p_flexBox-frame.hasPaddingL { padding-left: 10px }
}

/*
    サービスの全体像と流れ
================================*/
.p_flowBox {
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
  justify-content: space-between;
}

.p_flowBox + .p_flowBox { margin-top: 20px; }

.p_flowBox_ttl {
  background-color: #F54A11;
  color: #fff;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
  /*padding: 50px 0; 仮 */
  position: relative;
  text-align: center;
  width: 145px;
}

.p_flowBox_ttl.first { background-color:#8b4513; }
.p_flowBox_ttl.second { background-color: #8b4513; }
.p_flowBox_ttl.last { background-color: #8b4513; }


.p_flowBox_ttl > span {
  -ms-align-items: center;
  align-items: center;
  /*display: block;*/
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
  letter-spacing: .05em;
  margin: 35px auto;
  width: 100%;
}

.p_flowBox_ttl::before {
  border: 72px solid #F54A11;
  border-top: 25px solid #fff;
  border-bottom: none;
  content: "";
  height: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
}

.p_flowBox_ttl::after {
  border: 73px solid #fff;
  border-top: 25px solid #F54A11;
  border-bottom: none;
  content: "";
  height: 0;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
}

.p_flowBox_ttl.first::before { border-color:#fff #8b4513 #fff; }
.p_flowBox_ttl.second::before { border-color: #fff #8b4513 #fff; }
.p_flowBox_ttl.last::before { border-color: #fff #8b4513 #fff; }

.p_flowBox_ttl.first::after { border-top-color:#8b4513; }
.p_flowBox_ttl.second::after { border-top-color: #8b4513; }
.p_flowBox_ttl.last::after { border-top-color: #8b4513; }

.p_flowBox_cont {
  border: 3px solid #F54A11;
  font-size: 16px;
  padding: 10px;
  width: 76%;
}

.p_flowBox_cont.first { border-color:#8b4513; }
.p_flowBox_cont.second { border-color: #8b4513; }
.p_flowBox_cont.last { border-color: #8b4513; }


/*
    料金について
================================*/
.p_plan {
  -webkit-flex: 1;
  -moz-flex: 1;
  -ms-flex: 1;
  -o-flex: 1;
  flex: 1;
}

.p_plan_name {}

.p_plan_price {
  font-size: 2.5em;
  font-weight: bold;
}

.p_plan_price > span { font-size: .5em; }

.p_plan_comment {
  font-size: 14px;
}

.p_plan_tag {
  align-items: center;
  background: pink;
  display: flex;
  justify-content: center;
  margin: -10px 10px -10px -10px;
  padding: 0 15px;
}


/*
    Q&Aボックス
================================*/
.box_faq {
  border: 1px solid #ccc;
  padding: 16px 32px;
}

.box_faq + .box_faq { margin-top: 30px; }

/* Q&A Question */
.box_faq_question {
  -ms-align-items: baseline;
  align-items: baseline;
  border-bottom: 1px solid #ccc;
  font-size: 20px;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  line-height: 1.3;
  margin-bottom: 16px;
  /*padding-left: 38px;*/
  padding-bottom: 12px;
  position: relative;
}

.box_faq_question::before {
  color: #58c9e6;
  content: url("https://www.insource.co.jp/resource/img/hierarchy_test_faq/icon_question.png");
  display: inline-block;
  font-weight: 700;
  margin-right: 20px;
  transform: translateY(3px);
  /*position: absolute;
  top: 0;
  left: 0;*/
}

/* Q&A Answer */
.box_faq_answer {
  -ms-align-items: baseline;
  align-items: baseline;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;  
  margin-bottom: 10px;
  /*padding-left: 38px; */
  position: relative;
}

.box_faq_answer::before {
  color: #e25050;
  content: url("https://www.insource.co.jp/resource/img/hierarchy_test_faq/icon_answer.png");
  display: inline-block;
  font-weight: 700;
  margin-right: 20px;
  transform: translateY(3px);
  /*position: absolute;
  top: 0;
  left: 0;*/
}

.box_faq_answer_inner {}



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

    component

================================*/
/* 普通のテキスト */
.c_text {}

.c_text + .c_text { margin-top: 20px; }

.c_text-note { font-size: 13px; }

.c_comment_indent {
  display: block;
  padding-left: 1em;
  text-indent: -1em;
}

/* font awesome */
.c_icon-plus {
  color: #F5114A;
}

.c_icon-plus .fa-plus {
  color: #F5114A;
  font-size: 2.5em;
}

/* お問合せボックス */
#inquireBox_730 { margin-top: 40px; }

/*
    2021/09/16 追記
================================*/
.text_normal {}

.text_emphasis {
  font-size: 21px;
}

.text_emphasis .u_em {
  font-size: 1.8em;
  font-weight: bold;
}

/* 注訳 */
.u_sup {
  font-size: 10px;
  vertical-align: super;
}

/* リンクボタン */
.box_link {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
  margin: 20px 0;
}

.link_btn {
  background-color: #8b4513;
  border-radius: 10px;
  color: #fff;
  padding: 10px;
  text-align: center;
  /*width: 40%;*/
}

.link_btn:hover {
  color: #fff;
  opacity: .6;
  text-decoration: none;
}

.link_normal {
  color: #052674;
  text-decoration: none;
}

.link_normal:hover {
  color: #005580;
  text-decoration: underline;
}

.p_pushBtn {
  background: #ea3636;
  border-radius: 3px;
  box-shadow: 0 3px 0 #c51e0d;
  color: #FFF;
  display: inline-block;
  font-family: inherit;
  font-size: 14px;
  height: 44px;
  margin-bottom: 3px;
  padding: 12px 3px;
  text-align: center;
  text-decoration: none;
  /*width: 50%;*/
}

.p_pushBtn:hover {
  color: #fff;
  box-shadow: none;
  -ms-transform: translateY(3px);
  -webkit-transform: translateY(3px);
  text-decoration: none;
  transform: translateY(3px);
}


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

    Utility

================================*/
/* color */
.u_color-coral { color: #ff7f50 !important; }
.u_color-rouge { color: #ec2c43 !important; }
.u_color-crimson { color: #e6002d !important; }

/* display */
.u_d-b { display: block !important; }
.u_d-n { display: none !important; }
.u_d-ib { display: inline-block!important; }
.u_d-fx { display: flex !important; }
.u_disp-b { display: block; }
.u_disp-ib { display: inline-block; }
.u_disp-i { display: inline; }
.u_disp-fx { display: flex; }

@media screen and (max-width: 599px){
  .u_res_d-n { display: none; }
  .u_res_d-b { display: block; }
}

/* float */
.u_fl-n { float: none !important; }
.u_fl-l { float: left !important; }
.u_fl-r { float: right !important; }

/* font-size */
.u_fz-xs { font-size: .75em !important; }
.u_fz-sm { font-size: .875em !important; }
.u_fz-md { font-size: 1em !important; }
.u_fz-lg { font-size: 1.25em !important; }
.u_fz-xl { font-size: 1.5em !important; }
.u_fz-sr { font-size: smaller !important; }
.u_fz-lr { font-size: larger !important; }

.u_fz10 { font-size: 10px !important; }
.u_fz11 { font-size: 11px !important; }
.u_fz12 { font-size: 12px !important; }
.u_fz13 { font-size: 13px !important; }
.u_fz14 { font-size: 14px !important; }
.u_fz15 { font-size: 15px !important; }
.u_fz16 { font-size: 16px !important; }
.u_fz17 { font-size: 17px !important; }
.u_fz18 { font-size: 18px !important; }
.u_fz19 { font-size: 19px !important; }
.u_fz20 { font-size: 20px !important; }

/* font-weigth */

.u_fw-b { font-weight: bold !important; }
.u_fw-n { font-weight: normal !important; }

/* line-height */
.u_lh-nm { line-height: normal !important; }
.u_lh-ih { line-height: inherit !important; }

.u_lh0 { line-height: 0 !important; }
.u_lh1 { line-height: 1 !important; }
.u_lh2 { line-height: 2 !important; }
.u_lh3 { line-height: 3 !important; }
.u_lh4 { line-height: 4 !important; }
.u_lh5 { line-height: 5 !important; }
.u_lh6 { line-height: 6 !important; }
.u_lh-xs { line-height: 1.25 !important; }
.u_lh-sm { line-height: 1.33 !important; }
.u_lh-md { line-height: 1.5 !important; }
.u_lh-lg { line-height: 1.75 !important; }
.u_lh-xl { line-height: 2 !important; }

/* padding */
.u_p10 { padding: 10px; }
.u_p15 { padding: 15px; }
.u_p20 { padding: 20px; }
.u_p30 { padding: 30px; }
.u_p50 { padding: 50px; }
.u_p50 { padding: 50px; }
.u_p100 { padding: 100px; }

.u_pb10 { padding-bottom: 10px; }
.u_pb15 { padding-bottom: 15px; }
.u_pb20 { padding-bottom: 20px; }
.u_pb30 { padding-bottom: 30px; }
.u_pb50 { padding-bottom: 50px; }
.u_pb50 { padding-bottom: 50px; }
.u_pb100 { padding-bottom: 100px; }

.u_px0 { padding-left: 0; padding-right: 0; }
.u_py0 { padding-top: 0; padding-bottom: 0; }
.u_px-xs { padding-left: 0.2rem; padding-right: 0.2rem; }
.u_py-xs { padding-top: 0.2rem; padding-bottom: 0.2rem; }
.u_px-sm { padding-left: 0.5rem; padding-right: 0.5rem; }
.u_py-sm { padding-top: 0.5rem; padding-bottom: 0.5rem; }
.u_px-md { padding-left: 1rem; padding-right: 1rem; }
.u_py-md { padding-top: 1rem; padding-bottom: 1rem; }
.u_px-lg { padding-left: 1.5rem; padding-right: 1.5rem; }
.u_py-lg { padding-top: 1.5rem; padding-bottom: 1.5rem; }
.u_px-xl { padding-left: 8rem; padding-right: 3rem; }
.u_py-xl { padding-top: 3rem; padding-bottom: 3rem; }

/* margin */
.u_mt0 { margin-top: 0 !important; }
.u_mt-a { margin-top: auto !important; }
.u_mt-xs { margin-top: 0.2rem !important; }
.u_mt-sm { margin-top: 0.5rem !important; }
.u_mt-md { margin-top: 1rem !important; }
.u_mt-lg { margin-top: 1.5rem !important; }
.u_mt-xl { margin-top: 3rem !important; }

.u_ml0 { margin-left: 0 !important; }
.u_ml-a { margin-left: auto !important; }
.u_ml-xs { margin-left: 0.2rem !important; }
.u_ml-sm { margin-left: 0.5rem !important; }
.u_ml-md { margin-left: 1rem !important; }
.u_ml-lg { margin-left: 1.5rem !important; }
.u_ml-xl { margin-left: 3rem !important; }

.u_mb0 { margin-bottom: 0 !important; }
.u_mb-a { margin-bottom: auto !important; }
.u_mb-xs { margin-bottom: 0.2rem !important; }
.u_mb-sm { margin-bottom: 0.5rem !important; }
.u_mb-md { margin-bottom: 1rem !important; }
.u_mb-lg { margin-bottom: 1.5rem !important; }
.u_mb-xl { margin-bottom: 3rem !important; }

.u_mr0 { margin-right: 0 !important; }
.u_mr-a { margin-right: auto !important; }
.u_mr-xs { margin-right: 0.2rem !important; }
.u_mr-sm { margin-right: 0.5rem !important; }
.u_mr-md { margin-right: 1rem !important; }
.u_mr-lg { margin-right: 1.5rem !important; }
.u_mr-xl { margin-right: 3rem !important; }

.u_my0 { margin-top: 0 !important; margin-bottom: 0 !important; }
.u_my10 { margin-top: 10px !important; margin-bottom: 10px !important; }
.u_my20 { margin-top: 20px !important; margin-bottom: 20px !important; }
.u_my30 { margin-top: 30px !important; margin-bottom: 30px !important; }

.u_mt5 { margin-top: 5px !important; }
.u_mt10 { margin-top: 10px !important; }
.u_mt15 { margin-top: 15px !important; }
.u_mt20 { margin-top: 20px !important; }
.u_mt30 { margin-top: 30px !important; }
.u_mt40 { margin-top: 40px !important; }
.u_mt50 { margin-top: 50px !important; }
.u_mt100 { margin-top: 100px !important; }

.u_mt-5 { margin-top: -5px !important; }
.u_mt-10 { margin-top: -10px !important; }
.u_mt-15 { margin-top: -15px !important; }
.u_mt-20 { margin-top: -20px !important; }
.u_mt-30 { margin-top: -30px !important; }
.u_mt-50 { margin-top: -50px !important; }
.u_mt-100 { margin-top: -100px !important; }

.u_mb5 { margin-bottom: 5px !important; }
.u_mb10 { margin-bottom: 10px !important; }
.u_mb15 { margin-bottom: 15px !important; }
.u_mb20 { margin-bottom: 20px !important; }
.u_mb30 { margin-bottom: 30px !important; }
.u_mb50 { margin-bottom: 50px !important; }
.u_mb100 { margin-bottom: 100px !important; }

.u_mb-5 { margin-bottom: -5px !important; }
.u_mb-10 { margin-bottom: -10px !important; }
.u_mb-15 { margin-bottom: -15px !important; }
.u_mb-20 { margin-bottom: -20px !important; }
.u_mb-30 { margin-bottom: -30px !important; }
.u_mb-50 { margin-bottom: -50px !important; }
.u_mb-100 { margin-bottom: -100px !important; }

.u_m-a { margin: auto !important; }

/* position */
.u_pos-r { position: relative !important; }
.u_pos-a { position: absolute !important; }

/* text-align */
.u_ta-c { text-align: center !important; }
.u_ta-r { text-align: right !important; }
.u_ta-l { text-align: left !important; }

/* text-indent */
.u_ti--1 { text-indent: -1em !important; padding-left: 1em !important; }
.u_ti-0 { text-indent: 0em !important; padding-left: 0em !important; }

/* text-decoration */
.u_td-n { text-decoration: none !important; }
.u_td-u { text-decoration: underline !important; }
.u_td-o { text-decoration: overline !important; }
.u_td-l { text-decoration: line-through !important; }

/* vertical-align */
.u_va-sup { vertical-align: super !important; }
.u_va-t { vertical-align: top !important; }

.u_va-tt { vertical-align: text-top !important; }
.u_va-m { vertical-align: middle !important; }
.u_va-bl { vertical-align: baseline !important; }
.u_va-b { vertical-align: bottom !important; }
.u_va-tb { vertical-align: text-bottom !important; }
.u_va-sub { vertical-align: sub !important; }

/* flexbox */
.u_ac-fs { align-content: flex-start !important; }
.u_ac-fe { align-content: flex-end !important; }
.u_ac-c { align-content: center !important; }
.u_ac-sb { align-content: space-between !important; }
.u_ac-sa { align-content: space-around !important; }
.u_ac-s { align-content: stretch !important; }
.u_ai-fs { align-items: flex-start !important; }
.u_ai-fe { align-items: flex-end !important; }
.u_ai-c { align-items: center !important; }
.u_ai-b { align-items: baseline !important; }
.u_ai-s { align-items: stretch !important; }
.u_as-a { align-self: auto !important; }
.u_as-fs { align-self: flex-start !important; }
.u_as-fe { align-self: flex-end !important; }
.u_as-c { align-self: center !important; }
.u_as-b { align-self: baseline !important; }
.u_as-s { align-self: stretch !important; }
.u_jc-fs { justify-content: flex-start !important; }
.u_jc-fe { justify-content: flex-end !important; }
.u_jc-c { justify-content: center !important; }
.u_jc-sb { justify-content: space-between !important; }
.u_jc-sa { justify-content: space-around !important; }
.u_fxd-c { flex-direction: column; }
.u_fxd-cr { flex-direction: column-reverse; }
.u_fxd-r { flex-direction: row; }
.u_fxd-rr { flex-direction: row-reverse; }
.u_fx0-1-a { flex: 0 1 auto !important; }
.u_fx1-0-a { flex: 1 0 auto !important; }
.u_fx1-1-a { flex: 1 1 auto !important; }
.u_fx0-0-a { flex: 0 0 auto !important; }
.u_fx1-0-0 { flex: 1 0 0% !important; }
.u_fxw-w { flex-wrap : wrap !important; }

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

/* table-layout */
.u_tbl-a { table-layout: auto !important; }
.u_tbl-f { table-layout: fixed !important; }

/* width */
.u_w350 { width: 350px !important; }
.u_w400 { width: 400px !important; }

.u_w40p { width: 40% !important; }
.u_w45p { width: 45% !important; }
.u_w50p { width: 50% !important; }
.u_w100p { width: 100% !important; }

.u_maW70p { max-width: 70% !important; }
.u_maW75p { max-width: 75% !important; }
.u_maW80p { max-width: 80% !important; }

.u_disNon-pc { display: none; }
.u_disNon-sp { display: block; }

.sp { display: none; }

@media screen and (max-width:600px){
  .res_sm_w100p { width: 100% !important; }
  .u_disNon-pc { display: block; }
  .u_disNon-sp { display: none; }
}



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

    ★★レスポンシブ

================================*/
@media screen and (max-width:768px) {
  .wrapper { width: 100%; }

  #cont { margin: 0 10px; }

  .container {
    float: none;
    width: 100%;
  }

}/* @media */

@media screen and (max-width:600px) {
  .u_mt40-sp { margin-top: 40px !important; }
  .u_res_w100p { width: 100% }
  .p_flowBox_cont { width: 58%; }
  .p_flexBox.resColumn { flex-direction: column; }
  
  .p_tbl-price .resDisNon { display: none;}
  .p_tbl-price th { background-color: #F5D67A;display:block;width: 100%; }
  .p_tbl-price td { display:block;width: 100%;text-align: right; }
  .p_tbl-price td::before {
    content: attr(data-label);
    float: left;
    font-weight: bold;
    margin-right: 10px;
  }

}/* @media */

@media screen and (max-width:320px) {
  .p_flowBox { flex-direction: column; }
  .p_flowBox_ttl { width: 100%; }
  .p_flowBox_ttl::before,
  .p_flowBox_ttl::after{ content: none; }
  .p_flowBox_cont { width: 100%; }
  .p_flowBox_ttl > span { margin: 10px auto; }
  .p_flowBox_ttl > span > br { display: none;}
}




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

    20230314改修

================================*/
.m_assessment_subNav_item.current .m_assessment_subNav_link {
  color: #308A57;
}
.m_assessment_subNav_item.current .m_assessment_subNav_link::after {
  content: url(/resource/img/assessment/arrow_on.svg);
}


.m_assessment_nav_text--giraffe::before {
  border-right: 2px solid #F3BD32;
  border-bottom: 2px solid #F3BD32;
}
.m_assessment_hero_area--giraffe .slick-dots button {
  width: 10px;
  height: 10px;
  background: #D9D9D9;
  color: #D9D9D9;
}
.m_assessment_hero_area--giraffe .slick-dots .slick-active button {
  background: #F3BD32;
  color: #F3BD32;
}

.m_assessment_body.m_assessment_body--giraffe_summary {
  padding: 50px 30px;
}
.l_assessment_section--giraffe + .l_assessment_section--giraffe {
  margin-top: 80px;
}
.m_assessment_heading.m_assessment_heading--giraffe::before {
  color: #F3BD32;
}
.m_assessment_body__ttl.m_assessment_body__ttl--giraffe::before {
  content: url(/resource/img/set/icon_assessment-giraffe_header-hexagon.svg);
}
.m_assessment_body--giraffe_summary .m_assessment_body__text_wrap:first-child {
  margin-top: 0;
}
.m_assessment_body--giraffe_summary .m_assessment_body__text_wrap + .m_assessment_body__text_wrap {
  margin-top: 100px;
}
.m_assessment_body--giraffe_summary .m_assessment_body__text_wrap + .m_assessment_body__text_wrap::before {
  width: 100%;
  top: -50px;
  background-color: #707070;
}
.m_assessment_body--giraffe_summary .m_assessment_body__ttl--giraffe + .m_assessment_body__copy {
  margin-top: 30px;
}
.m_assessment_body--giraffe_summary .m_assessment_body__copy {
  margin-top: 20px;
}
.m_assessment_body--giraffe_summary .m_assessment_body__copy:first-child {
  margin-top: 0;
}
.m_assessment_body--giraffe_summary .m_assessment_img_wrap.m_assessment_img_wrap__left {
  text-align: left;
}
.m_assessment_body--giraffe_summary .m_assessment_img {
  width: 100%;
  box-shadow: none;
}
.m_assessment_body--giraffe_summary .m_assessment_flow + .m_assessment_flow {
  margin-top: 50px;
}
.m_assessment_body--giraffe_summary .m_assessment_flow_wrap::before {
  top: -20px;
}
.m_assessment_body--giraffe_summary .m_assessment_flow_inner::before {
  bottom: -20px;
}
.m_assessment_body--giraffe_summary .m_assessment_flow_ttl {
  width: 170px;
}
.m_assessment_body--giraffe_summary .m_assessment_flow_inner::after {
  left: 80px;
  bottom: -30px;
}
.m_assessment_body--giraffe_summary .m_assessment_flow:last-child .m_assessment_flow_inner::after {
  display: none;
}
.m_assessment_body--giraffe_summary .m_assessment_flow_body_ttl + .m_assessment_flow_body_copy {
  margin-top: 15px;
}
.m_assessment_body--giraffe_summary .m_assessment_flow_body_copy::before {
  display: none;
}
.m_assessment_body--giraffe_summary .m_assessment_flow_body_wrap + .m_assessment_flow_body_wrap {
  margin-top: 30px;
  padding-top: 20px;
  border-top: 1px solid #707070;
}
.m_assessment_body__example_item.m_assessment_body__example_item--giraffe::before {
  content: url(/resource/img/set/icon_giraffe-diagnosis_03check.svg);
}

.m_assessment_card_wrap.m_assessment_card_wrap--giraffe {
  margin-top: 30px;
}
.m_assessment_card--giraffe {
  border: 1px solid #F3BD32;
}
.m_assessment_card_triangle--giraffe {
  border-top: 35px solid #F3BD32;
}
.m_assessment_card_ttl_wrap--giraffe {
  border-bottom: 2px solid #F3BD32;
}
.m_assessment_card--giraffe .m_assessment_card_problem_wrap {
  padding: 0;
}

.m_assessment_table.m_assessment_table--giraffe {
  width: 100%;
  margin-top: 30px;
  background-color: #D9D9D9;
  border-spacing: 1px;
}
.m_assessment_table.m_assessment_table--giraffe tr th {
  color: currentColor;
  padding: 10px 20px;
  font-weight: bold;
  vertical-align: middle;
  text-align: center;
  background-color: #FEFAEF;
}
.m_assessment_table.m_assessment_table--giraffe tr td {
  border: none;
  padding: 10px 20px;
  font-weight: normal;
  background-color: #fff;
}

#price.l_assessment_section--giraffe .m_assessment_table--giraffe tr td {
  text-align: right;
}
#price.l_assessment_section--giraffe .m_assessment_table--giraffe tr td:nth-child(1),
#price.l_assessment_section--giraffe .m_assessment_table--giraffe tr td:nth-child(4) {
  font-weight: bold;
  text-align: center;
}

.m_assessment_body_service_link.m_assessment_body_service_link--giraffe {
  border-left: 8px solid #FFDB65;
}
.m_assessment_body_service_arrow.m_assessment_body_service_arrow--giraffe::before {
  background-image: linear-gradient(to right,#F3BD32,#F3BD32 3px,transparent 3px,transparent 8px)
}
.m_assessment_body_service_arrow.m_assessment_body_service_arrow--giraffe::after {
  border-top: 1px solid #F3BD32;
  border-right: 1px solid #F3BD32;
}
.m_assessment_body_service_link.m_assessment_body_service_link--giraffe::after {
  background-color: #F3BD32
}


.m_assessment_heading__noNum {
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5;
}
.m_assessment_heading__noNum span {
  display: block;
  margin-bottom: 15px;
  font-size: 18px;
  line-height: 2;
}

.giraffe_main {
  margin-top: 80px;
  margin-bottom: 80px;
}
.giraffe_mainTtl {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
}
.giraffe_mainTtl > span {
  display: block;
  margin-right: 10px;
  margin-bottom: 3px;
  line-height: 0;
}
.giraffe_main_reasonLst {
  margin-top: 60px;
}
.giraffe_main_reasonItm {
  width: 230px;
}
.giraffe_main_reasonItm_cont {
  position: relative;
  padding: 30px 15px 15px;
  background-color: #FEFAEF;
}
.giraffe_main_reasonItm_ttl {
  font-size: 20px;
  font-weight: bold;
  text-align: center;
}
.giraffe_main_reasonItm_ttl_sub {
  display: block;
  margin-top: 10px;
  font-size: 15px;
}
.giraffe_main_reasonItm_ttl_num {
  position: absolute;
  display: inline-block;
  width: 43px;
  height: 50px;
  left: 0;
  right: 0;
  top: -25px;
  margin: auto;
  color: #fff;
  font-family: 'Montserrat', sans-serif;
  font-size: 18px;
  line-height: 50px;
  background-image: url(/resource/img/set/icon_assessment-giraffe_header-hexagon.svg);
  background-repeat: no-repeat;
  background-size: contain;
}
.giraffe_main_reasonItm_txt {
  margin-top: 15px;
  font-size: 15px;
}
.giraffe_main_reasonItm_link {
  position: relative;
  display: block;
  padding: 5px;
  color: #fff;
  font-size: 15px;
  font-weight: bold;
  text-align: center;
  background-color: #F3BD32;
}
.giraffe_main_reasonItm_link::after {
  content: "";
  position: absolute;
  top: -5px;
  bottom: 0;
  right: 40px;
  margin: auto;
  width: 6px;
  height: 6px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(135deg);
  background-repeat: no-repeat;
  background-position: left top;
  background-size: 100% auto;
  pointer-events: none;
}
.giraffe_main_reasonItm_link:hover {
  color: #fff;
  text-decoration: none;
  opacity: 0.8;
}

.m_assessment_body__btn {
  width: 100%;
  max-width: 330px;
  height: 55px;
  margin: 30px auto 0;
  border-radius: 50px;
  transition: opacity .2s;
}
.m_assessment_body__btn:hover {
  opacity: 0.8;
}
.m_assessment_body__btn a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  margin: 30px auto 0;
  color: #333;
  font-size: 15px;
  font-weight: bold;
  text-decoration: none;
}
.m_assessment_body__btn a > span {
  display: inline-block;
  position: relative;
}
.m_assessment_body__btn a > span::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  background-repeat: no-repeat;
  background-position: left top;
  background-size: 100% auto;
  pointer-events: none;
}
.m_assessment_body__btn.m_assessment_body__btn--giraffe {
  background-color: #FFDB65;
}
.m_assessment_body__btn.m_assessment_body__btn--dl a > span {
  padding-right: 25px;
}
.m_assessment_body__btn.m_assessment_body__btn--dl a > span::after {
  width: 13px;
  height: 14px;
  background-image: url(/resource/img/set/ic_download.svg);
}
.m_assessment_body__btn.m_assessment_body__btn--right a > span {
  padding-right: 20px;
}
.m_assessment_body__btn.m_assessment_body__btn--right a > span::after {
  width: 6px;
  height: 6px;
  border-top: 2px solid #333;
  border-right: 2px solid #333;
  transform: rotate(45deg);
}
.m_assessment_body__btn.m_assessment_body__btn--down a > span {
  padding-right: 20px;
}
.m_assessment_body__btn.m_assessment_body__btn--down a > span::after {
  width: 6px;
  height: 6px;
  top: -5px;
  border-top: 2px solid #333;
  border-right: 2px solid #333;
  transform: rotate(135deg);
}

.m_assessment_body__contact {
  position: relative;
  width: 100%;
  max-width: 625px;
  height: 80px;
  margin: 50px auto 0;
  background-color: #F38B32;
  border-radius: 10px;
  transition: opacity .2s;
}
.m_assessment_body__contact:hover {
  opacity: 0.8;
}
.m_assessment_body__contact a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  margin: 30px auto 0;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  text-decoration: none;
  border-radius: 50px;
}
.m_assessment_body__contact a > span {
  display: inline-block;
  position: relative;
  padding-right: 60px;
}
.m_assessment_body__contact a > span::before,
.m_assessment_body__contact a > span::after {
  content: "";
  position: absolute;
  display: inline-block;
  top: 0;
  bottom: 0;
  margin: auto;
  pointer-events: none;
}
.m_assessment_body__contact a > span::before {
  right: 0;
  width: 30px;
  height: 30px;
  background-color: #fff;
  border-radius: 50%;
}
.m_assessment_body__contact a > span::after {
  width: 8px;
  height: 8px;
  top: -3px;
  bottom: 0;
  right: 10px;
  border-top: 2px solid #F38B32;
  border-right: 2px solid #F38B32;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

.m_assessment_voice_item {
  position: relative;
  padding-left: 1.25em;
  font-size: 15px;
  font-weight: bold;
  vertical-align: middle;
}
.m_assessment_voice_item + .m_assessment_voice_item {
  margin-top: 15px;
}
.m_assessment_voice_item::before {
  content: "●";
  position: absolute;
  display: block;
  top: 3px;
  left: 0;
  margin: auto;
  color: #F3BD32;
  font-size: 10px;
  pointer-events: none;
}

.m_assessment_ticket__ttl {
  margin-top: 40px;
  margin-bottom: 20px;
  font-weight: bold;
}


.m_assessment_body_faq_ttl {
  position: relative;
  padding-left: 30px;
  font-size: 15px;
  font-weight: bold;
}
.m_assessment_body_faq_ttl::before {
  content: "Q";
  position: absolute;
  display: block;
  top: 47px;
  left: 0;
  color: #F3BD32;
  font-size: 18px;
}
.m_assessment_body_faq_ttl:not(:first-child) {
  margin-top: 50px;
  padding-top: 50px;
  border-top: 1px solid #707070;
}
.m_assessment_body_faq_ttl:first-child::before {
  top: -3px;
}
.m_assessment_body_faq_cont {
  position: relative;
  margin-top: 25px;
  padding-left: 30px;
  font-size: 15px;
}
.m_assessment_body_faq_cont::before {
  content: "A";
  position: absolute;
  display: block;
  top: -3px;
  left: 0;
  color: #F3BD32;
  font-size: 18px;
  font-weight: bold;
}
.m_assessment_body_faq_cont_sec + .m_assessment_body_faq_cont_sec {
  margin-top: 20px;
  padding-top: 30px;
  border-top: 1px solid #D9D9D9;
}
.m_assessment_body_faq_cont p:not(:first-child) {
  margin-top: 20px;
}
.m_assessment_body_faq_cont .m_assessment_body_service_list {
  margin-top: 20px;
}


@media screen and (max-width:768px) {
  .m_assessment_body.m_assessment_body--giraffe_summary {
    margin-top: 20px;
    padding: 30px 15px;
  }

  .m_assessment_body--giraffe_summary .m_assessment_flow_ttl span {
    display: block;
  }

  .m_assessment_table.m_assessment_table--giraffe tr th,
  .m_assessment_table.m_assessment_table--giraffe tr td {
    padding: 10px;
  }

  #summary .m_assessment_table.m_assessment_table--giraffe tr th,
  #summary .m_assessment_table.m_assessment_table--giraffe tr td {
    display: block;
    width: 100%;
  }
  #summary .m_assessment_table.m_assessment_table--giraffe tr th {
    border-bottom: 1px solid #D9D9D9;
  }


  .giraffe_main {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .giraffe_mainTtl {
    flex-direction: column;
    align-items: center;
  }
  .giraffe_mainTtl > span {
    margin-right: 0;
    margin-bottom: 15px;
  }
  .giraffe_main_reasonLst {
    flex-direction: column;
    gap: 60px;
  }
  .giraffe_main_reasonItm {
    width: 100%;
    max-width: 300px;
    margin: auto;
  }
}