@charset "UTF-8";


.js-loading #topnew04 {
  visibility: hidden;
}

/*   
reCAPTCHA ロゴ消す
*/
.grecaptcha-badge {
  visibility: hidden;
}

@media all and (min-width:751px) {

  .pc_only {
    display: block;
  }

  .sp_only {
    display: none !important;
  }
}

@media all and (min-width: 751px) and (max-width: 999px) {
  .u-hide-tab {
    display: none;
  }
}


@media all and (max-width:750px) {

  .pc_only {
    display: none !important;
  }

  .sp_only {
    display: block;
  }
}

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP&display=swap');

#topnew04 {
  font-weight: normal;
  line-height: 1.75;
  font-size: 16px;
  /*   
  top: -29px;
  font-family: 'Noto Sans CJK JP', 'Noto SansJP';
*/
  font-family: 'Poppins', Verdana, Roboto, "Droid Sans", "游ゴシック", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", 'Noto Sans CJK JP', 'Noto SansJP', sans-serif;



  position: relative;
}

#topnew04 .wrapper {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
  padding: 60px 20px 30px;
}

@media screen and (max-width:768px) {
  #topnew04 .wrapper {
    width: 100%;
    padding: 16px;
  }
}

#topnew04 .headline_box {
  display: flex;
  flex-direction: column;
  line-height: 2.2em;
}

#topnew04 .en_headline {
  color: #F5A623;
  font-family: "Bebas Neue";
  font-size: 1.3em;
  letter-spacing: 0.2em;
  margin: -5px 0px;

}

#topnew04 .en_headline.sub {
  color: #DC5D59;
}


#topnew04 .sub_headline {
  color: #123261;
  font-weight: bold;
}

#topnew04 .main_headline {
  color: #123261;
  font-weight: bold;
  font-size: 1.9em;
}

#topnew04 .headline_box:after {
  content: "";
  display: block;
  width: 50px;
  height: 3px;
  background-color: #F5A623;
  margin-bottom: 8px;
  margin: 20px 0px 20px;
}

#topnew04 .headline_box.sub:after {
  background-color: #DC5D59;
}

#topnew04 .orange {
  color: #F5A623;
}

#topnew04 .blue {
  color: #005BAC;
}



#topnew04 .footer_link-box {
  display: grid;
  /*グリッドの縦の個数*/
  grid-template-rows: repeat(1, 1fr);
  /*グリッドの横の個数*/
  grid-template-columns: repeat(2, 1fr);
  /*ギャップ縦、横*/
  gap: 20px 20px;
  width: 100%;
  margin-top: 20px;
}


#topnew04 .footer_link-box div {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 80px;
}



@media screen and (max-width:768px) {
  #topnew04 .footer_link-box {
    display: grid;
    /*グリッドの縦の個数*/
    grid-template-rows: repeat(1, 1fr);
    /*グリッドの横の個数*/
    grid-template-columns: repeat(2, 1fr);
    /*ギャップ縦、横*/
    gap: 80px 20px;
    width: 100%;


  }
}

#topnew04 .bottom_seal {
  height: 57px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 40px;
  flex-direction: row;
  gap: 10px;
}

#topnew04 .bottom_seal img {
  height: 100%
}



#topnew04 .site_seal {
  display: flex;
  justify-content: center;
  flex-direction: row;
}

#topnew04 .site_seal div.site_seal_left {
  padding: 40px 5px 0px 115px;
}

#topnew04 .site_seal div.site_seal_right {
  padding: 40px 115px 0px 5px;
}

@media only screen and (max-width: 767px) {
  #topnew04 .site_seal {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
  }

  #topnew04 .site_seal a {
    display: block !important;
  }

  #topnew04 .site_seal div.site_seal_left {
    padding: 40px 115px 5px;
  }

  #topnew04 .site_seal div.site_seal_right {
    padding: 5px 115px 5px;
  }
}



#topnew04 .link_space {
  width: 150px;
}

.l-footer {
  padding-bottom: 0px;
}

#topnew04 .title_label {
  color: var(--color-primary-30, #005BAC);

  /* typography/english/heading/lg */
  font-family: var(--typography-english-heading-lg-font-family, Poppins);
  font-size: var(--typography-english-heading-lg-font-size, 40px);
  font-style: normal;
  font-weight: 400;
  line-height: 139%;
  /* 55.6px */
  letter-spacing: 4px;
  text-transform: uppercase;
  padding: 4px 0px
}

#topnew04 .subtitle_label {
  color: var(--color-neutral-5, #1E2021);

  /* typography/default/label/lg */
  font-family: var(--typography-default-label-lg-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-label-lg-font-size, 18px);
  font-style: normal;
  font-weight: 400;
  line-height: 100%;
  /* 18px */
  letter-spacing: 2.16px;
}

#topnew04 .main_label {
  color: var(--color-primary-40, #247AC8);

  /* typography/default/heading/sm */
  font-family: var(--typography-default-heading-sm-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-heading-sm-font-size, 24px);
  font-style: normal;
  font-weight: 700;
  line-height: 151%;
  /* 36.24px */
  letter-spacing: 2.88px;
}


#topnew04 #service .default_arrow {
  color: #005BAC;
  /* 矢印の線の色 */
}


#topnew04 .box_link .link_arrow {
  transition: transform 0.3s ease;
}

#topnew04 .box_link:hover .link_arrow {
  transform: scale(1.3);
}

#topnew04 .box_link:hover {
  transform: translateX(5px);
  /* テキスト全体がちょっと右に動く */
}

#topnew04 .redbox {

  background: var(--color-secondary_A-90, #FFEEF7);
}

#topnew04 .bluebox {

  background: var(--color-secondary_B-90, #EAF7FF);
}

#topnew04 .greenbox {

  background: var(--color-secondary_C-90, #E7FBF2);
}

#topnew04 .redfont {
  color: var(--color-secondary_A-30, #FB56AE);

}

#topnew04 .bluefont {
  color: var(--color-secondary_A-30, #2DB1FF);

}

#topnew04 .greenfont {
  color: var(--color-secondary_A-30, #13D481);

}

#topnew04 .red_arrow {
  color: #E2489A;
  /* 矢印の線の色 */
}

#topnew04 .blue_arrow {
  color: #2DB1FF;
  /* 矢印の線の色 */
}

#topnew04.green_arrow {
  color: #13D481;
  /* 矢印の線の色 */
}

#topnew04 .white_arrow {
  color: #fff;
  /* 矢印の線の色 */
}


/*==================================
 mv　01-01トップ 
===================================*/
#topnew04 #mv .body {
  background-image: url(../img/topnew4/top_bg11.png);
  height: 696px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;

  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;

  position: relative;

}

#topnew04 #mv .topimg img {
  height: 696px;
  object-fit: cover;
}

#topnew04 #mv .toptext {
  padding: 0 20px;
  position: absolute;
  height: 696px;
  width: calc(1440 / 1440* 100vw);
  max-width: 1240px;
  display: flex;
  align-items: start;
  justify-content: center;
  flex-direction: column;

  color: var(--color-neutral-5, #1E2021);

  /* typography/default/title/lg */
  font-family: var(--font-family-default, "BIZ UDPGothic");
  font-size: 48px;
  font-style: normal;
  font-weight: 700;
  line-height: 141%;
  /* 67.68px */
  letter-spacing: 5.76px;
}


#topnew04 #mv .toptext .text01 span {
  color: var(--color-primary-30, #005BAC);

  /* typography/default/title/lg */
  font-family: var(--font-family-default, "BIZ UDPGothic");
  font-style: normal;
  font-weight: 700;
  line-height: 141%;
  letter-spacing: 5.76px;
}

#topnew04 #mv .topminitext {
  color: var(--color-primary-30, #005BAC);

  /* typography/english/body/lg */
  font-family: var(--typography-english-body-normal-lg-font-family, Poppins);
  font-family: 'Poppins', sans-serif !important;
  font-weight: 600;
  font-size: var(--typography-english-body-normal-lg-font-size, 20px);
  font-style: normal;
  font-weight: 400;
  line-height: 159%;
  /* 31.8px */
  letter-spacing: 2px;
}

#topnew04 #mv .text01 {
  animation: slideIn01 1s ease-out;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes slideIn01 {
  0% {
    transform: translateY(100%);
    opacity: 0;

  }

  100% {
    transform: translateY(0);
    opacity: 1;
  }
}


#topnew04 #mv .text02 {
  animation: slideIn02 1s ease-out;
  animation-delay: 0.6s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes slideIn02 {
  0% {
    transform: translateY(100%);
    opacity: 0;

  }

  100% {
    transform: translateY(0);
    opacity: 1;
  }
}


#topnew04 #mv .text03 {
  animation: slideIn03 1s ease-out;
  animation-delay: 1.2s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes slideIn03 {
  0% {
    transform: translateY(100%);
    opacity: 0;

  }

  100% {
    transform: translateY(0);
    opacity: 1;
  }
}


#topnew04 #mv .wrapper {}

@media screen and (max-width: 768px) {

  #topnew04 #mv .toptext {
    padding: 0 10px;
  }

  #topnew04 #mv .body {
    background-image: url(../img/topnew4/top_bg11sp.png);
  }

  #topnew04 #mv .toptext {
    width: calc(350 / 375* 100vw);
    font-size: 36px;
  }

  #topnew04 #mv .toptext {
    color: var(--color-neutral-5, #1E2021);

    /* typography/default/title/sm */
    font-family: var(--typography-default-title-sm-font-family, "BIZ UDPGothic");
    font-size: var(--typography-default-title-sm-font-size, 32px);

    font-weight: 700;
    line-height: 139%;
    /* 44.48px */
    letter-spacing: 3.84px;
  }
}

/*==================================
 misson　
 ===================================*/

#topnew04 #misson .body {
  background-image: url(../img/topnew4/bg_11.png);
  height: 714px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;

  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;

  position: relative;

}

#topnew04 #misson .wrapper {
  width: 90%;
  max-width: 1120px;
  display: flex;
  justify-content: end;
  position: relative;

}

#topnew04 #misson .text_box {
  width: 520px;
}


#topnew04 #misson .photo_box_01 {
  position: absolute;
  left: 0px;
  width: 544px;
  width: calc(544 / 1440* 100vw);
  max-width: 544px;
  top: 20px
}

#topnew04 #misson .photo_box_02 {
  position: absolute;
  left: -80px;
  width: 360px;
  width: calc(360 / 1440* 100vw);
  max-width: 360px;
  top: 264px
}

#topnew04 #misson .main_text {
  color: var(--color-neutral-5, #1E2021);

  /* typography/default/body/normal/md */
  font-family: var(--typography-default-body-normal-md-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-body-normal-md-font-size, 16px);
  font-style: normal;
  font-weight: 400;
  line-height: 197%;
  /* 31.52px */
  letter-spacing: 1.92px;

  margin: 40px 0;
}

#topnew04 #misson .main_text span {
  font-weight: 700;
  border-bottom: 4px solid var(--color-primary-70, #9FCCF4);
}

#topnew04 #misson .main_text .blod_text {
  color: var(--color-primary-30, #005BAC);

  /* typography/default/body/bold/lg */
  font-family: var(--typography-default-body-bold-lg-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-body-bold-lg-font-size, 18px);
  font-style: normal;
  font-weight: 700;
  line-height: 179%;
  /* 32.22px */
  letter-spacing: 2.16px;

  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-16, 16px);
  align-self: stretch;
  margin: 20px 0;
}

#topnew04 #misson .box_link {

  display: flex;
  justify-content: start;
  align-items: center;
  gap: 24px;

  color: var(--color-primary-30, #005BAC);

  /* typography/default/body/normal/lg */
  font-family: var(--typography-default-body-normal-lg-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-body-normal-lg-font-size, 18px);
  font-style: normal;
  font-weight: 400;
  line-height: 179%;
  /* 32.22px */
  letter-spacing: 2.16px;

  margin-top: 40px;
}

@media all and (max-width:736px) {

  #topnew04 #misson .body {
    height: auto;
    margin-bottom: 80px;
  }

  #topnew04 #misson .wrapper {
    width: 100%;
  }

  #topnew04 #misson .photo_box_sp {
    width: 100%;
  }

  #topnew04 #misson .photo_box_sp img {
    width: 100%;
  }


}





/*==================================
 service　
 ===================================*/

#topnew04 #service .body {
  background-image: url(../img/topnew4/bg_12.png);
  /*
  height: 1342px;
*/
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;

  display: flex;
  flex-direction: column;
  align-items: center;

  position: relative;

}

#topnew04 #service .title_label {
  display: flex;
  justify-content: center;
}

#topnew04 #service .top_box {
  display: flex;
  justify-content: center;
  flex-direction: column;
  text-align: center;
}

#topnew04 #service .middle_box {
  display: flex;
  margin-top: 40px;
}



#topnew04 #service .middle_box .left_box {
  width: 50%;
}

#topnew04 #service .middle_box .right_box {
  width: 50%;
}

#topnew04 #service .middle_box .main_text {
  margin: 24px 0;
}

@media screen and (max-width: 768px) {

  #topnew04 #service .middle_box {
    flex-direction: column;
  }

  #topnew04 #service .middle_box .left_box {
    width: 100%;
  }

  #topnew04 #service .middle_box .right_box {
    width: 100%;
  }

}

#topnew04 #service .box_link {

  display: flex;
  justify-content: start;
  align-items: center;
  gap: 24px;

  color: var(--color-primary-30, #005BAC);

  /* typography/default/body/normal/lg */
  font-family: var(--typography-default-body-normal-lg-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-body-normal-lg-font-size, 18px);
  font-style: normal;
  font-weight: 400;
  line-height: 179%;
  /* 32.22px */
  letter-spacing: 2.16px;
  margin-top: 40px;
}


#topnew04 #service .bottom_box {
  margin-top: 120px;

  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

#topnew04 #service .box3 {

  display: flex;
  width: 31.5%;
  height: 482px;
  padding: var(--space-24, 24px);
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 16px;

  color: var(--color-neutral-5, #1E2021);

  /* typography/default/body/normal/md */
  font-family: var(--typography-default-body-normal-md-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-body-normal-md-font-size, 16px);
  font-style: normal;
  font-weight: 400;
  line-height: 197%;
  /* 31.52px */
  letter-spacing: 1.92px;

  position: relative;
  transition: transform 0.3s ease, box-shadow 0.3s ease;

  border-radius: 24px;

}

#topnew04 #service .box3:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
}


#topnew04 #service .box3 .num_box {

  width: 60px;
  position: absolute;
  top: -5px;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);

}

#topnew04 #service .box3 .num_box img {}





#topnew04 #service .box3 .box_title {
  /* typography/default/heading/sm */
  font-family: var(--typography-default-heading-sm-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-heading-sm-font-size, 24px);
  font-style: normal;
  font-weight: 700;
  line-height: 151%;
  /* 36.24px */
  letter-spacing: 2.88px;

}

#topnew04 #service .box3 .redfont {
  color: var(--color-secondary_A-30, #FB56AE);

}

#topnew04 #service .box3 .bluefont {
  color: var(--color-secondary_A-30, #2DB1FF);

}

#topnew04 #service .box3 .greenfont {
  color: var(--color-secondary_A-30, #13D481);

}



#topnew04 #service .box3 .box_link {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 24px;
  /* typography/default/body/normal/lg */
  font-family: var(--typography-default-body-normal-lg-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-body-normal-lg-font-size, 18px);
  font-style: normal;
  font-weight: 400;
  line-height: 179%;
  /* 32.22px */
  letter-spacing: 2.16px;

}

.box_link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  /* テキストとアイコンの間 */
  cursor: pointer;
  transition: transform 0.3s ease;
}


@media screen and (max-width: 768px) {

  #topnew04 #service .body {
    margin-bottom: 80px;
  }

  #topnew04 #service .bottom_box {
    margin-top: 120px;

    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }



  #topnew04 #service .box3 {
    width: 100%;
    height: auto;
    padding-top: 32px;
  }

  #topnew04 #service .bottom_box {
    gap: 80px;
  }

}


/*==================================
 interview　
 ===================================*/

#topnew04 #interview .body {
  background-image: url(../img/topnew4/bg_13.png);
  height: 954px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;

}

#topnew04 #interview .wrapper {
  margin-top: 0px;
  padding-top: 96px;

}

#topnew04 #interview .title_label {
  display: flex;
  justify-content: center;
}

#topnew04 #interview .subtitle_label {
  margin-bottom: 40px;

}


#topnew04 #interview .main_text {
  margin-top: 40px;
  margin-bottom: 40px;
  text-align: center;
  width: 100%;
}


#topnew04 #interview .box_layout {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}




#topnew04 #interview .box3 {
  width: 32%;
}

#topnew04 #interview .box_bottom {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}

#topnew04 #interview .box_text {
  margin: 16px 0;
  height: 90px;
}


#topnew04 #interview .box_bottom .job_text {
  color: var(--color-neutral-30, #6A6E73);

  /* typography/default/heading/xs */
  font-family: var(--typography-default-heading-xs-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-heading-xs-font-size, 20px);
  font-style: normal;
  font-weight: 700;
  line-height: 160%;
  /* 32px */
  letter-spacing: 1px;
}

#topnew04 #interview .box_bottom .name_text {
  color: var(--color-neutral-30, #6A6E73);

  /* typography/default/body/normal/sm */
  font-family: var(--typography-default-body-normal-sm-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-body-normal-sm-font-size, 14px);
  font-style: normal;
  font-weight: 400;
  line-height: 173%;
  /* 24.22px */
  letter-spacing: 1.68px;
}

#topnew04 #interview .box_bottom .glay_arrow {
  color: #6A6E73;
  /* 矢印の線の色 */
}

@media screen and (max-width: 768px) {

  #topnew04 #interview .wrapper {
    margin-top: 0px;
    padding-top: 40px;

  }

  #topnew04 #interview .body {
    height: auto;
  }

  #topnew04 #interview .box_layout {
    flex-direction: column;
  }

  #topnew04 #interview .box3 {
    width: 100%;
    margin-bottom: 40px;
  }

  #topnew04 #interview .box_text {
    margin: 16px 0;
    height: auto;
  }
}

