#top_contents {
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.7;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
#top_contents h2.h2_en {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: clamp(2.125rem, 1.0057251908rem + 4.3256997455vw, 4.25rem);
  font-weight: bold;
  line-height: 1.1;
  margin: 0 0 min(40px, 4vw);
  color: #15a3ca;
}
#top_contents h3 {
  font-size: clamp(1.3125rem, 1.016221374rem + 1.1450381679vw, 1.875rem);
  font-weight: bold;
  line-height: 1.4;
  margin: 0 0 min(50px, 5vw);
}
#top_contents h3 .font_l {
  display: block;
  font-size: clamp(1.875rem, 1.1507633588rem + 2.7989821883vw, 3.25rem);
}
@media screen and (max-width: 768px) {
  #top_contents h3 .font_l {
    display: inline-block;
  }
}
#top_contents h4 {
  font-size: clamp(1.125rem, 0.927480916rem + 0.7633587786vw, 1.5rem);
  font-weight: bold;
  margin: min(40px, 4vw) 0 min(40px, 4vw);
}
#top_contents .jp_txt {
  font-size: clamp(1rem, 0.802480916rem + 0.7633587786vw, 1.375rem);
  font-weight: bold;
  margin: 0 0 min(40px, 4vw);
}
#top_contents .sec_txt {
  font-size: clamp(1rem, 0.9341603053rem + 0.2544529262vw, 1.125rem);
  line-height: 2.2;
}
#top_contents .link_btn {
  margin: min(40px, 4vw) 0;
}
#top_contents .link_btn a {
  font-size: clamp(0.9375rem, 0.8716603053rem + 0.2544529262vw, 1.0625rem);
  font-weight: bold;
  text-align: center;
  width: 250px;
  display: inline-block;
  border-radius: 60px;
  padding: 10px 24px;
  color: #fff;
  background-color: #15a3ca;
  background-repeat: no-repeat;
  background-position: 16px 50%;
  background-image: url("../../images/ico_yaji_rt06_red.svg");
  background-size: 6px auto;
  -webkit-transition: background-color 0.2s, color 0.2s;
  transition: background-color 0.2s, color 0.2s;
  position: relative;
  overflow: hidden;
}
#top_contents .link_btn a::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-radius: 60px;
  border: 3px solid #15a3ca;
  pointer-events: none;
}
#top_contents .link_btn a::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-radius: 60px;
  border: 3px solid transparent;
  pointer-events: none;
}
#top_contents .link_btn a:hover {
  text-decoration: none;
  color: #e84951;
  background-color: #fff;
}
#top_contents .link_btn a:hover::before {
  border-color: transparent;
}
#top_contents .link_btn a:hover::after {
  border-top-color: transparent;
  border-right-color: transparent;
  border-bottom-color: transparent;
  border-left-color: transparent;
  -webkit-animation: borderAnimation 0.4s ease-in forwards;
          animation: borderAnimation 0.4s ease-in forwards;
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}
@media screen and (max-width: 768px) {
  #top_contents .link_btn {
    text-align: center;
  }
}
@-webkit-keyframes borderAnimation {
  0% {
    border-top-color: transparent;
    border-right-color: transparent;
    border-bottom-color: transparent;
    border-left-color: transparent;
  }
  25% {
    border-top-color: #e84951;
    border-right-color: transparent;
    border-bottom-color: transparent;
    border-left-color: transparent;
  }
  50% {
    border-top-color: #e84951;
    border-right-color: #e84951;
    border-bottom-color: transparent;
    border-left-color: transparent;
  }
  75% {
    border-top-color: #e84951;
    border-right-color: #e84951;
    border-bottom-color: #e84951;
    border-left-color: transparent;
  }
  100% {
    border-top-color: #e84951;
    border-right-color: #e84951;
    border-bottom-color: #e84951;
    border-left-color: #e84951;
  }
}
@keyframes borderAnimation {
  0% {
    border-top-color: transparent;
    border-right-color: transparent;
    border-bottom-color: transparent;
    border-left-color: transparent;
  }
  25% {
    border-top-color: #e84951;
    border-right-color: transparent;
    border-bottom-color: transparent;
    border-left-color: transparent;
  }
  50% {
    border-top-color: #e84951;
    border-right-color: #e84951;
    border-bottom-color: transparent;
    border-left-color: transparent;
  }
  75% {
    border-top-color: #e84951;
    border-right-color: #e84951;
    border-bottom-color: #e84951;
    border-left-color: transparent;
  }
  100% {
    border-top-color: #e84951;
    border-right-color: #e84951;
    border-bottom-color: #e84951;
    border-left-color: #e84951;
  }
}
#top_contents .link_arrow a {
  display: inline-block;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #15a3ca;
  font-weight: bold;
  padding-left: 60px;
  line-height: 55px;
  position: relative;
}
#top_contents .link_arrow a .anim_en {
  position: absolute;
  left: 0;
  top: 0;
  width: 54px;
  height: 54px;
  background-color: #15a3ca;
  border-radius: 50%;
  overflow: hidden;
}
#top_contents .link_arrow a .anim_en .anim_en_inner {
  position: absolute;
  z-index: 10;
  left: 3px;
  top: 3px;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background-color: #15a3ca;
  background-repeat: no-repeat;
  background-position: 55% 50%;
  background-image: url("../../images/ico_yaji_rt06_red.svg");
  background-size: 6px auto;
  -webkit-transition: height 0.2s linear;
  transition: height 0.2s linear;
}
#top_contents .link_arrow a .anim_en:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 50%;
  height: 0%;
  background-color: transparent;
  -webkit-transition: height 0.2s 0.2s linear;
  transition: height 0.2s 0.2s linear;
}
#top_contents .link_arrow a .anim_en:after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  width: 50%;
  height: 0%;
  background-color: transparent;
  -webkit-transition: height 0.2s linear;
  transition: height 0.2s linear;
}
#top_contents .link_arrow a:hover {
  color: #e84951;
  text-decoration: none;
}
#top_contents .link_arrow a:hover .anim_en {
  background-color: #f7f7f4;
}
#top_contents .link_arrow a:hover .anim_en .anim_en_inner {
  position: absolute;
  z-index: 10;
  background-color: #f7f7f4;
}
#top_contents .link_arrow a:hover .anim_en:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 50%;
  height: 100%;
  background-color: #e84951;
}
#top_contents .link_arrow a:hover .anim_en:after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  width: 50%;
  height: 100%;
  background-color: #e84951;
}
@media screen and (max-width: 768px) {
  #top_contents {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

#top_main_img_container {
  position: relative;
  overflow: hidden;
}
#top_main_img_container .top_main_img_block img {
  width: 100%;
}
#top_main_img_container .top_main_img_inner {
  padding: min(30px, 3vw) min(80px, 8vw) min(60px, 6vw);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#top_main_img_container .top_main_img_inner .top_main_img_arrow_and_animals {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  -ms-grid-rows: auto;
  grid-template-rows: auto;
  text-align: center;
}
#top_main_img_container .top_main_img_inner .top_main_img_arrow_and_animals > *:nth-child(1) {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
#top_main_img_container .top_main_img_inner .top_main_img_arrow_and_animals .top_main_img_arrow {
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-column: 1/2;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2;
}
#top_main_img_container .top_main_img_inner .top_main_img_arrow_and_animals .top_main_img_animals {
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-column: 1/2;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2;
  mix-blend-mode: multiply;
}
#top_main_img_container .top_main_img_inner .top_main_img_on_txt h6 {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: clamp(1.375rem, -0.2051526718rem + 6.106870229vw, 4.375rem);
  color: #fff;
  mix-blend-mode: difference;
  transform: translateZ(0);
  -webkit-transform: translateZ(0);
}
@media screen and (max-width: 768px) {
  #top_main_img_container .top_main_img_inner .top_main_img_on_txt {
    margin-top: min(360px, 36vw);
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  #top_main_img_container .top_main_img_inner {
    padding: min(60px, 6vw) min(20px, 2vw) min(60px, 6vw);
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}

