@charset "UTF-8";
#sec03 {
  counter-reset: number 0; }
  #sec03 dl {
    position: relative;
    padding-bottom: 4em;
    margin-bottom: 1em; }
    #sec03 dl:not(:last-of-type)::after {
      position: absolute;
      left: 50%;
      bottom: 0;
      transform: translateX(-50%);
      display: block;
      width: 1em;
      margin: auto;
      color: #EB6EA5;
      font-size: 3em;
      content: "▼"; }
    #sec03 dl:last-of-type dt::before {
      background-color: #E0CA82; }
    @media (max-width: 767px) {
      #sec03 dl:last-of-type .flex {
        flex-direction: column-reverse; } }
  #sec03 dt {
    display: flex;
    align-items: center;
    border-bottom: dotted 2px #bbb;
    font-size: 120%; }
    @media (min-width: 768px) {
      #sec03 dt {
        position: relative;
        margin-left: calc(2em + 1.3rem); } }
    @media (max-width: 767px) {
      #sec03 dt {
        padding-bottom: 0.5em; } }
    #sec03 dt::before {
      display: flex;
      justify-content: center;
      align-items: center;
      width: 2em;
      height: 2em;
      margin-right: 1rem;
      background-color: #E95332;
      border-radius: 50%;
      color: #fff;
      font-family: "Roboto", sans-serif;
      font-weight: bold;
      content: counter(number);
      counter-increment: number 1; }
      @media (min-width: 768px) {
        #sec03 dt::before {
          position: absolute;
          top: -1.5rem;
          left: calc(-2em - 1.3rem);
          font-size: 200%; } }
      @media (max-width: 767px) {
        #sec03 dt::before {
          font-size: 120%; } }
  #sec03 dd {
    padding-top: 2em; }
    @media (min-width: 768px) {
      #sec03 dd {
        margin-left: calc(2em + 1.3rem); } }
  #sec03 .line-box {
    display: flex;
    justify-content: space-around;
    align-items: center;
    width: 100%;
    max-width: 700px;
    margin: 1em auto;
    padding: 1.5em 1em;
    border: solid 0.2em #E95332;
    border-radius: 1em; }
    #sec03 .line-box p,
    #sec03 .line-box a {
      width: 100%;
      text-align: center; }
      @media (min-width: 768px) {
        #sec03 .line-box p,
        #sec03 .line-box a {
          width: 50%;
          margin: 0; } }
      @media (max-width: 767px) {
        #sec03 .line-box p,
        #sec03 .line-box a {
          margin: 1em auto; } }
      #sec03 .line-box p:not(.btn),
      #sec03 .line-box a:not(.btn) {
        color: #41220F;
        text-decoration: none; }
    #sec03 .line-box .bold {
      font-size: 150%; }

@media (max-width: 767px) {
  .table td {
    align-items: flex-start; } }
.table td p {
  margin-bottom: 0;
  line-height: 1.6; }
.table td dl {
  margin: 0; }
  .table td dl th {
    padding: 0;
    margin: 0 0 1.5em; }
  .table td dl dd {
    padding: 0;
    margin: 0; }
.table td ul li {
  line-height: 1.6 !important;
  font-weight: bold; }
  .table td ul li span {
    margin-left: 0.5em !important;
    font-weight: normal; }
    @media (max-width: 767px) {
      .table td ul li span {
        margin-left: 0 !important;
        padding-left: 0 !important; } }
  .table td ul li::before {
    margin-right: 0.5em;
    content: "●";
    font-size: 80%; }
.table td .red {
  margin: 1em 0; }
  @media (max-width: 767px) {
    .table td .red {
      font-size: 130%; } }
@media (max-width: 767px) {
  .table td .align-r {
    text-align: justify; } }
@media (max-width: 767px) {
  .table td span {
    display: block;
    padding-left: 1em; } }