/*==================================
 recruit
 ===================================*/

#topnew04 #recruit {
  height: auto;
  margin-top: 0;
}

#topnew04 #recruit .body {
  background-image: url(../img/topnew4/bg_14.png);
  height: 800px;
  background-position: top;
  background-repeat: no-repeat;
  background-size: cover;

}

#topnew04 #recruit .wrapper {
  display: flex;
  justify-content: center;
}

#topnew04 #recruit .box_layout {
  display: flex;
  width: 100%;
  padding: var(--space-64, 64px) var(--space-80, 80px);
  align-items: flex-start;
  gap: var(--space-64, 64px);
  border-radius: 24px;
  background: var(--color-neutral-100, #FFF);

  margin-top: 260px;

  display: flex;
  flex-direction: row;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  justify-content: space-between;
  height: 384px;
}

#topnew04 #recruit .box_layout:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
}

#topnew04 #recruit .box_link {

  display: flex;
  justify-content: start;
  align-items: center;
  gap: 24px;

  color: var(--color-primary-30, #005BAC);

  /* typography/default/body/normal/lg */
  font-family: var(--typography-default-body-normal-lg-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-body-normal-lg-font-size, 18px);
  font-style: normal;
  font-weight: 400;
  line-height: 179%;
  /* 32.22px */
  letter-spacing: 2.16px;

  margin-top: 24px;
}


#topnew04 #recruit .main_text {
  margin-top: 24px;
}

#topnew04 #recruit .right_box {
  width: 576px;
}


@media screen and (max-width: 768px) {

  #topnew04 #recruit {
    margin-top: 0;
    height: auto;

  }

  #topnew04 #recruit .body {
    height: auto;
    padding-bottom: 100px;
    background-image: url(../img/topnew4/bg_14_sp.png);
    background-size: cover;
  }

  #topnew04 #recruit .box_layout {
    padding: 40px 20px;
    ;
    flex-direction: column;
    height: auto;
  }

  #topnew04 #recruit .right_box {
    width: auto;
  }
}

/*==================================
　■■■ここからサブページ■■■
===================================*/

/*==================================
 join
 ===================================*/

#topnew04 #join {
  background-image: url(../img/topnew4/top_bg12.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

#topnew04 #join .wrapper {
  padding: 96px 0px 96px;
}

#topnew04 #join .top_box {
  display: flex;
  flex-direction: row;

  margin-bottom: 64px;

  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  align-self: stretch;

  gap: var(--space-64, 64px);
}

#topnew04 #join .left_box {
  flex: 1;
  /* 均等に幅を割り当てる */

  color: var(--color-neutral-5, #1E2021);

  /* typography/default/body/normal/md */
  font-family: var(--typography-default-body-normal-md-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-body-normal-md-font-size, 16px);
  font-style: normal;
  font-weight: 400;
  line-height: 197%;
  /* 31.52px */
  letter-spacing: 1.92px;

  align-self: stretch;

}

#topnew04 #join .bold_text {
  color: var(--color-primary-30, #005BAC);

  /* typography/default/body/bold/lg */
  font-family: var(--typography-default-body-bold-lg-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-body-bold-lg-font-size, 18px);
  font-style: normal;
  font-weight: 700;
  line-height: 179%;
  /* 32.22px */
  letter-spacing: 2.16px;
  margin: 24px 0;
}

#topnew04 #join .main_text {
  margin: 28px 0;
}


#topnew04 #join .right_box {
  flex: 1;
  /* 均等に幅を割り当てる */
}

#topnew04 #join .top_box .main_title {
  display: flex;
  padding: var(--space-4, 4px) var(--space-16, 16px);
  justify-content: center;
  align-items: center;
  gap: 8px;


  background: var(--color-primary-30, #005BAC);

  color: var(--color-neutral-100, #FFF);

  /* typography/default/heading/md */
  font-family: var(--typography-default-heading-md-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-heading-md-font-size, 28px);
  font-style: normal;
  font-weight: 700;
  line-height: 144%;
  /* 40.32px */
  letter-spacing: 3.36px;


  width: 520px;



}

#topnew04 #join .box3 {
  width: auto;
  display: flex;
  flex-direction: row;

  display: flex;
  padding: var(--space-32, 32px);
  align-items: center;
  gap: var(--space-56, 56px);
  border-radius: 24px;

  margin-bottom: 32px;
  margin: 0 96px 32px;
}

#topnew04 #join .text_box {
  width: auto;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  gap: 16px;
  flex: 1 0 0;

  color: var(--color-neutral-5, #1E2021);
  /* typography/default/body/normal/md */
  font-family: var(--typography-default-body-normal-md-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-body-normal-md-font-size, 16px);
  font-style: normal;
  font-weight: 400;
  line-height: 197%;
  /* 31.52px */
  letter-spacing: 1.92px;

}

#topnew04 #join .title_box {
  display: flex;
  flex-direction: row;
  align-items: center;
}

#topnew04 #join .box_link {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 24px;

  font-family: var(--typography-default-body-normal-lg-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-body-normal-lg-font-size, 18px);
  font-style: normal;
  font-weight: 400;
  line-height: 179%;
  /* 32.22px */
  letter-spacing: 2.16px;
}

#topnew04 #join .box_title {
  /* typography/default/heading/sm */
  font-family: var(--typography-default-heading-sm-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-heading-sm-font-size, 24px);
  font-style: normal;
  font-weight: 700;
  line-height: 151%;
  /* 36.24px */
  letter-spacing: 2.88px;
  margin-left: 30px;
}

#topnew04 #join .num_box {
  width: 74px;
}



#topnew04 #join .photo_box img {
  max-width: 410px;
}

@media screen and (max-width: 768px) {
  #topnew04 #join .wrapper {
    padding: 44px 16px;
  }

  #topnew04 #join .top_box {
    display: flex;
    justify-content: start;
    align-items: start;
    flex-direction: column;

    gap: var(--space-64, 24px);
  }


  #topnew04 #join .main_text {
    margin: 0 0;
  }


  #topnew04 #join .top_box .main_title {
    justify-content: start;
    align-items: start;
    flex-direction: column;
    width: auto;
    display: inline-block;
    margin-bottom: 16px;
  }

  #topnew04 #join .box3 {
    flex-direction: column;
    margin: 0 0 60px;
  }

  #topnew04 #join .box3.revbox {
    flex-direction: column-reverse;
  }

  #topnew04 #join .box_title {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-left: 0px;
  }

  #topnew04 #join .photo_box img {
    width: 100%;
  }

  #topnew04 #join .text_box {
    display: flex;
    justify-content: center;
    align-items: center;
  }

  #topnew04 #join .text_box .box_link {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
  }

  #topnew04 #join .box3 .num_box {

    width: 60px;
    position: absolute;
    top: -5px;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);

  }

}

/*==================================
 viewmore
 ===================================*/
#topnew04 #viewmore .body {
  padding: 80px 0;
}

#topnew04 #viewmore .wrapper {
  padding-top: 0px;
}


#topnew04 #viewmore .title_box {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 40px;
}


#topnew04 #viewmore .layout_box {

  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  align-self: stretch;
}


#topnew04 #viewmore .layout_box .box3 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  width: 32%;
  border-bottom: 1px solid var(--color-neutral-30, #6A6E73);
  padding-bottom: 10px;
}

#topnew04 #viewmore .box3 .more_link {
  display: flex;
  width: 100%;
  flex-direction: row;
  justify-content: space-between;
  transition: transform 0.3s ease;
  align-items: center;
}

#topnew04 #viewmore .box3 .more_link .link_arrow {
  transition: transform 0.3s ease;

}

#topnew04 #viewmore .box3:hover .more_link .link_arrow {
  transform: scale(1.3);
}

#topnew04 #viewmore .box3:hover .more_link {
  transform: translateX(5px);
  /* テキスト全体がちょっと右に動く */
}

@media screen and (max-width: 768px) {

  #topnew04 #viewmore .layout_box {
    flex-direction: column;
  }

  #topnew04 #viewmore .layout_box .box3 {
    width: 100%;
    margin-bottom: 40px;
  }

  #topnew04 #viewmore .layout_box .box3 img {
    width: 100%;
  }


}

/*==================================
　■以下3ページ汎用
===================================*/

/*==================================
 business
===================================*/

#topnew04 #business .body {

  background: var(--color-neutral-90, #EEF1F3);
}

#topnew04 #business .service_box {

  display: flex;
  width: 1120px;
  padding: var(--space-56, 56px) var(--space-24, 24px);
  flex-direction: column;
  align-items: center;
  flex-shrink: 0;
  border-radius: 24px;
  background: var(--color-neutral-100, #FFF);
  margin-top: 76px;
  margin-bottom: 48px;
}

#topnew04 #business .text_area {
  margin: 0 48px;
}


#topnew04 #business .title_box {
  display: flex;
  width: 1120px;
  padding: var(--space-56, 32px) var(--space-24, 24px);
  flex-direction: column;
  align-items: center;

  flex-shrink: 0;

  color: var(--color-secondary_A-30, #FB56AE);

  /* typography/default/heading/xl */
  font-family: var(--typography-default-heading-xl-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-heading-xl-font-size, 40px);
  font-style: normal;
  font-weight: 700;
  line-height: 148%;
  /* 59.2px */
  letter-spacing: 4.8px;
}

#topnew04 #business .num_box {
  width: 60px;
}

#topnew04 #business .subtitle_box {
  color: var(--color-secondary_A-50, #FF9AD0);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
  flex-shrink: 0;


  /* typography/default/heading/sm */
  font-family: var(--typography-default-heading-sm-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-heading-sm-font-size, 24px);
  font-style: normal;
  font-weight: 700;
  line-height: 151%;
  /* 36.24px */
  letter-spacing: 2.88px;


  padding: 0px var(--space-16, 16px) var(--space-8, 8px) var(--space-16, 16px);
  align-items: center;
  gap: 8px;


  margin: 0 auto;
  width: auto;
  margin-bottom: 24px;
}

#topnew04 #business .subtitle_box_text {
  border-bottom: 1px solid #E2489A;
  padding: 0px var(--space-16, 16px) var(--space-8, 8px) var(--space-16, 16px);
}

#topnew04 #business .layout_box {
  margin: 40px 0;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  align-self: stretch;
}

#topnew04 #business .layout_box .box3 {
  display: flex;
  width: 352px;
  padding: 24px;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

#topnew04 #business .layout_box .box3 .text_box {

  color: var(--color-secondary_A-10, #D03387);
  text-align: center;

  /* typography/default/body/bold/xl */
  font-family: var(--typography-default-body-bold-xl-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-body-bold-xl-font-size, 20px);
  font-style: normal;
  font-weight: 700;
  line-height: 161%;
  /* 32.2px */
  letter-spacing: 2.4px;
}




/*==================================
 misssonompany
===================================*/


#topnew04 #misssoncompany {
  background-image: url(../img/topnew4/bg_23.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}



#topnew04 #misssoncompany .wrapper {
  padding: 96px 0;
  position: relative;
}

#topnew04 #misssoncompany .img_box {
  margin-top: 40px;
  position: relative;
  margin-bottom: 220px;
}

#topnew04 #misssoncompany .text_box {
  top: 220px;
  right: -99px;
  position: absolute;

  display: flex;
  width: 928px;
  padding: var(--space-64, 64px);
  flex-direction: column;
  align-items: flex-start;
  border-radius: 24px;
  background: var(--color-neutral-100, #FFF);

  color: var(--color-neutral-5, #1E2021);

  /* typography/default/body/normal/md */
  font-family: var(--typography-default-body-normal-md-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-body-normal-md-font-size, 16px);
  font-style: normal;
  font-weight: 400;
  line-height: 197%;
  /* 31.52px */
  letter-spacing: 1.92px;


}


#topnew04 #misssoncompany .title_box {
  color: var(--color-primary-30, #005BAC);

  /* typography/default/heading/md */
  font-family: var(--typography-default-heading-md-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-heading-md-font-size, 28px);
  font-style: normal;
  font-weight: 700;
  line-height: 144%;
  /* 40.32px */
  letter-spacing: 3.36px;
  display: inline;
  margin-bottom: 40px;
}



#topnew04 #misssoncompany .main_text span {
  font-weight: 700;
  border-bottom: 4px solid var(--color-primary-70, #9FCCF4);
}



@media screen and (max-width: 768px) {


  #topnew04 #misssoncompany .body {
    height: 900px;
  }

  #topnew04 #misssoncompany .wrapper {
    padding: 80px 0;
  }

  #topnew04 #misssoncompany .title_label {
    padding: 0 16px;
  }

  #topnew04 #misssoncompany .subtitle_label {
    padding: 0 16px;
  }

  #topnew04 #misssoncompany .text_box {

    display: flex;
    width: calc(360 / 375* 100vw);

    padding: var(--space-40, 40px) var(--space-24, 24px);
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-24, 24px);

    position: absolute;
    left: 2%;
    top: 120px;
  }

  #topnew04 #misssoncompany .title_box {
    margin-bottom: 20px;
  }
}


/*==================================
 message
===================================*/
#topnew04 #message .body {
  background-image: url(../img/topnew4/bg_21.png);
  height: 907px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;

  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;

  position: relative;

}

#topnew04 #message .wrapper {
  padding: 96px 0;
}


#topnew04 #message .layout_box {
  display: flex;
  width: 1120px;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: 40px;
}

#topnew04 #message .left_box {
  color: #000;

  /* typography/default/body/normal/md */
  font-family: var(--typography-default-body-normal-md-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-body-normal-md-font-size, 16px);
  font-style: normal;
  font-weight: 400;
  line-height: 197%;
  /* 31.52px */
  letter-spacing: 1.92px;
}

#topnew04 #message .job_box {
  color: var(--color-neutral-5, #1E2021);

  /* typography/default/body/normal/md */
  font-weight: 400;
  line-height: 197%;
  /* 31.52px */
  letter-spacing: 1.92px;
}

#topnew04 #message .name_box {
  color: var(--color-neutral-5, #1E2021);

  /* typography/default/heading/sm */
  font-size: var(--typography-default-heading-sm-font-size, 24px);
  font-style: normal;
  font-weight: 700;
  line-height: 151%;
  /* 36.24px */
  letter-spacing: 2.88px;

}

#topnew04 #message .line_box {
  margin-top: 16px;
  border-bottom: 1px solid var(--color-primary-50, #4396E0);
  margin-bottom: 40px;
}

#topnew04 #message .right_box {
  width: 448px;
  height: 597px;
  flex-shrink: 0;
  border-radius: 24px;

  margin-left: 34px;
}

@media screen and (max-width: 768px) {

  #topnew04 #message .body {
    height: auto;
    background-size: auto;
  }

  #topnew04 #message .title_label {
    padding: 0 16px;
  }

  #topnew04 #message .subtitle_label {
    padding: 0 16px;
  }

  #topnew04 #message .layout_box {
    padding: 0 16px;
    display: flex;
    width: auto;
    flex-direction: column-reverse;
  }

  #topnew04 #message .left_box {
    margin-top: 34px;
  }

  #topnew04 #message .right_box {
    width: 100%;
    height: auto;
    align-self: stretch;
    border-radius: 24px;

    margin-left: 0px;
  }

  #topnew04 #message .right_box img {
    width: 100%;
  }

}

/*==================================
 company info　07
===================================*/
#topnew04 #info .body {
  color: #000;
  position: relative;
  padding-bottom: 30px;
}

#topnew04 #info .wrappera {
  width: 1000px;
  position: relative;
  padding: 50px 20px 10px;
  margin-top: 50px;
}

#topnew04 #info .wrapper {
  padding: 50px 0px 10px;
}



#topnew04 #info .companybox {
  display: flex;
  flex-direction: row;
  margin-top: 40px;
}

#topnew04 #info .companyboxleft {
  width: 382px;
}


#topnew04 #info .companyboxleft img {
  height: 100%;
  border-radius: 24px;
  object-fit: cover;
}


#topnew04 #info .companyboxright {
  width: 65%;
  padding-left: 60px;
}


#topnew04 #info .logoimg {}

#topnew04 #info .logoimg img {
  width: 50%;
}

#topnew04 #info dl {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%;
  font-size: 0.8em;
}

#topnew04 #info dt {
  padding: 16px;
  width: 20%;

  color: var(--color-primary-30, #005BAC);

  /* typography/default/body/bold/md */
  font-family: var(--typography-default-body-bold-md-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-body-bold-md-font-size, 16px);
  font-style: normal;
  font-weight: 700;
  line-height: 197%;
  /* 31.52px */
  letter-spacing: 1.92px;
}

#topnew04 #info dd {
  background: #fff;
  padding: 16px;
  width: 80%;

  color: var(--color-neutral-5, #1E2021);
  text-align: left;

  /* typography/default/body/normal/md */
  font-family: var(--typography-default-body-normal-md-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-body-normal-md-font-size, 16px);
  font-style: normal;
  font-weight: 400;
  line-height: 197%;
  /* 31.52px */
  letter-spacing: 1.92px;
}

#topnew04 #info .memberbox_layout {
  display: grid;
  /*グリッドの縦の個数*/
  grid-template-rows: repeat(2, 1fr);
  /*グリッドの横の個数*/
  grid-template-columns: repeat(2, 1fr);
  /*ギャップ縦、横*/
  gap: 40px 35px;

  margin-top: 60px;
}

#topnew04 #info dd p a {
  white-space: nowrap;
  display: inline !important;
  text-decoration: underline;


  color: var(--color-primary-40, #247AC8);
  text-align: center;

  /* typography/default/body/normal/md */
  font-family: var(--typography-default-body-normal-md-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-body-normal-md-font-size, 16px);
  font-style: normal;
  font-weight: 400;
  line-height: 197%;
  /* 31.52px */
  letter-spacing: 1.92px;

}

#topnew04 #info .center_box {
  margin-top: 192px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;


}

