/*
$4ewsColor: 
    /*col01: #238561,
  col02: #67a2b7,
  col03: #d2843e,
  col04: #cf775b,
  col05: #cf9942,
  col06: #926c28,
  col07: #cc7175,
  col08: #608ea1,
  col09: #5b609a,
  col10: #487390,
  col11: #4e9386,
  col12: #79a153,
  col13: #817499
);
*/
section .ttl_set {
  position: relative;
}
@media screen and (min-width: 769px) {
  section .ttl_set {
    padding: 0 0 4rem;
  }
}
@media screen and (max-width: 768px) {
  section .ttl_set {
    width: 67rem;
    margin: 0 auto;
    padding: 0 0 6rem;
  }
}

#projects .ttl_set .banner {
  position: absolute;
  -webkit-transition: ease-out 0.6s all;
  transition: ease-out 0.6s all;
}
@media screen and (min-width: 769px) {
  #projects .ttl_set .banner {
    right: 0;
    top: 4.5rem;
    width: 24rem;
  }
}
@media screen and (max-width: 768px) {
  #projects .ttl_set .banner {
    right: 0;
    top: 5.2rem;
    width: 20rem;
  }
}

/*
#projects  .ttl_set .banner:hover{
    @include mq(pc) {
    opacity: 0.6;
    }
}
*/
section .ttl_set p.ttl_sub {
  position: relative;
  color: #8b8b8b;
  font-weight: 400;
  font-family: "Noto Serif TC", serif;
}
@media screen and (min-width: 769px) {
  section .ttl_set p.ttl_sub {
    line-height: 1em;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
    padding: 0 0 0.5rem;
  }
}
@media screen and (max-width: 768px) {
  section .ttl_set p.ttl_sub {
    line-height: 1.7em;
    font-size: 2.8rem;
    letter-spacing: 0.05em;
  }
}

section .ttl_set h2 {
  position: relative;
  color: #333333;
  /*font-family: 'Noto Sans', sans-serif;*/
  font-weight: 100;
  font-family: "Noto Serif TC", serif;
}
@media screen and (min-width: 769px) {
  section .ttl_set h2 {
    line-height: 1em;
    font-size: 6rem;
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 768px) {
  section .ttl_set h2 {
    line-height: 1.375em;
    font-size: 8rem;
    letter-spacing: 0.05em;
  }
}

section .ttl_set .ttl_link {
  position: relative;
  display: table;
}

section .ttl_set .ttl_link h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

section .ttl_set .ttl_link h2 .arrow {
  aspect-ratio: 1/1;
  position: relative;
  display: block;
  background: rgb(16, 59, 110);
  background: -webkit-gradient(linear, left top, right top, from(rgb(16, 59, 110)), to(rgb(1, 132, 210)));
  background: linear-gradient(90deg, rgb(16, 59, 110) 0%, rgb(1, 132, 210) 100%);
  border-radius: 50%;
}
@media screen and (min-width: 769px) {
  section .ttl_set .ttl_link h2 .arrow {
    margin-left: 3rem;
    width: 4rem;
  }
}
@media screen and (max-width: 768px) {
  section .ttl_set .ttl_link h2 .arrow {
    margin-left: 3rem;
    width: 6.8rem;
    -webkit-transform: translateY(-1rem);
            transform: translateY(-1rem);
  }
}

section .ttl_set .ttl_link h2 .arrow::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: ease-out 0.2s all;
  transition: ease-out 0.2s all;
}
@media screen and (min-width: 769px) {
  section .ttl_set .ttl_link h2 .arrow::before {
    background: url(../common/img/icon_arrow_w.svg) center center no-repeat;
    background-size: 0.8rem auto;
    -webkit-transform: translateX(0.1rem);
            transform: translateX(0.1rem);
  }
}
@media screen and (max-width: 768px) {
  section .ttl_set .ttl_link h2 .arrow::before {
    background: url(../common/img/icon_arrow_w.svg) center center no-repeat;
    background-size: 1.28rem auto;
    -webkit-transform: translateX(0.2rem);
            transform: translateX(0.2rem);
  }
}

section .ttl_set .ttl_link h2 .window {
  aspect-ratio: 1/1;
  position: relative;
  display: block;
  background: rgb(16, 59, 110);
  background: -webkit-gradient(linear, left top, right top, from(rgb(16, 59, 110)), to(rgb(1, 132, 210)));
  background: linear-gradient(90deg, rgb(16, 59, 110) 0%, rgb(1, 132, 210) 100%);
  border-radius: 50%;
}
@media screen and (min-width: 769px) {
  section .ttl_set .ttl_link h2 .window {
    margin-left: 3rem;
    width: 4rem;
  }
}
@media screen and (max-width: 768px) {
  section .ttl_set .ttl_link h2 .window {
    margin-left: 3rem;
    width: 6.8rem;
    -webkit-transform: translateY(0.7rem);
            transform: translateY(0.7rem);
  }
}

section .ttl_set .ttl_link h2 .window::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: ease-out 0.2s all;
  transition: ease-out 0.2s all;
}
@media screen and (min-width: 769px) {
  section .ttl_set .ttl_link h2 .window::before {
    background: url(../common/img/icon_window_w.svg) center center no-repeat;
    background-size: 1.12rem auto;
  }
}
@media screen and (max-width: 768px) {
  section .ttl_set .ttl_link h2 .window::before {
    background: url(../common/img/icon_window_w.svg) center center no-repeat;
    background-size: 1.92rem auto;
    -webkit-transform: translateX(0.1rem);
            transform: translateX(0.1rem);
  }
}

section .ttl_set .ttl_link h2 p {
  position: relative;
  -webkit-transition: ease-out 0.6s all;
  transition: ease-out 0.6s all;
}

@media screen and (min-width: 769px) {
  section .ttl_set a.ttl_link:hover h2 p {
    color: #0068b2;
  }
}

/**/
body {
  min-height: 100vh;
}

main {
  position: relative;
  -webkit-transition: ease-in-out 0.9s all;
  transition: ease-in-out 0.9s all;
}
@media screen and (min-width: 769px) {
  main {
    padding-bottom: 7rem;
  }
}
@media screen and (max-width: 768px) {
  main {
    padding-bottom: 8rem;
  }
}

#news {
  position: relative;
  background: #f7f7f7;
}
#news .inner {
  position: relative;
}
@media screen and (min-width: 769px) {
  #news .inner {
    padding: 5rem 0;
    width: 100%;
    max-width: 120rem;
    margin: 0 auto;
  }
}
@media screen and (max-width: 768px) {
  #news .inner {
    padding: 6rem 0;
    max-width: 67rem;
    margin: 0 auto;
  }
}

#news_tab {
  position: relative;
}
@media screen and (min-width: 769px) {
  #news_tab {
    width: 100%;
    height: 4rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 0.2rem;
  }
}
@media screen and (max-width: 768px) {
  #news_tab {
    width: 100%;
    height: 9rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 1rem;
  }
}

#news_tab a {
  position: relative;
  font-weight: 400;
  cursor: pointer;
  -webkit-transition: ease-out 0.6s all;
  transition: ease-out 0.6s all;
  text-align: center;
  overflow: hidden;
}
@media screen and (min-width: 769px) {
  #news_tab a {
    line-height: 1em;
    font-size: 1.5rem;
    letter-spacing: 0.05em;
    width: 25%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    background: #fff;
    color: #8b8b8b;
  }
}
@media screen and (max-width: 768px) {
  #news_tab a {
    line-height: 1.167em;
    font-size: 2.4rem;
    letter-spacing: 0em;
    width: 33.3333%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    background: #fff;
    color: #8b8b8b;
    border-radius: 0.5rem;
  }
}

@media screen and (min-width: 769px) {
  #news_tab a:first-of-type {
    border-top-left-radius: 0.4rem;
    border-bottom-left-radius: 0.4rem;
  }
}

