main {
  background-color: #e9f5ff; }

h3 {
  font-size: 3.5vw;
  letter-spacing: 0.2rem;
  color: #333;
  font-weight: 300;
  padding-bottom: 1.1vw; }
  h3 span {
    font-family: 'Noto Sans Japanese', sans-serif;
    font-size: 1.2vw;
    margin-left: 12px;
    vertical-align: 2.5px; }

@media screen and (max-width: 520px) {
  h3 {
    font-size: 6vw;
    font-weight: 500;
    margin-left: 0px;
    padding-bottom: 2.2vw; }
    h3 span {
      font-size: 2.6vw;
      margin-left: 5px;
      vertical-align: 0.5px; } }
.main-content .sidebar a .arrow {
  padding: 5vw 0 0 6vw; }
  .main-content .sidebar a .arrow .circle-bg {
    width: 3.2rem;
    height: 3.2rem;
    margin-right: 1.1vw; }
    .main-content .sidebar a .arrow .circle-bg .dli-arrow-right {
      width: 16px;
      height: 1px; }
      .main-content .sidebar a .arrow .circle-bg .dli-arrow-right::before {
        width: 6px;
        height: 6px;
        border-top: 1px solid currentColor;
        border-right: 1px solid currentColor;
        top: -3px; }
.main-content .sidebar a p {
  font-weight: 500;
  color: #144f7e; }

#sec1 {
  padding-bottom: 4vw; }
  #sec1 .sub-title {
    font-family: 'Noto Sans Japanese', sans-serif;
    font-weight: 400;
    font-size: 1.2vw;
    letter-spacing: 0.09rem;
    padding-bottom: 4vw;
    margin-left: 2px; }

#sec2 h3 {
  padding-bottom: 4vw; }
#sec2 iframe {
  width: 100%; }

table {
  width: 100%;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-size: min(0.9vw, 16px);
  margin-bottom: 3vw; }
  table tbody {
    letter-spacing: 0.05rem; }
    table tbody tr th {
      width: 20%; }
    table tbody tr th, table tbody tr td {
      font-weight: 400;
      line-height: 2;
      padding-bottom: 1.6vw; }

#sec2 .arrow {
  justify-content: flex-end; }
  #sec2 .arrow p {
    color: #144f7e; }

@media screen and (max-width: 520px) {
  #sec1 {
    padding-top: 8vw;
    padding-bottom: 14vw; }
    #sec1 .sub-title {
      font-size: 3.2vw;
      font-weight: 400;
      line-height: 1.5;
      padding-bottom: 0vw;
      margin-left: 2px; } }
@media screen and (max-width: 520px) {
  table {
    margin: 9vw auto 0vw; }
    table tbody tr th {
      width: 30%;
      font-weight: 400; }
    table tbody tr th, table tbody tr td {
      font-size: 3vw;
      line-height: 1.75;
      padding-bottom: 6vw; }
      table tbody tr th:nth-child(3), table tbody tr td:nth-child(3) {
        padding-bottom: 0vw; }
    table:nth-child(2) {
      margin: 6vw auto 4vw; }
      table:nth-child(2) tr th, table:nth-child(2) tr td {
        padding-bottom: 4vw; }

  #sec2 iframe {
    height: auto; } }