#topnew04 #info .memberbox {
  display: flex;
  width: 540px;
  height: 368px;
  align-items: flex-start;
  gap: var(--space-16, 16px);

  border-radius: 24px;
  background: var(--color-neutral-100, #FFF);

  /* shadow/card */
  box-shadow: 0px 0px 20px 0px rgba(30, 32, 33, 0.20);
}

#topnew04 #info .memberboxleft {
  width: 224px;
  flex-shrink: 0;
  align-self: stretch;
}

#topnew04 #info .memberboxleft img {}


#topnew04 #info .memberboxright {
  padding-top: 16px;

  color: var(--color-neutral-5, #1E2021);

  /* typography/default/body/normal/sm */
  font-family: var(--typography-default-body-normal-sm-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-body-normal-sm-font-size, 14px);
  font-style: normal;
  font-weight: 400;
  line-height: 173%;
  /* 24.22px */
  letter-spacing: 1.68px;
}

#topnew04 #info .vspace {
  display: inline-block;
  width: 5em;
}

#topnew04 #info .vspace3 {
  display: inline-block;
  width: 3.7em;
}

#topnew04 #info .memberbox img {
  border-radius: 40px 0px 0px 0px;
  width: auto;
  object-fit: contain;
}

#topnew04 #info .memberbox .job {
  color: var(--color-primary-30, #005BAC);

  /* typography/default/body/normal/md */
  font-family: var(--typography-default-body-normal-md-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-body-normal-md-font-size, 16px);
  font-style: normal;
  font-weight: 400;
  line-height: 197%;
  /* 31.52px */
  letter-spacing: 1.92px;
}

#topnew04 #info .memberbox .name {
  color: var(--color-primary-30, #005BAC);

  /* typography/default/heading/md */
  font-family: var(--typography-default-heading-md-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-heading-md-font-size, 28px);
  font-style: normal;
  font-weight: 700;
  line-height: 144%;
  /* 40.32px */
  letter-spacing: 3.36px;
}


#topnew04 #info .mess {
  color: #000;

  text-align: right;

  font-family: 'A-OTF Gothic MB101 Pro', 'Noto Sans JP', sans-serif;
  font-size: 22px;
  font-style: normal;
  font-weight: 600;
  line-height: 140%;
  /* 30.8px */
  letter-spacing: 2.2px;
  margin-top: 50px;
}

#topnew04 #info .mess span {
  color: #000;
  text-align: right;

  font-family: 'A-OTF Gothic MB101 Pro', 'Noto Sans JP', sans-serif;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 180%;
  /* 21.6px */

}


#topnew04 #info .photo {
  margin: 0 auto;
  width: 50%;
  margin-bottom: 20px;
}

#topnew04 #info .text {
  font-size: 0.9em;
}

#topnew04 #info .btnarea {
  width: 100%;
  text-align: center;

}


#topnew04 #info .linkbtn {
  background-color: #005BAC;
  color: #fff;
  border-radius: 6px;
  width: 280px;
  height: 60px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 20px;
  transition-duration: 300ms;
  margin: 0 auto;
}


#topnew04 #info .linkbtn svg {
  stroke: #fff;
}


#topnew04 #info .linkbtn:hover {
  background-color: #fff;
  color: #005BAC;
}

#topnew04 #info .linkbtn:hover svg {
  stroke: #005BAC;
}







#topnew04 .p-contact__form-col {
  width: 100%;
}

#topnew04 .margin_off {
  margin-right: 0px !important;
}

#topnew04 .u-align-center {
  margin-top: 10px;
  text-align: center;
  font-size: 1em;
  white-space: nowrap;
}

#topnew04 .u-align-center a {
  opacity: 1 !important;
  display: inline !important;
}



@media screen and (max-width: 768px) {
  #topnew04 #info .wrapper {
    width: 100%;
    position: relative;
    padding: 10px 20px 10px;
    margin-top: 20px;
  }

  #topnew04 #info .boxlayout {
    height: 120px;
    width: 100%;
    padding: 15px 15px;
  }


  #topnew04 #info .boxlayout .leftbox .label {
    margin-top: 5px;
    font-size: 16px;
  }

  #topnew04 #info .leftbox {
    width: 35%;
  }

  #topnew04 #info .rightbox {
    width: 65%;
    font-size: 16px;
  }

  #topnew04 #info .companybox {
    flex-direction: column;
  }



  #topnew04 #info .companyboxright {
    padding-left: 0px;
    width: 100%;

  }

  #topnew04 #info .companyboxleft {
    width: 100%;
    margin-bottom: 40px;
  }

  #topnew04 #info .companyboxleft img {
    height: 100%;
    width: 100%;
    object-fit: cover;
  }

  #topnew04 #info .pagebtn {
    padding: 0 5px;
    line-height: 1.1em;
  }

  #topnew04 #info .pagebtn img {
    height: 60px;
  }

  #topnew04 #info .logoimg {
    width: 100%;
    text-align: center;
    margin-bottom: 0px;
  }

  #topnew04 #info .logoimg img {
    width: 80%;
  }

  #topnew04 #info .memberbox_layout {
    display: grid;
    /*グリッドの縦の個数*/
    grid-template-rows: repeat(3, 1fr);
    /*グリッドの横の個数*/
    grid-template-columns: repeat(1, 1fr);
    /*ギャップ縦、横*/
    gap: 40px 35px;

    margin-top: 60px;
  }

  #topnew04 #info .memberbox {

    width: 100%;
    height: auto;
    flex-direction: column;
  }

  #topnew04 #info .memberboxleft {
    width: 100%;
  }

  #topnew04 #info .memberboxright {
    padding: 15px;
    width: 100%;
    font-size: 11px;
  }

  #topnew04 #info .memberboxleft img {

    object-fit: cover;
  }

  #topnew04 #info .mess {
    font-size: 1.1em;
    letter-spacing: 0.2em !important;
    margin-top: 10px;
  }




  #topnew04 #info .messageboxleft img {
    object-fit: cover;
    width: 80%;
    height: 100%;
    object-position: 50% 0%;
    border-radius: 40px 0px;
  }

  #topnew04 #info dt {
    padding: 16px;
    padding-left: 0;
  }


  #topnew04 #info dl {

    font-size: 12px;
  }
}


/*==================================
 map
===================================*/
#topnew04 #map .body {
  background-image: url(../img/topnew4/bg_22.png);

  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;

  display: flex;
  flex-direction: row;
  justify-content: start;
  align-items: start;

  position: relative;
  height: 1300px;

}

#topnew04 #map .wrapper {
  padding: 0;
}

#topnew04 #map .title_box {
  color: #fff;
  z-index: 999;
}

#topnew04 #map .map_img {
  width: 100%;
  color: #fff;
  top: 0;
  position: relative;
}


#topnew04 #map .map_img_b {
  position: absolute;
  width: 100%;
  color: #fff;
  top: 0;
}


#topnew04 #map .title_label {
  color: #fff;
  margin-top: 70px;
}

#topnew04 #map .subtitle_label {
  color: #fff;

}


#topnew04 #map .map-wrapper {
  position: relative;
  width: 100%;
  margin: 0 auto;
}

#topnew04 #map .map-background {
  width: 100%;
  display: block;
}

#topnew04 #map .office_box {
  position: absolute;
  display: flex;
  flex-direction: row;
  width: 360px;
  color: #000;
  background: white;
  border-radius: 6px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);

  color: var(--color-neutral-5, #1E2021);

  /* typography/default/body/normal/sm */
  font-family: var(--typography-default-body-normal-sm-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-body-normal-sm-font-size, 14px);
  font-style: normal;
  font-weight: 400;
  line-height: 173%;
  /* 24.22px */
  letter-spacing: 1.68px;

  border-radius: 16px;
  margin-bottom: 8px;
}

#topnew04 #map .office_box.big_box {
  width: 460px;
}

#topnew04 #map .office_box img {
  width: auto;
  height: 160px;
  border-radius: 4px;
}

#topnew04 #map .office_box.big_box img {
  width: auto;
  height: 190px;
  border-radius: 4px;
}

#topnew04 #map .office-info {
  padding: 10px;
}

#topnew04 #map .office-info h3 {
  color: var(--color-neutral-5, #1E2021);

  /* typography/default/body/bold/lg */
  font-family: var(--typography-default-body-bold-lg-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-body-bold-lg-font-size, 18px);
  font-style: normal;
  font-weight: 700;
  line-height: 179%;
  /* 32.22px */
  letter-spacing: 2.16px;
}

.office-info p {
  font-size: 14px;
  margin: 0;
}

/* ▼ 各オフィスの位置は調整してください（以下は仮） */
.office-tokyo {
  top: 73%;
  left: 61%;
}

.office-osaka {
  top: 30%;
  left: 20%;
}

.office-miyagi {
  top: 37%;
  left: 68%;
}

.office-kitakyushu {
  top: 50%;
  left: 1%;
}

.office-miyazaki {
  top: 86%;
  left: 5%;
}

#topnew04 #map .bottom_box {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: center;
  margin-bottom: 60px;
}

#topnew04 #map .box_link {

  display: flex;
  justify-content: start;
  align-items: center;
  gap: 24px;

  color: var(--color-primary-30, #005BAC);

  /* typography/default/body/normal/lg */
  font-family: "BIZ UDPGothic";
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 179%;
  /* 32.22px */
  letter-spacing: 2.16px;
  margin-top: 40px;
}

@media screen and (max-width: 1120px) {

  .office-tokyo {
    top: 73%;
    left: 48%;
  }

  .office-miyagi {
    top: 37%;
    left: 55%;
  }

}

@media screen and (max-width: 768px) {
  #topnew04 #map .body {
    background-image: url(../img/topnew4/mapa_sp.png);
    background-position: top;
    background-repeat: no-repeat;
    background-size: cover;

    display: flex;
    flex-direction: row;
    justify-content: start;
    align-items: start;

    position: relative;

    height: 1800px;

  }

  #topnew04 #map .map-background {
    display: none;
  }

  #topnew04 #map .office_box {
    position: relative;
    width: 100%;

  }

  #topnew04 #map .office_box.big_box {
    width: 100%;
    display: flex;
    flex-direction: column;
    border-radius: 16px;
  }

  #topnew04 #map .office_box img {
    object-fit: cover;
  }

  #topnew04 #map .office_box.big_box img {
    object-fit: cover;
  }

  #topnew04 #map .map_img {
    width: 100%;
    color: #fff;
    margin-top: calc(1200 / 1800* 100vh);
    position: relative;
    padding: 0 16px;
  }


  /* ▼ 各オフィスの位置は調整してください（以下は仮） */
  .office-tokyo {
    top: 0;
    left: 0;
  }

  .office-osaka {
    top: 0;
    left: 0;
  }

  .office-miyagi {
    top: 0;
    left: 0;
  }

  .office-kitakyushu {
    top: 0;
    left: 0;
  }

  .office-miyazaki {
    top: 0;
    left: 0;
  }

}



/*==================================
 disclosure
===================================*/


#topnew04 #disclosure {
  background-image: url(../img/topnew4/bg_23.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}



#topnew04 #disclosure .wrapper {
  padding: 96px 0;
  position: relative;

}

#topnew04 #disclosure .layout_box {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

#topnew04 #disclosure .text_box {

  margin-top: 50px;

  display: flex;
  width: 928px;
  padding: var(--space-64, 64px);
  flex-direction: column;
  align-items: flex-start;
  border-radius: 24px;
  background: var(--color-neutral-100, #FFF);

  color: var(--color-neutral-5, #1E2021);

  /* typography/default/body/normal/md */
  font-family: var(--typography-default-body-normal-md-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-body-normal-md-font-size, 16px);
  font-style: normal;
  font-weight: 400;
  line-height: 197%;
  /* 31.52px */
  letter-spacing: 1.92px;


}


#topnew04 #disclosure .title_box {
  display: flex;
  color: var(--color-primary-30, #005BAC);

  /* typography/default/heading/md */
  font-family: var(--typography-default-heading-md-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-heading-md-font-size, 28px);
  font-style: normal;
  font-weight: 700;
  line-height: 144%;
  /* 40.32px */
  margin-bottom: 40px;
}



#topnew04 #disclosure .main_text span {
  font-weight: 700;
  border-bottom: 4px solid var(--color-primary-70, #9FCCF4);
}



@media screen and (max-width: 768px) {


  #topnew04 #disclosure .body {
    height: 900px;
  }

  #topnew04 #disclosure .wrapper {
    padding: 80px 0;
  }

  #topnew04 #disclosure .title_label {
    padding: 0 16px;
  }

  #topnew04 #disclosure .subtitle_label {
    padding: 0 16px;
  }

  #topnew04 #disclosure .text_box {

    width: calc(360 / 375* 100vw);
    padding: 30px;
  }

  #topnew04 #misssoncompany .title_box {
    margin-bottom: 20px;
  }
}



/*==================================
 bottoms　01-05ボトム
===================================*/

#topnew04 #bottoms .body {

  background-image: url(../img/topnew2/topnew01_bttom.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  height: 300px;

  color: #000;
  position: relative;
  padding-bottom: 30px;
}

#topnew04 #bottoms .wrapper {
  position: relative;
  width: 1000px;
  padding: 10px 0px 0px;

}

#topnew04 #bottoms .bottombox {
  position: relative;
  width: 100%;
  padding: 60px 0px;

}

#topnew04 #bottoms .btnbox {
  display: flex;
  flex-direction: row;
  margin-top: 42px;
}

#topnew04 #bottoms .btnbox .linkbtn {
  margin-right: 26px;
  width: 190px;
  font-size: 14px;
}



@media screen and (max-width: 768px) {

  #topnew04 #bottoms .body {
    background-image: url(../img/topnew2/topnew01_bttom_sp.png);
  }

  #topnew04 #bottoms .wrapper {
    position: relative;
    width: 100%;
    padding: 10px 0px 0px;
  }


  #topnew04 #bottoms .bottombox {
    padding: 30px 10px;
  }

  #topnew04 #bottoms .linkbtn {
    width: 100%;
    left: -100px;
  }

  #topnew04 #bottoms .body {
    height: 300px;
    padding-bottom: 80px;
  }

  #topnew04 #bottoms .wrapper {
    padding: 10px 10px 0px;

  }

  #topnew04 #bottoms .btnbox {
    flex-direction: column;
  }

  #topnew04 #bottoms .btnbox .linkbtn {
    margin-bottom: 25px;
  }



}



/*==================================
 top　共通トップ部分
 ===================================*/
#topnew04 #top {
  position: relative;
}

#topnew04 #top .body {
  color: #000;
  position: relative;
  padding-bottom: 0px;
  display: flex;
  justify-content: center;
  flex-direction: column;
  height: 240px;

}

#topnew04 #top .body.type01 {
  background-image: url(../img/topnew4/tip_frame.png);
  background-position: top;
  background-repeat: no-repeat;
  background-size: cover;
}

#topnew04 #top .body.type02 {
  background-image: url(../img/topnew4/tip_company.png);
  background-position: top;
  background-repeat: no-repeat;
  background-size: cover;
}

#topnew04 #top .body.type03 {
  background-image: url(../img/topnew4/tip_service.png);
  background-position: top;
  background-repeat: no-repeat;
  background-size: cover;
}


#topnew04 #top .wrapper {
  position: relative;
  display: flex;
  align-items: center;
  margin: 0 auto;
  height: 100%;
}

#topnew04 #top .topbox {
  display: flex;
  flex-direction: column;
}

#topnew04 #top .toptitle {
  color: var(--color-neutral-100, #FFF);

  /* typography/english/heading/md */
  font-family: var(--typography-english-heading-md-font-family, Poppins);
  font-size: var(--typography-english-heading-md-font-size, 32px);
  font-style: normal;
  font-weight: 400;
  line-height: 124%;
  /* 39.68px */
  letter-spacing: 3.2px;
  text-transform: uppercase;
}

#topnew04 #top .topsubtitle {
  color: var(--color-neutral-100, #FFF);

  /* typography/default/body/bold/md */
  font-family: var(--typography-default-body-bold-md-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-body-bold-md-font-size, 16px);
  font-style: normal;
  font-weight: 700;
  line-height: 197%;
  /* 31.52px */
  letter-spacing: 1.92px;
}


#topnew04 #top .toptext {
  color: #000;
  leading-trim: both;

  text-edge: cap;
  font-family: 'A-OTF Gothic MB101 Pro', 'Noto Sans JP', sans-serif;
  font-size: 48px;
  font-style: normal;
  font-weight: 600;
  line-height: 150%;
  /* 72px */
  letter-spacing: 4.8px;

  margin: 30px 0 70px;
}

#topnew04 #top .topimg {
  position: absolute;
  right: -20px;
  top: 40px;

}

#topnew04 #top .topimg.r80 {
  right: -80px;
}

#topnew04 #top .topimg img {
  width: 50%;
}



@media screen and (max-width: 768px) {

  #topnew04 #top .body {
    height: 200px;
  }

  #topnew04 #top .body.type01 {
    background-image: url(../img/topnew4/tip_frame_sp.png);
  }

  #topnew04 #top .body.type02 {
    background-image: url(../img/topnew4/tip_company_sp.png);
    background-position: bottom;
  }

  #topnew04 #top .wrapper {
    width: 100%;
    min-width: auto;
    max-width: auto;
    padding: 40px 10px 0px;
  }


  #topnew04 #top .toptext {
    font-size: 1.2em !important;
    margin: 20px 0 30px;
  }

  #topnew04 #top .body {
    padding-bottom: 10px;
  }

  #topnew04 #top .topbox {
    width: 100%;
    padding: 0 16px;

  }

  #topnew04 #top .topimgsp {
    position: absolute;
    right: 0px;
    bottom: -35px;
    width: 50%;
  }

  #topnew04 #top .topimg.r80 {
    right: 0px;
  }

}


/*==================================
 ■以下、タブ付きサービス紹介ページ select
 ===================================*/
#topnew04 #select {}

#topnew04 #select .wrapper {
  width: auto;
  max-width: 1140px;
  padding-bottom: 0;
}

:root {
  --pink: #ff4fa0;
  --gray: #9fa6ad;
  --light-gray: #f6f6f6;
  --inactive: #ccc;
}


