@charset "UTF-8";
@keyframes lineAnime {
  0% {
    width: 0%; }
  100% {
    width: 100%; } }
@keyframes floatingAnime {
  0% {
    transform: translate(0, 0); }
  50% {
    transform: translate(0, 20%); }
  100% {
    transform: translate(0, 0); } }
/* ------------------------------
テキスト
------------------------------ */
.txt_indent {
  display: block;
  text-indent: -1em;
  margin-left: 1em; }

.txt_ls_0 {
  letter-spacing: 0; }

.txt_ls_005 {
  letter-spacing: 0.05em !important; }

.txt_ls_01 {
  letter-spacing: 0.1em !important; }

.txt_ls_015 {
  letter-spacing: 0.15em; }

.txt_ls_02 {
  letter-spacing: 0.2em; }

.txt_ls_005 {
  letter-spacing: 0.05em; }

.txt_black {
  font-weight: 900; }

.txt_bold {
  font-weight: 700; }

.txt_medium {
  font-weight: 500; }

.txt_normal {
  font-weight: 300; }

.txt_notes_kome {
  font-size: 90%;
  display: block;
  margin-top: 0.8em;
  text-indent: -1em;
  margin-left: 1em; }

.txt_en {
  font-family: "Roboto", serif;
  letter-spacing: 0.02em; }

.txt_center {
  text-align: center !important; }

.txt_right {
  text-align: right !important; }

.txt_link {
  color: #0080CC;
  text-decoration: underline;
  display: inline-block;
  margin: 0 0.2em; }

.black {
  color: #000; }

.green {
  color: #1694A1; }

.white {
  color: #fff; }

.yellow {
  color: #FFDA00; }

.blue {
  color: #0080CC; }

.bg_gray {
  background-color: #f6f6f6; }

.pcbr {
  display: block !important; }

.spbr {
  display: none !important; }

.sp_only {
  display: none; }

.clearfix::after {
  content: "";
  display: block;
  clear: both; }

.fs_10 {
  font-size: 1.0rem; }

.fs_12 {
  font-size: 1.2rem; }

.fs_13 {
  font-size: 1.3rem; }

.fs_14 {
  font-size: 1.4rem; }

.fs_15 {
  font-size: 1.5rem; }

.fs_16 {
  font-size: 1.6rem; }

.fs_17 {
  font-size: 1.7rem; }

.fs_18 {
  font-size: 1.8rem; }

.fs_20 {
  font-size: 2.0rem; }

.fs_22 {
  font-size: 2.2rem; }

.fs_24 {
  font-size: 2.4rem; }

.fs_26 {
  font-size: 2.6rem; }

.fs_28 {
  font-size: 2.8rem; }

.fs_30 {
  font-size: 3.0rem; }

.fs_32 {
  font-size: 3.2rem; }

.fs_34 {
  font-size: 3.4rem; }

.fs_35 {
  font-size: 3.5rem; }

.fs_36 {
  font-size: 3.6rem; }

.fs_37 {
  font-size: 3.7rem; }

.fs_38 {
  font-size: 3.8rem; }

.fs_40 {
  font-size: 4.0rem; }

.fs_42 {
  font-size: 4.2rem; }

.fs_44 {
  font-size: 4.4rem; }

.fs_45 {
  font-size: 4.5rem; }

.fs_50 {
  font-size: 5.0rem; }

.fs_53 {
  font-size: 5.3rem; }

.fs_55 {
  font-size: 5.5rem; }

.fs_59 {
  font-size: 5.9rem; }

.fs_60 {
  font-size: 6.0rem; }

.fs_65 {
  font-size: 6.5rem; }

.fs_68 {
  font-size: 6.8rem; }

.fs_70 {
  font-size: 7.0rem; }

.fs_80 {
  font-size: 8.0rem; }

.fs_85 {
  font-size: 8.5rem; }

.fs_89 {
  font-size: 8.9rem; }

.fs_90 {
  font-size: 9.0rem; }

.fs_100 {
  font-size: 10.0rem; }

.fs_115 {
  font-size: 11.5rem; }

.fs_119 {
  font-size: 11.9rem; }

.fs_140 {
  font-size: 14.0rem; }

.fw_100 {
  font-weight: 100; }

.fw_200 {
  font-weight: 200; }

.fw_300 {
  font-weight: 300; }

.fw_400 {
  font-weight: 400; }

.fw_500 {
  font-weight: 500; }

.fw_700 {
  font-weight: 700; }

.lh_1 {
  line-height: 0.1em !important; }

.lh_2 {
  line-height: 0.2em !important; }

.lh_3 {
  line-height: 0.3em !important; }

.lh_5 {
  line-height: 0.5em !important; }

.lh_10 {
  line-height: 1.0em !important; }

.lh_12 {
  line-height: 1.2em !important; }

.lh_14 {
  line-height: 1.4em !important; }

.lh_15 {
  line-height: 1.5em !important; }

.lh_16 {
  line-height: 1.6em !important; }

.lh_18 {
  line-height: 1.8em !important; }

.lh_20 {
  line-height: 2.0em !important; }

.lh_25 {
  line-height: 2.5em !important; }

.lh_28 {
  line-height: 2.8em !important; }

.lh_30 {
  line-height: 3.0em !important; }

.lh_32 {
  line-height: 3.2em !important; }

.lh_35 {
  line-height: 3.5em !important; }

.lh_40 {
  line-height: 4.0em !important; }

.ttl_1 {
  text-align: center;
  margin-bottom: 40px;
  overflow: hidden; }
  .ttl_1 p {
    font-size: 2.0rem;
    font-weight: 500;
    text-align: center;
    font-family: "Roboto", serif;
    letter-spacing: 0.3em;
    margin-bottom: 5px;
    color: #0080CC; }
    @media screen and (max-width: 600px) {
      .ttl_1 p {
        font-size: 1.6rem; } }
  .ttl_1 h3 {
    font-size: 3.2rem;
    font-weight: 600;
    text-align: center;
    line-height: 1;
    letter-spacing: 0.05em;
    display: inline-block;
    position: relative; }
    @media screen and (max-width: 600px) {
      .ttl_1 h3 {
        font-size: 2.4rem; } }
    .ttl_1 h3:before {
      content: "";
      width: 50vw;
      height: 1px;
      background-color: #999;
      position: absolute;
      left: -15px;
      top: 55%;
      transform: translateX(-100%); }
    .ttl_1 h3:after {
      content: "";
      width: 50vw;
      height: 1px;
      background-color: #999;
      position: absolute;
      right: -15px;
      top: 55%;
      transform: translateX(100%); }

.ttl_2 {
  padding-bottom: 10px;
  margin-bottom: 5px;
  position: relative;
  overflow: hidden;
  width: 100%;
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  padding-top: 30px; }
  @media screen and (max-width: 600px) {
    .ttl_2 {
      flex-direction: column; } }
  .ttl_2 .en {
    font-family: "Roboto", serif;
    font-size: 8.0rem;
    font-weight: 600;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: rgba(255, 218, 0, 0.8);
    color: transparent;
    letter-spacing: 0.02em;
    line-height: 1;
    position: relative; }
    @media screen and (max-width: 600px) {
      .ttl_2 .en {
        font-size: 3.4rem;
        padding-top: 15px;
        -webkit-text-stroke-color: rgba(255, 218, 0, 0.4); } }
    .ttl_2 .en:before {
      content: "";
      height: 4px;
      width: 100vw;
      background-color: #FFDA00;
      position: absolute;
      bottom: 14px;
      left: -15px;
      transform: translateX(-100%); }
      @media screen and (max-width: 600px) {
        .ttl_2 .en:before {
          height: 1px;
          transform: none;
          left: 0;
          width: 100%;
          bottom: 0; } }
  .ttl_2 .jp {
    display: inline-block;
    font-size: 2.8rem;
    font-weight: 600;
    letter-spacing: 0.1em; }
    @media screen and (max-width: 600px) {
      .ttl_2 .jp {
        font-size: 1.8rem;
        padding-top: 5px;
        line-height: 1.4; } }

.list_kome li {
  position: relative;
  padding-left: 1.2em;
  line-height: 1.4;
  margin: 3px 0; }
  .list_kome li:before {
    content: "※";
    position: absolute;
    left: 0;
    top: 0; }

.list_dot li {
  position: relative;
  padding-left: 0.8em;
  line-height: 1.4;
  margin: 3px 0; }
  .list_dot li:before {
    content: "・";
    position: absolute;
    left: 0;
    top: 0; }

.btn_link {
  display: flex;
  align-items: center;
  height: 50px;
  background-color: #fff;
  border: solid 1px #000;
  padding: 0 4em 3px 1.5em;
  position: relative; }
  .btn_link .arrow {
    background-color: #000;
    width: 60px;
    height: 40px;
    position: absolute;
    right: -30px;
    bottom: -15px;
    overflow: hidden;
    transition: 0.4s; }
    @media screen and (max-width: 600px) {
      .btn_link .arrow {
        width: 45px;
        height: 30px;
        right: -12px;
        bottom: -10px; } }
    .btn_link .arrow:before {
      content: "";
      width: 10px;
      height: 10px;
      border-top: solid 1px #fff;
      border-right: solid 1px #fff;
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-60%, -50%) rotate(45deg); }
      @media screen and (max-width: 600px) {
        .btn_link .arrow:before {
          width: 7px;
          height: 7px; } }
  .btn_link:hover .arrow {
    background-color: #666; }
    .btn_link:hover .arrow:before {
      animation: arrowMove 0.3s ease-in-out forwards; }
  .btn_link.blue {
    border-color: #0080CC; }
    .btn_link.blue .arrow {
      background-color: #0080CC; }
  .btn_link.blue2 {
    border-color: #0080CC;
    background-color: #0080CC;
    color: #fff;
    max-width: 640px;
    margin: 50px auto 80px;
    justify-content: center;
    font-weight: 600;
    padding: 10px 3em 12px;
    height: 80px;
    font-size: 2.0rem;
    letter-spacing: 0.03em; }
    @media screen and (max-width: 600px) {
      .btn_link.blue2 {
        font-size: 1.7rem;
        padding: 10px 2em 12px;
        margin: 30px auto 60px; } }

@keyframes arrowMove {
  0% {
    left: 50%; }
  50% {
    left: 120%; }
  51% {
    left: -20%; }
  100% {
    left: 50%; } }
/* ------------------------------
テーブル
------------------------------ */
.table-responsive {
  min-height: .01%;
  overflow-x: auto; }

table.table_1 {
  width: 100%; }
  table.table_1 tr {
    border-bottom: solid 1px #ddd; }
    table.table_1 tr:last-child {
      border-bottom: none; }
    table.table_1 tr th, table.table_1 tr td {
      padding: 13px 3px;
      vertical-align: top; }
    table.table_1 tr th {
      font-weight: bold;
      width: 10em; }

table.table_2 {
  border: solid 1px #ccc;
  border-collapse: collapse;
  width: 100%;
  margin: 20px 0; }
  @media screen and (max-width: 600px) {
    table.table_2 {
      border: none; } }
  table.table_2 th {
    border: solid 1px #ccc;
    background-color: #f6f6f6;
    padding: 10px 20px;
    vertical-align: middle;
    font-weight: bold;
    width: 11.6em; }
    @media screen and (max-width: 600px) {
      table.table_2 th {
        display: block;
        width: 100%; } }
  table.table_2 td {
    border: solid 1px #ccc;
    padding: 10px 20px;
    background-color: #fff; }
    @media screen and (max-width: 600px) {
      table.table_2 td {
        display: block;
        width: 100%;
        margin-bottom: 10px;
        border-top: none; } }

table.table_3 {
  width: 100%;
  margin: 20px 0; }
  table.table_3 tr {
    border-bottom: solid 40px #fff; }
    @media screen and (max-width: 600px) {
      table.table_3 tr {
        border-bottom: none; } }
  table.table_3 th {
    border-right: solid 1px #0080CC;
    color: #0080CC;
    font-weight: bold;
    vertical-align: top;
    text-align: center;
    min-width: 200px; }
    @media screen and (max-width: 600px) {
      table.table_3 th {
        display: block;
        width: 100%;
        border-bottom: solid 1px #0080CC;
        border-right: none;
        padding: 10px 0; } }
  table.table_3 td {
    padding-left: 20px; }
    @media screen and (max-width: 600px) {
      table.table_3 td {
        display: block;
        width: 100%;
        padding: 10px 0; } }

table.table_4 {
  border: solid 1px #ccc;
  border-collapse: collapse;
  width: 100%;
  margin: 15px 0; }
  table.table_4 th {
    border: solid 1px #ccc;
    background-color: #f6f6f6;
    padding: 10px 20px;
    vertical-align: middle;
    font-weight: bold;
    text-align: center; }
    @media screen and (max-width: 600px) {
      table.table_4 th {
        padding: 5px 10px; } }
  table.table_4 td {
    border: solid 1px #ccc;
    padding: 10px 20px;
    background-color: #fff;
    text-align: center; }
    @media screen and (max-width: 600px) {
      table.table_4 td {
        padding: 5px 10px; } }

/* ------------------------------
タブ
------------------------------ */
.tab_navi .tab_btn {
  display: table;
  width: 100%; }
  .tab_navi .tab_btn.tab_2 li {
    width: 50%; }
  .tab_navi .tab_btn.tab_3 li {
    width: 33.33%; }
  .tab_navi .tab_btn.tab_4 li {
    width: 25%; }
  .tab_navi .tab_btn.tab_5 li {
    width: 20%; }
  .tab_navi .tab_btn.tab_6 li {
    width: 16.66%; }
  .tab_navi .tab_btn li {
    background-color: #0080CC;
    color: #fff;
    cursor: pointer;
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    line-height: 1.4;
    padding: 0.9em;
    border-left: solid 1px #d9f0eb; }
    .tab_navi .tab_btn li.active {
      background-color: #d9f0eb;
      color: #0080CC;
      cursor: default; }
    .tab_navi .tab_btn li:first-child {
      border-left: none; }
.tab_navi .tab_cont {
  margin-top: 10px; }
  .tab_navi .tab_cont > div {
    display: none;
    opacity: 0;
    animation-duration: 0.5s;
    animation-name: fade-in;
    animation-direction: alternate; }
    .tab_navi .tab_cont > div.active {
      display: block;
      opacity: 1;
      animation-duration: 1s;
      animation-name: fade-in; }

@keyframes fade-in {
  0% {
    display: none;
    opacity: 0; }
  1% {
    display: block;
    opacity: 0; }
  100% {
    display: block;
    opacity: 1; } }
.mrg__btm0 {
  margin-bottom: 0 !important; }

.mrg__btm02 {
  margin-bottom: .2em !important; }

.mrg__btm03 {
  margin-bottom: .3em !important; }

.mrg__btm05 {
  margin-bottom: .5em !important; }

.mrg__btm08 {
  margin-bottom: .8em !important; }

.mrg__btm1 {
  margin-bottom: 1em !important; }

.mrg__btm15 {
  margin-bottom: 1.5em !important; }

.mrg__btm2 {
  margin-bottom: 2em !important; }

.mrg__btm3 {
  margin-bottom: 3em !important; }

.mrg__btm4 {
  margin-bottom: 4em !important; }

.mrg__btm5 {
  margin-bottom: 5em !important; }

.mrg__btm57 {
  margin-bottom: 5.7em !important; }

.mrg__btm6 {
  margin-bottom: 6em !important; }

.mrg__btm7 {
  margin-bottom: 7em !important; }

.mrg__btm8 {
  margin-bottom: 8em !important; }

.mrg__btm9 {
  margin-bottom: 9em !important; }

.mrg__btm1-0 {
  margin-bottom: 10em !important; }

.mrg__btm1-5 {
  margin-bottom: 15em !important; }

.mrg__btm2-0 {
  margin-bottom: 20em !important; }

.mrg__top-3 {
  margin-top: -3rem !important; }

.mrg__top-7 {
  margin-top: -7rem !important; }

.mrg__top0 {
  margin-top: 0 !important; }

.mrg__top05 {
  margin-top: .5em !important; }

.mrg__top1 {
  margin-top: 1em !important; }

.mrg__top2 {
  margin-top: 2em !important; }

.mrg__top3 {
  margin-top: 3em !important; }

.mrg__top4 {
  margin-top: 4em !important; }

.mrg__top5 {
  margin-top: 5em !important; }

.mrg__top6 {
  margin-top: 6em !important; }

.mrg__top7 {
  margin-top: 7em !important; }

.mrg__top8 {
  margin-top: 8em !important; }

.mrg__top9 {
  margin-top: 9em !important; }

.mrg__top1-0 {
  margin-top: 10em !important; }

.mrg__top1-5 {
  margin-top: 15em !important; }

.mrg__top2-0 {
  margin-top: 20em !important; }

.mrg__left0 {
  margin-left: 0 !important; }

.mrg__left1 {
  margin-left: 1em !important; }

.mrg__left2 {
  margin-left: 2em !important; }

.mrg__left3 {
  margin-left: 3em !important; }

.mrg__right0 {
  margin-right: 0 !important; }

.mrg__right1 {
  margin-right: 1em !important; }

.mrg__right2 {
  margin-right: 2em !important; }

.mrg__right3 {
  margin-right: 3em !important; }

@media screen and (max-width: 600px) {
  .txt__sp_ls_0 {
    letter-spacing: 0; }

  .txt__sp_ls_01 {
    letter-spacing: 0.1em; }

  .txt__sp_ls_02 {
    letter-spacing: 0.2em; }

  .txt__sp_s_005 {
    letter-spacing: 0.05em; }

  .pcbr {
    display: none !important; }

  .spbr {
    display: block !important; }

  .sp_only {
    display: block; }

  .txt__sp_center {
    display: block;
    text-align: center !important; }

  .txt__sp_right {
    display: block;
    text-align: right !important; }

  .txt__sp_left {
    display: block;
    text-align: left !important; }

  .fs__sp_10 {
    font-size: 1.0rem; }

  .fs__sp_12 {
    font-size: 1.2rem !important; }

  .fs__sp_13 {
    font-size: 1.3rem !important; }

  .fs__sp_14 {
    font-size: 1.4rem !important; }

  .fs__sp_15 {
    font-size: 1.5rem !important; }

  .fs__sp_16 {
    font-size: 1.6rem; }

  .fs__sp_18 {
    font-size: 1.8rem; }

  .fs__sp_19 {
    font-size: 1.9rem; }

  .fs__sp_20 {
    font-size: 2.0rem; }

  .fs__sp_22 {
    font-size: 2.2rem; }

  .fs__sp_24 {
    font-size: 2.4rem; }

  .fs__sp_25 {
    font-size: 2.5rem; }

  .fs__sp_26 {
    font-size: 2.6rem; }

  .fs__sp_28 {
    font-size: 2.8rem; }

  .fs__sp_30 {
    font-size: 3.0rem; }

  .fs__sp_32 {
    font-size: 3.2rem; }

  .fs__sp_35 {
    font-size: 3.5rem; }

  .fs__sp_38 {
    font-size: 3.8rem; }

  .fs__sp_40 {
    font-size: 4.0rem; }

  .fs__sp_42 {
    font-size: 4.2rem; }

  .fs__sp_45 {
    font-size: 4.5rem; }

  .fs__sp_46 {
    font-size: 4.6rem; }

  .fs__sp_50 {
    font-size: 5.0rem; }

  .fs__sp_60 {
    font-size: 6.0rem; }

  .fs__sp_70 {
    font-size: 7.0rem; }

  .lh__sp_08 {
    line-height: 0.8em !important; }

  .lh__sp_10 {
    line-height: 1.0em !important; }

  .lh__sp_12 {
    line-height: 1.2em !important; }

  .lh__sp_14 {
    line-height: 1.4em !important; }

  .lh__sp_15 {
    line-height: 1.5em !important; }

  .lh__sp_16 {
    line-height: 1.6em !important; }

  .lh___sp_18 {
    line-height: 1.8em !important; }

  .lh___sp_19 {
    line-height: 1.9em !important; }

  .lh__sp_20 {
    line-height: 2.0em !important; }

  .lh__sp_26 {
    line-height: 2.6em !important; }

  .lh__sp_30 {
    line-height: 3.0em !important; }

  .lh__sp_36 {
    line-height: 3.6em !important; }

  .lh__sp_40 {
    line-height: 4.0em !important; }

  .mrg__sp_btm0 {
    margin-bottom: 0 !important; }

  .mrg__sp_btm02 {
    margin-bottom: .2em !important; }

  .mrg__sp_btm05 {
    margin-bottom: .5em !important; }

  .mrg__sp_btm1 {
    margin-bottom: 1em !important; }

  .mrg__sp_btm15 {
    margin-bottom: 1.5em !important; }

  .mrg__sp_btm2 {
    margin-bottom: 2em !important; }

  .mrg__sp_btm3 {
    margin-bottom: 3em !important; }

  .mrg__sp_btm4 {
    margin-bottom: 4em !important; }

  .mrg__sp_btm5 {
    margin-bottom: 5em !important; }

  .mrg__sp_btm6 {
    margin-bottom: 6em !important; }

  .mrg__sp_btm7 {
    margin-bottom: 7em !important; }

  .mrg__sp_btm8 {
    margin-bottom: 8em !important; }

  .mrg__sp_btm9 {
    margin-bottom: 9em !important; }

  .mrg__sp_btm1-0 {
    margin-bottom: 10em !important; }

  .mrg__sp_top-02 {
    margin-top: -0.2em !important; }

  .mrg__sp_top-1 {
    margin-top: -1em !important; }

  .mrg__sp_top-2 {
    margin-top: -2em !important; }

  .mrg__sp_top-6 {
    margin-top: -6rem !important; }

  .mrg__sp_top0 {
    margin-top: 0 !important; }

  .mrg__sp_top05 {
    margin-top: .5em !important; }

  .mrg__sp_top1 {
    margin-top: 1em !important; }

  .mrg__sp_top2 {
    margin-top: 2em !important; }

  .mrg__sp_top3 {
    margin-top: 3em !important; }

  .mrg__sp_top4 {
    margin-top: 4em !important; }

  .mrg__sp_top5 {
    margin-top: 5em !important; }

  .mrg__sp_top6 {
    margin-top: 6em !important; }

  .mrg__sp_top7 {
    margin-top: 7em !important; }

  .mrg__sp_top8 {
    margin-top: 8em !important; }

  .mrg__sp_top9 {
    margin-top: 9em !important; }

  .mrg__sp_top1-0 {
    margin-top: 10em !important; } }
.elem.elem_fadeIn {
  opacity: 0;
  transition: 1s; }
  .elem.elem_fadeIn.isAnimate {
    opacity: 1; }
.elem.elem_fadeUp {
  opacity: 0;
  transform: translateY(60px);
  transition: 1s; }
  .elem.elem_fadeUp.isAnimate {
    opacity: 1;
    transform: translateY(0); }
.elem.elem_slideLeft {
  opacity: 0;
  transform: translateX(60px);
  transition: 1s; }
  .elem.elem_slideLeft.isAnimate {
    opacity: 1;
    transform: translateX(0); }
.elem.elem_slideRight {
  opacity: 0;
  transform: translateX(-60px);
  transition: 1s; }
  .elem.elem_slideRight.isAnimate {
    opacity: 1;
    transform: translateX(0); }
.elem.elem_zoomIn {
  opacity: 0;
  transform: scale(3);
  transition: 1s; }
  .elem.elem_zoomIn.isAnimate {
    opacity: 1;
    transform: scale(1); }
.elem.elem_slideIn {
  -webkit-clip-path: inset(0 100% 0 0);
  clip-path: inset(0 100% 0 0);
  transition: .6s; }
  .elem.elem_slideIn.isAnimate {
    -webkit-clip-path: inset(0);
    clip-path: inset(0); }
.elem.elem_wideIn {
  -webkit-clip-path: inset(100%);
  clip-path: inset(100%);
  opacity: 0;
  transition: .8s; }
  .elem.elem_wideIn.isAnimate {
    opacity: 1;
    -webkit-clip-path: inset(0);
    clip-path: inset(0); }
.elem.elem_delay_02 {
  transition-delay: .2s; }
.elem.elem_delay_03 {
  transition-delay: .3s; }
.elem.elem_delay_04 {
  transition-delay: .4s; }
.elem.elem_delay_06 {
  transition-delay: .6s; }
.elem.elem_delay_08 {
  transition-delay: .8s; }
.elem.elem_delay_1 {
  transition-delay: 1s; }
.elem.elem_delay_1_02 {
  transition-delay: 1.2s; }
.elem.elem_delay_1_04 {
  transition-delay: 1.4s; }
.elem.elem_delay_1_06 {
  transition-delay: 1.6s; }
.elem.elem_delay_1_08 {
  transition-delay: 1.8s; }
.elem.elem_delay_2 {
  transition-delay: 2s; }
.elem.elem_duration_03 {
  transition-duration: .3s; }
.elem.elem_duration_04 {
  transition-duration: .4s; }
.elem.elem_duration_06 {
  transition-duration: .6s; }
.elem.elem_duration_08 {
  transition-duration: .8s; }
.elem.elem_duration_1 {
  transition-duration: 1s; }
.elem.elem_duration_2 {
  transition-duration: 2s; }
.elem.elem_duration_3 {
  transition-duration: 3s; }
.elem.elem_duration_4 {
  transition-duration: 4s; }

@keyframes fadeAnime {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
.load_fadeIn {
  opacity: 0;
  animation: page_Anim 1s 1.5s ease-in-out forwards; }

/* CSS Document */
/*---------------------------------------------
  Browser Default Initialization
---------------------------------------------*/
body, div, dl, dt, dd {
  margin: 0;
  padding: 0;
  line-height: 1.8; }

ul {
  margin: 0;
  padding: 0;
  line-height: 1.7; }

ul li {
  margin: 0;
  padding: 0;
  line-height: 1.7; }

h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td, section, nav, article, aside, hgroup, header, address, figure, figcaption {
  margin: 0;
  padding: 0;
  line-height: 1.7; }

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

caption, th {
  text-align: left; }

q:before, q:after {
  content: ''; }

object, embed {
  vertical-align: top; }

hr, legend {
  display: none; }

h1, h2, h3, h4, h5, h6 {
  font-weight: normal; }

img, abbr, acronym, fieldset {
  border: 0; }

img {
  width: 100%;
  vertical-align: top;
  -ms-interpolation-mode: bicubic;
  max-width: 100%; }

ul li {
  list-style-type: none; }

a, button, input, textarea {
  outline: none; }

img {
  box-shadow: #000 0 0 0; }

x:-moz-any-link, x:default {
  box-shadow: #000 0 0 0; }

embed, iframe, object {
  max-width: 100%; }

a {
  color: #fff;
  text-decoration: none; }

a:hover {
  text-decoration: none; }

sub {
  vertical-align: bottom; }

@keyframes lineAnime {
  0% {
    width: 0%; }
  100% {
    width: 100%; } }
@keyframes floatingAnime {
  0% {
    transform: translate(0, 0); }
  50% {
    transform: translate(0, 20%); }
  100% {
    transform: translate(0, 0); } }
/* ------------------------------
テキスト
------------------------------ */
.txt_indent {
  display: block;
  text-indent: -1em;
  margin-left: 1em; }

.txt_ls_0 {
  letter-spacing: 0; }

.txt_ls_005 {
  letter-spacing: 0.05em !important; }

.txt_ls_01 {
  letter-spacing: 0.1em !important; }

.txt_ls_015 {
  letter-spacing: 0.15em; }

.txt_ls_02 {
  letter-spacing: 0.2em; }

.txt_ls_005 {
  letter-spacing: 0.05em; }

.txt_black {
  font-weight: 900; }

.txt_bold {
  font-weight: 700; }

.txt_medium {
  font-weight: 500; }

.txt_normal {
  font-weight: 300; }

.txt_notes_kome {
  font-size: 90%;
  display: block;
  margin-top: 0.8em;
  text-indent: -1em;
  margin-left: 1em; }

.txt_en {
  font-family: "Roboto", serif;
  letter-spacing: 0.02em; }

.txt_center {
  text-align: center !important; }

.txt_right {
  text-align: right !important; }

.txt_link {
  color: #0080CC;
  text-decoration: underline;
  display: inline-block;
  margin: 0 0.2em; }

.black {
  color: #000; }

.green {
  color: #1694A1; }

.white {
  color: #fff; }

.yellow {
  color: #FFDA00; }

.blue {
  color: #0080CC; }

.bg_gray {
  background-color: #f6f6f6; }

.pcbr {
  display: block !important; }

.spbr {
  display: none !important; }

.sp_only {
  display: none; }

.clearfix::after {
  content: "";
  display: block;
  clear: both; }

.fs_10 {
  font-size: 1.0rem; }

.fs_12 {
  font-size: 1.2rem; }

.fs_13 {
  font-size: 1.3rem; }

.fs_14 {
  font-size: 1.4rem; }

.fs_15 {
  font-size: 1.5rem; }

.fs_16 {
  font-size: 1.6rem; }

.fs_17 {
  font-size: 1.7rem; }

.fs_18 {
  font-size: 1.8rem; }

.fs_20 {
  font-size: 2.0rem; }

.fs_22 {
  font-size: 2.2rem; }

.fs_24 {
  font-size: 2.4rem; }

.fs_26 {
  font-size: 2.6rem; }

.fs_28 {
  font-size: 2.8rem; }

.fs_30 {
  font-size: 3.0rem; }

.fs_32 {
  font-size: 3.2rem; }

.fs_34 {
  font-size: 3.4rem; }

.fs_35 {
  font-size: 3.5rem; }

.fs_36 {
  font-size: 3.6rem; }

.fs_37 {
  font-size: 3.7rem; }

.fs_38 {
  font-size: 3.8rem; }

.fs_40 {
  font-size: 4.0rem; }

.fs_42 {
  font-size: 4.2rem; }

.fs_44 {
  font-size: 4.4rem; }

.fs_45 {
  font-size: 4.5rem; }

.fs_50 {
  font-size: 5.0rem; }

.fs_53 {
  font-size: 5.3rem; }

.fs_55 {
  font-size: 5.5rem; }

.fs_59 {
  font-size: 5.9rem; }

.fs_60 {
  font-size: 6.0rem; }

.fs_65 {
  font-size: 6.5rem; }

.fs_68 {
  font-size: 6.8rem; }

.fs_70 {
  font-size: 7.0rem; }

.fs_80 {
  font-size: 8.0rem; }

.fs_85 {
  font-size: 8.5rem; }

.fs_89 {
  font-size: 8.9rem; }

.fs_90 {
  font-size: 9.0rem; }

.fs_100 {
  font-size: 10.0rem; }

.fs_115 {
  font-size: 11.5rem; }

.fs_119 {
  font-size: 11.9rem; }

.fs_140 {
  font-size: 14.0rem; }

.fw_100 {
  font-weight: 100; }

.fw_200 {
  font-weight: 200; }

.fw_300 {
  font-weight: 300; }

.fw_400 {
  font-weight: 400; }

.fw_500 {
  font-weight: 500; }

.fw_700 {
  font-weight: 700; }

.lh_1 {
  line-height: 0.1em !important; }

.lh_2 {
  line-height: 0.2em !important; }

.lh_3 {
  line-height: 0.3em !important; }

.lh_5 {
  line-height: 0.5em !important; }

.lh_10 {
  line-height: 1.0em !important; }

.lh_12 {
  line-height: 1.2em !important; }

.lh_14 {
  line-height: 1.4em !important; }

.lh_15 {
  line-height: 1.5em !important; }

.lh_16 {
  line-height: 1.6em !important; }

.lh_18 {
  line-height: 1.8em !important; }

.lh_20 {
  line-height: 2.0em !important; }

.lh_25 {
  line-height: 2.5em !important; }

.lh_28 {
  line-height: 2.8em !important; }

.lh_30 {
  line-height: 3.0em !important; }

.lh_32 {
  line-height: 3.2em !important; }

.lh_35 {
  line-height: 3.5em !important; }

.lh_40 {
  line-height: 4.0em !important; }

.ttl_1 {
  text-align: center;
  margin-bottom: 40px;
  overflow: hidden; }
  .ttl_1 p {
    font-size: 2.0rem;
    font-weight: 500;
    text-align: center;
    font-family: "Roboto", serif;
    letter-spacing: 0.3em;
    margin-bottom: 5px;
    color: #0080CC; }
    @media screen and (max-width: 600px) {
      .ttl_1 p {
        font-size: 1.6rem; } }
  .ttl_1 h3 {
    font-size: 3.2rem;
    font-weight: 600;
    text-align: center;
    line-height: 1;
    letter-spacing: 0.05em;
    display: inline-block;
    position: relative; }
    @media screen and (max-width: 600px) {
      .ttl_1 h3 {
        font-size: 2.4rem; } }
    .ttl_1 h3:before {
      content: "";
      width: 50vw;
      height: 1px;
      background-color: #999;
      position: absolute;
      left: -15px;
      top: 55%;
      transform: translateX(-100%); }
    .ttl_1 h3:after {
      content: "";
      width: 50vw;
      height: 1px;
      background-color: #999;
      position: absolute;
      right: -15px;
      top: 55%;
      transform: translateX(100%); }

.ttl_2 {
  padding-bottom: 10px;
  margin-bottom: 5px;
  position: relative;
  overflow: hidden;
  width: 100%;
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  padding-top: 30px; }
  @media screen and (max-width: 600px) {
    .ttl_2 {
      flex-direction: column; } }
  .ttl_2 .en {
    font-family: "Roboto", serif;
    font-size: 8.0rem;
    font-weight: 600;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: rgba(255, 218, 0, 0.8);
    color: transparent;
    letter-spacing: 0.02em;
    line-height: 1;
    position: relative; }
    @media screen and (max-width: 600px) {
      .ttl_2 .en {
        font-size: 3.4rem;
        padding-top: 15px;
        -webkit-text-stroke-color: rgba(255, 218, 0, 0.4); } }
    .ttl_2 .en:before {
      content: "";
      height: 4px;
      width: 100vw;
      background-color: #FFDA00;
      position: absolute;
      bottom: 14px;
      left: -15px;
      transform: translateX(-100%); }
      @media screen and (max-width: 600px) {
        .ttl_2 .en:before {
          height: 1px;
          transform: none;
          left: 0;
          width: 100%;
          bottom: 0; } }
  .ttl_2 .jp {
    display: inline-block;
    font-size: 2.8rem;
    font-weight: 600;
    letter-spacing: 0.1em; }
    @media screen and (max-width: 600px) {
      .ttl_2 .jp {
        font-size: 1.8rem;
        padding-top: 5px;
        line-height: 1.4; } }

.list_kome li {
  position: relative;
  padding-left: 1.2em;
  line-height: 1.4;
  margin: 3px 0; }
  .list_kome li:before {
    content: "※";
    position: absolute;
    left: 0;
    top: 0; }

.list_dot li {
  position: relative;
  padding-left: 0.8em;
  line-height: 1.4;
  margin: 3px 0; }
  .list_dot li:before {
    content: "・";
    position: absolute;
    left: 0;
    top: 0; }

.btn_link {
  display: flex;
  align-items: center;
  height: 50px;
  background-color: #fff;
  border: solid 1px #000;
  padding: 0 4em 3px 1.5em;
  position: relative; }
  .btn_link .arrow {
    background-color: #000;
    width: 60px;
    height: 40px;
    position: absolute;
    right: -30px;
    bottom: -15px;
    overflow: hidden;
    transition: 0.4s; }
    @media screen and (max-width: 600px) {
      .btn_link .arrow {
        width: 45px;
        height: 30px;
        right: -12px;
        bottom: -10px; } }
    .btn_link .arrow:before {
      content: "";
      width: 10px;
      height: 10px;
      border-top: solid 1px #fff;
      border-right: solid 1px #fff;
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-60%, -50%) rotate(45deg); }
      @media screen and (max-width: 600px) {
        .btn_link .arrow:before {
          width: 7px;
          height: 7px; } }
  .btn_link:hover .arrow {
    background-color: #666; }
    .btn_link:hover .arrow:before {
      animation: arrowMove 0.3s ease-in-out forwards; }
  .btn_link.blue {
    border-color: #0080CC; }
    .btn_link.blue .arrow {
      background-color: #0080CC; }
  .btn_link.blue2 {
    border-color: #0080CC;
    background-color: #0080CC;
    color: #fff;
    max-width: 640px;
    margin: 50px auto 80px;
    justify-content: center;
    font-weight: 600;
    padding: 10px 3em 12px;
    height: 80px;
    font-size: 2.0rem;
    letter-spacing: 0.03em; }
    @media screen and (max-width: 600px) {
      .btn_link.blue2 {
        font-size: 1.7rem;
        padding: 10px 2em 12px;
        margin: 30px auto 60px; } }

@keyframes arrowMove {
  0% {
    left: 50%; }
  50% {
    left: 120%; }
  51% {
    left: -20%; }
  100% {
    left: 50%; } }
/* ------------------------------
テーブル
------------------------------ */
.table-responsive {
  min-height: .01%;
  overflow-x: auto; }

table.table_1 {
  width: 100%; }
  table.table_1 tr {
    border-bottom: solid 1px #ddd; }
    table.table_1 tr:last-child {
      border-bottom: none; }
    table.table_1 tr th, table.table_1 tr td {
      padding: 13px 3px;
      vertical-align: top; }
    table.table_1 tr th {
      font-weight: bold;
      width: 10em; }

table.table_2 {
  border: solid 1px #ccc;
  border-collapse: collapse;
  width: 100%;
  margin: 20px 0; }
  @media screen and (max-width: 600px) {
    table.table_2 {
      border: none; } }
  table.table_2 th {
    border: solid 1px #ccc;
    background-color: #f6f6f6;
    padding: 10px 20px;
    vertical-align: middle;
    font-weight: bold;
    width: 11.6em; }
    @media screen and (max-width: 600px) {
      table.table_2 th {
        display: block;
        width: 100%; } }
  table.table_2 td {
    border: solid 1px #ccc;
    padding: 10px 20px;
    background-color: #fff; }
    @media screen and (max-width: 600px) {
      table.table_2 td {
        display: block;
        width: 100%;
        margin-bottom: 10px;
        border-top: none; } }

table.table_3 {
  width: 100%;
  margin: 20px 0; }
  table.table_3 tr {
    border-bottom: solid 40px #fff; }
    @media screen and (max-width: 600px) {
      table.table_3 tr {
        border-bottom: none; } }
  table.table_3 th {
    border-right: solid 1px #0080CC;
    color: #0080CC;
    font-weight: bold;
    vertical-align: top;
    text-align: center;
    min-width: 200px; }
    @media screen and (max-width: 600px) {
      table.table_3 th {
        display: block;
        width: 100%;
        border-bottom: solid 1px #0080CC;
        border-right: none;
        padding: 10px 0; } }
  table.table_3 td {
    padding-left: 20px; }
    @media screen and (max-width: 600px) {
      table.table_3 td {
        display: block;
        width: 100%;
        padding: 10px 0; } }

table.table_4 {
  border: solid 1px #ccc;
  border-collapse: collapse;
  width: 100%;
  margin: 15px 0; }
  table.table_4 th {
    border: solid 1px #ccc;
    background-color: #f6f6f6;
    padding: 10px 20px;
    vertical-align: middle;
    font-weight: bold;
    text-align: center; }
    @media screen and (max-width: 600px) {
      table.table_4 th {
        padding: 5px 10px; } }
  table.table_4 td {
    border: solid 1px #ccc;
    padding: 10px 20px;
    background-color: #fff;
    text-align: center; }
    @media screen and (max-width: 600px) {
      table.table_4 td {
        padding: 5px 10px; } }

/* ------------------------------
タブ
------------------------------ */
.tab_navi .tab_btn {
  display: table;
  width: 100%; }
  .tab_navi .tab_btn.tab_2 li {
    width: 50%; }
  .tab_navi .tab_btn.tab_3 li {
    width: 33.33%; }
  .tab_navi .tab_btn.tab_4 li {
    width: 25%; }
  .tab_navi .tab_btn.tab_5 li {
    width: 20%; }
  .tab_navi .tab_btn.tab_6 li {
    width: 16.66%; }
  .tab_navi .tab_btn li {
    background-color: #0080CC;
    color: #fff;
    cursor: pointer;
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    line-height: 1.4;
    padding: 0.9em;
    border-left: solid 1px #d9f0eb; }
    .tab_navi .tab_btn li.active {
      background-color: #d9f0eb;
      color: #0080CC;
      cursor: default; }
    .tab_navi .tab_btn li:first-child {
      border-left: none; }
.tab_navi .tab_cont {
  margin-top: 10px; }
  .tab_navi .tab_cont > div {
    display: none;
    opacity: 0;
    animation-duration: 0.5s;
    animation-name: fade-in;
    animation-direction: alternate; }
    .tab_navi .tab_cont > div.active {
      display: block;
      opacity: 1;
      animation-duration: 1s;
      animation-name: fade-in; }

@keyframes fade-in {
  0% {
    display: none;
    opacity: 0; }
  1% {
    display: block;
    opacity: 0; }
  100% {
    display: block;
    opacity: 1; } }
.mrg__btm0 {
  margin-bottom: 0 !important; }

.mrg__btm02 {
  margin-bottom: .2em !important; }

.mrg__btm03 {
  margin-bottom: .3em !important; }

.mrg__btm05 {
  margin-bottom: .5em !important; }

.mrg__btm08 {
  margin-bottom: .8em !important; }

.mrg__btm1 {
  margin-bottom: 1em !important; }

.mrg__btm15 {
  margin-bottom: 1.5em !important; }

.mrg__btm2 {
  margin-bottom: 2em !important; }

.mrg__btm3 {
  margin-bottom: 3em !important; }

.mrg__btm4 {
  margin-bottom: 4em !important; }

.mrg__btm5 {
  margin-bottom: 5em !important; }

.mrg__btm57 {
  margin-bottom: 5.7em !important; }

.mrg__btm6 {
  margin-bottom: 6em !important; }

.mrg__btm7 {
  margin-bottom: 7em !important; }

.mrg__btm8 {
  margin-bottom: 8em !important; }

.mrg__btm9 {
  margin-bottom: 9em !important; }

.mrg__btm1-0 {
  margin-bottom: 10em !important; }

.mrg__btm1-5 {
  margin-bottom: 15em !important; }

.mrg__btm2-0 {
  margin-bottom: 20em !important; }

.mrg__top-3 {
  margin-top: -3rem !important; }

.mrg__top-7 {
  margin-top: -7rem !important; }

.mrg__top0 {
  margin-top: 0 !important; }

.mrg__top05 {
  margin-top: .5em !important; }

.mrg__top1 {
  margin-top: 1em !important; }

.mrg__top2 {
  margin-top: 2em !important; }

.mrg__top3 {
  margin-top: 3em !important; }

.mrg__top4 {
  margin-top: 4em !important; }

.mrg__top5 {
  margin-top: 5em !important; }

.mrg__top6 {
  margin-top: 6em !important; }

.mrg__top7 {
  margin-top: 7em !important; }

.mrg__top8 {
  margin-top: 8em !important; }

.mrg__top9 {
  margin-top: 9em !important; }

.mrg__top1-0 {
  margin-top: 10em !important; }

.mrg__top1-5 {
  margin-top: 15em !important; }

.mrg__top2-0 {
  margin-top: 20em !important; }

.mrg__left0 {
  margin-left: 0 !important; }

.mrg__left1 {
  margin-left: 1em !important; }

.mrg__left2 {
  margin-left: 2em !important; }

.mrg__left3 {
  margin-left: 3em !important; }

.mrg__right0 {
  margin-right: 0 !important; }

.mrg__right1 {
  margin-right: 1em !important; }

.mrg__right2 {
  margin-right: 2em !important; }

.mrg__right3 {
  margin-right: 3em !important; }

@media screen and (max-width: 600px) {
  .txt__sp_ls_0 {
    letter-spacing: 0; }

  .txt__sp_ls_01 {
    letter-spacing: 0.1em; }

  .txt__sp_ls_02 {
    letter-spacing: 0.2em; }

  .txt__sp_s_005 {
    letter-spacing: 0.05em; }

  .pcbr {
    display: none !important; }

  .spbr {
    display: block !important; }

  .sp_only {
    display: block; }

  .txt__sp_center {
    display: block;
    text-align: center !important; }

  .txt__sp_right {
    display: block;
    text-align: right !important; }

  .txt__sp_left {
    display: block;
    text-align: left !important; }

  .fs__sp_10 {
    font-size: 1.0rem; }

  .fs__sp_12 {
    font-size: 1.2rem !important; }

  .fs__sp_13 {
    font-size: 1.3rem !important; }

  .fs__sp_14 {
    font-size: 1.4rem !important; }

  .fs__sp_15 {
    font-size: 1.5rem !important; }

  .fs__sp_16 {
    font-size: 1.6rem; }

  .fs__sp_18 {
    font-size: 1.8rem; }

  .fs__sp_19 {
    font-size: 1.9rem; }

  .fs__sp_20 {
    font-size: 2.0rem; }

  .fs__sp_22 {
    font-size: 2.2rem; }

  .fs__sp_24 {
    font-size: 2.4rem; }

  .fs__sp_25 {
    font-size: 2.5rem; }

  .fs__sp_26 {
    font-size: 2.6rem; }

  .fs__sp_28 {
    font-size: 2.8rem; }

  .fs__sp_30 {
    font-size: 3.0rem; }

  .fs__sp_32 {
    font-size: 3.2rem; }

  .fs__sp_35 {
    font-size: 3.5rem; }

  .fs__sp_38 {
    font-size: 3.8rem; }

  .fs__sp_40 {
    font-size: 4.0rem; }

  .fs__sp_42 {
    font-size: 4.2rem; }

  .fs__sp_45 {
    font-size: 4.5rem; }

  .fs__sp_46 {
    font-size: 4.6rem; }

  .fs__sp_50 {
    font-size: 5.0rem; }

  .fs__sp_60 {
    font-size: 6.0rem; }

  .fs__sp_70 {
    font-size: 7.0rem; }

  .lh__sp_08 {
    line-height: 0.8em !important; }

  .lh__sp_10 {
    line-height: 1.0em !important; }

  .lh__sp_12 {
    line-height: 1.2em !important; }

  .lh__sp_14 {
    line-height: 1.4em !important; }

  .lh__sp_15 {
    line-height: 1.5em !important; }

  .lh__sp_16 {
    line-height: 1.6em !important; }

  .lh___sp_18 {
    line-height: 1.8em !important; }

  .lh___sp_19 {
    line-height: 1.9em !important; }

  .lh__sp_20 {
    line-height: 2.0em !important; }

  .lh__sp_26 {
    line-height: 2.6em !important; }

  .lh__sp_30 {
    line-height: 3.0em !important; }

  .lh__sp_36 {
    line-height: 3.6em !important; }

  .lh__sp_40 {
    line-height: 4.0em !important; }

  .mrg__sp_btm0 {
    margin-bottom: 0 !important; }

  .mrg__sp_btm02 {
    margin-bottom: .2em !important; }

  .mrg__sp_btm05 {
    margin-bottom: .5em !important; }

  .mrg__sp_btm1 {
    margin-bottom: 1em !important; }

  .mrg__sp_btm15 {
    margin-bottom: 1.5em !important; }

  .mrg__sp_btm2 {
    margin-bottom: 2em !important; }

  .mrg__sp_btm3 {
    margin-bottom: 3em !important; }

  .mrg__sp_btm4 {
    margin-bottom: 4em !important; }

  .mrg__sp_btm5 {
    margin-bottom: 5em !important; }

  .mrg__sp_btm6 {
    margin-bottom: 6em !important; }

  .mrg__sp_btm7 {
    margin-bottom: 7em !important; }

  .mrg__sp_btm8 {
    margin-bottom: 8em !important; }

  .mrg__sp_btm9 {
    margin-bottom: 9em !important; }

  .mrg__sp_btm1-0 {
    margin-bottom: 10em !important; }

  .mrg__sp_top-02 {
    margin-top: -0.2em !important; }

  .mrg__sp_top-1 {
    margin-top: -1em !important; }

  .mrg__sp_top-2 {
    margin-top: -2em !important; }

  .mrg__sp_top-6 {
    margin-top: -6rem !important; }

  .mrg__sp_top0 {
    margin-top: 0 !important; }

  .mrg__sp_top05 {
    margin-top: .5em !important; }

  .mrg__sp_top1 {
    margin-top: 1em !important; }

  .mrg__sp_top2 {
    margin-top: 2em !important; }

  .mrg__sp_top3 {
    margin-top: 3em !important; }

  .mrg__sp_top4 {
    margin-top: 4em !important; }

  .mrg__sp_top5 {
    margin-top: 5em !important; }

  .mrg__sp_top6 {
    margin-top: 6em !important; }

  .mrg__sp_top7 {
    margin-top: 7em !important; }

  .mrg__sp_top8 {
    margin-top: 8em !important; }

  .mrg__sp_top9 {
    margin-top: 9em !important; }

  .mrg__sp_top1-0 {
    margin-top: 10em !important; } }
.elem.elem_fadeIn {
  opacity: 0;
  transition: 1s; }
  .elem.elem_fadeIn.isAnimate {
    opacity: 1; }
.elem.elem_fadeUp {
  opacity: 0;
  transform: translateY(60px);
  transition: 1s; }
  .elem.elem_fadeUp.isAnimate {
    opacity: 1;
    transform: translateY(0); }
.elem.elem_slideLeft {
  opacity: 0;
  transform: translateX(60px);
  transition: 1s; }
  .elem.elem_slideLeft.isAnimate {
    opacity: 1;
    transform: translateX(0); }
.elem.elem_slideRight {
  opacity: 0;
  transform: translateX(-60px);
  transition: 1s; }
  .elem.elem_slideRight.isAnimate {
    opacity: 1;
    transform: translateX(0); }
.elem.elem_zoomIn {
  opacity: 0;
  transform: scale(3);
  transition: 1s; }
  .elem.elem_zoomIn.isAnimate {
    opacity: 1;
    transform: scale(1); }
.elem.elem_slideIn {
  -webkit-clip-path: inset(0 100% 0 0);
  clip-path: inset(0 100% 0 0);
  transition: .6s; }
  .elem.elem_slideIn.isAnimate {
    -webkit-clip-path: inset(0);
    clip-path: inset(0); }
.elem.elem_wideIn {
  -webkit-clip-path: inset(100%);
  clip-path: inset(100%);
  opacity: 0;
  transition: .8s; }
  .elem.elem_wideIn.isAnimate {
    opacity: 1;
    -webkit-clip-path: inset(0);
    clip-path: inset(0); }
.elem.elem_delay_02 {
  transition-delay: .2s; }
.elem.elem_delay_03 {
  transition-delay: .3s; }
.elem.elem_delay_04 {
  transition-delay: .4s; }
.elem.elem_delay_06 {
  transition-delay: .6s; }
.elem.elem_delay_08 {
  transition-delay: .8s; }
.elem.elem_delay_1 {
  transition-delay: 1s; }
.elem.elem_delay_1_02 {
  transition-delay: 1.2s; }
.elem.elem_delay_1_04 {
  transition-delay: 1.4s; }
.elem.elem_delay_1_06 {
  transition-delay: 1.6s; }
.elem.elem_delay_1_08 {
  transition-delay: 1.8s; }
.elem.elem_delay_2 {
  transition-delay: 2s; }
.elem.elem_duration_03 {
  transition-duration: .3s; }
.elem.elem_duration_04 {
  transition-duration: .4s; }
.elem.elem_duration_06 {
  transition-duration: .6s; }
.elem.elem_duration_08 {
  transition-duration: .8s; }
.elem.elem_duration_1 {
  transition-duration: 1s; }
.elem.elem_duration_2 {
  transition-duration: 2s; }
.elem.elem_duration_3 {
  transition-duration: 3s; }
.elem.elem_duration_4 {
  transition-duration: 4s; }

@keyframes fadeAnime {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
.load_fadeIn {
  opacity: 0;
  animation: page_Anim 1s 1.5s ease-in-out forwards; }

/*↓スマホ横css*/
/*↓ipad用縦css*/
/*↓ipad用横css*/
html {
  font: 62.5%/1.231 'Noto Sans Japanese', 'Hiragino Kaku Gothic ProN', 'Meiryo', sans-serif;
  width: 100%;
  height: 100%;
  overflow-y: scroll; }

body {
  width: 100%;
  height: 100%;
  font-size: 1.6rem;
  font-weight: 400;
  color: #000;
  -webkit-text-size-adjust: 100%;
  position: relative;
  font-family: 'Noto Sans JP', 'Hiragino Kaku Gothic ProN', 'Meiryo', sans-serif;
  background-color: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }
  @media screen and (max-width: 600px) {
    body {
      min-width: auto;
      font-size: 1.4rem; } }

img {
  width: 100%;
  vertical-align: top;
  -ms-interpolation-mode: bicubic; }

a {
  color: #000;
  opacity: 1;
  transition: all .2s linear; }

p {
  line-height: 1.6;
  text-align: justify;
  text-justify: inter-ideograph;
  font-feature-settings: "palt"; }
  @media screen and (max-width: 600px) {
    p {
      font-size: 1.4rem; } }

@media screen and (max-width: 600px) {
  body {
    /*初期化*/
    min-width: initial; } }
* {
  box-sizing: border-box; }

.loading {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background-color: #fff;
  z-index: 1000; }

#container {
  overflow: hidden; }

@keyframes page_Anim {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
.inner {
  width: 1240px;
  margin: 0 auto;
  padding: 0 20px; }
  @media screen and (max-width: 600px) {
    .inner {
      padding: 0 15px;
      width: 100%; } }
  .inner.inner_1000 {
    width: 1040px; }

.global_header {
  width: 100%;
  height: 100px;
  padding: 20px;
  transition: .4s ease-in-out;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  display: flex; }
  @media screen and (max-width: 600px) {
    .global_header {
      position: fixed;
      height: 50px;
      width: 100%;
      background-color: #fff;
      justify-content: space-between;
      padding: 0; } }
  .global_header.transparent {
    background-color: transparent; }
  .global_header .site_id {
    display: flex;
    align-items: center;
    background-color: #fff;
    z-index: 1000; }
    @media screen and (max-width: 600px) {
      .global_header .site_id {
        width: 100%;
        padding-left: 20px; } }
    .global_header .site_id h1 {
      width: 190px;
      line-height: 1;
      padding-left: 15px;
      transform: translateY(1px); }
      @media screen and (max-width: 600px) {
        .global_header .site_id h1 {
          width: 176px;
          padding-left: 0; } }
      .global_header .site_id h1 a {
        display: block; }
  .global_header p {
    width: 150px;
    color: #fff;
    background-color: #0080CC;
    height: 60px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    margin-left: 15px; }
    @media screen and (max-width: 600px) {
      .global_header p {
        height: 50px;
        margin-left: auto; } }
    .global_header p span:nth-child(1) {
      font-size: 0.9rem;
      font-weight: 400;
      line-height: 1;
      margin-bottom: 4px;
      font-family: "Roboto", serif; }
    .global_header p span:nth-child(2) {
      font-size: 1.7rem;
      font-weight: 400;
      line-height: 1;
      font-family: "Roboto", serif;
      letter-spacing: 0.01em; }
  .global_header .nav_set {
    opacity: 0;
    pointer-events: none;
    position: fixed;
    right: 0;
    top: 0;
    width: 700px;
    height: 100%;
    z-index: 999;
    display: flex;
    gap: 20px;
    transition: 0.6s ease;
    transform: translateX(600px); }
    @media screen and (max-width: 600px) {
      .global_header .nav_set {
        width: 100%; } }
    .global_header .nav_set.active {
      opacity: 1;
      pointer-events: auto;
      transform: translateX(0px); }
    .global_header .nav_set__left {
      flex: 1;
      pointer-events: none;
      display: none; }
    .global_header .nav_set__right {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      gap: 20px;
      background-color: #f6f6f6;
      width: 900px; }
      @media screen and (max-width: 600px) {
        .global_header .nav_set__right {
          width: 100%;
          justify-content: flex-start;
          overflow-y: auto;
          padding: 90px 25px 100px; } }
    .global_header .nav_set .nav_inner {
      display: flex;
      gap: 20px; }
      @media screen and (max-width: 600px) {
        .global_header .nav_set .nav_inner {
          flex-direction: column;
          width: 100%; } }
    .global_header .nav_set .nav_cat {
      background-color: #fff;
      width: 300px; }
      @media screen and (max-width: 600px) {
        .global_header .nav_set .nav_cat {
          width: 100%; } }
      .global_header .nav_set .nav_cat_2 {
        width: 620px; }
        @media screen and (max-width: 600px) {
          .global_header .nav_set .nav_cat_2 {
            width: 100%; } }
        .global_header .nav_set .nav_cat_2 .nav_list {
          display: flex; }
          @media screen and (max-width: 600px) {
            .global_header .nav_set .nav_cat_2 .nav_list {
              flex-direction: column; } }
          .global_header .nav_set .nav_cat_2 .nav_list__item:nth-child(1) {
            width: 42%; }
            @media screen and (max-width: 600px) {
              .global_header .nav_set .nav_cat_2 .nav_list__item:nth-child(1) {
                width: 100%; } }
          .global_header .nav_set .nav_cat_2 .nav_list__item:nth-child(2) {
            width: 58%; }
            @media screen and (max-width: 600px) {
              .global_header .nav_set .nav_cat_2 .nav_list__item:nth-child(2) {
                width: 100%; } }
      .global_header .nav_set .nav_cat__name {
        background-color: #0080CC;
        padding: 0.3em 0.8em;
        color: #fff;
        letter-spacing: 0.05em;
        line-height: 1.4;
        transform: translate(-7px, -9px);
        display: inline-block; }
        @media screen and (max-width: 1320px) {
          .global_header .nav_set .nav_cat__name {
            font-size: 1.6rem; } }
      .global_header .nav_set .nav_cat__noheader {
        display: none; }
      .global_header .nav_set .nav_cat:hover .nav_list {
        pointer-events: auto;
        opacity: 1; }
    .global_header .nav_set .nav_list {
      transition: 0.3s;
      padding: 10px 25px 20px 25px; }
      @media screen and (max-width: 600px) {
        .global_header .nav_set .nav_list {
          padding: 5px 10px 20px 15px; } }
      .global_header .nav_set .nav_list__item {
        display: block;
        white-space: nowrap;
        transition: 0.3s;
        font-size: 1.5rem; }
        @media screen and (max-width: 600px) {
          .global_header .nav_set .nav_list__item {
            font-size: 1.4rem; } }
        .global_header .nav_set .nav_list__item:hover {
          color: #0080CC; }
        .global_header .nav_set .nav_list__item.comingsoon {
          color: #ccc;
          pointer-events: none;
          display: none; }
        .global_header .nav_set .nav_list__item.ps {
          line-height: 1.34;
          margin: 0.2em 0; }
          @media screen and (max-width: 600px) {
            .global_header .nav_set .nav_list__item.ps {
              margin: 0.25em 0; } }
          .global_header .nav_set .nav_list__item.ps span {
            font-size: 90%;
            color: #0080CC;
            font-family: 'Roboto','Noto Sans JP', 'Hiragino Kaku Gothic ProN', 'Meiryo', sans-serif;
            letter-spacing: 0.2em; }
          .global_header .nav_set .nav_list__item.ps a:hover {
            color: #0080CC; }
  .global_header .header_nav {
    display: flex;
    align-items: center;
    margin-left: auto;
    position: relative;
    z-index: 1000; }
    @media screen and (max-width: 1320px) {
      .global_header .header_nav {
        margin-left: auto; } }
    @media screen and (max-width: 600px) {
      .global_header .header_nav {
        position: fixed;
        bottom: 0;
        left: 0;
        border-top: solid 1px rgba(255, 255, 255, 0.2);
        width: 100%;
        background-color: #ddd; } }
    .global_header .header_nav .btn_entry, .global_header .header_nav .btn_mypage {
      width: 140px;
      height: 60px;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      margin-right: 1px;
      font-weight: 600;
      background-color: white; }
      @media screen and (max-width: 600px) {
        .global_header .header_nav .btn_entry, .global_header .header_nav .btn_mypage {
          width: calc((100vw - 60px)/2); } }
      .global_header .header_nav .btn_entry span, .global_header .header_nav .btn_mypage span {
        white-space: nowrap;
        line-height: 1.35; }
        .global_header .header_nav .btn_entry span:nth-child(1), .global_header .header_nav .btn_mypage span:nth-child(1) {
          font-size: 1.2rem; }
        .global_header .header_nav .btn_entry span:nth-child(2), .global_header .header_nav .btn_mypage span:nth-child(2) {
          font-size: 1.8rem; }
    .global_header .header_nav .btn_entry {
      color: #FF6BA8; }
    .global_header .header_nav .btn_mypage {
      color: #0080CC; }
    .global_header .header_nav .btn_menu {
      width: 60px;
      height: 60px;
      display: flex;
      justify-content: center;
      align-items: center;
      position: relative;
      background-color: #000;
      cursor: pointer; }
      @media screen and (max-width: 600px) {
        .global_header .header_nav .btn_menu {
          width: 60px;
          height: 60px; } }
      .global_header .header_nav .btn_menu span {
        position: absolute;
        width: 32px;
        height: 2px;
        background-color: #fff;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%); }
        @media screen and (max-width: 600px) {
          .global_header .header_nav .btn_menu span {
            width: 22px; } }
        .global_header .header_nav .btn_menu span:nth-child(1) {
          margin-top: -5px;
          transition: 0.3s; }
        .global_header .header_nav .btn_menu span:nth-child(2) {
          margin-top: 5px;
          transition: 0.3s; }
      .global_header .header_nav .btn_menu.active span:nth-child(1) {
        margin-top: 0px;
        transform: translate(-50%, -50%) rotate(45deg); }
      .global_header .header_nav .btn_menu.active span:nth-child(2) {
        margin-top: 0px;
        transform: translate(-50%, -50%) rotate(-45deg); }
      .global_header .header_nav .btn_menu:not(.active):hover span:nth-child(1) {
        margin-top: -8px; }
      .global_header .header_nav .btn_menu:not(.active):hover span:nth-child(2) {
        margin-top: 8px; }

.cont_header {
  position: relative;
  width: 100%;
  height: 600px;
  background-color: #eee;
  z-index: 1;
  padding: 200px 50px 50px;
  overflow: hidden; }
  @media screen and (max-width: 600px) {
    .cont_header {
      padding: 140px 8px 50px;
      height: 340px; } }
  .cont_header > p {
    font-family: "Roboto", serif;
    font-size: 20rem;
    font-weight: 600;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #fff;
    color: transparent;
    letter-spacing: 0.1em;
    line-height: 1; }
    @media screen and (max-width: 600px) {
      .cont_header > p {
        font-size: 6.4rem; } }
  .cont_header > h1 {
    font-size: 2.4rem;
    font-weight: 600;
    color: #0080CC;
    width: 526px;
    height: 70px;
    background: url("../img/bg_cont_ttl.png") no-repeat left center/contain;
    display: flex;
    align-items: center;
    padding: 0 50px 3px;
    margin-top: 20px;
    position: relative; }
    @media screen and (max-width: 600px) {
      .cont_header > h1 {
        font-size: 1.7rem;
        width: 300px;
        height: 40px;
        padding: 0 24px 3px;
        margin-top: 4px; } }
  .cont_header > figure {
    opacity: 0;
    animation: cHeadAnime .8s ease 1s;
    animation-fill-mode: forwards;
    width: 860px;
    position: absolute;
    left: 38%;
    top: 0px;
    z-index: -1; }
    @media screen and (max-width: 600px) {
      .cont_header > figure {
        width: 300px;
        left: 30%;
        top: 50px; } }
    .cont_header > figure.photo {
      width: 660px;
      top: -30px;
      left: 45%; }
      @media screen and (max-width: 600px) {
        .cont_header > figure.photo {
          width: 300px;
          top: 45px;
          left: 45%; } }
  .cont_header .obj_header_1 {
    width: 70px;
    position: absolute;
    top: 85px;
    left: 39%; }
    @media screen and (max-width: 600px) {
      .cont_header .obj_header_1 {
        width: 40px;
        top: 75px;
        left: 10%; } }
  .cont_header .obj_header_2 {
    width: 180px;
    position: absolute;
    top: 110px;
    right: 50px; }
    @media screen and (max-width: 600px) {
      .cont_header .obj_header_2 {
        width: 100px;
        top: 40px;
        right: 20px;
        display: none; } }
  .cont_header .obj_header_3 {
    width: 106px;
    position: absolute;
    top: 48px;
    right: 35px; }
    @media screen and (max-width: 600px) {
      .cont_header .obj_header_3 {
        width: 90px;
        top: 0px;
        right: -45px; } }
  .cont_header .obj_header_4 {
    width: 210px;
    position: absolute;
    top: 430px;
    right: 140px; }
    @media screen and (max-width: 600px) {
      .cont_header .obj_header_4 {
        width: 110px;
        top: 290px;
        right: 260px; } }
  .cont_header .obj_header_5 {
    width: 70px;
    position: absolute;
    top: 415px;
    right: 30px; }
    @media screen and (max-width: 600px) {
      .cont_header .obj_header_5 {
        width: 40px;
        top: 275px;
        right: 190px; } }

@keyframes cHeadAnime {
  0% {
    opacity: 0;
    -webkit-clip-path: inset(0 100% 0 0);
    clip-path: inset(0 100% 0 0); }
  100% {
    opacity: 1;
    webkit-clip-path: inset(0);
    clip-path: inset(0); } }
.global_footer {
  display: none;
  background-color: #0080CC;
  color: #fff;
  position: relative; }
  @media screen and (max-width: 600px) {
    .global_footer {
      padding: 50px 0 70px; } }
  .global_footer .inner {
    display: flex; }
    @media screen and (max-width: 600px) {
      .global_footer .inner {
        display: block; } }
  .global_footer .footer_info {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-right: 70px; }
    @media screen and (max-width: 600px) {
      .global_footer .footer_info {
        padding-right: 0;
        align-items: center;
        margin-bottom: 40px; } }
    .global_footer .footer_info h1 {
      width: 260px; }
    .global_footer .footer_info h2 {
      /*font-size: 1.6rem;
      font-weight: 600;
      white-space: nowrap;*/
      width: 260px;
      height: 15px;
      margin-top: 18px;
      margin-bottom: 20px; }
      @media screen and (max-width: 600px) {
        .global_footer .footer_info h2 {
          margin-bottom: 15px;
          margin-top: 20px; } }
    .global_footer .footer_info p {
      font-size: 1.4rem; }
      @media screen and (max-width: 600px) {
        .global_footer .footer_info p {
          margin-bottom: 5px;
          line-height: 1.5; } }
  .global_footer .nav_set {
    display: flex; }
    @media screen and (max-width: 600px) {
      .global_footer .nav_set {
        display: none;
        padding: 0 10px; } }
    .global_footer .nav_set .nav_inner {
      padding: 0 60px 0 20px;
      border-left: solid 1px rgba(255, 255, 255, 0.2); }
      @media screen and (max-width: 600px) {
        .global_footer .nav_set .nav_inner {
          border-left: none;
          border-top: solid 1px rgba(255, 255, 255, 0.2);
          padding: 20px 0; } }
    .global_footer .nav_set .nav_cat {
      font-size: 1.6rem;
      font-weight: 500; }
      @media screen and (max-width: 600px) {
        .global_footer .nav_set .nav_cat {
          font-weight: 600; } }
      .global_footer .nav_set .nav_cat__link {
        color: #fff !important;
        margin-bottom: 5px;
        display: block; }
    .global_footer .nav_set .nav_list {
      margin-top: 10px; }
      .global_footer .nav_set .nav_list a {
        display: block;
        color: #fff;
        font-size: 1.4rem;
        font-weight: 400; }
  .global_footer .pagetop {
    display: block;
    width: 60px;
    height: 60px;
    background-color: #333333;
    border-radius: 50%;
    position: absolute;
    top: 0;
    right: 50%;
    transform: translate(660px, -30px);
    overflow: hidden; }
    @media screen and (max-width: 600px) {
      .global_footer .pagetop {
        right: 15px;
        transform: translate(0px, -10px); } }
    .global_footer .pagetop:before {
      content: "";
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -5px);
      background-image: url("/assets/img/pagetop.svg");
      background-size: contain;
      background-repeat: no-repeat;
      background-position: center center;
      width: 21px;
      height: 40px;
      transition: .5s; }
    .global_footer .pagetop:hover:before {
      transform: translate(-50%, -10px); }
  .global_footer .flex_box {
    display: flex;
    padding: 20px 40px;
    justify-content: space-between;
    background-color: #fff;
    flex-direction: row-reverse;
    font-weight: 500; }
    @media screen and (max-width: 600px) {
      .global_footer .flex_box {
        display: block; } }
    .global_footer .flex_box div {
      display: flex; }
      @media screen and (max-width: 600px) {
        .global_footer .flex_box div {
          justify-content: center; } }
      .global_footer .flex_box div a {
        display: block;
        margin-right: 35px;
        position: relative;
        padding-left: 20px;
        transition: .3s; }
        @media screen and (max-width: 600px) {
          .global_footer .flex_box div a {
            margin-right: 29px;
            padding-left: 0px; } }
        .global_footer .flex_box div a:last-child {
          margin-right: 0; }
        .global_footer .flex_box div a:before {
          content: '';
          position: absolute;
          top: 50%;
          left: 0;
          width: 7px;
          height: 7px;
          transform: translate(0, -50%) rotate(45deg);
          border-top: 2px solid #DBDBDB;
          border-right: 2px solid #DBDBDB;
          transition: 0.3s; }
          @media screen and (max-width: 600px) {
            .global_footer .flex_box div a:before {
              left: -15px;
              width: 5px;
              height: 5px; } }
        .global_footer .flex_box div a:hover {
          opacity: 0.6; }
          .global_footer .flex_box div a:hover:before {
            left: 3px; }
            @media screen and (max-width: 600px) {
              .global_footer .flex_box div a:hover:before {
                left: -15px; } }

.mv_section .mv_inner {
  height: 540px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 80%; }
  @media screen and (max-width: 600px) {
    .mv_section .mv_inner {
      height: 300px;
      width: 100%; } }

.section__title {
  background-color: #000;
  color: #fff;
  line-height: 40px;
  font-size: 1.8rem;
  padding: 0 25px;
  margin-left: 44px;
  margin-bottom: 5px;
  font-weight: bold;
  min-width: 200px;
  text-align: center; }
  @media screen and (max-width: 600px) {
    .section__title {
      min-width: 160px;
      font-size: 1.5rem;
      text-align: center;
      padding: 0 15px;
      line-height: 30px;
      margin-left: 0px;
      margin-bottom: 0;
      letter-spacing: 0.1em; } }
  .section__title_e.txt_en {
    font-size: 6.8rem;
    line-height: 1;
    font-weight: 500; }
    @media screen and (max-width: 600px) {
      .section__title_e.txt_en {
        font-size: 3.8rem;
        letter-spacing: 0.03em;
        font-weight: 400;
        margin-bottom: 20px; } }
  .section__title_area {
    align-items: flex-end;
    display: flex; }
    @media screen and (max-width: 600px) {
      .section__title_area {
        flex-direction: column;
        align-items: center; } }

@keyframes lineAnime {
  0% {
    width: 0%; }
  100% {
    width: 100%; } }
@keyframes floatingAnime {
  0% {
    transform: translate(0, 0); }
  50% {
    transform: translate(0, 20%); }
  100% {
    transform: translate(0, 0); } }
@keyframes itemLoop1 {
  0% {
    background-position: 0 center; }
  100% {
    background-position: -2582px center; } }
@keyframes itemLoop2 {
  0% {
    background-position: 1200px center; }
  100% {
    background-position: -1382px center; } }
@keyframes itemLoop3 {
  0% {
    background-position: 600px center; }
  100% {
    background-position: -1982px center; } }
@keyframes itemLoop4 {
  0% {
    background-position: 1000px center; }
  100% {
    background-position: -1000px center; } }
@keyframes animeW_01 {
  0% {
    transform: rotate(-10deg); }
  50% {
    transform: rotate(10deg); }
  100% {
    transform: rotate(-10deg); } }
@keyframes animeW_02 {
  0% {
    transform: translateY(-100vh); }
  20% {
    transform: translateY(0); }
  80% {
    transform: translateY(0); }
  100% {
    transform: translateY(100vh); } }
@keyframes animeW_05 {
  0% {
    transform: translateX(100vw); }
  10% {
    transform: translateX(0); }
  90% {
    transform: translateX(0); }
  100% {
    transform: translateX(-100vw); } }
@keyframes animeW_06 {
  0% {
    -webkit-clip-path: inset(0 0 100% 0);
    clip-path: inset(0 0 100% 0); }
  10% {
    -webkit-clip-path: inset(0);
    clip-path: inset(0); }
  90% {
    -webkit-clip-path: inset(0);
    clip-path: inset(0); }
  100% {
    -webkit-clip-path: inset(100% 0 0 0);
    clip-path: inset(100% 0 0 0); } }
@keyframes animeW_07 {
  0% {
    transform: translate(calc(-210 * 100vw/1600), calc(-210 * 100vw/1600)) rotate(0deg); }
  30% {
    transform: translate(calc(-210 * 100vw/1600), calc(-210 * 100vw/1600)) rotate(360deg); }
  100% {
    transform: translate(calc(-210 * 100vw/1600), calc(-210 * 100vw/1600)) rotate(360deg); } }
@keyframes animeW_08 {
  0% {
    transform: rotate(0deg); }
  40% {
    transform: rotate(0deg); }
  42% {
    transform: rotate(8deg); }
  44% {
    transform: rotate(0deg); }
  46% {
    transform: rotate(10deg); }
  48% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(0deg); } }
@keyframes messageIn {
  0% {
    transform: translateX(-100px);
    opacity: 0; }
  100% {
    transform: translateX(0px);
    opacity: 1; } }
#home .contents {
  padding-top: 0; }
#home .nav_under {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 10px; }
  #home .nav_under > a, #home .nav_under > div {
    display: flex;
    align-items: center;
    height: 60px;
    width: 100%;
    padding: 0 30px;
    position: relative;
    transition: 0.3s;
    background: url("../img/bg_cont_ttl.png") no-repeat left center/auto 60px; }
    @media screen and (max-width: 600px) {
      #home .nav_under > a, #home .nav_under > div {
        background-size: 320px auto;
        height: 43.34px; } }
    #home .nav_under > a:before, #home .nav_under > div:before {
      content: "";
      width: 10px;
      height: 10px;
      border-top: solid 1px #000;
      border-right: solid 1px #000;
      position: absolute;
      right: 20px;
      top: 50%;
      transform: translate(0, -50%) rotate(45deg);
      transition: 0.3s; }
    #home .nav_under > a.comingsoon, #home .nav_under > div.comingsoon {
      color: #ccc;
      pointer-events: none;
      display: none; }
  #home .nav_under > a {
    align-items: flex-start;
    flex-direction: column;
    justify-content: center;
    line-height: 1.5; }
    #home .nav_under > a span {
      font-size: 90%; }
    #home .nav_under > a:hover {
      color: #0080CC; }
      #home .nav_under > a:hover:before {
        border-color: #0080CC;
        right: 15px; }
  #home .nav_under a:hover {
    color: #0080CC; }
#home .remodal-overlay {
  background: rgba(255, 255, 255, 0.7); }
#home .remodal-close {
  top: -44px;
  background-color: transparent; }
  @media screen and (max-width: 600px) {
    #home .remodal-close {
      z-index: 100; } }
  #home .remodal-close:before {
    content: "";
    width: 4px;
    height: 28px;
    position: absolute;
    left: 50%;
    top: 50%;
    background-color: #0080CC;
    transform: translate(-50%, -50%) rotate(45deg); }
    @media screen and (max-width: 600px) {
      #home .remodal-close:before {
        background-color: rgba(0, 128, 204, 0.9); } }
  #home .remodal-close:after {
    content: "";
    width: 4px;
    height: 28px;
    position: absolute;
    left: 50%;
    top: 50%;
    background-color: #0080CC;
    transform: translate(-50%, -50%) rotate(-45deg); }
    @media screen and (max-width: 600px) {
      #home .remodal-close:after {
        background-color: rgba(0, 128, 204, 0.9); } }
#home .remodal {
  padding: 0;
  background-color: transparent;
  max-width: 443px; }
  @media screen and (max-width: 600px) {
    #home .remodal {
      max-width: 320px; } }
#home .sec_1 {
  height: 100vh;
  position: relative; }
  #home .sec_1 .main_w {
    width: calc(785 * 100vw/1600);
    height: calc(600 * 100vw/1600);
    position: absolute;
    left: 32%;
    top: 50%;
    transform: translate(-50%, -50%);
    opacity: 0; }
    @media screen and (max-width: 600px) {
      #home .sec_1 .main_w {
        width: calc(785 * 100vw / 950);
        height: calc(600 * 100vw / 950);
        left: 48%;
        top: 47%; } }
    #home .sec_1 .main_w > div {
      position: absolute; }
    #home .sec_1 .main_w_01 {
      width: calc(131 * 100vw/1600);
      left: 0;
      top: calc(212 * 100vw/1600);
      z-index: 21;
      animation: animeW_01 3s infinite ease-in-out; }
      @media screen and (max-width: 600px) {
        #home .sec_1 .main_w_01 {
          width: calc(131 * 100vw/950);
          top: calc(212 * 100vw/950); } }
    #home .sec_1 .main_w_02 {
      width: calc(73 * 100vw/1600);
      left: calc(172 * 100vw/1600);
      top: calc(14 * 100vw/1600);
      z-index: 22;
      animation: animeW_02 8s infinite cubic-bezier(0.68, -0.55, 0.265, 1.55); }
      @media screen and (max-width: 600px) {
        #home .sec_1 .main_w_02 {
          width: calc(73 * 100vw/950);
          left: calc(172 * 100vw/950);
          top: calc(14 * 100vw/950); } }
    #home .sec_1 .main_w_03 {
      width: calc(131 * 100vw/1600);
      left: calc(212 * 100vw/1600);
      top: calc(159 * 100vw/1600);
      z-index: 23; }
      @media screen and (max-width: 600px) {
        #home .sec_1 .main_w_03 {
          width: calc(131 * 100vw/950);
          left: calc(212 * 100vw/950);
          top: calc(159 * 100vw/950); } }
    #home .sec_1 .main_w_04 {
      width: calc(306 * 100vw/1600);
      left: calc(410 * 100vw/1600);
      top: calc(105 * 100vw/1600);
      z-index: 26; }
      @media screen and (max-width: 600px) {
        #home .sec_1 .main_w_04 {
          width: calc(306 * 100vw/950);
          left: calc(410 * 100vw/950);
          top: calc(105 * 100vw/950); } }
    #home .sec_1 .main_w_05 {
      width: calc(430 * 100vw/1600);
      left: calc(317 * 100vw/1600);
      top: calc(270 * 100vw/1600);
      z-index: 20;
      animation: animeW_05 6s infinite ease-in-out; }
      @media screen and (max-width: 600px) {
        #home .sec_1 .main_w_05 {
          width: calc(430 * 100vw/950);
          left: calc(317 * 100vw/950);
          top: calc(270 * 100vw/950); } }
    #home .sec_1 .main_w_06 {
      width: calc(63 * 100vw/1600);
      left: calc(428 * 100vw/1600);
      top: 0;
      z-index: 25;
      animation: animeW_06 8s 1s infinite ease-in-out; }
      @media screen and (max-width: 600px) {
        #home .sec_1 .main_w_06 {
          width: calc(63 * 100vw/950);
          left: calc(428 * 100vw/950); } }
    #home .sec_1 .main_w_07 {
      width: calc(210 * 100vw/1600);
      left: calc(300 * 100vw/1600);
      top: calc(390 * 100vw/1600);
      z-index: 27;
      animation: animeW_07 7s infinite cubic-bezier(0.68, -0.55, 0.265, 1.55); }
      @media screen and (max-width: 600px) {
        #home .sec_1 .main_w_07 {
          width: calc(210 * 100vw/950);
          left: calc(300 * 100vw/950);
          top: calc(390 * 100vw/950); } }
      #home .sec_1 .main_w_07 img {
        transform: translate(calc(210 * 100vw/1600), calc(210 * 100vw/1600)); }
        @media screen and (max-width: 600px) {
          #home .sec_1 .main_w_07 img {
            transform: translate(calc(210 * 100vw/950,calc(210 * 100vw/950))); } }
    #home .sec_1 .main_w_08 {
      width: calc(218 * 100vw/1600);
      left: calc(563 * 100vw/1600);
      top: calc(316 * 100vw/1600);
      z-index: 28;
      animation: animeW_08 7s 0.3s infinite cubic-bezier(0.68, -0.55, 0.265, 1.55); }
      @media screen and (max-width: 600px) {
        #home .sec_1 .main_w_08 {
          width: calc(218 * 100vw/950);
          left: calc(563 * 100vw/950);
          top: calc(316 * 100vw/950); } }
    #home .sec_1 .main_w_09 {
      width: calc(69 * 100vw/1600);
      left: calc(678 * 100vw/1600);
      top: calc(519 * 100vw/1600);
      z-index: 29; }
  #home .sec_1 .main_ttl {
    position: absolute;
    left: 53%;
    top: 52%;
    transform: translate(-55%, -50%);
    display: flex; }
    @media screen and (max-width: 600px) {
      #home .sec_1 .main_ttl {
        top: 72%;
        transform: translate(-52%, -50%); } }
    #home .sec_1 .main_ttl span {
      display: block; }
      #home .sec_1 .main_ttl span:nth-child(1) {
        width: calc(186 * 100vw/1600); }
        @media screen and (max-width: 600px) {
          #home .sec_1 .main_ttl span:nth-child(1) {
            width: calc(186 * 100vw/600); } }
      #home .sec_1 .main_ttl span:nth-child(2) {
        width: calc(250 * 100vw/1600);
        margin-left: calc(20 * 100vw/1600);
        opacity: 0;
        animation: w_Anim 1s 0.6s forwards; }
        @media screen and (max-width: 600px) {
          #home .sec_1 .main_ttl span:nth-child(2) {
            margin-left: calc(20 * 100vw/600);
            width: calc(250 * 100vw/600); } }
  #home .sec_1 .main_obj_1 {
    position: absolute;
    right: calc(30 * 100vw/1600);
    top: 300px;
    width: calc(120 * 100vw/1600);
    opacity: 0; }
    @media screen and (max-width: 600px) {
      #home .sec_1 .main_obj_1 {
        width: calc(120 * 100vw/800);
        right: 10px;
        top: auto;
        bottom: 80px; } }
  #home .sec_1 .main_obj_2 {
    position: absolute;
    right: calc(100 * 100vw/1600);
    bottom: 100px;
    width: calc(266 * 100vw/1600);
    opacity: 0; }
    @media screen and (max-width: 600px) {
      #home .sec_1 .main_obj_2 {
        width: calc(266 * 100vw/800);
        right: auto;
        left: 10px;
        bottom: 100px; } }
  #home .sec_1 .main_obj_3 {
    position: absolute;
    width: calc(69 * 100vw/1600);
    right: calc(380 * 100vw/1600);
    bottom: 180px;
    opacity: 0; }
    @media screen and (max-width: 600px) {
      #home .sec_1 .main_obj_3 {
        width: calc(69 * 100vw/550);
        right: auto;
        left: 25px;
        bottom: auto;
        top: 85px; } }
  #home .sec_1 .main_bg {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0; }
    #home .sec_1 .main_bg:after {
      content: "";
      background: url(../img/main_bg.svg) repeat center/2400px auto;
      position: absolute;
      width: 100%;
      height: 100%;
      left: calc(-3400px * 300/2400*8);
      top: calc(1800px * 300/2400*8);
      transform: scale(8); }
      @media screen and (max-width: 600px) {
        #home .sec_1 .main_bg:after {
          background: url(../img/main_bg.svg) repeat 63% 180%/1200px auto;
          left: calc(-26vw * 6);
          top: calc(55.54vw * 6);
          transform: scale(6); } }
    #home .sec_1 .main_bg__item {
      position: absolute;
      width: 100%;
      height: 155px;
      left: 0;
      top: calc(50% - 52px); }
      @media screen and (max-width: 600px) {
        #home .sec_1 .main_bg__item {
          width: 180%;
          left: -40%; } }
      #home .sec_1 .main_bg__item span {
        display: block;
        width: 100%;
        height: 100%;
        background: url(../img/item_2.png) repeat-x 0 center/2582px auto; }
      #home .sec_1 .main_bg__item:nth-child(1) {
        transform: translateY(-220px); }
        @media screen and (max-width: 600px) {
          #home .sec_1 .main_bg__item:nth-child(1) {
            transform: translateY(-230px) scale(0.6); } }
        #home .sec_1 .main_bg__item:nth-child(1) span {
          animation: itemLoop1 120s infinite linear; }
      #home .sec_1 .main_bg__item:nth-child(2) {
        transform: translateY(220px); }
        @media screen and (max-width: 600px) {
          #home .sec_1 .main_bg__item:nth-child(2) {
            transform: translateY(10px) scale(0.6); } }
        #home .sec_1 .main_bg__item:nth-child(2) span {
          animation: itemLoop2 140s infinite linear reverse; }
#home .sec_2 {
  height: 100vh;
  width: 100%; }
  @media screen and (max-width: 600px) {
    #home .sec_2 {
      height: auto; } }
  #home .sec_2__wrap {
    display: flex;
    align-items: stretch;
    height: 100%; }
    @media screen and (max-width: 600px) {
      #home .sec_2__wrap {
        height: auto;
        flex-direction: column; } }
  #home .sec_2__left {
    width: 400px;
    background-color: #FF6BA8;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    padding-left: 30px;
    padding-right: 20px;
    padding-top: 60px;
    flex-direction: column;
    overflow: hidden; }
    @media screen and (max-width: 600px) {
      #home .sec_2__left {
        padding-left: 15px;
        padding-right: 5px;
        padding-top: 100px;
        padding-bottom: 40px;
        width: 100%; } }
    #home .sec_2__left h2 {
      width: 270px;
      opacity: 0;
      transform: translateX(-100px); }
      @media screen and (max-width: 600px) {
        #home .sec_2__left h2 {
          width: 240px; } }
    #home .sec_2__left p {
      font-size: 1.5rem;
      line-height: 2;
      margin-top: 50px;
      transition: 0.6s;
      opacity: 0;
      transform: translateX(-100px); }
      @media screen and (max-width: 600px) {
        #home .sec_2__left p {
          margin-top: 30px; } }
  #home .sec_2__right {
    flex: 1;
    background-color: #EAEAEA;
    position: relative; }
    @media screen and (max-width: 600px) {
      #home .sec_2__right {
        padding-bottom: 120px; } }
    #home .sec_2__right .bg_blue {
      width: calc(510/1200 * (100vw - 400px));
      height: calc(670/1200 * (100vw - 400px));
      background-color: #0080CC;
      position: absolute;
      right: 0;
      top: 0;
      z-index: 1; }
      @media screen and (max-width: 600px) {
        #home .sec_2__right .bg_blue {
          width: 66vw;
          height: 600px;
          right: 0;
          top: 60px; } }
    #home .sec_2__right .bg_yellow {
      width: calc(580/1200 * (100vw - 400px));
      height: calc(360/1200 * (100vw - 400px));
      background-color: #FFDA00;
      position: absolute;
      left: 0;
      bottom: 0;
      z-index: 2; }
      @media screen and (max-width: 600px) {
        #home .sec_2__right .bg_yellow {
          width: 76vw;
          height: 500px;
          left: 0;
          bottom: 260px; } }
    #home .sec_2__right .txt h2 {
      font-family: "Roboto", serif;
      font-size: 6.4rem;
      font-weight: 600;
      -webkit-text-stroke-width: 1px;
      -webkit-text-stroke-color: #fff;
      color: transparent;
      letter-spacing: 0.1em;
      line-height: 1.3;
      position: absolute;
      z-index: 10; }
      @media screen and (max-width: 600px) {
        #home .sec_2__right .txt h2 {
          right: 0px !important;
          top: -40px !important;
          left: auto !important;
          font-size: 6.0rem;
          line-height: 1.1; } }
    #home .sec_2__right .txt a {
      width: 240px;
      position: absolute;
      z-index: 10;
      padding-bottom: 2px; }
      @media screen and (max-width: 600px) {
        #home .sec_2__right .txt a {
          left: auto !important;
          bottom: -15px !important;
          left: 20px !important;
          right: auto !important;
          top: auto !important; } }
      #home .sec_2__right .txt a big {
        font-size: 2.4rem;
        font-weight: 600;
        margin-right: 0.1em;
        display: inline-block;
        position: relative;
        top: -0.05em; }
        #home .sec_2__right .txt a big.txt_blue {
          color: #0080CC; }
        #home .sec_2__right .txt a big.txt_pink {
          color: #FF6BA8; }
        #home .sec_2__right .txt a big.txt_yellow {
          color: #FFDA00; }
      #home .sec_2__right .txt a.comingsoon {
        pointer-events: none;
        color: #ccc;
        display: none; }
        #home .sec_2__right .txt a.comingsoon big {
          opacity: 0.4; }
        #home .sec_2__right .txt a.comingsoon .arrow:before {
          border-color: #333; }
    #home .sec_2__right .box_company {
      position: absolute;
      left: 0;
      top: 0;
      z-index: 4; }
      #home .sec_2__right .box_company figure {
        width: calc(360/1200 * (100vw - 400px));
        height: calc(400/1200 * (100vw - 400px));
        background-repeat: no-repeat;
        background-position: top center;
        background-size: cover; }
      #home .sec_2__right .box_company .txt h2 {
        right: calc(-100/1200 * (100vw - 400px));
        top: 110px; }
      #home .sec_2__right .box_company .txt a {
        right: calc(-60/1200 * (100vw - 400px));
        top: 190px; }
      #home .sec_2__right .box_company .obj_1 {
        position: absolute;
        width: calc(207/1200 * (100vw - 400px));
        left: calc(265/1200 * (100vw - 400px));
        top: 45px;
        z-index: 11;
        transform: rotate(10deg);
        animation: obj_Loop1 4s infinite ease-in-out; }
        @media screen and (max-width: 600px) {
          #home .sec_2__right .box_company .obj_1 {
            width: 30vw;
            left: 205px;
            top: -108px; } }
      #home .sec_2__right .box_company .obj_2 {
        position: absolute;
        width: calc(34/1200 * (100vw - 400px));
        left: calc(344/1200 * (100vw - 400px));
        bottom: calc(-110/1200 * (100vw - 400px));
        z-index: 12; }
        @media screen and (max-width: 600px) {
          #home .sec_2__right .box_company .obj_2 {
            width: 22px;
            left: 340px;
            top: 190px; } }
    #home .sec_2__right .box_business {
      position: absolute;
      right: 0;
      top: 140px;
      z-index: 4; }
      #home .sec_2__right .box_business figure {
        width: calc(340/1200 * (100vw - 400px));
        height: calc(260/1200 * (100vw - 400px));
        background-repeat: no-repeat;
        background-position: top center;
        background-size: cover; }
      #home .sec_2__right .box_business .txt h2 {
        left: calc(-65/1200 * (100vw - 400px));
        bottom: 45px; }
      #home .sec_2__right .box_business .txt a {
        left: calc(-65/1200 * (100vw - 400px));
        bottom: -7px; }
      #home .sec_2__right .box_business .obj_5 {
        position: absolute;
        width: calc(167/1200 * (100vw - 400px));
        left: calc(130/1200 * (100vw - 400px));
        top: calc(320/1200 * (100vw - 400px));
        z-index: 3; }
        @media screen and (max-width: 600px) {
          #home .sec_2__right .box_business .obj_5 {
            width: 26vw;
            left: 10px;
            top: 275px; } }
    #home .sec_2__right .box_people {
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%);
      margin-left: calc(35/1200 * (100vw - 400px));
      margin-top: calc(-45/1200 * (100vw - 400px));
      z-index: 6; }
      #home .sec_2__right .box_people figure {
        width: calc(280/1200 * (100vw - 400px));
        height: calc(370/1200 * (100vw - 400px));
        background-repeat: no-repeat;
        background-position: top center;
        background-size: cover; }
      #home .sec_2__right .box_people .txt h2 {
        left: calc(-72/1200 * (100vw - 400px));
        bottom: 50px; }
      #home .sec_2__right .box_people .txt a {
        left: calc(-70/1200 * (100vw - 400px));
        bottom: -26px; }
      #home .sec_2__right .box_people .obj_6 {
        position: absolute;
        width: calc(131/1200 * (100vw - 400px));
        left: calc(127/1200 * (100vw - 400px));
        top: calc(-174/1200 * (100vw - 400px));
        z-index: 3; }
        @media screen and (max-width: 600px) {
          #home .sec_2__right .box_people .obj_6 {
            width: 20vw;
            left: 300px;
            top: 260px; } }
    #home .sec_2__right .box_environment {
      position: absolute;
      left: calc(100/1200 * (100vw - 400px));
      bottom: 0;
      z-index: 4; }
      #home .sec_2__right .box_environment figure {
        width: calc(380/1200 * (100vw - 400px));
        height: calc(240/1200 * (100vw - 400px));
        background-repeat: no-repeat;
        background-position: top center;
        background-size: cover; }
      #home .sec_2__right .box_environment .txt h2 {
        right: calc(-144/1200 * (100vw - 400px));
        bottom: 5px;
        text-align: right; }
      #home .sec_2__right .box_environment .txt a {
        left: -50px;
        top: -44px; }
      #home .sec_2__right .box_environment .obj_4 {
        position: absolute;
        width: calc(207/1200 * (100vw - 400px));
        left: calc(-80/1200 * (100vw - 400px));
        top: calc(-250/1200 * (100vw - 400px));
        z-index: 4;
        -webkit-clip-path: inset(0 0 100% 0);
        clip-path: inset(0 0 100% 0);
        animation: obj_Loop4 3s infinite ease-in-out; }
        @media screen and (max-width: 600px) {
          #home .sec_2__right .box_environment .obj_4 {
            width: 40vw;
            left: 20px;
            top: 280px; } }
    #home .sec_2__right .box_recruit {
      position: absolute;
      right: calc(130/1200 * (100vw - 400px));
      bottom: 60px;
      z-index: 4; }
      @media screen and (max-width: 600px) {
        #home .sec_2__right .box_recruit {
          margin-bottom: 60px; } }
      #home .sec_2__right .box_recruit figure {
        width: calc(260/1200 * (100vw - 400px));
        height: calc(250/1200 * (100vw - 400px));
        background-repeat: no-repeat;
        background-position: top center;
        background-size: cover; }
      #home .sec_2__right .box_recruit .txt h2 {
        right: -115px;
        top: 10px; }
      #home .sec_2__right .box_recruit .txt a {
        right: -60px;
        bottom: 25px; }
      #home .sec_2__right .box_recruit .obj_3 {
        position: absolute;
        width: calc(144/1200 * (100vw - 400px));
        left: calc(-130/1200 * (100vw - 400px));
        bottom: calc(-34/1200 * (100vw - 400px));
        z-index: 6; }
        @media screen and (max-width: 600px) {
          #home .sec_2__right .box_recruit .obj_3 {
            width: 21vw;
            left: 158px;
            top: 277px; } }
  @media screen and (max-width: 600px) {
    #home .sec_2 .box {
      position: relative !important;
      margin-top: 140px !important;
      transform: none !important;
      left: auto !important;
      right: auto !important;
      top: auto !important;
      bottom: auto !important;
      width: 100%; }
      #home .sec_2 .box:nth-child(odd) figure {
        margin-left: 10%; } }
  #home .sec_2 .box figure {
    -webkit-clip-path: inset(0 100% 0 0);
    clip-path: inset(0 100% 0 0);
    transition: .8s .1s; }
    @media screen and (max-width: 600px) {
      #home .sec_2 .box figure {
        width: 90% !important;
        height: 240px !important; } }
  #home .sec_2 .box .txt h2 {
    opacity: 0;
    transform: translateX(-100px);
    transition: .6s .6s; }
  #home .sec_2.active .box figure {
    -webkit-clip-path: inset(0);
    clip-path: inset(0);
    overflow: hidden; }
  #home .sec_2.active .box .txt h2 {
    opacity: 1;
    transform: translateX(0); }
  #home .sec_2.active .sec_2__left h2 {
    animation: messageIn 0.6s 0.4s ease-in-out forwards; }
  #home .sec_2.active .sec_2__left p {
    animation: messageIn 0.6s 1s ease-in-out forwards; }
@media screen and (min-width: 601px) {
  #home .load_comp .sec_1 .main_ttl {
    animation: ttl_Anim2 1s 1.2s ease-in-out forwards; } }
#home .load_comp .sec_1 .main_w {
  animation: w_Anim 1.2s 2.6s ease-in-out forwards; }
  @media screen and (max-width: 600px) {
    #home .load_comp .sec_1 .main_w {
      animation: w_Anim 2s 2.8s ease-in-out forwards; } }
#home .load_comp .sec_1 .main_obj_1 {
  animation: obj_Anim1 0.6s 3s ease-in-out forwards; }
  @media screen and (max-width: 600px) {
    #home .load_comp .sec_1 .main_obj_1 {
      animation: obj_Anim1 2s 1s ease-in-out forwards; } }
#home .load_comp .sec_1 .main_obj_2 {
  animation: obj_Anim2 1s 2s ease-in-out forwards; }
  @media screen and (max-width: 600px) {
    #home .load_comp .sec_1 .main_obj_2 {
      animation: obj_Anim2 2s 2s ease-in-out forwards; } }
#home .load_comp .sec_1 .main_obj_3 {
  animation: obj_Anim3 1.6s 2s ease-in-out forwards; }
  @media screen and (max-width: 600px) {
    #home .load_comp .sec_1 .main_obj_3 {
      animation: obj_Anim3 2s 2.6s ease-in-out forwards; } }
#home .load_comp .sec_1 .main_bg:after {
  animation: bg_Anim 1s 1.2s ease-in-out forwards; }
  @media screen and (max-width: 600px) {
    #home .load_comp .sec_1 .main_bg:after {
      animation: bg_Anim_sp 1s 1.6s ease-in-out forwards; } }

@keyframes ttl_Anim1 {
  0% {
    opacity: 0;
    transform: translateX(-60px); }
  100% {
    opacity: 1;
    transform: translateX(0); } }
@keyframes ttl_Anim2 {
  0% {
    left: 53%; }
  100% {
    left: 75%; } }
@keyframes w_Anim {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@keyframes obj_Anim1 {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@keyframes obj_Anim2 {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@keyframes obj_Anim3 {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@keyframes bg_Anim {
  0% {
    left: calc(-3400px * 300/2400*8);
    top: calc(1800px * 300/2400*8);
    transform: scale(8); }
  100% {
    transform: scale(1);
    left: 0;
    top: 0; } }
@keyframes bg_Anim_sp {
  0% {
    transform: scale(6);
    left: calc(-26vw * 6);
    top: calc(55.54vw * 6); }
  100% {
    transform: scale(1);
    left: 0;
    top: 0; } }
@keyframes bgitem_Anim1 {
  0% {
    -webkit-clip-path: inset(0 100% 0 0);
    clip-path: inset(0 100% 0 0); }
  100% {
    -webkit-clip-path: inset(0);
    clip-path: inset(0); } }
@keyframes bgitem_Anim2 {
  0% {
    -webkit-clip-path: inset(0 0 0 100%);
    clip-path: inset(0 0 0 100%); }
  100% {
    -webkit-clip-path: inset(0);
    clip-path: inset(0); } }
@keyframes obj_Loop1 {
  0% {
    transform: rotate(10deg); }
  50% {
    transform: rotate(-10deg); }
  100% {
    transform: rotate(10deg); } }
@keyframes obj_Loop2 {
  0% {
    -webkit-clip-path: inset(0 0 100% 0);
    clip-path: inset(0 0 100% 0); }
  15% {
    -webkit-clip-path: inset(0);
    clip-path: inset(0); }
  85% {
    -webkit-clip-path: inset(0);
    clip-path: inset(0); }
  100% {
    -webkit-clip-path: inset(100% 0 0 0);
    clip-path: inset(100% 0 0 0); } }
@keyframes obj_Loop1 {
  0% {
    transform: rotate(10deg); }
  50% {
    transform: rotate(-10deg); }
  100% {
    transform: rotate(10deg); } }
@keyframes obj_Loop4 {
  0% {
    -webkit-clip-path: inset(0 0 100% 0);
    clip-path: inset(0 0 100% 0); }
  30% {
    -webkit-clip-path: inset(0);
    clip-path: inset(0); }
  70% {
    -webkit-clip-path: inset(0);
    clip-path: inset(0); }
  100% {
    -webkit-clip-path: inset(100% 0 0 0);
    clip-path: inset(100% 0 0 0); } }
@keyframes lineAnime {
  0% {
    width: 0%; }
  100% {
    width: 100%; } }
@keyframes floatingAnime {
  0% {
    transform: translate(0, 0); }
  50% {
    transform: translate(0, 20%); }
  100% {
    transform: translate(0, 0); } }
#company.index .sec_1 {
  background-color: #A6E2E5; }
  @media screen and (max-width: 600px) {
    #company.index .sec_1 {
      position: relative;
      padding-bottom: 40px; }
      #company.index .sec_1 .fp-scroller {
        padding: 0px 0 0px; } }
  #company.index .sec_1 .fp-tableCell {
    vertical-align: inherit; }
  #company.index .sec_1 .cont_header {
    background-color: #A6E2E5;
    height: auto;
    overflow: visible; }
  #company.index .sec_1 .box_slogan {
    display: flex;
    align-items: center;
    background-color: #fff;
    width: 1080px;
    position: absolute;
    bottom: 50px;
    left: 50%;
    margin-left: -550px;
    z-index: 10;
    padding: 25px 20px; }
    @media screen and (max-width: 600px) {
      #company.index .sec_1 .box_slogan {
        width: 90%;
        margin: 75px auto 0;
        position: static;
        flex-direction: column;
        padding: 20px; } }
    #company.index .sec_1 .box_slogan figure {
      width: 220px;
      margin: 0 50px 0 30px; }
      @media screen and (max-width: 600px) {
        #company.index .sec_1 .box_slogan figure {
          width: 140px;
          margin: 0 auto 15px; } }
    #company.index .sec_1 .box_slogan p {
      font-size: 1.8rem;
      line-height: 1.7; }
      @media screen and (max-width: 600px) {
        #company.index .sec_1 .box_slogan p {
          font-size: 1.4rem;
          text-align: justify;
          text-justify: inter-ideograph; }
          #company.index .sec_1 .box_slogan p br {
            display: none; } }
#company.index .ttl_business {
  display: flex;
  position: absolute;
  left: 15px;
  top: 80px; }
  @media screen and (max-width: 600px) {
    #company.index .ttl_business {
      display: block;
      transform: none;
      position: relative;
      left: auto;
      top: auto; } }
  #company.index .ttl_business p {
    font-family: "Roboto", serif;
    font-size: 16rem;
    font-weight: 600;
    color: #F6F6F6;
    letter-spacing: 0.12em;
    line-height: 1; }
    @media screen and (max-width: 600px) {
      #company.index .ttl_business p {
        font-size: 6rem;
        letter-spacing: 0.08em; } }
  #company.index .ttl_business h2 {
    font-size: 2.4rem;
    font-weight: 500;
    color: #0080CC;
    letter-spacing: 0.12em;
    position: relative;
    padding: 10px; }
    @media screen and (max-width: 600px) {
      #company.index .ttl_business h2 {
        font-size: 1.8rem;
        padding: 0 15px 0 0;
        text-align: right;
        line-height: 1.2; } }
#company.index .box_business {
  width: 960px;
  display: flex;
  background-color: #0080CC;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  margin-top: 80px;
  border-radius: 10px;
  padding: 40px 30px 50px 0; }
  @media screen and (max-width: 600px) {
    #company.index .box_business {
      width: 320px;
      position: relative;
      margin: 100px auto 0;
      border-radius: 6px;
      padding: 15px 0 25px 0;
      display: block;
      transform: none;
      left: auto;
      top: auto; } }
  #company.index .box_business .tab {
    width: 370px; }
    @media screen and (max-width: 600px) {
      #company.index .box_business .tab {
        width: 100%; } }
    #company.index .box_business .tab a {
      display: flex;
      align-items: center;
      width: 296px;
      height: 80px;
      border-top-right-radius: 40px;
      border-bottom-right-radius: 40px;
      background-color: #fff;
      color: #ababab;
      margin-bottom: 20px;
      font-size: 2.6rem;
      font-weight: 500;
      padding-left: 30px;
      letter-spacing: 0.05em;
      line-height: 1;
      position: relative;
      transition: 0.3s; }
      @media screen and (max-width: 600px) {
        #company.index .box_business .tab a {
          font-size: 1.7rem;
          height: 42px;
          margin-bottom: 10px; } }
      #company.index .box_business .tab a.active {
        font-size: 3.6rem;
        color: #fff;
        height: 125px;
        background: transparent;
        letter-spacing: 0.1em;
        margin-bottom: 40px;
        pointer-events: none; }
        @media screen and (max-width: 600px) {
          #company.index .box_business .tab a.active {
            font-size: 2.6rem;
            height: 50px;
            margin-bottom: 15px; } }
        #company.index .box_business .tab a.active:before {
          width: 74px;
          height: 74px;
          right: 0px;
          border-color: #fff; }
          @media screen and (max-width: 600px) {
            #company.index .box_business .tab a.active:before {
              width: 30px;
              height: 30px; } }
      #company.index .box_business .tab a:before {
        content: "";
        width: 10px;
        height: 10px;
        border-top: solid 2px #ccc;
        border-right: solid 2px #ccc;
        position: absolute;
        right: 30px;
        top: 50%;
        transform: translate(0, -50%) rotate(45deg);
        transition: 0.3s; }
      #company.index .box_business .tab a:last-child {
        margin-bottom: 0; }
      #company.index .box_business .tab a:not(.active):hover {
        color: #0080CC; }
        #company.index .box_business .tab a:not(.active):hover:before {
          right: 25px;
          border-color: #0080CC; }
  #company.index .box_business .txt {
    flex: 1; }
    @media screen and (max-width: 600px) {
      #company.index .box_business .txt {
        width: 100%;
        padding: 25px 15px; } }
    #company.index .box_business .txt p {
      color: #fff;
      font-size: 1.8rem;
      text-align: justify;
      text-justify: inter-ideograph;
      margin-bottom: 1.3em; }
      @media screen and (max-width: 600px) {
        #company.index .box_business .txt p {
          font-size: 1.4rem; } }
    #company.index .box_business .txt .box_strengths {
      background-color: #fff;
      border-radius: 8px;
      padding: 16px 25px 20px; }
      #company.index .box_business .txt .box_strengths h3 {
        font-size: 2.4rem;
        font-weight: 500;
        margin-bottom: 0.4em;
        letter-spacing: 0.05em; }
        @media screen and (max-width: 600px) {
          #company.index .box_business .txt .box_strengths h3 {
            font-size: 2.0rem; } }
      #company.index .box_business .txt .box_strengths ul li {
        font-size: 1.8rem;
        font-weight: 600;
        padding-left: 21px;
        line-height: 1.5;
        margin: 0.3em 0;
        position: relative; }
        @media screen and (max-width: 600px) {
          #company.index .box_business .txt .box_strengths ul li {
            font-size: 1.4rem; } }
        #company.index .box_business .txt .box_strengths ul li:before {
          content: "";
          width: 16px;
          height: 16px;
          background: url("../../assets/img/icon_check.png") no-repeat center/contain;
          position: absolute;
          left: 0;
          top: 0.4em; }
  #company.index .box_business .btn_businessfield {
    position: absolute;
    top: -170px;
    right: -120px;
    width: 160px;
    height: 160px;
    background-color: #FFDA00;
    border-radius: 80px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    line-height: 1.6;
    font-weight: 500;
    transition: 0.4s; }
    @media screen and (max-width: 600px) {
      #company.index .box_business .btn_businessfield {
        position: relative;
        top: auto;
        right: auto;
        width: 86%;
        height: 50px;
        border-radius: 0px;
        margin: 0 auto;
        padding-right: 40px; }
        #company.index .box_business .btn_businessfield br {
          display: none; } }
    #company.index .box_business .btn_businessfield i {
      background-color: #000;
      width: 60px;
      height: 40px;
      position: absolute;
      right: 0px;
      bottom: -12px;
      overflow: hidden;
      transition: 0.4s; }
      @media screen and (max-width: 600px) {
        #company.index .box_business .btn_businessfield i {
          bottom: -10px;
          right: -15px; } }
      #company.index .box_business .btn_businessfield i:before {
        content: "";
        width: 10px;
        height: 10px;
        border-top: solid 1px #fff;
        border-right: solid 1px #fff;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-60%, -50%) rotate(45deg); }
    #company.index .box_business .btn_businessfield:hover {
      color: #0080CC; }
      #company.index .box_business .btn_businessfield:hover i {
        background-color: #FF6BA8; }
        #company.index .box_business .btn_businessfield:hover i:before {
          animation: arrowMove 0.3s ease-in-out forwards; }
#company.index .sec_2 {
  background-color: #E8E8E8; }
  @media screen and (max-width: 600px) {
    #company.index .sec_2 {
      position: relative; }
      #company.index .sec_2 .fp-scroller {
        padding: 60px 0 100px; } }
  #company.index .sec_2 .bg__item {
    position: absolute;
    width: 100%;
    height: 155px;
    left: 0;
    top: calc(50%);
    opacity: 0.8; }
    @media screen and (max-width: 600px) {
      #company.index .sec_2 .bg__item {
        width: 180%;
        left: -40%; } }
    #company.index .sec_2 .bg__item span {
      display: block;
      width: 100%;
      height: 100%;
      background: url(../img/item_2.png) repeat-x 0 center/2582px auto; }
    #company.index .sec_2 .bg__item_1 {
      transform: translateY(-260px); }
      @media screen and (max-width: 600px) {
        #company.index .sec_2 .bg__item_1 {
          transform: translateY(-360px) scale(0.6); } }
      #company.index .sec_2 .bg__item_1 span {
        animation: itemLoop1 120s infinite linear; }
    #company.index .sec_2 .bg__item_2 {
      transform: translateY(0px); }
      @media screen and (max-width: 600px) {
        #company.index .sec_2 .bg__item_2 {
          transform: translateY(-160px) scale(0.6); } }
      #company.index .sec_2 .bg__item_2 span {
        animation: itemLoop2 140s infinite linear reverse; }
    #company.index .sec_2 .bg__item_3 {
      transform: translateY(260px); }
      @media screen and (max-width: 600px) {
        #company.index .sec_2 .bg__item_3 {
          transform: translateY(10px) scale(0.6); } }
      #company.index .sec_2 .bg__item_3 span {
        animation: itemLoop1 120s infinite linear; }
#company.index .sec_3 {
  background: url("../../company/img/bg_worldmap.jpg") no-repeat center/cover; }
  @media screen and (max-width: 600px) {
    #company.index .sec_3 {
      position: relative;
      background-position: center 30px;
      background-size: 110%; }
      #company.index .sec_3 .fp-scroller {
        padding: 60px 0 100px; } }
#company.index .sec_4 {
  background: url("../../company/img/bg_ec.jpg") no-repeat center bottom/cover; }
  @media screen and (max-width: 600px) {
    #company.index .sec_4 {
      position: relative;
      background-position: center 50px;
      background-size: contain; }
      #company.index .sec_4 .fp-scroller {
        padding: 60px 0 100px; } }
#company.index .sec_5 {
  background-color: #F3F3F3; }
  @media screen and (max-width: 600px) {
    #company.index .sec_5 {
      position: relative; }
      #company.index .sec_5 .fp-scroller {
        padding: 80px 0 100px; } }
  #company.index .sec_5 .ttl_features {
    color: #FF6BA8;
    margin-bottom: 40px; }
    #company.index .sec_5 .ttl_features p {
      font-size: 2.2rem;
      font-weight: 500;
      text-align: center;
      font-family: "Roboto", serif;
      letter-spacing: 0.3em;
      margin-bottom: 5px; }
      @media screen and (max-width: 600px) {
        #company.index .sec_5 .ttl_features p {
          font-size: 1.6rem; } }
    #company.index .sec_5 .ttl_features h2 {
      font-size: 4.4rem;
      font-weight: 600;
      text-align: center;
      line-height: 1;
      letter-spacing: 0.05em; }
      @media screen and (max-width: 600px) {
        #company.index .sec_5 .ttl_features h2 {
          font-size: 3.2rem; } }
  #company.index .sec_5 .box_features {
    display: flex;
    gap: 15px; }
    @media screen and (max-width: 600px) {
      #company.index .sec_5 .box_features {
        flex-direction: column; } }
    #company.index .sec_5 .box_features__item {
      width: 390px;
      background-color: #fff;
      border-radius: 8px; }
      @media screen and (max-width: 600px) {
        #company.index .sec_5 .box_features__item {
          width: 100%; } }
      #company.index .sec_5 .box_features__item h3 {
        color: #FF6BA8;
        font-size: 2.6rem;
        font-weight: 600;
        padding: 15px 20px 10px 150px;
        position: relative; }
        @media screen and (max-width: 600px) {
          #company.index .sec_5 .box_features__item h3 {
            padding-left: 140px; } }
        #company.index .sec_5 .box_features__item h3:before {
          content: "";
          width: 80px;
          height: 84px;
          background: url("../../company/img/img_point1.png") no-repeat center/contain;
          position: absolute;
          left: 50px;
          top: 0; }
          @media screen and (max-width: 600px) {
            #company.index .sec_5 .box_features__item h3:before {
              left: 40px; } }
      #company.index .sec_5 .box_features__item figure {
        width: 200px;
        margin: 20px auto 15px; }
      #company.index .sec_5 .box_features__item p {
        padding: 0px 20px 20px; }
      #company.index .sec_5 .box_features__item:nth-child(2) h3:before {
        background: url("../../company/img/img_point2.png") no-repeat center/contain; }
      #company.index .sec_5 .box_features__item:nth-child(3) h3:before {
        background: url("../../company/img/img_point3.png") no-repeat center/contain; }
#company.index .sec_6 .ttl_idea {
  font-size: 4.4rem;
  font-weight: 600;
  line-height: 1.3;
  margin-bottom: 50px;
  margin-top: 40px;
  left: 46%;
  position: relative;
  z-index: 1; }
  @media screen and (max-width: 600px) {
    #company.index .sec_6 .ttl_idea {
      font-size: 2.4rem;
      margin-top: 100px;
      left: 40%;
      margin-bottom: 40px; } }
  #company.index .sec_6 .ttl_idea i {
    width: 260px;
    height: 260px;
    background: url("../../company/img/pic_idea.png") no-repeat center/contain;
    display: block;
    flex-direction: column;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translate(-100%, -50%); }
    @media screen and (max-width: 600px) {
      #company.index .sec_6 .ttl_idea i {
        width: 140px;
        height: 140px; } }
    #company.index .sec_6 .ttl_idea i:before {
      content: "";
      width: 87%;
      height: 87%;
      position: absolute;
      border-radius: 100%;
      border: solid 100px rgba(255, 218, 0, 0.1);
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%) scale(0.4);
      opacity: 0;
      z-index: -3;
      pointer-events: none;
      animation: rippleAnime 4s infinite ease-in-out; }
    #company.index .sec_6 .ttl_idea i:after {
      content: "";
      width: 277%;
      height: 277%;
      position: absolute;
      border-radius: 100%;
      border: dotted 2px #FFDA00;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%) scale(0.4);
      opacity: 0;
      z-index: -2;
      animation: rippleAnime2 4s infinite ease-in-out; }
#company.index .sec_6 .box_idea {
  display: flex;
  gap: 20px;
  position: relative;
  z-index: 2; }
  @media screen and (max-width: 600px) {
    #company.index .sec_6 .box_idea {
      width: 100%;
      flex-direction: column;
      gap: 10px;
      padding-bottom: 180px; } }
  #company.index .sec_6 .box_idea__item {
    width: calc(50% - 10px);
    border: solid 1px #eee;
    background-color: rgba(255, 255, 255, 0.6);
    padding: 20px;
    border-radius: 8px; }
    @media screen and (max-width: 600px) {
      #company.index .sec_6 .box_idea__item {
        width: 100%; } }
    #company.index .sec_6 .box_idea__item h3 {
      color: #0080CC;
      font-size: 2.4rem;
      font-weight: 600;
      margin-bottom: 0.5em;
      letter-spacing: 0.05em; }
      @media screen and (max-width: 600px) {
        #company.index .sec_6 .box_idea__item h3 {
          font-size: 1.8rem; } }
#company.index .sec_7 {
  background-color: #0080CC;
  position: relative; }
  @media screen and (max-width: 600px) {
    #company.index .sec_7 {
      position: relative; } }
  #company.index .sec_7:before {
    content: "";
    width: 1378px;
    height: 735px;
    background: url("../../company/img//ing_num.png") no-repeat center/contain;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-48.5%, -53%) scale(0.1);
    transition: 0.6s cubic-bezier(0.19, 0.03, 0.54, 1.05); }
    @media screen and (max-width: 600px) {
      #company.index .sec_7:before {
        width: 964px;
        height: 514px; } }
  #company.index .sec_7 .bg_comingsoon {
    width: 100%;
    height: 100%;
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    left: 0;
    top: 0;
    background-color: rgba(0, 128, 204, 0.8);
    z-index: 100;
    content: "Comingsoon";
    color: #fff;
    font-size: 3.6rem;
    font-weight: 500;
    font-family: "Roboto", serif;
    letter-spacing: 0.25em;
    z-index: 101; }
  #company.index .sec_7 .btn_number {
    width: 440px;
    height: 440px;
    border-radius: 100%;
    display: flex;
    flex-direction: column;
    background-color: #fff;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    align-items: center;
    justify-content: center;
    z-index: 1; }
    @media screen and (max-width: 600px) {
      #company.index .sec_7 .btn_number {
        width: 320px;
        height: 320px; } }
    #company.index .sec_7 .btn_number:before {
      content: "";
      width: 177%;
      height: 177%;
      position: absolute;
      border-radius: 100%;
      background-color: rgba(255, 255, 255, 0.1);
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%) scale(0.4);
      opacity: 0;
      z-index: -2;
      pointer-events: none; }
    #company.index .sec_7 .btn_number:after {
      content: "";
      width: 177%;
      height: 177%;
      position: absolute;
      border-radius: 100%;
      background-color: rgba(255, 255, 255, 0.1);
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%) scale(0.4);
      opacity: 0;
      z-index: -1;
      pointer-events: none; }
    #company.index .sec_7 .btn_number p {
      font-size: 2.2rem;
      font-weight: 500;
      text-align: center;
      font-family: "Roboto", serif;
      letter-spacing: 0.2em;
      color: #0080CC; }
      @media screen and (max-width: 600px) {
        #company.index .sec_7 .btn_number p {
          font-size: 1.8rem; } }
    #company.index .sec_7 .btn_number h2 {
      font-size: 4.4rem;
      font-weight: 600;
      text-align: center;
      line-height: 1.3;
      letter-spacing: 0.05em;
      color: #0080CC;
      margin-bottom: 1em; }
      @media screen and (max-width: 600px) {
        #company.index .sec_7 .btn_number h2 {
          font-size: 3.2rem; } }
    #company.index .sec_7 .btn_number span {
      font-family: "Roboto", serif;
      display: flex;
      align-items: center; }
      #company.index .sec_7 .btn_number span i {
        display: inline-block;
        background-color: #000;
        width: 60px;
        height: 40px;
        overflow: hidden;
        transition: 0.4s;
        position: relative;
        margin-right: 15px; }
        #company.index .sec_7 .btn_number span i:before {
          content: "";
          width: 10px;
          height: 10px;
          border-top: solid 1px #fff;
          border-right: solid 1px #fff;
          position: absolute;
          left: 50%;
          top: 50%;
          transform: translate(-60%, -50%) rotate(45deg); }
    #company.index .sec_7 .btn_number:hover {
      color: #0080CC; }
      #company.index .sec_7 .btn_number:hover i {
        background-color: #FFDA00; }
        #company.index .sec_7 .btn_number:hover i:before {
          animation: arrowMove 0.3s ease-in-out forwards; }
  #company.index .sec_7.active:before {
    transform: translate(-48.5%, -53%) scale(1); }
  #company.index .sec_7.active .btn_number:before {
    animation: rippleAnime 4s infinite ease-in-out; }
  #company.index .sec_7.active .btn_number:after {
    animation: rippleAnime 4s 1s infinite ease-in-out; }
#company.thought .cont_header {
  background-color: #92C8E9; }
#company.thought .sec_1 {
  overflow: hidden; }
  #company.thought .sec_1 .box_rinen, #company.thought .sec_1 .box_purpose {
    position: relative;
    z-index: 1; }
    #company.thought .sec_1 .box_rinen .pic, #company.thought .sec_1 .box_purpose .pic {
      width: 260px;
      height: 260px;
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      z-index: -1;
      pointer-events: none; }
      @media screen and (max-width: 600px) {
        #company.thought .sec_1 .box_rinen .pic, #company.thought .sec_1 .box_purpose .pic {
          width: 220px;
          height: 220px;
          transform: none;
          position: relative;
          top: 0;
          margin: 0 auto 30px; } }
      #company.thought .sec_1 .box_rinen .pic:before, #company.thought .sec_1 .box_purpose .pic:before {
        content: "";
        width: 167%;
        height: 167%;
        position: absolute;
        border-radius: 100%;
        background-color: #f4fafd;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%) scale(0.4);
        opacity: 0;
        z-index: -2;
        pointer-events: none;
        animation: rippleAnime 4s infinite ease-in-out; }
      #company.thought .sec_1 .box_rinen .pic:after, #company.thought .sec_1 .box_purpose .pic:after {
        content: "";
        width: 277%;
        height: 277%;
        position: absolute;
        border-radius: 100%;
        border: dotted 2px #92C8E9;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%) scale(0.4);
        opacity: 0;
        z-index: -1;
        animation: rippleAnime2 4s infinite ease-in-out; }
    #company.thought .sec_1 .box_rinen .ttl, #company.thought .sec_1 .box_purpose .ttl {
      margin-bottom: 1em; }
      #company.thought .sec_1 .box_rinen .ttl p, #company.thought .sec_1 .box_purpose .ttl p {
        display: inline-block; }
        #company.thought .sec_1 .box_rinen .ttl p:nth-child(1), #company.thought .sec_1 .box_purpose .ttl p:nth-child(1) {
          font-family: "Roboto", serif;
          font-size: 3.2rem;
          font-weight: 600;
          -webkit-text-stroke-width: 1px;
          -webkit-text-stroke-color: rgba(0, 128, 204, 0.4);
          color: transparent;
          letter-spacing: 0.1em;
          line-height: 1; }
          @media screen and (max-width: 600px) {
            #company.thought .sec_1 .box_rinen .ttl p:nth-child(1), #company.thought .sec_1 .box_purpose .ttl p:nth-child(1) {
              font-size: 2.6rem; } }
        #company.thought .sec_1 .box_rinen .ttl p:nth-child(2), #company.thought .sec_1 .box_purpose .ttl p:nth-child(2) {
          font-size: 2.4rem;
          font-weight: 600;
          color: #0080CC;
          margin-left: 0.6em;
          position: relative;
          top: -0.1em; }
          @media screen and (max-width: 600px) {
            #company.thought .sec_1 .box_rinen .ttl p:nth-child(2), #company.thought .sec_1 .box_purpose .ttl p:nth-child(2) {
              font-size: 1.6rem; } }
    #company.thought .sec_1 .box_rinen .txt, #company.thought .sec_1 .box_purpose .txt {
      margin-bottom: 12px; }
      @media screen and (max-width: 600px) {
        #company.thought .sec_1 .box_rinen .txt, #company.thought .sec_1 .box_purpose .txt {
          line-height: 1.3; } }
      #company.thought .sec_1 .box_rinen .txt span, #company.thought .sec_1 .box_purpose .txt span {
        display: inline-block;
        color: #fff;
        font-size: 4.2rem;
        font-weight: 600;
        line-height: 1;
        padding: 0.2em 0.2em 0.3em 0.2em;
        margin-bottom: 10px;
        position: relative;
        z-index: 1; }
        @media screen and (max-width: 600px) {
          #company.thought .sec_1 .box_rinen .txt span, #company.thought .sec_1 .box_purpose .txt span {
            font-size: 1.8rem;
            margin-bottom: 0px; } }
        #company.thought .sec_1 .box_rinen .txt span:before, #company.thought .sec_1 .box_purpose .txt span:before {
          content: "";
          width: 100%;
          height: 100%;
          position: absolute;
          left: 0;
          top: 0;
          background-color: #0080CC;
          z-index: -2; }
        #company.thought .sec_1 .box_rinen .txt span:after, #company.thought .sec_1 .box_purpose .txt span:after {
          content: "";
          width: 0;
          height: 100%;
          position: absolute;
          left: 0;
          top: 0;
          background-color: #000;
          z-index: -1;
          transition: 0.6s ease; }
    #company.thought .sec_1 .box_rinen .arrow, #company.thought .sec_1 .box_purpose .arrow {
      font-family: "Roboto", serif;
      display: flex;
      align-items: center; }
      #company.thought .sec_1 .box_rinen .arrow i, #company.thought .sec_1 .box_purpose .arrow i {
        display: inline-block;
        background-color: #000;
        width: 60px;
        height: 40px;
        overflow: hidden;
        transition: 0.4s;
        position: relative;
        margin-right: 15px; }
        #company.thought .sec_1 .box_rinen .arrow i:before, #company.thought .sec_1 .box_purpose .arrow i:before {
          content: "";
          width: 10px;
          height: 10px;
          border-top: solid 1px #fff;
          border-right: solid 1px #fff;
          position: absolute;
          left: 50%;
          top: 50%;
          transform: translate(-60%, -50%) rotate(45deg); }
    #company.thought .sec_1 .box_rinen:hover i, #company.thought .sec_1 .box_purpose:hover i {
      background-color: #FFDA00; }
      #company.thought .sec_1 .box_rinen:hover i:before, #company.thought .sec_1 .box_purpose:hover i:before {
        animation: arrowMove 0.3s ease-in-out forwards; }
    #company.thought .sec_1 .box_rinen:hover .txt span:after, #company.thought .sec_1 .box_purpose:hover .txt span:after {
      width: 100%; }
  #company.thought .sec_1 .box_rinen {
    margin: 180px 0 260px; }
    @media screen and (max-width: 600px) {
      #company.thought .sec_1 .box_rinen {
        margin: 90px 0 120px; } }
    #company.thought .sec_1 .box_rinen .pic {
      right: 70px; }
      @media screen and (max-width: 600px) {
        #company.thought .sec_1 .box_rinen .pic {
          right: auto; } }
    #company.thought .sec_1 .box_rinen .ttl p:nth-child(2) {
      left: -1.7em; }
  #company.thought .sec_1 .box_purpose {
    padding-left: 50%;
    margin-bottom: 150px; }
    @media screen and (max-width: 600px) {
      #company.thought .sec_1 .box_purpose {
        padding-left: 0;
        margin-bottom: 80px; } }
    #company.thought .sec_1 .box_purpose .pic {
      left: 70px; }
      @media screen and (max-width: 600px) {
        #company.thought .sec_1 .box_purpose .pic {
          left: auto; } }
#company.thought .sec_2 {
  background-color: #f3f3f3;
  padding: 60px 0 90px; }
  @media screen and (max-width: 600px) {
    #company.thought .sec_2 {
      padding: 40px 0 70px; } }
  #company.thought .sec_2 .sec_txt {
    font-size: 2.4rem;
    font-weight: 600;
    text-align: center;
    margin-bottom: 2em;
    line-height: 1.6; }
    @media screen and (max-width: 600px) {
      #company.thought .sec_2 .sec_txt {
        font-size: 1.6rem; } }
  #company.thought .sec_2 .box_we {
    margin-top: 60px; }
    #company.thought .sec_2 .box_we h2 {
      width: 180px;
      height: 180px;
      border-radius: 100%;
      background-color: #FF6BA8;
      color: #fff;
      display: flex;
      justify-content: center;
      align-items: center;
      flex-direction: column;
      margin: 0 auto;
      position: relative;
      z-index: 10;
      font-size: 2.2rem;
      line-height: 1.4;
      font-weight: 600;
      letter-spacing: 0.05em; }
      @media screen and (max-width: 600px) {
        #company.thought .sec_2 .box_we h2 {
          font-size: 1.8rem;
          width: 140px;
          height: 140px; } }
      #company.thought .sec_2 .box_we h2 span {
        font-size: 3.0rem;
        letter-spacing: 0.1em; }
        @media screen and (max-width: 600px) {
          #company.thought .sec_2 .box_we h2 span {
            font-size: 2.6rem; } }
      #company.thought .sec_2 .box_we h2:before {
        content: "";
        display: block;
        width: 100vw;
        height: 100%;
        position: absolute;
        left: 50%;
        top: 0;
        transform: translateX(-50%);
        z-index: -1; }
      #company.thought .sec_2 .box_we h2.bg_txt1:before {
        background: url("../../company/img/thought/bg_txt1.png") repeat-x 0 center/519px auto; }
        @media screen and (max-width: 600px) {
          #company.thought .sec_2 .box_we h2.bg_txt1:before {
            background-size: 259px auto; } }
      #company.thought .sec_2 .box_we h2.bg_txt2:before {
        background: url("../../company/img/thought/bg_txt2.png") repeat-x 0 center/1614px auto; }
        @media screen and (max-width: 600px) {
          #company.thought .sec_2 .box_we h2.bg_txt2:before {
            background-size: 807px auto; } }
    #company.thought .sec_2 .box_we ul {
      display: flex;
      background-color: #fff;
      padding: 90px 0 20px;
      margin-top: -70px; }
      @media screen and (max-width: 600px) {
        #company.thought .sec_2 .box_we ul {
          flex-direction: column;
          padding: 70px 15px 0px; } }
      #company.thought .sec_2 .box_we ul li {
        padding: 0 20px;
        border-left: solid 1px rgba(255, 196, 220, 0.6);
        width: 25%; }
        @media screen and (max-width: 600px) {
          #company.thought .sec_2 .box_we ul li {
            width: 100%;
            border-left: none;
            border-top: solid 1px rgba(255, 196, 220, 0.6);
            padding: 15px 0; } }
        #company.thought .sec_2 .box_we ul li:first-child {
          border-left: none; }
          @media screen and (max-width: 600px) {
            #company.thought .sec_2 .box_we ul li:first-child {
              border-top: none; } }
        #company.thought .sec_2 .box_we ul li h3 {
          font-weight: 2.0rem;
          color: #FF6BA8;
          font-weight: 600;
          margin-bottom: 0.5em;
          line-height: 1.4; }
          @media screen and (max-width: 600px) {
            #company.thought .sec_2 .box_we ul li h3 {
              font-weight: 1.8rem;
              margin-bottom: 0.3em; } }
#company.thought .sec_3 .sec_txt {
  background-color: #0080CC;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  margin: 0 auto;
  position: relative;
  z-index: 10;
  font-size: 2.4rem;
  line-height: 1.6;
  font-weight: 600;
  letter-spacing: 0.05em;
  width: 100%;
  height: 200px;
  text-align: center;
  padding-top: 10px; }
  @media screen and (max-width: 600px) {
    #company.thought .sec_3 .sec_txt {
      font-size: 1.6rem;
      height: 140px;
      padding-top: 20px; } }
  #company.thought .sec_3 .sec_txt:before {
    content: "";
    position: absolute;
    z-index: 1;
    left: 50%;
    top: -30px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 60px 60px 0 60px;
    border-color: #FF6BA8 transparent transparent transparent;
    margin-left: -60px; }
#company.thought .sec_3 .box_promise {
  background: url("../../company/img/thought/bg_promise.jpg") no-repeat center/cover;
  overflow: hidden;
  position: relative; }
  #company.thought .sec_3 .box_promise:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(11, 96, 148, 0.35); }
  #company.thought .sec_3 .box_promise__inner {
    width: 720px;
    padding: 30px 40px 60px;
    background-color: #fff;
    border-radius: 8px;
    margin: 100px auto;
    position: relative;
    z-index: 10; }
    @media screen and (max-width: 600px) {
      #company.thought .sec_3 .box_promise__inner {
        width: 92%;
        margin: 40px auto 100px;
        padding: 30px 15px 60px; } }
    #company.thought .sec_3 .box_promise__inner .ttl {
      text-align: center;
      margin-bottom: 40px; }
      @media screen and (max-width: 600px) {
        #company.thought .sec_3 .box_promise__inner .ttl {
          margin-bottom: 30px; } }
      #company.thought .sec_3 .box_promise__inner .ttl p {
        font-size: 2.0rem;
        font-weight: 500;
        text-align: center;
        font-family: "Roboto", serif;
        letter-spacing: 0.3em;
        margin-bottom: 5px;
        color: #0080CC; }
        @media screen and (max-width: 600px) {
          #company.thought .sec_3 .box_promise__inner .ttl p {
            font-size: 1.6rem; } }
      #company.thought .sec_3 .box_promise__inner .ttl h3 {
        font-size: 3.2rem;
        font-weight: 600;
        text-align: center;
        line-height: 1;
        letter-spacing: 0.05em; }
        @media screen and (max-width: 600px) {
          #company.thought .sec_3 .box_promise__inner .ttl h3 {
            font-size: 2.6rem; } }
    #company.thought .sec_3 .box_promise__inner .txt {
      font-weight: 500;
      margin-bottom: 50px; }
    #company.thought .sec_3 .box_promise__inner a {
      display: flex;
      background-color: #0080CC;
      width: calc(100% - 30px);
      height: 90px;
      align-items: center;
      justify-content: center;
      position: relative; }
      @media screen and (max-width: 600px) {
        #company.thought .sec_3 .box_promise__inner a {
          padding-right: 20px; } }
      #company.thought .sec_3 .box_promise__inner a span:nth-child(1) {
        color: #FFDA00;
        font-size: 3.0rem;
        font-weight: 600;
        letter-spacing: 0.03em; }
        @media screen and (max-width: 600px) {
          #company.thought .sec_3 .box_promise__inner a span:nth-child(1) {
            font-size: 2.0rem;
            line-height: 1.4; } }
      #company.thought .sec_3 .box_promise__inner a span:nth-child(2) {
        font-size: 1.6rem;
        font-weight: 500;
        color: #fff;
        line-height: 1.3;
        margin-left: 13px; }
        @media screen and (max-width: 600px) {
          #company.thought .sec_3 .box_promise__inner a span:nth-child(2) {
            font-size: 1.4rem; } }
      #company.thought .sec_3 .box_promise__inner a i {
        display: inline-block;
        background-color: #000;
        width: 60px;
        height: 40px;
        overflow: hidden;
        transition: 0.4s;
        position: absolute;
        right: -30px;
        bottom: -20px; }
        #company.thought .sec_3 .box_promise__inner a i:before {
          content: "";
          width: 10px;
          height: 10px;
          border-top: solid 1px #fff;
          border-right: solid 1px #fff;
          position: absolute;
          left: 50%;
          top: 50%;
          transform: translate(-60%, -50%) rotate(45deg); }
      #company.thought .sec_3 .box_promise__inner a:hover {
        opacity: 0.7; }
        #company.thought .sec_3 .box_promise__inner a:hover i {
          background-color: #FFDA00; }
          #company.thought .sec_3 .box_promise__inner a:hover i:before {
            animation: arrowMove 0.3s ease-in-out forwards; }
#company.thought .remodal-overlay {
  background: rgba(0, 128, 204, 0.9); }
#company.thought .remodal-close {
  top: -44px;
  background-color: transparent; }
  @media screen and (max-width: 600px) {
    #company.thought .remodal-close {
      top: auto;
      right: 10px;
      top: 10px;
      position: fixed;
      z-index: 100; } }
  #company.thought .remodal-close:before {
    content: "";
    width: 2px;
    height: 38px;
    position: absolute;
    left: 50%;
    top: 50%;
    background-color: #fff;
    transform: translate(-50%, -50%) rotate(45deg); }
    @media screen and (max-width: 600px) {
      #company.thought .remodal-close:before {
        background-color: rgba(0, 128, 204, 0.9); } }
  #company.thought .remodal-close:after {
    content: "";
    width: 2px;
    height: 38px;
    position: absolute;
    left: 50%;
    top: 50%;
    background-color: #fff;
    transform: translate(-50%, -50%) rotate(-45deg); }
    @media screen and (max-width: 600px) {
      #company.thought .remodal-close:after {
        background-color: rgba(0, 128, 204, 0.9); } }
#company.thought .remodal {
  padding: 30px 40px 40px 40px;
  max-width: 1200px;
  border-radius: 8px;
  text-align: left; }
  @media screen and (max-width: 600px) {
    #company.thought .remodal {
      padding: 30px 15px 40px 20px; } }
  #company.thought .remodal dl dt {
    display: flex;
    margin-bottom: 40px; }
    @media screen and (max-width: 600px) {
      #company.thought .remodal dl dt {
        flex-direction: column;
        margin-bottom: 20px; } }
    #company.thought .remodal dl dt .ttl {
      width: 33%; }
      @media screen and (max-width: 600px) {
        #company.thought .remodal dl dt .ttl {
          width: 100%;
          padding-bottom: 20px; } }
      #company.thought .remodal dl dt .ttl h3 {
        font-size: 4.2rem;
        font-weight: 600;
        letter-spacing: 0.05em;
        position: relative; }
        @media screen and (max-width: 600px) {
          #company.thought .remodal dl dt .ttl h3 {
            font-size: 3.2rem;
            line-height: 1.4; } }
        #company.thought .remodal dl dt .ttl h3:before {
          content: "";
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 25px 0 25px 25px;
          border-color: transparent transparent transparent #FFDA00;
          position: absolute;
          left: -40px;
          top: 0.3em; }
          @media screen and (max-width: 600px) {
            #company.thought .remodal dl dt .ttl h3:before {
              top: 0.1em;
              left: -20px;
              border-width: 18px 0 18px 18px; } }
      #company.thought .remodal dl dt .ttl p {
        font-size: 2.0rem;
        font-family: "Roboto", serif;
        letter-spacing: 0.05em; }
        @media screen and (max-width: 600px) {
          #company.thought .remodal dl dt .ttl p {
            font-size: 1.6rem; } }
    #company.thought .remodal dl dt .txt {
      width: 67%;
      padding-left: 35px;
      border-left: solid 1px #999; }
      @media screen and (max-width: 600px) {
        #company.thought .remodal dl dt .txt {
          padding-left: 15px;
          width: 100%; } }
      #company.thought .remodal dl dt .txt h4 {
        font-size: 2.6rem;
        font-weight: 600;
        color: #0080CC;
        line-height: 1.5;
        font-feature-settings: "palt"; }
        @media screen and (max-width: 600px) {
          #company.thought .remodal dl dt .txt h4 {
            font-size: 2.0rem; } }
      #company.thought .remodal dl dt .txt p {
        font-weight: 500;
        color: #0080CC;
        margin-top: 1em; }
#company.vision .cont_header {
  background-color: #AEBCD6; }
#company.vision .ttl_sec {
  text-align: center;
  margin-bottom: 40px;
  overflow: hidden; }
  #company.vision .ttl_sec p {
    font-size: 2.0rem;
    font-weight: 500;
    text-align: center;
    font-family: "Roboto", serif;
    letter-spacing: 0.3em;
    margin-bottom: 5px;
    color: #0080CC; }
    @media screen and (max-width: 600px) {
      #company.vision .ttl_sec p {
        font-size: 1.6rem; } }
  #company.vision .ttl_sec h3 {
    font-size: 3.2rem;
    font-weight: 600;
    text-align: center;
    line-height: 1;
    letter-spacing: 0.05em;
    display: inline-block;
    position: relative; }
    @media screen and (max-width: 600px) {
      #company.vision .ttl_sec h3 {
        font-size: 2.4rem; } }
    #company.vision .ttl_sec h3:before {
      content: "";
      width: 50vw;
      height: 1px;
      background-color: #999;
      position: absolute;
      left: -15px;
      top: 55%;
      transform: translateX(-100%); }
    #company.vision .ttl_sec h3:after {
      content: "";
      width: 50vw;
      height: 1px;
      background-color: #999;
      position: absolute;
      right: -15px;
      top: 55%;
      transform: translateX(100%); }
#company.vision .sec_1 {
  position: relative;
  padding: 70px 0 90px; }
  @media screen and (max-width: 600px) {
    #company.vision .sec_1 {
      padding: 50px 0 40px; } }
  #company.vision .sec_1 .txt {
    line-height: 2.1;
    font-size: 1.8rem;
    text-align: center;
    margin: 60px 0 130px; }
    @media screen and (max-width: 600px) {
      #company.vision .sec_1 .txt {
        font-size: 1.4rem;
        text-align: left;
        margin: 0px 0 70px; } }
  #company.vision .sec_1 .img_01, #company.vision .sec_1 .img_02, #company.vision .sec_1 .img_03 {
    position: absolute; }
  #company.vision .sec_1 .img_01 {
    width: 300px;
    top: 80px;
    left: 50%;
    margin-left: -800px; }
  #company.vision .sec_1 .img_02 {
    width: 120px;
    top: 160px;
    left: 50%;
    margin-left: 670px; }
  #company.vision .sec_1 .img_03 {
    width: 220px;
    top: 300px;
    left: 50%;
    margin-left: 505px; }
  #company.vision .sec_1 .box_1 {
    background-color: #F6F6F6;
    border-radius: 8px;
    position: relative;
    padding: 50px 50px 40px; }
    @media screen and (max-width: 600px) {
      #company.vision .sec_1 .box_1 {
        padding: 35px 20px; } }
    #company.vision .sec_1 .box_1 h3 {
      position: absolute;
      left: 0;
      top: -25px;
      width: 240px;
      height: 50px;
      border-radius: 25px;
      display: flex;
      justify-content: center;
      align-items: center;
      background-color: #FF6BA8;
      color: #fff;
      font-size: 2.0rem;
      font-weight: 500;
      line-height: 1; }
      @media screen and (max-width: 600px) {
        #company.vision .sec_1 .box_1 h3 {
          font-size: 1.6rem;
          width: 200px;
          height: 40px; } }
      #company.vision .sec_1 .box_1 h3:before {
        content: "";
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 12px 8px 0 8px;
        border-color: #FF6BA8 transparent transparent transparent;
        position: absolute;
        bottom: -10px;
        left: 50px; }
    #company.vision .sec_1 .box_1__inner {
      display: flex; }
      @media screen and (max-width: 600px) {
        #company.vision .sec_1 .box_1__inner {
          flex-direction: column; } }
      #company.vision .sec_1 .box_1__inner .box_1__txt {
        width: 415px;
        font-size: 2.0rem;
        font-weight: 600;
        border-right: solid 1px #ccc;
        line-height: 1.7; }
        @media screen and (max-width: 600px) {
          #company.vision .sec_1 .box_1__inner .box_1__txt {
            width: 100%;
            font-size: 1.6rem;
            border-right: none;
            border-bottom: solid 1px #ccc;
            padding-bottom: 15px; } }
      #company.vision .sec_1 .box_1__inner .sales {
        flex: 1;
        padding-left: 50px; }
        @media screen and (max-width: 600px) {
          #company.vision .sec_1 .box_1__inner .sales {
            width: 100%;
            padding-left: 0; } }
        #company.vision .sec_1 .box_1__inner .sales_num {
          display: flex;
          gap: 30px; }
          @media screen and (max-width: 600px) {
            #company.vision .sec_1 .box_1__inner .sales_num {
              padding: 10px 0; } }
          #company.vision .sec_1 .box_1__inner .sales_num__item {
            display: flex;
            justify-content: center;
            align-items: center; }
            @media screen and (max-width: 600px) {
              #company.vision .sec_1 .box_1__inner .sales_num__item {
                flex-wrap: wrap;
                justify-content: flex-end; } }
            #company.vision .sec_1 .box_1__inner .sales_num__item p {
              line-height: 1.4; }
              #company.vision .sec_1 .box_1__inner .sales_num__item p:nth-child(1) {
                font-size: 2.0rem;
                font-weight: 600; }
                @media screen and (max-width: 600px) {
                  #company.vision .sec_1 .box_1__inner .sales_num__item p:nth-child(1) {
                    font-size: 1.6rem;
                    width: 100%; }
                    #company.vision .sec_1 .box_1__inner .sales_num__item p:nth-child(1) br {
                      display: none; } }
              #company.vision .sec_1 .box_1__inner .sales_num__item p:nth-child(2) {
                font-size: 7.4rem;
                font-weight: 600;
                font-family: "Roboto", serif;
                color: #0080CC;
                margin: 0 0.1em; }
                @media screen and (max-width: 600px) {
                  #company.vision .sec_1 .box_1__inner .sales_num__item p:nth-child(2) {
                    font-size: 5.0rem;
                    margin: 0;
                    line-height: 1.1;
                    width: 100%;
                    text-align: right; } }
              #company.vision .sec_1 .box_1__inner .sales_num__item p:nth-child(3) {
                font-size: 2.8rem;
                font-weight: 600;
                transform: translateY(20%); }
                @media screen and (max-width: 600px) {
                  #company.vision .sec_1 .box_1__inner .sales_num__item p:nth-child(3) {
                    font-size: 2.0rem;
                    margin-top: -16px;
                    margin-right: 3px; } }
        #company.vision .sec_1 .box_1__inner .sales ul li {
          position: relative;
          padding-left: 1.2em;
          line-height: 1.4;
          margin: 5px 0; }
          #company.vision .sec_1 .box_1__inner .sales ul li:before {
            content: "●";
            position: absolute;
            left: 0;
            top: 0; }
  #company.vision .sec_1 .box_2 {
    background-color: #F6F6F6;
    display: flex;
    margin: 80px 0 20px;
    position: relative; }
    @media screen and (max-width: 600px) {
      #company.vision .sec_1 .box_2 {
        flex-direction: column; } }
    #company.vision .sec_1 .box_2:before {
      content: "";
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 32px 41px 0 41px;
      border-color: #FFDA00 transparent transparent transparent;
      position: absolute;
      top: -55px;
      left: 50%;
      transform: translateX(-50%); }
    #company.vision .sec_1 .box_2 h3 {
      width: 250px;
      height: 140px;
      display: flex;
      justify-content: center;
      align-items: center;
      background-color: #0080CC;
      color: #fff;
      font-size: 2.8rem;
      font-weight: 500; }
      @media screen and (max-width: 600px) {
        #company.vision .sec_1 .box_2 h3 {
          width: 100%;
          height: 60px;
          font-size: 1.8rem; } }
    #company.vision .sec_1 .box_2 ul {
      flex: 1;
      display: flex;
      justify-content: space-around;
      padding: 10px; }
      @media screen and (max-width: 600px) {
        #company.vision .sec_1 .box_2 ul {
          flex-direction: column;
          align-items: flex-start;
          gap: 12px;
          padding: 20px; } }
      #company.vision .sec_1 .box_2 ul li {
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: 2.0rem;
        font-weight: 600; }
        #company.vision .sec_1 .box_2 ul li i {
          width: 80px;
          display: inline-block;
          margin-right: 15px; }
#company.vision .sec_2 .bg_lblue {
  background-color: #E8F6FD;
  padding: 60px 0; }
  @media screen and (max-width: 600px) {
    #company.vision .sec_2 .bg_lblue {
      padding: 30px 0; } }
  #company.vision .sec_2 .bg_lblue .inner {
    display: flex;
    gap: 20px; }
    @media screen and (max-width: 600px) {
      #company.vision .sec_2 .bg_lblue .inner {
        flex-direction: column;
        gap: 15px; } }
    #company.vision .sec_2 .bg_lblue .inner figure {
      width: calc(50% - 10px); }
      @media screen and (max-width: 600px) {
        #company.vision .sec_2 .bg_lblue .inner figure {
          width: 100%; } }
#company.vision .sec_3 {
  padding: 70px 0 50px;
  background: url("../../company/img/vision/bg_kpi.jpg") no-repeat center/cover;
  overflow: hidden;
  position: relative;
  text-align: center; }
  #company.vision .sec_3:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 128, 204, 0.65); }
  #company.vision .sec_3:after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 32px 41px 0 41px;
    border-color: #FFDA00 transparent transparent transparent;
    position: absolute;
    top: 20px;
    left: 50%;
    transform: translateX(-50%); }
  #company.vision .sec_3 h2 {
    color: #fff;
    font-size: 4.2rem;
    font-weight: 600;
    text-align: center;
    position: relative;
    z-index: 1;
    margin-bottom: 25px; }
    @media screen and (max-width: 600px) {
      #company.vision .sec_3 h2 {
        font-size: 3.2rem; } }
  #company.vision .sec_3 ul {
    display: flex;
    justify-content: space-between;
    position: relative;
    z-index: 1;
    margin-bottom: 30px; }
    @media screen and (max-width: 600px) {
      #company.vision .sec_3 ul {
        flex-direction: column;
        gap: 15px;
        margin-bottom: 0; } }
    #company.vision .sec_3 ul li {
      width: 49%;
      background-color: #fff;
      border-radius: 8px;
      padding: 15px 20px; }
      @media screen and (max-width: 600px) {
        #company.vision .sec_3 ul li {
          width: 100%; } }
  #company.vision .sec_3 .bg__item {
    width: 100vW;
    height: 155px;
    transform: translateX(calc((100vw - 1200px)/2*-1));
    opacity: 0.96; }
    @media screen and (max-width: 600px) {
      #company.vision .sec_3 .bg__item {
        width: 180%;
        left: -40%; } }
    #company.vision .sec_3 .bg__item span {
      display: block;
      width: 100%;
      height: 100%;
      background: url(../img/item_2.png) repeat-x 0 center/2000px auto;
      animation: itemLoop4 120s infinite linear; }
  #company.vision .sec_3 .txt {
    color: #fff;
    font-size: 5.2rem;
    font-weight: 600;
    text-align: center;
    position: relative;
    background-color: #FF6BA8;
    z-index: 1;
    margin: 90px 0 25px;
    display: inline-block;
    line-height: 1;
    padding: 0 0 5px; }
    @media screen and (max-width: 600px) {
      #company.vision .sec_3 .txt {
        font-size: 3.2rem;
        line-height: 1.2;
        margin: -60px 0 5px;
        padding: 0 5px 5px; } }
    #company.vision .sec_3 .txt:after {
      content: "";
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 32px 41px 0 41px;
      border-color: #FFDA00 transparent transparent transparent;
      position: absolute;
      top: -60px;
      left: 50%;
      transform: translateX(-50%); }
#company.vision .sec_4 {
  background-color: #f6f6f6;
  padding: 90px 0; }
  @media screen and (max-width: 600px) {
    #company.vision .sec_4 {
      padding: 40px 0; } }
  #company.vision .sec_4 .ttl_sec h3 {
    font-size: 4.2rem;
    font-weight: 500; }
    @media screen and (max-width: 600px) {
      #company.vision .sec_4 .ttl_sec h3 {
        font-size: 2.4rem;
        line-height: 1.3; } }
  #company.vision .sec_4 .slide_nav {
    margin: 80px -15px 30px; }
    @media screen and (max-width: 600px) {
      #company.vision .sec_4 .slide_nav {
        margin: 20px -5px 30px; } }
    #company.vision .sec_4 .slide_nav li {
      height: 80px;
      border-radius: 40px;
      display: flex;
      justify-content: center;
      align-items: center;
      font-size: 2.4rem;
      font-weight: 600;
      position: relative;
      color: #000;
      background-color: #fff;
      transition: 0.3s;
      cursor: pointer;
      margin: 0 15px;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale; }
      @media screen and (max-width: 600px) {
        #company.vision .sec_4 .slide_nav li {
          font-size: 1.6rem;
          line-height: 1.4;
          text-align: center;
          width: calc((100vw - 50px)/3);
          height: calc((100vw - 50px)/3);
          border-radius: 100%;
          margin: 0 5px;
          padding-top: 10px; } }
      #company.vision .sec_4 .slide_nav li:before {
        font-size: 6.6rem;
        font-weight: 500;
        line-height: 1;
        color: #FFDC10;
        font-family: "Roboto", serif;
        position: absolute;
        right: 18px;
        top: 8px;
        transform: rotate(5deg); }
        @media screen and (max-width: 600px) {
          #company.vision .sec_4 .slide_nav li:before {
            font-size: 2.4rem;
            right: 28px;
            top: 10px;
            transform: rotate(0deg); } }
      #company.vision .sec_4 .slide_nav li:after {
        content: "POINT";
        font-size: 2.0rem;
        font-weight: 500;
        line-height: 1;
        font-family: "Roboto", serif;
        letter-spacing: 0.06em;
        color: #FFDA00;
        position: absolute;
        left: 10px;
        top: 15px;
        transform: rotate(-17deg); }
        @media screen and (max-width: 600px) {
          #company.vision .sec_4 .slide_nav li:after {
            font-size: 1.2rem;
            transform: rotate(0deg);
            left: 25px;
            top: 18px; } }
      #company.vision .sec_4 .slide_nav li:nth-child(1):before {
        content: "1"; }
      #company.vision .sec_4 .slide_nav li:nth-child(2):before {
        content: "2"; }
      #company.vision .sec_4 .slide_nav li:nth-child(3):before {
        content: "3"; }
      #company.vision .sec_4 .slide_nav li.slick-current {
        color: #fff;
        background-color: #0080CC; }
  #company.vision .sec_4 .slide_cont {
    border-radius: 8px;
    background-color: #fff;
    border: solid 2px #0080CC;
    width: calc(100% - 30px);
    margin-left: 15px; }
    #company.vision .sec_4 .slide_cont .tab_cont__item {
      display: flex;
      padding: 50px;
      overflow: hidden;
      position: relative; }
      @media screen and (max-width: 600px) {
        #company.vision .sec_4 .slide_cont .tab_cont__item {
          padding: 15px;
          flex-direction: column; } }
      #company.vision .sec_4 .slide_cont .tab_cont__item figure {
        width: 480px; }
        @media screen and (max-width: 600px) {
          #company.vision .sec_4 .slide_cont .tab_cont__item figure {
            width: 100%;
            margin-bottom: 20px; } }
      #company.vision .sec_4 .slide_cont .tab_cont__item .txt {
        flex: 1;
        padding-left: 50px;
        margin-bottom: 60px; }
        @media screen and (max-width: 600px) {
          #company.vision .sec_4 .slide_cont .tab_cont__item .txt {
            padding-left: 0px;
            margin-bottom: 0; } }
        #company.vision .sec_4 .slide_cont .tab_cont__item .txt p {
          line-height: 1.8; }
          @media screen and (max-width: 600px) {
            #company.vision .sec_4 .slide_cont .tab_cont__item .txt p {
              margin-bottom: 20px; } }
      #company.vision .sec_4 .slide_cont .tab_cont__item a {
        float: right;
        position: absolute;
        right: 50px;
        bottom: 50px; }
        @media screen and (max-width: 600px) {
          #company.vision .sec_4 .slide_cont .tab_cont__item a {
            width: calc(100% - 30px);
            position: relative;
            right: 30px;
            bottom: 0;
            margin-bottom: 10px;
            line-height: 1.3;
            font-size: 1.4rem; } }
  #company.vision .sec_4 .slick-arrow {
    width: 50px;
    height: 50px;
    position: absolute;
    text-indent: -9999px;
    top: 50%;
    border: none;
    cursor: pointer;
    transition: 0.4s;
    margin-top: -35px;
    z-index: 10;
    background: transparent; }
    @media screen and (max-width: 600px) {
      #company.vision .sec_4 .slick-arrow {
        width: 50px;
        height: 50px;
        margin-top: -25px; } }
    #company.vision .sec_4 .slick-arrow:before {
      content: "";
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 0 15px 21px 15px;
      border-color: transparent transparent #0080CC transparent;
      position: absolute;
      left: 50%;
      top: 50%;
      transition: 0.3s; }
  #company.vision .sec_4 .slick-prev {
    left: -56px; }
    @media screen and (max-width: 600px) {
      #company.vision .sec_4 .slick-prev {
        left: -46px; } }
    #company.vision .sec_4 .slick-prev:before {
      transform: translate(-40%, -50%) rotate(-90deg); }
    #company.vision .sec_4 .slick-prev:hover:before {
      left: 40%; }
  #company.vision .sec_4 .slick-next {
    right: -56px; }
    @media screen and (max-width: 600px) {
      #company.vision .sec_4 .slick-next {
        right: -46px; } }
    #company.vision .sec_4 .slick-next:before {
      transform: translate(-60%, -50%) rotate(90deg); }
    #company.vision .sec_4 .slick-next:hover:before {
      left: 60%; }
#company.vision .sec_5 {
  padding: 80px 0 100px; }
  @media screen and (max-width: 600px) {
    #company.vision .sec_5 {
      padding: 30px 0 100px; } }
  #company.vision .sec_5 a {
    display: flex;
    background-color: #0080CC;
    width: 620px;
    height: 140px;
    margin: 0 auto;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative; }
    @media screen and (max-width: 600px) {
      #company.vision .sec_5 a {
        width: 90%;
        height: 90px; } }
    #company.vision .sec_5 a p {
      font-size: 2.0rem;
      font-weight: 500;
      color: #fff;
      line-height: 1.4; }
      @media screen and (max-width: 600px) {
        #company.vision .sec_5 a p {
          font-size: 1.5rem; } }
      #company.vision .sec_5 a p span {
        color: #FFDA00;
        font-size: 3.4rem;
        font-weight: 600;
        letter-spacing: 0.03em;
        margin-right: 3px; }
        @media screen and (max-width: 600px) {
          #company.vision .sec_5 a p span {
            font-size: 2.2rem; } }
    #company.vision .sec_5 a i {
      display: inline-block;
      background-color: #000;
      width: 60px;
      height: 40px;
      overflow: hidden;
      transition: 0.4s;
      position: absolute;
      right: -30px;
      bottom: -20px; }
      #company.vision .sec_5 a i:before {
        content: "";
        width: 10px;
        height: 10px;
        border-top: solid 1px #fff;
        border-right: solid 1px #fff;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-60%, -50%) rotate(45deg); }
    #company.vision .sec_5 a:hover {
      opacity: 0.7; }
      #company.vision .sec_5 a:hover i {
        background-color: #FFDA00; }
        #company.vision .sec_5 a:hover i:before {
          animation: arrowMove 0.3s ease-in-out forwards; }
#company.number .cont_header {
  background-color: #92C8E9; }
#company.number .sec_1 {
  background: #f6f6f6 url("../../company/img/number/bg_num.png") repeat-y top center/1638px auto;
  padding: 90px 0 120px; }
  @media screen and (max-width: 600px) {
    #company.number .sec_1 {
      padding: 40px 0 120px;
      background: #f6f6f6 url("../../company/img/number/bg_num_sp.png") repeat-y top center/400px auto; } }
  #company.number .sec_1 .box_number {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 15px; }
    @media screen and (max-width: 600px) {
      #company.number .sec_1 .box_number {
        flex-direction: column;
        width: 320px;
        margin: 0 auto; } }
    #company.number .sec_1 .box_number .col_1 {
      width: 390px; }
      @media screen and (max-width: 600px) {
        #company.number .sec_1 .box_number .col_1 {
          width: 100%; } }
    #company.number .sec_1 .box_number .col_3 {
      width: 100%; }
  #company.number .sec_1 .item_number {
    background-color: #fff;
    border-radius: 8px;
    padding: 25px 20px 20px; }
    @media screen and (max-width: 600px) {
      #company.number .sec_1 .item_number {
        padding: 20px 15px 15px; } }
    #company.number .sec_1 .item_number h3 {
      color: #fff;
      text-align: center;
      font-size: 1.8rem;
      line-height: 1.4;
      font-weight: 600;
      padding: 0.55rem 1rem 0.8rem; }
      @media screen and (max-width: 600px) {
        #company.number .sec_1 .item_number h3 {
          font-size: 1.6rem;
          padding: 0.65rem 0.7rem 0.9rem; } }
    #company.number .sec_1 .item_number figure {
      width: 100%;
      margin: 20px 0; }
      @media screen and (max-width: 600px) {
        #company.number .sec_1 .item_number figure {
          margin: 15px 0 0; } }
    #company.number .sec_1 .item_number p.txt_chu1 {
      font-size: 1.4rem !important;
      font-weight: 400;
      letter-spacing: 0.05em;
      text-align: center;
      margin-top: -10px; }
      @media screen and (max-width: 600px) {
        #company.number .sec_1 .item_number p.txt_chu1 {
          font-size: 1.2rem !important; } }
    #company.number .sec_1 .item_number p.txt_chu2 {
      font-size: 1.4rem !important;
      font-weight: 400;
      letter-spacing: 0.05em; }
      @media screen and (max-width: 600px) {
        #company.number .sec_1 .item_number p.txt_chu2 {
          font-size: 1.2rem !important; } }
    #company.number .sec_1 .item_number_pink h3 {
      background-color: #FF6BA8;
      box-shadow: 4px 4px 0px 0px rgba(255, 107, 168, 0.2); }
    #company.number .sec_1 .item_number_blue h3 {
      background-color: #0080CC;
      box-shadow: 4px 4px 0px 0px rgba(0, 128, 204, 0.2); }
    #company.number .sec_1 .item_number_1 figure {
      margin-bottom: 10px; }
    #company.number .sec_1 .item_number_1 p {
      font-size: 3.0rem;
      font-weight: 600; }
      @media screen and (max-width: 600px) {
        #company.number .sec_1 .item_number_1 p {
          font-size: 2.6rem; } }
      #company.number .sec_1 .item_number_1 p span {
        font-size: 6.4rem;
        font-weight: 600;
        font-family: "Roboto", serif;
        position: relative;
        top: 0.08em; }
        @media screen and (max-width: 600px) {
          #company.number .sec_1 .item_number_1 p span {
            font-size: 5.8rem; } }
      #company.number .sec_1 .item_number_1 p.bc {
        text-align: center; }
        #company.number .sec_1 .item_number_1 p.bc span {
          margin: 0 0.05em 0 0.1em; }
      #company.number .sec_1 .item_number_1 p.up {
        margin-top: -15px;
        margin-bottom: 10px; }
    #company.number .sec_1 .item_number_2 figure {
      margin-bottom: 10px; }
    #company.number .sec_1 .item_number_2 ul li {
      font-size: 2.0rem;
      font-weight: 500;
      line-height: 1.1; }
      @media screen and (max-width: 600px) {
        #company.number .sec_1 .item_number_2 ul li {
          font-size: 1.8rem; } }
      #company.number .sec_1 .item_number_2 ul li b {
        font-size: 5.2rem;
        font-weight: 600;
        font-family: "Roboto", serif;
        letter-spacing: -0.05em;
        position: relative;
        top: 0.08em; }
        @media screen and (max-width: 600px) {
          #company.number .sec_1 .item_number_2 ul li b {
            font-size: 4.6rem; } }
      #company.number .sec_1 .item_number_2 ul li > span {
        font-size: 2.4rem;
        font-weight: 500;
        display: inline-block;
        margin-left: 0.2em;
        position: relative;
        top: 0.08em; }
        @media screen and (max-width: 600px) {
          #company.number .sec_1 .item_number_2 ul li > span {
            font-size: 2.0rem; } }
    #company.number .sec_1 .item_number_2 ul.bc li {
      text-align: center;
      font-weight: 600;
      font-size: 3.0rem; }
      @media screen and (max-width: 600px) {
        #company.number .sec_1 .item_number_2 ul.bc li {
          font-size: 2.6rem; } }
      #company.number .sec_1 .item_number_2 ul.bc li b {
        font-size: 4.8rem;
        margin: 0 0.1em 0 0.3em;
        letter-spacing: 0.01em; }
        @media screen and (max-width: 600px) {
          #company.number .sec_1 .item_number_2 ul.bc li b {
            font-size: 4.0rem; } }
    #company.number .sec_1 .item_number_2 ul.bc2 li {
      text-align: center;
      font-weight: 600;
      font-size: 3.0rem; }
      @media screen and (max-width: 600px) {
        #company.number .sec_1 .item_number_2 ul.bc2 li {
          font-size: 2.6rem; } }
      #company.number .sec_1 .item_number_2 ul.bc2 li b {
        font-size: 4.8rem;
        margin: 0 0.1em 0 0.1em; }
        @media screen and (max-width: 600px) {
          #company.number .sec_1 .item_number_2 ul.bc2 li b {
            font-size: 4.0rem; } }
    #company.number .sec_1 .item_number_2 ul.yoko {
      display: flex;
      position: relative;
      margin: 1em 0 1.8em; }
      #company.number .sec_1 .item_number_2 ul.yoko:before {
        content: "";
        width: 1px;
        height: 100%;
        background-color: #000;
        position: absolute;
        left: 50%;
        top: 0; }
      #company.number .sec_1 .item_number_2 ul.yoko li {
        width: 50%;
        text-align: center;
        font-weight: 600;
        font-size: 2.6rem;
        padding-bottom: 0.3em; }
        @media screen and (max-width: 600px) {
          #company.number .sec_1 .item_number_2 ul.yoko li {
            font-size: 2.0rem; } }
        #company.number .sec_1 .item_number_2 ul.yoko li b {
          font-size: 6.4rem;
          letter-spacing: 0.01em;
          line-height: 1; }
          @media screen and (max-width: 600px) {
            #company.number .sec_1 .item_number_2 ul.yoko li b {
              font-size: 5.2rem; } }
    #company.number .sec_1 .item_number_3 p {
      font-size: 1.4rem;
      padding-left: 14.6rem; }
      @media screen and (max-width: 600px) {
        #company.number .sec_1 .item_number_3 p {
          font-size: 1.3rem;
          padding-left: 13.2rem; } }
    #company.number .sec_1 .item_number_3 ul li {
      font-size: 2.0rem;
      font-weight: 500;
      line-height: 1.3; }
      @media screen and (max-width: 600px) {
        #company.number .sec_1 .item_number_3 ul li {
          font-size: 1.8rem; } }
      #company.number .sec_1 .item_number_3 ul li > span {
        font-size: 3.0rem;
        font-weight: 600;
        font-family: "Roboto", serif;
        position: relative;
        top: 0.08em; }
        @media screen and (max-width: 600px) {
          #company.number .sec_1 .item_number_3 ul li > span {
            font-size: 2.8rem; } }
    #company.number .sec_1 .item_number_4 ul {
      width: 100%;
      display: flex;
      flex-wrap: wrap; }
      #company.number .sec_1 .item_number_4 ul li {
        width: 50%;
        font-size: 1.6rem;
        font-weight: 500;
        line-height: 1.2; }
        @media screen and (max-width: 600px) {
          #company.number .sec_1 .item_number_4 ul li {
            font-size: 1.3rem; } }
        #company.number .sec_1 .item_number_4 ul li b {
          font-size: 2.8rem;
          font-weight: 600;
          font-family: "Roboto", serif;
          position: relative;
          top: 0.08em; }
          @media screen and (max-width: 600px) {
            #company.number .sec_1 .item_number_4 ul li b {
              font-size: 2.4rem; } }
        #company.number .sec_1 .item_number_4 ul li > span {
          font-size: 2.0rem;
          font-weight: 600;
          font-family: "Roboto", serif;
          display: inline-block;
          margin-left: 0.1em;
          position: relative;
          top: 0.08em; }
          @media screen and (max-width: 600px) {
            #company.number .sec_1 .item_number_4 ul li > span {
              font-size: 1.5rem; } }
    #company.number .sec_1 .item_number_5 {
      position: relative;
      display: flex;
      flex-direction: row-reverse; }
      @media screen and (max-width: 600px) {
        #company.number .sec_1 .item_number_5 {
          flex-direction: column; } }
      #company.number .sec_1 .item_number_5 h3 {
        width: 280px;
        position: absolute;
        left: 20px;
        top: 25px; }
        @media screen and (max-width: 600px) {
          #company.number .sec_1 .item_number_5 h3 {
            width: 100%;
            position: static; } }
      #company.number .sec_1 .item_number_5 .img_map {
        width: 900px;
        height: 430px;
        margin: 0;
        position: relative; }
        @media screen and (max-width: 600px) {
          #company.number .sec_1 .item_number_5 .img_map {
            width: 100%;
            height: 470px; } }
        #company.number .sec_1 .item_number_5 .img_map figure {
          width: 709px; }
          @media screen and (max-width: 600px) {
            #company.number .sec_1 .item_number_5 .img_map figure {
              width: 100%;
              margin-top: 120px; } }
        #company.number .sec_1 .item_number_5 .img_map .circle {
          width: 180px;
          height: 180px;
          border-radius: 50%;
          background-color: #FF6BA8;
          color: #fff;
          position: absolute;
          display: flex;
          justify-content: center;
          align-items: center;
          flex-direction: column; }
          @media screen and (max-width: 600px) {
            #company.number .sec_1 .item_number_5 .img_map .circle {
              width: 128px;
              height: 128px; } }
          #company.number .sec_1 .item_number_5 .img_map .circle h4 {
            font-size: 2.1rem;
            line-height: 1;
            text-align: center;
            font-weight: 600; }
            @media screen and (max-width: 600px) {
              #company.number .sec_1 .item_number_5 .img_map .circle h4 {
                font-size: 1.4rem; } }
            #company.number .sec_1 .item_number_5 .img_map .circle h4 b {
              font-size: 4.8rem;
              display: inline-block;
              font-family: "Roboto", serif;
              position: relative;
              top: 0.08em;
              margin-right: 0.05em; }
              @media screen and (max-width: 600px) {
                #company.number .sec_1 .item_number_5 .img_map .circle h4 b {
                  font-size: 3.2rem; } }
          #company.number .sec_1 .item_number_5 .img_map .circle hr {
            display: block;
            width: calc(100% - 30px);
            height: 1px;
            background-color: rgba(255, 255, 255, 0.8);
            margin: 7px auto 2px;
            border: none; }
          #company.number .sec_1 .item_number_5 .img_map .circle ol {
            list-style: none;
            display: flex;
            justify-content: center;
            align-items: center;
            flex-direction: column;
            padding: 0; }
            #company.number .sec_1 .item_number_5 .img_map .circle ol li {
              font-size: 1.6rem;
              font-weight: 600;
              line-height: 1.1; }
              @media screen and (max-width: 600px) {
                #company.number .sec_1 .item_number_5 .img_map .circle ol li {
                  font-size: 1.1rem; } }
              #company.number .sec_1 .item_number_5 .img_map .circle ol li > span {
                font-size: 1.5rem;
                display: inline-block;
                font-weight: 600; }
                @media screen and (max-width: 600px) {
                  #company.number .sec_1 .item_number_5 .img_map .circle ol li > span {
                    font-size: 1.1rem; } }
              #company.number .sec_1 .item_number_5 .img_map .circle ol li b {
                font-size: 3.2rem;
                margin: 0 0.1em 0 0.1em;
                position: relative;
                top: 0.08em;
                display: inline-block;
                font-family: "Roboto", serif; }
                @media screen and (max-width: 600px) {
                  #company.number .sec_1 .item_number_5 .img_map .circle ol li b {
                    font-size: 2.2rem; } }
          #company.number .sec_1 .item_number_5 .img_map .circle p {
            font-size: 2.2rem;
            text-align: center;
            font-weight: 600;
            line-height: 1.5; }
            @media screen and (max-width: 600px) {
              #company.number .sec_1 .item_number_5 .img_map .circle p {
                font-size: 1.5rem; } }
          #company.number .sec_1 .item_number_5 .img_map .circle_1 {
            left: 116px;
            top: 0px; }
            @media screen and (max-width: 600px) {
              #company.number .sec_1 .item_number_5 .img_map .circle_1 {
                left: 5px;
                top: 25px; } }
          #company.number .sec_1 .item_number_5 .img_map .circle_2 {
            left: 76px;
            top: 250px; }
            @media screen and (max-width: 600px) {
              #company.number .sec_1 .item_number_5 .img_map .circle_2 {
                left: -5px;
                top: 270px; } }
          #company.number .sec_1 .item_number_5 .img_map .circle_3 {
            left: 310px;
            top: 160px; }
            @media screen and (max-width: 600px) {
              #company.number .sec_1 .item_number_5 .img_map .circle_3 {
                left: 92px;
                top: 175px; } }
          #company.number .sec_1 .item_number_5 .img_map .circle_4 {
            left: 560px;
            top: 40px; }
            @media screen and (max-width: 600px) {
              #company.number .sec_1 .item_number_5 .img_map .circle_4 {
                left: 164px;
                top: 28px; } }
          #company.number .sec_1 .item_number_5 .img_map .circle_5 {
            left: 660px;
            top: 200px;
            width: 240px;
            height: 240px;
            background-color: rgba(255, 196, 220, 0.2);
            color: #FF6BA8; }
            @media screen and (max-width: 600px) {
              #company.number .sec_1 .item_number_5 .img_map .circle_5 {
                width: 172px;
                height: 172px;
                left: 124px;
                top: 304px; } }
            #company.number .sec_1 .item_number_5 .img_map .circle_5 hr {
              background-color: #ffc4dc; }
            #company.number .sec_1 .item_number_5 .img_map .circle_5 ol {
              align-items: flex-end; }
      #company.number .sec_1 .item_number_5 ul {
        flex: 1;
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        padding-bottom: 15px; }
        #company.number .sec_1 .item_number_5 ul li {
          text-align: center;
          font-weight: 600;
          font-size: 3.0rem;
          line-height: 1.1; }
          @media screen and (max-width: 600px) {
            #company.number .sec_1 .item_number_5 ul li {
              font-size: 2.6rem; } }
          #company.number .sec_1 .item_number_5 ul li b {
            font-size: 6.4rem;
            margin: 0 0.1em 0 0.1em;
            position: relative;
            top: 0.08em; }
            @media screen and (max-width: 600px) {
              #company.number .sec_1 .item_number_5 ul li b {
                font-size: 5.6rem; } }

@keyframes rippleAnime {
  0% {
    transform: translate(-50%, -50%) scale(0.4);
    opacity: 0; }
  60% {
    opacity: 1; }
  100% {
    transform: translate(-50%, -50%) scale(1.1);
    opacity: 0; } }
@keyframes rippleAnime2 {
  0% {
    transform: translate(-50%, -50%) scale(0.45);
    opacity: 0; }
  20% {
    transform: translate(-50%, -50%) scale(0.45);
    opacity: 0; }
  80% {
    opacity: 1; }
  100% {
    transform: translate(-50%, -50%) scale(1.1);
    opacity: 0; } }
@keyframes lineAnime {
  0% {
    width: 0%; }
  100% {
    width: 100%; } }
@keyframes floatingAnime {
  0% {
    transform: translate(0, 0); }
  50% {
    transform: translate(0, 20%); }
  100% {
    transform: translate(0, 0); } }
@keyframes rippleAnime_mark {
  0% {
    transform: scale(1);
    opacity: 0; }
  40% {
    opacity: 0.4; }
  80% {
    transform: scale(3.6);
    opacity: 0; }
  100% {
    transform: scale(3.6);
    opacity: 0; } }
#business .cont_header {
  background-color: #92C8E9;
  overflow: visible;
  padding: 120px 50px 50px; }
  @media screen and (max-width: 600px) {
    #business .cont_header {
      padding-top: 115px; } }
  @media screen and (max-width: 600px) {
    #business .cont_header > p {
      font-size: 5.4rem;
      z-index: 5;
      position: relative; } }
  #business .cont_header > figure {
    width: 733px;
    top: 70px;
    left: 41%; }
    @media screen and (max-width: 600px) {
      #business .cont_header > figure {
        width: 400px;
        top: 60px;
        left: -5%; } }
#business.index .cont_header {
  height: 375px; }
  @media screen and (max-width: 600px) {
    #business.index .cont_header {
      height: 240px; } }
  @media screen and (max-width: 600px) {
    #business.index .cont_header .obj_header_1 {
      top: 65px; } }
  @media screen and (max-width: 600px) {
    #business.index .cont_header .obj_header_2 {
      display: block;
      right: -10px;
      top: 24px; } }
  #business.index .cont_header .obj_header_5 {
    top: 350px; }
    @media screen and (max-width: 600px) {
      #business.index .cont_header .obj_header_5 {
        top: 225px;
        right: 10px; } }
#business.index .sec_1 {
  padding: 80px 0 80px; }
  @media screen and (max-width: 600px) {
    #business.index .sec_1 {
      padding: 50px 0 0px; } }
  #business.index .sec_1 .cont_txt {
    text-align: center;
    margin-bottom: 60px; }
    @media screen and (max-width: 600px) {
      #business.index .sec_1 .cont_txt {
        text-align: left;
        margin-bottom: 30px; } }
  @media screen and (max-width: 600px) {
    #business.index .sec_1 .illust-responsive {
      margin: 0 -15px;
      width: 100vw;
      overflow-x: scroll; } }
#business.index .box_illust {
  position: relative;
  width: 1200px; }
  @media screen and (max-width: 600px) {
    #business.index .box_illust {
      transform: scale(0.8);
      margin: -80px -120px 0 -100px; } }
  #business.index .box_illust:before {
    content: "";
    width: 182px;
    height: 116px;
    background: url("../../business/img/obj_1.png") no-repeat center/contain;
    position: absolute;
    right: -60px;
    top: 75px;
    z-index: 10;
    transition: 1s;
    opacity: 0;
    transform: translateX(-300px); }
  #business.index .box_illust:after {
    content: "";
    width: 180px;
    height: 152px;
    background: url("../../business/img/obj_2.png") no-repeat center/contain;
    position: absolute;
    left: -70px;
    bottom: 0px;
    z-index: 10;
    transition: 1s;
    opacity: 0;
    transform: translateX(300px) rotate(60deg); }
  #business.index .box_illust .box_bg {
    opacity: 0.85; }
  #business.index .box_illust .base {
    opacity: 0;
    transform: scale(0.8);
    transition: 0.6s; }
    #business.index .box_illust .base.bg_1 {
      transition-delay: 0s;
      position: relative; }
    #business.index .box_illust .base.bg_2 {
      transition-delay: .2s; }
    #business.index .box_illust .base.bg_3 {
      transition-delay: .4s; }
    #business.index .box_illust .base.bg_4 {
      transition-delay: .6s; }
    #business.index .box_illust .base.bg_5 {
      transition-delay: .8s; }
    #business.index .box_illust .base.bg_6 {
      transition-delay: 1.0s; }
    #business.index .box_illust .base.bg_7 {
      transition-delay: 1.2s; }
    #business.index .box_illust .base.bg_8 {
      transition-delay: 1.4s; }
    #business.index .box_illust .base.bg_2, #business.index .box_illust .base.bg_3, #business.index .box_illust .base.bg_4, #business.index .box_illust .base.bg_5, #business.index .box_illust .base.bg_6, #business.index .box_illust .base.bg_7, #business.index .box_illust .base.bg_8 {
      position: absolute;
      left: 0;
      top: 0; }
  #business.index .box_illust a {
    width: 180px;
    height: 40px;
    background-color: #000;
    color: #fff;
    display: block;
    position: absolute;
    display: flex;
    align-items: center;
    padding: 0 40px 0 13px;
    font-family: "Roboto", serif;
    font-size: 1.8rem;
    font-weight: 500;
    letter-spacing: 0.05em;
    z-index: 1;
    -webkit-clip-path: inset(0 100% 0 0);
    clip-path: inset(0 100% 0 0);
    transition: .6s 2.6s; }
    #business.index .box_illust a.btn_bedroom1 {
      left: 0px;
      top: 212px; }
    #business.index .box_illust a.btn_bedroom2 {
      left: 890px;
      top: 420px; }
    #business.index .box_illust a.btn_bathroom {
      left: 492px;
      top: 78px; }
    #business.index .box_illust a.btn_toilet {
      left: 765px;
      top: 220px; }
    #business.index .box_illust a.btn_kitchen {
      left: 270px;
      top: 355px; }
    #business.index .box_illust a.btn_livingroom {
      left: 580px;
      top: 580px; }
    #business.index .box_illust a.btn_dining {
      left: 162px;
      top: 640px; }
    #business.index .box_illust a.btn_healthcare {
      left: 545px;
      top: 730px; }
    #business.index .box_illust a.btn_car {
      left: 1020px;
      top: 580px; }
    #business.index .box_illust a:before {
      content: "";
      position: absolute;
      left: 7px;
      top: 7px;
      background-color: rgba(0, 0, 0, 0.1);
      width: 100%;
      height: 100%;
      transition: 0.2s;
      z-index: -1;
      pointer-events: none; }
    #business.index .box_illust a:after {
      content: "+";
      position: absolute;
      right: 10px;
      top: 50%;
      line-height: 1;
      font-size: 2.0rem;
      font-weight: 200;
      margin-top: -1rem;
      transition: 0.4s; }
    #business.index .box_illust a:hover:before {
      left: 0px;
      top: 0px; }
    #business.index .box_illust a:hover:after {
      transform: rotate(90deg); }
  #business.index .box_illust .mark {
    position: absolute;
    font-size: 3.0rem;
    line-height: 0;
    opacity: 0;
    transform: scale(0.1);
    transition: 0.8s 1.8s cubic-bezier(0.07, 0.31, 0.34, 1.8); }
    #business.index .box_illust .mark:after {
      position: absolute;
      left: 0;
      top: 0;
      opacity: 0; }
    #business.index .box_illust .mark_circle:before, #business.index .box_illust .mark_circle:after {
      content: "●"; }
    #business.index .box_illust .mark_circle:after {
      top: -0.07em; }
    #business.index .box_illust .mark_triangle:before, #business.index .box_illust .mark_triangle:after {
      content: "▲"; }
    #business.index .box_illust .mark_triangle:after {
      top: -0.2em; }
    #business.index .box_illust .mark_square:before, #business.index .box_illust .mark_square:after {
      content: "■"; }
    #business.index .box_illust .mark_square:after {
      top: -0.07em; }
    #business.index .box_illust .mark_rhombus:before, #business.index .box_illust .mark_rhombus:after {
      content: "◆"; }
    #business.index .box_illust .mark_rhombus:after {
      top: -0.07em; }
    #business.index .box_illust .mark_pink {
      color: rgba(255, 107, 168, 0.8); }
    #business.index .box_illust .mark_blue {
      color: rgba(0, 128, 204, 0.8); }
    #business.index .box_illust .mark_yellow {
      color: rgba(255, 218, 3, 0.9); }
    #business.index .box_illust .mark_1 {
      left: 868px;
      top: 17px; }
    #business.index .box_illust .mark_2 {
      left: 600px;
      top: 150px; }
    #business.index .box_illust .mark_3 {
      left: 350px;
      top: 100px; }
    #business.index .box_illust .mark_4 {
      left: 330px;
      top: 425px; }
    #business.index .box_illust .mark_5 {
      left: 475px;
      top: 510px; }
    #business.index .box_illust .mark_6 {
      left: 495px;
      top: 755px; }
    #business.index .box_illust .mark_7 {
      left: 770px;
      top: 70px; }
    #business.index .box_illust .mark_8 {
      left: 730px;
      top: 335px; }
    #business.index .box_illust .mark_9 {
      left: 1040px;
      top: 360px; }
    #business.index .box_illust .mark_10 {
      left: 250px;
      top: 460px; }
    #business.index .box_illust .mark_11 {
      left: 675px;
      top: 445px; }
    #business.index .box_illust .mark_12 {
      left: 970px;
      top: 615px; }
    #business.index .box_illust .mark_13 {
      left: 130px;
      top: 305px; }
    #business.index .box_illust .mark_14 {
      left: 465px;
      top: 230px; }
    #business.index .box_illust .mark_15 {
      left: 905px;
      top: 190px; }
    #business.index .box_illust .mark_16 {
      left: 960px;
      top: 395px; }
    #business.index .box_illust .mark_17 {
      left: 315px;
      top: 600px; }
    #business.index .box_illust .mark_18 {
      left: 1110px;
      top: 790px; }
    #business.index .box_illust .mark.active:after {
      animation: rippleAnime_mark 1.4s infinite ease-in-out; }
  #business.index .box_illust.isAnimate:before {
    opacity: 1;
    transform: translateX(0); }
  #business.index .box_illust.isAnimate:after {
    opacity: 1;
    transform: translateX(0) rotate(0deg); }
  #business.index .box_illust.isAnimate .base {
    opacity: 1;
    transform: scale(1); }
  #business.index .box_illust.isAnimate a {
    -webkit-clip-path: inset(0);
    clip-path: inset(0); }
  #business.index .box_illust.isAnimate .mark {
    opacity: 1;
    transform: scale(1); }
#business.index .remodal {
  max-width: 1000px; }
  @media screen and (max-width: 600px) {
    #business.index .remodal {
      padding: 25px 30px 45px; } }
  #business.index .remodal .box_ttl {
    display: flex;
    justify-content: space-between;
    padding-top: 10px; }
    @media screen and (max-width: 600px) {
      #business.index .remodal .box_ttl {
        flex-direction: column;
        align-items: center; } }
    #business.index .remodal .box_ttl dt {
      width: 120px; }
      @media screen and (max-width: 600px) {
        #business.index .remodal .box_ttl dt {
          margin-bottom: 15px; } }
    #business.index .remodal .box_ttl dd {
      padding-left: 30px;
      flex: 1; }
      @media screen and (max-width: 600px) {
        #business.index .remodal .box_ttl dd {
          padding-left: 0px; } }
      #business.index .remodal .box_ttl dd h3 {
        font-family: "Roboto", serif;
        font-size: 4.2rem;
        font-weight: 500;
        letter-spacing: 0.02em;
        text-align: left;
        line-height: 1.4; }
        @media screen and (max-width: 600px) {
          #business.index .remodal .box_ttl dd h3 {
            text-align: center;
            font-size: 3.2rem; } }
  #business.index .remodal .box_link {
    display: flex;
    gap: 45px;
    margin-top: 40px; }
    @media screen and (max-width: 600px) {
      #business.index .remodal .box_link {
        flex-direction: column;
        gap: 20px;
        margin-top: 30px; } }
    #business.index .remodal .box_link li {
      width: 265px; }
      @media screen and (max-width: 600px) {
        #business.index .remodal .box_link li {
          width: calc(100% - 20px); } }
      #business.index .remodal .box_link li a.btn_link {
        font-weight: 600;
        padding: 0 2em 1px 0.8em; }
        #business.index .remodal .box_link li a.btn_link .arrow {
          width: 44px;
          height: 30px;
          right: -20px;
          bottom: -12px; }
        #business.index .remodal .box_link li a.btn_link.cat_pink {
          border-color: #FF6BA8; }
          #business.index .remodal .box_link li a.btn_link.cat_pink .arrow {
            background-color: #FF6BA8; }
        #business.index .remodal .box_link li a.btn_link.cat_blue {
          border-color: #0080CC; }
          #business.index .remodal .box_link li a.btn_link.cat_blue .arrow {
            background-color: #0080CC; }
        #business.index .remodal .box_link li a.btn_link.cat_yellow {
          border-color: #FFDA00; }
          #business.index .remodal .box_link li a.btn_link.cat_yellow .arrow {
            background-color: #FFDA00; }
      #business.index .remodal .box_link li .mark {
        font-size: 110%;
        font-style: normal;
        margin-right: 0.2em; }
        #business.index .remodal .box_link li .mark_circle:before {
          content: "●"; }
        #business.index .remodal .box_link li .mark_triangle:before {
          content: "▲"; }
        #business.index .remodal .box_link li .mark_square:before {
          content: "■"; }
        #business.index .remodal .box_link li .mark_rhombus:before {
          content: "◆"; }
        #business.index .remodal .box_link li .mark_pink {
          color: #ff6ba8; }
        #business.index .remodal .box_link li .mark_blue {
          color: #0080cc; }
        #business.index .remodal .box_link li .mark_yellow {
          color: #ffda03; }
#business.job .txt_cont {
  padding: 60px 0 80px; }
  @media screen and (max-width: 600px) {
    #business.job .txt_cont {
      padding: 50px 0 30px;
      text-align: left; } }
#business.job .sec_1 {
  padding-bottom: 120px; }
  @media screen and (max-width: 600px) {
    #business.job .sec_1 {
      padding-bottom: 80px; } }
  @media screen and (max-width: 600px) {
    #business.job .sec_1 .table-responsive {
      margin: 0 -15px; } }
  @media screen and (max-width: 600px) {
    #business.job .sec_1 .box_matrix {
      width: 820px; } }
#business.job .sec_2 {
  padding-bottom: 120px; }
  #business.job .sec_2 h2 {
    font-size: 3.0rem;
    font-weight: 600;
    text-align: center;
    position: relative;
    top: -0.8em;
    letter-spacing: 0.1em;
    margin-bottom: 40px; }
    @media screen and (max-width: 600px) {
      #business.job .sec_2 h2 {
        margin-bottom: 20px; } }
  #business.job .sec_2 .box_job {
    background-color: #fff;
    padding: 20px 40px 40px;
    margin-bottom: 20px; }
    @media screen and (max-width: 600px) {
      #business.job .sec_2 .box_job {
        padding: 15px 20px 20px; } }
    #business.job .sec_2 .box_job__tag span {
      display: inline-block;
      color: #fff;
      line-height: 1;
      width: 100px;
      padding: 3px 10px 5px;
      text-align: center;
      font-weight: 600; }
      #business.job .sec_2 .box_job__tag span.tech {
        background-color: #4BA5DB; }
      #business.job .sec_2 .box_job__tag span.office {
        background-color: #FFBA00; }
    #business.job .sec_2 .box_job__inner {
      display: flex;
      justify-content: space-between;
      align-items: flex-start;
      margin-top: 1.4em; }
      @media screen and (max-width: 600px) {
        #business.job .sec_2 .box_job__inner {
          flex-direction: column; } }
    #business.job .sec_2 .box_job__txt {
      width: 700px; }
      @media screen and (max-width: 600px) {
        #business.job .sec_2 .box_job__txt {
          width: 100%; } }
      #business.job .sec_2 .box_job__txt h3 {
        font-size: 2.8rem;
        font-weight: 600;
        margin-bottom: 0.2em; }
        @media screen and (max-width: 600px) {
          #business.job .sec_2 .box_job__txt h3 {
            font-size: 2.4rem; } }
    #business.job .sec_2 .box_job__phase {
      width: 380px;
      background-color: #f6f6f6;
      padding: 15px 20px; }
      @media screen and (max-width: 600px) {
        #business.job .sec_2 .box_job__phase {
          width: 100%;
          margin-top: 20px;
          padding: 10px 13px; } }
      #business.job .sec_2 .box_job__phase h4 {
        overflow: hidden; }
        #business.job .sec_2 .box_job__phase h4 span {
          display: inline-block;
          position: relative;
          font-weight: 500; }
          #business.job .sec_2 .box_job__phase h4 span:after {
            content: "";
            width: 50vw;
            height: 1px;
            background-color: #999;
            position: absolute;
            right: -15px;
            top: 55%;
            transform: translateX(100%); }
      #business.job .sec_2 .box_job__phase ul {
        padding: 5px 0;
        display: flex;
        flex-direction: column;
        align-items: flex-start; }
        #business.job .sec_2 .box_job__phase ul li {
          padding: 4px 11px 6px 8px;
          background-color: #fff;
          line-height: 1;
          border-radius: 15px;
          margin-top: 8px;
          font-size: 1.4rem; }
          #business.job .sec_2 .box_job__phase ul li:before {
            content: "●";
            display: inline-block;
            margin-right: 0.2em; }
          #business.job .sec_2 .box_job__phase ul li:after {
            content: "";
            display: block; }
          #business.job .sec_2 .box_job__phase ul li.color1 {
            color: #FF6BA8; }
          #business.job .sec_2 .box_job__phase ul li.color2 {
            color: #AF65D0; }
          #business.job .sec_2 .box_job__phase ul li.color3 {
            color: #3BAC2C; }
          #business.job .sec_2 .box_job__phase ul li.color4 {
            color: #FFBA00; }
          #business.job .sec_2 .box_job__phase ul li.color5 {
            color: #0080CC; }
          #business.job .sec_2 .box_job__phase ul li.color6 {
            color: #C77F58; }
    #business.job .sec_2 .box_job__interview {
      margin-top: 30px; }
      #business.job .sec_2 .box_job__interview h4 {
        font-family: "Roboto", serif;
        font-size: 3.2rem;
        font-style: italic;
        font-weight: 600;
        letter-spacing: 0.05em;
        color: #0080CC;
        position: relative;
        overflow: hidden;
        line-height: 1; }
        #business.job .sec_2 .box_job__interview h4:after {
          content: "";
          width: 1200px;
          height: 18px;
          background: url("../../business/img/job/line_dot.png") repeat-x left center/auto 18px;
          position: absolute;
          left: 6.3em;
          top: 8px; }
      #business.job .sec_2 .box_job__interview_inner {
        display: flex;
        margin-top: 20px;
        justify-content: space-between; }
        @media screen and (max-width: 600px) {
          #business.job .sec_2 .box_job__interview_inner {
            flex-direction: column; } }
      #business.job .sec_2 .box_job__interview_item {
        display: flex;
        justify-content: space-between;
        width: 510px;
        position: relative; }
        @media screen and (max-width: 600px) {
          #business.job .sec_2 .box_job__interview_item {
            width: 100%;
            margin: 10px 0; } }
        #business.job .sec_2 .box_job__interview_item:after {
          content: "";
          width: 410px;
          height: 1px;
          background-color: #707070;
          position: absolute;
          right: 0;
          bottom: 0; }
          @media screen and (max-width: 600px) {
            #business.job .sec_2 .box_job__interview_item:after {
              width: 100%; } }
        #business.job .sec_2 .box_job__interview_item figure {
          width: 120px;
          transition: 0.4s; }
          @media screen and (max-width: 600px) {
            #business.job .sec_2 .box_job__interview_item figure {
              width: 100px; } }
        #business.job .sec_2 .box_job__interview_item dl {
          width: 360px;
          padding-top: 14px;
          transition: 0.4s;
          padding-right: 80px; }
          @media screen and (max-width: 600px) {
            #business.job .sec_2 .box_job__interview_item dl {
              flex: 1;
              margin-left: 15px;
              padding-right: 0;
              padding-bottom: 40px;
              padding-top: 0; } }
          #business.job .sec_2 .box_job__interview_item dl.line3 {
            padding-top: 2px; }
          #business.job .sec_2 .box_job__interview_item dl dt {
            font-size: 1.8rem;
            font-weight: 600;
            margin-bottom: 0.2em; }
            @media screen and (max-width: 600px) {
              #business.job .sec_2 .box_job__interview_item dl dt {
                font-size: 1.6rem; } }
          #business.job .sec_2 .box_job__interview_item dl dd {
            line-height: 1.4; }
            @media screen and (max-width: 600px) {
              #business.job .sec_2 .box_job__interview_item dl dd {
                font-size: 1.3rem; } }
        #business.job .sec_2 .box_job__interview_item .arrow {
          background-color: #000;
          width: 60px;
          height: 40px;
          position: absolute;
          right: 0px;
          bottom: 0px;
          overflow: hidden;
          transition: 0.4s; }
          @media screen and (max-width: 600px) {
            #business.job .sec_2 .box_job__interview_item .arrow {
              width: 45px;
              height: 30px; } }
          #business.job .sec_2 .box_job__interview_item .arrow:before {
            content: "";
            width: 10px;
            height: 10px;
            border-top: solid 1px #fff;
            border-right: solid 1px #fff;
            position: absolute;
            left: 50%;
            top: 50%;
            transform: translate(-60%, -50%) rotate(45deg); }
            @media screen and (max-width: 600px) {
              #business.job .sec_2 .box_job__interview_item .arrow:before {
                width: 7px;
                height: 7px; } }
        #business.job .sec_2 .box_job__interview_item:hover figure {
          opacity: 0.6; }
        #business.job .sec_2 .box_job__interview_item:hover dl {
          opacity: 0.6; }
        #business.job .sec_2 .box_job__interview_item:hover .arrow {
          background-color: #666; }
          #business.job .sec_2 .box_job__interview_item:hover .arrow:before {
            animation: arrowMove 0.3s ease-in-out forwards; }

@keyframes lineAnime {
  0% {
    width: 0%; }
  100% {
    width: 100%; } }
@keyframes floatingAnime {
  0% {
    transform: translate(0, 0); }
  50% {
    transform: translate(0, 20%); }
  100% {
    transform: translate(0, 0); } }
#people:not(.index) .contents {
  padding-top: 0; }
#people .sec_1 {
  background-color: #f6f6f6;
  padding-top: 100px;
  overflow: hidden;
  position: relative; }
  @media screen and (max-width: 600px) {
    #people .sec_1 {
      padding-top: 150px; } }
  #people .sec_1:before {
    content: "";
    background: url("../../people/img/obj_01.png") no-repeat left center/contain;
    width: 230px;
    height: 50px;
    position: absolute;
    top: 275px;
    left: 0px;
    z-index: 10; }
    @media screen and (max-width: 600px) {
      #people .sec_1:before {
        width: 115px;
        height: 25px;
        top: 135px; } }
  #people .sec_1 .cont_cat {
    font-family: "Roboto", serif;
    font-size: 9.4rem;
    font-weight: 600;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #0080CC;
    color: transparent;
    letter-spacing: 0.1em;
    line-height: 1;
    position: absolute;
    left: -135px;
    top: 10px;
    z-index: 10; }
    @media screen and (max-width: 600px) {
      #people .sec_1 .cont_cat {
        left: 5px;
        top: -90px;
        font-size: 6.0rem; } }
  #people .sec_1 .main_img {
    position: relative;
    width: 87.5%;
    height: 680px;
    background-position: center top;
    background-size: cover;
    margin-left: 12.5%;
    position: relative; }
    @media screen and (max-width: 600px) {
      #people .sec_1 .main_img {
        width: 100%;
        margin-left: 0;
        height: 240px; } }
    #people .sec_1 .main_img:before {
      content: "";
      background: url("../../people/img/obj_02.png") no-repeat left center/contain;
      width: 210px;
      height: 210px;
      position: absolute;
      bottom: -210px;
      left: calc(37.5% + 700px);
      z-index: 10; }
  #people .sec_1 .main_ttl {
    position: absolute; }
    #people .sec_1 .main_ttl.nishiura {
      left: 14%;
      top: 170px;
      width: 284px; }
      @media screen and (max-width: 600px) {
        #people .sec_1 .main_ttl.nishiura {
          left: 5%;
          top: 30px;
          width: 142px; } }
    #people .sec_1 .main_ttl.konishi {
      left: 51%;
      top: 100px;
      width: 278px; }
      @media screen and (max-width: 600px) {
        #people .sec_1 .main_ttl.konishi {
          left: 50%;
          top: 20px;
          width: 139px; } }
    #people .sec_1 .main_ttl.tanioku {
      left: 44%;
      top: 90px;
      width: 356px; }
      @media screen and (max-width: 600px) {
        #people .sec_1 .main_ttl.tanioku {
          left: 39%;
          top: 30px;
          width: 178px; } }
    #people .sec_1 .main_ttl.okukawa {
      left: 11%;
      top: 120px;
      width: 260px; }
      @media screen and (max-width: 600px) {
        #people .sec_1 .main_ttl.okukawa {
          left: 55%;
          top: 15px;
          width: 130px; } }
    #people .sec_1 .main_ttl.morimoto {
      left: 25%;
      top: 40px;
      width: 230px; }
      @media screen and (max-width: 600px) {
        #people .sec_1 .main_ttl.morimoto {
          left: 17%;
          top: 30px;
          width: 115px; } }
    #people .sec_1 .main_ttl.hirata {
      left: 14%;
      top: 150px;
      width: 272px; }
      @media screen and (max-width: 600px) {
        #people .sec_1 .main_ttl.hirata {
          left: 1%;
          top: 60px;
          width: 136px; } }
    #people .sec_1 .main_ttl.kawakami {
      left: 52%;
      top: 60px;
      width: 276px; }
      @media screen and (max-width: 600px) {
        #people .sec_1 .main_ttl.kawakami {
          left: 56%;
          top: 17px;
          width: 138px; } }
    #people .sec_1 .main_ttl.tanino {
      left: 28%;
      top: 150px;
      width: 292px; }
      @media screen and (max-width: 600px) {
        #people .sec_1 .main_ttl.tanino {
          left: 18%;
          top: 40px;
          width: 141px; } }
    #people .sec_1 .main_ttl.sada {
      left: 52%;
      top: 80px;
      width: 290px; }
      @media screen and (max-width: 600px) {
        #people .sec_1 .main_ttl.sada {
          left: 47%;
          top: 18px;
          width: 145px; } }
  #people .sec_1 .profile {
    background-color: #000;
    color: #fff;
    width: 600px;
    margin-left: 50%;
    padding: 6px 15px;
    position: relative; }
    @media screen and (max-width: 600px) {
      #people .sec_1 .profile {
        margin-left: 0;
        margin-top: 100px;
        width: 100%;
        padding: 8px 10px; } }
    #people .sec_1 .profile:before {
      content: "";
      width: 50vw;
      height: 80px;
      background-color: #000;
      position: absolute;
      left: 460px;
      top: -80px; }
      @media screen and (max-width: 600px) {
        #people .sec_1 .profile:before {
          height: 40px;
          left: 80%;
          top: -40px; } }
    #people .sec_1 .profile .tag {
      width: 160px;
      position: absolute;
      right: 20px;
      top: -150px; }
      @media screen and (max-width: 600px) {
        #people .sec_1 .profile .tag {
          width: 100px;
          right: 20px;
          top: -80px; } }
    #people .sec_1 .profile dl {
      display: flex;
      margin: 0.3em 0; }
      #people .sec_1 .profile dl dt {
        color: #0080CC;
        line-height: 1.5;
        width: 5.2em;
        text-align-last: justify;
        position: relative;
        padding-right: 1em; }
        @media screen and (max-width: 600px) {
          #people .sec_1 .profile dl dt {
            font-size: 1.4rem;
            width: 5.2em; } }
        #people .sec_1 .profile dl dt:after {
          position: absolute;
          right: 0;
          top: 0;
          content: "："; }
      #people .sec_1 .profile dl dd {
        line-height: 1.5;
        flex: 1; }
        @media screen and (max-width: 600px) {
          #people .sec_1 .profile dl dd {
            font-size: 1.4rem; } }
  #people .sec_1 .box_douki {
    display: flex;
    align-items: center;
    width: 1200px;
    margin: 45px auto 75px;
    background-color: #fff;
    position: relative; }
    @media screen and (max-width: 600px) {
      #people .sec_1 .box_douki {
        width: 90%;
        display: block;
        margin: 45px auto 50px; } }
    #people .sec_1 .box_douki h3 {
      background-color: #FF6BA8;
      color: #fff;
      width: 180px;
      min-height: 180px;
      display: flex;
      justify-content: center;
      align-items: center; }
      @media screen and (max-width: 600px) {
        #people .sec_1 .box_douki h3 {
          width: 100%;
          min-height: 80px; }
          #people .sec_1 .box_douki h3 br {
            display: none; } }
    #people .sec_1 .box_douki p {
      flex: 1;
      padding: 20px 40px;
      line-height: 1.7;
      text-align: justify;
      text-justify: inter-ideograph; }
      @media screen and (max-width: 600px) {
        #people .sec_1 .box_douki p {
          padding: 18px 20px; } }
#people .ttl_theme {
  margin-bottom: 30px; }
  @media screen and (max-width: 600px) {
    #people .ttl_theme {
      margin-bottom: 30px; } }
  #people .ttl_theme p {
    font-family: "Roboto", serif;
    font-size: 12rem;
    font-weight: 600;
    color: rgba(0, 128, 204, 0.1);
    line-height: 1;
    position: relative;
    left: -0.05em; }
    @media screen and (max-width: 600px) {
      #people .ttl_theme p {
        font-size: 6.2rem; } }
  #people .ttl_theme h2 {
    font-size: 3rem;
    color: #0080cc;
    line-height: 1;
    margin-top: -1em; }
    @media screen and (max-width: 600px) {
      #people .ttl_theme h2 {
        font-size: 2rem; } }
  #people .ttl_theme.txt_right {
    left: 0.05em; }
#people .sec_2 .box_firstyear {
  padding: 50px 0 90px; }
  @media screen and (max-width: 600px) {
    #people .sec_2 .box_firstyear {
      padding: 40px 0 60px; } }
  #people .sec_2 .box_firstyear .txt_set {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    text-align: justify;
    text-justify: inter-ideograph;
    min-height: 340px; }
    @media screen and (max-width: 600px) {
      #people .sec_2 .box_firstyear .txt_set {
        flex-direction: column; } }
    #people .sec_2 .box_firstyear .txt_set h3 {
      font-size: 2.1rem;
      font-weight: 600;
      margin-bottom: 0.6em; }
      @media screen and (max-width: 600px) {
        #people .sec_2 .box_firstyear .txt_set h3 {
          font-size: 1.7rem;
          line-height: 1.6; } }
    #people .sec_2 .box_firstyear .txt_set i {
      width: 110px;
      margin-top: 100px;
      margin-left: 20px; }
      @media screen and (max-width: 600px) {
        #people .sec_2 .box_firstyear .txt_set i {
          width: 70px;
          transform: rotate(90deg);
          margin: 45px auto 35px; } }
    #people .sec_2 .box_firstyear .txt_set__left {
      width: 520px;
      padding: 30px;
      border: solid 1px #0080CC;
      position: relative; }
      @media screen and (max-width: 600px) {
        #people .sec_2 .box_firstyear .txt_set__left {
          width: 96%;
          padding: 20px; } }
      #people .sec_2 .box_firstyear .txt_set__left:before {
        content: "";
        width: 20px;
        height: 100%;
        background-color: #0080CC;
        border: solid 1px #0080CC;
        position: absolute;
        right: -21px;
        top: 9px;
        transform: skewY(45deg); }
        @media screen and (max-width: 600px) {
          #people .sec_2 .box_firstyear .txt_set__left:before {
            width: 15px;
            top: 7px;
            right: -17px; } }
      #people .sec_2 .box_firstyear .txt_set__left:after {
        content: "";
        width: 100%;
        height: 20px;
        background-color: #0080CC;
        border: solid 1px #0080CC;
        position: absolute;
        left: 9px;
        bottom: -21px;
        transform: skewX(45deg); }
        @media screen and (max-width: 600px) {
          #people .sec_2 .box_firstyear .txt_set__left:after {
            height: 15px;
            left: 7px;
            bottom: -17px; } }
    #people .sec_2 .box_firstyear .txt_set__right {
      width: 520px;
      padding: 30px;
      border: solid 1px #0080CC;
      background-color: #0080CC;
      position: relative; }
      @media screen and (max-width: 600px) {
        #people .sec_2 .box_firstyear .txt_set__right {
          width: 96%;
          padding: 20px; } }
      #people .sec_2 .box_firstyear .txt_set__right:before {
        content: "";
        width: 20px;
        height: 100%;
        border: solid 1px #0080CC;
        background-color: #fff;
        position: absolute;
        right: -21px;
        top: 9px;
        transform: skewY(45deg); }
        @media screen and (max-width: 600px) {
          #people .sec_2 .box_firstyear .txt_set__right:before {
            width: 15px;
            top: 7px;
            right: -17px; } }
      #people .sec_2 .box_firstyear .txt_set__right:after {
        content: "";
        width: 100%;
        height: 20px;
        border: solid 1px #0080CC;
        background-color: #fff;
        position: absolute;
        left: 9px;
        bottom: -21px;
        transform: skewX(45deg); }
        @media screen and (max-width: 600px) {
          #people .sec_2 .box_firstyear .txt_set__right:after {
            height: 15px;
            left: 7px;
            bottom: -17px; } }
      #people .sec_2 .box_firstyear .txt_set__right h3 {
        color: #fff; }
      #people .sec_2 .box_firstyear .txt_set__right p {
        color: #fff; }
#people .sec_2 .box_career {
  background-color: #f6f6f6;
  padding: 50px 0 0; }
  @media screen and (max-width: 600px) {
    #people .sec_2 .box_career {
      padding: 40px 0 0; } }
  #people .sec_2 .box_career .txt_set .txt {
    padding: 20px;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-direction: column; }
    @media screen and (max-width: 600px) {
      #people .sec_2 .box_career .txt_set .txt {
        padding: 20px 15px 20px; } }
#people .sec_2 .box_feature {
  padding: 50px 0 100px; }
  @media screen and (max-width: 600px) {
    #people .sec_2 .box_feature {
      padding-bottom: 0; } }
#people .sec_2 .txt_set {
  display: flex; }
  @media screen and (max-width: 600px) {
    #people .sec_2 .txt_set {
      display: block; } }
  #people .sec_2 .txt_set figure {
    width: 50%; }
    @media screen and (max-width: 600px) {
      #people .sec_2 .txt_set figure {
        width: 100%; } }
  #people .sec_2 .txt_set .txt {
    width: 50%;
    padding: 0px 20px 20px; }
    @media screen and (max-width: 600px) {
      #people .sec_2 .txt_set .txt {
        width: 100%; } }
    #people .sec_2 .txt_set .txt h3 {
      font-size: 2.2rem;
      font-weight: 600;
      max-width: 520px;
      width: 100%;
      margin: 0 auto 0.6em;
      line-height: 1.4; }
      @media screen and (max-width: 600px) {
        #people .sec_2 .txt_set .txt h3 {
          font-size: 2.0rem; } }
    #people .sec_2 .txt_set .txt p {
      max-width: 520px;
      width: 100%;
      margin: 0 auto;
      text-align: justify;
      text-justify: inter-ideograph; }
  #people .sec_2 .txt_set_re {
    flex-direction: row-reverse; }
#people .sec_3 {
  background-color: #f6f6f6;
  padding: 50px 0 70px;
  position: relative; }
  @media screen and (max-width: 600px) {
    #people .sec_3 {
      padding: 50px 0 120px; } }
  #people .sec_3:after {
    content: "";
    background: url("../../people/img/obj_04.png") no-repeat center center/contain;
    width: 334px;
    height: 336px;
    position: absolute;
    bottom: 10px;
    left: 10px; }
    @media screen and (max-width: 600px) {
      #people .sec_3:after {
        width: 167px;
        height: 168px;
        bottom: 4px;
        left: 4px; } }
  #people .sec_3 .inner {
    display: flex;
    justify-content: space-between;
    position: relative; }
    @media screen and (max-width: 600px) {
      #people .sec_3 .inner {
        display: block; } }
    #people .sec_3 .inner:before {
      content: "";
      background: url("../../people/img/obj_03.png") no-repeat center center/contain;
      width: 80px;
      height: 120px;
      position: absolute;
      top: -80px;
      right: -90px; }
      @media screen and (max-width: 600px) {
        #people .sec_3 .inner:before {
          width: 60px;
          height: 90px;
          top: -100px;
          right: 0px; } }
  #people .sec_3 .box_osusume {
    background: url("../../people/img/bg_osusume.png") no-repeat center top/contain;
    width: 561px;
    height: 561px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: justify;
    text-justify: inter-ideograph;
    margin-top: 205px;
    position: relative;
    z-index: 1; }
    @media screen and (max-width: 600px) {
      #people .sec_3 .box_osusume {
        width: 100vw;
        margin-left: -15px;
        height: 420px;
        background-size: 420px 420px;
        background-position: 70% top;
        margin-top: 50px; } }
    #people .sec_3 .box_osusume:before {
      content: "";
      background: url("../../assets/img/home/obj_01.png") no-repeat center center/contain;
      width: 196px;
      height: 130px;
      transform: rotate(110deg);
      position: absolute;
      top: -55px;
      left: -10px;
      z-index: 5; }
      @media screen and (max-width: 600px) {
        #people .sec_3 .box_osusume:before {
          width: 150px;
          height: 100px; } }
    #people .sec_3 .box_osusume:after {
      content: "";
      background: url("../../assets/img/home/obj_01.png") no-repeat center center/contain;
      width: 150px;
      height: 100px;
      transform: rotate(-35deg);
      position: absolute;
      bottom: -120px;
      right: -10px;
      z-index: 5; }
      @media screen and (max-width: 600px) {
        #people .sec_3 .box_osusume:after {
          width: 100px;
          height: 67px;
          bottom: -40px; } }
    #people .sec_3 .box_osusume__inner {
      width: 360px; }
      @media screen and (max-width: 600px) {
        #people .sec_3 .box_osusume__inner {
          width: 280px; } }
      #people .sec_3 .box_osusume__inner h2 {
        display: flex;
        align-items: center;
        flex-direction: column;
        margin-bottom: 0.8em;
        font-weight: 500; }
        @media screen and (max-width: 600px) {
          #people .sec_3 .box_osusume__inner h2 {
            margin-bottom: 0.4em;
            margin-top: 30px; } }
        #people .sec_3 .box_osusume__inner h2 span {
          display: block;
          line-height: 1.4; }
          #people .sec_3 .box_osusume__inner h2 span:nth-child(1) {
            font-size: 2.6rem;
            letter-spacing: 0.05em; }
            @media screen and (max-width: 600px) {
              #people .sec_3 .box_osusume__inner h2 span:nth-child(1) {
                font-size: 2.0rem; } }
          #people .sec_3 .box_osusume__inner h2 span:nth-child(2) {
            font-size: 4.0rem;
            font-weight: 600;
            color: #FF6BA8; }
            @media screen and (max-width: 600px) {
              #people .sec_3 .box_osusume__inner h2 span:nth-child(2) {
                font-size: 3.0rem; } }
      #people .sec_3 .box_osusume__inner p {
        padding-bottom: 90px; }
  #people .sec_3 .box_schedule {
    width: 560px;
    position: relative;
    z-index: 1; }
    @media screen and (max-width: 600px) {
      #people .sec_3 .box_schedule {
        width: 100%;
        padding-top: 60px; } }
    #people .sec_3 .box_schedule .ttl_onemonth {
      margin-bottom: 0;
      height: 205px; }
      #people .sec_3 .box_schedule .ttl_onemonth p {
        font-size: 9.6rem; }
        @media screen and (max-width: 600px) {
          #people .sec_3 .box_schedule .ttl_onemonth p {
            font-size: 6.6rem;
            line-height: 0.95; } }
      #people .sec_3 .box_schedule .ttl_onemonth h2 {
        font-size: 3rem;
        line-height: 1.3;
        margin-top: 0; }
        @media screen and (max-width: 600px) {
          #people .sec_3 .box_schedule .ttl_onemonth h2 {
            font-size: 2rem; } }
    #people .sec_3 .box_schedule .time_schedule {
      background-color: #fff;
      position: relative; }
      #people .sec_3 .box_schedule .time_schedule:before {
        content: "";
        width: 100%;
        height: 100%;
        background-color: #0080CC;
        position: absolute;
        left: 10px;
        top: 10px;
        z-index: -1; }
      #people .sec_3 .box_schedule .time_schedule dl {
        display: flex;
        position: relative;
        padding: 10px 10px 10px 10px; }
        #people .sec_3 .box_schedule .time_schedule dl:before {
          content: "";
          width: 10px;
          height: 100%;
          background-color: rgba(0, 128, 204, 0.1);
          position: absolute;
          left: 75px;
          top: 0; }
        #people .sec_3 .box_schedule .time_schedule dl:first-child {
          padding-top: 15px; }
        #people .sec_3 .box_schedule .time_schedule dl:last-child {
          padding-bottom: 25px; }
        #people .sec_3 .box_schedule .time_schedule dl dt {
          width: 90px;
          line-height: 1.6;
          text-indent: -0.9em;
          padding-left: 0.9em; }
        #people .sec_3 .box_schedule .time_schedule dl dd {
          flex: 1;
          position: relative; }
          #people .sec_3 .box_schedule .time_schedule dl dd:before {
            content: "";
            width: 17px;
            height: 1px;
            background-color: #000;
            position: absolute;
            left: -32px;
            top: 0.7em; }
          #people .sec_3 .box_schedule .time_schedule dl dd h4 {
            font-weight: 600;
            margin-bottom: 0.3em; }
          #people .sec_3 .box_schedule .time_schedule dl dd p {
            line-height: 1.5; }
#people .sec_4 {
  position: relative;
  padding: 60px 0;
  margin: 60px 0 110px; }
  @media screen and (max-width: 600px) {
    #people .sec_4 {
      padding: 40px 0 30px; } }
  #people .sec_4 .inner {
    width: 1090px; }
    @media screen and (max-width: 600px) {
      #people .sec_4 .inner {
        width: 100%; } }
  #people .sec_4:before {
    content: "";
    width: calc(100% - 100px);
    height: 100%;
    background-color: #ccc;
    position: absolute;
    left: 0px;
    top: 60px;
    z-index: -1; }
  #people .sec_4:after {
    content: "";
    width: calc(100% - 100px);
    height: 100%;
    background-color: #0080CC;
    position: absolute;
    right: 0px;
    top: 0px;
    z-index: -1; }
    @media screen and (max-width: 600px) {
      #people .sec_4:after {
        width: calc(100% - 38px); } }
  #people .sec_4 .obj5 {
    content: "";
    background: url("../../people/img/obj_05.png") no-repeat left bottom/contain;
    width: 274px;
    height: 472px;
    position: absolute;
    bottom: -60px;
    left: 0px; }
    @media screen and (max-width: 600px) {
      #people .sec_4 .obj5 {
        width: 100px;
        height: 200px; } }
  #people .sec_4 .ttl_theme p {
    color: rgba(255, 255, 255, 0.1); }
  #people .sec_4 .ttl_theme h2 {
    color: white; }
  #people .sec_4 .ttl_theme.txt_right {
    left: 0.05em; }
#people .slide_people {
  padding: 30px 0; }
  @media screen and (max-width: 600px) {
    #people .slide_people {
      width: 100vw;
      margin-left: -15px; } }
  #people .slide_people__item {
    display: block;
    width: 350px;
    padding: 0 15px; }
    @media screen and (max-width: 600px) {
      #people .slide_people__item {
        width: 300px; } }
    #people .slide_people__item a {
      display: block; }
    #people .slide_people__item figure {
      background-color: #fff;
      padding-top: 20px; }
      #people .slide_people__item figure img {
        transition: 0.4s; }
    #people .slide_people__item .slide_profile {
      padding: 15px 60px 15px 20px;
      position: relative;
      background-color: #fff; }
      #people .slide_people__item .slide_profile .arrow {
        background-color: #000;
        width: 60px;
        height: 40px;
        position: absolute;
        right: 0px;
        bottom: 20px;
        overflow: hidden;
        transition: 0.4s; }
        #people .slide_people__item .slide_profile .arrow:before {
          content: "";
          width: 10px;
          height: 10px;
          border-top: solid 1px #fff;
          border-right: solid 1px #fff;
          position: absolute;
          left: 50%;
          top: 50%;
          transform: translate(-60%, -50%) rotate(45deg); }
      #people .slide_people__item .slide_profile:before {
        content: "";
        display: block;
        width: calc(100% - 20px);
        height: 1px;
        background-color: #666;
        position: absolute;
        right: 0;
        top: 0; }
      #people .slide_people__item .slide_profile .name {
        font-weight: 600;
        margin-bottom: 0.2em; }
      #people .slide_people__item .slide_profile .txt {
        font-size: 1.5rem;
        line-height: 1.6; }
        @media screen and (max-width: 600px) {
          #people .slide_people__item .slide_profile .txt {
            font-size: 1.4rem; } }
    #people .slide_people__item a:hover figure img {
      opacity: 0.7; }
    #people .slide_people__item a:hover .arrow {
      background-color: #0080CC; }
      #people .slide_people__item a:hover .arrow:before {
        animation: arrowMove 0.3s ease-in-out forwards; }
#people .slick-arrow {
  width: 70px;
  height: 70px;
  background-color: rgba(0, 0, 0, 0.2);
  border-radius: 35px;
  position: absolute;
  text-indent: -9999px;
  top: 50%;
  border: none;
  cursor: pointer;
  transition: 0.4s;
  margin-top: -35px;
  z-index: 10; }
  @media screen and (max-width: 600px) {
    #people .slick-arrow {
      width: 50px;
      height: 50px;
      margin-top: -25px;
      background-color: rgba(0, 0, 0, 0.4); } }
  #people .slick-arrow:before {
    content: "";
    width: 10px;
    height: 10px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    position: absolute;
    left: 50%;
    top: 50%;
    transition: 0.3s; }
  #people .slick-arrow:hover {
    background-color: rgba(0, 0, 0, 0.4); }
#people .slick-prev {
  left: -76px; }
  @media screen and (max-width: 600px) {
    #people .slick-prev {
      left: 10px; } }
  #people .slick-prev:before {
    transform: translate(-40%, -50%) rotate(-135deg); }
    @media screen and (max-width: 600px) {
      #people .slick-prev:before {
        transform: translate(-30%, -50%) rotate(-135deg); } }
  #people .slick-prev:hover:before {
    left: 45%; }
#people .slick-next {
  right: -76px; }
  @media screen and (max-width: 600px) {
    #people .slick-next {
      right: 10px; } }
  #people .slick-next:before {
    transform: translate(-60%, -50%) rotate(45deg); }
    @media screen and (max-width: 600px) {
      #people .slick-next:before {
        transform: translate(-70%, -50%) rotate(45deg); } }
  #people .slick-next:hover:before {
    left: 55%; }
#people.index {
  background-color: #f6f6f6; }
  #people.index .index_header {
    position: relative;
    padding: 60px 0 50px; }
    @media screen and (max-width: 600px) {
      #people.index .index_header {
        padding: 10px 0 50px; } }
    #people.index .index_header:before {
      content: "";
      background: url("../../people/img/obj_01.png") no-repeat left center/contain;
      width: 230px;
      height: 50px;
      position: absolute;
      bottom: 10px;
      left: 0px;
      z-index: 10; }
      @media screen and (max-width: 600px) {
        #people.index .index_header:before {
          width: 115px;
          height: 25px;
          top: 105px; } }
    #people.index .index_header .cont_ttl {
      display: flex;
      justify-content: center;
      align-items: flex-end; }
      @media screen and (max-width: 600px) {
        #people.index .index_header .cont_ttl {
          flex-direction: column; } }
      #people.index .index_header .cont_ttl p {
        font-family: "Roboto", serif;
        font-size: 11.0rem;
        font-weight: 600;
        color: #FFDA00;
        line-height: 0.67;
        margin-right: 30px; }
        @media screen and (max-width: 600px) {
          #people.index .index_header .cont_ttl p {
            left: 5px;
            top: 0px;
            font-size: 8.0rem; } }
      #people.index .index_header .cont_ttl h1 {
        background-color: #0080CC;
        color: #fff;
        line-height: 1;
        font-size: 2.8rem;
        padding: 0.1em 0.3em; }
        @media screen and (max-width: 600px) {
          #people.index .index_header .cont_ttl h1 {
            font-size: 1.8rem; } }
  #people.index .index_list {
    padding: 20px 0 60px; }
    #people.index .index_list .inner {
      width: 1180px; }
      @media screen and (max-width: 600px) {
        #people.index .index_list .inner {
          width: 100%; } }
    #people.index .index_list .slide_people {
      display: flex;
      flex-wrap: wrap;
      gap: 30px; }
      #people.index .index_list .slide_people__item {
        width: 360px;
        padding: 0; }
        @media screen and (max-width: 600px) {
          #people.index .index_list .slide_people__item {
            width: 100%;
            max-width: 360px;
            margin: 0 auto; } }
        #people.index .index_list .slide_people__item a {
          position: relative; }
          #people.index .index_list .slide_people__item a:after {
            content: "";
            width: 100%;
            height: 100%;
            background-color: #0080CC;
            position: absolute;
            left: 0;
            top: 0;
            z-index: -1;
            transition: 0.3s ease;
            opacity: 0; }
        #people.index .index_list .slide_people__item a:hover:after {
          left: 8px;
          top: 8px;
          opacity: 1; }

@keyframes lineAnime {
  0% {
    width: 0%; }
  100% {
    width: 100%; } }
@keyframes floatingAnime {
  0% {
    transform: translate(0, 0); }
  50% {
    transform: translate(0, 20%); }
  100% {
    transform: translate(0, 0); } }
#project .cont_header {
  position: relative;
  padding: 60px 0 0;
  background-color: #f6f6f6; }
  @media screen and (max-width: 600px) {
    #project .cont_header {
      padding: 10px 0 50px; } }
  #project .cont_header .cont_ttl {
    padding-top: 60px;
    position: relative;
    z-index: 10; }
    #project .cont_header .cont_ttl p {
      font-family: "Roboto", serif;
      font-size: 18rem;
      font-weight: 600;
      color: #FFC4DC;
      line-height: 1;
      letter-spacing: 0.1em;
      margin-left: 2px; }
      @media screen and (max-width: 600px) {
        #project .cont_header .cont_ttl p {
          font-size: 7.8rem; } }
    #project .cont_header .cont_ttl h1 {
      color: #0080CC;
      line-height: 1;
      font-size: 8.0rem;
      font-weight: 500;
      display: flex;
      justify-content: center;
      align-items: center;
      font-family: "Roboto", serif;
      margin-top: -0.8em; }
      @media screen and (max-width: 600px) {
        #project .cont_header .cont_ttl h1 {
          font-size: 3.2rem;
          white-space: nowrap; } }
      #project .cont_header .cont_ttl h1 span {
        color: #fff;
        -webkit-text-stroke-width: 1px;
        -webkit-text-stroke-color: #0080CC;
        display: inline-block;
        margin-left: 0.3em; }
#project.project1 .cont_header {
  background-color: #f6f6f6;
  height: 500px;
  overflow: visible; }
  @media screen and (max-width: 600px) {
    #project.project1 .cont_header {
      height: 280px; } }
  #project.project1 .cont_header .cont_ttl {
    margin-bottom: 60px; }
    #project.project1 .cont_header .cont_ttl p {
      color: #fff; }
    #project.project1 .cont_header .cont_ttl h1 {
      color: #0080CC;
      padding-right: 240px; }
      @media screen and (max-width: 600px) {
        #project.project1 .cont_header .cont_ttl h1 {
          padding-right: 0px; } }
      #project.project1 .cont_header .cont_ttl h1 span {
        color: #fff;
        -webkit-text-stroke-color: #0080CC;
        position: relative; }
    #project.project1 .cont_header .cont_ttl h2 {
      font-size: 2.4rem;
      font-weight: 600;
      color: #0080CC;
      width: 526px;
      height: 70px;
      background: url("../img/bg_cont_ttl.png") no-repeat left center/contain;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 0 45px 3px 50px;
      margin-top: 20px;
      margin-left: calc(50vw - 270px);
      position: relative; }
      @media screen and (max-width: 600px) {
        #project.project1 .cont_header .cont_ttl h2 {
          font-size: 1.5rem;
          width: 300px;
          height: 40px;
          padding: 0 24px 3px;
          margin-top: 15px;
          margin-left: calc(50vw - 150px);
          white-space: nowrap; } }
  #project.project1 .cont_header .obj_header_1 {
    z-index: 10; }
    @media screen and (max-width: 600px) {
      #project.project1 .cont_header .obj_header_1 {
        top: 56px;
        left: 9%; } }
  #project.project1 .cont_header .obj_header_3 {
    top: 25px;
    right: auto;
    left: -300px; }
    @media screen and (max-width: 600px) {
      #project.project1 .cont_header .obj_header_3 {
        width: 90px;
        top: 0px;
        right: -45px; } }
  #project.project1 .cont_header .obj_header_4 {
    top: 410px;
    right: 80px; }
    @media screen and (max-width: 600px) {
      #project.project1 .cont_header .obj_header_4 {
        top: 230px;
        right: 250px; } }
  #project.project1 .cont_header .obj_header_5 {
    top: 270px; }
    @media screen and (max-width: 600px) {
      #project.project1 .cont_header .obj_header_5 {
        top: 210px;
        right: 7px; } }
#project.project1 .sec_1 .sec_ttl, #project.project1 .sec_2 .sec_ttl {
  width: 100%;
  display: flex; }
  @media screen and (max-width: 600px) {
    #project.project1 .sec_1 .sec_ttl, #project.project1 .sec_2 .sec_ttl {
      flex-direction: column; } }
  #project.project1 .sec_1 .sec_ttl__img, #project.project1 .sec_2 .sec_ttl__img {
    width: 500px; }
    @media screen and (max-width: 600px) {
      #project.project1 .sec_1 .sec_ttl__img, #project.project1 .sec_2 .sec_ttl__img {
        width: 100%; } }
  #project.project1 .sec_1 .sec_ttl__txt, #project.project1 .sec_2 .sec_ttl__txt {
    color: #fff;
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    padding-left: 70px; }
    @media screen and (max-width: 600px) {
      #project.project1 .sec_1 .sec_ttl__txt, #project.project1 .sec_2 .sec_ttl__txt {
        width: 100%;
        padding: 15px 15px 25px;
        align-items: center; } }
    #project.project1 .sec_1 .sec_ttl__txt p, #project.project1 .sec_2 .sec_ttl__txt p {
      font-size: 2.6rem;
      font-weight: 600;
      letter-spacing: 0.05em;
      line-height: 1.6; }
      @media screen and (max-width: 600px) {
        #project.project1 .sec_1 .sec_ttl__txt p, #project.project1 .sec_2 .sec_ttl__txt p {
          font-size: 1.5rem;
          text-align: center; } }
    #project.project1 .sec_1 .sec_ttl__txt h2, #project.project1 .sec_2 .sec_ttl__txt h2 {
      font-size: 5.6rem;
      font-weight: 600;
      font-feature-settings: "palt";
      letter-spacing: 0.1em;
      line-height: 1;
      margin-top: 0.3em; }
      @media screen and (max-width: 600px) {
        #project.project1 .sec_1 .sec_ttl__txt h2, #project.project1 .sec_2 .sec_ttl__txt h2 {
          font-size: 2.6rem;
          text-align: center; } }
#project.project1 .sec_1 .sec_outline, #project.project1 .sec_2 .sec_outline {
  padding: 80px 0; }
  #project.project1 .sec_1 .sec_outline .box_outline, #project.project1 .sec_2 .sec_outline .box_outline {
    margin-bottom: 80px; }
    #project.project1 .sec_1 .sec_outline .box_outline h3, #project.project1 .sec_2 .sec_outline .box_outline h3 {
      font-size: 3.2rem;
      font-weight: 600;
      text-align: center;
      margin-bottom: 0.7em; }
      @media screen and (max-width: 600px) {
        #project.project1 .sec_1 .sec_outline .box_outline h3, #project.project1 .sec_2 .sec_outline .box_outline h3 {
          font-size: 2.4rem; } }
    #project.project1 .sec_1 .sec_outline .box_outline p, #project.project1 .sec_2 .sec_outline .box_outline p {
      line-height: 1.8;
      letter-spacing: 0.03em; }
    #project.project1 .sec_1 .sec_outline .box_outline a, #project.project1 .sec_2 .sec_outline .box_outline a {
      width: 540px;
      font-size: 2.0rem;
      font-weight: 600;
      text-align: center;
      color: #fff;
      background-color: #FF6BA8;
      border-color: #FF6BA8;
      margin: 40px auto 0;
      padding-right: 1.6em; }
      @media screen and (max-width: 600px) {
        #project.project1 .sec_1 .sec_outline .box_outline a, #project.project1 .sec_2 .sec_outline .box_outline a {
          width: 100%;
          font-size: 1.5rem;
          line-height: 1.4;
          padding: 10px 20px;
          height: auto;
          justify-content: center; } }
  #project.project1 .sec_1 .sec_outline .box_product, #project.project1 .sec_2 .sec_outline .box_product {
    display: flex;
    align-items: center;
    background-color: #fff;
    padding: 60px;
    border-radius: 8px;
    border: solid 2px #92C8E9; }
    @media screen and (max-width: 600px) {
      #project.project1 .sec_1 .sec_outline .box_product, #project.project1 .sec_2 .sec_outline .box_product {
        flex-direction: column;
        padding: 15px; } }
    #project.project1 .sec_1 .sec_outline .box_product__img, #project.project1 .sec_2 .sec_outline .box_product__img {
      padding-right: 50px; }
      @media screen and (max-width: 600px) {
        #project.project1 .sec_1 .sec_outline .box_product__img, #project.project1 .sec_2 .sec_outline .box_product__img {
          padding: 20px 0px 30px; } }
      #project.project1 .sec_1 .sec_outline .box_product__img figure, #project.project1 .sec_2 .sec_outline .box_product__img figure {
        margin: 0 auto 15px; }
      #project.project1 .sec_1 .sec_outline .box_product__img h4, #project.project1 .sec_2 .sec_outline .box_product__img h4 {
        font-size: 1.4rem;
        font-weight: 600;
        margin-bottom: 0.4em; }
      #project.project1 .sec_1 .sec_outline .box_product__img p, #project.project1 .sec_2 .sec_outline .box_product__img p {
        font-size: 1.4rem;
        line-height: 1.5; }
    #project.project1 .sec_1 .sec_outline .box_product__txt, #project.project1 .sec_2 .sec_outline .box_product__txt {
      padding-left: 50px; }
      @media screen and (max-width: 600px) {
        #project.project1 .sec_1 .sec_outline .box_product__txt, #project.project1 .sec_2 .sec_outline .box_product__txt {
          border-left: none !important;
          padding-top: 20px;
          padding-left: 0px; } }
      #project.project1 .sec_1 .sec_outline .box_product__txt h3, #project.project1 .sec_2 .sec_outline .box_product__txt h3 {
        font-size: 3.2rem;
        font-weight: 600;
        font-feature-settings: "palt";
        letter-spacing: 0.08em;
        line-height: 1.6;
        margin-bottom: 1em; }
        @media screen and (max-width: 600px) {
          #project.project1 .sec_1 .sec_outline .box_product__txt h3, #project.project1 .sec_2 .sec_outline .box_product__txt h3 {
            font-size: 2.0rem;
            margin-bottom: 0.6em; } }
      #project.project1 .sec_1 .sec_outline .box_product__txt p, #project.project1 .sec_2 .sec_outline .box_product__txt p {
        letter-spacing: 0.05em;
        line-height: 1.7; }
#project.project1 .sec_1 .sec_member, #project.project1 .sec_2 .sec_member {
  padding: 80px 0; }
  @media screen and (max-width: 600px) {
    #project.project1 .sec_1 .sec_member, #project.project1 .sec_2 .sec_member {
      padding: 50px 0 60px; } }
  #project.project1 .sec_1 .sec_member h2, #project.project1 .sec_2 .sec_member h2 {
    font-size: 5.2rem;
    font-weight: 600;
    font-family: "Roboto", serif;
    text-align: center; }
    @media screen and (max-width: 600px) {
      #project.project1 .sec_1 .sec_member h2, #project.project1 .sec_2 .sec_member h2 {
        font-size: 3.6rem; } }
  #project.project1 .sec_1 .sec_member .box_member, #project.project1 .sec_2 .sec_member .box_member {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 60px; }
    @media screen and (max-width: 600px) {
      #project.project1 .sec_1 .sec_member .box_member, #project.project1 .sec_2 .sec_member .box_member {
        margin-top: 40px;
        gap: 40px !important; } }
    #project.project1 .sec_1 .sec_member .box_member__2, #project.project1 .sec_2 .sec_member .box_member__2 {
      gap: 140px; }
    #project.project1 .sec_1 .sec_member .box_member__3, #project.project1 .sec_2 .sec_member .box_member__3 {
      gap: 140px; }
    #project.project1 .sec_1 .sec_member .box_member__4, #project.project1 .sec_2 .sec_member .box_member__4 {
      gap: 70px; }
    #project.project1 .sec_1 .sec_member .box_member__item, #project.project1 .sec_2 .sec_member .box_member__item {
      width: 240px;
      position: relative; }
      @media screen and (max-width: 600px) {
        #project.project1 .sec_1 .sec_member .box_member__item, #project.project1 .sec_2 .sec_member .box_member__item {
          width: 100%;
          padding-left: 120px; } }
      #project.project1 .sec_1 .sec_member .box_member__item figure, #project.project1 .sec_2 .sec_member .box_member__item figure {
        margin-bottom: 28px; }
        @media screen and (max-width: 600px) {
          #project.project1 .sec_1 .sec_member .box_member__item figure, #project.project1 .sec_2 .sec_member .box_member__item figure {
            width: 110px;
            position: absolute;
            left: 0;
            top: 0;
            margin-bottom: 0px; } }
      #project.project1 .sec_1 .sec_member .box_member__item h3, #project.project1 .sec_2 .sec_member .box_member__item h3 {
        line-height: 1;
        position: absolute;
        left: 0;
        top: 260px;
        transform: translateY(-100%); }
        @media screen and (max-width: 600px) {
          #project.project1 .sec_1 .sec_member .box_member__item h3, #project.project1 .sec_2 .sec_member .box_member__item h3 {
            position: static;
            transform: translate(-20px, -5px); } }
        #project.project1 .sec_1 .sec_member .box_member__item h3 span, #project.project1 .sec_2 .sec_member .box_member__item h3 span {
          display: inline-block;
          color: #fff;
          line-height: 1;
          font-size: 1.7rem;
          font-weight: 500;
          padding: 0.1em 0.4em 0.3em;
          white-space: nowrap;
          margin-bottom: 3px; }
          @media screen and (max-width: 600px) {
            #project.project1 .sec_1 .sec_member .box_member__item h3 span, #project.project1 .sec_2 .sec_member .box_member__item h3 span {
              font-size: 1.6rem; } }
      #project.project1 .sec_1 .sec_member .box_member__item h4, #project.project1 .sec_2 .sec_member .box_member__item h4 {
        font-size: 1.6rem;
        font-weight: 600; }
        @media screen and (max-width: 600px) {
          #project.project1 .sec_1 .sec_member .box_member__item h4, #project.project1 .sec_2 .sec_member .box_member__item h4 {
            font-size: 1.5rem; } }
      #project.project1 .sec_1 .sec_member .box_member__item p, #project.project1 .sec_2 .sec_member .box_member__item p {
        font-size: 1.4rem; }
        @media screen and (max-width: 600px) {
          #project.project1 .sec_1 .sec_member .box_member__item p, #project.project1 .sec_2 .sec_member .box_member__item p {
            font-size: 1.3rem; } }
#project.project1 .sec_1 .sec_episode, #project.project1 .sec_2 .sec_episode {
  padding: 90px 0 140px;
  background-color: #f6f6f6; }
  @media screen and (max-width: 600px) {
    #project.project1 .sec_1 .sec_episode, #project.project1 .sec_2 .sec_episode {
      padding: 30px 0 80px; } }
  #project.project1 .sec_1 .sec_episode .ac_box__episode, #project.project1 .sec_2 .sec_episode .ac_box__episode {
    margin-top: 20px; }
    #project.project1 .sec_1 .sec_episode .ac_box__episode dt, #project.project1 .sec_2 .sec_episode .ac_box__episode dt {
      cursor: pointer;
      position: relative;
      padding-right: 45px;
      padding-bottom: 0.3em; }
      @media screen and (max-width: 600px) {
        #project.project1 .sec_1 .sec_episode .ac_box__episode dt, #project.project1 .sec_2 .sec_episode .ac_box__episode dt {
          padding-bottom: 0.5em; } }
      #project.project1 .sec_1 .sec_episode .ac_box__episode dt p, #project.project1 .sec_2 .sec_episode .ac_box__episode dt p {
        font-size: 8.2rem;
        font-weight: 600;
        font-family: "Roboto", serif;
        line-height: 1; }
        @media screen and (max-width: 600px) {
          #project.project1 .sec_1 .sec_episode .ac_box__episode dt p, #project.project1 .sec_2 .sec_episode .ac_box__episode dt p {
            font-size: 5.2rem; } }
        #project.project1 .sec_1 .sec_episode .ac_box__episode dt p span, #project.project1 .sec_2 .sec_episode .ac_box__episode dt p span {
          display: inline-block;
          margin-left: 0.3em;
          color: #fff;
          line-height: 1; }
      #project.project1 .sec_1 .sec_episode .ac_box__episode dt h3, #project.project1 .sec_2 .sec_episode .ac_box__episode dt h3 {
        font-size: 2.2rem;
        font-weight: 600;
        margin-top: -0.8em;
        margin-left: 3.4em; }
        @media screen and (max-width: 600px) {
          #project.project1 .sec_1 .sec_episode .ac_box__episode dt h3, #project.project1 .sec_2 .sec_episode .ac_box__episode dt h3 {
            font-size: 1.6rem;
            margin-left: 0.6em;
            line-height: 1.4;
            margin-top: -0.5em; } }
      #project.project1 .sec_1 .sec_episode .ac_box__episode dt:after, #project.project1 .sec_2 .sec_episode .ac_box__episode dt:after {
        width: 40px;
        height: 40px;
        font-size: 24px;
        display: block;
        content: "＋";
        display: flex;
        justify-content: center;
        align-items: center;
        position: absolute;
        top: 50%;
        right: 0px;
        margin-top: -20px;
        line-height: 1;
        font-weight: 600;
        color: #fff;
        padding-bottom: 3px; }
        @media screen and (max-width: 600px) {
          #project.project1 .sec_1 .sec_episode .ac_box__episode dt:after, #project.project1 .sec_2 .sec_episode .ac_box__episode dt:after {
            width: 30px;
            height: 30px;
            font-size: 18px; } }
      #project.project1 .sec_1 .sec_episode .ac_box__episode dt:hover, #project.project1 .sec_2 .sec_episode .ac_box__episode dt:hover {
        opacity: 0.7; }
    #project.project1 .sec_1 .sec_episode .ac_box__episode dd, #project.project1 .sec_2 .sec_episode .ac_box__episode dd {
      padding: 30px 20px; }
      @media screen and (max-width: 600px) {
        #project.project1 .sec_1 .sec_episode .ac_box__episode dd, #project.project1 .sec_2 .sec_episode .ac_box__episode dd {
          padding: 30px 0px; } }
      #project.project1 .sec_1 .sec_episode .ac_box__episode dd .box_message, #project.project1 .sec_2 .sec_episode .ac_box__episode dd .box_message {
        display: flex;
        width: 100%;
        margin-top: 20px; }
        #project.project1 .sec_1 .sec_episode .ac_box__episode dd .box_message__img, #project.project1 .sec_2 .sec_episode .ac_box__episode dd .box_message__img {
          padding-right: 20px; }
          @media screen and (max-width: 600px) {
            #project.project1 .sec_1 .sec_episode .ac_box__episode dd .box_message__img, #project.project1 .sec_2 .sec_episode .ac_box__episode dd .box_message__img {
              padding-right: 10px; } }
          #project.project1 .sec_1 .sec_episode .ac_box__episode dd .box_message__img figure, #project.project1 .sec_2 .sec_episode .ac_box__episode dd .box_message__img figure {
            width: 80px; }
            @media screen and (max-width: 600px) {
              #project.project1 .sec_1 .sec_episode .ac_box__episode dd .box_message__img figure, #project.project1 .sec_2 .sec_episode .ac_box__episode dd .box_message__img figure {
                width: 60px; } }
          #project.project1 .sec_1 .sec_episode .ac_box__episode dd .box_message__img p, #project.project1 .sec_2 .sec_episode .ac_box__episode dd .box_message__img p {
            font-size: 1.3rem;
            text-align: center; }
            @media screen and (max-width: 600px) {
              #project.project1 .sec_1 .sec_episode .ac_box__episode dd .box_message__img p, #project.project1 .sec_2 .sec_episode .ac_box__episode dd .box_message__img p {
                font-size: 1.1rem;
                margin-top: 0.3em; } }
        #project.project1 .sec_1 .sec_episode .ac_box__episode dd .box_message__txt, #project.project1 .sec_2 .sec_episode .ac_box__episode dd .box_message__txt {
          flex: 1;
          background-color: #fff;
          border-radius: 8px;
          padding: 16px 20px; }
          @media screen and (max-width: 600px) {
            #project.project1 .sec_1 .sec_episode .ac_box__episode dd .box_message__txt, #project.project1 .sec_2 .sec_episode .ac_box__episode dd .box_message__txt {
              border-radius: 6px;
              padding: 10px 15px; } }
    #project.project1 .sec_1 .sec_episode .ac_box__episode.active dt:after, #project.project1 .sec_2 .sec_episode .ac_box__episode.active dt:after {
      content: "ー"; }
#project.project1 .sec_1 .sec_ttl {
  background-color: #0080CC; }
#project.project1 .sec_1 .sec_outline {
  background-color: rgba(0, 128, 204, 0.05); }
  #project.project1 .sec_1 .sec_outline .box_product {
    border: solid 2px #92C8E9; }
    #project.project1 .sec_1 .sec_outline .box_product__img figure {
      width: 140px; }
    #project.project1 .sec_1 .sec_outline .box_product__txt {
      color: #0080CC;
      border-left: solid 1px rgba(0, 128, 204, 0.2); }
      @media screen and (max-width: 600px) {
        #project.project1 .sec_1 .sec_outline .box_product__txt {
          border-top: solid 1px rgba(0, 128, 204, 0.2); } }
#project.project1 .sec_1 .sec_member h2 {
  color: #FF6BA8; }
#project.project1 .sec_1 .sec_member .box_member__item h3 span {
  background-color: #FF6BA8; }
#project.project1 .sec_1 .sec_episode .ac_box__episode dt {
  border-bottom: solid 1px rgba(146, 200, 233, 0.8); }
  #project.project1 .sec_1 .sec_episode .ac_box__episode dt p {
    color: #DDEAF2; }
  #project.project1 .sec_1 .sec_episode .ac_box__episode dt h3 {
    color: #0080CC; }
  #project.project1 .sec_1 .sec_episode .ac_box__episode dt:after {
    background-color: #0080CC; }
#project.project1 .sec_2 .sec_ttl {
  background-color: #FF6BA8;
  position: relative; }
  #project.project1 .sec_2 .sec_ttl .obj_1 {
    position: absolute;
    top: -60px;
    right: 100px;
    width: 150px; }
    @media screen and (max-width: 600px) {
      #project.project1 .sec_2 .sec_ttl .obj_1 {
        top: -45px;
        right: 40px;
        width: 100px; } }
#project.project1 .sec_2 .sec_outline {
  background-color: rgba(255, 107, 168, 0.05); }
  #project.project1 .sec_2 .sec_outline .box_product {
    border: solid 2px #FFC4DC; }
    #project.project1 .sec_2 .sec_outline .box_product__img figure {
      width: 340px; }
      @media screen and (max-width: 600px) {
        #project.project1 .sec_2 .sec_outline .box_product__img figure {
          width: 260px; } }
    #project.project1 .sec_2 .sec_outline .box_product__img p {
      text-align: center; }
    #project.project1 .sec_2 .sec_outline .box_product__txt {
      color: #FF6BA8;
      border-left: solid 1px rgba(255, 107, 168, 0.2); }
      @media screen and (max-width: 600px) {
        #project.project1 .sec_2 .sec_outline .box_product__txt {
          border-top: solid 1px rgba(255, 107, 168, 0.2); } }
#project.project1 .sec_2 .sec_member h2 {
  color: #0080CC; }
#project.project1 .sec_2 .sec_member .box_member__item h3 span {
  background-color: #0080CC; }
#project.project1 .sec_2 .sec_episode .ac_box__episode dt {
  border-bottom: solid 1px #ffc4dc; }
  #project.project1 .sec_2 .sec_episode .ac_box__episode dt p {
    color: #F7E8EE; }
  #project.project1 .sec_2 .sec_episode .ac_box__episode dt h3 {
    color: #FF6BA8; }
  #project.project1 .sec_2 .sec_episode .ac_box__episode dt:after {
    background-color: #FF6BA8; }
#project.project2 .cont_header {
  background-color: transparent;
  padding-top: 80px;
  height: 100vh;
  overflow: hidden; }
  @media screen and (max-width: 600px) {
    #project.project2 .cont_header {
      height: auto; } }
  #project.project2 .cont_header .cont_ttl {
    margin-bottom: 60px; }
    @media screen and (max-width: 600px) {
      #project.project2 .cont_header .cont_ttl {
        margin-bottom: 40px; } }
    #project.project2 .cont_header .cont_ttl p {
      color: rgba(255, 218, 0, 0.6); }
    #project.project2 .cont_header .cont_ttl h1 {
      color: #0080CC;
      padding-right: 240px; }
      @media screen and (max-width: 600px) {
        #project.project2 .cont_header .cont_ttl h1 {
          padding-right: 0px; } }
      #project.project2 .cont_header .cont_ttl h1 span {
        color: #fff;
        -webkit-text-stroke-color: #0080CC;
        position: relative; }
        #project.project2 .cont_header .cont_ttl h1 span:before {
          content: "";
          background: url("../../project/img/project2/txt_fukidashi.png") no-repeat center center/contain;
          width: 380px;
          height: 170px;
          position: absolute;
          top: -160px;
          right: -290px; }
          @media screen and (max-width: 600px) {
            #project.project2 .cont_header .cont_ttl h1 span:before {
              width: 190px;
              height: 85px;
              top: -135px;
              right: -35px; } }
#project.project2 .sec_1 {
  overflow: hidden;
  height: 100vh; }
  @media screen and (max-width: 600px) {
    #project.project2 .sec_1 {
      height: auto;
      padding-bottom: 60px; } }
  #project.project2 .sec_1 .inner {
    position: relative; }
    #project.project2 .sec_1 .inner:before {
      content: "";
      background: url("../../project/img/project2/obj_2.png") no-repeat center center/contain;
      width: 226px;
      height: 58px;
      position: absolute;
      top: 10px;
      right: -140px; }
      @media screen and (max-width: 600px) {
        #project.project2 .sec_1 .inner:before {
          width: 151px;
          height: 38px;
          top: 0px;
          right: -40px; } }
  #project.project2 .sec_1 .main_product {
    display: flex; }
    @media screen and (max-width: 600px) {
      #project.project2 .sec_1 .main_product {
        flex-direction: column; } }
    #project.project2 .sec_1 .main_product figure {
      width: 380px;
      margin-right: 50px;
      position: relative; }
      @media screen and (max-width: 600px) {
        #project.project2 .sec_1 .main_product figure {
          width: 240px;
          margin: 0 auto; } }
      #project.project2 .sec_1 .main_product figure:before {
        content: "";
        background: url("../../project/img/project2/obj_1.png") no-repeat center center/contain;
        width: 448px;
        height: 450px;
        position: absolute;
        bottom: -160px;
        left: -220px;
        z-index: -1; }
        @media screen and (max-width: 600px) {
          #project.project2 .sec_1 .main_product figure:before {
            width: 224px;
            height: 225px;
            bottom: -80px;
            left: -110px; } }
    #project.project2 .sec_1 .main_product__txt {
      flex: 1;
      padding-top: 20px; }
      #project.project2 .sec_1 .main_product__txt h3 {
        font-size: 3.0rem;
        font-weight: 600;
        line-height: 1.5;
        margin-bottom: 0.8em; }
        @media screen and (max-width: 600px) {
          #project.project2 .sec_1 .main_product__txt h3 {
            font-size: 2.0rem; } }
      #project.project2 .sec_1 .main_product__txt p {
        letter-spacing: 0.05em; }
#project.project2 .sec_2, #project.project2 .sec_3, #project.project2 .sec_4, #project.project2 .sec_5, #project.project2 .sec_6, #project.project2 .sec_7, #project.project2 .sec_8 {
  position: relative; }
  @media screen and (max-width: 600px) {
    #project.project2 .sec_2, #project.project2 .sec_3, #project.project2 .sec_4, #project.project2 .sec_5, #project.project2 .sec_6, #project.project2 .sec_7, #project.project2 .sec_8 {
      padding-top: 50px; } }
  @media screen and (max-width: 600px) {
    #project.project2 .sec_2 .fp-scroller, #project.project2 .sec_3 .fp-scroller, #project.project2 .sec_4 .fp-scroller, #project.project2 .sec_5 .fp-scroller, #project.project2 .sec_6 .fp-scroller, #project.project2 .sec_7 .fp-scroller, #project.project2 .sec_8 .fp-scroller {
      padding-bottom: 260px; } }
  #project.project2 .sec_2:before, #project.project2 .sec_3:before, #project.project2 .sec_4:before, #project.project2 .sec_5:before, #project.project2 .sec_6:before, #project.project2 .sec_7:before, #project.project2 .sec_8:before {
    content: "";
    width: 100%;
    height: 100vh;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1; }
    @media screen and (max-width: 600px) {
      #project.project2 .sec_2:before, #project.project2 .sec_3:before, #project.project2 .sec_4:before, #project.project2 .sec_5:before, #project.project2 .sec_6:before, #project.project2 .sec_7:before, #project.project2 .sec_8:before {
        height: 200px;
        top: 50px;
        position: static;
        display: block;
        width: 100vw; } }
  #project.project2 .sec_2 .box_story, #project.project2 .sec_3 .box_story, #project.project2 .sec_4 .box_story, #project.project2 .sec_5 .box_story, #project.project2 .sec_6 .box_story, #project.project2 .sec_7 .box_story, #project.project2 .sec_8 .box_story {
    background-color: #fff;
    padding: 40px;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 1000px;
    transform: translate(-50%, -50%);
    display: flex; }
    @media screen and (max-width: 600px) {
      #project.project2 .sec_2 .box_story, #project.project2 .sec_3 .box_story, #project.project2 .sec_4 .box_story, #project.project2 .sec_5 .box_story, #project.project2 .sec_6 .box_story, #project.project2 .sec_7 .box_story, #project.project2 .sec_8 .box_story {
        flex-direction: column;
        transform: translate(0, 0);
        width: 100%;
        position: static;
        padding: 20px 15px 20px;
        margin-top: 200px; } }
    #project.project2 .sec_2 .box_story:before, #project.project2 .sec_3 .box_story:before, #project.project2 .sec_4 .box_story:before, #project.project2 .sec_5 .box_story:before, #project.project2 .sec_6 .box_story:before, #project.project2 .sec_7 .box_story:before, #project.project2 .sec_8 .box_story:before {
      content: "";
      background: url("../../project/img/project2/obj_slash.png") no-repeat center center/contain;
      width: 207px;
      height: 162px;
      position: absolute;
      top: -50px;
      right: -30px; }
      @media screen and (max-width: 600px) {
        #project.project2 .sec_2 .box_story:before, #project.project2 .sec_3 .box_story:before, #project.project2 .sec_4 .box_story:before, #project.project2 .sec_5 .box_story:before, #project.project2 .sec_6 .box_story:before, #project.project2 .sec_7 .box_story:before, #project.project2 .sec_8 .box_story:before {
          width: 104px;
          height: 81px;
          top: -25px;
          right: -15px;
          z-index: 10;
          top: -60px; } }
    #project.project2 .sec_2 .box_story h3, #project.project2 .sec_3 .box_story h3, #project.project2 .sec_4 .box_story h3, #project.project2 .sec_5 .box_story h3, #project.project2 .sec_6 .box_story h3, #project.project2 .sec_7 .box_story h3, #project.project2 .sec_8 .box_story h3 {
      font-size: 2.8rem;
      font-weight: 600;
      margin-bottom: 0.6em;
      line-height: 1.4; }
      @media screen and (max-width: 600px) {
        #project.project2 .sec_2 .box_story h3, #project.project2 .sec_3 .box_story h3, #project.project2 .sec_4 .box_story h3, #project.project2 .sec_5 .box_story h3, #project.project2 .sec_6 .box_story h3, #project.project2 .sec_7 .box_story h3, #project.project2 .sec_8 .box_story h3 {
          font-size: 2.1rem; } }
    #project.project2 .sec_2 .box_story__txt, #project.project2 .sec_3 .box_story__txt, #project.project2 .sec_4 .box_story__txt, #project.project2 .sec_5 .box_story__txt, #project.project2 .sec_6 .box_story__txt, #project.project2 .sec_7 .box_story__txt, #project.project2 .sec_8 .box_story__txt {
      flex: 1; }
      #project.project2 .sec_2 .box_story__txt p, #project.project2 .sec_3 .box_story__txt p, #project.project2 .sec_4 .box_story__txt p, #project.project2 .sec_5 .box_story__txt p, #project.project2 .sec_6 .box_story__txt p, #project.project2 .sec_7 .box_story__txt p, #project.project2 .sec_8 .box_story__txt p {
        letter-spacing: 0.05em;
        line-height: 1.7; }
    #project.project2 .sec_2 .box_story__img, #project.project2 .sec_3 .box_story__img, #project.project2 .sec_4 .box_story__img, #project.project2 .sec_5 .box_story__img, #project.project2 .sec_6 .box_story__img, #project.project2 .sec_7 .box_story__img, #project.project2 .sec_8 .box_story__img {
      width: 320px;
      margin-left: 60px; }
      @media screen and (max-width: 600px) {
        #project.project2 .sec_2 .box_story__img, #project.project2 .sec_3 .box_story__img, #project.project2 .sec_4 .box_story__img, #project.project2 .sec_5 .box_story__img, #project.project2 .sec_6 .box_story__img, #project.project2 .sec_7 .box_story__img, #project.project2 .sec_8 .box_story__img {
          margin-left: 0px;
          width: 100%;
          margin-top: 30px; } }
#project.project2 .sec_2:before {
  background: url("../../project/img/project2/bg_1.jpg") no-repeat center center/cover; }
#project.project2 .sec_2 .box_story__img p {
  font-size: 1.3rem;
  line-height: 1.4;
  margin-top: 0.6em; }
#project.project2 .sec_3:before {
  background: url("../../project/img/project2/bg_2.jpg") no-repeat center center/cover; }
#project.project2 .sec_4:before {
  background: url("../../project/img/project2/bg_3.jpg") no-repeat center center/cover; }
#project.project2 .sec_5:before {
  background: url("../../project/img/project2/bg_4.jpg") no-repeat center center/cover; }
#project.project2 .sec_5 .box_story__img p {
  font-size: 1.4rem;
  line-height: 1.4;
  margin-top: 0.6em; }
#project.project2 .sec_6:before {
  background: url("../../project/img/project2/bg_5.jpg") no-repeat center center/cover; }
#project.project2 .sec_7:before {
  background: url("../../project/img/project2/bg_6.jpg") no-repeat center center/cover; }
#project.project2 .sec_8:before {
  background: url("../../project/img/project2/bg_7.jpg") no-repeat center center/cover; }
#project.project2 .sec_8 .wrap {
  width: 100%;
  height: 100vh;
  position: relative; }
  @media screen and (max-width: 600px) {
    #project.project2 .sec_8 .wrap {
      height: auto; } }
#project.project2 .sec_8 .sec_nav {
  background-color: #fff; }
  @media screen and (max-width: 600px) {
    #project.project2 .sec_8 .sec_nav {
      padding-bottom: 0; } }
#project.project3 .cont_header {
  background-color: #f6f6f6;
  height: auto; }
  @media screen and (max-width: 600px) {
    #project.project3 .cont_header {
      padding-bottom: 10px; } }
  #project.project3 .cont_header .cont_ttl p {
    color: #FFC4DC; }
  #project.project3 .cont_header .cont_ttl h1 {
    color: #0080CC; }
    #project.project3 .cont_header .cont_ttl h1 span {
      color: #fff;
      -webkit-text-stroke-color: #0080CC; }
  #project.project3 .cont_header .main_area {
    position: relative; }
    #project.project3 .cont_header .main_area .main_img {
      width: 60vw;
      margin-top: -45px;
      margin-left: 40vw; }
      @media screen and (max-width: 600px) {
        #project.project3 .cont_header .main_area .main_img {
          width: 100%;
          margin-top: -25px;
          margin-left: 0; } }
    #project.project3 .cont_header .main_area h2 {
      position: absolute;
      left: 12vw;
      top: 120px;
      line-height: 1.25; }
      @media screen and (max-width: 600px) {
        #project.project3 .cont_header .main_area h2 {
          top: 70vw; } }
      #project.project3 .cont_header .main_area h2 span {
        font-size: 3.6rem;
        font-weight: 600;
        color: #fff;
        background-color: #000;
        display: inline-block;
        line-height: 1;
        padding: 0.1em 0.35em 0.2em;
        margin-bottom: 0.2em; }
        @media screen and (max-width: 600px) {
          #project.project3 .cont_header .main_area h2 span {
            font-size: 2.2rem; } }
    #project.project3 .cont_header .main_area .main_product {
      width: 360px;
      margin-top: -410px;
      margin-left: 14vw;
      position: relative;
      z-index: 10;
      padding-bottom: 25px; }
      @media screen and (max-width: 600px) {
        #project.project3 .cont_header .main_area .main_product {
          width: calc(100% - 30px);
          margin-top: 35px;
          display: flex;
          margin-left: 15px; } }
      @media screen and (max-width: 600px) {
        #project.project3 .cont_header .main_area .main_product figure {
          width: 160px; } }
      #project.project3 .cont_header .main_area .main_product p {
        margin: 1.2em 0 0 1.6em; }
        @media screen and (max-width: 600px) {
          #project.project3 .cont_header .main_area .main_product p {
            flex: 1;
            margin: 1.2em 0 0 1em; } }
#project.project3 .sec_1 {
  display: flex; }
  @media screen and (max-width: 600px) {
    #project.project3 .sec_1 {
      flex-direction: column; } }
  #project.project3 .sec_1 .txt_profile {
    width: 50%;
    background-color: #0080CC;
    color: #fff;
    padding: 70px 80px;
    display: flex;
    align-items: center; }
    @media screen and (max-width: 600px) {
      #project.project3 .sec_1 .txt_profile {
        width: 100%;
        padding: 25px 15px; } }
    #project.project3 .sec_1 .txt_profile p {
      line-height: 1.8em; }
  #project.project3 .sec_1 .box_profile {
    width: 50%;
    position: relative;
    padding: 80px 40px;
    display: flex;
    flex-direction: column;
    justify-content: center; }
    @media screen and (max-width: 600px) {
      #project.project3 .sec_1 .box_profile {
        width: 100%;
        padding: 80px 30px 50px; } }
    #project.project3 .sec_1 .box_profile h3 {
      font-size: 7.2rem;
      font-weight: 500;
      color: rgba(0, 128, 204, 0.2);
      line-height: 1;
      position: absolute;
      right: 10px;
      top: 0px; }
      @media screen and (max-width: 600px) {
        #project.project3 .sec_1 .box_profile h3 {
          font-size: 6.2rem;
          right: 3px;
          top: -7px; } }
    #project.project3 .sec_1 .box_profile h4 {
      font-size: 2.2rem;
      font-weight: 600;
      margin-bottom: 0.4em; }
      @media screen and (max-width: 600px) {
        #project.project3 .sec_1 .box_profile h4 {
          font-size: 1.8rem; } }
    #project.project3 .sec_1 .box_profile p {
      line-height: 1.6em; }
#project.project3 .sec_2, #project.project3 .sec_3 {
  padding: 140px 0;
  background-color: rgba(146, 200, 233, 0.1); }
  @media screen and (max-width: 600px) {
    #project.project3 .sec_2, #project.project3 .sec_3 {
      padding: 80px 0 50px; } }
  #project.project3 .sec_2 .box_sec, #project.project3 .sec_3 .box_sec {
    display: flex;
    justify-content: space-between;
    position: relative; }
    @media screen and (max-width: 600px) {
      #project.project3 .sec_2 .box_sec, #project.project3 .sec_3 .box_sec {
        display: block; } }
    #project.project3 .sec_2 .box_sec:before, #project.project3 .sec_3 .box_sec:before {
      content: "";
      background: url("../../project/img/project3/obj_pink.png") no-repeat center center/contain;
      width: 120px;
      height: 80px;
      position: absolute;
      top: -60px;
      left: -75px; }
      @media screen and (max-width: 600px) {
        #project.project3 .sec_2 .box_sec:before, #project.project3 .sec_3 .box_sec:before {
          width: 60px;
          height: 40px;
          top: -60px;
          left: 0px; } }
    #project.project3 .sec_2 .box_sec__txt, #project.project3 .sec_3 .box_sec__txt {
      width: 50%;
      padding: 0 50px 0 0; }
      @media screen and (max-width: 600px) {
        #project.project3 .sec_2 .box_sec__txt, #project.project3 .sec_3 .box_sec__txt {
          width: 100%;
          padding: 0 0 30px; } }
      #project.project3 .sec_2 .box_sec__txt h2, #project.project3 .sec_3 .box_sec__txt h2 {
        font-size: 2.4rem;
        font-weight: 600;
        margin-bottom: 1em;
        line-height: 1.5;
        color: #FF6BA8; }
        @media screen and (max-width: 600px) {
          #project.project3 .sec_2 .box_sec__txt h2, #project.project3 .sec_3 .box_sec__txt h2 {
            font-size: 2.0rem; } }
    #project.project3 .sec_2 .box_sec__img, #project.project3 .sec_3 .box_sec__img {
      width: 50%; }
      @media screen and (max-width: 600px) {
        #project.project3 .sec_2 .box_sec__img, #project.project3 .sec_3 .box_sec__img {
          width: 100%; } }
#project.project3 .sec_3 {
  background-color: transparent; }
  #project.project3 .sec_3 .box_sec {
    flex-direction: row-reverse; }
    #project.project3 .sec_3 .box_sec:before {
      background: url("../../project/img/project3/obj_blue.png") no-repeat center center/contain;
      left: auto;
      right: -75px; }
      @media screen and (max-width: 600px) {
        #project.project3 .sec_3 .box_sec:before {
          right: 0px; } }
    #project.project3 .sec_3 .box_sec__txt {
      padding: 0 0 0 50px; }
      @media screen and (max-width: 600px) {
        #project.project3 .sec_3 .box_sec__txt {
          padding: 0 0 30px; } }
      #project.project3 .sec_3 .box_sec__txt h2 {
        color: #0080CC; }
#project.project3 .sec_4 .box_message {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  align-items: stretch;
  position: relative; }
  @media screen and (max-width: 600px) {
    #project.project3 .sec_4 .box_message {
      display: block; } }
  #project.project3 .sec_4 .box_message__txt {
    width: 50%;
    padding: 170px 50px 60px;
    position: relative; }
    @media screen and (max-width: 600px) {
      #project.project3 .sec_4 .box_message__txt {
        width: 100%;
        padding: 120px 15px 60px; } }
    #project.project3 .sec_4 .box_message__txt h2 {
      font-size: 8.8rem;
      font-weight: 600;
      margin-bottom: 1em;
      line-height: 1;
      color: #0080CC;
      position: absolute;
      top: 30px;
      right: 10px; }
      @media screen and (max-width: 600px) {
        #project.project3 .sec_4 .box_message__txt h2 {
          font-size: 5.6rem; } }
    #project.project3 .sec_4 .box_message__txt p {
      width: 550px;
      margin: 0 auto; }
      @media screen and (max-width: 600px) {
        #project.project3 .sec_4 .box_message__txt p {
          width: 100%; } }
  #project.project3 .sec_4 .box_message__img {
    width: 50%; }
    @media screen and (max-width: 600px) {
      #project.project3 .sec_4 .box_message__img {
        width: 100%; } }
#project.project3 .sec_5 {
  background-color: rgba(255, 196, 220, 0.1);
  padding: 60px 0 70px; }
  @media screen and (max-width: 600px) {
    #project.project3 .sec_5 {
      padding: 40px 15px 60px; } }
  #project.project3 .sec_5 .wrap {
    width: 1240px;
    margin: 0 auto;
    padding: 0 20px; }
    @media screen and (max-width: 600px) {
      #project.project3 .sec_5 .wrap {
        padding: 0 15px;
        width: 100%; } }
  #project.project3 .sec_5 h2 {
    font-size: 8.8rem;
    font-weight: 600;
    margin-bottom: 0.7em;
    line-height: 1;
    color: #FF6BA8; }
    @media screen and (max-width: 600px) {
      #project.project3 .sec_5 h2 {
        font-size: 6.0rem; } }
  #project.project3 .sec_5 .box_carrier {
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 600px) {
      #project.project3 .sec_5 .box_carrier {
        flex-direction: column;
        gap: 25px; } }
    #project.project3 .sec_5 .box_carrier dl {
      width: 380px;
      position: relative; }
      @media screen and (max-width: 600px) {
        #project.project3 .sec_5 .box_carrier dl {
          width: 100%; } }
      #project.project3 .sec_5 .box_carrier dl dt {
        display: inline-block;
        background-color: #000;
        font-weight: 600;
        color: #fff;
        padding: 0.2em 0.5em 0.4em;
        line-height: 1;
        position: absolute;
        left: 0;
        top: -10px; }
      #project.project3 .sec_5 .box_carrier dl dd {
        background-color: #fff;
        padding: 30px 30px 25px; }
        #project.project3 .sec_5 .box_carrier dl dd h4 {
          font-weight: 600; }
#project .sec_nav {
  padding: 40px 0;
  display: flex;
  justify-content: space-between; }
  @media screen and (max-width: 600px) {
    #project .sec_nav {
      flex-direction: column;
      padding: 60px 0 120px; } }
  #project .sec_nav a {
    width: calc(50% - 10px);
    display: inline-block;
    position: relative;
    transition: 0.4s; }
    @media screen and (max-width: 600px) {
      #project .sec_nav a {
        width: 100%;
        margin-bottom: 4px; } }
    #project .sec_nav a .arrow {
      background-color: #000;
      width: 60px;
      height: 40px;
      position: absolute;
      right: 0px;
      top: 0px;
      overflow: hidden;
      transition: 0.4s; }
      #project .sec_nav a .arrow:before {
        content: "";
        width: 10px;
        height: 10px;
        border-top: solid 1px #fff;
        border-right: solid 1px #fff;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-60%, -50%) rotate(45deg); }
    #project .sec_nav a:hover {
      opacity: 0.7; }
      #project .sec_nav a:hover .arrow {
        background-color: #666; }
        #project .sec_nav a:hover .arrow:before {
          animation: arrowMove 0.3s ease-in-out forwards; }

@keyframes lineAnime {
  0% {
    width: 0%; }
  100% {
    width: 100%; } }
@keyframes floatingAnime {
  0% {
    transform: translate(0, 0); }
  50% {
    transform: translate(0, 20%); }
  100% {
    transform: translate(0, 0); } }
#environment .cont_header {
  background-color: #FFC4DC; }
  #environment .cont_header > h1 {
    color: #FF6BA8;
    background-image: url("../img/bg_cont_ttl_pink.png"); }
#environment.index .section {
  padding: 70px 0 50px; }
  @media screen and (max-width: 600px) {
    #environment.index .section {
      padding: 20px 0 30px; } }
  #environment.index .section.sec_1 {
    padding: 50px 0; }
    @media screen and (max-width: 600px) {
      #environment.index .section.sec_1 {
        padding: 30px 0 40px; } }
#environment.index .nav_anc {
  display: flex;
  gap: 10px;
  margin-top: 50px;
  padding: 30px 0 0px; }
  @media screen and (max-width: 600px) {
    #environment.index .nav_anc {
      padding: 0px;
      flex-wrap: wrap;
      justify-content: space-between; } }
  #environment.index .nav_anc a {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #000;
    height: 50px;
    border-radius: 25px;
    padding: 10px 30px 13px;
    color: #fff; }
    @media screen and (max-width: 600px) {
      #environment.index .nav_anc a {
        width: calc(50% - 5px);
        height: 40px;
        border-radius: 20px;
        padding: 0px 10px 3px; } }
#environment.index .box_system {
  display: flex;
  flex-wrap: wrap;
  gap: 40px 5%;
  margin: 20px 0 40px; }
  @media screen and (max-width: 600px) {
    #environment.index .box_system {
      flex-direction: column;
      gap: 25px 5%; } }
  #environment.index .box_system dl {
    width: 30%; }
    @media screen and (max-width: 600px) {
      #environment.index .box_system dl {
        width: 100%; } }
    #environment.index .box_system dl dt {
      width: 100%;
      height: 50px;
      display: flex;
      align-items: center;
      background-color: #FF6BA8;
      color: #fff;
      font-size: 1.7rem;
      font-weight: 600;
      color: #fff;
      border-top-right-radius: 25px;
      border-bottom-right-radius: 25px;
      padding: 0 10px 3px 15px;
      margin-bottom: 15px; }
      @media screen and (max-width: 600px) {
        #environment.index .box_system dl dt {
          margin-bottom: 10px;
          padding: 0 10px 2px 10px;
          height: 40px;
          border-top-right-radius: 20px;
          border-bottom-right-radius: 20px;
          font-size: 1.6rem; } }
    #environment.index .box_system dl dd {
      line-height: 1.6;
      font-feature-settings: "palt";
      text-align: justify;
      text-justify: inter-ideograph; }
#environment.index .txt_border {
  border: solid 1px #bbb;
  border-radius: 8px;
  padding: 20px 25px; }
#environment.index .box_system_2 {
  display: flex;
  flex-wrap: wrap;
  gap: 40px 5%;
  margin: 20px 0 40px; }
  @media screen and (max-width: 600px) {
    #environment.index .box_system_2 {
      flex-direction: column;
      gap: 15px 5%; } }
  #environment.index .box_system_2 figure {
    width: 30%; }
    @media screen and (max-width: 600px) {
      #environment.index .box_system_2 figure {
        width: 100%; } }
  #environment.index .box_system_2__inner {
    flex: 1; }
  #environment.index .box_system_2 p {
    display: flex;
    align-items: center;
    height: calc(100% - 2.2em); }
#environment.career .sec_1 .box_naretara {
  display: flex;
  width: 100%;
  padding: 100px 100px 80px;
  justify-content: space-between;
  align-items: center; }
  @media screen and (max-width: 600px) {
    #environment.career .sec_1 .box_naretara {
      flex-direction: column;
      padding: 50px 20px 60px; } }
  #environment.career .sec_1 .box_naretara figure {
    width: 326px;
    margin-right: 70px; }
    @media screen and (max-width: 600px) {
      #environment.career .sec_1 .box_naretara figure {
        width: 240px;
        margin: 0 auto; } }
  #environment.career .sec_1 .box_naretara p {
    flex: 1;
    line-height: 2;
    letter-spacing: 0.03em; }
    @media screen and (max-width: 600px) {
      #environment.career .sec_1 .box_naretara p {
        margin-top: 1.6em;
        line-height: 1.8; } }
#environment.career .sec_1 .box_concept .ttl_1 h3 {
  line-height: 1.4; }
#environment.career .sec_2 {
  overflow: hidden; }
  #environment.career .sec_2 h2 {
    font-size: 3.8rem;
    text-align: center;
    font-weight: 500;
    padding: 70px 0 60px; }
    @media screen and (max-width: 600px) {
      #environment.career .sec_2 h2 {
        font-size: 3.2rem;
        padding: 60px 0 40px; } }
  #environment.career .sec_2 .box_chance {
    background-color: #fff;
    border-radius: 8px;
    position: relative;
    padding: 40px 20px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 30px; }
    @media screen and (max-width: 600px) {
      #environment.career .sec_2 .box_chance {
        padding: 30px 10px;
        gap: 10px; } }
    #environment.career .sec_2 .box_chance h3 {
      font-size: 2.4rem;
      position: absolute;
      top: -1em;
      left: 0;
      text-align: center;
      width: 100%;
      font-weight: 600;
      letter-spacing: 0.05em;
      color: #0080CC; }
      @media screen and (max-width: 600px) {
        #environment.career .sec_2 .box_chance h3 {
          font-size: 2.0rem; } }
    #environment.career .sec_2 .box_chance__item {
      background-color: #EFF7FC;
      border-radius: 6px;
      width: 500px;
      padding: 20px 30px; }
      @media screen and (max-width: 600px) {
        #environment.career .sec_2 .box_chance__item {
          padding: 10px 15px; } }
      #environment.career .sec_2 .box_chance__item h4 {
        font-size: 2.2rem;
        font-weight: 600; }
      #environment.career .sec_2 .box_chance__item p {
        padding: 0.5em 0 1em;
        line-height: 1.6; }
      #environment.career .sec_2 .box_chance__item ul {
        background-color: #fff;
        border-radius: 8px;
        padding: 9px 12px 13px; }
        #environment.career .sec_2 .box_chance__item ul li {
          position: relative;
          padding-left: 1em;
          line-height: 1.6; }
          #environment.career .sec_2 .box_chance__item ul li:before {
            content: "・";
            position: absolute;
            left: 0;
            top: 0; }
    #environment.career .sec_2 .box_chance .icon_1 {
      width: 104px;
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%); }
      @media screen and (max-width: 600px) {
        #environment.career .sec_2 .box_chance .icon_1 {
          position: static;
          transform: translate(0, 0);
          margin: 0 auto 40px; } }
      #environment.career .sec_2 .box_chance .icon_1 p {
        font-size: 2.0rem;
        font-weight: 500;
        text-align: center;
        margin-top: 0.2em;
        letter-spacing: 0.05em; }
    #environment.career .sec_2 .box_chance .arrow {
      width: 48px;
      position: absolute;
      left: calc(50% - 24px);
      bottom: -55px; }
  #environment.career .sec_2 .box_1on1 {
    display: flex;
    align-items: center;
    padding: 10px 30px;
    background-color: #fff;
    border-radius: 8px;
    width: 100%;
    border: solid 1px #FF6BA8;
    margin-top: 45px; }
    @media screen and (max-width: 600px) {
      #environment.career .sec_2 .box_1on1 {
        padding: 15px 15px; } }
    #environment.career .sec_2 .box_1on1 figure {
      width: 88px;
      margin-right: 30px; }
      @media screen and (max-width: 600px) {
        #environment.career .sec_2 .box_1on1 figure {
          width: 68px;
          margin-right: 20px; } }
    #environment.career .sec_2 .box_1on1 dl {
      flex: 1; }
      #environment.career .sec_2 .box_1on1 dl dt {
        font-size: 2.4rem;
        font-weight: 600;
        letter-spacing: 0.02em;
        color: #FF6BA8; }
        @media screen and (max-width: 600px) {
          #environment.career .sec_2 .box_1on1 dl dt {
            line-height: 1.4;
            margin-bottom: 0.4em; } }
        #environment.career .sec_2 .box_1on1 dl dt span {
          font-size: 1.6rem; }
          @media screen and (max-width: 600px) {
            #environment.career .sec_2 .box_1on1 dl dt span {
              display: block; } }
#environment.career .sec_3 {
  padding: 100px 0 60px; }
  @media screen and (max-width: 600px) {
    #environment.career .sec_3 {
      padding: 40px 0 80px; } }
  #environment.career .sec_3 .box_system {
    display: flex;
    justify-content: space-between;
    margin-bottom: 90px; }
    @media screen and (max-width: 600px) {
      #environment.career .sec_3 .box_system {
        flex-direction: column;
        gap: 15px;
        margin-bottom: 40px; } }
    #environment.career .sec_3 .box_system dl {
      border: solid 8px #F3F3F3;
      padding: 20px;
      width: 570px;
      border-radius: 8px; }
      @media screen and (max-width: 600px) {
        #environment.career .sec_3 .box_system dl {
          width: 100%;
          padding: 15px; } }
      #environment.career .sec_3 .box_system dl dt {
        display: flex;
        align-items: center;
        margin-bottom: 15px; }
        @media screen and (max-width: 600px) {
          #environment.career .sec_3 .box_system dl dt {
            flex-direction: column;
            margin-bottom: 10px; } }
        #environment.career .sec_3 .box_system dl dt i {
          width: 90px;
          margin-right: 30px;
          margin-left: 10px; }
          @media screen and (max-width: 600px) {
            #environment.career .sec_3 .box_system dl dt i {
              width: 70px;
              margin: 5px auto 10px; } }
        #environment.career .sec_3 .box_system dl dt span {
          font-size: 2.4rem;
          font-weight: 600;
          letter-spacing: 0.05em;
          color: #0080CC; }
          @media screen and (max-width: 600px) {
            #environment.career .sec_3 .box_system dl dt span {
              text-align: center;
              line-height: 1.4; } }
      #environment.career .sec_3 .box_system dl dd {
        text-align: justify;
        text-justify: inter-ideograph;
        font-feature-settings: "palt"; }

@keyframes lineAnime {
  0% {
    width: 0%; }
  100% {
    width: 100%; } }
@keyframes floatingAnime {
  0% {
    transform: translate(0, 0); }
  50% {
    transform: translate(0, 20%); }
  100% {
    transform: translate(0, 0); } }
#recruit .cont_header > h1 {
  color: #000;
  background-image: url("../img/bg_cont_ttl_black.png"); }
#recruit.career .cont_header {
  background-color: #D7D7E2; }
#recruit .inner_1000 {
  width: 1000px; }
  @media screen and (max-width: 600px) {
    #recruit .inner_1000 {
      width: 100%; } }
#recruit .txt_career {
  padding: 0 0 70px; }
  @media screen and (max-width: 600px) {
    #recruit .txt_career {
      padding: 40px 0; } }
#recruit .sec_1 {
  padding: 60px 0 80px; }
  @media screen and (max-width: 600px) {
    #recruit .sec_1 {
      padding: 0px 0 20px; } }
  #recruit .sec_1 .btn_link {
    width: 460px;
    margin: 0 auto;
    border-width: 2px;
    font-weight: 600;
    font-size: 1.8rem; }
#recruit .sec_2 {
  background-color: #f6f6f6;
  padding: 50px 0 100px; }
  @media screen and (max-width: 600px) {
    #recruit .sec_2 {
      padding: 0px 0 80px; } }
#recruit .gonta {
  width: 940px;
  margin: 30px auto 50px; }
  @media screen and (max-width: 600px) {
    #recruit .gonta {
      width: 100%;
      margin: 30px auto 0px; } }
#recruit .box_flow {
  margin-top: 30px;
  padding-left: 20px; }
  @media screen and (max-width: 600px) {
    #recruit .box_flow {
      padding-left: 10px;
      margin-top: 35px; } }
  #recruit .box_flow dl {
    display: table;
    align-items: center;
    background-color: #fff;
    margin-bottom: 30px;
    height: 100px;
    width: 100%;
    padding: 20px; }
    @media screen and (max-width: 600px) {
      #recruit .box_flow dl {
        padding: 10px;
        position: relative; } }
    #recruit .box_flow dl:first-child dt:after {
      display: none; }
    #recruit .box_flow dl:nth-child(even) dt:after {
      transform: scaleX(-1); }
    #recruit .box_flow dl dt {
      display: table-cell;
      font-size: 1.8rem;
      font-weight: bold;
      vertical-align: middle;
      width: 12em;
      padding-left: 0.6em;
      font-feature-settings: "palt";
      line-height: 1.5;
      position: relative; }
      @media screen and (max-width: 600px) {
        #recruit .box_flow dl dt {
          display: block;
          padding: 5px 0 15px 60px;
          width: 100%; } }
      #recruit .box_flow dl dt i {
        font-size: 3.6rem;
        font-weight: 500;
        font-family: "Roboto", serif;
        font-style: normal;
        color: #fff;
        width: 80px;
        height: 80px;
        background: url("../../assets/img/obj_header1.png") no-repeat center/contain;
        padding-left: 20px;
        padding-top: 12px;
        line-height: 1;
        position: absolute;
        left: -100px;
        top: -40px; }
        @media screen and (max-width: 600px) {
          #recruit .box_flow dl dt i {
            width: 60px;
            height: 60px;
            font-size: 3.2rem;
            left: -25px;
            top: -30px;
            padding-left: 14px;
            padding-top: 6px; } }
      #recruit .box_flow dl dt:after {
        content: "";
        width: 42px;
        height: 27px;
        background: url("../../assets/img/arrow_down.png") no-repeat center/contain;
        position: absolute;
        left: -65px;
        top: -80px; }
        @media screen and (max-width: 600px) {
          #recruit .box_flow dl dt:after {
            left: -20px;
            top: -80px; } }
    #recruit .box_flow dl dd {
      display: table-cell;
      font-size: 1.4rem;
      border-left: solid 1px #eee;
      vertical-align: middle;
      padding-left: 40px; }
      @media screen and (max-width: 600px) {
        #recruit .box_flow dl dd {
          display: block;
          padding-left: 40px;
          border-left: none;
          line-height: 1.5; } }
    #recruit .box_flow dl:before {
      content: "";
      display: table-cell;
      width: 60px;
      height: 70px;
      background-repeat: no-repeat;
      background-position: 0 0; }
      @media screen and (max-width: 600px) {
        #recruit .box_flow dl:before {
          display: block;
          position: absolute;
          top: 10px;
          left: 10px; } }
  #recruit .box_flow.box_flow2 dl dt {
    width: auto; }
#recruit .btn_entry_s {
  display: inline-block;
  padding: 10px 30px;
  font-size: 1.6rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  background-color: #0080CC;
  color: #fff;
  margin: 0 10px; }
#recruit.faq .contents {
  padding-bottom: 160px; }
  @media screen and (max-width: 600px) {
    #recruit.faq .contents {
      padding-bottom: 100px; } }
#recruit.faq .section {
  padding: 100px 0 0; }
  @media screen and (max-width: 600px) {
    #recruit.faq .section {
      padding: 50px 0 0; } }
#recruit.faq .sec_faq__1 .ac_box__faq dt {
  background-color: #0080CC; }
#recruit.faq .sec_faq__1 .ac_box__faq dd:before {
  color: #92C8E9; }
#recruit.faq .sec_faq__2 .ac_box__faq dt {
  background-color: #FF6BA8; }
#recruit.faq .sec_faq__2 .ac_box__faq dd:before {
  color: rgba(255, 107, 168, 0.6); }
#recruit.faq .sec_faq__3 .ac_box__faq dt {
  background-color: #AF65D0; }
#recruit.faq .sec_faq__3 .ac_box__faq dd:before {
  color: rgba(175, 101, 208, 0.6); }
#recruit.faq .ttl_faq {
  overflow: hidden;
  width: 100%;
  text-align: center;
  margin-bottom: 40px; }
  @media screen and (max-width: 600px) {
    #recruit.faq .ttl_faq {
      margin-bottom: 25px; } }
  #recruit.faq .ttl_faq span {
    display: inline-block;
    font-size: 4.0rem;
    font-weight: 500;
    position: relative;
    letter-spacing: 0.06em; }
    @media screen and (max-width: 600px) {
      #recruit.faq .ttl_faq span {
        font-size: 2.4rem; } }
    #recruit.faq .ttl_faq span:before {
      content: "";
      width: 1000px;
      height: 1px;
      background-color: #707070;
      position: absolute;
      top: 50%;
      left: -1020px; }
    #recruit.faq .ttl_faq span:after {
      content: "";
      width: 1000px;
      height: 1px;
      background-color: #707070;
      position: absolute;
      top: 50%;
      right: -1020px; }
#recruit.faq .ac_box__faq {
  margin-bottom: 20px; }
  @media screen and (max-width: 600px) {
    #recruit.faq .ac_box__faq {
      margin-bottom: 10px; } }
  #recruit.faq .ac_box__faq dt {
    background-color: #0080CC;
    color: #fff;
    font-size: 2.0rem;
    font-weight: 600;
    padding: 20px 20px 20px 54px;
    position: relative;
    cursor: pointer;
    line-height: 1.5;
    border-radius: 6px; }
    @media screen and (max-width: 600px) {
      #recruit.faq .ac_box__faq dt {
        padding: 15px 30px 15px 35px;
        font-size: 1.4rem; } }
    #recruit.faq .ac_box__faq dt:before {
      content: "Q.";
      display: block;
      margin-right: 0.5em;
      font-size: 3.0rem;
      font-weight: 500;
      font-family: "Roboto", serif;
      position: absolute;
      top: 12px;
      left: 15px; }
      @media screen and (max-width: 600px) {
        #recruit.faq .ac_box__faq dt:before {
          top: 8px;
          left: 10px;
          font-size: 2.2rem; } }
    #recruit.faq .ac_box__faq dt:after {
      font-size: 120%;
      display: block;
      content: "＋";
      position: absolute;
      top: 50%;
      right: 10px;
      margin-top: -0.5em;
      line-height: 1;
      font-family: 'Noto Sans JP', 'Hiragino Kaku Gothic ProN', 'Meiryo', sans-serif; }
  #recruit.faq .ac_box__faq dd {
    padding-top: 20px;
    padding-left: 55px;
    position: relative; }
    #recruit.faq .ac_box__faq dd:before {
      content: "A.";
      display: inline-block;
      font-weight: 500;
      margin-right: 0.3em;
      font-size: 3.0rem;
      color: #92C8E9;
      position: absolute;
      left: 15px;
      top: 5px; }
  #recruit.faq .ac_box__faq.active dt:after {
    content: "ー"; }

@keyframes lineAnime {
  0% {
    width: 0%; }
  100% {
    width: 100%; } }
@keyframes floatingAnime {
  0% {
    transform: translate(0, 0); }
  50% {
    transform: translate(0, 20%); }
  100% {
    transform: translate(0, 0); } }
#entry .contents {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  min-height: 100vh;
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover; }
  @media screen and (max-width: 600px) {
    #entry .contents {
      height: auto;
      background-size: contain;
      overflow: hidden;
      background-color: rgba(0, 128, 204, 0.1);
      padding-bottom: 80px;
      margin-top: 50px; } }
#entry.mypage .contents {
  background-image: url("../img/entry/bg_1.jpg"); }
#entry.entry .contents {
  background-image: url("../img/entry/bg_2.jpg"); }

.wrap_entry {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 40px;
  padding: 110px 20px 40px;
  width: 100%; }
  @media screen and (max-width: 600px) {
    .wrap_entry {
      display: block;
      padding: 250px 20px 20px; } }
  .wrap_entry .set_entry {
    margin-left: 0;
    max-width: 420px;
    width: 100%;
    height: auto;
    justify-content: flex-start;
    background-color: #fff;
    padding: 25px 30px 35px; }
    @media screen and (max-width: 600px) {
      .wrap_entry .set_entry {
        margin-top: 20px;
        padding: 25px 20px 25px; } }
    .wrap_entry .set_entry .ttl_entry {
      text-align: center;
      line-height: 1.6;
      margin-bottom: 20px;
      font-size: 1.9rem;
      font-weight: 500;
      letter-spacing: 0.01em; }
      @media screen and (max-width: 600px) {
        .wrap_entry .set_entry .ttl_entry {
          font-size: 1.6rem; } }
    .wrap_entry .set_entry .box_entry {
      background-color: #f6f6f6;
      margin: 5px auto; }
      @media screen and (max-width: 600px) {
        .wrap_entry .set_entry .box_entry {
          padding: 15px;
          min-height: 140px; } }

.set_entry {
  margin-left: 50%;
  max-width: 385px;
  width: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  height: 100%;
  padding: 90px 20px 20px; }
  @media screen and (max-width: 600px) {
    .set_entry {
      width: 100%;
      margin-left: 0;
      padding: 0 15px;
      margin-top: 250px; } }

.box_entry {
  width: 100%;
  margin: 10px auto;
  padding: 30px 35px;
  background-color: #fff;
  min-height: 260px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column; }
  @media screen and (max-width: 600px) {
    .box_entry {
      padding: 15px;
      min-height: 240px; } }
  .box_entry h3 {
    text-align: center;
    line-height: 1.6;
    margin-bottom: 20px;
    font-size: 1.8rem;
    font-weight: 500; }
    @media screen and (max-width: 600px) {
      .box_entry h3 {
        font-size: 1.6rem; } }
    .box_entry h3 small {
      font-size: 80%;
      display: block;
      margin-top: 0.3em; }

.set_entry a, .box_entry a {
  border: solid 4px #f6f6f6;
  display: block;
  transition: 0.3s;
  width: 100%; }
  .set_entry a:hover, .box_entry a:hover {
    opacity: 0.6; }
  .set_entry a.btn_mynavi, .box_entry a.btn_mynavi {
    max-width: 260px;
    margin: 0 auto; }
  .set_entry a.btn_entry, .box_entry a.btn_entry {
    padding: 10px 25px 13px 25px;
    background-color: #0080CC;
    color: #fff;
    letter-spacing: 0.1em;
    text-align: center;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: 2.0rem;
    border: none;
    position: relative; }
    @media screen and (max-width: 600px) {
      .set_entry a.btn_entry, .box_entry a.btn_entry {
        width: 84%; } }
    .set_entry a.btn_entry.btn_color2, .box_entry a.btn_entry.btn_color2 {
      background-color: rgba(0, 128, 204, 0.1); }
    .set_entry a.btn_entry i, .box_entry a.btn_entry i {
      background-color: #000;
      width: 60px;
      height: 40px;
      position: absolute;
      right: -25px;
      bottom: -15px;
      overflow: hidden;
      transition: 0.4s; }
      .set_entry a.btn_entry i:before, .box_entry a.btn_entry i:before {
        content: "";
        width: 10px;
        height: 10px;
        border-top: solid 1px #fff;
        border-right: solid 1px #fff;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-60%, -50%) rotate(45deg); }
    .set_entry a.btn_entry:hover, .box_entry a.btn_entry:hover {
      text-decoration: none; }
      .set_entry a.btn_entry:hover i, .box_entry a.btn_entry:hover i {
        background-color: #666; }
        .set_entry a.btn_entry:hover i:before, .box_entry a.btn_entry:hover i:before {
          animation: arrowMove 0.3s ease-in-out forwards; }
.set_entry.comingsoon h3, .box_entry.comingsoon h3 {
  margin-bottom: 0;
  line-height: 1.7;
  letter-spacing: 0.05em; }

@keyframes lineAnime {
  0% {
    width: 0%; }
  100% {
    width: 100%; } }
@keyframes floatingAnime {
  0% {
    transform: translate(0, 0); }
  50% {
    transform: translate(0, 20%); }
  100% {
    transform: translate(0, 0); } }
#talk .sec_1 {
  position: relative; }
  #talk .sec_1 .cont_cat {
    font-family: "Roboto", serif;
    font-size: 10.3rem;
    font-weight: 600;
    letter-spacing: 0.03em;
    line-height: 1;
    position: absolute;
    right: 135px;
    top: -30px;
    z-index: 10; }
    @media screen and (max-width: 600px) {
      #talk .sec_1 .cont_cat {
        left: 5px;
        top: -80px;
        font-size: 5.0rem; } }
  #talk .sec_1 .bg_gray {
    padding-top: 130px; }
  #talk .sec_1 .main_img {
    position: relative;
    width: 100%;
    height: 730px;
    background-position: center top;
    background-repeat: no-repeat;
    background-size: 1430px auto;
    margin: 0px auto 0;
    position: relative; }
    @media screen and (max-width: 600px) {
      #talk .sec_1 .main_img {
        width: 100%;
        height: 62vw;
        background-size: 120vw auto;
        margin-bottom: 120px; } }
    #talk .sec_1 .main_img:before {
      content: "";
      width: 116px;
      height: 153px;
      position: absolute;
      top: 40px;
      left: calc(50% + 610px);
      z-index: 10; }
  #talk .sec_1 .main_ttl {
    position: absolute;
    left: calc(50% - 600px);
    bottom: 50px;
    line-height: 1.25; }
    @media screen and (max-width: 600px) {
      #talk .sec_1 .main_ttl {
        left: 0px;
        bottom: -90px;
        line-height: 1; } }
    #talk .sec_1 .main_ttl span {
      font-size: 2.6rem;
      font-weight: 600;
      color: #fff;
      background-color: #000;
      display: inline-block;
      line-height: 1;
      padding: 0.1em 0.4em 0.25em; }
      @media screen and (max-width: 600px) {
        #talk .sec_1 .main_ttl span {
          font-size: 1.7rem;
          padding: 0.3em 0.4em 0.45em; } }
  #talk .sec_1 .cont_txt {
    width: 900px;
    margin: 40px auto;
    position: relative;
    z-index: 10;
    padding-bottom: 30px; }
    @media screen and (max-width: 600px) {
      #talk .sec_1 .cont_txt {
        width: calc(100% - 30px);
        margin: 20px auto; } }
    #talk .sec_1 .cont_txt:before {
      content: "";
      width: 50px;
      height: 231px;
      position: absolute;
      top: 20px;
      left: -200px;
      z-index: 10; }
    #talk .sec_1 .cont_txt p {
      font-size: 1.8rem;
      font-weight: 500;
      line-height: 1.9;
      letter-spacing: 0.08em; }
      @media screen and (max-width: 600px) {
        #talk .sec_1 .cont_txt p {
          font-size: 1.6rem; } }
      #talk .sec_1 .cont_txt p:last-child {
        font-size: 1.6rem;
        color: #000 !important;
        font-weight: 400;
        margin-top: 2em; }
        @media screen and (max-width: 600px) {
          #talk .sec_1 .cont_txt p:last-child {
            font-size: 1.4rem; } }
  #talk .sec_1 .profile {
    position: relative; }
    #talk .sec_1 .profile:before {
      content: "";
      background: url("../../talk/img/obj_1.png") no-repeat left center/contain;
      width: 240px;
      height: 153px;
      position: absolute;
      top: -80px;
      right: -140px;
      z-index: 10; }
    #talk .sec_1 .profile h2 {
      text-align: center;
      color: #ABABAB;
      font-family: "Roboto", serif;
      font-size: 3.4rem;
      font-weight: 500;
      letter-spacing: 0.02em;
      margin: 40px 0; }
      @media screen and (max-width: 600px) {
        #talk .sec_1 .profile h2 {
          margin-left: -20px; } }
      #talk .sec_1 .profile h2:before {
        content: "";
        width: 79px;
        height: 78px;
        display: inline-block;
        position: relative;
        left: 0;
        top: 24px;
        margin-right: 20px;
        z-index: 5; }
        @media screen and (max-width: 600px) {
          #talk .sec_1 .profile h2:before {
            width: 100px;
            height: 67px;
            bottom: -40px; } }
    #talk .sec_1 .profile .profile_set {
      width: 100%;
      display: flex;
      justify-content: space-between;
      position: relative; }
      @media screen and (max-width: 600px) {
        #talk .sec_1 .profile .profile_set {
          flex-direction: column; } }
    #talk .sec_1 .profile dl {
      width: 330px;
      position: relative; }
      @media screen and (max-width: 600px) {
        #talk .sec_1 .profile dl {
          width: 100%;
          margin-bottom: 20px; } }
      #talk .sec_1 .profile dl:before {
        content: "";
        width: 1px;
        height: calc(100% - 350px);
        background-color: #eee;
        position: absolute;
        left: -50px;
        bottom: 0; }
      #talk .sec_1 .profile dl:first-child:before {
        display: none; }
      #talk .sec_1 .profile dl figure {
        width: 320px;
        height: 320px;
        position: relative;
        margin: 15px; }
        @media screen and (max-width: 600px) {
          #talk .sec_1 .profile dl figure {
            width: 240px;
            height: 240px;
            margin: 15px auto 0px; } }
        #talk .sec_1 .profile dl figure img {
          position: relative;
          border-radius: 160px;
          overflow: hidden;
          z-index: 1; }
        #talk .sec_1 .profile dl figure:before {
          content: "";
          width: 100%;
          height: 100%;
          border-radius: 50%;
          position: absolute;
          left: -10px;
          top: -10px; }
      #talk .sec_1 .profile dl dt {
        font-size: 2.0rem;
        font-weight: 600;
        line-height: 1.5;
        margin-bottom: 0.6em; }
        @media screen and (max-width: 600px) {
          #talk .sec_1 .profile dl dt {
            font-size: 1.8rem; } }
      #talk .sec_1 .profile dl dd {
        line-height: 1.7;
        text-align: justify;
        text-justify: inter-ideograph; }
        @media screen and (max-width: 600px) {
          #talk .sec_1 .profile dl dd {
            font-size: 1.4rem; } }
#talk .ttl_theme {
  margin-bottom: 30px; }
  @media screen and (max-width: 600px) {
    #talk .ttl_theme {
      margin-bottom: 30px;
      padding-bottom: 20px;
      padding-top: 8px;
      border-bottom: solid 1px #ddd; } }
  #talk .ttl_theme p {
    font-family: "Roboto", serif;
    font-size: 8.4rem;
    font-weight: 600;
    color: rgba(0, 0, 0, 0.1);
    line-height: 1;
    position: relative;
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 600px) {
      #talk .ttl_theme p {
        font-size: 5.6rem; } }
    #talk .ttl_theme p span {
      font-size: 9.2rem;
      font-weight: 400;
      position: relative;
      top: -0.07em; }
      @media screen and (max-width: 600px) {
        #talk .ttl_theme p span {
          font-size: 6.2rem; } }
  #talk .ttl_theme h2 {
    font-size: 3.2rem;
    font-weight: 600;
    line-height: 1.4;
    margin-bottom: 1.6em; }
    @media screen and (max-width: 600px) {
      #talk .ttl_theme h2 {
        font-size: 2rem;
        margin-bottom: 0; } }
  #talk .ttl_theme.txt_right {
    left: 0.05em; }
@media screen and (max-width: 600px) {
  #talk .sec_2 {
    padding-bottom: 80px; } }
#talk .sec_2 .box_sticky {
  margin: 150px 0 90px;
  display: flex; }
  @media screen and (max-width: 600px) {
    #talk .sec_2 .box_sticky {
      margin: 40px 0 60px;
      flex-direction: column; } }
  #talk .sec_2 .box_sticky__left {
    flex-direction: row-reverse; }
    @media screen and (max-width: 600px) {
      #talk .sec_2 .box_sticky__left {
        flex-direction: column; } }
    #talk .sec_2 .box_sticky__left .inner {
      align-items: flex-end;
      padding-right: 50px; }
      @media screen and (max-width: 600px) {
        #talk .sec_2 .box_sticky__left .inner {
          padding-right: 15px; } }
  #talk .sec_2 .box_sticky__right .inner {
    align-items: flex-start;
    padding-left: 50px; }
    @media screen and (max-width: 600px) {
      #talk .sec_2 .box_sticky__right .inner {
        padding-left: 15px; } }
  #talk .sec_2 .box_sticky .img_sticky {
    width: 50%;
    will-change: min-height;
    position: sticky;
    top: 0; }
    @media screen and (max-width: 600px) {
      #talk .sec_2 .box_sticky .img_sticky {
        width: 100%;
        position: static; } }
  #talk .sec_2 .box_sticky .img_sticky__inner {
    position: relative; }
  #talk .sec_2 .box_sticky .img_sticky__slide {
    width: 100%; }
  #talk .sec_2 .box_sticky .inner {
    width: 50%;
    display: flex;
    flex-direction: column; }
    @media screen and (max-width: 600px) {
      #talk .sec_2 .box_sticky .inner {
        width: 100%; } }
    #talk .sec_2 .box_sticky .inner .cont_txt {
      width: 540px; }
      @media screen and (max-width: 600px) {
        #talk .sec_2 .box_sticky .inner .cont_txt {
          width: 100%; } }
    #talk .sec_2 .box_sticky .inner .txt_set__item {
      margin-bottom: 1.4em;
      text-align: justify;
      text-justify: inter-ideograph; }
      @media screen and (max-width: 600px) {
        #talk .sec_2 .box_sticky .inner .txt_set__item {
          flex-direction: column; } }
      #talk .sec_2 .box_sticky .inner .txt_set__item p {
        letter-spacing: 0.05em; }
        #talk .sec_2 .box_sticky .inner .txt_set__item p.name {
          font-weight: 500;
          margin-bottom: 0.5em;
          width: 120px;
          color: #fff;
          background-color: #ABABAB;
          line-height: 1.2;
          padding: 1px 0.6em;
          letter-spacing: 0.1em;
          display: inline-block; }
#talk.talk1 .sec_1 .cont_cat {
  color: #FF6BA8; }
#talk.talk1 .sec_1 .main_img:before {
  background: url("../../talk/img/obj_3_talk1.png") no-repeat left center/contain; }
#talk.talk1 .sec_1 .cont_txt:before {
  background: url("../../talk/img/obj_2_talk1.png") no-repeat left center/contain; }
#talk.talk1 .sec_1 .cont_txt p {
  color: #0080CC; }
#talk.talk1 .sec_1 .profile h2:before {
  background: url("../../talk/img/obj_4_talk1.png") no-repeat center center/contain; }
#talk.talk1 .sec_1 .profile dl figure.bg_color1:before {
  background-color: #FF6BA8; }
#talk.talk1 .sec_1 .profile dl figure.bg_color2:before {
  background-color: #0080CC; }
#talk.talk1 .sec_1 .profile dl figure.bg_color3:before {
  background-color: #FFBA00; }
#talk.talk1 .sec_2 .box_sticky .inner .txt_set__item p.name.bg_color1 {
  background-color: #FF6BA8; }
#talk.talk1 .sec_2 .box_sticky .inner .txt_set__item p.name.bg_color2 {
  background-color: #0080CC; }
#talk.talk1 .sec_2 .box_sticky .inner .txt_set__item p.name.bg_color3 {
  background-color: #FFBA00; }
#talk.talk2 .sec_1 .cont_cat {
  color: #3BAC2C; }
#talk.talk2 .sec_1 .main_img:before {
  background: url("../../talk/img/obj_3_talk2.png") no-repeat left center/contain; }
#talk.talk2 .sec_1 .cont_txt:before {
  background: url("../../talk/img/obj_2_talk2.png") no-repeat left center/contain; }
#talk.talk2 .sec_1 .cont_txt p {
  color: #AF65D0; }
#talk.talk2 .sec_1 .profile h2:before {
  background: url("../../talk/img/obj_4_talk2.png") no-repeat center center/contain; }
#talk.talk2 .sec_1 .profile dl figure.bg_color1:before {
  background-color: #3BAC2C; }
#talk.talk2 .sec_1 .profile dl figure.bg_color2:before {
  background-color: #FFD800; }
#talk.talk2 .sec_1 .profile dl figure.bg_color3:before {
  background-color: #AF65D0; }
#talk.talk2 .sec_2 .box_sticky .inner .txt_set__item p.name.bg_color1 {
  background-color: #3BAC2C; }
#talk.talk2 .sec_2 .box_sticky .inner .txt_set__item p.name.bg_color2 {
  background-color: #FFD800; }
#talk.talk2 .sec_2 .box_sticky .inner .txt_set__item p.name.bg_color3 {
  background-color: #AF65D0; }

@keyframes lineAnime {
  0% {
    width: 0%; }
  100% {
    width: 100%; } }
@keyframes floatingAnime {
  0% {
    transform: translate(0, 0); }
  50% {
    transform: translate(0, 20%); }
  100% {
    transform: translate(0, 0); } }
#twenty .sec_1 {
  width: 100%;
  height: 100vh;
  display: flex;
  flex-direction: row-reverse; }
  @media screen and (max-width: 600px) {
    #twenty .sec_1 {
      flex-direction: column;
      height: auto; } }
  #twenty .sec_1 .main_img {
    width: 50%;
    height: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover; }
    @media screen and (max-width: 600px) {
      #twenty .sec_1 .main_img {
        width: 100%;
        height: 400px; } }
  #twenty .sec_1 .main_ttl {
    width: 50%;
    height: 100%;
    padding: 100px 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center; }
    @media screen and (max-width: 600px) {
      #twenty .sec_1 .main_ttl {
        width: 100%;
        height: auto;
        padding: 0px 0 0;
        margin-top: -10px; } }
    #twenty .sec_1 .main_ttl h1 {
      width: 371px;
      position: relative; }
      @media screen and (max-width: 600px) {
        #twenty .sec_1 .main_ttl h1 {
          width: 220px; } }
      #twenty .sec_1 .main_ttl h1:before {
        content: "";
        background: url("../../twenty/img/obj_1.png") no-repeat left center/contain;
        width: 81px;
        height: 122px;
        position: absolute;
        top: 10px;
        left: -130px;
        z-index: 10; }
        @media screen and (max-width: 600px) {
          #twenty .sec_1 .main_ttl h1:before {
            width: 54px;
            height: 80px;
            top: 0px;
            left: -80px; } }
      #twenty .sec_1 .main_ttl h1:after {
        content: "";
        background: url("../../twenty/img/obj_2.png") no-repeat left center/contain;
        width: 194px;
        height: 195px;
        position: absolute;
        bottom: -26px;
        right: -100px;
        z-index: 10; }
        @media screen and (max-width: 600px) {
          #twenty .sec_1 .main_ttl h1:after {
            width: 130px;
            height: 130px;
            bottom: -16px;
            right: -50px; } }
    #twenty .sec_1 .main_ttl .profile {
      width: 380px;
      position: relative;
      margin: 80px 0 0 -140px; }
      @media screen and (max-width: 600px) {
        #twenty .sec_1 .main_ttl .profile {
          margin-left: -10px;
          margin-top: 20px;
          width: 86%;
          padding: 8px 10px;
          margin-bottom: 30px; } }
      #twenty .sec_1 .main_ttl .profile:before {
        content: "";
        background: url("../../twenty/img/obj_3.png") no-repeat left center/contain;
        width: 80px;
        height: 93px;
        position: absolute;
        bottom: -70px;
        right: -150px;
        z-index: 10; }
      #twenty .sec_1 .main_ttl .profile dl {
        position: relative;
        padding: 10px 20px 25px 10px; }
        @media screen and (max-width: 600px) {
          #twenty .sec_1 .main_ttl .profile dl {
            padding: 7px 15px 15px 10px; } }
        #twenty .sec_1 .main_ttl .profile dl:before {
          content: "";
          width: 20px;
          height: 100%;
          background-color: #FF6BA8;
          border: solid 1px #FF6BA8;
          position: absolute;
          right: -21px;
          top: 9px;
          transform: skewY(45deg); }
          @media screen and (max-width: 600px) {
            #twenty .sec_1 .main_ttl .profile dl:before {
              width: 12px;
              top: 9px;
              right: -17px; } }
        #twenty .sec_1 .main_ttl .profile dl:after {
          content: "";
          width: 100%;
          height: 20px;
          background-color: #FF6BA8;
          border: solid 1px #FF6BA8;
          position: absolute;
          left: 9px;
          bottom: -21px;
          transform: skewX(45deg); }
          @media screen and (max-width: 600px) {
            #twenty .sec_1 .main_ttl .profile dl:after {
              height: 12px;
              left: 8px;
              bottom: -16px; } }
        #twenty .sec_1 .main_ttl .profile dl dt {
          font-size: 2.2rem;
          font-weight: 600;
          letter-spacing: 0.08em;
          margin-bottom: 0.3em; }
          @media screen and (max-width: 600px) {
            #twenty .sec_1 .main_ttl .profile dl dt {
              font-size: 1.8rem; } }
        #twenty .sec_1 .main_ttl .profile dl dd {
          font-size: 1.5rem;
          line-height: 1.6; }
          @media screen and (max-width: 600px) {
            #twenty .sec_1 .main_ttl .profile dl dd {
              font-size: 1.3rem; } }
#twenty .sec_2 {
  background-color: #0080CC;
  padding: 80px 0; }
  @media screen and (max-width: 600px) {
    #twenty .sec_2 {
      padding: 30px 0; } }
  #twenty .sec_2 p {
    text-align: center;
    font-size: 2.0rem;
    font-weight: 500;
    color: #fff;
    letter-spacing: 0.1em;
    line-height: 2; }
    @media screen and (max-width: 600px) {
      #twenty .sec_2 p {
        font-size: 1.6rem;
        text-align: left; } }
#twenty .sec_3 {
  padding: 190px 0;
  position: relative;
  overflow: hidden;
  margin-inline: auto; }
  @media screen and (max-width: 600px) {
    #twenty .sec_3 {
      padding: 90px 0; } }
  #twenty .sec_3:before {
    content: "";
    background: url("../../twenty/img/obj_4.png") no-repeat left center/contain;
    width: 151px;
    height: 208px;
    position: absolute;
    top: 53%;
    left: 5px;
    z-index: 5; }
    @media screen and (max-width: 600px) {
      #twenty .sec_3:before {
        width: 100px;
        height: 140px; } }
  #twenty .sec_3:after {
    content: "";
    background: url("../../twenty/img/obj_5.png") no-repeat left center/contain;
    width: 110px;
    height: 168px;
    position: absolute;
    top: 32%;
    right: 0px;
    z-index: 5; }
    @media screen and (max-width: 600px) {
      #twenty .sec_3:after {
        width: 74px;
        height: 112px; } }
  #twenty .sec_3 p {
    font-size: 20rem;
    font-weight: 500;
    line-height: 1;
    position: absolute;
    white-space: nowrap; }
    @media screen and (max-width: 600px) {
      #twenty .sec_3 p {
        font-size: 16rem; } }
    #twenty .sec_3 p.txt_blue {
      color: rgba(146, 200, 233, 0.2);
      top: 10px;
      left: 10px;
      animation: loopTxt1 80s linear infinite; }
      @media screen and (max-width: 600px) {
        #twenty .sec_3 p.txt_blue {
          top: -30px; } }
    #twenty .sec_3 p.txt_pink {
      color: rgba(255, 196, 220, 0.2);
      bottom: 30px;
      left: -350px;
      animation: loopTxt2 80s linear infinite; }
      @media screen and (max-width: 600px) {
        #twenty .sec_3 p.txt_pink {
          bottom: 10px; } }
  #twenty .sec_3 .history {
    display: flex;
    justify-content: space-between;
    position: relative;
    z-index: 10;
    /*&:before {
    	content: "";
    	background: url("../../twenty/img/obj_4.png") no-repeat left center / contain;
    	width: 151px;
    	height: 208px;
    	position: absolute;
    	top: 190px;
    	left: -200px;
    	z-index: 10;
    	@media screen and (max-width: $sp) {
    	}
    }
    &:after {
    	content: "";
    	background: url("../../twenty/img/obj_5.png") no-repeat left center / contain;
    	width: 110px;
    	height: 168px;
    	position: absolute;
    	top: 40px;
    	right: -180px;
    	z-index: 10;
    	@media screen and (max-width: $sp) {
    	}
    }*/ }
    @media screen and (max-width: 600px) {
      #twenty .sec_3 .history {
        flex-direction: column;
        align-items: center;
        gap: 70px; } }
    #twenty .sec_3 .history dl {
      width: 340px;
      height: 340px;
      border-radius: 170px;
      background-color: #f6f6f6;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      position: relative; }
      @media screen and (max-width: 600px) {
        #twenty .sec_3 .history dl {
          width: 280px;
          height: 280px;
          border-radius: 140px;
          padding-left: 10px; } }
      #twenty .sec_3 .history dl:before {
        content: "";
        width: 100%;
        height: 100%;
        border-radius: 50%;
        position: absolute;
        top: 10px;
        left: 10px;
        background-color: #FF6BA8;
        z-index: -1; }
      #twenty .sec_3 .history dl:after {
        content: "";
        background: url("../../twenty/img/arrow.png") no-repeat center center/contain;
        width: 31px;
        height: 50px;
        position: absolute;
        top: calc(50% - 25px);
        right: -67px; }
        @media screen and (max-width: 600px) {
          #twenty .sec_3 .history dl:after {
            top: auto;
            bottom: -67px;
            right: calc(50% - 20px);
            transform: rotate(90deg); } }
      #twenty .sec_3 .history dl:last-child:after {
        display: none; }
      #twenty .sec_3 .history dl dt {
        text-align: center;
        font-size: 2.0rem;
        font-weight: 600;
        line-height: 1.5;
        color: #FF6BA8;
        margin-bottom: 0.8em;
        margin-top: -20px; }
        @media screen and (max-width: 600px) {
          #twenty .sec_3 .history dl dt {
            font-size: 1.8rem; } }
      #twenty .sec_3 .history dl dd {
        width: 240px;
        line-height: 1.6; }
        @media screen and (max-width: 600px) {
          #twenty .sec_3 .history dl dd {
            font-size: 1.4rem;
            width: 220px; } }
#twenty .sec_4 .box_theme {
  position: relative;
  padding-bottom: 100px; }
  @media screen and (max-width: 600px) {
    #twenty .sec_4 .box_theme {
      padding-bottom: 60px; } }
  #twenty .sec_4 .box_theme:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 300px;
    z-index: -1; }
  #twenty .sec_4 .box_theme .ttl_theme {
    font-family: "Roboto", serif;
    font-size: 10.0rem;
    font-weight: 600;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #0080CC;
    color: #fff;
    line-height: 1;
    padding: 0.4em 0 0.7em; }
    @media screen and (max-width: 600px) {
      #twenty .sec_4 .box_theme .ttl_theme {
        font-size: 6.0rem; } }
  #twenty .sec_4 .box_theme .box_theme__inner {
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 600px) {
      #twenty .sec_4 .box_theme .box_theme__inner {
        flex-direction: column; } }
    #twenty .sec_4 .box_theme .box_theme__inner figure {
      width: 605px;
      position: relative;
      z-index: 5; }
      @media screen and (max-width: 600px) {
        #twenty .sec_4 .box_theme .box_theme__inner figure {
          width: 100%; } }
      #twenty .sec_4 .box_theme .box_theme__inner figure:before {
        content: "";
        width: 100%;
        height: 100%;
        background-color: #FFDA00;
        position: absolute;
        z-index: -1; }
  #twenty .sec_4 .box_theme .box_txt {
    width: 550px; }
    @media screen and (max-width: 600px) {
      #twenty .sec_4 .box_theme .box_txt {
        width: 100%;
        margin-top: 1.6em; } }
    #twenty .sec_4 .box_theme .box_txt.noimg {
      width: 100%;
      margin-top: -2.2em; }
    #twenty .sec_4 .box_theme .box_txt h3 {
      font-size: 2.4rem;
      font-weight: 600;
      margin-bottom: 0.7em; }
      @media screen and (max-width: 600px) {
        #twenty .sec_4 .box_theme .box_txt h3 {
          font-size: 2.0rem; } }
  #twenty .sec_4 .box_theme__1:before {
    background-color: rgba(0, 128, 204, 0.05); }
  #twenty .sec_4 .box_theme__1 .inner {
    position: relative; }
    #twenty .sec_4 .box_theme__1 .inner:before {
      content: "";
      background: url("../../twenty/img/obj_8.png") no-repeat left center/contain;
      width: 50px;
      height: 277px;
      position: absolute;
      top: 40px;
      right: -90px;
      z-index: 5; }
      @media screen and (max-width: 600px) {
        #twenty .sec_4 .box_theme__1 .inner:before {
          width: 34px;
          height: 184px;
          top: 12px;
          right: auto;
          left: 20px; } }
    #twenty .sec_4 .box_theme__1 .inner:after {
      content: "";
      background: url("../../twenty/img/obj_6.png") no-repeat left center/contain;
      width: 270px;
      height: 180px;
      position: absolute;
      bottom: -170px;
      right: -230px;
      z-index: 5; }
      @media screen and (max-width: 600px) {
        #twenty .sec_4 .box_theme__1 .inner:after {
          width: 135px;
          height: 90px;
          right: -20px;
          bottom: -110px; } }
  #twenty .sec_4 .box_theme__1 .ttl_theme {
    text-align: right;
    -webkit-text-stroke-color: #0080CC; }
  #twenty .sec_4 .box_theme__1 .box_theme__inner figure:before {
    left: -50px;
    top: -20px; }
  #twenty .sec_4 .box_theme__2 {
    padding-bottom: 170px; }
    @media screen and (max-width: 600px) {
      #twenty .sec_4 .box_theme__2 {
        padding-bottom: 70px; } }
    #twenty .sec_4 .box_theme__2:before {
      background-color: rgba(255, 107, 168, 0.05); }
    #twenty .sec_4 .box_theme__2 .inner {
      position: relative; }
      #twenty .sec_4 .box_theme__2 .inner:before {
        content: "";
        background: url("../../twenty/img/obj_9.png") no-repeat left center/contain;
        width: 50px;
        height: 277px;
        position: absolute;
        top: 40px;
        left: -90px;
        z-index: 5; }
        @media screen and (max-width: 600px) {
          #twenty .sec_4 .box_theme__2 .inner:before {
            width: 34px;
            height: 184px;
            display: none; } }
    #twenty .sec_4 .box_theme__2 .ttl_theme {
      -webkit-text-stroke-color: #FF6BA8; }
    #twenty .sec_4 .box_theme__2 .box_theme__inner .box_txt {
      width: 100%;
      margin-top: -2.2em; }
  #twenty .sec_4 .box_theme__3 {
    padding-bottom: 170px; }
    @media screen and (max-width: 600px) {
      #twenty .sec_4 .box_theme__3 {
        padding-bottom: 80px; } }
    #twenty .sec_4 .box_theme__3:before {
      background-color: rgba(0, 128, 204, 0.05); }
    #twenty .sec_4 .box_theme__3 .inner {
      position: relative; }
      #twenty .sec_4 .box_theme__3 .inner:before {
        content: "";
        background: url("../../twenty/img/obj_8.png") no-repeat left center/contain;
        width: 50px;
        height: 277px;
        position: absolute;
        top: -130px;
        left: 510px;
        z-index: 5; }
        @media screen and (max-width: 600px) {
          #twenty .sec_4 .box_theme__3 .inner:before {
            width: 34px;
            height: 184px;
            top: -64px;
            left: auto;
            right: 0px; } }
    #twenty .sec_4 .box_theme__3 .ttl_theme {
      -webkit-text-stroke-color: #0080CC; }
    #twenty .sec_4 .box_theme__3 .box_theme__inner {
      flex-direction: row-reverse; }
      @media screen and (max-width: 600px) {
        #twenty .sec_4 .box_theme__3 .box_theme__inner {
          flex-direction: column; } }
      #twenty .sec_4 .box_theme__3 .box_theme__inner figure:before {
        left: 50px;
        top: 20px; }
  #twenty .sec_4 .box_theme__4:before {
    background-color: rgba(255, 107, 168, 0.05); }
  #twenty .sec_4 .box_theme__4 .inner {
    position: relative; }
    #twenty .sec_4 .box_theme__4 .inner:before {
      content: "";
      background: url("../../twenty/img/obj_9.png") no-repeat left center/contain;
      width: 50px;
      height: 277px;
      position: absolute;
      top: -130px;
      right: 15px;
      z-index: 5; }
      @media screen and (max-width: 600px) {
        #twenty .sec_4 .box_theme__4 .inner:before {
          width: 34px;
          height: 184px;
          top: -70px; } }
    #twenty .sec_4 .box_theme__4 .inner:after {
      content: "";
      background: url("../../twenty/img/obj_7.png") no-repeat left center/contain;
      width: 191px;
      height: 175px;
      position: absolute;
      bottom: -170px;
      left: -140px;
      z-index: 5; }
      @media screen and (max-width: 600px) {
        #twenty .sec_4 .box_theme__4 .inner:after {
          width: 126px;
          height: 116px;
          bottom: -290px;
          left: -10px; } }
  #twenty .sec_4 .box_theme__4 .ttl_theme {
    -webkit-text-stroke-color: #FF6BA8; }
  #twenty .sec_4 .box_theme__4 .box_theme__inner .box_txt {
    width: 100%;
    margin-top: -2.2em; }
#twenty .img_last {
  position: relative;
  margin-bottom: 100px; }
  #twenty .img_last:before {
    content: "";
    width: 84%;
    height: 60px;
    background-color: #FFDA00;
    position: absolute;
    right: 0;
    bottom: -60px;
    z-index: -1; }

@keyframes loopTxt1 {
  0% {
    transform: translateX(0%); }
  100% {
    transform: translateX(-50%); } }
@keyframes loopTxt2 {
  0% {
    transform: translateX(-50%); }
  100% {
    transform: translateX(0%); } }

/*# sourceMappingURL=style.css.map */
