section:not(#page_title):not(.sec00) {
  background-color: #fff;
  margin-top: 2vw;
  border-radius: 64px;
}
.section:not(:first-of-type) {
  margin-top: 6vw !important;
}
.section_body {
  padding: 4vw 4vw;
}

.flexbox {
  gap: 4vw;
}
.col_2 .box {
  width: calc(calc(100% - 4vw) / 2);
}
.col_3 .box {
  width: calc(calc(100% - 8vw) / 3);
}

.ticker_wrapper {
  background-color: #0b2e6c;
  color: #fff;
  min-height: 100px;
  font-size: 4em;
  font-weight: 700;
  width: 100%;
  overflow: hidden;
}
.loop {
  animation: loop 30s linear infinite;
  width: 100%;
  white-space: nowrap;
  text-align: center;
}
@keyframes loop {
  0%{
    transform: translateX(0%);
  }
  100%{
    transform: translateX(-100%);
  }
}


.section .section_header {
  height: 150px;
  text-align: center;
  color: #fff;
  position: relative;
  border-top-left-radius: 64px;
  border-top-right-radius: 64px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.section .section_header .num {
  font-size: clamp(1.25rem, 1.028rem + 1.11vw, 2rem);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3em;
  height: 3em;
  border-radius: 50%;
  background-color: var(--color-theme-accent);
  position: absolute;
  left: 50%;
  top: -1.5em;
  transform: translateX(-50%);
  font-weight: 600;
}

.section.blue .section_header {
  background-color: #1d67d4;
}
.section.blue .section_header .num {
  color: #1d67d4;
}
.section.orange .section_header {
  background-color: #fca854;
}
.section.orange .section_header .num {
  color: #fca854;
}

.section.green .section_header {
  background-color: #0baf84;
}
.section.green .section_header .num {
  color: #0baf84;
}



.section .section_header h3 {
  font-size: clamp(1.25rem, 1.028rem + 1.11vw, 1.75rem);
  font-weight: 500;
  padding-top: 1em;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.2;
}

.section_body .thumbnail {
  text-align: center;
}
.section_body .thumbnail img {
  max-width: 100%;
  height: auto;
}


.sec01 .section_body {
  padding: 4vw 4vw 0;
}
.sec01 .section_body ul {
  text-indent: -9999px;
  height: 0;
}

.sec02 .box {
  background-color: #f5f5f5;
  overflow: hidden;
  border-radius: 3vw;
}
.sec02 .box .bubble {
  width: 13vw;
  height: 13vw;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--color-theme-accent);
  border-radius: 50%;
  text-align: center;
  font-weight: 500;
  margin: -2vw auto 0;
}
.sec02 .box .thumbnail {
  margin: -4vw 2em 1em;
}
.sec02 .box .list {
  padding: 2em;
  background-color: #1d67d4;
  height: 100%;
  color: #fff;
  list-style-type: disc;
}
.sec02 .box .list li {
  margin-left: 1em;
}


.sec03 .thumbnail {
  position: relative;
  text-align: center;
}
.sec03 .icons {
  position: absolute;
  left: 0;
  top: 0;
  text-align: center;
}
.sec03 .icons.true {
  right: 0;
  bottom: 0;
  left: auto;
  top: auto;
}
.sec03 .icons .num {
  font-size: clamp(1.5rem, 1.093rem + 2.04vw, 2.875rem);
}
.sec03 .icons .num span {
  font-size: clamp(2rem, 1.185rem + 4.07vw, 4.75rem);
  line-height: 1;
}

.sec03 .answer {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  flex-wrap: wrap;
}
.sec03 .answer dl {
  width: 50%;
  border-top: 1px solid #ddd;
}
.sec03 .answer dt {
  font-size: clamp(1.25rem, 1.028rem + 1.11vw, 1.78rem);
  font-weight: 500;
  letter-spacing: 0;
  color: #0f5cce;
}
.sec03 .answer dl:nth-child(odd) {
  padding: 2vw 2vw 2vw 0;
  border-right: 1px solid #ddd;
}
.sec03 .answer dl:nth-child(even) {
  padding: 2vw 0 2vw 2vw;
}