#topnew04 #select .section {
  padding: 20px 15px 40px;
  margin: auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin-bottom: 70px;
}

#topnew04 #select .section .no_box {
  width: 54px;
  height: auto;
}

#topnew04 #select .section h3 {
  /* typography/default/heading/xl */
  font-family: var(--typography-default-heading-xl-font-family, "BIZ UDPGothic");
  font-size: 40px;
  font-style: normal;
  font-weight: 700;
  line-height: 148%;
  /* 59.2px */
  letter-spacing: 4.8px;
  margin-bottom: 40px;
}

.highlight-title {
  color: #6A6E73;
  /* デフォルトはグレー */
}

.highlight-title.company-active {
  color: #FB56AE;
}

.highlight-title.company-active.page21 {
  color: #57C0FE;
}

.highlight-title.company-active.page31 {
  color: #42DC99;
}



#topnew04 #select .section p {
  text-align: center;
  margin-top: 1rem;
}

#topnew04 #select .tab-bar {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  gap: 40px;
  width: 100%;
  flex-wrap: nowrap;
  /* 折り返しを禁止 */
}

#topnew04 #select .tab-bar>* {
  flex-shrink: 1;
  /* コンテナ幅に合わせて縮む */
  min-width: 0;
  /* コンテンツが原因で伸びすぎない */
}

/* 左側のボタンと、右側の <details> をそれぞれ半分に */
#topnew04 #select .tab-bar #tab-company,
#topnew04 #select .tab-bar #role-list {
  width: 50%;
}

#topnew04 #select .tab-bar summary.active {
  color: #FB56AE;
  /* ピンク */
  font-weight: bold;
}



#topnew04 #select .tab-btn,
#topnew04 #select .accordion summary {
  appearance: none;
  border: none;
  cursor: pointer;
  text-align: center;
  padding: 21px 10px;
  font-weight: 600;
  border-radius: 12px 12px 0 0;
  background: #9fa6ad;
  color: #fff;
  transition: background .25s;
  position: relative;
}

#topnew04 #select .tab-btn:hover,
#topnew04 #select .accordion summary:hover {
  opacity: 0.85;
}

#topnew04 #select .tab-btn.active,
#topnew04 #select .accordion summary.active {
  background: #ff4fa0;
  color: #fff;
}

#topnew04 #select .page21 .tab-btn.active,
#topnew04 #select .page21 .accordion summary.active {
  background: #57C0FE;
}

#topnew04 #select .page31 .tab-btn.active,
#topnew04 #select .page31 .accordion summary.active {
  background: #42DC99;
}

#topnew04 #select .tab-btn.inactive,
#topnew04 #select .accordion summary.inactive {
  background: #ccc;
}

#topnew04 #select .accordion summary::after {
  content: '';
  position: absolute;
  /*right: 1rem;*/
  top: 50%;
  transform: translateY(-50%) rotate(90deg);
  width: 18px;
  height: 18px;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 18l6-6-6-6"/></svg>');
  background-repeat: no-repeat;
  background-size: contain;
}

#topnew04 #select .accordion[open] summary::after {
  transform: translateY(-50%) rotate(-90deg);
}

#topnew04 #select details.accordion {
  position: relative;
}

#topnew04 #select details.accordion ul {
  list-style: none;
  appearance: none;
  padding: 0;
  margin: 0;
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  background: #fff;
  border: 1px solid #eee;
  border-radius: 0 0 12px 12px;
  z-index: 10;
}

#topnew04 #select .accordion summary {
  list-style: none;
}

#topnew04 #select .accordion summary::-webkit-details-marker {
  display: none;
}

#topnew04 #select .accordion summary::marker {
  display: none;
}

#topnew04 #select details.accordion ul li button {
  width: 100%;
  padding: .9rem 1.5rem;
  background: #fff;
  border: none;
  text-align: left;
  font-weight: 600;
  color: #333;
  cursor: pointer;
}

#topnew04 #select details.accordion ul li button:hover {
  background: var(--light-gray);
}

@media screen and (max-width: 768px) {
  #topnew04 #select .wrapper {
    padding-top: 80px;
  }

  #topnew04 #select .section {
    text-align: left;
  }

  #topnew04 #select .tab-bar {
    gap: 8px;
  }

}

#topnew04 .content-panel {
  display: none;
}

#topnew04 .content-panel.active {
  display: block;
}

@media screen and (max-width: 768px) {
  .tab-bar {
    flex-direction: column;
    align-items: center;
  }

  .tab-btn,
  .accordion summary {
    width: 100%;
    border-radius: 8px;
    margin-bottom: .5rem;
  }

  details.accordion ul {
    position: static;
    border-radius: 0 0 8px 8px;
  }
}



/*==================================
 ■以下、タブの下 change ディフォルトページ■
 ===================================*/

#topnew04 #change .body {
  background-image: url(../img/topnew4/11_bg01.png);
  background-position: top;
  background-repeat: no-repeat;
  background-size: cover;
}


#topnew04 #change .maintitle_box {
  display: flex;
  flex-direction: column;

  justify-content: center;
  align-items: center;
  margin-top: 80px;
  margin-bottom: 140px;
}

#topnew04 #change .maintitle_box.second_box {
  margin-top: 180px;
  margin-bottom: 40px;
}

#topnew04 #change .maintitle_box.second_box.page31 {
  margin-top: 0px;
  margin-bottom: 40px;
}


#topnew04 #change .title_label {
  color: #6A6E73;
}

#topnew04 #change .layout_box {
  display: flex;
  flex-direction: row;
  width: 100%;
  position: relative;
  margin-bottom: 32px;
  height: 450px;
}


#topnew04 #change .layout_box.second {
  justify-content: end;
}

#topnew04 #change .img_box {
  position: absolute;
  right: -220px;
  top: 0px;
  width: 681px;
  height: 454px;
}

#topnew04 #change .img_box.second {
  right: auto;
  left: -220px
}

#topnew04 #change .img_box.second.page31 {
  top: -120px;
}


#topnew04 #change .text_box {
  display: flex;
  flex-direction: column;
  width: 570px;
  margin-left: 20px;
}

#topnew04 #change .text_box.page31 {}


#topnew04 #change .down_arrow {
  margin: 19px auto;
}

#topnew04 #change .item_box {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;

  width: 576px;
  height: 158px;
  flex-shrink: 0;
  border-radius: 80px;
  border: 2px solid #FF9AD0;
  background: #FFF;

}

#topnew04 #change .item_box.page21 {
  border: 2px solid #81D0FF;
}


#topnew04 #change .icon_box {
  width: 88px;
  height: 88px;
  flex-shrink: 0;
  aspect-ratio: 1/1;
}

#topnew04 #change .title_text {
  display: flex;
  flex-direction: column;

  color: #FB56AE;
  font-family: "BIZ UDPGothic";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  /* 36px */
}

#topnew04 #change .title_box {
  font-family: "BIZ UDPGothic";
  font-size: 32px;
  font-style: normal;
  font-weight: 700;
  line-height: 170%;
  /* 54.4px */
  letter-spacing: 2.56px;
  background: linear-gradient(90deg, #005BAC -20.97%, #71E5B3 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}


#topnew04 #change .title_text.page21 {
  color: #57C0FE;
}

#topnew04 #change .title_text p {
  color: #FF9AD0;
  font-family: "BIZ UDPGothic";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  /* 24px */
}

#topnew04 #change .title_text.page21 p {
  color: #81D0FF;
}

#topnew04 #change .minititle {

  color: #E04799;
  font-family: "BIZ UDPGothic";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  /* 30px */
  letter-spacing: 1.6px;
}

#topnew04 #change .minititle.page21 {
  color: #0F8BD4;
}

#topnew04 #change .space32_box {
  height: 32px;
}

#topnew04 #change .down_arrow.page11 {
  fill: #FB56AE;
}

#topnew04 #change .down_arrow.page21 {
  fill: #00A0FF;
}


#topnew04 #change .job_box {
  margin-top: 16px;
}

#topnew04 #change .job_box span {
  border-radius: 3px;
  background: #EDEDED;
  padding: 0 5px;
  margin-right: 10px;
}


#topnew04 #change .work-area {
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-size: 14px;
}

#topnew04 #change .work-row {
  display: grid;
  grid-template-columns: 160px 1fr;
  background-color: #f5f5f5;
  padding: 8px 12px;
  border-radius: 4px;
}

#topnew04 #change .work-label {
  font-weight: bold;
  color: #333;
  padding-right: 12px;
}

#topnew04 #change .work-desc {
  padding-left: 12px;
  color: #333;
}


#topnew04 #change .reason-section {
  text-align: center;
  padding: 40px 20px;
  margin-top: 80px;
}

#topnew04 #change .reason-title {
  color: #6A6E73;
  font-family: var(--typography-english-heading-lg-font-family, Poppins);
  font-size: 40px;
  font-style: normal;
  font-weight: 400;
  line-height: 139%;
  /* 55.6px */
  letter-spacing: 4px;
  text-transform: uppercase;
}

#topnew04 #change .reason-subtitle {
  font-size: 18px;
  margin-bottom: 80px;
}

#topnew04 #change .reason-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 32px 24px;
  max-width: 800px;
  margin: 0 auto;
  text-align: left;
}

#topnew04 #change .reason-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

#topnew04 #change .reason-icon {
  width: 40px;
  height: 40px;
  margin-bottom: 12px;
}

#topnew04 #change .reason-heading {
  color: #1E2021;
  font-family: "BIZ UDPGothic";
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  /* 36px */
  letter-spacing: 1.44px;
}

#topnew04 #change .reason-text {
  color: #1E2021;
  font-family: "BIZ UDPGothic";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  /* 24px */
  letter-spacing: 0.96px;
}




#topnew04 #change .industry-section {
  padding: 40px 20px;
  background: #f9f9f9;
  text-align: center;
}

#topnew04 #change .industry-title,
#topnew04 #change .skill-title,
#topnew04 #change .project-title {

  padding: 5px 5px;
  border-radius: 4px;
  display: inline-block;
  margin-bottom: 16px;
  color: #FFF;
  font-family: "BIZ UDPGothic";
  font-size: 32px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  /* 48px */
  letter-spacing: 1.92px;
  background: linear-gradient(90deg, #005BAC -20.97%, #71E5B3 100%);

}

#topnew04 #change .industry-subtitle,
#topnew04 #change .skill-subtitle {
  color: #1E2021;
  text-align: center;
  font-family: "BIZ UDPGothic";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 197%;
  /* 31.52px */
  letter-spacing: 0.96px;
  margin-bottom: 32px;
}

#topnew04 #change .industry-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  max-width: 1100px;
  margin: 0 auto;
}

#topnew04 #change .industry-item {
  background: white;
  border-radius: 8px;
  text-align: left;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}

#topnew04 #change .industry-img {
  width: 100%;
  height: auto;
  display: block;

}

#topnew04 #change .industry-label {


  font-size: 16px;
  font-weight: bold;
  color: #0072bc;
  padding: 12px 16px 4px;

  color: #005BAC;
  font-family: "BIZ UDPGothic";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  /* 30px */
  letter-spacing: 1.2px;

}

#topnew04 #change .industry-text {
  font-size: 14px;
  color: #333;
  padding: 0 16px 16px;

  color: #1E2021;
  font-family: "BIZ UDPGothic";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  /* 24px */
  letter-spacing: 0.96px;
}



#topnew04 #change .skill-section {
  text-align: center;
  padding: 40px 20px;
  background: #f9f9f9;
}

#topnew04 #change .skill-title {}

#topnew04 #change .skill-subtitle {
  font-size: 14px;
  color: #444;
  line-height: 1.6;
  margin-bottom: 32px;
}

#topnew04 #change .skill-grid {
  display: grid;
  gap: 24px;
  max-width: 1200px;
  margin: 0 auto;
}

#topnew04 #change .top3 {
  grid-template-columns: repeat(3, 1fr);
  margin-bottom: 32px;
  /* お好みで */
}

#topnew04 #change .bottom2 {
  grid-template-columns: repeat(2, 1fr);

}

#topnew04 #change .skill-item {
  padding: 16px;
  border-radius: 8px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
}

#topnew04 #change .skill-item img {
  height: 120px;
}

#topnew04 #change .skill-name {
  color: #71E5B3;
  font-family: "BIZ UDPGothic";
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  /* 30px */
  letter-spacing: 1.2px;
}

#topnew04 #change .skill-name span {
  font-family: "BIZ UDPGothic";
  font-size: 40px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  /* 72px */
  letter-spacing: 2.88px;
  background: var(--bluegreen, linear-gradient(90deg, #005BAC -20.97%, #71E5B3 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

#topnew04 #change .skill-name strong {
  color: #71E5B3;
  font-family: Poppins;
  font-size: 64px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  /* 96px */
  letter-spacing: 3.84px;

  margin-left: 8px;
}

#topnew04 #change .skill-desc {
  font-size: 14px;
  color: #333;
  margin-top: -10px;
}







#topnew04 #change .voice-section {
  padding: 130px 20px;

  background-image: url(../img/topnew4/11_bg02.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  text-align: left;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

#topnew04 #change .voice-header {
  width: 100%;
  max-width: 1040px;
  text-align: left;
}

#topnew04 #change .voice-title {
  color: #FFF;

  font-family: "BIZ UDPGothic";
  font-size: 36px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  /* 54px */
  letter-spacing: 2.16px;
  margin-bottom: 8px;
}

#topnew04 #change .voice-subtitle {
  color: #FFF;
  font-family: "BIZ UDPGothic";
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 197%;
  /* 31.52px */
  letter-spacing: 0.96px;
  margin-bottom: 60px;
}

#topnew04 #change .voice-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
  max-width: 1040px;
  margin: 0 auto;
  text-align: left;
}

#topnew04 #change .voice-card {
  background: #fff;
  border-radius: 8px;
  padding: 20px 24px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
  font-size: 14px;
}

#topnew04 #change .voice-text {
  color: #1E2021;
  font-family: "BIZ UDPGothic";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  /* 24px */
  letter-spacing: 0.96px;
  margin-bottom: 12px;
}

#topnew04 #change .voice-source {
  font-size: 13px;
  color: #666;
  text-align: right;
}

#topnew04 #change .highlight {
  color: #005BAC;
  font-family: "BIZ UDPGothic";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 1.2px;
}





#topnew04 #change .faq-section {
  max-width: 1040px;
  margin: 0 auto;
  padding: 40px 20px;
  text-align: center;

  position: relative;
  min-height: 50vh;
  /* ← 十分な高さを確保する */
  overflow: hidden;
  /* ← 必要であれば */
}

#topnew04 #change .faq-title {
  font-weight: bold;
  margin-top: 140px;
  margin-bottom: 4px;

  color: #6A6E73;

  /* typography/english/heading/lg */
  font-family: var(--typography-english-heading-lg-font-family, Poppins);
  font-size: 40px;
  font-style: normal;
  font-weight: 400;
  line-height: 139%;
  /* 55.6px */
  letter-spacing: 4px;
  text-transform: uppercase;
}

#topnew04 #change .faq-subtitle {
  color: #1E2021;

  /* typography/default/label/lg */
  font-family: var(--typography-default-label-lg-font-family, "BIZ UDPGothic");
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 100%;
  /* 18px */
  letter-spacing: 2.16px;
  margin-bottom: 48px;
}

#topnew04 #change .faq-item {
  margin-bottom: 12px;
  overflow: hidden;
  text-align: left;

  display: flex;
  flex-direction: column;
  padding: 5px 25px 4px 25px;

  justify-content: space-between;

  border-radius: 12px;
  background: #FFF;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.25);

  width: 100%;



}

/* 非表示のチェックボックス */
#topnew04 #change .faq-toggle {
  display: none;
}

/* 質問 */
#topnew04 #change .faq-question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px;
  cursor: pointer;
  position: relative;

  color: #3F3F3F;
  font-family: "Zen Kaku Gothic New";
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
}

#topnew04 #change .faq-question .icon {
  width: 30px;
  margin-right: 20px;
}

#topnew04 #change .faq-question .arrow {
  width: 10px;
  height: 10px;
  border-right: 2px solid #333;
  border-bottom: 2px solid #333;
  transform: rotate(45deg);
  transition: transform 0.3s ease;
  margin-left: auto;
}

/* アンサー非表示（デフォルト） */
#topnew04 #change .faq-answer {
  padding: 0 16px;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease, padding 0.3s ease;
  font-size: 14px;
  color: #444;
}

/* 開いたときの表示 */
#topnew04 #change .faq-toggle:checked+.faq-question+.faq-answer {
  padding: 16px;
  max-height: 200px;
  /* 必要に応じて調整 */
}

/* 矢印回転 */
#topnew04 #change .faq-toggle:checked+.faq-question .arrow {
  transform: rotate(225deg);
}







#topnew04 #change .bottom_box {

  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  color: #6A6E73;

  text-align: center;
  font-family: "BIZ UDPGothic";
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  /* 36px */
  letter-spacing: 2.88px;
  margin-top: 130px;
  margin-bottom: 80px;
}

#topnew04 #change .box_link {
  color: #FB56AE;
  font-family: var(--typography-default-body-bold-xl-font-family, "BIZ UDPGothic");
  font-size: 32px;
  font-style: normal;
  font-weight: 700;
  line-height: 161%;
  /* 51.52px */
  letter-spacing: 3.84px;
  margin-top: 50px;
}

#topnew04 #change .box_link.page21 {
  color: #57C0FE;
}

#topnew04 #change .link_arrow.page21 {
  color: #57C0FE;
  /* 矢印の線の色 */
}

#topnew04 #change .box_link.page31 {
  color: #42DC99;
}

#topnew04 #change .link_arrow.page31 {
  color: #42DC99;
  /* 矢印の線の色 */
}



