@charset "UTF-8";
/* メイン */
@media (min-width: 768px) { .career_midashi .text { font-size: 18px; border-bottom: 10px solid #dcdcdc; padding: 0 15px 5px; line-height: 1.3em; margin: 40px 0 30px 0; position: relative; }
  .career_midashi .text::before { content: ""; width: 240px; height: 10px; position: absolute; bottom: -10px; left: 0; display: block; background-color: #7fb57f; } }
@media (max-width: 767.98px) { .career_midashi .text { font-size: 16px; border-bottom: 10px solid #dcdcdc; padding: 0 10px 5px; line-height: 1.3em; margin: 40px 0 20px 0; position: relative; }
  .career_midashi .text::before { content: ""; width: 240px; height: 10px; position: absolute; bottom: -10px; left: 0; display: block; background-color: #7fb57f; } }

.flow { list-style: none; margin: 0; padding: 0; }
.flow li { border-radius: 10px; font-size: 20px; }
.flow li:nth-child(1) { background-color: #c6e4c7; }
.flow li:nth-child(3) { background-color: #aed5ad; }
.flow li:nth-child(5) { background-color: #8bbf8a; }
.flow li:nth-child(7) { background-color: #71ae70; }
.flow li:nth-child(9) { background-color: #509a50; color: #fff; }
.flow li.yajirushi { content: ""; background-image: url("../../../recruit_2026_base/images/green_arrow.svg"); display: block; background-size: contain; width: 20px; height: 39px; }
.flow.flow2 li { border-radius: 10px; font-size: 20px; }
.flow.flow2 li:nth-child(1) { background-color: #c4e3c4; }
.flow.flow2 li:nth-child(3) { background-color: #b3d8b3; }
.flow.flow2 li:nth-child(5) { background-color: #97c696; }
.flow.flow2 li:nth-child(7) { background-color: #82b981; }
.flow.flow2 li:nth-child(9) { background-color: #67a766; }
.flow.flow2 li:nth-child(11) { background-color: #50994f; color: #fff; }
@media (min-width: 768px) { .flow { display: flex; align-items: center; justify-content: space-between; padding: 0 40px; margin: 50px 0 0 0; }
  .flow li { writing-mode: vertical-rl; width: 80px; height: 180px; display: flex; justify-content: center; align-items: center; } }
@media (max-width: 767.98px) { .flow { display: flex; justify-content: space-between; align-items: center; }
  .flow li { border-radius: 8px; writing-mode: vertical-rl; width: 40px; height: 120px; display: flex; justify-content: center; align-items: center; font-size: 15px; }
  .flow li.yajirushi { width: 14px; height: 28px; }
  .flow.flow2 li { border-radius: 8px; writing-mode: vertical-rl; width: 36px; height: 120px; display: flex; justify-content: center; align-items: center; font-size: 14px; }
  .flow.flow2 li.yajirushi { width: 12px; height: 24px; } }

@media (min-width: 768px) { .info_tb { font-size: 16px; border-top: 1px solid #dcdcdc; width: 100%; line-height: 1.7; margin: 0 0 15px 0; }
  .info_tb tr { height: 60px; border-bottom: 1px solid #dcdcdc; }
  .info_tb th { background-color: #7fb57f; color: #fff; width: 150px; display: table-cell; text-align: center; vertical-align: middle; font-weight: 600; padding: 18px 0; }
  .info_tb td { font-size: 14px; padding: 18px 0 18px 20px; }
  .info_tb td .gray_back { background-color: #f4f4f4; padding: 15px; line-height: 1.6; position: relative; }
  .info_tb td .gray_back span { display: block; margin: 0; }
  .info_tb td .gray_back ul { margin: 0; padding: 0 0 0 25px; }
  .info_tb td.gray_td { padding: 10px; }
  .info_tb td a { color: #7fb57f; text-underline-offset: 2px; } }
@media (max-width: 767.98px) { .info_tb { font-size: 12.5px; border-top: 1px solid #dcdcdc; width: 100%; line-height: 1.7; margin: 0 0 15px 0; }
  .info_tb tr { height: 50px; border-bottom: 1px solid #dcdcdc; }
  .info_tb th { background-color: #7fb57f; color: #fff; width: 90px; display: table-cell; text-align: center; vertical-align: middle; font-weight: 600; padding: 12px 0; }
  .info_tb td { font-size: 12px; padding: 12px 0 12px 10px; }
  .info_tb td .gray_back { background-color: #f4f4f4; padding: 30px 10px 10px; line-height: 1.6; position: relative; }
  .info_tb td .gray_back span { display: block; margin: 0; }
  .info_tb td .gray_back ul { margin: 0; padding: 0 0 0 25px; }
  .info_tb td.gray_td { padding: 10px; }
  .info_tb td a { color: #7fb57f; text-underline-offset: 2px; } }

.open_btn { display: inline-flex; align-items: center; gap: 6px; position: relative; padding: 0 22px 0 0; color: #519a51; text-decoration: none; }
.open_btn::before, .open_btn::after { content: ""; position: absolute; top: 50%; right: 0; width: 14px; height: 2px; background: #519a51; transform: translateY(-50%); transition: opacity .3s ease; }
.open_btn::after { transform: translateY(-50%) rotate(90deg); }
.open_btn.open::after { opacity: 0; }
.open_btn:hover { cursor: pointer; }

.open_box { display: none; }

.open_box.open { display: block; margin: 20px 0 0 0; }

@media (min-width: 768px) { .open_btn { position: absolute; right: 15px; } }
@media (max-width: 767.98px) { .open_btn { position: absolute; right: 10px; top: 10px; padding: 0 18px 0 0; }
  .open_btn::before, .open_btn::after { width: 12px; } }
@media (min-width: 768px) { .memo_p { font-size: 14px; padding: 0 15px; line-height: 1.6; margin: 45px 0 0 0; }
  .memo_p2 { font-size: 14px; padding: 0 15px; line-height: 1.6; margin: 0; }
  .memo_p2 span { font-size: 16px; font-weight: bold; } }
@media (max-width: 767.98px) { .memo_p { font-size: 13px; padding: 0; line-height: 1.6; margin: 15px 0 0 0; }
  .memo_p2 { font-size: 13px; padding: 0; line-height: 1.6; margin: 0; }
  .memo_p2 span { font-size: 15px; font-weight: bold; } }
.career_flex > div ul { padding: 0 0 0 2.2em; }
.career_flex > div ul li { position: relative; list-style: none; }
.career_flex > div ul li::before { content: ""; position: absolute; top: 0.8em; left: -1.2em; width: 11px; height: 11px; background: #7fb57f; border-radius: 50%; transform: translateY(-50%); }
.career_flex > div a { color: #7fb57f; text-underline-offset: 2px; font-size: 14px; margin: 0 0 0 10px; }
@media (min-width: 768px) { .career_flex { display: flex; gap: 0 40px; }
  .career_flex > div { width: 50%; }
  .career_flex > div a { font-size: 14px; } }
@media (max-width: 767.98px) { .career_flex > div { width: 100%; }
  .career_flex > div ul { padding: 0 0 0 2em; margin: 0 0 10px 0; }
  .career_flex > div ul li::before { top: 0.8em; left: -1.2em; width: 8px; height: 8px; }
  .career_flex > div a { font-size: 12px; } }

@media (min-width: 768px) { .entry_banner img { width: 195px; margin: 0 0 0 12px; } }
@media (max-width: 767.98px) { .entry_banner img { width: 169px; } }