@media screen and (min-width: 769px) {
  #news_tab a:last-of-type {
    border-top-right-radius: 0.4rem;
    border-bottom-right-radius: 0.4rem;
  }
}

#news_tab a:hover,
#news_tab a.current {
  background: #0068b2;
  color: #fff;
}

/*
#news_set{
    position: relative;
    transition:ease-out 0.9s all;
      @include mq(pc) {
          width: 100%;
    }
    @include mq(sp) {
          width: 100%;
    }
}
#news_set .news_box{
    position: relative;
    display: none;
    transition:ease 0.4s all;
    overflow: hidden;
      @include mq(pc) {
          width: 100%;
          padding: divceil(60, 10, rem) 0 0;
    }
    @include mq(sp) {
          width: 100%;
          padding: divceil(60, 10, rem) 0 0;
    }
}
#news_set .news_box.current{
    position: relative;
    display:block;
}
*/
#news_set {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 768px) {
  #news_set {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 6rem;
  }
}

#release_set,
#ir_news_set {
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 769px) {
  #release_set,
  #ir_news_set {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  #release_set,
  #ir_news_set {
    width: 67rem;
    padding-bottom: 10rem;
  }
}
@media screen and (max-width: 768px) {
  #release_set .news_h3_set > h3,
  #ir_news_set .news_h3_set > h3 {
    line-height: 1.5em;
    font-size: 4rem;
  }
}

#news_set .news_h3_set {
  position: relative;
}
@media screen and (min-width: 769px) {
  #news_set .news_h3_set {
    padding: 0 0 3rem;
  }
}
@media screen and (max-width: 768px) {
  #news_set .news_h3_set {
    width: 67rem;
    margin: 0 auto;
    padding: 0 0 3rem;
  }
}

@media screen and (min-width: 769px) {
  #news_set .hgroup_link {
    top: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  #news_set .hgroup_link {
    bottom: 2rem;
  }
}

#news_set .news_list a {
  position: relative;
  -webkit-transition: ease-out 0.6s all;
  transition: ease-out 0.6s all;
  border-top: rgba(27, 34, 76, 0.1) 1px solid;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (min-width: 769px) {
  #news_set .news_list a {
    width: 100%;
    padding: 2rem 0;
  }
}
@media screen and (max-width: 768px) {
  #news_set .news_list a {
    width: 100%;
    padding: 3rem 0;
  }
}

#news_set .news_list a:last-of-type {
  border-bottom: rgba(27, 34, 76, 0.1) 1px solid;
}

#news_set .news_list a .category {
  position: relative;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  white-space: nowrap;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  #news_set .news_list a .category {
    line-height: 1em;
    font-size: 1.1rem;
    letter-spacing: 0;
    width: 14rem;
    height: 2rem;
    border-radius: 0.3rem;
  }
}
@media screen and (max-width: 768px) {
  #news_set .news_list a .category {
    line-height: 1em;
    font-size: 2.2rem;
    letter-spacing: 0;
    width: 28rem;
    height: 3.8rem;
    border-radius: 0.4rem;
  }
}

#news_set .news_list a .category.category_color1 {
  color: #fff;
  background: #6598cf;
}

#news_set .news_list a .category.category_color2 {
  color: #fff;
  background: #b7b079;
}

#news_set .news_list a .sub_category {
  position: relative;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  white-space: nowrap;
  color: #fff;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  #news_set .news_list a .sub_category {
    line-height: 1em;
    font-size: 1.2rem;
    letter-spacing: 0;
    width: 10.4rem;
    height: 2rem;
    border-radius: 0.3rem;
  }
}
@media screen and (max-width: 768px) {
  #news_set .news_list a .sub_category {
    line-height: 1em;
    font-size: 2.4rem;
    letter-spacing: 0;
    width: 20.8rem;
    height: 4rem;
    border-radius: 0.4rem;
  }
}

#news_set .news_list a .sub_category.sub_category_color1 {
  background: #94732b;
}

#news_set .news_list a .sub_category.sub_category_color2 {
  background: #447969;
}

#news_set .news_list a .sub_category.sub_category_color3 {
  background: #b64d11;
}

#news_set .news_list a .sub_category.sub_category_color4 {
  background: #8f4881;
}

#news_set .news_list a .sub_category.sub_category_color5 {
  background: #008cb4;
}

#news_set .news_list a .sub_category.sub_category_color6 {
  background: #849493;
}

#news_set .news_list a .date {
  position: relative;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  white-space: nowrap;
  color: #8b8b8b;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  #news_set .news_list a .date {
    line-height: 2.267em;
    font-size: 1.2rem;
    letter-spacing: 0;
    width: 11rem;
    height: 2rem;
  }
}
@media screen and (max-width: 768px) {
  #news_set .news_list a .date {
    line-height: 1em;
    font-size: 2.4rem;
    letter-spacing: 0;
    width: 20rem;
    height: 3.8rem;
  }
}

@media screen and (max-width: 768px) {
  #news_set #ir_news_set .news_list a .date {
    width: 100%;
  }
}

#news_set .news_list a div {
  position: relative;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  #news_set .news_list a div {
    width: 44rem;
    gap: 0.5rem;
  }
}
@media screen and (max-width: 768px) {
  #news_set .news_list a div {
    width: 100%;
    gap: 1rem;
    padding-top: 2rem;
  }
}

@media screen and (min-width: 769px) {
  #news_set #ir_news_set .news_list a div {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  #news_set #ir_news_set .news_list a div {
    width: 100%;
  }
}

#news_set .news_list a .news_ttl {
  position: relative;
  overflow: hidden;
  display: inline-block;
  color: #333333;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  #news_set .news_list a .news_ttl {
    line-height: 1.7em;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 768px) {
  #news_set .news_list a .news_ttl {
    width: 100%;
    line-height: 1.7em;
    font-size: 2.8rem;
    letter-spacing: 0.05em;
    padding-top: 2rem;
  }
}

@media screen and (min-width: 769px) {
  #news_set .news_list a.pdf .news_ttl,
  #news_set .news_list a.window .news_ttl {
    -webkit-transform: translateY(-0.3rem);
            transform: translateY(-0.3rem);
  }
}
@media screen and (max-width: 768px) {
  #news_set .news_list a.pdf .news_ttl,
  #news_set .news_list a.window .news_ttl {
    -webkit-transform: translateY(-0.3rem);
            transform: translateY(-0.3rem);
  }
}

#news_set .news_list a.pdf .news_ttl::after,
#important a.pdf::after {
  content: "";
  -webkit-transition: ease-out 0.2s all;
  transition: ease-out 0.2s all;
  position: relative;
  display: inline-block;
}
@media screen and (min-width: 769px) {
  #news_set .news_list a.pdf .news_ttl::after,
  #important a.pdf::after {
    width: 2.8rem;
    height: 2rem;
    background: url("../common/img/icon_pdf.svg") center center no-repeat;
    background-size: contain;
    -webkit-transform: translateY(0.3rem);
            transform: translateY(0.3rem);
    margin-left: 0.5rem;
  }
}
@media screen and (max-width: 768px) {
  #news_set .news_list a.pdf .news_ttl::after,
  #important a.pdf::after {
    width: 4.6rem;
    height: 3.4rem;
    background: url("../common/img/icon_pdf.svg") center center no-repeat;
    background-size: contain;
    -webkit-transform: translateY(0.3rem);
            transform: translateY(0.3rem);
    margin-left: 0.5rem;
  }
}

