@import url("https://fonts.googleapis.com/css2?family=Jost&family=Noto+Sans+JP:wght@400;700&family=Noto+Serif+JP:wght@400;700&display=swap");
.contents_shadow {
  background-color: white;
  box-shadow: 0px 0px 9.5px 0.5px rgba(30, 63, 107, 0.32);
  display: flex;
  justify-content: space-between;
  margin-top: 15px; }
  @media (max-width: 480px) {
    .contents_shadow {
      display: block; } }
  .contents_shadow .text {
    width: calc(100% - 410px);
    padding: 50px;
    order: 1; }
    @media (max-width: 480px) {
      .contents_shadow .text {
        width: 100%;
        padding: 30px 20px; } }
    .contents_shadow .text h3 {
      color: #3dbaed;
      font-weight: bold;
      font-size: 24px;
      border-left: solid 3px;
      padding: 0 0 0 15px;
      line-height: 1.3;
      margin: 0 0 20px; }
      @media (max-width: 480px) {
        .contents_shadow .text h3 {
          font-size: 20px;
          margin: 0 0 10px; } }
    .contents_shadow .text p {
      font-size: 14px;
      margin: 0; }
  .contents_shadow .img {
    width: 410px;
    max-width: 100%;
    align-self: stretch;
    order: 2; }
    .contents_shadow .img img {
      vertical-align: bottom;
      height: 100%;
      width: 100%;
      object-fit: cover; }

.table_container {
  margin: 40px 0 30px; }
  .table_container table {
    width: 100%;
    border: solid 1px #7892af;
    table-layout: fixed; }
    @media (max-width: 480px) {
      .table_container table {
        width: unset; } }
    .table_container table th {
      background: #7892af;
      color: #fff;
      text-align: center;
      padding: 10px;
      border: solid 1px #b1c6dc; }
      @media (max-width: 480px) {
        .table_container table th {
          white-space: pre; } }
    .table_container table td {
      background: #fff;
      border: solid 1px #b1c6dc;
      text-align: center;
      padding: 10px; }
      @media (max-width: 480px) {
        .table_container table td {
          white-space: pre; } }

figure figcaption {
  font-weight: bold;
  text-align: center;
  margin: 10px 0 0; }

.case_list {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -15px; }
  @media (max-width: 480px) {
    .case_list {
      margin: 0 -5px; } }
  .case_list li {
    width: calc(100% / 3);
    padding: 0 15px;
    margin: 0 0 25px; }
    @media (max-width: 480px) {
      .case_list li {
        width: 50%;
        padding: 0 5px;
        margin: 0 0 5px; } }

.greeting_name {
  margin: 20px 0 0;
  text-align: right;
  font-family: 'Noto Serif JP', serif;
  font-size: 18px; }
  .greeting_name span {
    font-size: 1.2em; }

/*# sourceMappingURL=contents.css.map */
