@import url("https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700;900&family=Noto+Sans+JP:wght@100;300;400;500;700;900&family=Roboto:wght@900&display=swap"); /* ---- main_visual ---- */

body {
  font-family: "HondaGlobalFontJP-Regular", sans-serif;
  font-weight: normal;
  font-feature-settings: "palt";
}
#graduate div.main_visual {
  position: relative;
  width: 100%;
  height: 100vh;
  max-height: 56.25vw;
  max-height: 60vw;
  /* ↑これは入れるか迷ってる */
  z-index: 2;
  overflow: hidden;
}
#graduate div.main_visual .slide {
  position: absolute;
  width: 71%;
  height: calc(100% - 76px);
  -webkit-clip-path: polygon(0% 100%, 100% 100%, 100% 0%, 100% 0%, 17% 0%);
  clip-path: polygon(0% 100%, 100% 100%, 100% 0%, 100% 0%, 17% 0%);
  right: 0;
  z-index: -1;
  top: 3vw;
}
#graduate div.main_visual p {
  position: relative;
}
#graduate div.main_visual img {
  max-width: 100%;
  height: 100%;
  width: 100%;
  object-fit: cover;
  object-position: 50% 15%;
}
#graduate div.main_visual img.photo2 {
  position: absolute;
  right: 0;
  top: 0;
  animation: fadeinout 8s 4s infinite;
  opacity: 0;
}
@keyframes fadeinout {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  75% {
    opacity: 0;
  }
}

@keyframes gaming {
  100% {
    background-position-x: 200%;
  }
}

@keyframes slide_in_01 {
  0% {
    transform: translateX(15%);
    opacity: 0;
  }
  85% {
    transform: translateX(15%);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes slide_in_02 {
  0% {
    transform: translateX(10%);
    opacity: 0;
  }
  35% {
    transform: translateX(-20%);
    opacity: 1;
  }
  65% {
    transform: translateX(-20%);
    opacity: 1;
  }
  100% {
    transform: translateX(-30%);
    opacity: 0;
  }
}

@keyframes slide_in_03 {
  0% {
    transform: translateX(10%);
    opacity: 0;
  }
  35% {
    transform: translateX(0%);
    opacity: 1;
  }
  65% {
    transform: translateX(0%);
    opacity: 1;
  }
  100% {
    transform: translateX(-10%);
    opacity: 0;
  }
}

@keyframes slide_in_text {
  0% {
    transform: translateX(10vw);
    opacity: 0;
  }
  35% {
    transform: translateX(0);
    opacity: 1;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
#graduate div.main_visual::before {
  position: absolute;
  content: "";
  width: 90%;
  height: calc(100% - 3vw - 76px);
  background: linear-gradient(
    -67deg,
    #fe997c 0%,
    #fe997c 22%,
    #f6f996 72%,
    #63d8d4 100%
  );
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 83% 100%, 0% 100%);
  clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 83% 100%, 0% 100%);
  left: 0;
  top: 0;
  z-index: -2;
}
#graduate div.main_visual h1 {
  position: absolute;
  left: 7%;
  top: 3vw;
}
#graduate div.main_visual h1 p {
  font-size: 7vw;
  font-family: "HondaGlobalFontENJP-ExBold","Noto Sans JP", sans-serif;
  font-weight: 900;
  width: fit-content;
  display: flex;
  flex-direction: row;
  align-items: center;
  line-height: 1.4;
}
#graduate div.main_visual h1 p:first-child::after {
  content: "Run.\A Create the future\A with motorcycles.";
  font-family: "Noto Sans JP", sans-serif;
  font-family: "HondaGlobalFontJP-Regular", sans-serif;
  font-size: 0.18em;
  color: #ca0813;
  white-space: pre;
  margin-left: -1em;
  margin-bottom: -1em;
  display: none;
}
#graduate div.main_visual h1 abbr {
  font-family: "Noto Sans JP", sans-serif;
  font-family: "HondaGlobalFontENJP-ExBold","Noto Sans JP", sans-serif;
  font-weight: 900;
  font-size: 1.25vw;
  color: #ca0813;
  position: absolute;
  left: calc(7% + 15vw);
  top: 3.5vw;
  transition-delay: 1.8s;
}
/* ---- main_visual ---- */