.top_txt_scroll {
  overflow: hidden;
  position: relative;
  z-index: -1;
}
.top_txt_scroll .c-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  will-change: transform;
}
.top_txt_scroll .c-text__item {
  color: #f7f7f4;
  font-size: clamp(2.25rem, 0.9990458015rem + 4.834605598vw, 4.625rem);
  -ms-flex-negative: 0;
      flex-shrink: 0;
  white-space: nowrap;
  padding: 0 40px;
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-weight: bold;
}

#topsec_1001 {
  padding: min(100px, 10vw) 0 min(170px, 17vw);
  position: relative;
  overflow: hidden;
}
#topsec_1001 .top_load_line {
  position: absolute;
  z-index: -1;
  left: 0;
  top: 0;
  width: 100%;
}
#topsec_1001 .top_load_line .top_load_line_inner {
  max-width: 1520px;
  margin: 0 auto;
  padding: 0 min(140px, 14vw);
  text-align: right;
}
#topsec_1001 .top_load_line .top_load_line_inner object {
  width: 100px;
}
@media screen and (max-width: 768px) {
  #topsec_1001 .top_load_line .top_load_line_inner object {
    width: 40px;
  }
}
#topsec_1001 .sec_row {
  max-width: 1520px;
  margin: -40px auto 0;
  padding: 0 min(60px, 6vw);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#topsec_1001 .sec_row .sec_col {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 48%;
          flex: 0 1 48%;
}
@media screen and (max-width: 768px) {
  #topsec_1001 .sec_row {
    display: block;
    margin-top: -15px;
  }
  #topsec_1001 .sec_row .sec_col:first-child {
    margin-bottom: 2em;
  }
}

