@charset "UTF-8";
html,
body {
  margin: 0;
  padding: 0;
  font-family: "Noto Sans JP", sans-serif;
}

header {
  padding: 5px 20px;
  background-color: #117000;
  color: #FFFFFF;
}

h1 {
  font-size: 1.3rem;
  padding: 0;
  font-weight: bold;
}

.title {
  text-align: center;
  font-size: 1.2rem;
}

section {
  margin: 20px;
}

.error_area {
  margin: 0 10%;
  border-radius: 5px;
  border: solid 2px #FF7580;
  padding: 10px;
  color: #AE0002;
  font-size: 0.8rem;
  background: #FFD4DF;
}

.caution {
  border: solid 2px #FF002F;
  border-radius: 5px;
  padding: 0px 10px;
  color: #FF002F;
  font-size: 0.8rem;
  display: inline-flex;
}

.red {
  color: #E20003;
}

.bg_red {
  background: #FFB3B4;
}

.bold {
  font-weight: bold;
}

.underline {
  text-decoration: underline;
}

.v_top {
  vertical-align: top;
}

.v_middle {
  vertical-align: middle;
}

.v_bottom {
  vertical-align: bottom;
}

.subtxt {
  font-size: 0.8rem;
}

.emphasis {
  font-size: 1.2rem;
}
.emphasis .ex {
  font-size: 1.8rem;
  font-weight: bold;
  color: #D30003;
}

.align_c {
  text-align: center;
}

.align_r {
  text-align: right;
}

.align_l {
  text-align: left;
}

