#calc_form .type_wrap {
  margin-bottom: 25px;
}
#calc_form .type_wrap .type_group textarea {
  padding: 1em;
  min-height: 200px;
  width: 100%;
  height: auto;
  font-size: 1.15em;
  border: solid #ccc 1px;
  border-radius: 5px;
  box-sizing: border-box;
}
#calc_form .btn_wrap {
  display: flex;
  justify-content: center;
  align-items: center;
}
#calc_form .btn_wrap .calc_btn {
  margin-right: 20px;
  max-width: 200px;
  width: 100%;
  height: 50px;
  color: #fff;
  font-size: 18px;
  border-radius: 5px;
  background-color: #fca94b;
  cursor: pointer;
  transition: opacity 0.3s;
}
#calc_form .btn_wrap .calc_btn:hover {
  opacity: 0.75;
}
#calc_form .btn_wrap .clear_btn {
  max-width: 200px;
  width: 100%;
  height: 50px;
  color: #fff;
  font-size: 18px;
  border-radius: 5px;
  background-color: #aaa;
  cursor: pointer;
  transition: opacity 0.3s;
}
#calc_form .btn_wrap .clear_btn:hover {
  opacity: 0.75;
}

#result_wrap {
  display: block;
}
#result_wrap .result_group:not(:last-of-type) {
  margin-bottom: 60px;
}
#result_wrap .result_group:not(:last-of-type) .table_wrap .table_inner table#result_table {
  min-width: 600px;
}
#result_wrap .result_group:not(:last-of-type) .table_wrap .table_inner table#result_table tr:hover th,
#result_wrap .result_group:not(:last-of-type) .table_wrap .table_inner table#result_table tr:hover td {
  background-color: #e0f1ff;
}
#result_wrap .result_group:not(:last-of-type) .table_wrap .table_inner table#result_table tr th {
  color: #000;
  background-color: #fff;
}
#result_wrap .result_group:not(:last-of-type) .table_wrap .table_inner table#result_table tr td {
  position: relative;
  top: 0px;
  left: 0px;
  background-color: #fff;
}
#result_wrap .result_group:not(:last-of-type) .table_wrap .table_inner table#result_table tr td:empty:before {
  content: "";
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  display: block;
  background: linear-gradient(to bottom right, transparent calc(50% - 1px), #ccc, transparent calc(50% + 1px));
}
#result_wrap .result_group:not(:last-of-type) .table_wrap .table_inner table#result_table tr td ul li {
  list-style: disc;
  list-style-position: inside;
}
#result_wrap .result_group:not(:last-of-type) .table_wrap .table_inner table#result_table tr td ul li:not(:last-of-type) {
  margin-bottom: 10px;
}
#result_wrap .result_group:not(:last-of-type) .table_wrap .table_inner table#result_table tr td span {
  line-height: 1.5em;
  display: block;
}
#result_wrap .result_group:not(:last-of-type) .table_wrap .table_inner table#result_table tr td span:not(:last-of-type) {
  margin-bottom: 8px;
}
#result_wrap .result_group:not(:last-of-type) .table_wrap .table_inner table#result_table tr th {
  width: 200px;
}
#result_wrap .result_group:not(:last-of-type) .table_wrap .table_inner table#result_table tr.head th {
  color: #fff;
  background-color: #6dc2ff;
}
#result_wrap .result_group .result_chart_wrap {
  padding: 30px;
  border: solid 1px #ccc;
  background-color: #fff;
  box-sizing: border-box;
}
#result_wrap .result_group .result_chart_wrap canvas#result_chart {
  margin-bottom: 15px;
}
#result_wrap .result_group .result_chart_wrap ul.annotation_menu {
  display: flex;
  flex-wrap: wrap;
}
#result_wrap .result_group .result_chart_wrap ul.annotation_menu li {
  width: 50%;
  height: auto;
}
#result_wrap .result_group .result_chart_wrap ul.annotation_menu li:nth-of-type(1) label {
  border-top-left-radius: 5px;
}
#result_wrap .result_group .result_chart_wrap ul.annotation_menu li:nth-of-type(2) label {
  border-top-right-radius: 5px;
}
#result_wrap .result_group .result_chart_wrap ul.annotation_menu li:nth-last-of-type(2) label {
  border-bottom-left-radius: 5px;
}
#result_wrap .result_group .result_chart_wrap ul.annotation_menu li:nth-last-of-type(1) label {
  border-bottom-right-radius: 5px;
}
#result_wrap .result_group .result_chart_wrap ul.annotation_menu li:nth-child(2n) label {
  border-left: solid 1px #eee;
}
#result_wrap .result_group .result_chart_wrap ul.annotation_menu li:not(:nth-last-child(-n+2)) label {
  border-bottom: solid 1px #eee;
}
#result_wrap .result_group .result_chart_wrap ul.annotation_menu li label {
  padding: 20px;
  width: 100%;
  height: auto;
  font-weight: bold;
  text-align: center;
  display: block;
  box-sizing: border-box;
  background-color: #ccc;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  cursor: pointer;
}
#result_wrap .result_group .result_chart_wrap ul.annotation_menu li label:has(input[type=radio]:checked) {
  color: #fff;
  background-color: #fca94b;
}
#result_wrap .result_group .result_chart_wrap ul.annotation_menu li label input[type=radio] {
  display: none;
}

@media screen and (max-width: 480px) {
  .container main {
    width: 100%;
  }
  .container main .content_box {
    padding: 35px 15px;
    border: none !important;
  }

  #result_wrap .result_group .result_chart_wrap ul.annotation_menu {
    display: block;
  }
  #result_wrap .result_group .result_chart_wrap ul.annotation_menu li {
    width: 100%;
  }
  #result_wrap .result_group .result_chart_wrap ul.annotation_menu li:nth-of-type(1) label {
    border-top-right-radius: 5px;
    border-top-left-radius: 5px;
  }
  #result_wrap .result_group .result_chart_wrap ul.annotation_menu li:nth-of-type(2) label {
    border-top-right-radius: 0px;
  }
  #result_wrap .result_group .result_chart_wrap ul.annotation_menu li:nth-last-of-type(2) label {
    border-bottom-left-radius: 0px;
  }
  #result_wrap .result_group .result_chart_wrap ul.annotation_menu li:nth-last-of-type(1) label {
    border-bottom-right-radius: 5px;
    border-bottom-left-radius: 5px;
  }
  #result_wrap .result_group .result_chart_wrap ul.annotation_menu li:nth-child(2n) label {
    border-left: none;
  }
  #result_wrap .result_group .result_chart_wrap ul.annotation_menu li:not(:nth-last-of-type) {
    border-bottom: solid 1px #eee;
  }
}