#news_set .news_list a.window .news_ttl::after,
#important a.window::after {
  content: "";
  -webkit-transition: ease-out 0.2s all;
  transition: ease-out 0.2s all;
  position: relative;
  display: inline-block;
}
@media screen and (min-width: 769px) {
  #news_set .news_list a.window .news_ttl::after,
  #important a.window::after {
    width: 1.6rem;
    height: 2rem;
    background: url(../common/img/icon_window_k.svg) center center no-repeat;
    background-size: contain;
    -webkit-transform: translateY(0.3rem);
            transform: translateY(0.3rem);
    margin-left: 1rem;
  }
}
@media screen and (max-width: 768px) {
  #news_set .news_list a.window .news_ttl::after,
  #important a.window::after {
    width: 2.2rem;
    height: 3.4rem;
    background: url(../common/img/icon_window_k.svg) center center no-repeat;
    background-size: contain;
    -webkit-transform: translateY(0.3rem);
            transform: translateY(0.3rem);
    margin-left: 1rem;
  }
}

#news_set .news_list a p {
  -webkit-transition: ease-out 0.6s all;
  transition: ease-out 0.6s all;
}

@media screen and (min-width: 769px) {
  #news_set .news_list a:hover p {
    opacity: 0.6;
  }
}

#news_set .news_btn {
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 769px) {
  #news_set .news_btn {
    width: 100%;
    padding: 4rem 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
@media screen and (max-width: 768px) {
  #news_set .news_btn {
    width: 100%;
    width: 100%;
    padding: 4rem 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}

#news_set .news_btn a {
  position: relative;
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #0068b2;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  #news_set .news_btn a {
    line-height: 1em;
    font-size: 1.6rem;
    letter-spacing: 0em;
    border-radius: 3.4rem;
    width: 25.5rem;
    height: 6rem;
    padding-right: 3rem;
  }
}
@media screen and (max-width: 768px) {
  #news_set .news_btn a {
    line-height: 1em;
    font-size: 2.8rem;
    letter-spacing: 0.05em;
    letter-spacing: 0em;
    border-radius: 5rem;
    width: 40rem;
    height: 10.5rem;
    padding-right: 5rem;
  }
}

/*
#news_set #news_box_prerelease .news_btn a{
    color: $category_color1;
}
#news_set #news_box_ir .news_btn a{
    color: $category_color2;
}
*/
#news_set .news_btn a .arrow {
  position: absolute;
  display: block;
  background: rgb(16, 59, 110);
  background: -webkit-gradient(linear, left top, right top, from(rgb(16, 59, 110)), to(rgb(1, 132, 210)));
  background: linear-gradient(90deg, rgb(16, 59, 110) 0%, rgb(1, 132, 210) 100%);
  border-radius: 50%;
}
@media screen and (min-width: 769px) {
  #news_set .news_btn a .arrow {
    top: 1.5rem;
    right: 1.5rem;
    width: 3rem;
    height: 3rem;
  }
}
@media screen and (max-width: 768px) {
  #news_set .news_btn a .arrow {
    top: 3.2rem;
    right: 3rem;
    width: 4.5rem;
    height: 4.5rem;
  }
}

#news_set .news_btn a .arrow::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: ease-out 0.2s all;
  transition: ease-out 0.2s all;
}
@media screen and (min-width: 769px) {
  #news_set .news_btn a .arrow::before {
    background: url(../common/img/icon_arrow_w.svg) center center no-repeat;
    background-size: 0.8rem auto;
    -webkit-transform: translateX(0.1rem);
            transform: translateX(0.1rem);
  }
}
@media screen and (max-width: 768px) {
  #news_set .news_btn a .arrow::before {
    background: url(../common/img/icon_arrow_w.svg) center center no-repeat;
    background-size: 1.2rem auto;
    -webkit-transform: translateX(0.2rem);
            transform: translateX(0.2rem);
  }
}

#news_note {
  position: relative;
  text-align: center;
}
@media screen and (min-width: 769px) {
  #news_note {
    padding-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  #news_note {
    padding-top: 6rem;
  }
}

#news_note a {
  position: relative;
  color: #0068b2;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  #news_note a {
    line-height: 1em;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
    text-decoration: underline;
  }
}
@media screen and (max-width: 768px) {
  #news_note a {
    line-height: 1em;
    font-size: 2.8rem;
    letter-spacing: 0.05em;
    text-decoration: underline;
  }
}

/*
#news_set #news_box_prerelease .news_btn a .arrow::before{
    @include mq(pc) {
	background:url("../common/img/icon_arrow_category_color1.svg") center center no-repeat;
	background-size:divceil(18, 10, rem) auto;
    }
    @include mq(sp) {
	background:url("../common/img/icon_arrow_category_color1.svg") center center no-repeat;
	background-size:divceil(27, 10, rem) auto;
    }
}
#news_set #news_box_ir .news_btn a .arrow::before{
    @include mq(pc) {
	background:url("../common/img/icon_arrow_category_color2.svg") center center no-repeat;
	background-size:divceil(18, 10, rem) auto;
    }
    @include mq(sp) {
	background:url("../common/img/icon_arrow_category_color2.svg") center center no-repeat;
	background-size:divceil(27, 10, rem) auto;
    }
}
#news_set .news_btn a:hover .arrow::before{
    @include mq(pc) {
    transform: translateX(divceil(5, 10, rem));
    }
}
*/
#news_set .news_btn a p {
  -webkit-transition: ease-out 0.6s all;
  transition: ease-out 0.6s all;
}

@media screen and (min-width: 769px) {
  #news_set .news_btn a:hover p {
    opacity: 0.6;
  }
}

#pickup {
  position: relative;
  width: 100%;
  background: #f1f1f1;
  overflow: hidden;
}
#pickup .inner {
  position: relative;
  -webkit-transition: ease-in-out 0.9s all;
  transition: ease-in-out 0.9s all;
}
@media screen and (min-width: 769px) {
  #pickup .inner {
    padding: 5rem 0;
    width: 100%;
    max-width: 120rem;
    margin: 0 auto;
  }
}
@media screen and (max-width: 768px) {
  #pickup .inner {
    padding: 6rem 0;
    max-width: 67rem;
    margin: 0 auto;
  }
}

#pickup.active .inner {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

#pickup .slide_main {
  position: relative;
  width: 100%;
}
@media screen and (min-width: 769px) {
  #pickup .slide_main {
    height: 38rem;
  }
}
@media screen and (max-width: 768px) {
  #pickup .slide_main {
    height: 66rem;
  }
}

#projects {
  position: relative;
  width: 100%;
  background: #fff;
  overflow: hidden;
  -webkit-transition: ease-in-out 0.9s all;
  transition: ease-in-out 0.9s all;
  transition: ease-in-out 0.9s all;
}
#projects.active {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

#projects .inner {
  position: relative;
}
@media screen and (min-width: 769px) {
  #projects .inner {
    padding: 5rem 0;
    width: 100%;
    max-width: 120rem;
    margin: 0 auto;
  }
}
@media screen and (max-width: 768px) {
  #projects .inner {
    padding: 6rem 0;
    max-width: 67rem;
    margin: 0 auto;
  }
}

#projects .slide_main {
  position: relative;
  width: 100%;
}
@media screen and (min-width: 769px) {
  #projects .slide_main {
    height: 52rem;
  }
}
@media screen and (max-width: 768px) {
  #projects .slide_main {
    height: 92rem;
  }
}

.slide_cont .virtuality_box {
  position: relative;
  width: 100%;
  overflow-x: scroll;
  /*
     scroll-snap-type:x mandatory;
     overscroll-behavior-x:contain;
     */
  height: 100%;
  /*cursor:pointer;*/
}

/*
.slide_cont .virtuality_box::-webkit-scrollbar-thumb,
.slide_cont .virtuality_box .virtuality_inner::-webkit-scrollbar-thumb{
    cursor:pointer !important;
}
*/
.slide_cont .virtuality_box .virtuality_inner {
  position: relative;
  height: 100%;
  cursor: default;
}

@media screen and (min-width: 769px) {
  .slide_cont .virtuality_box {
    scrollbar-width: thin;
    scrollbar-height: thin;
    scrollbar-color: #0068b2 #DEDDDC;
  }
}
@media screen and (min-width: 769px) {
  .slide_cont .virtuality_box {
    scrollbar-width: auto;
    scrollbar-height: auto;
    scrollbar-color: #0068b2 #DEDDDC;
  }
}

