@keyframes scrollbar {
  0% {
    height: 0; }
  15% {
    height: 0; }
  30% {
    height: 0; }
  75% {
    height: 100%; }
  100% {
    height: 100%; } }
@keyframes scrollbar2 {
  0% {
    height: 100%; }
  15% {
    height: 0%; }
  50% {
    height: 0%; }
  100% {
    height: 0%; } }
@keyframes extend {
  0% {
    transform: scaleY(0); }
  100% {
    transform: scaleY(1); } }
@keyframes hidden {
  0% {
    transform: scaleY(1); }
  100% {
    transform: scaleY(0); } }
.wrap ul li {
  background: #f8f8f8;
  border: 1px solid #f8f8f8;
  border-radius: 0.8em; }
  .wrap ul li figure img {
    border: 1px solid #f8f8f8;
    border-radius: 0.5em; }
  .wrap ul li .btn a {
    position: relative;
    border: 1px solid #161719;
    display: block;
    letter-spacing: 0.1em;
    background: #161719; }
    .wrap ul li .btn a::after {
      content: "";
      display: block;
      background: url("../images/common/btn_arrow_red.png");
      background-size: 100% auto;
      position: absolute;
      top: 50%; }
    .wrap ul li .btn a:link {
      color: #f8f8f8;
      text-decoration: none;
      transition: opacity 0.3s; }
    .wrap ul li .btn a:visited {
      color: #f8f8f8;
      text-decoration: none; }
    .wrap ul li .btn a:hover {
      color: #161719;
      text-decoration: none; }
    .wrap ul li .btn a:active {
      color: #f8f8f8;
      text-decoration: none; }
.wrap dl {
  color: #161719; }
  .wrap dl dt {
    font-weight: bold;
    font-size: 1.125em;
    margin: 1em 0 0.5em; }

.download_form {
  background: #f8f8f8;
  border: 1px solid #f8f8f8;
  border-radius: 0.8em; }

.form_wrap dl select,
.form_wrap dl textarea,
.form_wrap dl input {
  border: 1px solid #ccc;
  width: 100%; }
.form_wrap .agree {
  color: #161719; }
  .form_wrap .agree a span {
    position: relative;
    padding-right: 1.5em; }
    .form_wrap .agree a span::after {
      content: "";
      display: block;
      background: url("../images/common/icon_blank_red.png") no-repeat;
      background-size: 100% auto;
      position: absolute;
      right: 0.3em;
      bottom: 0.1em; }
.form_wrap .btn-send {
  position: relative; }
  .form_wrap .btn-send::after {
    content: "";
    display: block;
    background: url("../images/contact/send_btn_arrow.png");
    background-size: 100% auto;
    position: absolute;
    top: 50%; }
.form_wrap .btn-send input {
  width: 100%;
  border: 1px solid #161719;
  background: #161719;
  color: #f8f8f8;
  letter-spacing: 0.15em; }

@media screen and (min-width: 568px) {
  .wrap ul {
    display: flex;
    column-gap: 20px;
    flex-wrap: wrap; }
    .wrap ul li {
      padding: 20px;
      margin-bottom: 20px;
      position: relative;
      width: 32.1%; }
      .wrap ul li dl {
        margin-bottom: 90px; }
      .wrap ul li .btn {
        position: absolute;
        bottom: 20px;
        left: 20px;
        right: 20px; }
        .wrap ul li .btn a {
          width: 100%;
          font-size: 18px;
          border-radius: 5px;
          padding: 20px 20px; }
          .wrap ul li .btn a::after {
            width: 36.5px;
            height: 36.5px;
            right: 20px;
            margin-top: -18.25px; }

  .download_form {
    padding: 40px;
    display: flex;
    margin-bottom: 100px; }
    .download_form .figure_wrap {
      width: 40vw; }
    .download_form .form_wrap {
      width: 42.5vw;
      margin-left: 2.5vw; }
      .download_form .form_wrap dl {
        letter-spacing: 0.08em; }
        .download_form .form_wrap dl dt {
          font-size: 16px;
          line-height: 1;
          margin-bottom: 10px;
          margin-top: 0; }
        .download_form .form_wrap dl dd + dt {
          margin-top: 30px; }
        .download_form .form_wrap dl dd select,
        .download_form .form_wrap dl dd input {
          height: 30px;
          padding: 0 15px;
          font-size: 16px; }
      .download_form .form_wrap .agree {
        margin-top: 30px; }
        .download_form .form_wrap .agree a span::after {
          width: 13.5px;
          height: 13px; }
      .download_form .form_wrap .btn-send {
        margin-top: 40px; }
        .download_form .form_wrap .btn-send::after {
          width: 11.5px;
          height: 18px;
          right: 30px;
          margin-top: -9px; }
      .download_form .form_wrap .btn-send input {
        height: 75px;
        font-size: 20px;
        border-radius: 5px; }
        .download_form .form_wrap .btn-send input:hover {
          background: #d71b2a;
          border: 1px solid #d71b2a; }

  #container01 {
    padding: 150px 80px 50px; }
    #container01 #knowledge {
      height: 100px; }

  #container02 {
    padding: 0 80px 150px; }
    #container02 #introduction {
      height: 100px; }

  .thanks h4 {
    font-size: 0;
    background: url("../images/download/find_thanks_txt@pc.png");
    background-size: 100% auto;
    width: 732.5px;
    height: 34px; }
    .thanks h4 + p {
      margin-bottom: 100px; } }