/* ---- CEO ---- */
#graduate div.MESSAGE_FROM_CEO {
  margin: 150px auto 0%;
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  z-index: 1;
}
#graduate div.MESSAGE_FROM_CEO::before {
  content: "CEO\A MESSAGE";
  font-family: "Roboto", sans-serif;
  font-family: "HondaGlobalFontJP-Regular", sans-serif;
  font-size: clamp(15px, 21vw, 385px);
  color: #d3d3d3;
  height: 3em;
  max-height: 1000px;
  font-family: "HondaGlobalFontENJP-ExBold","Noto Sans JP", sans-serif;
  font-weight: 900;
  white-space: pre;
  margin-left: -0.1em;
  line-height: 0.9em;
  position: absolute;
  z-index: -1;
  top: -150px;
  opacity: 0.3;
  background: linear-gradient(
    -180deg,
    #fe997c 0%,
    #fe997c 22%,
    #f6f996 72%,
    #63d8d4 100%
  );
  background: -webkit-linear-gradient(
    -180deg,
    #fe997c 0%,
    #fe997c 22%,
    #f6f996 72%,
    #63d8d4 100%
  );
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

#graduate div.MESSAGE_FROM_CEO h3 {
  order: 1;
  width: 40%;
  text-align: right;
  font-size: 20px;
  padding: 0.75em 3em;
  background: #c00;
  color: #fff;
  font-family: "HondaGlobalFontENJP-ExBold","Noto Sans JP", sans-serif;
  font-weight: 900;
  margin-right: 10%;
  height: fit-content;
  font-size: clamp(12px, 2vw, 13px);
}

#graduate div.MESSAGE_FROM_CEO h2 {
  order: 2;
  width: 50%;
  font-size: 4vw;
  font-size: clamp(20px, 4vw, 35px);
}
#graduate div.MESSAGE_FROM_CEO img {
  order: 3;
  width: 50%;
  object-fit: contain;
  margin-left: 0%;
  object-position: center;
  margin-bottom: -2%;
  max-height: 1000px;
}
#graduate div.MESSAGE_FROM_CEO div.message {
  order: 4;
  width: 50%;
  font-size: 1.8vw;
  padding: 1em;
  padding-right: 5vw;
  box-sizing: border-box;
  font-size: clamp(18px, 1.6vw, 18px);
}
#graduate div.MESSAGE_FROM_CEO div.message > p {
  font-weight: 400;
  line-height: 2;
  margin-bottom: 2em;
  max-width: 1000px;
}
#graduate div.MESSAGE_FROM_CEO div.message .CEO_post p {
  margin-bottom: 0.5em;
}
#graduate div.MESSAGE_FROM_CEO div.message .CEO_post b {
  font-size: 3.2vw;
  font-size: clamp(20px, 3.2vw, 30px);
  font-family: "HondaGlobalFontJP-Bold","Noto Sans JP", sans-serif;
  font-weight: 700;
}
/* ---- CEO ---- */

/* ---- five_MINUTES ---- */
#graduate .five_MINUTES {
  height: 100vw;
  /* -webkit-clip-path: polygon(
    0vw 20vw,
    100vw 0vw,
    100vw 0vw,
    101vw 80vw,
    0vw 100vw
  );
  clip-path: polygon(0vw 20vw, 100vw 0vw, 100vw 0vw, 100vw 80vw, 0vw 100vw); */
  padding: 20% 15%;
  background-image: url(/HMJ/recruit/images/5min_bg.jpg),
    linear-gradient(
      to left,
      #fe997c40 0%,
      #ff997d40 22%,
      #f6f99640 72%,
      #63d8d440 100%
    );
  background-position: 60% 80%;
  background-repeat: no-repeat;
  background-size: cover;
  background-blend-mode: luminosity;
  max-height: 100vh;
  height: unset;
  padding: 0 15%;
  padding-top: calc(10vw + 10vh);
  padding-bottom: calc(10vw + 10vh);
  position: relative;
  box-sizing: content-box;
  overflow: hidden;
}