@media screen and (min-width: 769px) {
  .slide_cont .virtuality_box::-webkit-scrollbar {
    height: 0.6rem;
  }
}
@media screen and (max-width: 768px) {
  .slide_cont .virtuality_box::-webkit-scrollbar {
    height: 1.4rem;
  }
}

.slide_cont .virtuality_box::-webkit-scrollbar-track {
  background: #DEDDDC;
}

.slide_cont .virtuality_box::-webkit-scrollbar-thumb {
  background: #0068b2;
}

.slide_cont .slide_bar {
  position: relative;
  width: 100%;
}
@media screen and (min-width: 769px) {
  .slide_cont .slide_bar {
    height: 0.4rem;
  }
}
@media screen and (max-width: 768px) {
  .slide_cont .slide_bar {
    height: 0.6rem;
  }
}

.slide_cont .slide_bar::before {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  left: 0;
  background: #DEDDDC;
}
@media screen and (min-width: 769px) {
  .slide_cont .slide_bar::before {
    top: 0.1rem;
    height: 0.2rem;
  }
}
@media screen and (max-width: 768px) {
  .slide_cont .slide_bar::before {
    top: 0.2rem;
    height: 0.2rem;
  }
}

.slide_cont .slide_bar .bar_inner {
  content: "";
  position: absolute;
  display: block;
  width: 50%;
  left: 0;
  top: 0;
  background: #0068b2;
  top: 0;
  height: 100%;
  cursor: pointer;
}

.slide_main .entity_box {
  position: absolute;
  top: 0;
  left: 0;
  width: auto;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
@media screen and (min-width: 769px) {
  .slide_main .entity_box {
    height: calc(100% - 6rem);
    pointer-events: none;
    -webkit-transition: ease-out 0.3s all;
    transition: ease-out 0.3s all;
  }
}
@media screen and (max-width: 768px) {
  .slide_main .entity_box {
    height: calc(100% - 7rem);
    pointer-events: none;
    -webkit-transition: ease-out 0.6s all;
    transition: ease-out 0.6s all;
  }
}

@media screen and (min-width: 769px) {
  #pickup .slide_main .entity_box {
    gap: 4rem;
  }
}
@media screen and (max-width: 768px) {
  #pickup .slide_main .entity_box {
    gap: 6rem;
  }
}

@media screen and (min-width: 769px) {
  #projects .slide_main .entity_box {
    gap: 3rem;
  }
}
@media screen and (max-width: 768px) {
  #projects .slide_main .entity_box {
    gap: 6rem;
  }
}

.slide_cont .virtuality_box .virtuality_inner .entity_box {
  opacity: 0;
}
@media screen and (min-width: 769px) {
  .slide_cont .virtuality_box .virtuality_inner .entity_box {
    pointer-events: auto;
  }
}
@media screen and (max-width: 768px) {
  .slide_cont .virtuality_box .virtuality_inner .entity_box {
    pointer-events: auto;
  }
}

.slide_main .entity_box a {
  position: relative;
  display: block;
  height: 100%;
  overflow: hidden;
  -webkit-transition: ease-out 0.6s all;
  transition: ease-out 0.6s all;
}

/*
.slide_main .entity_box a:hover{
    @include mq(pc) {
    opacity: 0.6;
    }
}
*/
@media screen and (min-width: 769px) {
  #pickup .slide_main .entity_box a {
    width: 27rem;
  }
}
@media screen and (max-width: 768px) {
  #pickup .slide_main .entity_box a {
    width: 50rem;
  }
}

@media screen and (min-width: 769px) {
  #projects .slide_main .entity_box a {
    width: 38rem;
  }
}
@media screen and (max-width: 768px) {
  #projects .slide_main .entity_box a {
    width: 45rem;
  }
}

#pickup .slide_main .entity_box a figure {
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 769px) {
  #pickup .slide_main .entity_box a figure {
    width: 27rem;
    height: 18rem;
  }
}
@media screen and (max-width: 768px) {
  #pickup .slide_main .entity_box a figure {
    width: 50rem;
    height: 33rem;
  }
}

#projects .slide_main .entity_box a figure {
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 769px) {
  #projects .slide_main .entity_box a figure {
    width: 38rem;
    height: 23rem;
  }
}
@media screen and (max-width: 768px) {
  #projects .slide_main .entity_box a figure {
    width: 45rem;
    height: 28rem;
  }
}

.slide_main .entity_box a figure img {
  position: relative;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: ease-in-out 0.6s all;
  transition: ease-in-out 0.6s all;
}

@media screen and (min-width: 769px) {
  .slide_main .entity_box a:hover figure img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}

#pickup .slide_main .entity_box a div {
  position: relative;
  width: 100%;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (min-width: 769px) {
  #pickup .slide_main .entity_box a div {
    padding: 2rem 0 1.5rem;
  }
}
@media screen and (max-width: 768px) {
  #pickup .slide_main .entity_box a div {
    padding: 4rem 0 1rem;
  }
}

#pickup .slide_main .entity_box a .category {
  position: relative;
  color: #0068b2;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  #pickup .slide_main .entity_box a .category {
    line-height: 1.5em;
    font-size: 1.2rem;
    letter-spacing: 0.5;
  }
}
@media screen and (max-width: 768px) {
  #pickup .slide_main .entity_box a .category {
    line-height: 1.334em;
    font-size: 2.4rem;
    letter-spacing: 0.5;
  }
}

#pickup .slide_main .entity_box a .date {
  position: relative;
  white-space: nowrap;
  color: #8b8b8b;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  #pickup .slide_main .entity_box a .date {
    line-height: 1.5em;
    font-size: 1.2rem;
    letter-spacing: 0.5;
  }
}
@media screen and (max-width: 768px) {
  #pickup .slide_main .entity_box a .date {
    line-height: 1.334em;
    font-size: 2.4rem;
    letter-spacing: 0.5;
  }
}

#pickup .slide_main .entity_box a .news_ttl {
  position: relative;
  overflow: hidden;
  display: inline-block;
  color: #333333;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  #pickup .slide_main .entity_box a .news_ttl {
    line-height: 1.7em;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 768px) {
  #pickup .slide_main .entity_box a .news_ttl {
    width: 100%;
    line-height: 1.7em;
    font-size: 2.8rem;
    letter-spacing: 0.05em;
    padding-top: 2rem;
  }
}

#projects .slide_main .entity_box a .date {
  position: relative;
  white-space: nowrap;
  color: #8b8b8b;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  #projects .slide_main .entity_box a .date {
    line-height: 1.5em;
    font-size: 1.2rem;
    letter-spacing: 0.5;
    padding: 2rem 0 1rem;
  }
}
@media screen and (max-width: 768px) {
  #projects .slide_main .entity_box a .date {
    line-height: 1.334em;
    font-size: 2.4rem;
    letter-spacing: 0.5;
    padding: 3.5rem 0 2rem;
  }
}

#projects .slide_main .entity_box a .news_ttl {
  position: relative;
  overflow: hidden;
  display: inline-block;
  color: #0068b2;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  #projects .slide_main .entity_box a .news_ttl {
    line-height: 1.7em;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
    height: 9rem;
  }
}
@media screen and (max-width: 768px) {
  #projects .slide_main .entity_box a .news_ttl {
    width: 100%;
    line-height: 1.7em;
    font-size: 2.8rem;
    letter-spacing: 0.05em;
    height: 19rem;
  }
}

#projects .slide_main .entity_box a .name {
  position: relative;
  color: #8b8b8b;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  #projects .slide_main .entity_box a .name {
    line-height: 1.429em;
    font-size: 1.4rem;
    letter-spacing: 0.5;
    height: 9rem;
    margin-top: 1rem;
  }
}
@media screen and (max-width: 768px) {
  #projects .slide_main .entity_box a .name {
    line-height: 1.5em;
    font-size: 2.4rem;
    letter-spacing: 0.5;
    height: 16rem;
    margin-top: 2rem;
  }
}