@media screen and (max-width: 768px) {

  #topnew04 #change .wrapper {}

  #topnew04 #change .item_box {
    width: 100%;
    height: 158px;
  }

  #topnew04 #change .maintitle_box {

    margin-top: 0px;
    margin-bottom: 80px;
  }

  #topnew04 #change .maintitle_box.second_box {
    margin-top: 0px;
    margin-bottom: 80px;
  }

  #topnew04 #change .img_box_sp {
    position: relative;
    width: 80%;
    height: auto;
    margin-right: 0;
    margin-left: auto;
    right: -16px;
  }

  #topnew04 #change .img_box_sp.second {
    margin-right: auto;
    margin-left: 0;
    left: -16px;
  }

  #topnew04 #change .layout_box {
    flex-direction: column-reverse;
    height: auto;
  }

  #topnew04 #change .text_box {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin-left: 0px;

  }

  #topnew04 #change .icon_box {
    width: 70px;
    height: 70px;
  }

  #topnew04 #change .title_text {
    font-size: 16px;
  }

  #topnew04 #change .bottom_box {
    font-size: 18px;
    margin-bottom: 60px;
    text-align: left;
  }

  #topnew04 #change .box_link {
    font-size: 20px;
  }

  #topnew04 #change .maintitle_box.space {
    margin-top: 60px;
  }



  #topnew04 #change .work-row {
    display: flex;
    /* ← グリッドからフレックスに変更 */
    flex-direction: column;
    /* ← 縦並びに */
    white-space: normal;
    /* 強制的な nowrap を解除 */
  }

  #topnew04 #change .reason-grid {

    grid-template-columns: 1fr;
  }

  #topnew04 #change .reason-item {
    align-items: center;
  }

  #topnew04 #change .reason-icon {
    width: 80px;
    height: auto;
    margin-bottom: 12px;
  }

  #topnew04 #change .industry-grid {
    grid-template-columns: 1fr;
  }

  #topnew04 #change .industry-subtitle,
  #topnew04 #change .skill-subtitle {
    text-align: left;
  }

  #topnew04 #change .skill-section {
    padding: 20px 0px;
  }

  #topnew04 #change .skill-grid {
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  }

  #topnew04 #change .top3,
  #topnew04 #change .bottom2 {
    grid-template-columns: 1fr;
  }

  #topnew04 #change .top3 {
    margin-bottom: 24px;
  }


  #topnew04 #change .skill-name {
    text-align: left;
    display: flex;
    justify-content: center;
    align-items: end;
  }

  #topnew04 #change .skill-name span {
    font-size: 36px;
  }

  #topnew04 #change .skill-name strong {
    font-size: 48px;
  }

  #topnew04 #change .voice-grid {
    grid-template-columns: 1fr;
  }
}




/*==================================
 viewmoreservice
 ===================================*/
#topnew04 #viewmoreservice {
  display: flex;
  background: var(--color-neutral-80, #E4E9ED);
  justify-content: center;

}

#topnew04 #viewmoreservice .body {
  background-image: none;
  width: 100%;
}

#topnew04 #viewmoreservice .wrapper {
  padding-top: 6px;
}


#topnew04 #viewmoreservice .view_title_box {
  margin-top: 48px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 4px;

  color: var(--color-primary-30, #005BAC);
  /* typography/english/heading/lg */
  font-family: var(--typography-english-heading-lg-font-family, Poppins);
  font-size: var(--typography-english-heading-lg-font-size, 40px);
  font-style: normal;
  font-weight: 400;
  line-height: 139%;
  /* 55.6px */
  letter-spacing: 4px;
  text-transform: uppercase;
}

#topnew04 #viewmoreservice .view_title_box p {
  color: var(--color-neutral-5, #1E2021);

  /* typography/default/label/lg */
  font-family: var(--typography-default-label-lg-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-label-lg-font-size, 18px);
  font-style: normal;
  font-weight: 400;
  line-height: 100%;
  /* 18px */
  letter-spacing: 2.16px;
  margin-bottom: 40px;
}

#topnew04 #viewmoreservice .view_layout_box {

  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  align-self: stretch;
  margin-bottom: 48px;
  width: 100%;
}

#topnew04 #viewmoreservice .box2_11 {
  background-image: url(../img/topnew4/more_link_01.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

#topnew04 #viewmoreservice .box2_21 {
  background-image: url(../img/topnew4/more_link_02.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

#topnew04 #viewmoreservice .box2_31 {
  background-image: url(../img/topnew4/more_link_03.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}



#topnew04 #viewmoreservice .view_layout_box .box2 {
  width: 49%;
  height: 176px;
  padding-bottom: 10px;


  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  position: relative;
  gap: 16px;

  color: var(--color-neutral-100, #FFF);

  /* typography/default/body/bold/xl */
  font-family: var(--typography-default-body-bold-xl-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-body-bold-xl-font-size, 20px);
  font-style: normal;
  font-weight: 700;
  line-height: 161%;
  /* 32.2px */
  letter-spacing: 2.4px;

  border-radius: 10px;
  padding: 0 96px;

}

#topnew04 #viewmoreservice .box2 .more_link {
  display: flex;
  width: 100%;
  flex-direction: row;
  justify-content: space-between;
  transition: transform 0.3s ease;
  align-items: center;
}

#topnew04 #viewmoreservice .box2 .more_link .link_arrow {
  transition: transform 0.3s ease;

}

#topnew04 #viewmoreservice .box2:hover .more_link .link_arrow {
  transform: scale(1.3);
}

#topnew04 #viewmoreservice .box2:hover .more_link {
  transform: translateX(5px);
  /* テキスト全体がちょっと右に動く */
}

@media screen and (max-width: 768px) {
  #topnew04 #viewmoreservice .view_layout_box {
    flex-direction: column;
  }

  #topnew04 #viewmoreservice .wrapper {
    padding-top: 80px;
  }

  #topnew04 #viewmoreservice .layout_box {
    gap: 10px;

  }

  #topnew04 #viewmoreservice .view_layout_box .box2 {
    width: 100%;
    text-align: center;
    padding: 0 20px;
    margin-bottom: 20px;
  }



  #topnew04 #viewmoreservice .box2 .more_link {
    justify-content: center;
    gap: 16px;
  }
}




/*==================================
 ■以下、タブの下 change_after 変更ページ
 ===================================*/

#topnew04 #change_after .body {
  background-color: #FFFBFD;
}

/*12 page12*/
#topnew04 #panel-sales {
  background-color: #FFFBFD;
}

/*13 page13*/
#topnew04 #panel-career-adviser {
  background-color: #F8FCFF;
}

/*14 page14*/
#topnew04 #panel-admin {
  background-color: #FFF6F4;
}

/*22 page22*/
#topnew04 #panel-shop-support {
  background-color: #F8FCFF;
}

/*23 page23*/
#topnew04 #panel-call-center {
  background-color: #FFFCF5;
}

/*32 page32*/
#topnew04 #panel-engineer {
  background-color: #F8F8F8;
}

/*33 page33*/
#topnew04 #panel-help-desk {
  background-color: #FFFCF5;
  ;
}

/*42 page42*/
#topnew04 #panel-engineer {
  background-color: #FFF6F4;
}

/*43 page43*/
#topnew04 #panel-help-desk {
  background-color: #FFF6F4;
}

/*44 page44*/
#topnew04 #panel-engineer {
  background-color: #FFF6F4;
}

/*45 page45*/
#topnew04 #panel-help-desk {
  background-color: #F6FFFB;
}

/*46 page46*/
#topnew04 #panel-engineer {
  background-color: #F6FFFB;
}

/*47 page47*/
#topnew04 #panel-help-desk {
  background-color: #F6FFFB;
}

/*48 page48*/
#topnew04 #panel-help-desk {
  background-color: #F6FFFB;
}

#topnew04 #change_after .body01 {
  background-image: url(../img/topnew4/12_bg01.png);
  background-position: top;
  background-repeat: no-repeat;
  background-size: cover;
  text-align: center;
}

#topnew04 #change_after .body01 .wrapper {
  padding: 60px 30px 120px;

}

#topnew04 #change_after .body01 .title_box {
  margin: 173px auto 132px;

  color: #1E2021;
  text-align: center;
  font-family: "BIZ UDPGothic";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 197%;
  /* 31.52px */
  letter-spacing: 1.92px;
}

#topnew04 #change_after .body01 .main_title {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 34px;
}

#topnew04 #change_after .body01 .main_title .line {
  flex: 0 0 40px;
  height: 2px;
  background-color: #FB56AE;
  margin: 0 12px;
}

#topnew04 #change_after .body01 .main_title .line.page13 {
  background-color: #134B6D;
}

#topnew04 #change_after .body01 .main_title .line.page14 {
  background-color: #D76F54;
}

#topnew04 #change_after .body01 .main_title .line.page22 {
  background-color: #134B6D;
}

#topnew04 #change_after .body01 .main_title .line.page23 {
  background-color: #D98B07;
}

#topnew04 #change_after .body01 .main_title .line.page32 {
  background-color: #079887;
}

#topnew04 #change_after .body01 .main_title .line.page33 {
  background-color: #D98B07;
}

#topnew04 #change_after .body01 .main_title .line.page42 {
  background-color: #D76F54;
}

#topnew04 #change_after .body01 .main_title .line.page43 {
  background-color: #D76F54;
}

#topnew04 #change_after .body01 .main_title .line.page44 {
  background-color: #D76F54;
}

#topnew04 #change_after .body01 .main_title .line.page45 {
  background-color: #147648;
}

#topnew04 #change_after .body01 .main_title .line.page46 {
  background-color: #147648;
}

#topnew04 #change_after .body01 .main_title .line.page47 {
  background-color: #147648;
}

#topnew04 #change_after .body01 .main_title .line.page48 {
  background-color: #147648;
}


#topnew04 #change_after .body01 .main_title .text {
  font-size: 40px;
  color: #FB56AE;
  font-weight: bold;
  font-family: sans-serif;
  white-space: nowrap;
  line-height: 1em;
  ;
}

#topnew04 #change_after .body01 .main_title .text.page13 {
  color: #134B6D;
}

#topnew04 #change_after .body01 .main_title .text.page14 {
  color: #D76F54;
}

#topnew04 #change_after .body01 .main_title .text.page22 {
  color: #134B6D;
}

#topnew04 #change_after .body01 .main_title .text.page23 {
  color: #D98B07;
}

#topnew04 #change_after .body01 .main_title .text.page32 {
  color: #079887;
}

#topnew04 #change_after .body01 .main_title .text.page33 {
  color: #D98B07;
}

#topnew04 #change_after .body01 .main_title .text.page42 {
  color: #D76F54;
}

#topnew04 #change_after .body01 .main_title .text.page43 {
  color: #D76F54;
  ;
}

#topnew04 #change_after .body01 .main_title .text.page44 {
  color: #D76F54;
}

#topnew04 #change_after .body01 .main_title .text.page45 {
  color: #147648;
}

#topnew04 #change_after .body01 .main_title .text.page46 {
  color: #147648;
}

#topnew04 #change_after .body01 .main_title .text.page47 {
  color: #147648;
}

#topnew04 #change_after .body01 .main_title .text.page48 {
  color: #147648;
}


#topnew04 #change_after .body01 .sub_title {
  color: #FB56AE;
  font-family: "BIZ UDPGothic";
  font-size: 32px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  /* 48px */
  letter-spacing: 3.84px;
  margin-top: 28px;
  margin-bottom: 14px;

}

#topnew04 #change_after .body01 .sub_title.page13 {
  color: #37B2FC;
}

#topnew04 #change_after .body01 .sub_title.page14 {
  color: #F97C5B;
}

#topnew04 #change_after .body01 .sub_title.page22 {
  color: #37B2FC;
}

#topnew04 #change_after .body01 .sub_title.page23 {
  color: #F9C05F;
}

#topnew04 #change_after .body01 .sub_title.page32 {
  color: #40DDCA;
}

#topnew04 #change_after .body01 .sub_title.page33 {
  color: #F9C05F;
}

#topnew04 #change_after .body01 .sub_title.page42 {
  color: #F97C5B;
}

#topnew04 #change_after .body01 .sub_title.page43 {
  color: #F97C5B;
}

#topnew04 #change_after .body01 .sub_title.page44 {
  color: #F97C5B;
}

#topnew04 #change_after .body01 .sub_title.page45 {
  color: #29D384;
}

#topnew04 #change_after .body01 .sub_title.page46 {
  color: #29D384;
}

#topnew04 #change_after .body01 .sub_title.page47 {
  color: #29D384;
}

#topnew04 #change_after .body01 .sub_title.page48 {
  color: #29D384;
}


#topnew04 #change_after .body01 .title_label_box {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

}

#topnew04 #change_after .body01 .title_label {
  color: #6A6E73;
}

#topnew04 #change_after .body01 .box3_layout {
  margin-top: 33px;
  display: flex;
  flex-direction: row;
  gap: 10px;
}

#topnew04 #change_after .body01 .box3_layout .box3 {
  width: 351px;
  height: 379px;
  flex-shrink: 0;

  border-radius: 20px;
  background: #FFF;
  display: flex;
  justify-content: center;
  align-items: center;

  color: #E2489A;
  text-align: center;
  font-family: "BIZ UDPGothic";
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  /* 24px */
  letter-spacing: 1.28px;
  display: flex;
  flex-direction: column;

}

#topnew04 #change_after .body01 .box3_layout .box3.page13 {
  color: #134B6D;
}

#topnew04 #change_after .body01 .box3_layout .box3.page14 {
  color: #D76F54;
}

#topnew04 #change_after .body01 .box3_layout .box3.page22 {
  color: #61BAEF;
}

#topnew04 #change_after .body01 .box3_layout .box3.page23 {
  color: #FFD286;
}

#topnew04 #change_after .body01 .box3_layout .box3.page32 {
  color: #22BEAC;
}

#topnew04 #change_after .body01 .box3_layout .box3.page33 {
  color: #FFD286;
}

#topnew04 #change_after .body01 .box3_layout .box3.page42 {
  color: #D76F54;
}

#topnew04 #change_after .body01 .box3_layout .box3.page43 {
  color: #D76F54;
}

#topnew04 #change_after .body01 .box3_layout .box3.page44 {
  color: #D76F54;
}

#topnew04 #change_after .body01 .box3_layout .box3.page45 {
  color: #147648;
}

#topnew04 #change_after .body01 .box3_layout .box3.page46 {
  color: #147648;
}

#topnew04 #change_after .body01 .box3_layout .box3.page47 {
  color: #147648;
}

#topnew04 #change_after .body01 .box3_layout .box3.page48 {
  color: #147648;
}



#topnew04 #change_after .body01 .box3_layout .box3 .numbox {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;

  color: #FF9AD0;
  font-family: Poppins;
  font-size: var(--typography-english-heading-lg-font-size, 40px);
  font-style: normal;
  font-weight: 400;
  line-height: 117%;
  /* 46.8px */
  letter-spacing: 4px;
  text-transform: uppercase;

}

#topnew04 #change_after .body01 .box3_layout .box3 .numbox.page13 {
  color: #60BAEF;
}

#topnew04 #change_after .body01 .box3_layout .box3 .numbox.page14 {
  color: #F78C6F;
}

#topnew04 #change_after .body01 .box3_layout .box3 .numbox.page22 {
  color: #134B6D;
}

#topnew04 #change_after .body01 .box3_layout .box3 .numbox.page23 {
  color: #D98B07;
}

#topnew04 #change_after .body01 .box3_layout .box3 .numbox.page32 {
  color: #079887;
}

#topnew04 #change_after .body01 .box3_layout .box3 .numbox.page33 {
  color: #D98B07;
}

#topnew04 #change_after .body01 .box3_layout .box3 .numbox.page42 {
  color: #F78C6F;
}

#topnew04 #change_after .body01 .box3_layout .box3 .numbox.page43 {
  color: #F78C6F;
}

#topnew04 #change_after .body01 .box3_layout .box3 .numbox.page44 {
  color: #F78C6F;
}

#topnew04 #change_after .body01 .box3_layout .box3 .numbox.page45 {
  color: #43B47F;
}

#topnew04 #change_after .body01 .box3_layout .box3 .numbox.page46 {
  color: #43B47F;
}

#topnew04 #change_after .body01 .box3_layout .box3 .numbox.page47 {
  color: #43B47F;
}

#topnew04 #change_after .body01 .box3_layout .box3 .numbox.page48 {
  color: #43B47F;
}



#topnew04 #change_after .body01 .box3_layout .box3 .numbox img {
  width: 60px;
  height: auto;
  margin-bottom: 0px;
}

#topnew04 #change_after .body01 .box3_layout .box3 div {
  margin-top: 26px;
}

@media screen and (max-width: 768px) {

  #topnew04 #change_after .body01 .title_box {
    margin: 80px auto 120px;
  }

  #topnew04 #change_after .body01 .text_box {

    text-align: left;
  }


  #topnew04 #change_after .body01 .sub_title {
    font-size: 24px;
  }

  #topnew04 #change_after .body01 .box3_layout {
    flex-direction: column;
  }
}

#topnew04 #change_after .body02 {
  background-image: url(../img/topnew4/12_bg02.png);
  background-position: top;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  display: flex;
  flex-direction: column;
}

#topnew04 #change_after .body02 .label_box {
  width: 571px;
  height: 140px;
  flex-shrink: 0;
  border-radius: 70px;
  background: #FFF;
  position: absolute;
  right: -100px;
  padding: 30px 80px;

  color: #005BAC;

  /* typography/english/heading/lg */
  font-family: var(--typography-english-heading-lg-font-family, Poppins);
  font-size: 40px;
  font-style: normal;
  font-weight: 400;
  line-height: 139%;
  /* 55.6px */
  letter-spacing: 4px;
  text-transform: uppercase;
}

#topnew04 #change_after .body02 .label_box p {
  color: #1E2021;

  /* typography/default/label/lg */
  font-family: var(--typography-default-label-lg-font-family, "BIZ UDPGothic");
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 100%;
  /* 18px */
  letter-spacing: 2.16px;
}

#topnew04 #change_after .body02 .box_layout {

  display: flex;
  flex-direction: column;
  color: #005BAC;
  font-family: "BIZ UDPGothic";
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: 200%;
  /* 40px */
  letter-spacing: 1.6px;
  align-items: end;
  margin-top: 200px;
  position: relative;
}