#graduate .five_MINUTES::before {
  content: "";
  height: calc(10vw + 10vh);
  width: 100vw;
  background: linear-gradient(
    to right bottom,
    #fff 50%,
    #ffffff00 calc(50% + 1px)
  );
  position: absolute;
  left: 0;
  top: 0;
}

#graduate .five_MINUTES::after {
  content: "";
  height: calc(10vw + 10vh);
  width: 100vw;
  background: linear-gradient(
    to right bottom,
    #ffffff00 50%,
    #fff calc(50% + 1px)
  );
  position: absolute;
  left: 0;
  bottom: 0;
}
#graduate .five_MINUTES h3 {
  font-size: 2vw;
  color: #c00;
  font-family: "Lato", sans-serif;
  font-family: "HondaGlobalFontJP-Bold","Noto Sans JP", sans-serif;
  font-weight: bold;
  font-size: clamp(12px, 2vw, 13px);
}
#graduate .five_MINUTES h2 {
  font-size: 4vw;
  color: #000;
  font-family: "HondaGlobalFontJP-Bold","Noto Sans JP", sans-serif;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 0.7em;
  font-size: clamp(20px, 4vw, 35px);
}
#graduate .five_MINUTES p {
  font-size: 1.8vw;
  color: #000;
  font-weight: 400;
  line-height: 2;
  margin-bottom: 2em;
  font-size: clamp(18px, 1.6vw, 18px);
}
#graduate .five_MINUTES a.top_button_01 {
  font-size: 2vw;
  color: #000;
  font-family: "HondaGlobalFontJP-Bold","Noto Sans JP", sans-serif;
  font-weight: bold;
  line-height: 1;
  padding: 1.3em 2em 1.3em 2em;
  border: 0.1em solid #000;
  border-radius: 10em;
  display: inline-block;
  position: relative;
  font-size: clamp(18px, 1.6vw, 18px);
  transition: 0.2s cubic-bezier(0, 0, 1, 1);
  width: 100%;
  display: flex;
  flex-direction: row;
  align-items: center;
  grid-gap: 1em;
  max-width: 500px;
  justify-content: space-between;
  z-index: 2;
}
#graduate .five_MINUTES a.top_button_01::after {
  position: relative;
  content: "";
  width: 2.5em;
  height: 0.6em;
  background-image: url(/HMJ/recruit/images/arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  color: #000;
  min-width: 2.5em;
}
#graduate .five_MINUTES a.top_button_01:hover {
  scale: 1.05;
  z-index: 5;
  color: unset !important;
  text-decoration: unset;
}
/* ---- five_MINUTES ---- */

/* ---- INTERVIEW ---- */
#graduate .INTERVIEW {
  /* height: 100vw; */
  /* -webkit-clip-path: polygon(
    0vw 20vw,
    100vw 0vw,
    100vw 0vw,
    101vw 80vw,
    0vw 100vw
  );
  clip-path: polygon(0vw 20vw, 100vw 0vw, 100vw 0vw, 100vw 80vw, 0vw 100vw); */
  padding: 20% 15%;
  background: unset;
  position: relative;
  padding: 0 15%;
  z-index: 2;
}