#projects .slide_main .entity_box a .category {
  position: relative;
  display: block;
  color: #0068b2;
  border-top: #DDDCDB 2px solid;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  #projects .slide_main .entity_box a .category {
    line-height: 1.429em;
    font-size: 1.4rem;
    letter-spacing: 0.5;
    margin-top: 1rem;
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  #projects .slide_main .entity_box a .category {
    line-height: 1.5em;
    font-size: 2.4rem;
    letter-spacing: 0.5;
    margin-top: 2rem;
    padding-top: 3rem;
  }
}

#projects .slide_main .entity_box a .tag {
  position: relative;
  width: 100%;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (min-width: 769px) {
  #projects .slide_main .entity_box a .tag {
    padding: 2rem 0 0;
    gap: 0.5rem;
  }
}
@media screen and (max-width: 768px) {
  #projects .slide_main .entity_box a .tag {
    padding: 4rem 0 0;
    gap: 1rem;
  }
}

#projects .slide_main .entity_box a .tag p {
  position: relative;
  display: inline-block;
  overflow: hidden;
  color: #0068b2;
  background: #e6f1f7;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  #projects .slide_main .entity_box a .tag p {
    line-height: 1em;
    font-size: 1.1rem;
    letter-spacing: 0;
    padding: 0.5rem;
  }
}
@media screen and (max-width: 768px) {
  #projects .slide_main .entity_box a .tag p {
    line-height: 1em;
    font-size: 2.4rem;
    letter-spacing: 0;
    padding: 1rem 1.5rem;
  }
}

.slide_main .prev,
.slide_main .next {
  position: absolute;
  background: rgba(0, 0, 0, 0.8);
  border-radius: 50%;
}
@media screen and (min-width: 769px) {
  .slide_main .prev,
  .slide_main .next {
    display: block;
    width: 6rem;
    height: 6rem;
    z-index: 20;
    cursor: pointer;
  }
}
@media screen and (max-width: 768px) {
  .slide_main .prev,
  .slide_main .next {
    display: none;
    width: 6rem;
    height: 6rem;
  }
}

@media screen and (min-width: 769px) {
  #pickup .slide_main .prev,
  #pickup .slide_main .next {
    top: 6rem;
  }
}

@media screen and (min-width: 769px) {
  #projects .slide_main .prev,
  #projects .slide_main .next {
    top: 8.5rem;
  }
}

@media screen and (min-width: 769px) {
  .slide_main .prev {
    left: -3rem;
  }
}

@media screen and (min-width: 769px) {
  .slide_main .next {
    right: -3rem;
  }
}

@media screen and (max-width: 1280px) and (min-width: 769px) {
  .slide_main .prev {
    left: -1rem;
  }
}
@media screen and (max-width: 1280px) and (min-width: 769px) {
  .slide_main .next {
    right: -1rem;
  }
}
@media screen and (min-width: 769px) {
  .slide_main .prev::before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transition: ease-out 0.2s all;
    transition: ease-out 0.2s all;
    background: url("../common/img/icon_slide_arrow.svg") center center no-repeat;
    background-size: 0.9rem auto;
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
  }
}

@media screen and (min-width: 769px) {
  .slide_main .prev:hover::before,
  .slide_main .next:hover::before {
    scale: 1.3;
  }
}

@media screen and (min-width: 769px) {
  .slide_main .next::before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transition: ease-out 0.2s all;
    transition: ease-out 0.2s all;
    background: url("../common/img/icon_slide_arrow.svg") center center no-repeat;
    background-size: 0.9rem auto;
  }
}

#aboutus {
  position: relative;
  /*background: $base_color1;*/
}
#aboutus .inner {
  position: relative;
  overflow: hidden;
  -webkit-transition: ease-in-out 0.9s all;
  transition: ease-in-out 0.9s all;
}
@media screen and (min-width: 769px) {
  #aboutus .inner {
    padding: 5rem 0;
    width: 100%;
    max-width: 120rem;
    margin: 0 auto;
  }
}
@media screen and (max-width: 768px) {
  #aboutus .inner {
    padding: 6rem 0;
    max-width: 67rem;
    margin: 0 auto;
  }
}

#aboutus.active .inner {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

#aboutus_cont {
  position: relative;
}
@media screen and (min-width: 769px) {
  #aboutus_cont {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    width: 100%;
  }
}
#aboutus_cont #rita {
  position: relative;
}
@media screen and (min-width: 769px) {
  #aboutus_cont #rita {
    width: 31.6%;
    max-width: 38rem;
    padding-left: 4.5rem;
  }
}
@media screen and (max-width: 768px) {
  #aboutus_cont #rita {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 4rem;
  }
}

#aboutus_cont #rita div {
  position: relative;
  color: #0068b2;
}
@media screen and (min-width: 769px) {
  #aboutus_cont #rita div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  #aboutus_cont #rita div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 2rem;
  }
}

#aboutus_cont #rita div p {
  position: relative;
  font-family: "Noto Serif TC", serif;
  font-weight: 500;
}
@media screen and (min-width: 769px) {
  #aboutus_cont #rita div p {
    line-height: 1em;
    font-size: 3rem;
    letter-spacing: 0em;
  }
}
@media screen and (max-width: 768px) {
  #aboutus_cont #rita div p {
    line-height: 1em;
    font-size: 5rem;
    letter-spacing: 0em;
  }
}

#aboutus_cont #rita div span {
  position: relative;
  display: inline-block;
  font-weight: 500;
}
@media screen and (min-width: 769px) {
  #aboutus_cont #rita div span {
    line-height: 1em;
    font-size: 2rem;
    letter-spacing: 0em;
  }
}
@media screen and (max-width: 768px) {
  #aboutus_cont #rita div span {
    line-height: 1em;
    font-size: 3.3rem;
    letter-spacing: 0em;
  }
}

#aboutus_cont #rita figure {
  position: relative;
}
@media screen and (min-width: 769px) {
  #aboutus_cont #rita figure {
    width: 70%;
    max-width: 26.6rem;
    margin-top: 3.8rem;
  }
}
@media screen and (max-width: 768px) {
  #aboutus_cont #rita figure {
    width: 40.2rem;
  }
}

#aboutus_cont #message {
  position: relative;
}
@media screen and (min-width: 769px) {
  #aboutus_cont #message {
    width: 79rem;
  }
}
#aboutus_cont #message h3 {
  position: relative;
  font-weight: 500;
}
@media screen and (min-width: 769px) {
  #aboutus_cont #message h3 {
    line-height: 1.5em;
    font-size: 2.2rem;
    letter-spacing: 0.05em;
    padding: 0 0 2rem;
  }
}
@media screen and (max-width: 768px) {
  #aboutus_cont #message h3 {
    line-height: 1.5em;
    font-size: 4rem;
    letter-spacing: 0.05em;
    padding: 4rem 0 2rem;
  }
}

#aboutus_cont #message > p {
  position: relative;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  #aboutus_cont #message > p {
    line-height: 1.7em;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 768px) {
  #aboutus_cont #message > p {
    line-height: 1.7em;
    font-size: 2.8rem;
    letter-spacing: 0.05em;
  }
}

#aboutus_cont .aboutus_btn {
  position: relative;
}
@media screen and (min-width: 769px) {
  #aboutus_cont .aboutus_btn {
    width: 79rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  #aboutus_cont .aboutus_btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 2rem;
    width: 67rem;
    margin-top: 6rem;
  }
}