#top_contents .topsec_img2001 {
  aspect-ratio: 1/0.454;
  overflow: hidden;
  position: relative;
}
#top_contents .topsec_img2001 .sec_inner {
  position: absolute;
  z-index: 1500;
  bottom: 0;
  left: 0;
  width: 100%;
  text-align: right;
  padding: min(80px, 8vw) min(80px, 8vw);
  mix-blend-mode: difference;
}
#top_contents .topsec_img2001 h4 {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-weight: bold;
  font-size: clamp(1.25rem, -0.3630725191rem + 6.2340966921vw, 4.3125rem);
  line-height: 1.1;
  color: #fff;
  margin: 0;
}
#topsec_2001 {
  padding: min(170px, 17vw) 0;
  position: relative;
  overflow: hidden;
}
#topsec_2001 .top_load_line {
  position: absolute;
  z-index: -1;
  left: 0;
  top: 0;
  width: 100%;
}
#topsec_2001 .top_load_line .top_load_line_inner {
  max-width: 1520px;
  margin: 0 auto;
  padding: 0 min(140px, 14vw);
}
#topsec_2001 .top_load_line .top_load_line_inner object {
  width: 100px;
}
@media screen and (max-width: 768px) {
  #topsec_2001 .top_load_line .top_load_line_inner object {
    width: 40px;
  }
}
#topsec_2001 .sec_row {
  max-width: 1520px;
  margin: 0 auto 0;
  padding: 0 min(60px, 6vw);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#topsec_2001 .sec_row .sec_col {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 48%;
          flex: 0 1 48%;
}
#topsec_2001 .sec_row .sec_col .sec_img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
#topsec_2001 .sec_row .sec_col .sec_img img {
  border-radius: 6px;
}
#topsec_2001 .sec_row .sec_col .sec_img .img_rt {
  position: relative;
  top: 3em;
  margin-right: 2em;
  margin-left: 1em;
}
@media screen and (max-width: 768px) {
  #topsec_2001 .sec_row {
    display: block;
  }
  #topsec_2001 .sec_row .sec_col:first-child {
    margin-bottom: 5em;
  }
}