#graduate .INTERVIEW h3 {
  font-size: 2vw;
  color: #c00;
  font-family: "Lato", sans-serif;
  font-family: "HondaGlobalFontJP-Bold","Noto Sans JP", sans-serif;
  font-weight: bold;
  font-size: clamp(12px, 2vw, 13px);
}
#graduate .INTERVIEW h2 {
  font-size: 4vw;
  color: #000;
  font-family: "HondaGlobalFontJP-Bold","Noto Sans JP", sans-serif;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 0.7em;
  font-size: clamp(20px, 4vw, 35px);
}
#graduate .INTERVIEW p {
  font-size: 1.8vw;
  color: #000;
  font-weight: 400;
  line-height: 2;
  margin-bottom: 2em;
  font-size: clamp(18px, 1.6vw, 18px);
}
#graduate .INTERVIEW a.top_button_02 {
  font-size: 2vw;
  color: #000;
  font-family: "HondaGlobalFontJP-Bold","Noto Sans JP", sans-serif;
  font-weight: bold;
  line-height: 1;
  padding: 1.3em 2em 1.3em 2em;
  border-radius: 10em;
  position: relative;
  font-size: clamp(18px, 1.6vw, 18px);
  transition: 0.2s cubic-bezier(0, 0, 1, 1);
  width: 100%;
  display: flex;
  flex-direction: row;
  align-items: center;
  grid-gap: 1em;
  max-width: 500px;
  justify-content: space-between;
  background-color: #fff;
  margin: 0 auto;
  box-shadow: 0 5px 20px #00000026;
}
#graduate .INTERVIEW a.top_button_02::after {
  position: relative;
  content: "";
  width: 2.5em;
  height: 0.6em;
  background-image: url(/HMJ/recruit/images/arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  color: #000;
  min-width: 2.5em;
}
#graduate .INTERVIEW a.top_button_02:hover {
  scale: 1.05;
  z-index: 5;
  color: unset !important;
  text-decoration: unset;
}
#graduate div.INTERVIEW::before {
  content: "INTER\A VIEW";
  font-family: "Roboto", sans-serif;
  font-family: "HondaGlobalFontJP-Regular", sans-serif;
  font-size: clamp(15px, 21vw, 385px);
  color: #d3d3d3;
  font-family: "HondaGlobalFontENJP-ExBold","Noto Sans JP", sans-serif;
  font-weight: 900;
  white-space: pre;
  margin-left: -0.1em;
  line-height: 0.9em;
  position: absolute;
  z-index: 0;
  top: -5vw;
  opacity: 0.3;
  right: -0.1em;
  text-align: right;
  background: linear-gradient(
    -180deg,
    #fe997c 0%,
    #fe997c 22%,
    #f6f996 72%,
    #63d8d4 100%
  );
  background: -webkit-linear-gradient(
    -180deg,
    #fe997c 0%,
    #fe997c 22%,
    #f6f996 72%,
    #63d8d4 100%
  );
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
/* ---- INTERVIEW ---- */

/* ---- RECRUIT_INFO ---- */
#graduate .RECRUIT_INFO {
  /* height: 100vw; */
  /* -webkit-clip-path: polygon(
    0vw 20vw,
    100vw 0vw,
    100vw 0vw,
    101vw 80vw,
    0vw 100vw
  );
  clip-path: polygon(0vw 20vw, 100vw 0vw, 100vw 0vw, 100vw 80vw, 0vw 100vw); */
  padding: 20% 15%;
  background-image: url(/HMJ/recruit/images/recruit_info_bg.jpg),
    linear-gradient(
      to left,
      #fe997c40 0%,
      #f6f99640 35%,
      #f6f99640 60%,
      #63d8d440 100%
    );
  background-repeat: no-repeat;
  background-size: cover;
  background-position: right;
  background-blend-mode: soft-light;
  padding-top: calc(10vw + 10vh);
  padding-bottom: calc(10vw + 10vh);
  position: relative;
}

#graduate .RECRUIT_INFO::before {
  content: "";
  height: calc(10vw + 10vh);
  width: 100vw;
  background: linear-gradient(
    to right bottom,
    #fff 50%,
    #ffffff00 calc(50% + 1px)
  );
  position: absolute;
  left: 0;
  top: 0;
}