#topnew04 #change_after .body02 .photo_box {
  position: absolute;
  left: 0;
  top: 0;
  width: 398px;
}

#topnew04 #change_after .body02 .text_box {
  width: 65%;
}

#topnew04 #change_after .body02 .text_area {
  margin-left: 60px;
  margin-top: 10px;
}

#topnew04 #change_after .body02 .text_area p {
  width: 100%;
  text-align: right;
  color: #6A6E73;
}

#topnew04 #change_after .body02 .schedule-panel {
  background-color: #fff;
  padding: 30px 60px;
  border-radius: 12px;
  width: 90%;
  margin-top: 30px;
  height: 345px;
}

#topnew04 #change_after .body02 .schedule-title {
  color: #EDEDED;
  font-family: var(--typography-english-heading-lg-font-family, Poppins);
  font-size: 40px;
  font-style: italic;
  font-weight: 600;
  line-height: 139%;
  /* 55.6px */
  letter-spacing: 2.8px;
  text-transform: uppercase;
}

#topnew04 #change_after .body02 .schedule-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

#topnew04 #change_after .body02 .schedule-list li {
  display: flex;
  align-items: flex-start;
  margin-bottom: 8px;

  color: #1E2021;
  font-family: "BIZ UDPGothic";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  /* 24px */
  letter-spacing: 1.28px;
  gap: 30px;
}

#topnew04 #change_after .body02 .schedule-list .time {
  color: #3AA2FF;
  font-family: "BIZ UDPGothic";
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  /* 24px */
}

#topnew04 #change_after .body02 .schedule-list .desc {
  color: #333333;
  line-height: 1.4;
}

@media screen and (max-width: 768px) {

  #topnew04 #change_after .body02 .label_box {
    width: 80%;
    right: 0px;
    border-radius: 70px 0 0 70px;
  }

  #topnew04 #change_after .body02 .photo_box {
    position: relative;
    left: auto;
    top: auto;
    width: 80%;
    margin: 0 auto;
  }

  #topnew04 #change_after .body02 .text_box {
    width: 100%;
    margin: 10px auto;
  }

  #topnew04 #change_after .body02 .text_area {
    width: 90%;
    margin: 10px auto;

    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 160%;
    /* 28.8px */
    letter-spacing: 1.44px;
  }

  #topnew04 #change_after .body02 .text_area p {
    color: #6A6E73;
    font-family: "BIZ UDPGothic";
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    /* 22.5px */
    letter-spacing: 1.2px;
  }

  #topnew04 #change_after .body02 .schedule-panel {
    background-color: #fff;
    padding: 30px 20px;
    border-radius: 12px;
    width: 100%;
    margin-top: 30px;
    height: auto;
  }

  #topnew04 #change_after .body02 .schedule-list li {
    margin-bottom: 12px;
  }

}

#topnew04 #change_after .body03 {}


#topnew04 #change_after .body03 .main_box {
  font-family: "BIZ UDPGothic", sans-serif;
  color: #333;
}

#topnew04 #change_after .body03 .box_layout {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 30px;
  flex-wrap: wrap;
  gap: 24px;
  position: relative;
}

#topnew04 #change_after .body03 .box_layout.support {
  flex-direction: row-reverse;
}

#topnew04 #change_after .body03 .text-block {
  min-width: 280px;
  padding: 55px 0px;
  width: 40%;
}

#topnew04 #change_after .body03 .image-block {
  flex: 1;
  min-width: 280px;
  width: 60%;
}

#topnew04 #change_after .body03 .image-block img {
  width: 100%;
  border-radius: 12px;
  object-fit: cover;
}

#topnew04 #change_after .body03 .main_title {
  color: #FB56AE;
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 30px;
}

#topnew04 #change_after .body03 .main_title.page13 {
  color: #37B2FC;
}

#topnew04 #change_after .body03 .main_title.page14 {
  color: #F97C5B;
}

#topnew04 #change_after .body03 .main_title.page22 {
  color: #37B2FC;
}

#topnew04 #change_after .body03 .main_title.page23 {
  color: #F9C05F;
}

#topnew04 #change_after .body03 .main_title.page32 {
  color: #005BAC;
}

#topnew04 #change_after .body03 .main_title.page33 {
  color: #F9C05F;
}

#topnew04 #change_after .body03 .main_title.page42 {
  color: #F97C5B;
}

#topnew04 #change_after .body03 .main_title.page43 {
  color: #F97C5B;
}

#topnew04 #change_after .body03 .main_title.page44 {
  color: #F97C5B;
}

#topnew04 #change_after .body03 .main_title.page45 {
  color: #29D384;
}

#topnew04 #change_after .body03 .main_title.page46 {
  color: #29D384;
}

#topnew04 #change_after .body03 .main_title.page47 {
  color: #29D384;
}

#topnew04 #change_after .body03 .main_title.page48 {
  color: #29D384;
}






#topnew04 #change_after .body03 .main_title span {
  font-weight: bold;
}

#topnew04 #change_after .body03 .check-list {
  font-size: 16px;
  line-height: 1.8;
  list-style: none;
  padding-left: 0;
}

#topnew04 #change_after .body03 .check-list li {
  margin-bottom: 15px;
}


#topnew04 #change_after .body03 .img_icon {
  position: absolute;
  right: 0px;
  bottom: 0px;
  width: 120px;

}

@media screen and (max-width: 768px) {

  #topnew04 #change_after .body03 .text-block {
    min-width: 280px;
    padding: 55px 0px;
    width: 100%;
  }

  #topnew04 #change_after .body03 .image-block {
    width: 100%;
  }

  #topnew04 #change_after .body03 .box_layout.rev {
    flex-direction: column-reverse;
  }

}


#topnew04 #change_after .body04 {
  background-image: url(../img/topnew4/12_bg04.png);
  background-position: top;
  background-repeat: no-repeat;
  background-size: cover;
}

#topnew04 #change_after .body04 .title_label_box {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-top: 110px;


}

#topnew04 #change_after .body04 .title_label {
  color: #6A6E73;
}



#topnew04 #change_after .body04 .info-panel {
  margin: auto;
  display: flex;
  padding: 40px 120px 40px;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;

  flex-shrink: 0;
  border-radius: 24px;
  background: #FFF;
  box-shadow: 0px 0px 20px 0px rgba(30, 33, 51, 0.20);
  margin-top: 90px;
  margin-bottom: 120px;
}

#topnew04 #change_after .body04 .info-section {
  margin-bottom: 24px;
}

#topnew04 #change_after .body04 .info-title {
  font-size: 18px;
  margin-bottom: 12px;
  display: flex;
  align-items: baseline;
}

#topnew04 #change_after .body04 .info-title .jp {
  color: #005BAC;
  font-family: var(--typography-english-heading-lg-font-family, Poppins);
  font-size: 24px;
  font-style: normal;
  font-weight: 600;
  line-height: 139%;
  /* 33.36px */
  letter-spacing: 1.92px;
  text-transform: uppercase;
}

#topnew04 #change_after .body04 .info-title .en {
  margin-left: 10px;
  color: #EDEDED;
  font-family: Poppins;
  font-size: var(--typography-default-label-lg-font-size, 18px);
  font-style: italic;
  font-weight: 600;
  line-height: 100%;
  /* 18px */
  letter-spacing: 2.16px;
}

#topnew04 #change_after .body04 .info-list {
  display: grid;
  grid-template-columns: 140px 1fr;
  row-gap: 8px;
  column-gap: 16px;
}

#topnew04 #change_after .body04 .info-list dt {
  font-weight: 600;


  display: flex;
  width: 147px;
  padding: 0px 10px;
  justify-content: center;
  align-items: center;
  gap: 10px;
  border-radius: 3px;
  background: #6A6E73;
  color: #fff;
}


#topnew04 #change_after .body04 .info-list dt.box_white {
  background: #fff;
}


#topnew04 #change_after .body04 .info-list dd {
  margin: 0;

  color: #1E2021;
  font-family: "BIZ UDPGothic";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  /* 24px */
  letter-spacing: 1.28px;
}

#topnew04 #change_after .body04 .holiday-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  gap: 8px;
  padding-top: 8px;
}

#topnew04 #change_after .body04 .holiday-grid span {
  border-radius: 3px;
  background: #EDEDED;
  text-align: center;
  padding: 4px 8px;
  white-space: nowrap;
  display: inline-block;
}

#topnew04 #change_after .body04 .benefits-text {
  margin: 0 0 16px;
  color: #1E2021;
  font-family: "BIZ UDPGothic";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  /* 24px */
  letter-spacing: 1.28px;
}

#topnew04 #change_after .body04 .benefits-gallery {
  list-style: none;
  display: flex;
  gap: 16px;
  padding: 0;
  margin: 0;
}

#topnew04 #change_after .body04 .benefits-gallery li {
  text-align: center;
  flex: 1;
}

#topnew04 #change_after .body04 .benefits-gallery img {
  width: 100%;
  border-radius: 8px;
  height: auto;
  display: block;
}

#topnew04 #change_after .body04 .benefits-gallery p {
  color: #3AA2FF;

  /* typography/default/heading/xs */
  font-family: var(--typography-default-heading-xs-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-heading-xs-font-size, 20px);
  font-style: normal;
  font-weight: 700;
  line-height: 160%;
  /* 32px */
  letter-spacing: 1px;
}


@media screen and (max-width: 768px) {


  #topnew04 #change_after .body04 .info-section {
    width: 100%;
  }

  #topnew04 #change_after .body04 .info-panel {
    height: auto;
    padding: 31px 12px;
  }

  #topnew04 #change_after .body04 .info-list {
    display: flex;
    flex-direction: column;
    /* ← 縦並び */
    width: 100%;
    /* ← 横幅いっぱい */
    gap: 8px;
    /* ← 要素同士のすき間 */
  }

  #topnew04 #change_after .body04 .holiday-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(120px, 1fr));
    /* ← 2列に変更 */
    gap: 8px;
    padding-top: 8px;
  }

  #topnew04 #change_after .body04 .info-list dd {
    font-size: 12px;
  }

  #topnew04 #change_after .body04 .info-list dt {
    width: 100%;
  }

  #topnew04 #change_after .body04 .benefits-gallery {
    flex-direction: column;
  }

  #topnew04 #change_after .body04 .benefits-gallery li {
    display: flex;
    flex-direction: column-reverse;
    text-align: left;
  }



}




#topnew04 #change_after .body05 {
  position: relative;
}

#topnew04 #change_after .body05 .label_box_left {
  width: 571px;
  height: 140px;
  flex-shrink: 0;
  border-radius: 70px;
  background: #FFF;
  position: absolute;
  left: -40px;
  top: 170px;
  padding: 30px 80px;

  color: #E2489A;

  /* typography/english/heading/lg */
  font-family: var(--typography-english-heading-lg-font-family, Poppins);
  font-size: 40px;
  font-style: normal;
  font-weight: 400;
  line-height: 139%;
  /* 55.6px */
  letter-spacing: 4px;
  text-transform: uppercase;
}

#topnew04 #change_after .body05 .label_box_left.page13 {
  color: #134B6D;
}

#topnew04 #change_after .body05 .label_box_left.page14 {
  color: #D76F54;
}


#topnew04 #change_after .body05 .label_box_left.page22 {
  color: #134B6D;
}

#topnew04 #change_after .body05 .label_box_left.page23 {
  color: #D98B07;
}


#topnew04 #change_after .body05 .label_box_left.page32 {
  color: #079887;
}

#topnew04 #change_after .body05 .label_box_left.page33 {
  color: #D98B07;
}


#topnew04 #change_after .body05 .label_box_left.page42 {
  color: #D76F54;
}

#topnew04 #change_after .body05 .label_box_left.page43 {
  color: #D76F54;
}

#topnew04 #change_after .body05 .label_box_left.page44 {
  color: #D76F54;
}

#topnew04 #change_after .body05 .label_box_left.page45 {
  color: #147648;
}

#topnew04 #change_after .body05 .label_box_left.page46 {
  color: #147648;
}

#topnew04 #change_after .body05 .label_box_left.page47 {
  color: #147648;
}

#topnew04 #change_after .body05 .label_box_left.page48 {
  color: #147648;
}



#topnew04 #change_after .body05 .label_box_left p {
  color: #1E2021;

  /* typography/default/label/lg */
  font-family: var(--typography-default-label-lg-font-family, "BIZ UDPGothic");
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 100%;
  /* 18px */
  letter-spacing: 2.16px;
}



#topnew04 #change_after .body05 .flow_box {
  margin-top: 315px;
}

#topnew04 #change_after .body05 .feature-circle {
  width: 665px;
  height: 665px;
  flex-shrink: 0;
  aspect-ratio: 1/1;

  border-radius: 665px;
  background: #FFEEF7;
  position: absolute;
  left: -430px;

  top: 50%;
  transform: translate(0, -50%);
}

#topnew04 #change_after .body05 .feature-circle.page13 {
  background: #BAE5FF;
}

#topnew04 #change_after .body05 .feature-circle.page14 {
  background: #FFDED5;
  ;
}

#topnew04 #change_after .body05 .feature-circle.page22 {
  background: #BAE5FF;
}

#topnew04 #change_after .body05 .feature-circle.page23 {
  background: #FDE7C2;
  ;
}

#topnew04 #change_after .body05 .feature-circle.page32 {
  background: #E6E6E5;
}

#topnew04 #change_after .body05 .feature-circle.page33 {
  background: #FDE7C2;
  ;
}

#topnew04 #change_after .body05 .feature-circle.page42 {
  background: #FFDED5;
  ;
}

#topnew04 #change_after .body05 .feature-circle.page43 {
  background: #FFDED5;
  ;
}

#topnew04 #change_after .body05 .feature-circle.page44 {
  background: #FFDED5;
  ;
}

#topnew04 #change_after .body05 .feature-circle.page45 {
  background: #BEE2D1;
  ;
}

#topnew04 #change_after .body05 .feature-circle.page46 {
  background: #BEE2D1;
  ;
}

#topnew04 #change_after .body05 .feature-circle.page47 {
  background: #BEE2D1;
  ;
}

#topnew04 #change_after .body05 .feature-circle.page48 {
  background: #BEE2D1;
  ;
}




#topnew04 #change_after .body05 .feature-list {
  position: relative;
  margin-top: 120px;
}

#topnew04 #change_after .body05 .feature-list ul {
  list-style: none;
  margin: 0;
  padding: 0;
  position: relative;
}

#topnew04 #change_after .body05 .feature-item {
  display: flex;
  align-items: center;
  margin-bottom: 24px;
}

#topnew04 #change_after .body05 .feature-item_middle {
  display: flex;
  align-items: center;
  margin-left: 120px;
  margin-top: -50px;
  margin-bottom: -30px;
}

#topnew04 #change_after .body05 .feature-icon {
  flex-shrink: 0;
  flex-direction: column;
  width: 190px;
  height: 190px;
  border: 2px solid #E55FA6;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;

  color: #E04799;
  text-align: center;
  font-family: "BIZ UDPGothic";
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  /* 36px */

  background-color: #fff;

}


#topnew04 #change_after .body05 .feature-icon.page13 {
  border: 2px solid #60BAEF;
  color: #134B6D;
}

#topnew04 #change_after .body05 .feature-icon.page14 {
  border: 2px solid #F78C6F;
  color: #D76F54;
}

#topnew04 #change_after .body05 .feature-icon.page22 {
  border: 2px solid #60BAEF;
  color: #134B6D;
}

#topnew04 #change_after .body05 .feature-icon.page23 {
  border: 2px solid #FFD286;
  color: #D98B07;
}


#topnew04 #change_after .body05 .feature-icon.page32 {
  border: 2px solid #22BEAC;
  color: #079887;
}

#topnew04 #change_after .body05 .feature-icon.page33 {
  border: 2px solid #FFD286;
  color: #D98B07;
}


#topnew04 #change_after .body05 .feature-icon.page42 {
  border: 2px solid #F78C6F;
  color: #D76F54;
}

#topnew04 #change_after .body05 .feature-icon.page43 {
  border: 2px solid #F78C6F;
  color: #D76F54;
}

#topnew04 #change_after .body05 .feature-icon.page44 {
  border: 2px solid #F78C6F;
  color: #D76F54;
}


#topnew04 #change_after .body05 .feature-icon.page45 {
  border: 2px solid #43B47F;
  color: #147648;
}

#topnew04 #change_after .body05 .feature-icon.page46 {
  border: 2px solid #43B47F;
  color: #147648;
}

#topnew04 #change_after .body05 .feature-icon.page47 {
  border: 2px solid #43B47F;
  color: #147648;
}

#topnew04 #change_after .body05 .feature-icon.page48 {
  border: 2px solid #43B47F;
  color: #147648;
}



#topnew04 #change_after .body05 .feature-icon p {
  font-size: 16px;

}

#topnew04 #change_after .body05 .feature-text {
  margin: 0 0 0 16px;
  color: #333;
  line-height: 1.5;
  font-size: 14px;
}


#topnew04 #change_after .body05 .bottom_box {
  margin-top: 220px;
  margin-bottom: 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  color: #6A6E73;

  text-align: center;
  font-family: "BIZ UDPGothic";
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  /* 36px */
  letter-spacing: 2.88px;

}

@media screen and (max-width: 768px) {

  #topnew04 #change_after .body05 .feature-circle {
    display: none;
  }

  #topnew04 #change_after .body05 .label_box_left {

    width: 571px;
    height: 200px;
    flex-shrink: 0;
    background: #FFF;
    position: absolute;
    padding: 30px 80px;

    color: #005BAC;

    /* typography/english/heading/lg */
    font-family: var(--typography-english-heading-lg-font-family, Poppins);
    font-size: 40px;
    font-style: normal;
    font-weight: 400;
    line-height: 139%;
    /* 55.6px */
    letter-spacing: 4px;
    text-transform: uppercase;

    padding: 30px 60px;
    width: 80%;
    left: 0px;
    border-radius: 0 100px 100px 0;

  }

  #topnew04 #change_after .body05 .feature-item {
    flex-direction: column;
    margin-bottom: 24px;
  }

  #topnew04 #change_after .body05 .feature-item_middle {
    flex-direction: column;
    margin-left: 0px;
    margin-top: 0px;
    margin-bottom: 40px;
  }

  #topnew04 #change_after .body05 .feature-text {
    margin: 10px 0 0 0px;
  }

  #topnew04 #change_after .body05 .flow_box {
    margin-top: 400px;
    padding: 0 20px;
  }


  #topnew04 #change_after .body05 .bottom_box {
    margin-top: 80px;
    margin-bottom: 30px;
    text-align: left;
  }

  #topnew04 #change_after .body05 .bottom_box img {
    width: 100%;
  }


}