#aboutus_cont .aboutus_btn a {
  position: relative;
  display: block;
  background: #0068b2;
  margin: 0;
  -webkit-transition: ease-out 0.6s all;
  transition: ease-out 0.6s all;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (min-width: 769px) {
  #aboutus_cont .aboutus_btn a {
    border: #0068b2 0.2rem solid;
    width: 38rem;
    height: 8rem;
    padding: 0 2rem 0 3rem;
    border-radius: 0.6rem;
  }
}
@media screen and (max-width: 768px) {
  #aboutus_cont .aboutus_btn a {
    border: #0068b2 0.4rem solid;
    width: 67rem;
    height: 14rem;
    padding: 0 4rem;
    border-radius: 0.6rem;
  }
}

#aboutus_cont .aboutus_btn a p {
  position: relative;
  -webkit-transition: ease-out 0.6s all;
  transition: ease-out 0.6s all;
  font-weight: 500;
  color: #fff;
}
@media screen and (min-width: 769px) {
  #aboutus_cont .aboutus_btn a p {
    line-height: 1em;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 768px) {
  #aboutus_cont .aboutus_btn a p {
    line-height: 1em;
    font-size: 3.2rem;
    letter-spacing: 0.05em;
  }
}

@media screen and (min-width: 769px) {
  #aboutus_cont .aboutus_btn a:hover {
    background: #fff;
  }
}

@media screen and (min-width: 769px) {
  #aboutus_cont .aboutus_btn a:hover p {
    color: #0068b2;
  }
}

#aboutus_cont .aboutus_btn a .arrow {
  position: relative;
  display: block;
  background: rgb(16, 59, 110);
  background: -webkit-gradient(linear, left top, right top, from(rgb(16, 59, 110)), to(rgb(1, 132, 210)));
  background: linear-gradient(90deg, rgb(16, 59, 110) 0%, rgb(1, 132, 210) 100%);
  border-radius: 50%;
}
@media screen and (min-width: 769px) {
  #aboutus_cont .aboutus_btn a .arrow {
    width: 3rem;
    height: 3rem;
  }
}
@media screen and (max-width: 768px) {
  #aboutus_cont .aboutus_btn a .arrow {
    width: 4.5rem;
    height: 4.5rem;
  }
}

#aboutus_cont .aboutus_btn a .arrow::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: ease-out 0.2s all;
  transition: ease-out 0.2s all;
}
@media screen and (min-width: 769px) {
  #aboutus_cont .aboutus_btn a .arrow::before {
    background: url(../common/img/icon_arrow_w.svg) center center no-repeat;
    background-size: 0.64rem auto;
    -webkit-transform: translateX(0.1rem);
            transform: translateX(0.1rem);
  }
}
@media screen and (max-width: 768px) {
  #aboutus_cont .aboutus_btn a .arrow::before {
    background: url(../common/img/icon_arrow_w.svg) center center no-repeat;
    background-size: 0.96rem auto;
    -webkit-transform: translateX(0.1rem);
            transform: translateX(0.1rem);
  }
}

#business {
  position: relative;
  background: #f1f1f1;
}
#business .inner {
  position: relative;
  overflow: hidden;
  -webkit-transition: ease-in-out 0.9s all;
  transition: ease-in-out 0.9s all;
}
@media screen and (min-width: 769px) {
  #business .inner {
    padding: 5rem 0;
    width: 100%;
    max-width: 120rem;
    margin: 0 auto;
  }
}
@media screen and (max-width: 768px) {
  #business .inner {
    padding: 6rem 0;
    max-width: 67rem;
    margin: 0 auto;
  }
}

#business.active .inner {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

#business_cont {
  position: relative;
}
@media screen and (min-width: 769px) {
  #business_cont {
    width: 100%;
    max-width: 120rem;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media screen and (max-width: 768px) {
  #business_cont {
    width: 67rem;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 10rem;
  }
}

#business_cont a {
  position: relative;
  display: block;
  overflow: hidden;
}
@media screen and (min-width: 769px) {
  #business_cont a {
    width: 31.6%;
    max-width: 38rem;
  }
}
@media screen and (max-width: 768px) {
  #business_cont a {
    width: 67rem;
  }
}

#business_cont a figure {
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 769px) {
  #business_cont a figure {
    width: 100%;
    height: 28.5rem;
    border-radius: 0.6rem;
  }
}
@media screen and (max-width: 768px) {
  #business_cont a figure {
    width: 67rem;
    height: 41.4rem;
    border-radius: 0.6rem;
  }
}

#business_cont a figure img {
  position: relative;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  -webkit-transition: ease-in-out 0.6s all;
  transition: ease-in-out 0.6s all;
}

@media screen and (min-width: 769px) {
  #business_cont a:hover figure img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}

#business_cont a h3 {
  position: relative;
  -webkit-transition: ease-out 0.6s all;
  transition: ease-out 0.6s all;
  font-weight: 500;
}
@media screen and (min-width: 769px) {
  #business_cont a h3 {
    line-height: 1.5em;
    font-size: 2rem;
    letter-spacing: 0.05em;
    padding: 2rem 0 1rem;
  }
}
@media screen and (max-width: 768px) {
  #business_cont a h3 {
    line-height: 1.5em;
    font-size: 3.6rem;
    letter-spacing: 0.05em;
    padding: 3rem 0 1.5rem;
  }
}

#business_cont a p {
  position: relative;
  -webkit-transition: ease-out 0.6s all;
  transition: ease-out 0.6s all;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  #business_cont a p {
    line-height: 1.7em;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 768px) {
  #business_cont a p {
    line-height: 1.7em;
    font-size: 3.2rem;
    letter-spacing: 0.05em;
  }
}

@media screen and (min-width: 769px) {
  #business_cont a:hover h3,
  #business_cont a:hover p {
    opacity: 0.6;
  }
}

#btn_set {
  position: relative;
  width: 100%;
  padding: 0;
}
@media screen and (min-width: 769px) {
  #btn_set {
    /*height: divceil(500, 10, rem);*/
    height: 33.3333vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
#btn_set a {
  position: relative;
  display: block;
  z-index: 30;
  -webkit-transition: ease-in-out 0.9s all;
  transition: ease-in-out 0.9s all;
}
@media screen and (min-width: 769px) {
  #btn_set a {
    width: 50%;
    height: 100%;
    overflow: hidden;
  }
}
@media screen and (max-width: 768px) {
  #btn_set a {
    width: 100%;
    height: 40rem;
    overflow: hidden;
  }
}

#btn_set.active a {
  opacity: 1;
  pointer-events: auto;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

#btn_set.active #btn2 {
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}

#btn_set.active #btn3 {
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}

@media screen and (min-width: 769px) {
  #btn_set #btn2 {
    border-left: #fff 1px solid;
  }
}
@media screen and (max-width: 768px) {
  #btn_set #btn2 {
    border-top: #fff 1px solid;
  }
}

@media screen and (min-width: 769px) {
  #btn_set #btn3 {
    border-left: #fff 1px solid;
  }
}
@media screen and (max-width: 768px) {
  #btn_set #btn3 {
    border-top: #fff 1px solid;
  }
}

#btn_set a > div {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  color: #fff;
}
@media screen and (min-width: 769px) {
  #btn_set a > div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: center;
    -webkit-transition: ease-out 0.9s all;
    transition: ease-out 0.9s all;
  }
}
@media screen and (max-width: 768px) {
  #btn_set a > div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: center;
    background: rgba(15, 59, 107, 0.4);
  }
}

#btn_set a > div p {
  position: relative;
  font-weight: 400;
  font-family: "Noto Serif TC", serif;
}
@media screen and (min-width: 769px) {
  #btn_set a > div p {
    line-height: 1em;
    font-size: 2rem;
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 768px) {
  #btn_set a > div p {
    line-height: 1em;
    font-size: 2.4rem;
    letter-spacing: 0.05em;
  }
}

#btn_set a > div h2 {
  position: relative;
  font-weight: 400;
  font-family: "Noto Serif TC", serif;
}
@media screen and (min-width: 769px) {
  #btn_set a > div h2 {
    line-height: 1.5em;
    font-size: 2.88rem;
    letter-spacing: 0.05em;
    margin-top: 2.5rem;
  }
}
@media screen and (max-width: 768px) {
  #btn_set a > div h2 {
    line-height: 1.5em;
    font-size: 3.6rem;
    letter-spacing: 0.05em;
    margin-top: 3rem;
  }
}