#graduate .RECRUIT_INFO::after {
  content: "";
  height: calc(10vw + 10vh);
  width: 100vw;
  background: linear-gradient(
    to right bottom,
    #ffffff00 50%,
    #fff calc(50% + 1px)
  );
  position: absolute;
  left: 0;
  bottom: 0;
}
#graduate .RECRUIT_INFO h3 {
  font-size: 2vw;
  color: #c00;
  font-family: "Lato", sans-serif;
  font-family: "HondaGlobalFontJP-Regular", sans-serif;
  font-weight: bold;
  font-size: clamp(12px, 2vw, 13px);
}
#graduate .RECRUIT_INFO h2 {
  font-size: 4vw;
  color: #000;
  font-family: "HondaGlobalFontJP-Bold","Noto Sans JP", sans-serif;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 0.7em;
  font-size: clamp(20px, 4vw, 35px);
}
#graduate .RECRUIT_INFO p {
  font-size: 1.8vw;
  color: #000;
  font-weight: 400;
  line-height: 2;
  margin-bottom: 2em;
  font-size: clamp(18px, 1.6vw, 18px);
}
#graduate .RECRUIT_INFO .more_hmj {
  display: flex;
  justify-content: center;
  grid-gap: 1em;
  flex-wrap: wrap;
}
#graduate .RECRUIT_INFO a {
  font-size: 2vw;
  color: #000;
  font-family: "HondaGlobalFontJP-Bold","Noto Sans JP", sans-serif;
  font-weight: bold;
  line-height: 1;
  padding: 2em 1em;
  border-radius: 1em;
  background: #fff;
  display: inline-block;
  position: relative;
  font-size: clamp(18px, 1.6vw, 18px);
  width: 32%;
  transition: 0.2s cubic-bezier(0, 0, 1, 1);
  box-shadow: 0.2em 0.2em 0 #a8babb4d;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  min-width: 200px;
  max-width: 400px;
}
#graduate .RECRUIT_INFO a:first-child::after {
  position: relative;
  content: "";
  width: 1em;
  height: 0.7em;
  background-image: url(/HMJ/recruit/images/right_angle_bracket_symbol.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  color: #000;
}
#graduate .RECRUIT_INFO a.external_links:after,
#graduate .RECRUIT_INFO a:nth-child(2):after {
  position: relative;
  content: "";
  width: 1em;
  height: 0.7em;
  background-image: url(/HMJ/recruit/images/external_links.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  color: #000;
}
x#graduate .RECRUIT_INFO a:nth-child(3) {
  background: #f5f5f5;
  color: #a9a9a9;
}
x#graduate .RECRUIT_INFO a:nth-child(3):after {
  position: relative;
  content: "Coming soon";
  font-size: 0.5em;
  color: #a9a9a9;
}
#graduate .RECRUIT_INFO a:hover {
  scale: 1.05;
  z-index: 5;
  color: unset !important;
  text-decoration: unset;
}
#graduate .RECRUIT_INFO a.nolink:hover {
  scale: 1;
  z-index: 5;
  color: #a9a9a9 !important;
  text-decoration: unset;
}

/* ---- RECRUIT_INFO ---- */

/* ---- NEWS ---- */
#graduate .NEWS {
  /* height: 100vw; */
  /* -webkit-clip-path: polygon(
    0vw 20vw,
    100vw 0vw,
    100vw 0vw,
    101vw 80vw,
    0vw 100vw
  );
  clip-path: polygon(0vw 20vw, 100vw 0vw, 100vw 0vw, 100vw 80vw, 0vw 100vw); */
  padding: 0 15% 10%;
  background-color: #ffffff;
}

#graduate .NEWS h3 {
  font-size: 2vw;
  color: #c00;
  font-weight: bold;
  font-family: "Lato", sans-serif;
  font-family: "HondaGlobalFontJP-Regular", sans-serif;
  font-size: clamp(12px, 2vw, 13px);
  text-align: center;
}
#graduate .NEWS h2 {
  font-size: 4vw;
  color: #000;
  font-family: "HondaGlobalFontJP-Bold","Noto Sans JP", sans-serif;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 0.7em;
  font-size: clamp(20px, 4vw, 35px);
  text-align: center;
}
#graduate .NEWS p {
  font-size: 1.8vw;
  color: #000;
  font-weight: 400;
  line-height: 2;
  margin-bottom: 2em;
  font-size: clamp(18px, 1.6vw, 18px);
}

#graduate .NEWS ul li a {
  display: flex;
  margin-bottom: 1em;
  padding-bottom: 1em;
  position: relative;
}

#graduate .NEWS ul li a::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 0.1em;
  background: var(--gradation);
  bottom: 0;
}

#graduate .NEWS ul li a p {
  margin-bottom: unset;
  width: calc(100% - 9em);
}

#graduate .NEWS ul li a p:first-child {
  width: 9em;
}
#graduate .NEWS a:hover {
  scale: 1;
  z-index: 5;
  text-decoration: unset;
}

/* ---- NEWS ---- */