#topnew04 #change_after .box_link {
  color: #FB56AE;
  font-family: var(--typography-default-body-bold-xl-font-family, "BIZ UDPGothic");
  font-size: 32px;
  font-style: normal;
  font-weight: 700;
  line-height: 161%;
  /* 51.52px */
  letter-spacing: 3.84px;
  margin-top: 50px;
  margin-bottom: 40px;
}

#topnew04 #change_after .box_link.page13 {
  color: #37B2FC;
}

#topnew04 #change_after .box_link.page14 {
  color: #F97C5B;
}

#topnew04 #change_after .box_link.page22 {
  color: #37B2FC;
}

#topnew04 #change_after .box_link.page23 {
  color: #F9C05F;
}

#topnew04 #change_after .box_link.page32 {
  color: #40DDCA;
}

#topnew04 #change_after .box_link.page33 {
  color: #F9C05F;
}



#topnew04 #change_after .link_arrow.page13 {
  color: #37B2FC;
}

#topnew04 #change_after .link_arrow.page14 {
  color: #F97C5B"

}

#topnew04 #change_after .link_arrow.page22 {
  color: #37B2FC;
}

#topnew04 #change_after .link_arrow.page23 {
  color: #F9C05F"

}

#topnew04 #change_after .link_arrow.page32 {
  color: #40DDCA;
}

#topnew04 #change_after .link_arrow.page33 {
  color: #F9C05F"

}

#topnew04 #change_after .box_link.page42,
#topnew04 #change_after .link_arrow.page42 {
  color: #F97C5B;
}

#topnew04 #change_after .box_link.page43,
#topnew04 #change_after .link_arrow.page43 {
  color: #F97C5B;
}

#topnew04 #change_after .box_link.page44,
#topnew04 #change_after .link_arrow.page44 {
  color: #F97C5B;
}


#topnew04 #change_after .box_link.page45,
#topnew04 #change_after .link_arrow.page45 {
  color: #29D384;
}

#topnew04 #change_after .box_link.page46,
#topnew04 #change_after .link_arrow.page46 {
  color: #29D384;
}

#topnew04 #change_after .box_link.page47,
#topnew04 #change_after .link_arrow.page47 {
  color: #29D384;
}

#topnew04 #change_after .box_link.page48,
#topnew04 #change_after .link_arrow.page48 {
  color: #29D384;
}



#topnew04 #change_after .bottom_box img {
  width: 70%;
}

#topnew04 #change_after .body06 {
  background-color: #FFEEF7;
}

#topnew04 #change_after .body07 {}



#topnew04 #change_after .body07 .vision-section {
  padding: 60px 20px;
  background: #f9f9f9;
}

#topnew04 #change_after .body07 .vision-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 1080px;
  margin: 0 auto;
  flex-wrap: wrap;
  /* ← スマホ対応のため */
}

#topnew04 #change_after .body07 .vision-text {
  flex: 1 1 50%;
  padding-right: 40px;

  color: #1E2021;
  text-align: justify;
  font-family: "BIZ UDPGothic";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 197%;
  /* 31.52px */
  letter-spacing: 0.96px;
}

#topnew04 #change_after .body07 .vision-title {
  font-family: "BIZ UDPGothic";
  font-size: 32px;
  font-style: normal;
  font-weight: 700;
  line-height: 170%;
  /* 54.4px */
  letter-spacing: 2.56px;
  background: linear-gradient(90deg, #005BAC -20.97%, #71E5B3 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;

  margin-bottom: 24px;
}

#topnew04 #change_after .body07 .vision-lead {
  font-size: 14px;
  line-height: 1.8;
  margin-bottom: 20px;
}

#topnew04 #change_after .body07 .vision-sub {}

#topnew04 #change_after .body07 .vision-image {
  flex: 1 1 40%;
  text-align: right;
}

#topnew04 #change_after .body07 .vision-image img {
  max-width: 100%;
  height: auto;
}



#topnew04 #change_after .body07 .project-section {
  padding: 40px 20px;
  background: #fff;
  text-align: center;
}

#topnew04 #change_after .body07 .project-title {
  font-size: 18px;
  font-weight: bold;
  background: linear-gradient(to right, #0072bc, #38c4ba);
  color: #fff;
  padding: 10px 16px;
  border-radius: 4px;
  display: inline-block;
  margin-bottom: 8px;
}

#topnew04 #change_after .body07 .project-note {
  font-size: 14px;
  margin-bottom: 24px;

  color: #1E2021;
  text-align: justify;
  font-family: "BIZ UDPGothic";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 197%;
  /* 31.52px */
  letter-spacing: 0.96px;
}


#topnew04 #change_after .body07 .project-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  max-width: 1040px;
  margin: 0 auto;
}

#topnew04 #change_after .body07 .project-item {
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
  text-align: left;
}

#topnew04 #change_after .body07 .project-img {
  width: 100%;
  height: auto;
  display: block;
}

#topnew04 #change_after .body07 .project-desc {
  font-size: 14px;
  padding: 12px;
  color: #005BAC;
  font-family: "BIZ UDPGothic";
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  /* 27px */
  letter-spacing: 1.08px;
}

@media screen and (max-width: 768px) {
  #topnew04 #change_after .body07 .vision-container {
    flex-direction: column-reverse;
  }

  #topnew04 #change_after .body07 .vision-text {
    padding-right: 0px;
  }

  #topnew04 #change_after .body07 .project-grid {
    grid-template-columns: 1fr;
    /* ← スマホは1列 */
  }

  #topnew04 #change_after .body07 .project-note {

    text-align: center;

  }

}

/*==================================
 change_after viewmorejob
 ===================================*/
#topnew04 #change_after .viewmorejob {
  display: flex;
  background: #FFEEF7;
  justify-content: center;
}




#topnew04 #change_after .viewmorejob.page13 {
  background: #BAE5FF;
}

#topnew04 #change_after .viewmorejob.page14 {
  background: #FFDED5;
}

#topnew04 #change_after .viewmorejob.page22 {
  background: #BAE5FF;
}

#topnew04 #change_after .viewmorejob.page23 {
  background: #FDE7C2;
}

#topnew04 #change_after .viewmorejob.page32 {
  background: #E6E6E5;
}

#topnew04 #change_after .viewmorejob.page33 {
  background: #FDE7C2;
}

#topnew04 #change_after .viewmorejob.page42 {
  background: #FFDED5;
}

#topnew04 #change_after .viewmorejob.page43 {
  background: #FFDED5;
}

#topnew04 #change_after .viewmorejob.page44 {
  background: #FFDED5;
}

#topnew04 #change_after .viewmorejob.page45 {
  background: #BEE2D1;
}

#topnew04 #change_after .viewmorejob.page46 {
  background: #BEE2D1;
}

#topnew04 #change_after .viewmorejob.page47 {
  background: #BEE2D1;
}

#topnew04 #change_after .viewmorejob.page48 {
  background: #BEE2D1;
}


#topnew04 #change_after .viewmorejob .body {
  width: 100%;
}

#topnew04 #change_after .viewmorejob .wrapper {
  padding-top: 0px;
}


#topnew04 #change_after .viewmorejob .title_box {
  margin-top: 48px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  color: #E2489A;
  /* typography/english/heading/lg */
  font-family: var(--typography-english-heading-lg-font-family, Poppins);
  font-size: var(--typography-english-heading-lg-font-size, 40px);
  font-style: normal;
  font-weight: 400;
  line-height: 139%;
  /* 55.6px */
  letter-spacing: 4px;
  text-transform: uppercase;
}

#topnew04 #change_after .viewmorejob .title_box.page13 {
  color: #005BAC;
}

#topnew04 #change_after .viewmorejob .title_box.page14 {
  color: #D76F54;
}


#topnew04 #change_after .viewmorejob .title_box.page22 {
  color: #464A4D;
}

#topnew04 #change_after .viewmorejob .title_box.page23 {
  color: #D98B07;
}

#topnew04 #change_after .viewmorejob .title_box.page32 {
  color: #079887;
}

#topnew04 #change_after .viewmorejob .title_box.page33 {
  color: #D98B07;
}

#topnew04 #change_after .viewmorejob .title_box.page42 {
  color: #D76F54;
}

#topnew04 #change_after .viewmorejob .title_box.page43 {
  color: #D76F54;
}

#topnew04 #change_after .viewmorejob .title_box.page44 {
  color: #D76F54;
}


#topnew04 #change_after .viewmorejob .title_box.page45 {
  color: #147648;
}

#topnew04 #change_after .viewmorejob .title_box.page46 {
  color: #147648;
}

#topnew04 #change_after .viewmorejob .title_box.page47 {
  color: #147648;
}

#topnew04 #change_after .viewmorejob .title_box.page48 {
  color: #147648;
}

#topnew04 #change_after .viewmorejob .title_box p {
  color: var(--color-neutral-5, #1E2021);

  /* typography/default/label/lg */
  font-family: var(--typography-default-label-lg-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-label-lg-font-size, 18px);
  font-style: normal;
  font-weight: 400;
  line-height: 100%;
  /* 18px */
  letter-spacing: 2.16px;
  margin-bottom: 40px;
}

#topnew04 #change_after .viewmorejob .layout_box {

  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  align-self: stretch;
  margin-bottom: 48px;
  width: 100%;
}

#topnew04 #change_after .viewmorejob .layout_box.box1 {
  justify-content: center;
}


#topnew04 #change_after .viewmorejob .layout_box.grid_box {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  /* 横2列 */
  gap: 16px;
  /* 要素間の隙間（任意） */
  width: 100%;
}



#topnew04 #change_after .viewmorejob .box2_12 {
  background-image: url(../img/topnew4/12_ph_99.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

#topnew04 #change_after .viewmorejob .box2_13 {
  background-image: url(../img/topnew4/13_ph_99.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

#topnew04 #change_after .viewmorejob .box2_14 {
  background-image: url(../img/topnew4/14_ph_99.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}


#topnew04 #change_after .viewmorejob .box2_22 {
  background-image: url(../img/topnew4/22_ph_99.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

#topnew04 #change_after .viewmorejob .box2_23 {
  background-image: url(../img/topnew4/23_ph_99.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}


#topnew04 #change_after .viewmorejob .box2_32 {
  background-image: url(../img/topnew4/32_ph_99.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

#topnew04 #change_after .viewmorejob .box2_33 {
  background-image: url(../img/topnew4/33_ph_99.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}


#topnew04 #change_after .viewmorejob .box2_42 {
  background-image: url(../img/topnew4/42_ph_99.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

#topnew04 #change_after .viewmorejob .box2_43 {
  background-image: url(../img/topnew4/43_ph_99.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

#topnew04 #change_after .viewmorejob .box2_44 {
  background-image: url(../img/topnew4/44_ph_99.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

#topnew04 #change_after .viewmorejob .box2_45 {
  background-image: url(../img/topnew4/45_ph_99.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

#topnew04 #change_after .viewmorejob .box2_46 {
  background-image: url(../img/topnew4/46_ph_99.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

#topnew04 #change_after .viewmorejob .box2_47 {
  background-image: url(../img/topnew4/47_ph_99.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

#topnew04 #change_after .viewmorejob .box2_48 {
  background-image: url(../img/topnew4/48_ph_99.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}



#topnew04 #change_after .viewmorejob .layout_box .box2 {
  width: 49%;
  height: 176px;
  padding-bottom: 10px;


  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  position: relative;
  gap: 16px;

  color: var(--color-neutral-100, #FFF);

  /* typography/default/body/bold/xl */
  font-family: var(--typography-default-body-bold-xl-font-family, "BIZ UDPGothic");
  font-size: var(--typography-default-body-bold-xl-font-size, 20px);
  font-style: normal;
  font-weight: 700;
  line-height: 161%;
  /* 32.2px */
  letter-spacing: 2.4px;

  border-radius: 10px;
  padding: 0 96px;

}

#topnew04 #change_after .viewmorejob .layout_box.grid_box .box2 {
  width: 100%;
}


#topnew04 #change_after .viewmorejob .box2 .more_link {
  display: flex;
  width: 100%;
  flex-direction: row;
  justify-content: space-between;
  transition: transform 0.3s ease;
  align-items: center;
}

#topnew04 #change_after .viewmorejob .box2 .more_link .link_arrow {
  transition: transform 0.3s ease;

}

#topnew04 #change_after .viewmorejob .box2:hover .more_link .link_arrow {
  transform: scale(1.3);
}

#topnew04 #change_after .viewmorejob .box2:hover .more_link {
  transform: translateX(5px);
  /* テキスト全体がちょっと右に動く */
}


#topnew04 #change_after .viewmorejob .seeker-switch {
  display: flex;
  gap: 1rem;
  justify-content: center;
  margin: 2rem 0;
}

#topnew04 #change_after .viewmorejob .seeker-role-btn {
  padding: 0.75rem 1.5rem;
  border: none;
  border-radius: 9999px;
  background-color: var(--gray);
  color: #fff;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.3s;
}

#topnew04 #change_after .viewmorejob .seeker-role-btn.active {}

#topnew04 #change_after .viewmorejob .seeker-role-btn:hover {
  opacity: 0.9;
}

#topnew04 #change_after .viewmorejob .seeker-role-btn:hover {
  opacity: 0.9 !important;
}

@media screen and (max-width: 768px) {


  #topnew04 #change_after .viewmorejob .title_box {
    text-align: center;
  }

  #topnew04 #change_after .viewmorejob .layout_box {
    flex-direction: column;
  }

  #topnew04 #change_after .viewmorejob .wrapper {
    padding-top: 80px;
  }

  #topnew04 #change_after .viewmorejob .layout_box {
    gap: 10px;

  }

  #topnew04 #change_after .viewmorejob .layout_box .box2 {
    width: 100%;
    text-align: center;
    padding: 0 20px;
  }



  #topnew04 #change_after .viewmorejob .box2 .more_link {
    justify-content: center;
    gap: 16px;
  }

  #topnew04 #change_after .viewmorejob .layout_box.grid_box {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    /* 横2列 */
    gap: 16px;
    /* 要素間の隙間（任意） */
    width: 100%;
  }


}

/*==================================
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
===================================*/

/*==================================
 mangab
 ===================================*/
#topnew04 #manga {
  background-color: #CCC;
}

#topnew04 #manga .warrer {
  max-width: 1080px;
}


#topnew04 #manga img {
  margin-bottom: 50px;
}

@media screen and (max-width: 768px) {
  #topnew04 #manga img {
    margin-bottom: 10px;
  }
}

/*==================================
 comic
 ===================================*/
#topnew04 #comic {}

#topnew04 #comic .warrer {
  max-width: 1080px;
}


#topnew04 #comic img {
  margin-bottom: 50px;
  width: 100%;
  height: auto;
}

@media screen and (max-width: 768px) {
  #topnew04 #comic img {
    margin-bottom: 10px;
  }
}



/*==================================
■汎用
===================================*/

/*■■■リンクボタン■■*/

#topnew04 .linkbtn {
  background-color: #005BAC;
  border: #005BAC 1px solid;
  color: #fff;
  border-radius: 50px;
  width: 180px;
  height: 48px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 20px;
  transition-duration: 300ms;


  color: #FFF;


  font-size: 14px;
  font-style: normal;
  font-weight: 350;
  line-height: 175%;
  /* 28px */
  letter-spacing: 1.6px;
  white-space: nowrap;
  text-decoration: none;

  font-family: 'A-OTF Gothic MB101 Pro', 'Noto Sans JP', sans-serif;
}


#topnew04 .linkbtn .linktext {
  margin-top: 1px;
}


#topnew04 .linkbtn .linktextmin {
  font-size: 13px;
  margin-top: -2px;
}

_::-webkit-full-page-media,
_:future,
:root #topnew04 .linkbtn .linktext {
  margin-top: -3px;
}

_::-webkit-full-page-media,
_:future,
:root #topnew04 .linkbtn .linktextmin {
  margin-top: -3px;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {

  ::i-block-chrome,
  #topnew04 .linkbtn .linktext {
    margin-top: -3px;
  }

  ::i-block-chrome,
  #topnew04 .linkbtn .linktextmin {
    margin-top: -3px;
  }
}




#topnew04 .linkbtn svg {
  stroke: #fff;
  fill: #fff;
  transition: all 1s;
}

#topnew04 .linkbtn:hover {
  background-color: #fff;
  color: #005BAC;

}

#topnew04 .linkbtn:hover svg {
  stroke: #005BAC;
  fill: #005BAC;
  transform: translateX(10px);
}

/*fillは塗りつぶし、strokeは線の色*/


#topnew04 .linkbtn.b10 {
  background: #FFF;
  color: #005BAC;
  border: #005BAC 1px solid;
}

#topnew04 .linkbtn.b10 svg {
  stroke: #005BAC;
  fill: #005BAC;
  transition: all 1s;
}

#topnew04 .linkbtn.b10:hover {
  background-color: #005BAC;
  color: #FFF;
}

#topnew04 .linkbtn.b10:hover svg {
  stroke: #FFF;
  fill: #FFF;
  transform: translateX(10px);
}


#topnew04 .linkbtn.b21 {
  background: #F82A98;
  border: #F82A98 1px solid;
}

#topnew04 .linkbtn.b21:hover {
  background-color: #fff;
  color: #F82A98;

}