#btn_set a figure {
  position: relative;
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 769px) {
  #btn_set a figure {
    opacity: 0 !important;
  }
}

#btn_set a figure img {
  position: relative;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
}

@media screen and (max-width: 768px) {
  #btn_set a:nth-of-type(2) figure img,
  #btn_set a:nth-of-type(3) figure img {
    -o-object-position: center top;
       object-position: center top;
  }
}

@media screen and (min-width: 769px) {
  #btn_set .hover_action {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 20;
    pointer-events: none;
    opacity: 0;
    -webkit-transform: translate(0) !important;
            transform: translate(0) !important;
    -webkit-transition: ease-out 0.9s all;
    transition: ease-out 0.9s all;
  }
}
@media screen and (max-width: 768px) {
  #btn_set .hover_action {
    display: none;
  }
}

@media screen and (min-width: 769px) {
  #btn_set .hover_action div {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 20;
    opacity: 0;
    -webkit-transition: ease-out 0.9s all;
    transition: ease-out 0.9s all;
    -webkit-transform: translate(0) !important;
            transform: translate(0) !important;
  }
}

#btn_set.btn1 .hover_action,
#btn_set.btn2 .hover_action,
#btn_set.btn3 .hover_action {
  -webkit-transition: ease 0s all;
  transition: ease 0s all;
  opacity: 1;
  /*background:rgba(255,255,255,.2);*/
  -webkit-transform: translate(0) !important;
          transform: translate(0) !important;
}

#btn_set .hover_action .hover1 {
  background: url("../img/index/btn_set1_hover.jpg") center center no-repeat;
  background-size: cover;
}

#btn_set .hover_action .hover2 {
  background: url("../img/index/btn_set2_hover.jpg") center center no-repeat;
  background-size: cover;
}

#btn_set .hover_action .hover3 {
  background: url("../img/index/btn_set3_hover.jpg") center center no-repeat;
  background-size: cover;
}

#btn_set.btn1 .hover_action .hover1,
#btn_set.btn2 .hover_action .hover2,
#btn_set.btn3 .hover_action .hover3 {
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
  opacity: 1;
  z-index: 25 !important;
}

#btn_set.btn1 #btn2 > div,
#btn_set.btn1 #btn3 > div {
  opacity: 0.4;
}

#btn_set.btn2 #btn1 > div,
#btn_set.btn2 #btn3 > div {
  opacity: 0.4;
}

#btn_set.btn3 #btn1 > div,
#btn_set.btn3 #btn2 > div {
  opacity: 0.4;
}

#btn_set.btn1 #btn2 span,
#btn_set.btn1 #btn3 span {
  opacity: 0.4;
}

#btn_set.btn2 #btn1 span,
#btn_set.btn2 #btn3 span {
  opacity: 0.4;
}

#btn_set.btn3 #btn1 span,
#btn_set.btn3 #btn2 span {
  opacity: 0.4;
}

@media screen and (min-width: 769px) {
  #btn_set .hover_action .cover {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(255, 255, 255, 0.5);
  }
}
@media screen and (max-width: 768px) {
  #btn_set .hover_action .cover {
    display: none;
  }
}

@media screen and (min-width: 769px) {
  #btn_set .base {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media screen and (max-width: 768px) {
  #btn_set .base {
    display: none;
  }
}

#btn_set .base div {
  position: relative;
  display: block;
  z-index: 20;
  width: 50%;
  height: 100%;
  overflow: hidden;
  -webkit-transition: ease-in-out 0.9s all;
  transition: ease-in-out 0.9s all;
}

#btn_set .base div::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(15, 59, 107, 0.4);
  z-index: 20;
}

#btn_set.active .base div {
  opacity: 1;
  pointer-events: auto;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

#btn_set .base .base1 {
  background: url("../img/index/btn_set1.jpg") center center no-repeat;
  background-size: cover;
}

#btn_set .base .base2 {
  background: url("../img/index/btn_set2.jpg") center center no-repeat;
  background-size: cover;
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}

#btn_set .base .base3 {
  background: url("../img/index/btn_set3.jpg") center center no-repeat;
  background-size: cover;
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}

#kv .scroll {
  position: absolute;
  overflow: hidden;
}
@media screen and (min-width: 769px) {
  #kv .scroll {
    bottom: 4rem;
    right: 3rem;
    width: 1.1rem;
    height: 11rem;
    z-index: 100;
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  #kv .scroll {
    bottom: 12.7rem;
    right: 3rem;
    width: 1.7rem;
    height: 20rem;
    z-index: 100;
    display: block !important;
  }
}

#kv a.bar {
  position: absolute;
  bottom: 0;
  right: 0;
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  z-index: 10;
  cursor: pointer;
}

#kv a.bar p {
  position: absolute;
  display: block;
  overflow: hidden;
}
@media screen and (min-width: 769px) {
  #kv a.bar p {
    bottom: 0;
    left: 0.5rem;
    width: 1px;
    height: 4rem;
  }
}
@media screen and (max-width: 768px) {
  #kv a.bar p {
    bottom: 0;
    left: 0.8rem;
    width: 1px;
    height: 8rem;
  }
}

#kv a.bar p span {
  position: absolute;
  display: block;
  top: -150%;
  left: 0;
  width: 1px;
  height: 150%;
  background: #fff;
  z-index: 11;
  -webkit-animation: bar_animation 2.8s ease-out infinite;
          animation: bar_animation 2.8s ease-out infinite;
}

@-webkit-keyframes bar_animation {
  0% {
    top: -150%;
  }
  10% {
    top: -150%;
  }
  40% {
    top: 0;
  }
  60% {
    top: 0;
  }
  90% {
    top: 150%;
  }
  100% {
    top: 150%;
  }
}

@keyframes bar_animation {
  0% {
    top: -150%;
  }
  10% {
    top: -150%;
  }
  40% {
    top: 0;
  }
  60% {
    top: 0;
  }
  90% {
    top: 150%;
  }
  100% {
    top: 150%;
  }
}
#kv {
  position: relative;
  width: 100%;
  overflow: hidden;
  background: #000;
}
@media screen and (min-width: 769px) {
  #kv {
    height: 77rem;
  }
}
@media screen and (max-width: 768px) {
  #kv {
    height: calc(100svh - 16vw);
  }
}

#kv .kv_img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

#kv .kv_img img {
  position: relative;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

#kv #kv_1 img,
#kv #kv_7 img {
  position: relative;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 100%;
     object-position: 50% 100%;
}

#kv_message {
  position: absolute;
  overflow: hidden;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (min-width: 769px) {
  #kv_message {
    padding-top: 20rem;
  }
}
@media screen and (max-width: 768px) {
  #kv_message {
    padding-top: calc(41svh - 8vw - 11.65rem);
  }
}
#kv_message h2 {
  letter-spacing: 0.12em;
  font-family: "Noto Serif TC", serif;
  font-weight: 600;
  text-align: center;
}
@media screen and (min-width: 769px) {
  #kv_message h2 {
    line-height: 1.7em;
    font-size: 5rem;
  }
}
@media screen and (max-width: 768px) {
  #kv_message h2 {
    line-height: 1.7em;
    font-size: 4.5rem;
  }
}

#kv_logo {
  position: absolute;
  overflow: hidden;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (min-width: 769px) {
  #kv_logo {
    padding-top: 31.5rem;
  }
}
@media screen and (max-width: 768px) {
  #kv_logo {
    padding-top: calc(41svh - 8vw);
  }
}

#kv_logo p {
  position: relative;
}
@media screen and (min-width: 769px) {
  #kv_logo p {
    width: 45.8rem;
  }
}
@media screen and (max-width: 768px) {
  #kv_logo p {
    width: 41.2rem;
  }
}