#top_contents .topsec_img3001 {
  aspect-ratio: 1/0.454;
  overflow: hidden;
  position: relative;
}
#top_contents .topsec_img3001 .sec_inner {
  position: absolute;
  z-index: 1500;
  bottom: 0;
  left: 0;
  width: 100%;
  text-align: right;
  padding: min(80px, 8vw) min(80px, 8vw);
  mix-blend-mode: difference;
}
#top_contents .topsec_img3001 h4 {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-weight: bold;
  font-size: clamp(1.25rem, -0.3630725191rem + 6.2340966921vw, 4.3125rem);
  line-height: 1.1;
  color: #fff;
  margin: 0;
}
#topsec_3001 {
  padding: min(170px, 17vw) 0;
  position: relative;
  overflow: hidden;
}
#topsec_3001 .top_load_line {
  position: absolute;
  z-index: -1;
  left: 0;
  top: 0;
  width: 100%;
}
#topsec_3001 .top_load_line .top_load_line_inner {
  max-width: 1520px;
  margin: 0 auto;
  padding: 0 min(140px, 14vw);
  text-align: right;
}
#topsec_3001 .top_load_line .top_load_line_inner object {
  width: 100px;
}
@media screen and (max-width: 768px) {
  #topsec_3001 .top_load_line .top_load_line_inner object {
    width: 40px;
  }
}
#topsec_3001 .sec_row {
  max-width: 1520px;
  margin: 0 auto 0;
  padding: 0 min(60px, 6vw);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#topsec_3001 .sec_row .sec_col {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 48%;
          flex: 0 1 48%;
}
#topsec_3001 .sec_row .sec_col .sec_img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
#topsec_3001 .sec_row .sec_col .sec_img img {
  border-radius: 6px;
}
#topsec_3001 .sec_row .sec_col .sec_img .img_rt {
  position: relative;
  top: 3em;
  margin-right: 2em;
  margin-left: 1em;
}
@media screen and (max-width: 768px) {
  #topsec_3001 .sec_row {
    display: block;
  }
  #topsec_3001 .sec_row .sec_col:first-child {
    margin-bottom: 5em;
  }
}

#top_contents .topsec_img4001 {
  aspect-ratio: 1/0.454;
  overflow: hidden;
  position: relative;
}
#top_contents .topsec_img4001 .sec_inner {
  position: absolute;
  z-index: 1500;
  bottom: 0;
  left: 0;
  width: 100%;
  text-align: right;
  padding: min(80px, 8vw) min(80px, 8vw);
  mix-blend-mode: difference;
}
#top_contents .topsec_img4001 h4 {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-weight: bold;
  font-size: clamp(1.25rem, -0.3630725191rem + 6.2340966921vw, 4.3125rem);
  line-height: 1.1;
  color: #fff;
  margin: 0;
}
#topsec_4001 {
  padding: min(170px, 17vw) 0;
  position: relative;
  overflow: hidden;
}
#topsec_4001 .top_load_line {
  position: absolute;
  z-index: -1;
  left: 0;
  top: 0;
  width: 100%;
}
#topsec_4001 .top_load_line .top_load_line_inner {
  max-width: 1520px;
  margin: 0 auto;
  padding: 0 min(140px, 14vw);
}
#topsec_4001 .top_load_line .top_load_line_inner object {
  width: 100px;
}
@media screen and (max-width: 768px) {
  #topsec_4001 .top_load_line .top_load_line_inner object {
    width: 40px;
  }
}
#topsec_4001 .sec_row {
  max-width: 1520px;
  margin: 0 auto 0;
  padding: 0 min(60px, 6vw);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#topsec_4001 .sec_row .sec_col {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 48%;
          flex: 0 1 48%;
}
#topsec_4001 .sec_row .sec_col .sec_img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
#topsec_4001 .sec_row .sec_col .sec_img img {
  border-radius: 6px;
}
#topsec_4001 .sec_row .sec_col .sec_img .img_rt {
  position: relative;
  top: 3em;
  margin-right: 2em;
  margin-left: 1em;
}
@media screen and (max-width: 768px) {
  #topsec_4001 .sec_row {
    display: block;
  }
  #topsec_4001 .sec_row .sec_col:first-child {
    margin-bottom: 5em;
  }
}

#topsec_news {
  padding: min(170px, 17vw) 0;
  background-color: #f7f7f4;
}
#topsec_news .sec_row {
  max-width: 1520px;
  margin: 0 auto 0;
  padding: 0 min(60px, 6vw);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#topsec_news .sec_row .sec_col_lt {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 30%;
          flex: 0 1 30%;
}
#topsec_news .sec_row .sec_col_rt {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 70%;
          flex: 0 1 70%;
}
@media screen and (max-width: 768px) {
  #topsec_news .sec_row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #topsec_news .sec_row .sec_col_lt {
    display: contents;
  }
  #topsec_news .sec_row .sec_col_rt {
    display: contents;
  }
  #topsec_news .sec_row .sec_header {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  #topsec_news .sec_row .link_arrow {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    text-align: center;
    margin-top: 30px;
  }
  #topsec_news .sec_row .news_container {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}