#topnew04 .linkbtn.b21:hover svg {
  stroke: #F82A98;
  fill: #F82A98;
  transform: translateX(10px);
}



#topnew04 .linkbtn.b22 {
  background: #00A0FF;
  border: #00A0FF 1px solid;
}

#topnew04 .linkbtn.b22:hover {
  background-color: #fff;
  color: #00A0FF;

}

#topnew04 .linkbtn.b22:hover svg {
  stroke: #00A0FF;
  fill: #00A0FF;
  transform: translateX(10px);
}



#topnew04 .linkbtn.b23 {
  background: #14D481;
  border: #14D481 1px solid;
}

#topnew04 .linkbtn.b23:hover {
  background-color: #fff;
  color: #14D481;

}

#topnew04 .linkbtn.b23:hover svg {
  stroke: #14D481;
  fill: #14D481;
  transform: translateX(10px);
}


#topnew04 .linkbtn.b31 {
  background-color: transparent;
  border: #fff 1px solid;
  color: #FFF;
}

#topnew04 .linkbtn.b31:hover {
  background-color: #fff;
  color: #1a1a1a;
}

#topnew04 .linkbtn.b31:hover svg {
  stroke: #1a1a1a;
  fill: #1a1a1a;
  transform: translateX(10px);
}



#topnew04 .linkbtn.b52 {
  background-color: #000;
  border: #000 1px solid;
  color: #FFF;
}

#topnew04 .linkbtn.b52:hover {
  background-color: #fff;
  color: #000;
}

#topnew04 .linkbtn.b52:hover svg {
  stroke: #000;
  fill: #000;
  transform: translateX(10px);
}





#topnew04 a {
  opacity: 1 !important;
  display: flex !important;
  text-decoration: none;
}


/*■■■ラベル（題名＆英字）■■■*/


#topnew04 .label {
  color: #000;

  font-family: 'A-OTF Gothic MB101 Pro', 'Noto Sans JP', sans-serif;
  font-size: 32px;
  font-style: normal;
  font-weight: 600;
  line-height: 140%;
  /* 44.8px */
  letter-spacing: 3.2px;
  position: relative;
  z-index: 105;
}

#topnew04 .label .textfloat {
  position: absolute;
  width: 300px;
}



#topnew04 .label .sublabel {
  color: #0C5CAD;

  font-family: 'A P-OTF A1Gothic StdN', 'Noto Sans JP', sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 170%;
  /* 27.2px */
  letter-spacing: 2.4px;
  margin-top: 14px;
}

#topnew04 .label .sublabel .floatm60 {
  margin-top: 60px;
}


#topnew04 .label .sublabel .floatm120 {
  margin-top: 100px;
}


#topnew04 .label .sublabel.blue {
  color: #0C5CAD;
}


#topnew04 .label.white {
  color: #fff;
}

#topnew04 .label.white .sublabel {
  color: #fff;
}

@media screen and (max-width: 768px) {



  #topnew04 .label {
    font-size: 25px;
    line-height: 120%;
  }


  #topnew04 .label .sublabel {
    font-size: 12px;
  }


  #topnew04 .label .sublabel .floatm60 {
    margin-top: 40px;
  }


  #topnew04 .label .sublabel .floatm120 {
    margin-top: 70px;
  }


}

/*■線*/

#topnew04 .line {
  width: 100%;
  height: 1px;
  background: #CCC;
  margin: 100px auto 70px;

}

#topnew04 .line.min {
  margin: 70px 0 70px;
}

#topnew04 .space {
  height: 100px;
  width: 100%;
}

#topnew04 .sidespace {
  height: 170px;
  width: 100%;
}


@media screen and (max-width: 768px) {

  #topnew04 .line {
    width: 100%;
    margin: 20px auto 20px;
  }

  #topnew04 .line.min {
    margin: 20px 0 20px;
  }


  #topnew04 .space {
    height: 30px;
    width: 100%;
  }
}


/*■■■汎用２つボックス■■■*/

#topnew04 .box2_coming {
  height: 280px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  z-index: 105;
  position: relative;

}

#topnew04 .box2_layout {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  margin-top: 40px;
  z-index: 105;
  position: relative;
  align-items: center;
  width: 100%;

}

#topnew04 .box2_layout .box2 {
  width: 460px;
  height: 246px;
  flex-shrink: 0;
  border-radius: 30px 0px 0px 0px;
  background: #FFF;
  box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.10);
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  z-index: 105;
  position: relative;
  border-radius: 40px 0px;
  margin: 0 auto;
}

#topnew04 .box2_layout .box2.highbox {
  height: 280px;
}

#topnew04 .box2_layout .box2 img {
  width: 176px;
  height: 246px;
}

#topnew04 .box2_layout .box2.highbox img {
  width: 176px;
  height: 280px;
  object-fit: cover;
  border-radius: 30px 0px 0px 0px;
}

#topnew04 .box2_layout .box2 .box2left {
  width: 176px;
  border-radius: 40px 0px;
}

#topnew04 .box2_layout .box2 .box2left img {
  border-radius: 40px 0px 0px 0px;
}


#topnew04 .box2_layout .box2 .box2right {

  width: calc(420px - 176px);
  padding: 30px;
  display: flex;
  flex-direction: column;

  color: #000;
  font-family: 'A-OTF Gothic MB101 Pro', 'Noto Sans JP', sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 180%;
  /* 25.2px */

}

#topnew04 .box2_layout .box2 .box2right span {
  color: #000;

  font-family: 'A-OTF Gothic MB101 Pro', 'Noto Sans JP', sans-serif;
  font-size: 22px;
  font-style: normal;
  font-weight: 600;
  line-height: 140%;
  /* 30.8px */
  letter-spacing: 2.2px;
  margin-bottom: 10px;

}

#topnew04 .box2_layout .box2 .box2right .min {
  color: #000;

  leading-trim: both;

  text-edge: cap;
  font-family: 'A-OTF Gothic MB101 Pro', 'Noto Sans JP', sans-serif;
  font-size: 10px;
  font-style: normal;
  font-weight: 600;
  line-height: 180%;
  letter-spacing: 1px;
  margin-bottom: 10px;
  /* 27px */

}

@media screen and (max-width: 768px) {



  #topnew04 .box2_layout {
    margin-top: 20px;
    display: flex;
    flex-direction: column;
    height: auto;
    margin-bottom: 0px;
  }

  #topnew04 .box2_layout .box2 {
    width: 100%;
    margin-bottom: 20px;
  }

  #topnew04 .box2_layout .box2 .box2left {
    width: 30%;
  }

  #topnew04 .box2_layout .box2 .box2right {
    width: 70%;
    padding: 15px;
    height: 100%;
    justify-content: space-between;
  }

  #topnew04 .box2_layout .box2 img {
    object-fit: cover;
  }
}



/*■■■カラー■■■*/

#topnew04 .c01 {
  color: #F82A98 !important;
}

#topnew04 .c02 {
  color: #00A0FF !important;
}

#topnew04 .c03 {
  color: #14D481 !important;
}



/* ***********************************
   scrollanime 2
* *********************************** */
.bgappear,
.bgLRextend {
  opacity: 0;
}

/*1.フェードインアニメーションの指定*/
.scrollanime1,
.scrollanime2,
.scrollanime3,
.scrollanime4,
.scrollanime5 {
  opacity: 0;
}

/*一瞬表示されるのを防ぐ*/



.fadeInStart {
  animation-name: fadeInStart;
  animation-duration: 1s;
  animation-delay: 0s;
  animation-fill-mode: forwards;
}


.scrollanime2a,
.scrollanime3a,
.scrollanime4a {
  opacity: 0;
}

.fadeInStart_a {
  animation: slideIn11 1s ease-out;
}

.fadeInStart_b {
  animation: slideIn12 1s ease-out;
}

@media all and (min-width:737px) {

  /*最初から表示＆タイミングずらす PC用　表示をしてしまう*/
  .fadeInStart2 {
    animation-name: fadeInStart;
    animation-duration: 0.0s;
    animation-delay: 0.0s;
    animation-fill-mode: forwards;
    opacity: 1;
  }
}

@media all and (max-width:736px) {

  /*最初から表示＆タイミングずらす 携帯用　ちゃんとfadeInStartを行わせる*/
  .fadeInStart2 {
    opacity: 0;
  }
}

/*最初から表示＆タイミングずらす PC用　表示をしてしまう*/
.fadeInStart3 {
  animation-name: fadeInStart;
  animation-duration: 0.0s;
  animation-delay: 0.0s;
  animation-fill-mode: forwards;
  opacity: 1;
}



@keyframes fadeInStart {
  0% {
    opacity: 0;

  }

  100% {
    opacity: 1;
    transform: translate(0);
  }
}

.slideout {
  display: none;
}

/*2.上下の動きを指定*/
/*上から*/
.updown {
  transform: translateY(-20px);
}

/*下から*/
.downup {
  transform: translateY(50px);
}

.slide-right {

  transform: translateX(100px);
}

.slide-left {
  transform: translateX(-200px);
}


@media all and (max-width:736px) {

  /*　画面サイズが以下の場合ここの記述が適用される　*/
  #voice .slide-right {
    transform: translateX(-200px);
  }


}





/*========= 流れるテキスト ===============*/

/*全共通*/

.slide-in {
  overflow: hidden;
  display: inline-block;
}

.slide-in_inner {
  display: inline-block;

}

/*左右のアニメーション*/
.leftAnime {
  opacity: 0;
  /*事前に透過0にして消しておく*/
}

.slideAnimeLeftRight {
  animation-name: slideTextX100;
  animation-duration: 1.4s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes slideTextX100 {
  from {
    transform: translateX(-100%);
    /*要素を左の枠外に移動*/
    opacity: 0;
  }

  to {
    transform: translateX(0);
    /*要素を元の位置に移動*/
    opacity: 1;
  }
}

.slideAnimeRightLeft {
  animation-name: slideTextX-100;
  animation-duration: 1.4s;
  animation-fill-mode: forwards;
  opacity: 0;
}


@keyframes slideTextX-100 {
  from {
    transform: translateX(100%);
    /*要素を右の枠外に移動*/
    opacity: 0;
  }

  to {
    transform: translateX(0);
    /*要素を元の位置に移動*/
    opacity: 1;
  }
}




/* ***********************************
   textanime
* *********************************** */

#topnew04 .textanime_base_top {
  display: flex;
  overflow: hidden;
  font-weight: bold;

}

@media screen and (max-width: 768px) {
  #topnew04 .textanime_base_top {
    letter-spacing: 0.4em !important;

    white-space: normal !important;
    /* 改行を許可 */
    flex-wrap: wrap !important;
    /* flexが有効ならwrapにする */
  }
}

#topnew04 .textanime_base_top span {
  display: block;
  transform: translate(0, 105%);
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
}

@media screen and (max-width: 768px) {

  #topnew04 .textanime_base_top span {

    transform: translate(0, 220%);

  }

}



#topnew04 .textanime_base {
  display: flex;
  overflow: hidden;

}

@media screen and (max-width: 768px) {
  #topnew04 .textanime_base {}
}

#topnew04 .textanime_base span {
  display: block;
  transform: translate(0, 105%);
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
}

#topnew04 .textanime_base2 {
  display: flex;
  overflow: hidden;
  color: #fff;
  font-size: 24px;
}

#topnew04 .textanime_base2 span {
  display: block;
  transform: translate(0, 105%);
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
}



@media all and (max-width:736px) {

  /*　画面サイズが以下の場合ここの記述が適用される　*/
  #topnew04 .textanime_base {}

  #topnew04 .textanime_base2 {
    font-size: 18px !important;
  }

  #topnew04 .textanime_base3 {
    font-size: 32px !important;
  }

  #topnew04 .textanime_base4 {
    font-size: 18px !important;
  }

  #topnew04 .textanime_base5 {
    font-size: 32px !important;
  }

  #topnew04 .textanime_base6 {
    font-size: 18px !important;
  }
}


#topnew04 .textanime_base3 {
  display: flex;
  overflow: hidden;
  color: #000;
  font-size: 48px;
  font-family: 'Josefin Sans', sans-serif;
}

#topnew04 .textanime_base3 span {
  display: block;
  transform: translate(0, 105%);
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
}

#topnew04 .textanime_base4 {
  display: flex;
  overflow: hidden;
  color: #000;
  font-size: 24px;
}

#topnew04 .textanime_base4 span {
  display: block;
  transform: translate(0, 105%);
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
}


#topnew04 .textanime_base5 {
  display: flex;
  margin-left: auto;
  margin-right: auto;
  width: 20em;
  text-align: center;
  overflow: hidden;
  color: #fff;
  font-size: 48px;
}

#topnew04 .textanime_base5 span {
  display: block;
  transform: translate(0, 105%);
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
}

#topnew04 .textanime_base6 {
  display: flex;
  overflow: hidden;
  color: #fff;
  font-size: 36px;

  display: inline-block;
  border-bottom: 1px solid #fff;
  white-space: nowrap
}

#topnew04 .textanime_base6 span {
  display: block;
  transform: translate(0, 105%);
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
}


#topnew04 .textanime_sub.-visible span {
  transform: translate(0, 0);
}

#topnew04 .textanimefont.-visible span {
  transform: translate(0, 0);
}

#topnew04 .textanimefont span:nth-child(2) {
  transition-delay: 0.06s;
}

#topnew04 .textanimefont span:nth-child(3) {
  transition-delay: 0.12s;
}

#topnew04 .textanimefont span:nth-child(4) {
  transition-delay: 0.18s;
}

#topnew04 .textanimefont span:nth-child(5) {
  transition-delay: 0.24s;
}

#topnew04 .textanimefont span:nth-child(6) {
  transition-delay: 0.30s;
}

#topnew04 .textanimefont span:nth-child(7) {
  transition-delay: 0.36s;
}

#topnew04 .textanimefont span:nth-child(8) {
  transition-delay: 0.42s;
}

#topnew04 .textanimefont span:nth-child(9) {
  transition-delay: 0.48s;
}

#topnew04 .textanimefont span:nth-child(10) {
  transition-delay: 0.54s;
}

#topnew04 .textanimefont span:nth-child(11) {
  transition-delay: 0.60s;
}

#topnew04 .textanimefont span:nth-child(12) {
  transition-delay: 0.66s;
}

#topnew04 .textanimefont span:nth-child(13) {
  transition-delay: 0.72s;
}

#topnew04 .textanimefont span:nth-child(14) {
  transition-delay: 0.78s;
}

#topnew04 .textanimefont span:nth-child(15) {
  transition-delay: 0.84s;
}

#topnew04 .textanimefont span:nth-child(16) {
  transition-delay: 0.90s;
}

#topnew04 .textanimefont span:nth-child(17) {
  transition-delay: 0.96s;
}

#topnew04 .textanimefont span:nth-child(18) {
  transition-delay: 1.02s;
}

#topnew04 .textanimefont span:nth-child(19) {
  transition-delay: 1.08s;
}

#topnew04 .textanimefont span:nth-child(20) {
  transition-delay: 1.14s;
}




/*========= 流れるテキスト ===============*/

/*全共通*/

.slide-in {
  overflow: hidden;
  display: inline-block;
}

.slide-in_inner {
  display: inline-block;

}

/*左右のアニメーション*/
.leftAnime {
  opacity: 0;
  /*事前に透過0にして消しておく*/
}

.slideAnimeLeftRight {
  animation-name: slideTextX100;
  animation-duration: 0.8s;
  animation-fill-mode: forwards;
  opacity: 0;
}

.he {

  height: 1000px;
}


@keyframes slideTextX100 {
  from {
    transform: translateX(-100%);
    /*要素を左の枠外に移動*/
    opacity: 0;
  }

  to {
    transform: translateX(0);
    /*要素を元の位置に移動*/
    opacity: 1;
  }
}

.slideAnimeRightLeft {
  animation-name: slideTextX-100;
  animation-duration: 0.8s;
  animation-fill-mode: forwards;
  opacity: 0;
}


@keyframes slideTextX-100 {
  from {
    transform: translateX(100%);
    /*要素を右の枠外に移動*/
    opacity: 0;
  }

  to {
    transform: translateX(0);
    /*要素を元の位置に移動*/
    opacity: 1;
  }
}



/* ***********************************
   手書き風文字
* *********************************** */

#svg-anime {
  width: 100%;
  margin: 0 auto 0 10px;
  display: flex;
  position: relative;
}

@media all and (max-width:736px) {
  /*　★Safari用CSSハック　*/
  //_::-webkit-full-page-media,_:future,:root #svg-anime{
  //  top: -150px;
  //  }
}

#mask {
  max-width: 100%;
  height: auto;

}



#mask .st0 {
  fill: none;
  stroke: #fff;
  stroke-width: 90;
  /*線の太さを指定する*/
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
  stroke-dasharray: 1500;
  /* 線の間隔を指定する */
  stroke-dashoffset: 1500;
  /* 線の位置を指定する */
}

/* 
#refund #top .obj{
  margin: 30px auto;
  padding: 20px;
  object-fit:contain;
  height: 40%;
} */

@media all and (max-width:736px) {
  #svg-anime {
    width: 100%;
    margin: auto;
  }
}


#top #mv .line {
  animation-name: bgextendAnimeline;
  animation-duration: 0.5s;
  animation-delay: 1.9s;
  animation-fill-mode: forwards;
  overflow: hidden;
  /*　はみ出た色要素を隠す　*/
  opacity: 0;
  position: absolute;
  left: 0px;
  top: 80%;
  width: 100%;
  margin: 0 auto;
}

@media all and (max-width:736px) {
  /*　★Safari用CSSハック　*/
  //_::-webkit-full-page-media,_:future,:root #top #mv .line{
  //  top: 175px;
  //  }
}

#top #mv .line img {
  width: 100%;
  height: auto;
}

@keyframes bgextendAnimeline {
  0% {
    transform-origin: left;
    transform: scaleX(1);
  }

  50% {
    transform-origin: left;
    transform: scaleX(1);
    opacity: 1;
  }

  100% {
    opacity: 1;
  }
}



/*==================================
  *{
    outline: 2px red solid;
  }
===================================*/