#kv_read {
  position: absolute;
  overflow: hidden;
  top: 0;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
@media screen and (min-width: 769px) {
  #kv_read {
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    padding: 26rem 4rem 0;
    max-width: 120rem;
  }
}
@media screen and (max-width: 768px) {
  #kv_read {
    left: 0;
    padding-top: calc(17.7svh - 8vw);
    padding-left: 15.5vw;
  }
}

#kv_read h1 {
  position: relative;
  font-family: "Noto Serif TC", serif;
  font-weight: 600;
}
@media screen and (min-width: 769px) {
  #kv_read h1 {
    line-height: 2em;
    font-size: 4rem;
    letter-spacing: 0.12em;
  }
}
@media screen and (max-width: 768px) {
  #kv_read h1 {
    line-height: 1.819em;
    font-size: 4.4rem;
    letter-spacing: 0.12em;
  }
}

#kv_rita {
  position: absolute;
  overflow: hidden;
  top: 0;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
@media screen and (min-width: 769px) {
  #kv_rita {
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    max-width: 124rem;
  }
}
@media screen and (max-width: 768px) {
  #kv_rita {
    left: 0;
  }
}

#kv_rita p {
  position: absolute;
}
@media screen and (min-width: 769px) {
  #kv_rita p {
    top: 54%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    right: -5rem;
    width: 62.4rem;
  }
}
@media screen and (max-width: 768px) {
  #kv_rita p {
    bottom: -11rem;
    right: -15rem;
    width: 68rem;
  }
}

#kv .kv_img {
  background: #fff;
  opacity: 0;
}

#kv .kv_img.start {
  -webkit-transition: all 3600ms cubic-bezier(0.425, 0.775, 0.03, 1.005);
  transition: all 3600ms cubic-bezier(0.425, 0.775, 0.03, 1.005);
  /* custom */
  -webkit-transition-timing-function: cubic-bezier(0.425, 0.775, 0.03, 1.005);
          transition-timing-function: cubic-bezier(0.425, 0.775, 0.03, 1.005);
  /* custom */
  opacity: 1;
}

#kv .kv_img img {
  opacity: 0;
}

#kv .kv_img.start img {
  -webkit-transition: all 3600ms cubic-bezier(0.425, 0.775, 0.03, 1.005);
  transition: all 3600ms cubic-bezier(0.425, 0.775, 0.03, 1.005);
  -webkit-transition-timing-function: cubic-bezier(0.425, 0.775, 0.03, 1.005);
          transition-timing-function: cubic-bezier(0.425, 0.775, 0.03, 1.005);
  opacity: 1;
  -webkit-transition-delay: 400ms;
          transition-delay: 400ms;
}

#kv #kv_7.start img {
  -webkit-transition: all 4800ms cubic-bezier(0.425, 0.775, 0.03, 1.005);
  transition: all 4800ms cubic-bezier(0.425, 0.775, 0.03, 1.005);
  /* custom */
  -webkit-transition-timing-function: cubic-bezier(0.425, 0.775, 0.03, 1.005);
          transition-timing-function: cubic-bezier(0.425, 0.775, 0.03, 1.005);
  /* custom */
  opacity: 1;
  -webkit-transition-delay: 800ms;
          transition-delay: 800ms;
}

#kv #kv_1,
#kv #kv_1 img {
  opacity: 1;
}

#kv_logo,
#kv_read h1 {
  -webkit-transform: translateY(2rem);
          transform: translateY(2rem);
  opacity: 0;
}

#kv_message {
  opacity: 0;
}

#kv_logo.start {
  -webkit-transition: all 2400ms cubic-bezier(0.425, 0.775, 0.03, 1.005);
  transition: all 2400ms cubic-bezier(0.425, 0.775, 0.03, 1.005);
  -webkit-transition-timing-function: cubic-bezier(0.425, 0.775, 0.03, 1.005);
          transition-timing-function: cubic-bezier(0.425, 0.775, 0.03, 1.005);
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}

#kv_message.start {
  -webkit-transition: all 2400ms cubic-bezier(0.425, 0.775, 0.03, 1.005);
  transition: all 2400ms cubic-bezier(0.425, 0.775, 0.03, 1.005);
  -webkit-transition-timing-function: cubic-bezier(0.425, 0.775, 0.03, 1.005);
          transition-timing-function: cubic-bezier(0.425, 0.775, 0.03, 1.005);
  opacity: 1;
}

#kv_read.start h1 {
  /*
  transition: all 2800ms cubic-bezier(0.425, 0.775, 0.030, 1.005);
  transition-timing-function: cubic-bezier(0.425, 0.775, 0.030, 1.005);
  */
  -webkit-transition: all 4700ms cubic-bezier(0.425, 0.775, 0.03, 1.005);
  transition: all 4700ms cubic-bezier(0.425, 0.775, 0.03, 1.005);
  -webkit-transition-timing-function: cubic-bezier(0.425, 0.775, 0.03, 1.005);
          transition-timing-function: cubic-bezier(0.425, 0.775, 0.03, 1.005);
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}

#kv_rita p {
  opacity: 0;
}

#kv_rita.start p {
  -webkit-transition: all 4200ms cubic-bezier(0.425, 0.775, 0.03, 1.005);
  transition: all 4200ms cubic-bezier(0.425, 0.775, 0.03, 1.005);
  /* custom */
  -webkit-transition-timing-function: cubic-bezier(0.425, 0.775, 0.03, 1.005);
          transition-timing-function: cubic-bezier(0.425, 0.775, 0.03, 1.005);
  /* custom */
  opacity: 1;
}

@media screen and (min-width: 769px) {
  #projects .slide_main .entity_box {
    min-width: 407rem;
  }
}
@media screen and (max-width: 768px) {
  #projects .slide_main .entity_box {
    min-width: 504rem;
  }
}

/*important*/
#important {
  position: relative;
}
#important .inner {
  position: relative;
}
@media screen and (min-width: 769px) {
  #important .inner {
    padding: 3rem 0;
    width: 100%;
    max-width: 120rem;
    margin: 0 auto;
  }
}
@media screen and (max-width: 768px) {
  #important .inner {
    padding: 6rem 0;
    max-width: 67rem;
    margin: 0 auto;
  }
}

#important dl {
  position: relative;
  width: 100%;
}
@media screen and (min-width: 769px) {
  #important dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 2rem;
  }
}
@media screen and (max-width: 768px) {
  #important dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2rem;
  }
}

#important dl dt {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  white-space: nowrap;
  border: #333333 1px solid;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  #important dl dt {
    line-height: 1em;
    font-size: 1.2rem;
    letter-spacing: 0;
    width: 10.4rem;
    height: 2rem;
  }
}
@media screen and (max-width: 768px) {
  #important dl dt {
    line-height: 1em;
    font-size: 2.4rem;
    letter-spacing: 0;
    width: 20.8rem;
    height: 4rem;
  }
}

#important dl dd {
  position: relative;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  #important dl dd {
    width: 89.6%;
    max-width: 107.6rem;
    -webkit-transform: translateY(-0.4rem);
            transform: translateY(-0.4rem);
    line-height: 1.7em;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 768px) {
  #important dl dd {
    line-height: 1.7em;
    font-size: 2.8rem;
    letter-spacing: 0.05em;
  }
}

#important dl dd a {
  position: relative;
  display: table;
  text-decoration: underline;
}
@media screen and (min-width: 769px) {
  #important dl dd a {
    margin-top: 1rem;
  }
}
@media screen and (max-width: 768px) {
  #important dl dd a {
    margin-top: 3rem;
  }
}

@media screen and (min-width: 769px) {
  #important dl dd a:hover {
    text-decoration: none;
  }
}

@media screen and (min-width: 769px) {
  #important dl dd a:nth-of-type(1) {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  #important dl dd a:nth-of-type(1) {
    margin-top: 6rem;
  }
}