.sec03 .answer dl:nth-child(1),
.sec03 .answer dl:nth-child(2) {
  border-top: none;
}
.sec03 .answer .false dt {
  color: #f36c69;
}

.flexbox:has(.section) {
  margin-top: 4vw;
}

.col_3 .section .section_body {
  padding: 0 2vw 2vw;
}
.col_3 .section .section_body img {
  width: 100%;
  height: auto;
}

.sec04 .list,
.sec05 .list,
.sec06 .list {
  border-top: 1px solid #ddd;
}
.sec04 .list li,
.sec05 .list li,
.sec06 .list li {
  color: #fca854;
  text-align: center;
  padding: .5em 1em;
  font-weight: 500;
  border-bottom: 1px solid #ddd;
}
.section.sec05,
.section.sec06 {
  margin-top: 2vw !important;
}

.sec07 .col_2 .box:has(.answer),
.sec08 .col_2 .box:has(.answer),
.sec09 .col_2 .box:has(.answer) {
  width: calc(66.666% - 2vw);
}
.sec07 .col_2 .thumbnail,
.sec08 .col_2 .thumbnail,
.sec09 .col_2 .thumbnail {
  width: calc(33.333% - 2vw);
}
.sec07 .flexbox:has(.answer),
.sec08 .flexbox:has(.answer),
.sec09 .flexbox:has(.answer) {
  align-items: center;
}

.sec07 .col_2 .box .answer,
.sec08 .col_2 .box .answer,
.sec09 .col_2 .box .answer {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  column-gap: 2vw;
  row-gap: 1vw;
  flex-wrap: wrap;
}
.sec07 .col_2 .box .answer li,
.sec08 .col_2 .box .answer li,
.sec09 .col_2 .box .answer li {
  width: calc(calc(100% - 2vw) / 2);
  display: flex;
  align-items: center;
  justify-content: center;
  border-top-left-radius: 1vw;
  border-bottom-left-radius: 1vw;
  border-top-right-radius: 1vw;
  border: 2px solid #fca854;
  color: #fca854;
  font-weight: 500;
  padding: 1em;
  text-align: center;
}
.sec08 .col_2 .box .answer li,
.sec09 .col_2 .box .answer li {
  width: calc(calc(100% - 2vw) / 2);
  display: flex;
  align-items: center;
  justify-content: center;
  border-top-left-radius: 1vw;
  border-bottom-left-radius: 1vw;
  border-top-right-radius: 1vw;
  border: 2px solid #0baf84;
  color: #0baf84;
  font-weight: 500;
  padding: 1em;
}


@media screen and (max-width: 767px) {
  .flexbox {
    flex-wrap: wrap;
  }
  .col_2 .box,
  .col_3 .box,
  .col_4 .box,
  .col_5 .box {
    width: 100%;
  }
  section:not(#page_title):not(.sec00) {
    border-radius: 32px;
  }
  .section .section_header {
    border-top-left-radius: 32px;
    border-top-right-radius: 32px;
    height: 90px;
  }
  .sec02 .box .bubble {
    width: 160px;
    height: 160px;
  }
  .sec03 .answer dl:nth-child(odd) {
    border-right: none;
  }
  .sec03 .answer dl:nth-child(1),
  .sec03 .answer dl:nth-child(2) {
    border-top: 1px solid #ddd;
  }
  .sec03 .answer dl {
    width: 100%;
    border: none;
    border-top: 1px solid #ddd;
    padding: 1em;
  }
  .sec07 .flexbox:has(.answer),
  .sec08 .flexbox:has(.answer), 
  .sec09 .flexbox:has(.answer) {
    flex-direction: column;
  }
  .sec07 .col_2 .box:has(.answer),
  .sec08 .col_2 .box:has(.answer), 
  .sec09 .col_2 .box:has(.answer) {
    width: 100%;
  }
  .sec07 .col_2 .thumbnail,
  .sec08 .col_2 .thumbnail,
  .sec09 .col_2 .thumbnail {
    width: 100%;
  }
  .ticker_wrapper {
    font-size: 2em;
    min-height: 50px;
  }
  .section:not(:first-of-type) {
    margin-top: 3em !important;
  }
  article.content .content_inner {
    padding: 12vw 4vw 8vw;
  }
}
