@charset "UTF-8";
/*----------------------------------------------------------------

sub_common

----------------------------------------------------------------*/
.sub_title_img {
  width: 6.77vw;
}

main .sub_mv {
  background-image: url(../img/common/mv.jpg);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
main .sub_mv .sub_mv_inner p {
  background: linear-gradient(112deg, #255496 0%, #1D385D 10%);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
}
main {
  /* ---- パンくずリスト ---- */
}
main .breadcrumb .breadcrumb_item {
  display: inline-flex;
  align-items: center;
}
main .breadcrumb .breadcrumb_separator {
  margin: 0 0.5em;
  color: #000000;
}
main .breadcrumb .breadcrumb_link {
  color: #000000;
  text-decoration: none;
  transition: 0.4s;
}
main .breadcrumb .breadcrumb_link:focus-visible {
  outline: 0.15vw solid #D92333;
  outline-offset: 0.15vw;
}
main .breadcrumb [aria-current=page] {
  color: #000000;
}
main {
  /*----------------------------------------------------------------

  policy

  ----------------------------------------------------------------*/
}
main .policy_area .policy_area_inner {
  max-width: 1120px;
  margin-left: auto;
  margin-right: auto;
  width: 58.3vw;
}
main .policy_area .policy_area_inner .policy_area_inner_content ul li {
  border-top: 1px dotted #CBCBCB;
  border-bottom: 1px dotted #CBCBCB;
}
main {
  /*----------------------------------------------------------------

  company_info

  ----------------------------------------------------------------*/
}
main .company_info_area .company_info_area_inner .company_info_area_inner_content {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(4, auto);
}
main .company_info_area .company_info_area_inner .company_info_area_inner_content .company_info_area_inner_content_item {
  box-shadow: 1px 1px 5px 1px rgba(152, 187, 235, 0.65);
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 4;
  row-gap: 1.04vw;
}
main .company_info_area .company_info_area_inner .company_info_area_inner_content .company_info_area_inner_content_item .company_info_area_inner_content_item_title {
  justify-content: center;
}
main .company_info_area .company_info_area_inner .company_info_area_inner_content .company_info_area_inner_content_item .company_info_area_inner_content_item_title img {
  width: 1.82vw;
}
main .company_info_area .company_info_area_inner .company_info_area_inner_content .company_info_area_inner_content_item a {
  margin-left: auto;
  margin-right: auto;
  width: 18.75vw;
  align-self: end;
}
main {
  /*----------------------------------------------------------------

  faq_cont

  ----------------------------------------------------------------*/
}
main .faq_cont .faq_cont_inner .faq_cont_content .faq_area_inner_content_accordion {
  background-color: #FFFFFF;
}
main .faq_cont .faq_cont_inner .faq_cont_content .faq_area_inner_content_accordion .faq_area_inner_content_accordion_heading {
  margin: 0;
}
main .faq_cont .faq_cont_inner .faq_cont_content .faq_area_inner_content_accordion .faq_area_inner_content_accordion_heading .faq_area_inner_content_accordion_q {
  width: 100%;
  background-color: transparent;
  border: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
  text-align: left;
  color: inherit;
  font: inherit;
  transition: background-color 0.3s ease;
  border-bottom: 1px solid #CBCBCB;
}
main .faq_cont .faq_cont_inner .faq_cont_content .faq_area_inner_content_accordion .faq_area_inner_content_accordion_heading .faq_area_inner_content_accordion_q:focus {
  box-shadow: none;
  outline: none;
}
main .faq_cont .faq_cont_inner .faq_cont_content .faq_area_inner_content_accordion .faq_area_inner_content_accordion_heading .faq_area_inner_content_accordion_q:focus-visible {
  outline: 2px solid #1D385D;
  outline-offset: -2px;
}
main .faq_cont .faq_cont_inner .faq_cont_content .faq_area_inner_content_accordion .faq_area_inner_content_accordion_heading .faq_area_inner_content_accordion_q .faq_area_inner_content_accordion_q_left .img {
  flex-shrink: 0;
}
main .faq_cont .faq_cont_inner .faq_cont_content .faq_area_inner_content_accordion .faq_area_inner_content_accordion_heading .faq_area_inner_content_accordion_q .faq_area_inner_content_accordion_q_left .img img {
  width: 2.5vw;
  min-width: 32px;
  height: auto;
}
main .faq_cont .faq_cont_inner .faq_cont_content .faq_area_inner_content_accordion .faq_area_inner_content_accordion_heading .faq_area_inner_content_accordion_q .faq_area_inner_content_accordion_q_left .faq_area_inner_content_accordion_q_text {
  text-align: left;
}
main .faq_cont .faq_cont_inner .faq_cont_content .faq_area_inner_content_accordion .faq_area_inner_content_accordion_heading .faq_area_inner_content_accordion_q .faq_area_inner_content_accordion_q_right {
  position: relative;
  flex-shrink: 0;
  width: 0.167vw;
  min-width: 30px;
  aspect-ratio: 1/1;
  border: 2px solid #000000;
  border-radius: 50%;
}
main .faq_cont .faq_cont_inner .faq_cont_content .faq_area_inner_content_accordion .faq_area_inner_content_accordion_heading .faq_area_inner_content_accordion_q .faq_area_inner_content_accordion_q_right::before, main .faq_cont .faq_cont_inner .faq_cont_content .faq_area_inner_content_accordion .faq_area_inner_content_accordion_heading .faq_area_inner_content_accordion_q .faq_area_inner_content_accordion_q_right::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: #000000;
  transform: translate(-50%, -50%);
}
main .faq_cont .faq_cont_inner .faq_cont_content .faq_area_inner_content_accordion .faq_area_inner_content_accordion_heading .faq_area_inner_content_accordion_q .faq_area_inner_content_accordion_q_right::before {
  width: 50%;
  height: 2px;
}
main .faq_cont .faq_cont_inner .faq_cont_content .faq_area_inner_content_accordion .faq_area_inner_content_accordion_heading .faq_area_inner_content_accordion_q .faq_area_inner_content_accordion_q_right::after {
  width: 2px;
  height: 50%;
  transition: transform 0.3s ease;
}
main .faq_cont .faq_cont_inner .faq_cont_content .faq_area_inner_content_accordion .faq_area_inner_content_accordion_heading .faq_area_inner_content_accordion_q[aria-expanded=true] .faq_area_inner_content_accordion_q_right::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
main .faq_cont .faq_cont_inner .faq_cont_content .faq_area_inner_content_accordion .faq_area_inner_content_accordion_answer {
  display: flex;
  align-items: flex-start;
  gap: 1.5625vw;
  align-items: center;
}
main .faq_cont .faq_cont_inner .faq_cont_content .faq_area_inner_content_accordion .faq_area_inner_content_accordion_answer p {
  word-break: break-all;
}
main .faq_cont .faq_cont_inner .faq_cont_content .faq_area_inner_content_accordion .faq_area_inner_content_accordion_answer .img {
  flex-shrink: 0;
}
main .faq_cont .faq_cont_inner .faq_cont_content .faq_area_inner_content_accordion .faq_area_inner_content_accordion_answer .img img {
  width: 2.5vw;
  min-width: 32px;
  height: auto;
}
main {
  /*----------------------------------------------------------------

  partner_cont

  ----------------------------------------------------------------*/
}
main .partner_cont .partner_cont_inner {
  max-width: 48.9vw;
  margin-left: auto;
  margin-right: auto;
}
main .partner_cont02 {
  background-image: url(../img/partner/partner_bg.jpg);
  background-position: center top;
  background-size: contain;
  background-repeat: no-repeat;
}
main .partner_cont02 .partner_cont02_inner .human_img {
  position: relative;
  top: -4vw;
}
main .partner_cont02 .partner_cont02_inner .human_img img {
  width: 21.6vw;
  margin-left: auto;
  margin-right: auto;
}
main .partner_cont02 .partner_cont02_inner .sub_title .title_img img {
  width: 12.3vw;
  margin-left: auto;
  margin-right: auto;
}
main .partner_cont02 .partner_cont02_inner .partner_cont02_flex .textarea img {
  width: 6.6vw;
  min-width: 100px;
}
main .partner_cont02 .partner_cont02_inner .partner_cont02_flex .textarea p {
  max-width: 29.8vw;
}
main .partner_cont02 .partner_cont02_inner .partner_cont02_flex .img img {
  width: 30.5vw;
}
main {
  /*----------------------------------------------------------------

  contact_flow_cont01

  ----------------------------------------------------------------*/
}
main .contact_flow_cont01 .contact_flow_cont01_inner {
  max-width: 69.2vw;
}
main .contact_flow_cont01 .contact_flow_cont01_inner img {
  width: 8.33vw;
}
main .contact_flow_cont01 .contact_flow_cont02 {
  max-width: 83.3vw;
  margin-left: auto;
  margin-right: auto;
}
main .contact_flow_cont01 .contact_flow_cont02 .contact_flow_cont02_inner .contact_flow_cont02_inner_content .contact_flow_cont02_inner_content_left {
  width: 30vw;
}
main .contact_flow_cont01 .contact_flow_cont02 .contact_flow_cont02_inner .contact_flow_cont02_inner_content .contact_flow_cont02_inner_content_left .step_text {
  width: 6.25vw;
}
main .contact_flow_cont01 .contact_flow_cont02 .contact_flow_cont02_inner .contact_flow_cont02_inner_content .contact_flow_cont02_inner_content_left .contact_flow_line {
  width: 100%;
}
main .contact_flow_cont01 .contact_flow_cont02 .contact_flow_cont02_inner .contact_flow_cont02_inner_content .contact_flow_cont02_inner_content_right img {
  width: 25vw;
}
main .contact_flow_cont01 .contact_flow_cont02 .contact_flow_cont02_inner .img_arrow img {
  width: 3.64vw;
}
main {
  /*----------------------------------------------------------------

  philosophy_cont

  ----------------------------------------------------------------*/
}
main .philosophy_cont .philosophy_cont_inner .sub_title .title_img {
  width: 15.3vw;
}
main .philosophy_cont02 {
  padding-top: 24vw;
  padding-bottom: 16.8vw;
  margin-top: -13.6rem;
}
main .philosophy_cont02 .philosophy_cont_inner {
  max-width: 53.9vw;
  margin-left: auto;
  margin-right: auto;
}
main .philosophy_cont02 .philosophy_cont_inner .sub_title .title_img {
  width: 8.69vw;
}
main .philosophy_cont02 .philosophy_cont_inner .gap35 .bg_navy {
  display: flex;
  align-items: center;
  justify-content: center;
}
main .philosophy_cont02 .philosophy_cont_inner ul li {
  border-bottom: 1px dotted #CBCBCB;
}
main .philosophy_img {
  margin-top: -11vw;
}
main .philosophy_cont03 {
  padding-top: 6.04vw;
}
main .philosophy_cont03 ul li {
  border-bottom: 1px dotted #CBCBCB;
}
main {
  /*----------------------------------------------------------------

  business_cont

  ----------------------------------------------------------------*/
}
main .business_cont .business_cont_inner {
  max-width: 1600px;
  margin-left: auto;
  margin-right: auto;
  width: 83.3vw;
}
main .business_cont .business_cont_inner .business_area_inner_left {
  max-width: 61vw;
}
main .business_cont .business_cont_inner .business_area_inner_left .case_study_inner_lower_list {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.04vw;
}
main .business_cont .business_cont_inner .business_area_inner_left .case_study_inner_lower_list .case_study_inner_lower_list_item {
  border-radius: 10px;
  box-shadow: 4px 4px 4px 0 rgba(208, 208, 208, 0.2509803922);
}
main .business_cont .business_cont_inner .business_area_inner_left .case_study_inner_lower_list .case_study_inner_lower_list_item > a {
  display: flex;
  flex-direction: column;
  height: 100%;
  text-decoration: none;
  color: inherit;
  border-radius: 10px;
  overflow: hidden;
}
main .business_cont .business_cont_inner .business_area_inner_left .case_study_inner_lower_list .case_study_inner_lower_list_item .case_study_inner_lower_list_item_upper {
  position: relative;
}
main .business_cont .business_cont_inner .business_area_inner_left .case_study_inner_lower_list .case_study_inner_lower_list_item .case_study_inner_lower_list_item_upper .case_study_inner_lower_list_item_img img {
  border-radius: 10px 10px 0 0;
  display: block;
  width: 100%;
  height: auto;
}
main .business_cont .business_cont_inner .business_area_inner_left .case_study_inner_lower_list .case_study_inner_lower_list_item .case_study_inner_lower_list_item_upper .recruit_btn_icon {
  position: absolute;
  right: 0.8vw;
  bottom: 0.8vw;
  width: 2.6vw;
}
main .business_cont .business_cont_inner .business_area_inner_left .case_study_inner_lower_list .case_study_inner_lower_list_item .case_study_inner_lower_list_item_lower {
  flex: 1;
}
main .business_cont .business_cont_inner .business_area_inner_left .case_study_inner_lower_list .case_study_inner_lower_list_item .case_study_inner_lower_list_item_lower .case_study_inner_lower_list_item_lower_label {
  display: flex;
  flex-wrap: wrap;
  gap: 0.52vw;
}
main .business_cont .business_cont_inner .business_area_inner_left .case_study_inner_lower_list .case_study_inner_lower_list_item .case_study_inner_lower_list_item_lower .case_study_inner_lower_list_item_lower_label span {
  background-color: #EDEDED;
}
main .business_cont .business_cont_inner .business_area_inner_left .section_btn_hishi {
  width: 18vw;
}
main .business_cont .business_cont_inner .business_area_inner_left {
  /* ---- ページネーション ---- */
}
main .business_cont .business_cont_inner .business_area_inner_left .pagenation_area .pagenation_area_inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.52vw;
  list-style: none;
  padding: 0;
  margin: 0;
}
main .business_cont .business_cont_inner .business_area_inner_left .pagenation_area .pagenation_link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.5625vw;
  height: 1.5625vw;
  min-width: 30px;
  min-height: 30px;
  font-size: max(0.833vw, 16px);
  text-decoration: none;
  transition: opacity 0.2s ease;
  border: 1px solid #1D385D;
}
main .business_cont .business_cont_inner .business_area_inner_left .pagenation_area .pagenation_link span {
  color: #1D385D;
}
main .business_cont .business_cont_inner .business_area_inner_left .pagenation_area .pagenation_link[aria-current=page] {
  background-color: #D92333;
  color: #FFFFFF;
  border-color: #D92333;
}
main .business_cont .business_cont_inner .business_area_inner_left .pagenation_area .pagenation_link[aria-current=page] span {
  color: #fff;
}
@media (hover: hover) and (pointer: fine) {
  main .business_cont .business_cont_inner .business_area_inner_left .pagenation_area .pagenation_link:hover:not([aria-current=page]) {
    opacity: 0.7;
  }
}
main .business_cont .business_cont_inner .business_area_inner_left .pagenation_area .pagenation_link:focus-visible {
  outline: 0.15vw solid #D92333;
  outline-offset: 0.15vw;
}
main .business_cont .business_cont_inner .business_area_inner_left .pagenation_area .pagenation_link_arrow {
  background-color: #1D385D;
  border-color: #1D385D;
}
main .business_cont .business_cont_inner .business_area_inner_left .pagenation_area .pagenation_link_arrow .material-icons {
  color: #FFFFFF;
  font-size: 1.04vw;
  line-height: 1;
}
main .business_cont .business_cont_inner .business_area_inner_right {
  width: 15.625vw;
}
main .business_cont .business_cont_inner .business_area_inner_right .business_filter .business_filter_heading {
  display: block;
  background: linear-gradient(100deg, #255496 0%, #1D385D 20%);
}
main .business_cont .business_cont_inner .business_area_inner_right .business_filter .business_filter_list {
  list-style: none;
  padding: 0;
  margin: 0;
}
main .business_cont .business_cont_inner .business_area_inner_right .business_filter .business_filter_list li {
  display: flex;
  align-items: center;
  gap: 0.2vw;
  border-bottom: 1px solid #CBCBCB;
}
main .business_cont .business_cont_inner .business_area_inner_right .business_filter .business_filter_list li::before {
  content: "・";
  color: #1D385D;
  flex-shrink: 0;
}
main .business_cont .business_cont_inner .business_area_inner_right .business_filter .business_filter_list .business_filter_link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.2vw;
  flex: 1;
  color: #000000;
  text-decoration: none;
  transition: color 0.2s ease;
}
main .business_cont .business_cont_inner .business_area_inner_right .business_filter .business_filter_list .business_filter_link .material-icons {
  font-size: 1.2vw;
  color: #1D385D;
  flex-shrink: 0;
  transition: color 0.2s ease;
}
@media (hover: hover) and (pointer: fine) {
  main .business_cont .business_cont_inner .business_area_inner_right .business_filter .business_filter_list .business_filter_link:hover {
    color: #D92333;
  }
  main .business_cont .business_cont_inner .business_area_inner_right .business_filter .business_filter_list .business_filter_link:hover .material-icons {
    color: #D92333;
  }
}
main .business_cont .business_cont_inner .business_area_inner_right .business_filter .business_filter_list .business_filter_link:focus-visible {
  outline: 0.15vw solid #D92333;
  outline-offset: 0.1vw;
}
main {
  /*----------------------------------------------------------------

  business_single_cont

  ----------------------------------------------------------------*/
}
main .business_single_cont .business_single_upper .business_single_img img {
  width: 36.45vw;
}
main .business_single_cont .business_single_upper .business_single_list ul li {
  border-bottom: 1px dotted #CBCBCB;
}
main .business_single_cont .business_single_upper .business_single_list ul li .d-flex img {
  width: 18px;
}
main .business_single_cont .business_single_middle .bg_red {
  width: 0.52vw;
  height: 26px;
  min-width: 10px;
}
main .business_single_cont .business_single_lower img {
  width: 27vw;
}
main {
  /*----------------------------------------------------------------

  company_cont

  ----------------------------------------------------------------*/
}
main .company_cont .company_cont_inner .sub_title .title_img {
  width: 12.3vw;
}
main .company_cont .company_cont_inner .company_table_area table tr th {
  width: 7.81vw;
  min-width: 100px;
  border-bottom: 2px solid #1D385D;
}
main .company_cont .company_cont_inner .company_table_area table tr td {
  border-bottom: 2px solid #e9e9e9;
}
main .company_cont02 {
  background-color: #FAFAFA;
}
main .company_cont02 .company_cont02_inner {
  max-width: 1356px;
  margin-left: auto;
  margin-right: auto;
  width: 70vw;
}
main .company_cont02 .company_cont02_inner .sub_title .title_img {
  width: 9.47vw;
}
main .company_cont02 .company_cont02_inner .company_cont02_maparea .company_cont02_maparea_upper .left img {
  width: 33vw;
}
main .company_cont02 .company_cont02_inner .company_cont02_maparea .company_cont02_maparea_upper .left .company_cont02_maparea_upper_titlearea .company_cont02_maparea_upper_titlearea_img {
  width: 1.82vw;
}
main .company_cont02 .company_cont02_inner .company_cont02_maparea .company_cont02_maparea_upper .right .access_table tr:not(:last-child) {
  border-bottom: 1px dotted #cbcbcb;
}
main .company_cont02 .company_cont02_inner .company_cont02_maparea .company_cont02_maparea_upper .right .access_table tr th {
  width: 120px;
}
main .company_cont02 .company_cont02_inner .company_cont02_maparea .company_cont02_maparea_lower iframe {
  width: 100%;
  height: 20vw;
}
main .company_cont03 {
  padding-bottom: 13vw;
}
main .company_cont03 .company_cont03_inner {
  max-width: 56.7vw;
  margin-left: auto;
  margin-right: auto;
}
main .company_cont03 .company_cont03_inner .sub_title .title_img {
  width: 11.35vw;
}
main .company_cont03 .company_cont03_inner {
  /* ---- 沿革 (会社概要ページ) ---- */
}
main .company_cont03 .company_cont03_inner .history_list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: max-content max-content 1fr;
  -moz-column-gap: 2.6vw;
       column-gap: 2.6vw;
  row-gap: 0;
}
main .company_cont03 .company_cont03_inner .history_list .history_item {
  display: grid;
  grid-column: 1/-1;
  grid-template-columns: subgrid;
  align-items: stretch;
  min-height: 3.6vw;
}
main .company_cont03 .company_cont03_inner .history_list .history_item .history_year {
  align-self: center;
  color: #1D385D;
  white-space: nowrap;
  line-height: 1.4;
}
main .company_cont03 .company_cont03_inner .history_list .history_item .history_marker {
  position: relative;
  width: 1vw;
  display: flex;
  justify-content: center;
  align-items: center;
}
main .company_cont03 .company_cont03_inner .history_list .history_item .history_marker::before, main .company_cont03 .company_cont03_inner .history_list .history_item .history_marker::after {
  content: "";
  position: absolute;
  left: 50%;
  width: 1px;
  background: #e9e9e9;
  transform: translateX(-50%);
  z-index: 0;
}
main .company_cont03 .company_cont03_inner .history_list .history_item .history_marker::before {
  top: 0;
  bottom: 50%;
}
main .company_cont03 .company_cont03_inner .history_list .history_item .history_marker::after {
  top: 50%;
  bottom: 0;
}
main .company_cont03 .company_cont03_inner .history_list .history_item .history_marker .history_dot {
  position: relative;
  z-index: 1;
  width: 0.78vw;
  height: 0.78vw;
  border-radius: 50%;
  border: 1px solid #1D385D;
  background: #FFFFFF;
}
main .company_cont03 .company_cont03_inner .history_list .history_item .history_text {
  align-self: center;
  color: #000000;
  line-height: 1.6;
  margin: 0;
}
main .company_cont03 .company_cont03_inner .history_list .history_item:nth-child(even) .history_dot {
  background: #1D385D;
}
main .company_cont03 .company_cont03_inner .history_list .history_item:first-child .history_marker::before {
  top: -1.5vw;
}
main .company_cont03 .company_cont03_inner .history_list .history_item:last-child .history_marker::after {
  bottom: -1.5vw;
}
main {
  /*----------------------------------------------------------------

  greeting_cont

  ----------------------------------------------------------------*/
}
main .greeting_cont {
  background-image: url(../img/greeting/greeting_bg01.jpg);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  padding-top: 17.9vw;
  padding-bottom: 11vw;
  position: relative;
  z-index: 0;
}
main .greeting_cont .greeting_cont_img {
  position: absolute;
  width: 85.4vw;
  height: auto;
  top: 6.25vw;
  left: 50%;
  z-index: 0;
  transform: translateX(-50%);
}
main .greeting_cont .greeting_cont_inner .greeting_cont_inner_left {
  margin-left: 16.7vw;
}
main .greeting_cont .greeting_cont_inner .greeting_cont_inner_left .greeting_cont_inner_left_titlearea img {
  width: 0.46vw;
}
main .greeting_cont02 {
  position: relative;
  z-index: 0;
}
main .greeting_cont02 .greeting_cont02_bg_icon {
  position: absolute;
  width: 22.2vw;
  height: auto;
  top: 0;
  left: 0;
  z-index: 0;
}
main .greeting_cont02 .greeting_cont02_inner {
  position: relative;
  z-index: 10;
  max-width: 74.2vw;
  margin-left: 12.8vw;
}
main .greeting_cont02 .greeting_cont02_inner .greeting_cont02_inner_left img {
  width: 29.8vw;
}
main .greeting_cont02 .greeting_cont02_inner .greeting_cont02_inner_right {
  width: 36.6vw;
}
main .greeting_cont03 {
  position: relative;
  z-index: 0;
  background-image: url(../img/greeting/greeting03_bg.jpg);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
main .greeting_cont03 .greeting_cont02_bg_icon {
  position: absolute;
  width: 22.2vw;
  height: auto;
  top: -7vw;
  right: 0;
  z-index: 0;
}
main .greeting_cont03 .greeting_cont02_inner {
  position: relative;
  z-index: 10;
  max-width: 74.2vw;
  margin-left: 11.8vw;
}
main .greeting_cont03 .greeting_cont02_inner .greeting_cont02_inner_left img {
  width: 29.8vw;
}
main .greeting_cont03 .greeting_cont02_inner .greeting_cont02_inner_right {
  width: 36.6vw;
}
main .column_left {
  display: grid;
  grid-template-columns: repeat(4, 13.64vw);
  gap: 4.17vw 1.39vw;
}
main {
  /*----------------------------------------------------------------

  recruitment_cont

  ----------------------------------------------------------------*/
}
main .recruitment_cont01 .recruitment_cont01_inner .recruitment_cont01_inner_content {
  width: 50vw;
  margin-left: auto;
  margin-right: auto;
}
main .recruitment_cont01 .recruitment_cont01_inner .recruitment_cont01_inner_content h3 {
  transform: skewX(-10deg);
}
main .recruitment_cont01 .recruitment_cont01_inner .recruitment_cont01_inner_content img {
  width: 6rem;
  margin-left: auto;
  margin-right: auto;
}
main .recruitment_cont01 .recruitment_cont01_inner .recruitment_cont01_inner_content .catch {
  transform: skewX(-10deg);
}
main .recruitment_cont01 .recruitment_cont01_inner .recruitment_cont01_img {
  width: 83.3vw;
  margin-left: auto;
  margin-right: auto;
}
main .recruitment_cont01 .recruitment_cont01_inner .recruitment_cont01_img img {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
main .recruitment_cont02 {
  margin-top: -29vw;
  background-image: url(../img/recruitment/recruitment_bg01.png);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  padding-top: 29.8vw;
}
main .recruitment_cont02 .recruitment_cont02_inner .recruitment_cont02_inner_content {
  width: 81.25vw;
  margin-left: auto;
  margin-right: auto;
}
main .recruitment_cont02 .recruitment_cont02_inner .recruitment_cont02_inner_content .title_icon {
  width: 9.7vw;
}
main .recruitment_cont02 .recruitment_cont02_inner .recruitment_cont02_inner_content .recruitment_cont02_item {
  display: grid;
  grid-template-columns: repeat(4, 19.58vw);
}
main .recruitment_cont02 .recruitment_cont02_inner .recruitment_cont02_inner_content .recruitment_cont02_item .recruitment_cont02_list {
  position: relative;
  z-index: 0;
}
main .recruitment_cont02 .recruitment_cont02_inner .recruitment_cont02_inner_content .recruitment_cont02_item .recruitment_cont02_list .wa {
  position: absolute;
  top: -2.6vw;
  left: 50%;
  transform: translateX(-50%);
  width: 6.25vw;
  margin-left: auto;
  margin-right: auto;
}
main .recruitment_cont02 .recruitment_cont02_inner .recruitment_cont02_inner_content .recruitment_cont02_item .recruitment_cont02_list .gray_line {
  width: 5vw;
  margin-left: auto;
  margin-right: auto;
}
main .recruitment_cont02 .recruitment_cont02_inner .recruitment_cont02_inner_content02 {
  width: 70.8vw;
  margin-left: auto;
  margin-right: auto;
}
main .recruitment_cont02 .recruitment_cont02_inner .recruitment_cont02_inner_content02 .recruitment_cont02_inner_content_flex .recruitment_cont02_inner_content_flex_left {
  width: 33.3vw;
}
main .recruitment_cont02 .recruitment_cont02_inner .recruitment_cont02_inner_content02 .recruitment_cont02_inner_content_flex .recruitment_cont02_inner_content_flex_right img {
  width: 28.8vw;
}
main .recruitment_cont03 .recruitment_cont03_inner .title_img {
  width: 18.54vw;
  margin-left: auto;
  margin-right: auto;
}
main .recruitment_cont03 .recruitment_cont03_inner .title_icon {
  width: 9.375vw;
}
main .recruitment_cont03 .recruitment_cont03_inner .company_table_area {
  width: 67vw;
}
main .recruitment_cont03 .recruitment_cont03_inner .company_table_area table {
  width: 100%;
}
main .recruitment_cont03 .recruitment_cont03_inner .company_table_area table tr th {
  width: 7.81vw;
  min-width: 100px;
  border-bottom: 2px solid #1D385D;
}
main .recruitment_cont03 .recruitment_cont03_inner .company_table_area table tr td {
  border-bottom: 2px solid #e9e9e9;
}
main .recruitment_cont03 .recruitment_cont03_inner .section_btn_hishi {
  width: 23vw;
}
main {
  /*----------------------------------------------------------------

  strengths_cont

  ----------------------------------------------------------------*/
}
main .strengths_cont {
  background-image: url(../img/strengths/strengths_bg.png);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  padding-bottom: 0vw;
}
main .strengths_cont .strengths_cont_inner .strengths_cont_inner_content {
  width: 52vw;
  margin-left: auto;
  margin-right: auto;
}
main .strengths_cont .strengths_cont_inner .strengths_cont_inner_content h3 {
  transform: skewX(-10deg);
}
main .strengths_cont .strengths_cont_inner .strengths_cont_inner_content .text {
  width: 46vw;
  margin-left: auto;
  margin-right: auto;
}
main .strengths_cont .strengths_cont_inner .strengths_cont_inner_content ul {
  width: 46vw;
  margin-left: auto !important;
  margin-right: auto !important;
}
main .strengths_cont .strengths_cont_inner .strengths_cont_inner_content ul li {
  display: flex;
  align-items: center;
}
main .strengths_cont .strengths_cont_inner .strengths_cont_inner_content ul li img {
  width: 1.82vw;
}
main .strengths_cont .strengths_cont_inner .strengths_area_inner_img01 {
  position: relative;
  z-index: 10;
  bottom: -8vw;
  left: 50%;
  transform: translateX(-50%);
}
main .strengths_cont .strengths_cont_inner .strengths_area_inner_img01 img {
  width: 75vw;
  margin-left: auto;
  margin-right: auto;
}
main .strengths_cont02 {
  padding-top: 15vw;
}
main .strengths_cont02 .strengths_cont02_inner .title_area .title_img {
  width: 10.4vw;
  margin-left: auto;
  margin-right: auto;
}
main .strengths_cont02 .strengths_cont02_inner .title_area .title_icon {
  width: 9.3vw;
  margin-left: auto;
  margin-right: auto;
}
main .strengths_cont02 .strengths_cont02_inner .strengths_anchor a {
  background-image: url(../img/strengths/button.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  width: 18.75vw;
  height: 4.63vw;
  position: relative;
  z-index: 0;
}
@media (hover: hover) and (pointer: fine) {
  main .strengths_cont02 .strengths_cont02_inner .strengths_anchor a:hover {
    opacity: 1;
    color: #D92333;
  }
  main .strengths_cont02 .strengths_cont02_inner .strengths_anchor a:hover span {
    color: #D92333;
  }
}
main .strengths_cont02 .strengths_cont02_inner .strengths_anchor a span {
  transition: 0.4s;
  position: absolute;
  top: 52%;
  right: 2.08vw;
  z-index: 10;
  transform: translateY(-50%);
}
main .strengths_cont02 .strengths_cont02_inner .strengths_anchor_content .strengths_anchor_content_inner .strengths_anchor_upper h4 {
  background: linear-gradient(45deg, #255496 -21%, #1D385D 39%);
}
main .strengths_cont02 .strengths_cont02_inner .strengths_anchor_content .strengths_anchor_content_inner .strengths_anchor_lower {
  width: 80.2vw;
  justify-content: space-between;
}
main .strengths_cont02 .strengths_cont02_inner .strengths_anchor_content .strengths_anchor_content_inner .strengths_anchor_lower .strengths_anchor_lower_text {
  width: 35vw;
}
main .strengths_cont02 .strengths_cont02_inner .strengths_anchor_content .strengths_anchor_content_inner .strengths_anchor_lower .strengths_anchor_lower_img {
  width: 43vw;
}
main .strengths_cont02 .strengths_cont02_inner .strengths_anchor_content .strengths_anchor_content_inner .strengths_anchor_lower .strengths_anchor_lower_img img {
  width: 100%;
}
main .strengths_cont03 {
  padding-top: 14.8vw;
  background-image: url(../img/strengths/strengths_bg02.png);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
main .strengths_cont03 .strengths_cont03_inner .title_area .title_icon {
  width: 9.375vw;
}
main .strengths_cont03 .strengths_cont03_inner .strengths_cont03_inner_flex .strengths_cont03_inner_flex_left {
  width: 33.3vw;
}
main .strengths_cont03 .strengths_cont03_inner .strengths_cont03_inner_flex .strengths_cont03_inner_flex_right {
  width: 30vw;
}
main {
  /*----------------------------------------------------------------

  contact_cont

  ----------------------------------------------------------------*/
}
main .contact_cont .contact_cont_inner .title_icon {
  width: 6.77vw;
}
main .contact_cont .contact_cont_inner .text a {
  color: #2b69a7;
}
main .contact_cont .contact_cont_inner .contact_ban_area {
  align-items: center;
}
main .contact_cont .contact_cont_inner .contact_ban_area .contact_ban_area_tel {
  background-image: url(../img/contact/tel_bg.jpg);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  width: 32vw;
}
main .contact_cont .contact_cont_inner .contact_ban_area .contact_ban_area_line {
  background-image: url(../img/contact/line_bg.jpg);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  width: 32vw;
}
main .contact_cont .contact_cont_inner .contact_ban_area .contact_ban_area_line .middle .middle_left .left .line_icon {
  width: 4.3vw;
  height: auto;
}
main .contact_cont .contact_cont_inner .contact_ban_area .contact_ban_area_line .middle .middle_right .qr_img {
  width: 4.16vw;
  height: auto;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap {
  margin-top: 2.6vw;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form {
  width: 100%;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form tbody {
  display: block;
  width: 100%;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form tr {
  display: flex;
  align-items: center;
  width: 100%;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form tr + tr {
  margin-top: 0.6vw;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form tr:has(.contact_th_top) {
  align-items: flex-start;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form th,
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form td {
  padding: 1vw 0;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form th {
  width: 14vw;
  flex-shrink: 0;
  align-items: center;
  gap: 1vw;
  text-align: left;
  color: #000000;
  justify-content: space-between;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form th.contact_th_top {
  align-items: flex-start;
  padding-top: 1.3vw;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form td {
  flex: 1;
  min-width: 0;
  padding-left: 1.5vw;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form .th_label {
  flex-shrink: 0;
  display: inline-block;
  padding-top: 0.2vw;
  padding-bottom: 0.2vw;
  white-space: nowrap;
  text-align: center;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form .th_label_any {
  background: #BFBFBF;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form .contact_input,
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form .contact_textarea {
  width: 100%;
  background: #FFFFFF;
  border: 1px solid #CBCBCB;
  border-radius: 0.5vw;
  padding: 0.7vw 1vw;
  color: #000000;
  transition: border-color 0.2s ease;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form .contact_input::-moz-placeholder, main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form .contact_textarea::-moz-placeholder {
  color: #CBCBCB;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form .contact_input::placeholder,
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form .contact_textarea::placeholder {
  color: #CBCBCB;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form .contact_input:focus,
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form .contact_textarea:focus {
  outline: none;
  border-color: #1D385D;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form .contact_textarea {
  resize: vertical;
  min-height: 8vw;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form .contact_radio_group {
  row-gap: 0.8vw;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form .contact_radio {
  cursor: pointer;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form .contact_radio input[type=radio] {
  width: 1.05vw;
  height: 1.05vw;
  accent-color: #1D385D;
  cursor: pointer;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form .contact_file {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form .contact_file input[type=file] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form .contact_file .contact_file_text {
  display: inline-block;
  border: 1px solid #CBCBCB;
  border-radius: 0.5vw;
  padding: 0.6vw 1.5vw;
  color: #000000;
  background: #FFFFFF;
  transition: background 0.2s ease, color 0.2s ease;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form .contact_file:hover .contact_file_text {
  background: #1D385D;
  color: #FFFFFF;
  border-color: #1D385D;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form .contact_privacy_link {
  color: #2b69a7;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form .contact_privacy_link:hover {
  opacity: 0.7;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form .contact_agree {
  cursor: pointer;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_form .contact_agree input[type=checkbox] {
  width: 1.05vw;
  height: 1.05vw;
  accent-color: #1D385D;
  cursor: pointer;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_submit {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22vw;
  max-width: 100%;
  padding: 1.1vw 2vw;
  border: none;
  cursor: pointer;
  background: linear-gradient(180deg, #255496 0%, #1D385D 100%);
  transition: opacity 0.2s ease;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_submit:hover {
  opacity: 0.85;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_submit .contact_submit_text {
  color: #ffffff;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_submit .contact_submit_arrow {
  position: absolute;
  right: 1.5vw;
  top: 50%;
  transform: translateY(-50%);
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_radio_group .wpcf7-form-control-wrap {
  display: inline-block;
  width: auto;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_radio_group .wpcf7-radio {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: 1.3vw;
       column-gap: 1.3vw;
  row-gap: 0.8vw;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_radio_group .wpcf7-list-item {
  margin: 0;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_radio_group .wpcf7-list-item label {
  display: flex;
  align-items: center;
  gap: 0.5vw;
  cursor: pointer;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_radio_group input[type=radio] {
  width: 1.05vw;
  height: 1.05vw;
  accent-color: #1D385D;
  cursor: pointer;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .contact_file .wpcf7-form-control-wrap {
  display: inline-block;
  width: auto;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .wpcf7-acceptance .wpcf7-list-item {
  margin: 0;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .wpcf7-acceptance label {
  display: flex;
  align-items: center;
  gap: 0.5vw;
  cursor: pointer;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .wpcf7-acceptance input[type=checkbox] {
  width: 1.05vw;
  height: 1.05vw;
  accent-color: #1D385D;
  cursor: pointer;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .wpcf7-not-valid-tip {
  margin-top: 0.4vw;
  font-size: max(0.78vw, 13px);
  color: #D92333;
}
main .contact_cont02 .contact_cont02_inner .contact_form_wrap .wpcf7-response-output {
  margin: 2vw 0 0;
  padding: 1vw 1.5vw;
  font-size: max(0.83vw, 14px);
  border-radius: 0.5vw;
}
main {
  /*----------------------------------------------------------------

  technic_cont

  ----------------------------------------------------------------*/
}
main .technic_cont01 .technic_cont01_inner {
  width: 78.125vw;
  margin-left: 11.9vw;
  margin-right: auto;
}
main .technic_cont01 .technic_cont01_inner .technic_cont01_content .technic_cont_img.technic_cont_img01 {
  width: 15vw;
}
main .technic_cont01 .technic_cont01_inner .technic_cont01_content .technic_cont_img.technic_cont_img02 {
  width: 18vw;
}
main .technic_cont01 .technic_cont01_inner .technic_cont01_content .technic_cont01_content_inner {
  width: 44.58vw;
}
main .technic_cont01 .technic_cont01_inner .technic_cont01_content .technic_cont01_content_inner .technic01_icon {
  width: 6.77vw;
}
main .technic_cont02 .technic_cont02_inner .technic_cont01_content .technic_cont01_content_left {
  width: 30.3vw;
}
main .technic_cont02 .technic_cont02_inner .technic_cont01_content .technic_cont01_content_left .technic02_img {
  width: 7.7vw;
}
main .technic_cont02 .technic_cont02_inner .technic_cont01_content .technic_cont01_content_left .technic02_line {
  width: 100%;
}
main .technic_cont02 .technic_cont02_inner .technic_cont01_content .technic_cont01_content_left .section_btn_hishi {
  width: 100%;
  background: #D92333;
  isolation: isolate;
}
main .technic_cont02 .technic_cont02_inner .technic_cont01_content .technic_cont01_content_left .section_btn_hishi::before {
  content: "";
  position: absolute;
  inset: 0.15vw;
  background: linear-gradient(142deg, #255496 9%, #1D385D 20%);
  clip-path: polygon(0 50%, 0.6vw 0, calc(100% - 0.6vw) 0, 100% 50%, calc(100% - 0.6vw) 100%, 0.6vw 100% z);
  z-index: -1;
}
main .technic_cont02 .technic_cont02_inner .technic_cont01_content .technic_cont01_content_left .section_btn_hishi img {
  width: 0.88vw;
}
main .technic_cont02 .technic_cont02_inner .technic_cont01_content .technic_cont01_content_right {
  width: 30.9vw;
}
main .technic_cont02 .technic_cont02_inner .technic_cont01_content .technic_cont01_content_right img {
  width: 100%;
}
main .technic_cont03 {
  padding-top: 13.1vw;
  background-image: url(../img/technic/technic_bg.png);
  background-position: center top;
  background-size: contain;
  background-repeat: no-repeat;
}
main .technic_cont03 .technic_cont03_inner .title_area .title_img {
  width: 7.5vw;
  margin-left: auto;
  margin-right: auto;
}
main .technic_cont03 .technic_cont03_inner .title_area .title_icon {
  width: 9.375vw;
}
main .technic_cont03 .technic_cont03_inner .h4_area {
  background-color: #f2f2f2;
}
main .technic_cont03 .technic_cont03_inner .h4_area .gear_icon {
  width: 1.25vw;
}
main .technic_cont03 .technic_cont03_inner .technic_cont03_list {
  display: grid;
  grid-template-columns: repeat(3, 20.83vw);
  justify-content: space-between;
  grid-template-rows: auto auto auto;
}
main .technic_cont03 .technic_cont03_inner .technic_cont03_list .technic_cont03_list_item {
  display: grid;
  grid-row: span 3;
  grid-template-rows: subgrid;
  row-gap: 0;
}
main {
  /*----------------------------------------------------------------

  nickel_cont

  ----------------------------------------------------------------*/
}
main .nickel_cont {
  position: relative;
  z-index: 0;
}
main .nickel_cont .nickel_cont_bg {
  position: absolute;
  width: 23.54vw;
  height: auto;
  top: 8vw;
  left: 0;
  z-index: 0;
}
main .nickel_cont .nickel_cont_inner .nickel_cont01_content_inner {
  width: 44.58vw;
}
main .nickel_cont .nickel_cont_inner .nickel_cont01_content_inner .technic01_icon {
  width: 6.77vw;
}
main .nickel_cont02 {
  background-image: url(../img/nickel/structure_bg.png);
  background-position: center top;
  background-size: contain;
  background-repeat: no-repeat;
  padding-top: 15.625vw;
}
main .nickel_cont02 .nickel_cont02_inner .nickel_cont02_content_left {
  width: 33.3vw;
}
main .nickel_cont02 .nickel_cont02_inner .nickel_cont02_content_left .nickel02_img {
  width: 14vw;
}
main .nickel_cont02 .nickel_cont02_inner .technic_cont01_content_right {
  width: 28.48vw;
}
main .nickel_cont02 .nickel_cont02_inner .technic_cont01_content_right img {
  width: 100%;
}
main .nickel_cont02 .nickel_cont02_middle .nickel_cont02_middle_inner h4 span {
  width: 43px;
  height: 1px;
  background: #1D385D;
}
main .nickel_cont02 .nickel_cont02_middle .nickel_cont02_middle_inner .nickel_cont02_middle_list .nickel_cont02_middle_list_item {
  box-shadow: 1px 1px 5px 0 rgba(215, 215, 215, 0.55);
  width: 20.83vw;
}
main .nickel_cont02 .nickel_cont02_middle .nickel_cont02_middle_inner .nickel_cont02_middle_list .nickel_cont02_middle_list_item .nickel_cont02_middle_list_item_upper {
  display: flex;
  justify-content: center;
  align-items: center;
}
main .nickel_cont02 .nickel_cont02_middle .nickel_cont02_middle_inner .nickel_cont02_middle_list .nickel_cont02_middle_list_item .nickel_cont02_middle_list_item_upper .nickel02_middle_list_icon {
  width: 1.82vw;
}
main .nickel_cont02 .nickel_cont02_middle .nickel_cont02_middle_inner .nickel_cont02_middle_flex .nickel_cont02_middle_flex_left {
  width: 29.1vw;
}
main .nickel_cont02 .nickel_cont02_middle .nickel_cont02_middle_inner .nickel_cont02_middle_flex .nickel_cont02_middle_flex_right {
  width: 32vw;
}
main .nickel_cont02 .nickel_cont02_middle .nickel_cont02_middle_inner .nickel_cont02_middle_flex .nickel_cont02_middle_flex_right img {
  width: 100%;
}
main .nickel_cont03 {
  padding-top: 14.3vw;
  background-image: url(../img/nickel/structure_bg.png);
  background-position: center top;
  background-size: contain;
  background-repeat: no-repeat;
}
main .nickel_cont03 .nickel_cont03_inner .title_area .title_img {
  width: 12vw;
}
main .nickel_cont03 .nickel_cont03_inner .title_area .title_icon {
  width: 9.375vw;
}
main .nickel_cont03 .nickel_cont03_inner .text {
  width: 45.8vw;
  margin-left: auto;
  margin-right: auto;
}
main .nickel_cont03 .nickel_cont03_inner .nickel_cont03_list {
  display: grid;
  grid-template-columns: repeat(2, 30.2vw);
  -moz-column-gap: 6.35vw;
       column-gap: 6.35vw;
  grid-template-rows: auto auto auto;
  row-gap: 5.2vw;
}
main .nickel_cont03 .nickel_cont03_inner .nickel_cont03_list .nickel_cont03_list_item {
  display: grid;
  grid-row: span 3;
  grid-template-rows: subgrid;
  row-gap: 0;
}
main .nickel_cont03 .nickel_cont03_inner .nickel_cont03_list .nickel_cont03_list_item .nickel_cont03_list_item_upper {
  justify-content: center;
}
main .nickel_cont03 .nickel_cont03_inner .nickel_cont03_list .nickel_cont03_list_item .nickel_cont03_list_item_upper .nickel_cont03_list_item_upper_gear {
  width: 1.25vw;
  flex-shrink: 0;
}
main .nickel_cont03 .nickel_cont03_inner .nickel_cont03_list .nickel_cont03_list_item .nickel_cont03_list_item_middle img {
  width: 100%;
  height: auto;
}
main .nickel_cont05 {
  padding-top: 23.3vw;
  margin-top: -8rem;
}
main .nickel_cont05 .nickel_cont05_inner .nickel_cont05_inner_list {
  display: grid;
  grid-template-columns: repeat(3, 20.93vw);
  gap: 1.6vw;
}
main .nickel_cont05 .nickel_cont05_inner .nickel_cont05_inner_list .nickel_cont05_inner_list_item {
  border-radius: 10px;
  box-shadow: 1px 1px 5px 0 rgba(215, 215, 215, 0.55);
}
main .nickel_cont05 .nickel_cont05_inner .nickel_cont05_inner_list .nickel_cont05_inner_list_item img {
  width: 100%;
}
main .nickel_cont06 .nickel_cont02_middle_list .nickel_cont02_middle_list_item {
  box-shadow: 1px 1px 5px 0 rgba(215, 215, 215, 0.55);
  width: 20.83vw;
}
main .nickel_cont06 .nickel_cont02_middle_list .nickel_cont02_middle_list_item .nickel_cont02_middle_list_item_upper {
  display: flex;
  justify-content: center;
  align-items: center;
}
main .nickel_cont06 .nickel_cont02_middle_list .nickel_cont02_middle_list_item .nickel_cont02_middle_list_item_upper .nickel02_middle_list_icon {
  width: 1.82vw;
}
main .nickel_cont07 .nickel_cont03_inner .title_area .title_img {
  width: 5.2vw;
}
main .nickel_cont07 .nickel_cont03_inner table {
  width: 100%;
}
main .nickel_cont07 .nickel_cont03_inner table tr th {
  width: 7.81vw;
  min-width: 100px;
  border-bottom: 2px solid #1D385D;
}
main .nickel_cont07 .nickel_cont03_inner table tr td {
  border-bottom: 2px solid #e9e9e9;
}
main .nickel_cont08 .nickel_cont03_inner .title_area .title_img {
  width: 6.3vw;
}
main .nickel_cont08 .nickel_cont03_inner .case_study_inner_lower_list {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.04vw;
}
main .nickel_cont08 .nickel_cont03_inner .case_study_inner_lower_list .case_study_inner_lower_list_item {
  border-radius: 10px;
  box-shadow: 4px 4px 4px 0 rgba(208, 208, 208, 0.2509803922);
}
main .nickel_cont08 .nickel_cont03_inner .case_study_inner_lower_list .case_study_inner_lower_list_item > a {
  display: flex;
  flex-direction: column;
  height: 100%;
  text-decoration: none;
  color: inherit;
  border-radius: 10px;
  overflow: hidden;
}
main .nickel_cont08 .nickel_cont03_inner .case_study_inner_lower_list .case_study_inner_lower_list_item .case_study_inner_lower_list_item_upper {
  position: relative;
}
main .nickel_cont08 .nickel_cont03_inner .case_study_inner_lower_list .case_study_inner_lower_list_item .case_study_inner_lower_list_item_upper .case_study_inner_lower_list_item_img img {
  border-radius: 10px 10px 0 0;
  display: block;
  width: 100%;
  height: auto;
}
main .nickel_cont08 .nickel_cont03_inner .case_study_inner_lower_list .case_study_inner_lower_list_item .case_study_inner_lower_list_item_upper .recruit_btn_icon {
  position: absolute;
  right: 0.8vw;
  bottom: 0.8vw;
  width: 2.6vw;
}
main .nickel_cont08 .nickel_cont03_inner .case_study_inner_lower_list .case_study_inner_lower_list_item .case_study_inner_lower_list_item_lower {
  flex: 1;
}
main .nickel_cont08 .nickel_cont03_inner .case_study_inner_lower_list .case_study_inner_lower_list_item .case_study_inner_lower_list_item_lower .case_study_inner_lower_list_item_lower_label {
  display: flex;
  flex-wrap: wrap;
  gap: 0.52vw;
}
main .nickel_cont08 .nickel_cont03_inner .case_study_inner_lower_list .case_study_inner_lower_list_item .case_study_inner_lower_list_item_lower .case_study_inner_lower_list_item_lower_label span {
  background-color: #EDEDED;
}
main .nickel_cont08 .section_btn_hishi {
  width: 23.2vw;
  margin-left: auto;
  margin-right: auto;
}
main .nickel_cont09 .nickel_cont03_inner .column_left {
  display: grid;
  grid-template-columns: repeat(4, 15.625vw);
  gap: 4.17vw 1.39vw;
}
main .nickel_cont09 .nickel_cont03_inner .section_btn_hishi {
  width: 23.2vw;
  margin-left: auto;
  margin-right: auto;
}
main {
  /*----------------------------------------------------------------

  prototype_cont

  ----------------------------------------------------------------*/
}
main .prototype_cont01 .prototype_cont01_inner .prototype_cont01_inner_content01 {
  width: 12.9vw;
}
main .prototype_cont01 .prototype_cont01_inner .prototype_cont01_inner_content02 {
  width: 12vw;
}
main .prototype_cont01 .prototype_cont01_inner .prototype_cont01_inner_content_text {
  width: 43vw;
}
main .prototype_cont01 .prototype_cont01_inner .prototype_cont01_inner_content_text h3 {
  transform: skewX(-10deg);
}
main .prototype_cont01 .prototype_cont01_inner .prototype_cont01_inner_content_text .technic01_icon {
  width: 6.77vw;
}
main .prototype_cont01 .prototype_cont01_inner .prototype_cont01_inner_content_text ul li {
  display: flex;
  align-items: center;
}
main .prototype_cont01 .prototype_cont01_inner .prototype_cont01_inner_content_text ul li img {
  width: 1.67vw;
}
main .prototype_cont01 .prototype_cont01_inner .prototype_cont01_inner_content_text .section_btn_hishi {
  width: 34.8vw;
  margin-left: auto;
  margin-right: auto;
  background: #D92333;
  isolation: isolate;
}
main .prototype_cont01 .prototype_cont01_inner .prototype_cont01_inner_content_text .section_btn_hishi::before {
  content: "";
  position: absolute;
  inset: 0.15vw;
  background: linear-gradient(142deg, #255496 9%, #1D385D 20%);
  clip-path: polygon(0 50%, 0.6vw 0, calc(100% - 0.6vw) 0, 100% 50%, calc(100% - 0.6vw) 100%, 0.6vw 100% z);
  z-index: -1;
}
main .prototype_cont01 .prototype_cont01_inner .prototype_cont01_inner_content_text .section_btn_hishi img {
  width: 0.88vw;
}
main .prototype_cont02 {
  background-image: url(../img/nickel/structure_bg.png);
  background-position: center top;
  background-size: contain;
  background-repeat: no-repeat;
}
main .prototype_cont02 .prototype_cont02_inner .human_img {
  width: 6.04vw;
}
main .prototype_cont02 .prototype_cont02_inner .technic01_icon {
  width: 9.375vw;
}
main .prototype_cont02 .prototype_cont02_inner .technic_cont03_list {
  display: grid;
  grid-template-columns: repeat(3, 20.83vw);
}
main .prototype_cont03 {
  padding-top: 12.2vw;
  background-image: url(../img/technic/technic_bg.png);
  background-position: center top;
  background-size: contain;
  background-repeat: no-repeat;
}
main .prototype_cont03 .prototype_cont03_inner .title_area .title_img {
  width: 16vw;
  margin-left: auto;
  margin-right: auto;
}
main .prototype_cont03 .prototype_cont03_inner .title_area .title_icon {
  width: 9.375vw;
}
main .prototype_cont03 .prototype_cont03_inner .text {
  width: 48vw;
  margin-left: auto;
  margin-right: auto;
}
main .prototype_cont03 .prototype_cont03_inner .prototype_cont03_inner_content h4 {
  background: linear-gradient(45deg, #255496 -21%, #1D385D 39%);
}
main .prototype_cont03 .prototype_cont03_inner .prototype_cont03_inner_content .nickel_cont03_list .nickel_cont03_list_item {
  width: 20.83vw;
}
main .prototype_cont03 .prototype_cont03_inner .prototype_cont03_inner_content .nickel_cont03_list .nickel_cont03_list_item .nickel_cont03_list_item_upper {
  justify-content: center;
}
main .prototype_cont03 .prototype_cont03_inner .prototype_cont03_inner_content .nickel_cont03_list .nickel_cont03_list_item .nickel_cont03_list_item_upper img {
  width: 1.25vw;
}
main .prototype_cont03 .prototype_cont03_inner .prototype_cont03_inner_content .caution_flex_wrapper .caution_flex img {
  width: 2.91vw;
}
main .prototype_cont03 .prototype_cont03_inner .prototype_cont03_inner_content .caution_flex_wrapper .caution_flex {
  border-bottom: 1px dotted #CBCBCB;
}
main .prototype_cont03 .prototype_cont03_inner .prototype_cont03_inner_content .trial_grid_list .nickel_cont03_list_item {
  width: 30.2vw;
}
main .prototype_cont03 .prototype_cont03_inner .prototype_cont03_inner_content .trial_grid_list .nickel_cont03_list_item .nickel_cont03_list_item_upper {
  justify-content: center;
}
main .prototype_cont03 .prototype_cont03_inner .prototype_cont03_inner_content .trial_grid_list .nickel_cont03_list_item .nickel_cont03_list_item_upper img {
  width: 1.5vw;
}
main .prototype_cont03 .prototype_cont03_inner .prototype_cont03_inner_content .trial_grid_list02 {
  border-top: 1px dotted #CBCBCB;
}
main .prototype_cont03 .prototype_cont03_inner .prototype_cont03_inner_content .section_btn_hishi {
  width: 34.8vw;
  margin-left: auto;
  margin-right: auto;
  background: #D92333;
  isolation: isolate;
}
main .prototype_cont03 .prototype_cont03_inner .prototype_cont03_inner_content .section_btn_hishi::before {
  content: "";
  position: absolute;
  inset: 0.15vw;
  background: linear-gradient(142deg, #255496 9%, #1D385D 20%);
  clip-path: polygon(0 50%, 0.6vw 0, calc(100% - 0.6vw) 0, 100% 50%, calc(100% - 0.6vw) 100%, 0.6vw 100% z);
  z-index: -1;
}
main .prototype_cont03 .prototype_cont03_inner .prototype_cont03_inner_content .section_btn_hishi img {
  width: 0.88vw;
}
main .prototype_cont04 {
  background-image: url(../img/trial/solve_bg.png);
  background-position: center top;
  background-size: contain;
  background-repeat: no-repeat;
}
main .prototype_cont04 .prototype_cont04_inner .title_area .title_img {
  width: 5.4vw;
  margin-left: auto;
  margin-right: auto;
}
main .prototype_cont04 .prototype_cont04_inner .title_area .title_icon {
  width: 9.375vw;
}
main .prototype_cont04 .prototype_cont04_inner .prototype_cont04_inner_content {
  background-image: url(../img/trial/solve_blue.png);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  width: 83.3vw;
  margin-left: auto;
  margin-right: auto;
  border-radius: 20px;
}
main .prototype_cont04 .prototype_cont04_inner .prototype_cont04_inner_content .solve_title {
  width: 12.9vw;
}
main .prototype_cont04 .prototype_cont04_inner .prototype_cont04_inner_content .solve_lower .solve_lower_left {
  width: 25vw;
}
main .prototype_cont04 .prototype_cont04_inner .prototype_cont04_inner_content .solve_lower .solve_arrow {
  width: 3.64vw;
}
main .prototype_cont04 .prototype_cont04_inner .prototype_cont04_inner_content .solve_lower .solve_lower_right {
  width: 33.3vw;
}
main .prototype_cont04 .prototype_cont04_inner .prototype_cont04_inner_content .solve_lower .solve_lower_right .caution_check .caution_check_img {
  width: 2.29vw;
}
main .prototype_cont04 .prototype_cont04_inner .prototype_cont04_inner_content .solve_lower .solve_lower_right .solve_lower {
  border-bottom: 1px solid #FFFFFF;
  border-top: 1px solid #FFFFFF;
}
main .trial_form_area .title_img {
  width: 8.2vw;
  margin-left: auto;
  margin-right: auto;
}
main .trial_form_area .title_icon {
  width: 9.375vw;
}
main {
  /*----------------------------------------------------------------

  news_cont

  ----------------------------------------------------------------*/
}
main .news_cont .news_cont_inner {
  /* ---- 日付バッジ（一覧・詳細共通） ---- */
}
main .news_cont .news_cont_inner .news_list_date,
main .news_cont .news_cont_inner .news_single_date {
  display: inline-block;
  background-color: #333333;
  border-radius: 0.26vw;
  padding: 0.3vw 1.1vw;
}
main .news_cont .news_cont_inner {
  /* ---- お知らせ一覧 ---- */
}
main .news_cont .news_cont_inner .news_list {
  list-style: none;
  padding: 0;
  margin: 0;
}
main .news_cont .news_cont_inner .news_list .news_list_item .news_list_link {
  position: relative;
  gap: 2vw;
  padding-top: 1.8vw;
  padding-bottom: 1vw;
  color: #000000;
  text-decoration: none;
}
main .news_cont .news_cont_inner .news_list .news_list_item .news_list_link::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background: #1D385D;
}
main .news_cont .news_cont_inner .news_list .news_list_item .news_list_link .news_list_link_left {
  min-width: 0;
}
main .news_cont .news_cont_inner .news_list .news_list_item .news_list_link .news_list_link_left .news_list_title {
  color: #333333;
}
main .news_cont .news_cont_inner .news_list .news_list_item .news_list_link .news_list_text {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
main .news_cont .news_cont_inner .news_list .news_list_item .news_list_link .news_list_arrow {
  flex-shrink: 0;
  transition: transform 0.3s ease;
}
@media (hover: hover) and (pointer: fine) {
  main .news_cont .news_cont_inner .news_list .news_list_item .news_list_link:hover .news_list_title {
    opacity: 0.7;
  }
  main .news_cont .news_cont_inner .news_list .news_list_item .news_list_link:hover .news_list_arrow {
    transform: translateX(0.3vw);
  }
}
main .news_cont .news_cont_inner .news_list .news_list_item .news_list_link:focus-visible {
  outline: 0.15vw solid #1D385D;
  outline-offset: 0.15vw;
}
main .news_cont .news_cont_inner {
  /* ---- ページネーション（wp_pagenavi 用） ---- */
}
main .news_cont .news_cont_inner .pagenation_area .wp-pagenavi {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.52vw;
}
main .news_cont .news_cont_inner .pagenation_area .pages,
main .news_cont .news_cont_inner .pagenation_area .first,
main .news_cont .news_cont_inner .pagenation_area .last {
  display: none;
}
main .news_cont .news_cont_inner .pagenation_area .page,
main .news_cont .news_cont_inner .pagenation_area .current {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.5625vw;
  height: 1.5625vw;
  min-width: 30px;
  min-height: 30px;
  font-size: max(0.833vw, 16px);
  text-decoration: none;
  transition: opacity 0.2s ease;
  border: 1px solid #1D385D;
  color: #1D385D;
}
main .news_cont .news_cont_inner .pagenation_area .current {
  background-color: #D92333;
  color: #FFFFFF;
  border-color: #D92333;
}
main .news_cont .news_cont_inner .pagenation_area .extend {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 1.5625vw;
  color: #1D385D;
}
main .news_cont .news_cont_inner .pagenation_area .previouspostslink,
main .news_cont .news_cont_inner .pagenation_area .nextpostslink {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.5625vw;
  height: 1.5625vw;
  min-width: 30px;
  min-height: 30px;
  text-decoration: none;
  background-color: #1D385D;
  border: 1px solid #1D385D;
  color: #FFFFFF;
  font-size: 1.04vw;
  line-height: 1;
  transition: opacity 0.2s ease;
}
main .news_cont .news_cont_inner .pagenation_area .previouspostslink .material-icons,
main .news_cont .news_cont_inner .pagenation_area .nextpostslink .material-icons {
  color: #FFFFFF;
  font-size: 1.04vw;
  line-height: 1;
}
@media (hover: hover) and (pointer: fine) {
  main .news_cont .news_cont_inner .pagenation_area .page:hover,
  main .news_cont .news_cont_inner .pagenation_area .previouspostslink:hover,
  main .news_cont .news_cont_inner .pagenation_area .nextpostslink:hover {
    opacity: 0.7;
  }
}
main .news_cont .news_cont_inner .pagenation_area .page:focus-visible,
main .news_cont .news_cont_inner .pagenation_area .previouspostslink:focus-visible,
main .news_cont .news_cont_inner .pagenation_area .nextpostslink:focus-visible {
  outline: 0.15vw solid #1D385D;
  outline-offset: 0.15vw;
}
main {
  /* ---- お知らせ詳細 ---- */
}
main .news_single_cont .news_cont_inner .news_single .news_single_title {
  position: relative;
}
main .news_single_cont .news_cont_inner .news_single .news_single_title::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background: #1D385D;
}
main .news_single_cont .news_cont_inner .news_single .news_single_img img {
  width: 100%;
  height: auto;
  display: block;
}
main .news_single_cont .news_cont_inner .news_single_btnarea .section_btn_hishi {
  width: 18vw;
}
main .wrapper_1020 {
  max-width: 1020px;
  margin-left: auto;
  margin-right: auto;
  width: 90%;
}