@media screen and (max-width: 567px) {
  .wrap ul li {
    padding: 4vw;
    margin-bottom: 4vw; }
    .wrap ul li dl {
      margin-bottom: 4vw;
      font-size: 3.2vw; }
    .wrap ul li .btn a {
      width: 76vw;
      font-size: 3.6vw;
      border-radius: 1vw;
      padding: 5.5vw 5vw; }
      .wrap ul li .btn a::after {
        width: 7.3vw;
        height: 7.3vw;
        right: 4vw;
        margin-top: -3.65vw; }

  .download_form {
    padding: 4vw;
    margin-bottom: 15vw; }
    .download_form .figure_wrap {
      margin-bottom: 4vw; }
      .download_form .figure_wrap dl {
        font-size: 3.2vw; }
    .download_form .form_wrap dl {
      letter-spacing: 0.08em;
      font-size: 3.2vw; }
      .download_form .form_wrap dl dt {
        font-weight: bold;
        line-height: 1;
        margin-bottom: 3vw; }
      .download_form .form_wrap dl dd + dt {
        margin-top: 8vw; }
      .download_form .form_wrap dl dd select,
      .download_form .form_wrap dl dd input {
        height: 8vw;
        padding: 0 3vw; }
    .download_form .form_wrap .agree {
      margin-top: 8vw; }
      .download_form .form_wrap .agree a span::after {
        width: 2.7vw;
        height: 2.6vw; }
    .download_form .form_wrap .btn-send {
      margin-top: 8vw; }
      .download_form .form_wrap .btn-send::after {
        width: 2.3vw;
        height: 3.6vw;
        right: 6vw;
        margin-top: -1.8vw; }
    .download_form .form_wrap .btn-send input {
      height: 15vw;
      font-size: 4vw;
      border-radius: 1vw; }

  #container01 {
    padding: 30vw 8vw 15vw; }
    #container01 #knowledge {
      height: 15vw; }

  #container02 {
    padding: 0 8vw 30vw; }
    #container02 #introduction {
      height: 15vw; }

  .anchor p a {
    padding: 2vw 11.5vw !important; }

  .thanks h4 {
    font-size: 0;
    background: url("../images/download/find_thanks_txt@sp.png");
    background-size: 100% auto;
    width: 76.6vw;
    height: 15.5vw; } }