/* #graduate div.ENTRY,
#graduate div.sp_entry,
#graduate div.NEWS,
#graduate div.RECRUIT_INFO,
#graduate div.INTERVIEW,
#graduate div.five_MINUTES {
  margin: 0 auto;
  clip-path: unset;
  -webkit-clip-path: unset;
  height: unset;
  padding: 16px;
}
#graduate .five_MINUTES a {
  width: 100%;
  padding: 1.3em 2em;
} */

/* ↓↓↓2025年2月更新↓↓↓ */
.MV_2025 {
  width: 100svw;
  aspect-ratio: 40/18;
  position: relative;
}
.MV_2025 .rainbow_box {
  position: absolute;
  display: flex;
  flex-direction: column;
  gap: 1%;
  /* padding-top: 3.5svh; */
  justify-content: center;
}
.MV_2025 .rainbow_box > div {
  width: 100%;
  height: calc(22% - 0%);
  position: relative;
  background: linear-gradient(
      to right,
      #fe997c,
      #f6f996,
      #63d8d4,
      #f6f996,
      #fe997c
    )
    0% center / 200%;
  animation: gaming 10s linear infinite;
}
.MV_2025 .rainbow_box + div {
  z-index: 5;
}
.MV_2025 .rainbow_box > div.rainbow01 {
  animation-delay: calc(-0.75s * 0);
}
.MV_2025 .rainbow_box > div.rainbow02 {
  animation-delay: calc(-0.75s * 1);
}
.MV_2025 .rainbow_box > div.rainbow03 {
  animation-delay: calc(-0.75s * 2);
}
.MV_2025 .rainbow_box > div.rainbow04 {
  animation-delay: calc(-0.75s * 3);
}

.MV_2025 > div {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

.MV_2025 > div {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.MV_2025 > div img {
  width: 100%;
  height: 100%;
  position: absolute;
  /* opacity: 0; */
  left: unset;
  top: 0;
  right: 0;
  bottom: unset;
  animation: slide_in_01 calc(2s * 3);
  animation-delay: calc(-1s);
  animation-iteration-count: 1;
  object-fit: contain;
  object-position: left bottom;
  aspect-ratio: 17 / 16;
  width: unset;
  object-fit: cover;
  /* animation-play-state: paused !important; */
}

.MV_2025 > div img[src*="woman"] {
  animation: slide_in_01 calc(2s * 3 + 0.5s);
  animation-delay: calc(-1s);
}

.MV_2025 > div img[src*="bike"] {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: right bottom;
  position: absolute;
  left: 0;
  top: unset;
  right: unset;
  bottom: -4%;
  opacity: 0;
  animation: slide_in_02 calc(2.5s * 1);
  aspect-ratio: unset;
  object-fit: contain;
  animation-iteration-count: 1; /*アニメーションを3回再生する*/
  /* animation-play-state: paused !important; */
}

.MV_2025 > div img[src*="bike_woman"] {
  animation: slide_in_03 calc(2.5s * 1);
  animation-delay: calc(2s * 1);
}

#graduate .MV_2025 > h1 p {
  transform: translateX(-50%);
  opacity: 0;
  /* transition-timing-function: cubic-bezier(0.229, 1.51, 2, 1.1); */
}

#graduate .MV_2025 > h1 {
  position: absolute;
  left: 7%;
  top: 50%;
  transform: translatey(-65%);
  z-index: 9;
  text-shadow: 0 0 0.25em #fff, 0 0 0.5em #fff;
}

#graduate .MV_2025 > h1 p {
  font-size: 7vw;
  font-family: "HondaGlobalFontENJP-ExBold","Noto Sans JP", sans-serif;
  font-weight: 900;
  width: fit-content;
  display: flex;
  flex-direction: row;
  align-items: center;
}

#graduate .MV_2025 > h1 p:first-child::after {
  content: "Run.\A Create the future\A with motorcycles.";
  font-family: "Noto Sans JP", sans-serif;
  font-family: "HondaGlobalFontJP-Regular", sans-serif;
  font-size: 0.18em;
  color: #ca0813;
  white-space: pre;
  margin-left: -1em;
  margin-bottom: -1em;
  display: none;
}