/*index*/
.app_flow {
  border: solid 4px #117000;
  border-radius: 10px;
  margin: 30px;
}
.app_flow .title {
  background: #117000;
  color: white;
  font-weight: bold;
  padding: 10px;
  text-align: center;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
.app_flow .text {
  padding: 30px;
}
.app_flow .text .sub_title {
  display: flex;
}
.app_flow .text .sub_title .number {
  width: 30px;
  background: #117000;
  color: white;
  border-radius: 50%;
  text-align: center;
  font-weight: bold;
}
.app_flow .text .sub_title .ttl_txt {
  margin-left: 20px;
  color: #117000;
  font-weight: bold;
  font-size: 1.2rem;
}
.app_flow .text .index_caution {
  list-style: none;
  color: red;
}
.app_flow .text .index_caution:before {
  content: "※ ";
  margin-left: -1.5rem;
}

.notes {
  border: solid 4px #FFBE00;
  border-radius: 10px;
  margin: 30px;
}
.notes .title {
  background: #FFBE00;
  color: white;
  font-weight: bold;
  padding: 10px;
  text-align: center;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
.notes .text {
  padding: 30px;
}
.notes .text .sub_title {
  display: flex;
}
.notes .text .sub_title .number {
  width: 30px;
  background: #FFBE00;
  color: white;
  border-radius: 50%;
  text-align: center;
  font-weight: bold;
}
.notes .text .sub_title .ttl_txt {
  margin-left: 20px;
  color: #117000;
  font-weight: bold;
  font-size: 1.2rem;
}
.notes .text .index_caution {
  list-style: none;
  color: red;
}
.notes .text .index_caution:before {
  content: "※ ";
  margin-left: -1.5rem;
}

.apply_btn {
  margin: 30px;
  text-align: center;
}
.apply_btn .btn {
  width: 500px;
  margin: 0 auto;
  display: block;
  padding: 20px 40px;
  border-radius: 10px;
  text-decoration: none;
  font-size: 2rem;
  font-weight: bold;
  background: #007AB8;
}
.apply_btn .btn:hover {
  background: #4AC6FF;
}

/* index END */
/*top*/
.top {
  display: flex;
  flex-direction: column;
  /* 縦並び */
  align-items: center;
  /* 横方向の中央寄せ */
  gap: 10px;
  /* リンクの間隔 */
  text-align: center;
}
.top a {
  display: block;
  padding: 25px 10px;
  margin: 5% 10% 0 10%;
  width: 50%;
  font-weight: bold;
  font-size: 1.5rem;
  border-radius: 10px;
  text-decoration: none;
  font-family: "Noto Sans JP Black", sans-serif;
}
.top .sm {
  font-weight: normal;
  font-size: 1rem;
}

.new1 {
  color: #275317;
  background-color: #d9f2d0;
}

.new2 {
  color: #80350e;
  background-color: #fbe3d6;
}

.new_end {
  color: #FFFFFF;
  background-color: #CCCCCC;
}

.road {
  color: #084f6a;
  background-color: #c1e5f5;
}

/*top END*/
.readfilettl {
  font-weight: bold;
  font-size: 2rem;
  border-left: 5px solid #009333;
  padding-left: 1rem;
}

/*progress_tracker*/
.progress_tracker {
  width: 100%;
  display: flex;
}
.progress_tracker .track {
  width: 19%;
}
.progress_tracker .track_edit {
  width: 33%;
}
.progress_tracker .track,
.progress_tracker .track_edit {
  padding: 5px;
}
.progress_tracker .track .box,
.progress_tracker .track_edit .box {
  display: flex;
  padding: 0 10px 5px 10px;
}
.progress_tracker .track .box .circle,
.progress_tracker .track_edit .box .circle {
  text-align: center;
  font-weight: bold;
  color: white;
  width: 18px;
  height: 18px;
  font-size: 11px;
  border-radius: 100%;
  background-color: #CCCCCC;
}
.progress_tracker .track .box .text,
.progress_tracker .track_edit .box .text {
  padding: 5px;
  font-weight: bold;
  color: #CCCCCC;
  line-height: 9px;
  font-size: 12px;
}
.progress_tracker .track .bar,
.progress_tracker .track_edit .bar {
  height: 5px;
  padding: 1px;
  background: #CCCCCC;
}
.progress_tracker .on .box .circle {
  background-color: #00A314;
}
.progress_tracker .on .box .text {
  color: #00A314;
}
.progress_tracker .on .bar {
  background: #00A314;
}

/*progress_tracker END*/
/*table & Form*/
.form_table {
  margin: 0 10%;
}
.form_table .plane_table {
  border: none;
}
.form_table .plane_table tr,
.form_table .plane_table td {
  border: none;
}
.form_table .table,
.form_table .table_list {
  width: 100%;
  border: solid 2px #666666;
  border-collapse: collapse;
  border-spacing: 0px;
}
.form_table .table th,
.form_table .table td,
.form_table .table_list th,
.form_table .table_list td {
  border-right: solid 1px #EBEBEB;
  border-bottom: solid 1px #CCCCCC;
  text-align: left;
  padding: 5px;
  /*font-size: 1rem;*/
}
.form_table .table th,
.form_table .table_list th {
  background: #EBEBEB;
  border-right: solid 1px #CCCCCC;
}
@media screen and (max-width: 640px) {
  .form_table .table .last td:last-child,
  .form_table .table_list .last td:last-child {
    border-bottom: solid 1px #ccc;
    width: 100%;
  }
  .form_table .table .table,
  .form_table .table_list .table {
    width: 80%;
  }
  .form_table .table th,
  .form_table .table td,
  .form_table .table_list th,
  .form_table .table_list td {
    border-bottom: none;
    display: block;
    width: 100%;
  }
}
.form_table .table th {
  width: 300px;
}
.form_table .table .center {
  text-align: center;
}
.form_table .table .tbl_border_top {
  border: solid 2px #666666 !important;
}
.form_table .table .sub_table {
  border: solid 1px #666666;
  border-collapse: collapse;
  border-spacing: 0px;
}
.form_table .table .sub_table th {
  width: initial;
}
.form_table .table .sub_table th .th_s {
  font-size: 0.8rem;
  white-space: nowrap;
  line-height: 1rem;
}
.form_table .table .sub_table th .th_xs {
  font-size: 0.6rem;
  white-space: nowrap;
  line-height: 0.8rem;
}
.form_table .table .sub_table .f_s {
  font-size: 0.8rem;
  line-height: 1rem;
}
.form_table .table .sub_table .f_xs {
  font-size: 0.6rem;
  line-height: 0.8rem;
}
.form_table .table .sub_table th:last-child,
.form_table .table .sub_table td:last-child {
  border-right: none;
}
.form_table .table .sub_table tr:last-child {
  border-bottom: none;
}
.form_table .table .sub_table .bottom_border {
  border-bottom: solid 1px #666666;
}
.form_table .table .sub_table .right {
  text-align: right;
}
.form_table .table .sub_table .center {
  text-align: center;
}
.form_table .table .sub_table .linetop {
  border-top: solid 1px #CCCCCC;
}
.form_table .table .sub_table .lineright {
  border-right: solid 1px #CCCCCC;
}
.form_table .table .sub_table .width15 {
  width: 15%;
}
.form_table .table .sub_table .width45 {
  width: 45%;
}
.form_table .table .sub_table .width50 {
  width: 50%;
}
.form_table .table .sub_table .width100 {
  width: 100%;
}
.form_table .table .sub_table .nowrap {
  white-space: nowrap;
}
.form_table .retention_table {
  border: solid 1px #666666 !important;
  border-collapse: collapse;
  border-spacing: 0px;
}
.form_table .retention_table th {
  width: initial;
}
.form_table .retention_table .right {
  text-align: right;
}
.form_table .retention_table .linetop {
  border-top: solid 1px #CCCCCC;
}
.form_table .retention_table .lineright {
  border-right: solid 1px #CCCCCC;
}
.form_table .retention_table .lineleft {
  border-left: solid 1px #CCCCCC;
}
.form_table .retention_table .linebottom {
  border-bottom: solid 1px #CCCCCC;
}
.form_table .noborder td {
  padding: 0;
}
.form_table .noborder tr,
.form_table .noborder th,
.form_table .noborder td {
  border: none;
}
.form_table .ryaku_table {
  border: solid 1px #666666;
  border-collapse: collapse;
  border-spacing: 0px;
}
.form_table .ryaku_table th {
  width: initial;
  font-size: 0.8rem;
  text-align: center;
}
.form_table .ryaku_table th:last-child,
.form_table .ryaku_table td:last-child {
  border-right: none;
}
.form_table .ryaku_table tr:last-child {
  border-bottom: none;
}
.form_table .ryaku_table td {
  text-align: center;
  font-size: 0.8rem;
}
.form_table .ryaku_table .bottom_border {
  border-bottom: solid 1px #666666;
}
.form_table .ryaku_table .right {
  text-align: right;
}

input[type=text],
input[type=email],
input[type=number],
input[type=file],
textarea,
select {
  border: solid 1px #666666;
  border-radius: 3px;
  padding: 3px;
  margin: 0 0 3px 0;
}

textarea {
  font-family: "Noto Sans JP", sans-serif;
  color: #000000;
  font-size: 1rem;
}

input:disabled,
select:disabled {
  color: #CCCCCC;
  background: #DDDDDD;
}

.bg_on {
  background-color: #CCCCCC;
}

button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
}

.btn {
  border-radius: 3px;
  border: none;
  background: #DB8D00;
  color: white;
  font-weight: bold;
  padding: 10px 20px;
  font-size: 1rem;
  text-decoration: none;
}
.btn:hover {
  background: #FFB227;
}

.required {
  border-radius: 3px;
  border: none;
  background: #FFCC00;
  color: #333333;
  font-weight: bold;
  padding: 2px 4px;
  font-size: 0.7rem;
  margin: 0 0 0 10px;
}

/*table & Form END*/
/*readfiel*/
.readfilettl {
  font-weight: bold;
  font-size: large;
}

/*apply1*/
.com_ex {
  display: flex;
}

.download_ex {
  border: solid 1px #CCCCCC;
  border-radius: 10px;
  padding: 30px;
}
.download_ex img {
  border: solid 1px #CCCCCC;
  margin: 0 auto;
}

/*apply2*/
.important {
  border: solid 2px #D50003;
  padding: 1rem;
  font-weight: bold;
  color: #D50003;
}

.b_border_top {
  border-top: solid 3px #000000 !important;
  border-left: solid 3px #000000 !important;
  border-right: solid 3px #000000 !important;
}

.b_border_bottom {
  border-bottom: solid 3px #000000 !important;
  border-left: solid 3px #000000 !important;
  border-right: solid 3px #000000 !important;
}

/*apply3*/
.flex {
  display: flex;
}
.flex .initial {
  flex: initial;
}
.flex .auto {
  flex: auto;
}

.consent_title {
  text-align: center;
  font-weight: bold;
}

/*apply7*/
.border_box {
  border: solid 1px #666666;
  font-size: 0.7rem;
  padding: 5px;
}

/*apply8*/
.trainingplan {
  width: 100%;
}
.trainingplan td {
  text-align: center;
}
.trainingplan td textarea {
  width: 95%;
}

/*crosscomp*/
.width40px {
  width: 40px;
}

.width150px {
  width: 150px;
}

.crosscomp_red {
  color: #E20003;
  font-size: 1.2rem;
  font-weight: bold;
}

.crosscomp_company {
  display: grid;
  grid-template-columns: 15% 35% 15% 35%;
  /* 4列の割合指定 */
  width: 100%;
  /* 全幅で適用 */
}
.crosscomp_company .row {
  display: contents;
  /* 子要素の div.cell をグリッドの直下に配置 */
}
.crosscomp_company .cell {
  border-bottom: 1px solid #ccc;
  padding: 5px;
}/*# sourceMappingURL=common.css.map */