#graduate .MV_2025 > h1 abbr {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.25vw;
  font-family: "HondaGlobalFontENJP-ExBold","Noto Sans JP", sans-serif;
  font-weight: 900;
  color: #ca0813;
  position: absolute;
  left: calc(7% + 15vw);
  top: 3.5vw;
  /* transition-duration: unset; */
}

#graduate .MV_2025 > h1 p,
#graduate .MV_2025 > h1 abbr {
  transform: translateX(-50%);
  opacity: 0;
  animation: slide_in_text calc(2.5s * 1);
  animation-fill-mode: forwards;
  transition-duration: 1.5s;
}

#graduate .MV_2025 > h1 p:nth-child(1) {
  /* animation: 2.5s; */
  animation-delay: calc(2s * 0);
}

#graduate .MV_2025 > h1 p:nth-child(2) {
  /* animation: 2.5s; */
  animation-delay: calc(2s * 1);
}

#graduate .MV_2025 > h1 p:nth-child(3) {
  /* animation: 2.5s; */
  animation-delay: calc(2s * 2);
}

#graduate .MV_2025 > h1 abbr {
  /* animation: 2.5s; */
  animation-delay: calc(2s * 2 + 0.5s);
}
/* ↑↑↑2025年2月更新↑↑↑ */

@media screen and (max-width: 1000px) {
  #graduate div.main_visual h1 abbr {
    top: 2.85vw;
  }
  #graduate div.NEWS,
  #graduate div.RECRUIT_INFO,
  #graduate div.INTERVIEW,
  #graduate div.five_MINUTES {
    padding: 0 5%;
  }
  #graduate div.RECRUIT_INFO,
  #graduate div.five_MINUTES {
    padding-top: calc(12vw + 12vh);
    padding-bottom: calc(12vw + 12vh);
  }
  #graduate div.RECRUIT_INFO {
    margin-top: calc(-6vw - 6vh - 60px);
  }
  #graduate div.NEWS,
  #graduate div.INTERVIEW {
    padding-top: calc(2vw + 2vh);
    padding-bottom: calc(2vw + 2vh);
    z-index: 2;
  }
  #graduate div.MESSAGE_FROM_CEO {
    margin-top: 100px;
    flex-direction: column;
  }
  #graduate div.MESSAGE_FROM_CEO::before {
    top: -100px;
  }
  #graduate div.MESSAGE_FROM_CEO h3 {
    width: 70%;
    padding: 0.75em 1em;
    max-width: 500px;
    font-size: clamp(12px, 2vw, 13px);
    margin: unset;
  }
  #graduate div.MESSAGE_FROM_CEO img {
    width: 90%;
    margin: 0 auto;
    max-width: 500px;
  }
  #graduate div.MESSAGE_FROM_CEO h2 {
    font-size: clamp(24px, 5vw, 35px);
    width: 100%;
    text-align: center;
    padding: 1em;
  }
  #graduate div.MESSAGE_FROM_CEO div.message {
    width: 100%;
    font-size: 16px;
  }
  #graduate div.MESSAGE_FROM_CEO div.message .CEO_post {
    text-align: right;
  }
  #graduate div.MESSAGE_FROM_CEO div.message .CEO_post b {
    font-size: 24px;
  }
  #graduate .INTERVIEW p {
    font-size: clamp(15px, 1.4vw, 17px);
  }
}

.MV_2025 .rainbow_box + div .pc {
  display: block;
}
.MV_2025 .rainbow_box + div .sp {
  display: none;
}
@media screen and (max-width: 768px) {
  @media (max-aspect-ratio: 3/3.9) {
    .MV_2025 .rainbow_box + div .pc {
      display: none;
    }
    .MV_2025 .rainbow_box + div .sp {
      display: block;
      width: 90%;
      aspect-ratio: 17 / 15;
      height: unset;
    }
    .MV_2025 {
      width: 100svw;
      max-height: calc(100svh - 100px);
      aspect-ratio: 3/4;
      position: relative;
      /* overflow: hidden; */
    }
    .MV_2025 .rainbow_box > div {
      height: calc(14.25svh - 1%);
    }
    .MV_2025 .rainbow_box + div {
      top: 54vw;
      left: 10%;
      height: unset;
      position: absolute;
    }
    .MV_2025 > div {
      height: 60%;
    }
    .MV_2025 .rainbow_box {
      padding-top: 0;
      position: relative;
      height: 100%;
    }
    #graduate .MV_2025 > h1 p {
      font-size: 10vw;
    }
    #graduate .MV_2025 > h1 abbr {
      font-size: 2.25vw;
      left: calc(7% + 23vw);
    }
    .MV_2025 > div img[src*="bike"] {
      animation: slide_in_03 calc(2.5s * 1);
      aspect-ratio: 17 / 15;
      height: unset;
      top: 0;
      bottom: unset;
    }
    .MV_2025 > div img[src*="bike_woman"] {
      animation: slide_in_03 calc(2.5s * 1);
      animation-delay: calc(2s * 1);
    }
    #graduate .MV_2025 > h1 {
      top: 3%;
      transform: unset;
    }
    .MV_2025 .rainbow_box + div {
    }
    .MV_2025 .rainbow_box > div {
      height: calc(25% - 0%);
    }
  }
}

@media screen and (max-width: 640px) {
  #graduate div.main_visual h1 abbr {
    font-size: 1.8vw;
    line-height: 1.4;
    top: 1.25vw;
  }
}

@media screen and (max-width: 500px) {
  #graduate div.main_visual {
    min-height: calc(100vh - 130px);
    min-height: unset;
    height: auto;
    aspect-ratio: 1 / 1;
    max-height: unset;
  }
  #graduate div.main_visual::before {
    height: calc(100% - 3vw - 76px);
    clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 100% 75%, 0% 100%);
    width: 100%;
  }
  #graduate div.main_visual .slide {
    clip-path: polygon(0% 100%, 100% 100%, 100% 0%, 100% 20%, 0% 45%);
    object-position: 80% 50%;
    top: unset;
    bottom: 0;
    width: 85%;
    height: auto;
  }
  #graduate div.main_visual img {
    height: calc(100vh - 43vw - 130px);
    object-position: right;
    height: auto;
    width: 140%;
    max-width: unset;
    left: -40%;
    position: relative;
  }
  #graduate div.main_visual h1 p {
    font-size: 11.5vw;
    line-height: 1.2;
  }
  #graduate div.main_visual h1 abbr {
    left: calc(7% + 24vw);
    top: 1.15vw;
    font-size: 2.85vw;
    line-height: 1.3;
  }
  #graduate .NEWS ul li a {
    flex-direction: column;
  }
  #graduate .NEWS ul li a p:first-child {
    line-height: 1em;
    padding-bottom: 0.5em;
  }
  #graduate .NEWS ul li a p {
    width: 100%;
    line-height: 1.6;
  }
  #graduate div.INTERVIEW::before {
    top: 0;
  }
}
@media (min-aspect-ratio: 8/5) {
  @keyframes slide_in_02 {
    0% {
      transform: translateX(10%);
      opacity: 0;
    }
    35% {
      transform: translateX(-60%);
      opacity: 1;
    }
    65% {
      transform: translateX(-60%);
      opacity: 1;
    }
    100% {
      transform: translateX(-70%);
      opacity: 0;
    }
  }
  .MV_2025 {
    aspect-ratio: unset;
    height: calc(100svh - 118px);
    max-height: 70svh;
  }
  #graduate .MV_2025 > h1 {
    margin-right: 12svw;
  }

  #graduate .MV_2025 > h1 p {
    font-size: 9svh;
  }

  #graduate .MV_2025 > h1 abbr {
    left: calc(8% + 12svh * 2);
    top: 2%;
    font-size: 3svh;
  }
  .MV_2025 .rainbow_box + div {
    left: calc(55%);
    margin-left: -13svw;
  }

  .MV_2025 > div img {
    aspect-ratio: unset;
    object-position: left bottom;
    left: 0;
    right: unset;
  }

  .MV_2025 > div img[src*="bike"] {
    aspect-ratio: unset;
    object-position: left bottom;
    aspect-ratio: 15/11;
    width: unset;
  }
  #graduate .MV_2025 > h1 {
    left: unset;
    right: 40%;
  }
}
@media (min-aspect-ratio: 16/9) {
}
