@import url('https://fonts.googleapis.com/css2?family=Jost:wght@100..900&family=Noto+Sans+JP:wght@100..900&family=Roboto:wght@900&display=swap');

:root {
  --pc-width: 1920;
  --tb-width: 1024;
  --sp-width: 780;

  --pc-unit: calc(100vw / 1920);
  --tb-unit: calc(100vw / 1024);
  --sp-unit: calc(100vw / 780);
  --min-scale: 0.65;

  --color-white: #FFFFFF;
  --color-black: #000000;
  --color-gray-light: #F1F1F1;
  --color-orange-light: #FF9147;
  --color-skyblue-light: #B5D0FF;
  --color-blue-light: #5C80FF;

  --color-primary-blue: #0028A8;
  --color-primary-skyblue: #468AFF;
  --color-primary-orange: #FF7100;

  --weight-extralight: 200;
  --weight-light: 300;
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
  --weight-black: 900;
}

/* Reset & Base */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: "Jost", "Noto Sans JP", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-weight: var(--weight-medium);
  text-align: justify;
  letter-spacing: 0.06em;
  color: var(--color-primary-blue);
  background-color: var(--color-white);
  width: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
}

button,
input,
select,
textarea {
  font-family: inherit;
}

a {
  text-decoration: none;
  color: inherit;
  transition: all 0.3s ease;
}

a:not([href]), 
a[href=""], 
a[href="#"] {
  pointer-events: none; 
  cursor: default; 
}

ul {
  list-style: none;
}

img {
  width: 100%;
  height: auto;
}

.container {
  width: 100%;
  max-width: 1920px;
  position: relative;
  padding-top: 83px;
  margin: 0 auto;
}

.wrap {
  width: clamp(calc(1280px * var(--min-scale)), calc(1280 * var(--pc-unit)), 1280px);
  box-sizing: border-box;
  margin: 0 auto;
}

h1, h2, h3, h4, h5 {
  font-weight: inherit;
}

.u-pc-only {
  display: block !important;
}

.u-tb-only {
  display: none !important;
}

.u-sp-only {
  display: none !important;
}

.deco-line {
  position: absolute;
  z-index: 1;
  display: block;
  pointer-events: none;
  mix-blend-mode: multiply;
}

.deco-line img {
  width: 100%;
  height: auto;
  display: block;
}

.deco-line.from-top {
  top: clamp(-219px, calc(-219 * var(--pc-unit)), calc(-219px * var(--min-scale)));
  right: clamp(-487px, calc(-487 * var(--pc-unit)), calc(-487px * var(--min-scale)));
  width: clamp(calc(1347px * var(--min-scale)), calc(1347 * var(--pc-unit)), 1347px);
}

.deco-line.from-top img {
  clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 0% 0%);
}

.deco-line.from-bottom img {
  clip-path: polygon(0% 100%, 100% 100%, 100% 100%, 0% 100%);
}

.deco-line.position-front {
  z-index: 2;
}

.deco-line.position-back {
  z-index: 0;
}

.common-section {
  position: relative;
  width: 100%;
  margin: 0 auto;
  padding: clamp(calc(150px * var(--min-scale)), calc(150 * var(--pc-unit)), 150px) 0;
}

body.animated .deco-line.from-top.stop img {
  animation: deco_line_slide_in_top 1.2s cubic-bezier(0.65, 0.05, 0.35, 1) forwards;
}

body.animated .deco-line.from-bottom.stop img {
  animation: deco_line_slide_in_bottom 1.2s cubic-bezier(0.65, 0.05, 0.35, 1) forwards;
}

body.top-page.animated .deco-line.from-top.stop img {
  animation: deco_line_slide_in_top 2.0s cubic-bezier(0.65, 0.05, 0.35, 1) forwards;
}

body.top-page.animated .deco-line.from-bottom.stop img {
  animation: deco_line_slide_in_bottom 2.0s cubic-bezier(0.65, 0.05, 0.35, 1) forwards;
}


@media screen and (max-width: 1024px) {
  .wrap {
    width: calc(924 * var(--tb-unit));
  }

  .common-section {
    padding: clamp(calc(100px * var(--min-scale)), calc(100 * var(--pc-unit)), 100px) 0;
  }

  .u-tb-only {
    display: block !important;
  }
}

@media screen and (max-width: 768px) {
  html { 
    overflow-x: hidden;
  }

  .container {
    min-width: 320px;
    padding-top: calc(127 * var(--sp-unit));
  }

  .wrap {
    width: calc(680 * var(--sp-unit));
  }

  .u-pc-only {
    display: none !important;
  }

  .u-sp-only {
    display: block !important;
  }

  .deco-line.from-top {
    top: calc(-219 * var(--sp-unit));
    right: calc(-487 * var(--sp-unit));
    width: calc(1347 * var(--sp-unit));
  }

  .common-section {
    padding: calc(75 * var(--sp-unit)) 0;
  }
}

/* animation */
@keyframes arrowMove {
  0% {
    -webkit-transform: translate(0%,0%);
    transform: translate(0%,0%)
  }
  30% {
    -webkit-transform: translate(110%,0);
    transform: translate(110%,0)
  }
  30.1% {
    -webkit-transform: translate(-110%,0);
    transform: translate(-110%,0)
  }
  to {
    -webkit-transform: translate(0%,0%);
    transform: translate(0%,0%)
  }
}

@keyframes logo_fade {
  50% { 
    opacity: 1;
    transform: scale(1);
  }
  100% { 
    opacity: 0;
    transform: scale(1.02);
  }
}

@keyframes deco_line_slide_in_top {
  0% {
    clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 0% 0%);
  }
  100% {
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
  }
}

@keyframes deco_line_slide_in_bottom {
  0% {
    clip-path: polygon(0% 100%, 100% 100%, 100% 100%, 0% 100%);
  }
  100% {
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
  }
}

@keyframes fv_image_anime {
  0% {
    -webkit-mask-position: -100% 0;
  }
  100% {
    -webkit-mask-position: 100% 0;
  }
}

@keyframes deco_slider {
  0% {
    opacity: 0;
    clip-path: inset(0 100% 0 0);
  }
  100% {
    opacity: 1;
    clip-path: inset(0 0 0 0);
  }
}

/* header */
.site-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 83px;
  z-index: 100;
  padding: 0 50px;
  background-color: var(--color-white); 
}

.site-header .header-inner {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.site-header .logo {
  display: flex;
  align-items: center;
}

.site-header .logo a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 1px;
}

.site-header .logo img {
  width: 175px;
  height: auto;
  display: block;
}

.site-header .logo-tag {
  font-family: "Roboto", sans-serif;
  font-weight: var(--weight-black);
  font-size: 17px;
  line-height: 1.2;
  position: relative;
}

.site-header .header-utilities {
  display: flex;
  align-items: center;
  gap: 55px;
}

.site-header .quick-menu {
  transition: all 0.3s ease;
}

.site-header:has(.menu-trigger.active) .quick-menu {
  opacity: 0;
  pointer-events: none;
}

.site-header .quick-menu ul {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 20px;
  
}

.site-header .quick-menu ul li {
  font-size: 17px;
}

.site-header .quick-menu ul li a:hover {
  color: var(--color-primary-skyblue);
}

.site-header .btn-header-entry {
  position: fixed;
  right: 30px;
  bottom: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--color-primary-blue);
  color: var(--color-white);
  font-size: 28px;
  letter-spacing: 0.14em;
  width: 159px;
  height: 59px;
  border-radius: 39px;
  transition: all 0.3s ease;
}

.site-header .btn-header-entry:hover {
  background: var(--color-primary-skyblue);
}

.site-header .menu-trigger {
  background: none;
  border: none;
  background: var(--color-primary-blue);
  color: var(--color-black);
  width: 75px;
  height: 44px;
  border-radius: 22px;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
  transition: all 0.3s ease;
}

.site-header .menu-trigger:hover {
  background: var(--color-primary-skyblue);
}

.site-header .menu-trigger span {
  display: block;
  width: 34px;
  height: 2px;
  background-color: var(--color-white);
  position: absolute;
  left: 19px;
  transition: all 0.3s ease;
}

.site-header .menu-trigger span:nth-child(1) {
  top: 17px;
}

.site-header .menu-trigger span:nth-child(2) {
  top: 25px;
}

.site-header .menu-trigger.active span:nth-child(1) {
  top: 22px;
  transform: rotate(15deg);
}

.site-header .menu-trigger.active span:nth-child(2) {
  top: 22px;
  transform: rotate(-15deg);
}

.site-header .global-menu {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: #ECF3FF;
  z-index: -1;
  display: none;
  opacity: 0;
  transition: all 0.3s ease;
  overflow: visible;
}

.site-header .global-menu.is-open {
  display: block;
  opacity: 1;
}

.site-header .menu-container {
  width: clamp(calc(1370px * var(--min-scale)), calc(1370 * var(--pc-unit)), 1370px);
  height: 100%;
  margin: 0 auto;
  display: flex;
  align-items: center;
}

.site-header .menu-content-wrap {
  width: auto;
  margin: 0 auto;
  position: relative;
}

.site-header .menu-columns-wrap {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: clamp(calc(80px * var(--min-scale)), calc(80 * var(--pc-unit)), 80px);
  width: 100%;
}

.site-header .menu-col {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  width: clamp(calc(403px * var(--min-scale)), calc(403 * var(--pc-unit)), 403px);
}

.site-header .menu-nav-item {
  width: 100%;
  border-top: 1px solid #CCD4EE;
  font-size: clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px);
  letter-spacing: 0.04em;
}

.site-header .menu-nav-item:last-child {
  border-bottom: 1px solid #CCD4EE;
}

.site-header .menu-nav-item > a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 clamp(calc(15px * var(--min-scale)), calc(15 * var(--pc-unit)), 15px);
}

.site-header .menu-nav-item > a:hover {
  color: var(--color-primary-skyblue);
}

.site-header .menu-nav-item span {
  padding: clamp(calc(40px * var(--min-scale)), calc(40 * var(--pc-unit)), 40px) 0;
}

.site-header .menu-nav-item .arrow-icon {
  display: flex;
  width: clamp(calc(23px * var(--min-scale)), calc(23 * var(--pc-unit)), 23px);
  height: clamp(calc(6px * var(--min-scale)), calc(6 * var(--pc-unit)), 6px);
  overflow: hidden;
}

.site-header .menu-nav-item > a:hover .arrow-icon img {
  animation: arrowMove 1s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.site-header .menu-nav-item.item-has-sub {
  padding: 0 clamp(calc(15px * var(--min-scale)), calc(15 * var(--pc-unit)), 15px);
}

.site-header .menu-nav-item.item-has-sub span {
  display: inline-block;
  padding: clamp(calc(40px * var(--min-scale)), calc(40 * var(--pc-unit)), 40px) 0;
}

.site-header .sub-nav-wrap {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: clamp(calc(45px * var(--min-scale)), calc(45 * var(--pc-unit)), 45px);
  padding-bottom: clamp(calc(30px * var(--min-scale)), calc(30 * var(--pc-unit)), 30px);
}

.site-header .sub-nav li {
  font-size: clamp(calc(18px * var(--min-scale)), calc(18 * var(--pc-unit)), 18px);
  font-weight: var(--weight-light);
  line-height: 2.6;
}

.site-header .sub-nav li::before {
  content: '\30FB';
}

.site-header .sub-nav li > a:hover {
  color: var(--color-primary-skyblue);
}

@media screen and (max-width: 1024px) {
  .site-header {
    padding: 0 20px;
  }
  .site-header .menu-container {
    width: auto;
  }

  .site-header .header-utilities {
    gap: 20px;
  }

  .site-header .quick-menu ul li {
    font-size: 13px;
  }

  .site-header .menu-col {
    width: clamp(calc(370px * var(--min-scale)), calc(370 * var(--pc-unit)), 370px);
  }

  .site-header .menu-columns-wrap {
    gap: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
  }
}

@media screen and (max-width: 768px) {
  .site-header {
    height: calc(127 * var(--sp-unit));
    padding: 0 calc(36 * var(--sp-unit));
  }

  .site-header .logo a {
    gap: 0;
  }

  .site-header .logo img {
    width: calc(231 * var(--sp-unit));
  }

  .site-header .logo-tag {
    font-size: calc(23 * var(--sp-unit));
  }

  .site-header .header-utilities {
    gap: calc(25 * var(--sp-unit));
  }

  .site-header .quick-menu {
    display: none;
  }

  .site-header .btn-header-entry {
    position: relative;
    right: auto;
    bottom: auto;
    font-size: calc(32 * var(--sp-unit));
    width: calc(199 * var(--sp-unit));
    height: calc(75 * var(--sp-unit));
    border-radius: calc(37 * var(--sp-unit));
  }

  .site-header .menu-trigger {
    width: calc(126 * var(--sp-unit));
    height: calc(75 * var(--sp-unit));
    border-radius: calc(37 * var(--sp-unit));
  }

  .site-header .menu-trigger span {
    display: block;
    width: calc(58 * var(--sp-unit));
    height: 2px;
    left: calc(32 * var(--sp-unit));
  }

  .site-header .menu-trigger span:nth-child(1) {
    top: calc(30 * var(--sp-unit));
  }

  .site-header .menu-trigger span:nth-child(2) {
    top: calc(42 * var(--sp-unit));
  }

  .site-header .menu-trigger.active span:nth-child(1) {
    top: calc(37 * var(--sp-unit));
  }

  .site-header .menu-trigger.active span:nth-child(2) {
    top: calc(37 * var(--sp-unit));
  }

  .site-header .menu-container {
    width: 100%;
    padding: calc(200 * var(--sp-unit)) calc(45 * var(--sp-unit)) calc(100 * var(--sp-unit));
    align-items: flex-start;
    overflow: auto;
  }

  .site-header .menu-columns-wrap {
    gap: calc(65 * var(--sp-unit));
  }

  .site-header .menu-col {
    width: calc(290 * var(--sp-unit));
  }

  .site-header .menu-nav-item {
    font-size: calc(29 * var(--sp-unit));
  }

  .site-header .menu-nav-item > a {
    min-height: calc(168 * var(--sp-unit));
    padding: 0 calc(10 * var(--sp-unit));
  }

  .site-header .menu-nav-item span {
    padding: calc(40 * var(--sp-unit)) 0;
  }

  .site-header .menu-nav-item .arrow-icon {
    width: calc(32 * var(--sp-unit));
    height: calc(10 * var(--sp-unit));
  }

  .site-header .menu-nav-item.item-has-sub {
    padding: 0 calc(10 * var(--sp-unit));
  }

  .site-header .menu-nav-item.item-has-sub span {
    padding: calc(40 * var(--sp-unit)) 0;
  }

  .site-header .sub-nav-wrap {
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
    padding-bottom: calc(30 * var(--sp-unit));
  }

  .site-header .sub-nav li {
    font-size: calc(25 * var(--sp-unit));
    letter-spacing: 0.04em;
    line-height: 2.45;
    white-space: nowrap;
    padding-left: 1em;
    text-indent: -1em;
  }
}

/* footer */
.site-footer {
  background-color: #ECF3FF;
  width: 100%;
  padding: clamp(calc(140px * var(--min-scale)), calc(140 * var(--pc-unit)), 140px) 0;
}

.site-footer .footer-container {
  width: 100%;
  max-width: clamp(calc(1546px * var(--min-scale)), calc(1546 * var(--pc-unit)), 1546px);
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.site-footer .footer-nav {
  width: 100%;
}

.site-footer .menu-columns-wrap {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
}

.site-footer .menu-col {
  padding: 0 clamp(calc(70px * var(--min-scale)), calc(70 * var(--pc-unit)), 70px);
  border-right: 1.5px solid #0041AA;
}

.site-footer .menu-col:first-child {
  padding-left: 0;
}

.site-footer .menu-col:last-child {
  padding-right: 0;
  border-right: 0;
}

.site-footer .menu-col > .menu-nav-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  font-size: clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px);
  font-weight: var(--weight-bold);
  letter-spacing: 0.05em;
  margin-bottom: clamp(calc(45px * var(--min-scale)), calc(45 * var(--pc-unit)), 45px);
  white-space: nowrap;
}

.site-footer .menu-col > .menu-nav-item:last-child {
  margin-bottom: clamp(calc(10px * var(--min-scale)), calc(10 * var(--pc-unit)), 10px);
}

.site-footer .menu-col:first-child > .menu-nav-item:first-child {
  font-weight: var(--weight-semibold);
}

.site-footer .menu-col > .menu-nav-item a:hover {
  color: var(--color-primary-skyblue);
}

.site-footer .menu-nav-item.item-interview span {
  display: inline-block;
  margin-bottom: clamp(calc(45px * var(--min-scale)), calc(45 * var(--pc-unit)), 45px);
}

.site-footer .menu-nav-item.item-crosstalk span {
  display: inline-block;
  margin-bottom: clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px);
}

.site-footer .sub-nav-wrap {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: clamp(calc(32px * var(--min-scale)), calc(32 * var(--pc-unit)), 32px);
}

.site-footer .sub-nav li {
  font-size: clamp(calc(18px * var(--min-scale)), calc(18 * var(--pc-unit)), 18px);
  font-weight: var(--weight-regular);
  line-height: 2.1;
}

.site-footer .sub-nav li::before {
  content: '\30FB';
}

.site-footer .copyright {
  margin-top: clamp(calc(130px * var(--min-scale)), calc(130 * var(--pc-unit)), 130px);
  font-size: clamp(calc(22px * var(--min-scale)), calc(22 * var(--pc-unit)), 22px);
  font-weight: var(--weight-semibold);
  text-align: center;
}

@media screen and (max-width: 1280px) {
  .site-footer {
    padding: clamp(calc(100px * var(--min-scale)), calc(100 * var(--pc-unit)), 100px) 0;
  }

  .site-footer .footer-container {
    width: max-content;
  }

  .site-footer .menu-col {
    padding: 0 clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
  }

  .site-footer .copyright {
    margin-top: clamp(calc(90px * var(--min-scale)), calc(90 * var(--pc-unit)), 90px);
  }
}

@media screen and (max-width: 1024px) {
  .site-footer {
    padding: clamp(calc(60px * var(--min-scale)), calc(60 * var(--pc-unit)), 60px) clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px);
  }

  .site-footer .menu-columns-wrap {
    justify-content: center;
  }

  .site-footer .menu-col {
    padding: 0 clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px);
  }

  .site-footer .menu-col > .menu-nav-item {
    margin-bottom: clamp(calc(25px * var(--min-scale)), calc(25 * var(--pc-unit)), 25px);
    font-size: clamp(calc(17px * var(--min-scale)), calc(17 * var(--pc-unit)), 17px);
  }

  .site-footer .menu-nav-item.item-interview span {
    margin-bottom: clamp(calc(25px * var(--min-scale)), calc(25 * var(--pc-unit)), 25px);
  }

  .site-footer .sub-nav li {
    font-size: clamp(calc(16px * var(--min-scale)), calc(16 * var(--pc-unit)), 16px);
  }

  .site-footer .copyright {
    margin-top: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
    font-size: clamp(calc(14px * var(--min-scale)), calc(14 * var(--pc-unit)), 14px);
  }
}

@media screen and (max-width: 768px) {
  .site-footer {
    padding: calc(100 * var(--sp-unit)) calc(45 * var(--sp-unit));
  }

  .site-footer .footer-container {
    max-width: 100%;
  }

  .site-footer .footer-nav {
    width: auto;
    margin: 0 auto;
  }

  .site-footer .menu-col {
    padding: 0 calc(40 * var(--sp-unit));
    border-right: 1.5px solid #D1E2FF;
  }

  .site-footer .menu-col > .menu-nav-item {
    font-size: calc(30 * var(--sp-unit));
    margin-bottom: calc(80 * var(--sp-unit));
  }

  .site-footer .menu-col > .menu-nav-item:last-child {
    margin-bottom: 0;
  }

  .site-footer .menu-nav-item.item-interview span {
    margin-bottom: calc(20 * var(--sp-unit));
  }

  .site-footer .menu-nav-item.item-crosstalk span {
    margin-bottom: calc(20 * var(--sp-unit));
  }

  .site-footer .sub-nav-wrap {
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
  }

  .site-footer .sub-nav li {
    font-size: calc(25 * var(--sp-unit));
    padding-left: 1em;
    text-indent: -1em;
  }

  .site-footer .copyright {
    margin-top: calc(125 * var(--sp-unit));
    font-size: calc(25 * var(--sp-unit));
    font-weight: var(--weight-semibold);
    text-align: center;
  }
}

/* entry */
.entry-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 999;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
}

.entry-modal.is-active {
  opacity: 1;
  visibility: visible;
}

.entry-modal__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
}

.entry-modal__content {
  position: relative;
  z-index: 10;
  width: clamp(calc(1000px * var(--min-scale)), calc(1000 * var(--pc-unit)), 1000px);
  background-color: var(--color-white);
  border-radius: clamp(calc(15px * var(--min-scale)), calc(15 * var(--pc-unit)), 15px);
  padding: clamp(calc(60px * var(--min-scale)), calc(60 * var(--pc-unit)), 60px) clamp(calc(100px * var(--min-scale)), calc(100 * var(--pc-unit)), 100px);
  transform: translateY(20px);
  transition: all 0.3s ease;
  overflow: hidden;
}

.entry-modal.is-active .entry-modal__content {
  transform: translateY(0);
}

.entry-modal__close {
  position: absolute;
  top: clamp(calc(15px * var(--min-scale)), calc(15 * var(--pc-unit)), 15px);
  right: clamp(calc(25px * var(--min-scale)), calc(25 * var(--pc-unit)), 25px);
  background: none;
  border: none;
  color: var(--color-primary-blue);
  font-size: clamp(calc(65px * var(--min-scale)), calc(65 * var(--pc-unit)), 65px);
  line-height: 1;
  cursor: pointer;
  z-index: 11;
}

.entry-modal__title {
  position: relative;
  left: clamp(-100px, calc(-100 * var(--pc-unit)), calc(-100px * var(--min-scale)));
  display: inline-block;
  background: linear-gradient(90deg, #468AFF 0%, #2656FF 100%);
  color: var(--color-white);
  font-size: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
  letter-spacing: 0.16em;
  line-height: 1;
  padding: clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px);
  padding-left: clamp(calc(100px * var(--min-scale)), calc(100 * var(--pc-unit)), 100px);
  padding-right: clamp(calc(170px * var(--min-scale)), calc(170 * var(--pc-unit)), 170px);
  margin-bottom: clamp(calc(70px * var(--min-scale)), calc(70 * var(--pc-unit)), 70px);
  clip-path: polygon(0 0, 100% 0, 80% 100%, 0 100%);
}

.entry-modal__text {
  font-size: clamp(calc(25px * var(--min-scale)), calc(25 * var(--pc-unit)), 25px);
  line-height: 2;
  margin-bottom: clamp(calc(70px * var(--min-scale)), calc(70 * var(--pc-unit)), 70px);
}

.entry-modal__label {
  background: linear-gradient(90deg, #468AFF 0%, #2656FF 100%);
  color: var(--color-white);
  font-size: clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px);
  letter-spacing: 0.12em;
  padding: clamp(calc(10px * var(--min-scale)), calc(10 * var(--pc-unit)), 10px) clamp(calc(15px * var(--min-scale)), calc(15 * var(--pc-unit)), 15px);
  margin-bottom: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
}

.entry-modal__links {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: clamp(calc(70px * var(--min-scale)), calc(70 * var(--pc-unit)), 70px);
  margin-bottom: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
}

.entry-modal__link {
  display: inline-block;
  transition: opacity 0.3s ease;
}

.entry-modal__link:hover {
  opacity: 0.7;
}

.entry-modal__link img#logo-mynavi {
  width: clamp(calc(200px * var(--min-scale)), calc(200 * var(--pc-unit)), 200px);
}

.entry-modal__link img#logo-rikunabi {
  width: clamp(calc(177px * var(--min-scale)), calc(177 * var(--pc-unit)), 177px);
}

@media screen and (max-width: 768px) {
  .entry-modal__content {
    width: calc(500 * var(--sp-unit));
    border-radius: calc(20 * var(--sp-unit));
    padding: calc(90 * var(--sp-unit)) calc(40 * var(--sp-unit));;
    transform: translateY(20px);
  }

  .entry-modal__close {
    position: absolute;
    top: calc(15 * var(--sp-unit));
    right: calc(25 * var(--sp-unit));
    font-size: calc(65 * var(--sp-unit));
  }

  .entry-modal__title {
    left: calc(-40 * var(--sp-unit));
    font-size: calc(50 * var(--sp-unit));
    padding: calc(20 * var(--sp-unit));
    padding-left: calc(40 * var(--sp-unit));
    padding-right: calc(200 * var(--sp-unit));
    margin-bottom: calc(50 * var(--sp-unit));
  }

  .entry-modal__text {
    font-size: calc(21 * var(--sp-unit));
    margin-bottom: calc(50 * var(--sp-unit));
  }

  .entry-modal__label {
    font-size: calc(20 * var(--sp-unit));
    padding: calc(10 * var(--sp-unit)) calc(15 * var(--sp-unit));
    margin-bottom: calc(30 * var(--sp-unit));
  }

  .entry-modal__links {
    flex-direction: column;
    align-items: flex-start;
    gap: calc(10 * var(--sp-unit));
    margin-bottom: 0;
  }

  .entry-modal__link img#logo-mynavi {
    width: calc(200 * var(--sp-unit));
  }

  .entry-modal__link img#logo-rikunabi {
    width: calc(196 * var(--sp-unit));
  }
}

/* opening */
.opening-loader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--color-white);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
  transition: opacity 0.6s ease;
}

.opening-loader.is-hide {
  opacity: 0;
  pointer-events: none;
}

.opening-loader .loader-logo {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  opacity: 0;
  transform: scale(0.95);
  animation: logo_fade 1.2s cubic-bezier(0.86, 0, 0.07, 1) forwards;
}

.opening-loader .loader-logo img {
  width: 240px;
}

.opening-loader .loader-logo span {
  font-size: 26px;
}

@media screen and (max-width: 768px) {
  .opening-loader .loader-logo img {
    width: calc(300 * var(--sp-unit));
  }

  .opening-loader .loader-logo span {
    font-size: calc(30 * var(--sp-unit));
  }
}

/* top */
.top-page .container {
  padding-top: 0;
  overflow-x: hidden;
}

.top-page .common-section .btn-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: clamp(calc(272px * var(--min-scale)), calc(272 * var(--pc-unit)), 272px);
  height: clamp(calc(72px * var(--min-scale)), calc(72 * var(--pc-unit)), 72px);
  padding-left: clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px);
  font-size: clamp(calc(24px * var(--min-scale)), calc(24 * var(--pc-unit)), 24px);
  letter-spacing: 0.1em;
  text-decoration: none;
  transition: all 0.3s ease;
  background-color: var(--color-white);
  color: var(--color-primary-blue);
  border-radius: clamp(calc(36px * var(--min-scale)), calc(36 * var(--pc-unit)), 36px);
}

.top-page .common-section .btn-arrow.btn-coming {
  width: clamp(calc(322px * var(--min-scale)), calc(322 * var(--pc-unit)), 322px);
}

.top-page .common-section .btn-arrow.btn-text-orange {
  color: var(--color-primary-orange);
}

.top-page .common-section .btn-arrow .btn-icon {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: clamp(calc(60px * var(--min-scale)), calc(60 * var(--pc-unit)), 60px);
  height: 100%;
  overflow: hidden;
}

.top-page .common-section .btn-arrow .btn-icon img {
  position: absolute;
  right: 0;
  width: clamp(calc(80px * var(--min-scale)), calc(80 * var(--pc-unit)), 80px);
  height: 100%;
}

.top-page .common-section .btn-arrow:hover .btn-icon img {
  animation: arrowMove 1s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.top-page .fv-section {
  position: relative;
  width: 100%;
  height: calc(100vh + 1px);
  overflow: hidden;
}

.top-page .deco-line {
  mix-blend-mode: unset;
}

.top-page .deco-line img {
  position: absolute;
}

.top-page .deco-line.from-top {
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

.top-page .deco-line.from-top #top-shape-01 {
  width: 15.36vw;
  top: -7.03vw;
  left: 29.16vw;
}

.top-page .deco-line.from-top #top-shape-02 {
  mix-blend-mode: multiply;
  width: 15.67vw;
  top: -3.64vw;
  left: 23.64vw;
}

.top-page .deco-line.from-top #top-shape-03 {
  mix-blend-mode: color;
  width: 13.38vw;
  top: 3.43vw;
  left: 19.42vw;
}

.top-page .deco-line.from-top #top-shape-04 {
  mix-blend-mode: color;
  opacity: 0.41;
  width: 25.93vw;
  top: 3.48vw;
  left: 4.37vw;
}

.top-page .deco-line.from-top #top-shape-05 {
  mix-blend-mode: color-burn;
  width: 26.09vw;
  top: 11.35vw;
  left: -6.71vw;
}

.top-page .deco-line.from-top #top-shape-06 {
  mix-blend-mode: color-burn;
  width: 26.66vw;
  top: -4.73vw;
  left: -1.92vw;
}

.top-page .deco-line.from-top #top-shape-07 {
  width: 15.67vw;
  top: 4.32vw;
  left: -5.26vw;
}

.top-page .deco-line.from-top #top-shape-08 {
  mix-blend-mode: multiply;
  width: 19.94vw;
  top: -2.39vw;
  left: -6.25vw;
}

.top-page .deco-line.from-bottom {
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0.8;
}

.top-page .deco-line.from-bottom #bottom-shape-01 {
  mix-blend-mode: color;
  width: 8.38vw;
  bottom: 0;
  left: 38.07vw;
}

.top-page .deco-line.from-bottom #bottom-shape-02 {
  mix-blend-mode: color-burn;
  width: 15.72vw;
  bottom: 0;
  left: 30.05vw;
}

.top-page .deco-line.from-bottom #bottom-shape-03 {
  mix-blend-mode: color-burn;
  width: 48.64vw;
  bottom: -28.95vw;
  left: 1.77vw;
}

.top-page .deco-line.from-bottom #bottom-shape-04 {
  mix-blend-mode: color-burn;
  width: 19.11vw;
  bottom: 0;
  left: 27.81vw;
}

.top-page .deco-line.from-bottom #bottom-shape-05 {
  width: 16.19vw;
  bottom: -7.5vw;
  left: 14.53vw;
}

.top-page .deco-line.from-bottom #bottom-shape-06 {
  mix-blend-mode: color;
  width: 17.96vw;
  bottom: -7.18vw;
  left: 7.29vw;
}

.top-page .deco-line.from-bottom #bottom-shape-07 {
  mix-blend-mode: color-burn;
  width: 23.75vw;
  bottom: -9.16vw;
  left: -2.60vw;
}

.top-page .deco-line.from-bottom #bottom-shape-08 {
  mix-blend-mode: color;
  width: 27.08vw;
  bottom: 0;
  left: -6.87vw;
}

.top-page .deco-line.from-bottom #bottom-shape-09 {
  mix-blend-mode: color;
  width: 17.96vw;
  bottom: 3.95vw;
  left: -10.78vw;
}

.top-page .deco-line.from-bottom #bottom-shape-10 {
  width: 15.67vw;
  bottom: 6.71vw;
  left: -8.48vw;
}

.top-page .deco-line.from-bottom #bottom-shape-11 {
  width: 9.32vw;
  bottom: 18.38vw;
  left: 0;
}

.top-page .fv-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  z-index: 5;
}

.top-page .fv-section .main-copy {
  position: absolute;
  z-index: 2;
  top: 15vh;
  right: 0;
  width: 40vw;
  height: auto;
}

.top-page .fv-section .sub-copy {
  position: absolute;
  z-index: 2;
  left: 0;
  bottom: 0;
  font-size: clamp(calc(122px * var(--min-scale)), calc(122 * var(--pc-unit)), 122px);
  letter-spacing: 0.14em;
  color: var(--color-white);
  line-height: 1.1;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
}

.top-page .fv-image-box {
  position: absolute;
  bottom: 0;
  left: -20vw;
  width: 90vw;
  height: 75vh;
  clip-path: polygon(
    41% 0%, 
    100% 0%, 
    calc(100% - 500px) 100%, 
    calc(35% - 500px) 100%
  );
}

.top-page .fv-image-box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.top-page .fv-image_slide {
  height: 100%;
}

.top-page .fv-image_slide .slick-list {
  height: 100%;
}

.top-page .fv-image_slide .slick-track {
  height: 100%;
}

.top-page .fv-image_slide .slick-slide {
  position: relative;
  -webkit-mask-image: linear-gradient(230deg, rgba(0, 0, 0, 1) 54%, rgba(0, 0, 0, 0) 54%);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: 220% 100%;
  -webkit-mask-position: -120% 0;
  transition-property: mask-position, -webkit-mask-position;
  transition-duration: 5s;
  transition-timing-function: cubic-bezier(0.76, 0.05, 0.86, 0.06);
  overflow: hidden;
}

.top-page .fv-image_slide .prev-slide {
  opacity: 1 !important;
}

.top-page .fv-image_slide .slide-animation {
  animation: fv_image_anime 1s forwards;
}

.top-page .intro-section {
  overflow: hidden;
}

.top-page .intro-section::after {
  content: '';
  position: absolute;
  z-index: -1;
  top: clamp(calc(220px * var(--min-scale)), calc(220 * var(--pc-unit)), 220px);
  right: 0;
  display: inline-block;
  width: clamp(calc(1294px * var(--min-scale)), calc(1294 * var(--pc-unit)), 1294px);
  height: clamp(calc(946px * var(--min-scale)), calc(946 * var(--pc-unit)), 946px);
  background: url("../images/top/bk-intro.webp") no-repeat;
  background-position: center;
  background-size: cover;
  pointer-events: none;
}

.top-page .intro-section .fv-shapes img {
  position: absolute;
  pointer-events: none;
  mix-blend-mode: multiply;
}

.top-page .intro-section .fv-shapes img.img-left {
  width: clamp(calc(755px * var(--min-scale)), calc(755 * var(--pc-unit)), 755px);
  top: clamp(calc(500px * var(--min-scale)), calc(500 * var(--pc-unit)), 500px);
  left: clamp(-500px, calc(-500 * var(--pc-unit)), calc(-500px * var(--min-scale)));
}

.top-page .intro-section .fv-shapes img.img-right {
  width: clamp(calc(890px * var(--min-scale)), calc(890 * var(--pc-unit)), 890px);
  top: clamp(calc(190px * var(--min-scale)), calc(190 * var(--pc-unit)), 190px);
  right: clamp(-475px, calc(-475 * var(--pc-unit)), calc(-475px * var(--min-scale)));
}

.top-page .intro-section .intro-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: clamp(calc(60px * var(--min-scale)), calc(60 * var(--pc-unit)), 60px) 0;
}

.top-page .intro-section .intro-lead {
  width: clamp(calc(515px * var(--min-scale)), calc(515 * var(--pc-unit)), 515px);
}

.top-page .intro-section .intro-text-block p {
  font-size: clamp(calc(19px * var(--min-scale)), calc(19 * var(--pc-unit)), 19px);
  line-height: 2.6;
}

.top-page .about-jobs-section {
  padding-bottom: 0;
}

.top-page .about-jobs-section .item-card {
  position: relative;
  padding-bottom: clamp(calc(43px * var(--min-scale)), calc(43 * var(--pc-unit)), 43px);
  color: var(--color-white);
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(calc(1271px * var(--min-scale)), calc(1271 * var(--pc-unit)), 1271px);
}

.top-page .about-jobs-section .item-card::after {
  content: '';
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
  display: inline-block;
  width: clamp(calc(1297px * var(--min-scale)), calc(1297 * var(--pc-unit)), 1297px);
  height: clamp(calc(506px * var(--min-scale)), calc(506 * var(--pc-unit)), 506px);
  background: url("../images/top/bk-about.webp") no-repeat;
  background-position: center;
  background-size: cover;
  pointer-events: none;
}

.top-page .about-jobs-section .item-card.item-about {
  left: clamp(-370px, calc(-370 * var(--pc-unit)), calc(-370px * var(--min-scale)));
  padding-top: clamp(calc(120px * var(--min-scale)), calc(120 * var(--pc-unit)), 120px);
}

.top-page .about-jobs-section .item-card.item-jobs {
  top: clamp(-202px, calc(-202 * var(--pc-unit)), calc(-202px * var(--min-scale)));
  right: clamp(-430px, calc(-430 * var(--pc-unit)), calc(-430px * var(--min-scale)));
  padding-top: clamp(calc(65px * var(--min-scale)), calc(65 * var(--pc-unit)), 65px);
  margin-left: auto;
}

.top-page .about-jobs-section .item-card.item-about .card-content {
  width: clamp(calc(535px * var(--min-scale)), calc(535 * var(--pc-unit)), 535px);
}

.top-page .about-jobs-section .item-card.item-jobs .card-content {
  width: clamp(calc(620px * var(--min-scale)), calc(620 * var(--pc-unit)), 620px);
  margin-left: clamp(calc(90px * var(--min-scale)), calc(90 * var(--pc-unit)), 90px);
}

.top-page .about-jobs-section .item-card .card-title-en {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  position: absolute;
  width: clamp(calc(675px * var(--min-scale)), calc(675 * var(--pc-unit)), 675px);
  font-size: clamp(calc(60px * var(--min-scale)), calc(60 * var(--pc-unit)), 60px);
  font-weight: var(--weight-extralight);
  white-space: nowrap;
}

.top-page .about-jobs-section .item-card.item-about .card-title-en {
  color: var(--color-primary-orange);
  top: clamp(-40px, calc(-40 * var(--pc-unit)), calc(-40px * var(--min-scale)));
  left: clamp(calc(295px * var(--min-scale)), calc(295 * var(--pc-unit)), 295px);
}

.top-page .about-jobs-section .item-card.item-jobs .card-title-en {
  color: var(--color-primary-blue);
  top: clamp(-100px, calc(-100 * var(--pc-unit)), calc(-100px * var(--min-scale)));
  right: clamp(calc(150px * var(--min-scale)), calc(150 * var(--pc-unit)), 150px);
}

.top-page .about-jobs-section .item-card .card-title-en span {
  display: inline-block;
  width: 100%;
  line-height: 1;
}

.top-page .about-jobs-section .item-card .card-title-en span:nth-child(2) {
  text-align: right;
}

.top-page .about-jobs-section .item-card .card-title-ja {
  font-size: clamp(calc(40px * var(--min-scale)), calc(40 * var(--pc-unit)), 40px);
  line-height: 1.7;
  letter-spacing: 0.12em;
  margin-bottom: clamp(calc(15px * var(--min-scale)), calc(15 * var(--pc-unit)), 15px);
}

.top-page .about-jobs-section .item-card .card-desc {
  font-size: clamp(calc(21px * var(--min-scale)), calc(21 * var(--pc-unit)), 21px);
  font-weight: var(--weight-regular);
  line-height: 1.8;
  margin-bottom: clamp(calc(25px * var(--min-scale)), calc(25 * var(--pc-unit)), 25px);
  color: var(--color-gray-light);
  letter-spacing: 0.13em;
}

.top-page .video-slider-section {
  text-align: center;
}

.top-page .video-slider-section .fv-shapes img {
  position: absolute;
  pointer-events: none;
}

.top-page .video-slider-section .fv-shapes img.img-left {
  width: clamp(calc(878px * var(--min-scale)), calc(878 * var(--pc-unit)), 878px);
  top: clamp(calc(200px * var(--min-scale)), calc(200 * var(--pc-unit)), 200px);
  left: clamp(-483px, calc(-483 * var(--pc-unit)), calc(-483px * var(--min-scale)));
}

.top-page .video-slider-section .fv-shapes img.img-right {
  width: clamp(calc(772px * var(--min-scale)), calc(772 * var(--pc-unit)), 772px);
  top: clamp(-170px, calc(-170 * var(--pc-unit)), calc(-170px * var(--min-scale)));
  right: clamp(-417px, calc(-417 * var(--pc-unit)), calc(-417px * var(--min-scale)));
}

.top-page .video-slider-section .section-sub-title {
  width: clamp(calc(541px * var(--min-scale)), calc(541 * var(--pc-unit)), 541px);
  margin: 0 auto;
}

.top-page .video-slider-section p {
  font-size: clamp(calc(21px * var(--min-scale)), calc(21 * var(--pc-unit)), 21px);
  font-weight: var(--weight-regular);
  line-height: 1.8;
  letter-spacing: 0.13em;
  margin: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px) auto;
}

.top-page .video-slider-section .slider-wrapper {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.top-page .video-slider-section .swiper-slide .slider-item {
  transform: scale(0.6);
  transition: all 0.5s ease;
}

.top-page .video-slider-section .swiper-slide-active .slider-item {
  transform: scale(1);
  z-index: 2;
}

.top-page .video-slider-section .slider-item .slider-item-img {
  position: relative;
  width: 100%;
  margin: 0 auto;
}

.top-page .video-slider-section .slider-item .slider-item-img iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  border: 0;
}

.top-page .video-slider-section .slider-item p {
  display: none;
  font-size: clamp(calc(19px * var(--min-scale)), calc(19 * var(--pc-unit)), 19px);
}

.top-page .video-slider-section .swiper-slide-active .slider-item p {
  display: block;
}

.top-page .video-slider-section .swiper-prev-custom,
.top-page .video-slider-section .swiper-next-custom {
  position: absolute;
  top: 35%;
  transform: translateY(-50%);
  z-index: 10;
  background: none;
  border: none;
  padding: 0;
  width: clamp(calc(33px * var(--min-scale)), calc(33 * var(--pc-unit)), 33px);
  height: clamp(calc(61px * var(--min-scale)), calc(61 * var(--pc-unit)), 61px);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

.top-page .video-slider-section .swiper-prev-custom img,
.top-page .video-slider-section .swiper-next-custom img {
  width: 100%;
  height: auto;
  display: block;
}

.top-page  .video-slider-section .swiper-prev-custom {
  left: 22%;
}

.top-page  .video-slider-section .swiper-next-custom {
  right: 22%;
}

.top-page .number-section .banner-wrapper {
  color: var(--color-white);
}

.top-page .number-section .banner-inner {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: clamp(calc(454px * var(--min-scale)), calc(454 * var(--pc-unit)), 454px);
}

.top-page .number-section .banner-inner::after {
  content: '';
  position: absolute;
  z-index: -1;
  top: 0;
  left: clamp(-320px, calc(-320 * var(--pc-unit)), calc(-320px * var(--min-scale)));
  display: inline-block;
  width: clamp(calc(1408px * var(--min-scale)), calc(1408 * var(--pc-unit)), 1408px);
  height: clamp(calc(454px * var(--min-scale)), calc(454 * var(--pc-unit)), 454px);
  background: url("../images/top/bk-number.webp") no-repeat;
  background-position: center;
  background-size: cover;
  pointer-events: none;
  mix-blend-mode: multiply;
}

.top-page .number-section .banner-title {
  font-size: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
  letter-spacing: 0.12em;
  line-height: 1.8;
}

.top-page .number-section .banner-right {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: clamp(calc(21px * var(--min-scale)), calc(21 * var(--pc-unit)), 21px);
}

.top-page .number-section .banner-right::after {
  content: '';
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 40%;
  transform: translate(-50%, -50%);
  display: inline-block;
  width: clamp(calc(992px * var(--min-scale)), calc(992 * var(--pc-unit)), 992px);
  height: clamp(calc(325px * var(--min-scale)), calc(325 * var(--pc-unit)), 325px);
  background: var(--color-primary-blue);
  pointer-events: none;
  clip-path: polygon(30% 0%, 100% 0%, 70% 100%, 0% 100%);
}

.top-page .number-section .banner-right .banner-text {
  width: clamp(calc(520px * var(--min-scale)), calc(520 * var(--pc-unit)), 520px);
  font-size: clamp(calc(21px * var(--min-scale)), calc(21 * var(--pc-unit)), 21px);
  font-weight: var(--weight-regular);
  line-height: 1.8;
  letter-spacing: 0.13em;
}

.top-page .interview-section .wrap {
  position: relative;
}

.top-page .interview-section .wrap::before,
.top-page .interview-section .wrap::after {
  content: '';
  position: absolute;
  z-index: -1;
  display: inline-block;
  background: url("../images/top/bk-interview.webp") no-repeat;
  background-position: center;
  background-size: contain;
  pointer-events: none;
}

.top-page .interview-section .wrap::before {
  top: clamp(-180px, calc(-180 * var(--pc-unit)), calc(-180px * var(--min-scale)));
  left: clamp(-2244px, calc(-2244 * var(--pc-unit)), calc(-2244px * var(--min-scale)));
  width: clamp(calc(2805px * var(--min-scale)), calc(2805 * var(--pc-unit)), 2805px);
  height: clamp(calc(1335px * var(--min-scale)), calc(1335 * var(--pc-unit)), 1335px);
  
}

.top-page .interview-section .wrap::after {
  bottom: clamp(-150px, calc(-150 * var(--pc-unit)), calc(-150px * var(--min-scale)));
  right: clamp(-1916px, calc(-1916 * var(--pc-unit)), calc(-1916px * var(--min-scale)));
  width: clamp(calc(2297px * var(--min-scale)), calc(2297 * var(--pc-unit)), 2297px);
  height: clamp(calc(1093px * var(--min-scale)), calc(1093 * var(--pc-unit)), 1093px);
  opacity: 0.28;
}

.top-page .crosstalk-section {
  padding-top: clamp(calc(450px * var(--min-scale)), calc(450 * var(--pc-unit)), 450px);
  padding-bottom: clamp(calc(300px * var(--min-scale)), calc(300 * var(--pc-unit)), 300px);
}

.top-page .crosstalk-section .section-title-wrap {
  position: absolute;
  top: -35%;
  left: 50%;
  transform: translateX(-50%);
}

.top-page .crosstalk-section .section-main-title {
  font-size: clamp(calc(233px * var(--min-scale)), calc(233 * var(--pc-unit)), 233px);
  font-weight: var(--weight-extralight);
  letter-spacing: 0.11em;
  line-height: 1;
  color: var(--color-primary-skyblue);
  text-align: center;
}

.top-page .crosstalk-section .wrap {
  position: relative;
  width: clamp(calc(1450px * var(--min-scale)), calc(1450 * var(--pc-unit)), 1450px);
}

.top-page .crosstalk-section .wrap::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 52%;
  transform: translate(-50%, -50%);
  z-index: -1;
  display: inline-block;
  width: clamp(calc(2049px * var(--min-scale)), calc(2049 * var(--pc-unit)), 2049px);
  height: clamp(calc(920px * var(--min-scale)), calc(920 * var(--pc-unit)), 920px);
  background: url("../images/top/bk-crosstalk.webp") no-repeat;
  background-position: center;
  background-size: contain;
  pointer-events: none;
}

.top-page .crosstalk-section .crosstalk-container {
  position: relative;
  top: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
  display: flex;
  justify-content: center;
  align-items: center;
}

.top-page .crosstalk-section .crosstalk-col {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
  flex-shrink: 0;
}

.top-page .crosstalk-section .crosstalk-col .bg-huge-number {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  font-size: clamp(calc(246px * var(--min-scale)), calc(246 * var(--pc-unit)), 246px);
  font-weight: var(--weight-extralight);
  line-height: 1;
  letter-spacing: 0.04em;
  color: var(--color-skyblue-light);
  mix-blend-mode: multiply;
}

.top-page .crosstalk-section .crosstalk-col.col-left .bg-huge-number {
  left: -40%;
}

.top-page .crosstalk-section .crosstalk-col.col-right .bg-huge-number {
  right: -50%;
}

.top-page .crosstalk-section .crosstalk-col .crosstalk-visual-wrap {
  width: clamp(calc(394px * var(--min-scale)), calc(394 * var(--pc-unit)), 394px);
  height: clamp(calc(394px * var(--min-scale)), calc(394 * var(--pc-unit)), 394px);
  margin-bottom: clamp(calc(45px * var(--min-scale)), calc(45 * var(--pc-unit)), 45px);
  border-radius: 100%;
  overflow: hidden;
  position: relative;
  z-index: 2;
}

.top-page .crosstalk-section .crosstalk-col .crosstalk-visual-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.top-page .crosstalk-section .crosstalk-col .crosstlak-desc {
  margin-bottom: clamp(calc(25px * var(--min-scale)), calc(25 * var(--pc-unit)), 25px);
  text-align: center;
  letter-spacing: 0.13em;
}

.top-page .crosstalk-section .crosstalk-col .crosstlak-desc span {
  font-size: clamp(calc(29px * var(--min-scale)), calc(29 * var(--pc-unit)), 29px);
  line-height: 2;
  white-space: nowrap;
}

.top-page .crosstalk-section .crosstalk-col.col-right .crosstlak-desc span {
  letter-spacing: 0.02em;
}

.top-page .crosstalk-section .crosstalk-col .crosstlak-desc p {
  font-size: clamp(calc(21px * var(--min-scale)), calc(21 * var(--pc-unit)), 21px);
  line-height: 1.8;
}

.top-page .crosstalk-section .crosstalk-col.col-center {
  margin-bottom: clamp(calc(100px * var(--min-scale)), calc(100 * var(--pc-unit)), 100px);
  color: var(--color-white);
  text-align: center;

}
.top-page .crosstalk-section .crosstalk-main-title {
  font-size: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
  line-height: 1.7;
  letter-spacing: 0.12em;
}

.top-page .crosstalk-section .crosstalk-main-desc {
  font-size: clamp(calc(21px * var(--min-scale)), calc(21 * var(--pc-unit)), 21px);
  font-weight: var(--weight-regular);
  line-height: 1.8;
  letter-spacing: 0.13em;
}

.top-page .crosstalk-section .btn-arrow {
  background-color: var(--color-primary-skyblue);
  color: var(--color-white);
}

.top-page .career-environment-section .banner-wrap {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  gap: clamp(calc(80px * var(--min-scale)), calc(80 * var(--pc-unit)), 80px);
}

.top-page .career-environment-section .item-banner {
  position: relative;
  color: var(--color-white);
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(calc(1908px * var(--min-scale)), calc(1908 * var(--pc-unit)), 1908px);
}

.top-page .career-environment-section .item-career {
  left: clamp(-250px, calc(-250 * var(--pc-unit)), calc(-250px * var(--min-scale)));
}

.top-page .career-environment-section .item-career::before {
  content: '';
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
  display: inline-block;
  width: clamp(calc(2063px * var(--min-scale)), calc(2063 * var(--pc-unit)), 2063px);
  height: clamp(calc(414px * var(--min-scale)), calc(414 * var(--pc-unit)), 414px);
  background: url("../images/top/bk-career.webp") no-repeat;
  background-position: center;
  background-size: cover;
  pointer-events: none;
}

.top-page .career-environment-section .item-environment {
  right: clamp(-190px, calc(-190 * var(--pc-unit)), calc(-190px * var(--min-scale)));
}

.top-page .career-environment-section .item-environment::before {
  content: '';
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
  display: inline-block;
  width: clamp(calc(1908px * var(--min-scale)), calc(1908 * var(--pc-unit)), 1908px);
  height: clamp(calc(414px * var(--min-scale)), calc(414 * var(--pc-unit)), 414px);
  background: url("../images/top/bk-environment.webp") no-repeat;
  background-position: center;
  background-size: cover;
  pointer-events: none;
}

.top-page .career-environment-section .banner-visual-wrap {
  position: relative;
  width: clamp(calc(901px * var(--min-scale)), calc(901 * var(--pc-unit)), 901px);
  height: clamp(calc(398px * var(--min-scale)), calc(398 * var(--pc-unit)), 398px);
}

.top-page .career-environment-section .banner-visual-wrap::before {
  content: '';
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: inline-block;
  width: clamp(calc(953px * var(--min-scale)), calc(953 * var(--pc-unit)), 953px);
  height: clamp(calc(398px * var(--min-scale)), calc(398 * var(--pc-unit)), 398px);
  opacity: 0.31;
  mix-blend-mode: multiply;
}

.top-page .career-environment-section .item-career .banner-visual-wrap::before {
  background-color: var(--color-primary-orange);
  clip-path: polygon(29% 0%, 100% 0%, 71% 100%, 0% 100%);
}

.top-page .career-environment-section .item-environment .banner-visual-wrap::before {
  background-color: var(--color-primary-blue);
  clip-path: polygon(33% 0%, 100% 0%, 67% 100%, 0% 100%);
}

.top-page .career-environment-section .banner-visual-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  overflow: hidden;
}

.top-page .career-environment-section .item-career .banner-visual-wrap img {
  clip-path: polygon(30% 0%, 100% 0%, 70% 100%, 0% 100%);
}

.top-page .career-environment-section .item-environment .banner-visual-wrap img {
  clip-path: polygon(35% 0%, 100% 0%, 65% 100%, 0% 100%);
}

.top-page .career-environment-section .banner-content {
  position: relative;
  left: clamp(-50px, calc(-50 * var(--pc-unit)), calc(-50px * var(--min-scale)));
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: clamp(calc(30px * var(--min-scale)), calc(30 * var(--pc-unit)), 30px);
}

.top-page .career-environment-section .banner-title {
  position: relative;
  width: clamp(calc(534px * var(--min-scale)), calc(534 * var(--pc-unit)), 534px);
  font-size: clamp(calc(35px * var(--min-scale)), calc(35 * var(--pc-unit)), 35px);
  line-height: 2;
  text-align: center;
  background-color: var(--color-white);
  letter-spacing: 0.13em;
}

.top-page .career-environment-section .item-career .banner-title {
  left: clamp(-40px, calc(-40 * var(--pc-unit)), calc(-40px * var(--min-scale)));
  color: var(--color-primary-orange);
  clip-path: polygon(9% 0%, 100% 0%, 91% 100%, 0% 100%);
}

.top-page .career-environment-section .item-environment .banner-title {
  left: clamp(-55px, calc(-55 * var(--pc-unit)), calc(-55px * var(--min-scale)));
  color: var(--color-primary-blue);
  clip-path: polygon(11% 0%, 100% 0%, 89% 100%, 0% 100%);
}

.top-page .career-environment-section .banner-desc {
  font-size: clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px);
  line-height: 1.8;
}

.top-page .career-environment-section .btn-arrow {
  border: 2px solid var(--color-white);
  color: var(--color-white);
  background-color: transparent;
}

.top-page .projectstory-section {
  padding-top: 0;
  margin-top: clamp(calc(200px * var(--min-scale)), calc(200 * var(--pc-unit)), 200px);
  background-color: #E3EDFF;
}

.top-page .projectstory-section .banner-wrapper {
  position: relative;
}

.top-page .projectstory-section .banner-inner {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  height: clamp(calc(521px * var(--min-scale)), calc(521 * var(--pc-unit)), 521px);
  padding-top: clamp(calc(90px * var(--min-scale)), calc(90 * var(--pc-unit)), 90px);
  color: var(--color-white);
}

.top-page .projectstory-section .banner-inner::after {
  content: '';
  position: absolute;
  top: 0;
  left: clamp(-320px, calc(-320 * var(--pc-unit)), calc(-320px * var(--min-scale)));
  display: inline-block;
  width: clamp(calc(1986px * var(--min-scale)), calc(1986 * var(--pc-unit)), 1986px);
  height: clamp(calc(521px * var(--min-scale)), calc(521 * var(--pc-unit)), 521px);
  background: url("../images/top/bk-projectstory.webp") no-repeat;
  background-position: center;
  background-size: contain;
  pointer-events: none;
}

.top-page .projectstory-section .banner-inner > * {
  position: relative;
  z-index: 1;
}

.top-page .projectstory-section .banner-title-en {
  position: absolute;
  top: 0;
  left: clamp(-300px, calc(-300 * var(--pc-unit)), calc(-300px * var(--min-scale)));
  font-size: clamp(calc(150px * var(--min-scale)), calc(150 * var(--pc-unit)), 150px);
  font-weight: var(--weight-extralight);
  letter-spacing: 0.07em;
  line-height: 1;
  color: var(--color-blue-light);
}

.top-page .projectstory-section .banner-title-ja {
  font-size: clamp(calc(35px * var(--min-scale)), calc(35 * var(--pc-unit)), 35px);
  letter-spacing: 0.12em;
  line-height: 2.4;
}

.top-page .projectstory-section .banner-text {
  font-size: clamp(calc(21px * var(--min-scale)), calc(21 * var(--pc-unit)), 21px);
  font-weight: var(--weight-regular);
  line-height: 1.8;
  margin-bottom: clamp(calc(25px * var(--min-scale)), calc(25 * var(--pc-unit)), 25px);
  letter-spacing: 0.13em;
}

.top-page .projectstory-section .banner-visual-wrap {
  position: absolute;
  right: clamp(-420px, calc(-420 * var(--pc-unit)), calc(-420px * var(--min-scale)));
  top: 50%;
  transform: translateY(-50%);
  width: clamp(calc(1022px * var(--min-scale)), calc(1022 * var(--pc-unit)), 1022px);
  height: clamp(calc(610px * var(--min-scale)), calc(610 * var(--pc-unit)), 610px);
}

.top-page .projectstory-section .banner-visual-wrap::before,
.top-page .projectstory-section .banner-visual-wrap::after {
  content: '';
  position: absolute;
  z-index: -1;
  display: inline-block;
  width: clamp(calc(754px * var(--min-scale)), calc(754 * var(--pc-unit)), 754px);
  height: clamp(calc(452px * var(--min-scale)), calc(452 * var(--pc-unit)), 452px);
  mix-blend-mode: multiply;
  pointer-events: none;
  clip-path: polygon(40% 0%, 100% 0%, 60% 100%, 0% 100%);
}

.top-page .projectstory-section .banner-visual-wrap::before {
  top: clamp(-10px, calc(-10 * var(--pc-unit)), calc(-10px * var(--min-scale)));
  left: clamp(calc(100px * var(--min-scale)), calc(100 * var(--pc-unit)), 100px);
  background-color: #0038FF;
}

.top-page .projectstory-section .banner-visual-wrap::after {
  bottom: clamp(-10px, calc(-10 * var(--pc-unit)), calc(-10px * var(--min-scale)));
  right: clamp(calc(95px * var(--min-scale)), calc(95 * var(--pc-unit)), 95px);
  background-color: var(--color-primary-skyblue);
}

.top-page .projectstory-section .banner-visual {
  overflow: hidden;
  clip-path: polygon(40% 0%, 100% 0%, 60% 100%, 0% 100%);
}

.top-page .projectstory-section .banner-visual img {
  position: relative;
  right: clamp(calc(90px * var(--min-scale)), calc(90 * var(--pc-unit)), 90px);
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.top-page .recruit-section {
  background-color: #E3EDFF;
}

.top-page .recruit-section .item-card {
  position: relative;
  padding-bottom: clamp(calc(43px * var(--min-scale)), calc(43 * var(--pc-unit)), 43px);
  color: var(--color-white);
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(calc(1400px * var(--min-scale)), calc(1400 * var(--pc-unit)), 1400px);
}

.top-page .recruit-section .item-card > * {
  position: relative;
  z-index: 1;
}

.top-page .recruit-section .item-card::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: inline-block;
  width: clamp(calc(1400px * var(--min-scale)), calc(1400 * var(--pc-unit)), 1400px);
  height: clamp(calc(351px * var(--min-scale)), calc(351 * var(--pc-unit)), 351px);
  background: #0038FF;
  pointer-events: none;
  clip-path: polygon(20% 0%, 100% 0%, 80% 100%, 0% 100%);
}

.top-page .recruit-section .card-title-en {
  position: absolute;
  top: clamp(-170px, calc(-170 * var(--pc-unit)), calc(-170px * var(--min-scale)));
  left: clamp(-100px, calc(-100 * var(--pc-unit)), calc(-100px * var(--min-scale)));
  font-size: clamp(calc(119px * var(--min-scale)), calc(119 * var(--pc-unit)), 119px);
  font-weight: var(--weight-extralight);
  letter-spacing: 0.07em;
  color: var(--color-primary-blue);
}

.top-page .recruit-section .card-title-ja {
  font-size: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
  letter-spacing: 0.12em;
  line-height: 2;
}

.top-page .recruit-section .card-desc-wrap {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: clamp(calc(70px * var(--min-scale)), calc(70 * var(--pc-unit)), 70px);
}

.top-page .recruit-section .card-desc-wrap .card-desc {
  font-size: clamp(calc(21px * var(--min-scale)), calc(21 * var(--pc-unit)), 21px);
  font-weight: var(--weight-regular);
  line-height: 1.8;
  letter-spacing: 0.13em;
}

.top-page .gallery-section {
  width: 100%;
  overflow: hidden;
  padding: clamp(calc(200px * var(--min-scale)), calc(200 * var(--pc-unit)), 200px) 0 clamp(calc(300px * var(--min-scale)), calc(300 * var(--pc-unit)), 300px);
  background-color: #E3EDFF;
}

.top-page .gallery-section .infinite-gallery-track {
  display: flex;
  width: max-content;
}

.top-page .gallery-section .gallery-group {
  display: flex;
}

.top-page .gallery-section .gallery-cell {
  position: relative;
  width: clamp(calc(919px * var(--min-scale)), calc(919 * var(--pc-unit)), 919px);
  overflow: hidden;
  clip-path: polygon(35% 0%, 100% 0%, 65% 100%, 0% 100%);
  margin-right: clamp(-200px, calc(-200 * var(--pc-unit)), calc(-200px * var(--min-scale)));
}

.top-page .gallery-section .gallery-cell img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

@media screen and (max-width: 1280px) {
  .top-page .about-jobs-section .item-card.item-about {
    left: clamp(-420px, calc(-420 * var(--pc-unit)), calc(-420px * var(--min-scale)));
  }

  .top-page .about-jobs-section .item-card.item-jobs {
    right: clamp(-280px, calc(-280 * var(--pc-unit)), calc(-280px * var(--min-scale)));
  }

  .top-page .projectstory-section .banner-title-en {
    left: clamp(-100px, calc(-100 * var(--pc-unit)), calc(-100px * var(--min-scale)));
    letter-spacing: 0.06em;
  }
}

@media screen and (max-width: 1024px) {
  .top-page .fv-section .main-copy {
    top: 20vh;
  }

  .top-page .fv-image-box {
    width: 100vw;
  }

  .top-page .intro-section .intro-lead {
    width: clamp(calc(415px * var(--min-scale)), calc(415 * var(--pc-unit)), 415px);
  }

  .top-page .about-jobs-section .item-card {
    width: clamp(calc(771px * var(--min-scale)), calc(771 * var(--pc-unit)), 771px);
    justify-content: flex-start;
  }

  .top-page .about-jobs-section .item-card.item-about {
    left: 0;
    padding-top: clamp(calc(80px * var(--min-scale)), calc(80 * var(--pc-unit)), 80px);
  }

  .top-page .about-jobs-section .item-card.item-about .card-title-en {
    left: 0;
  }

  .top-page .about-jobs-section .item-card.item-jobs {
    top: 0;
    right: 0;
    justify-content: flex-end;
  }

  .top-page .about-jobs-section .item-card.item-jobs::after {
    left: clamp(-200px, calc(-200 * var(--pc-unit)), calc(-200px * var(--min-scale)));
    right: auto;
  }

  .top-page .about-jobs-section .item-card.item-jobs .card-title-en {
    right: 0;
  }

  .top-page .crosstalk-section .wrap {
    width: 100%;
  }

  .top-page .crosstalk-section .section-main-title {
    font-size: clamp(calc(190px * var(--min-scale)), calc(190 * var(--pc-unit)), 190px);
  }

  .top-page .crosstalk-section .crosstalk-col .bg-huge-number {
    top: 0;
  }

  .top-page .crosstalk-section .crosstalk-col.col-left .bg-huge-number {
    left: -10%;
  }

  .top-page .crosstalk-section .crosstalk-col.col-right .bg-huge-number {
    right: -10%;
  }

  .top-page .crosstalk-section .crosstalk-col.col-center {
    flex: 0.9;
  }

  .top-page .crosstalk-section .crosstalk-main-title {
    font-size: clamp(calc(44px * var(--min-scale)), calc(44 * var(--pc-unit)), 44px);
  }

  .top-page .crosstalk-section .crosstalk-main-desc {
    font-size: clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px);
  }

  .top-page .crosstalk-section .crosstalk-col .crosstalk-visual-wrap {
    width: clamp(calc(354px * var(--min-scale)), calc(354 * var(--pc-unit)), 354px);
    height: clamp(calc(354px * var(--min-scale)), calc(354 * var(--pc-unit)), 354px);
  }

  .top-page .crosstalk-section .crosstalk-col .crosstlak-desc span {
    font-size: clamp(calc(25px * var(--min-scale)), calc(25 * var(--pc-unit)), 25px);
  }

  .top-page .crosstalk-section .crosstalk-col .crosstlak-desc p {
    font-size: clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px);
  }

  .top-page .career-environment-section .item-career {
    left: clamp(-150px, calc(-150 * var(--pc-unit)), calc(-150px * var(--min-scale)));
  }

  .top-page .career-environment-section .item-environment {
    left: clamp(-150px, calc(-150 * var(--pc-unit)), calc(-150px * var(--min-scale)));
    right: 0;
  }

  .top-page .projectstory-section .banner-title-en {
    left: 0;
    font-size: clamp(calc(120px * var(--min-scale)), calc(120 * var(--pc-unit)), 120px);
  }

  .top-page .recruit-section .item-card {
    width: clamp(calc(1000px * var(--min-scale)), calc(1000 * var(--pc-unit)), 1000px);
  }
}

@media screen and (max-width: 768px) {
  .top-page .common-section .btn-arrow {
    width: calc(272 * var(--sp-unit));
    height: calc(72 * var(--sp-unit));
    padding-left: calc(20 * var(--sp-unit));
    font-size: calc(24 * var(--sp-unit));
    border-radius: calc(36 * var(--sp-unit));
  }

  .top-page .common-section .btn-arrow.btn-coming {
     width: calc(322 * var(--sp-unit));
  }

  .top-page .common-section .btn-arrow .btn-icon {
    width: calc(60 * var(--sp-unit));
  }

  .top-page .common-section .btn-arrow .btn-icon img {
    width: calc(80 * var(--sp-unit));
  }

  .top-page .deco-line.from-top #top-shape-01 {
    width: 55.51vw;
    top: -3.84vw;
    left: 8.97vw;
  }

  .top-page .deco-line.from-top #top-shape-02 {
    width: 56.53vw;
    top: -28.2vw;
    left: 17.3vw;
  }

  .top-page .deco-line.from-top #top-shape-03 {
    width: 48.33vw;
    top: 4.74vw;
    left: 2.56vw;
  }

  .top-page .deco-line.from-top #top-shape-04 {
    width: 93.71vw;
    top: -2.82vw;
    left: -52.17vw;
  }

  .top-page .deco-line.from-top #top-shape-05 {
    width: 94.48vw;
    top: 14.61vw;
    left: -73.58vw;
  }

  .top-page .deco-line.from-top #top-shape-06,
  .top-page .deco-line.from-top #top-shape-07,
  .top-page .deco-line.from-top #top-shape-08 {
    display: none;
  }

  .top-page .deco-line.from-bottom #bottom-shape-01 {
    width: 30vw;
    left: 63.33vw;
  }

  .top-page .deco-line.from-bottom #bottom-shape-02 {
    width: 56.79vw;
    left: 34.1vw;
  }

  .top-page .deco-line.from-bottom #bottom-shape-03 {
    width: 176.02vw;
    bottom: -103.2vw;
    left: -74.61vw;
  }

  .top-page .deco-line.from-bottom #bottom-shape-04 {
    width: 68.97vw;
    left: 25.64vw;
  }

  .top-page .deco-line.from-bottom #bottom-shape-05 {
    width: 58.33vw;
    bottom: -27.69vw;
    left: -15.76vw;
  }

  .top-page .deco-line.from-bottom #bottom-shape-06,
  .top-page .deco-line.from-bottom #bottom-shape-07,
  .top-page .deco-line.from-bottom #bottom-shape-08,
  .top-page .deco-line.from-bottom #bottom-shape-09,
  .top-page .deco-line.from-bottom #bottom-shape-10,
  .top-page .deco-line.from-bottom #bottom-shape-11 {
    display: none;
  }

  .top-page .fv-section .main-copy {
    width: calc(394 * var(--sp-unit));
    top: 25vh;
    right: calc(35 * var(--sp-unit));
  }

  .top-page .fv-section .sub-copy {
    font-size: calc(80 * var(--sp-unit));
  }

  .top-page .fv-image-box {
    width: 200vw;
    height: 70vh;
    left: -90vw;
    clip-path: polygon(11% 0%, 100% 0%, calc(100% - 300px) 100%, calc(35% - 300px) 100%);
  }

  .top-page .fv-image-box::after {
    content: '';
    display: inline-block;
    position: absolute;
    bottom: 0;
    right: calc(-350 * var(--sp-unit));
    width: calc(935 * var(--sp-unit));
    height: calc(1207 * var(--sp-unit));
    background: url("../images/top/fv-visual-deco-sp.webp") no-repeat;
    background-position: center;
    background-size: contain;
  }

  .top-page .fv-image-box img {
    position: relative;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }

  .top-page .intro-section {
    padding: calc(150 * var(--sp-unit)) 0 calc(200 * var(--sp-unit));
  }

  .top-page .intro-section::after {
    top: auto;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 67%;
  }

  .top-page .intro-section .fv-shapes img.img-left {
    width: calc(780 * var(--sp-unit));
    top: auto;
    bottom: calc(50 * var(--sp-unit));
    left: 0;
  }

  .top-page .intro-section .fv-shapes img.img-right {
    width: calc(563 * var(--sp-unit));
    top: calc(110 * var(--sp-unit));
    right: 0;
  }

  .top-page .intro-section .intro-inner {
    flex-direction: column;
    align-items: flex-start;
    gap: calc(130 * var(--sp-unit));
    padding: 0;
  }

  .top-page .intro-section .intro-lead {
    width: calc(435 * var(--sp-unit));
  }

  .top-page .intro-section .intro-text-block p {
    font-size: calc(30 * var(--sp-unit));
    letter-spacing: 0.05em;
    line-height: 1.8;
  }

  .top-page .about-jobs-section {
    padding-bottom: calc(75 * var(--sp-unit));
  }

  .top-page .about-jobs-section .card-wrap {
    padding: 0 calc(50 * var(--sp-unit));
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: calc(180 * var(--sp-unit));
  }

  .top-page .about-jobs-section .item-card {
    padding-bottom: calc(65 * var(--sp-unit));
    width: calc(780 * var(--sp-unit));
  }

  .top-page .about-jobs-section .item-card::after {
    width: calc(1375 * var(--sp-unit));
    height: calc(514 * var(--sp-unit));
    right: calc(-50 * var(--sp-unit));
    white-space: nowrap;
  }

  .top-page .about-jobs-section .item-card.item-jobs::after {
    width: calc(1656 * var(--sp-unit));
    height: calc(606 * var(--sp-unit)); 
    left: auto;
    right: calc(-350 * var(--sp-unit));
  }

  .top-page .about-jobs-section .item-card.item-about {
    left: 0;
    padding-top: calc(70 * var(--sp-unit));
  }

  .top-page .about-jobs-section .item-card.item-jobs {
    top: 0;
    right: 0;
    padding-top: calc(65 * var(--sp-unit));
    justify-content: flex-start;
  }

  .top-page .about-jobs-section .item-card.item-about .card-content {
    width: calc(532 * var(--sp-unit));
  }

  .top-page .about-jobs-section .item-card.item-jobs .card-content {
    width: calc(630 * var(--sp-unit));
    margin-left: 0;
  }

  .top-page .about-jobs-section .item-card .card-title-en {
    width: calc(675 * var(--sp-unit));
    font-size: calc(60 * var(--sp-unit));
  }

  .top-page .about-jobs-section .item-card.item-about .card-title-en {
    top: calc(-40 * var(--sp-unit));
    left: calc(-50 * var(--sp-unit));
  }

  .top-page .about-jobs-section .item-card.item-jobs .card-title-en {
    top: calc(-100 * var(--sp-unit));
    right: calc(150 * var(--sp-unit));
  }

  .top-page .about-jobs-section .item-card .card-title-ja {
    font-size: calc(40 * var(--sp-unit));
    margin-bottom: calc(30 * var(--sp-unit));
  }

  .top-page .about-jobs-section .item-card .card-desc {
    font-size: calc(21 * var(--sp-unit));
    margin-bottom: calc(35 * var(--sp-unit));
  }

  .top-page .video-slider-section .fv-shapes img.img-left,
  .top-page .video-slider-section .fv-shapes img.img-right {
    display: none;
  }

  .top-page .video-slider-section .slider-wrapper {
    width: calc(680 * var(--sp-unit));
    margin: 0 auto;
  }

  .top-page .video-slider-section .section-sub-title {
    width: calc(541 * var(--sp-unit));
  }

  .top-page .video-slider-section p {
    font-size: calc(21 * var(--sp-unit));
    margin: calc(50 * var(--sp-unit)) auto;
  }

  .top-page .video-slider-section .slider-item .slider-item-img {
    width: calc(485 * var(--sp-unit));
  }


  .top-page .video-slider-section .slider-item p {
    font-size: calc(19 * var(--sp-unit));
  }

  .top-page .video-slider-section .swiper-prev-custom,
  .top-page .video-slider-section .swiper-next-custom {
    top: 27%;
    width: calc(33 * var(--sp-unit));
    height: calc(61 * var(--sp-unit));
  }

  .top-page .video-slider-section .swiper-prev-custom {
    left: 0;
  }

  .top-page .video-slider-section .swiper-next-custom {
    right: 0;
  }

  .top-page .number-section {
    padding-top: 0;
  }

  .top-page .number-section .banner-inner {
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: calc(50 * var(--sp-unit));
    height: auto;
  }

  .top-page .number-section .banner-inner::after {
    left: calc(-50 * var(--sp-unit));
    width: calc(880 * var(--sp-unit));
    height: calc(294 * var(--sp-unit));
  }

  .top-page .number-section .banner-title {
    margin-top: calc(60 * var(--sp-unit));
    font-size: calc(50 * var(--sp-unit));
  }

  .top-page .number-section .banner-right {
    gap: calc(21 * var(--sp-unit));
    margin-left: auto;
  }

  .top-page .number-section .banner-right::after {
    width: calc(992 * var(--sp-unit));
    height: calc(325 * var(--sp-unit));
  }

  .top-page .number-section .banner-right .banner-text {
    width: calc(520 * var(--sp-unit));
    font-size: calc(21 * var(--sp-unit));
  }

  .top-page .interview-section .wrap::before {
    top: calc(-490 * var(--sp-unit));
    left:calc(-2144 * var(--sp-unit));
    width: calc(2805 * var(--sp-unit));
    height: calc(1335 * var(--sp-unit));;
  }

  .top-page .interview-section .wrap::after {
    bottom: 0;
    right: calc(-1916 * var(--sp-unit));
    width: calc(2297 * var(--sp-unit));
    height: calc(1093 * var(--sp-unit));
  }

  .top-page .crosstalk-section {
    padding-top: calc(250 * var(--sp-unit));
    padding-bottom: calc(200 * var(--sp-unit));
  }

  .top-page .crosstalk-section .section-title-wrap {
    top: calc(-240 * var(--sp-unit));
  }

  .top-page .crosstalk-section .section-main-title {
    font-size: calc(105 * var(--sp-unit));
  }

  .top-page .crosstalk-section .wrap {
    width: calc(611 * var(--sp-unit));
  }

  .top-page .crosstalk-section .wrap::before {
    left: 50%;
    width: calc(880 * var(--sp-unit));
    height: calc(1067 * var(--sp-unit));
    background: url("../images/top/bk-crosstalk-sp.webp") no-repeat;
    background-position: center;
    background-size: contain;
  }

  .top-page .crosstalk-section .crosstalk-container {
    top: calc(80 * var(--sp-unit));
    align-items: flex-start;
    gap: calc(50 * var(--sp-unit));
  }

  .top-page .crosstalk-section .crosstalk-col {
    flex: 1;
    gap: calc(25 * var(--sp-unit));
  }

  .top-page .crosstalk-section .crosstalk-col .bg-huge-number {
    display: none;
  }

  .top-page .crosstalk-section .crosstalk-col .crosstalk-visual-wrap {
    width: calc(252 * var(--sp-unit));
    height: calc(252 * var(--sp-unit));
    margin-bottom: 0;
  }

  .top-page .crosstalk-section .crosstalk-col .crosstlak-desc {
    margin-bottom: 0;
    text-align: justify;
  }

  .top-page .crosstalk-section .crosstalk-col .crosstlak-desc span {
    display: inline-block;
    width: 100%;
    margin-bottom: calc(25 * var(--sp-unit));
    font-size: calc(32 * var(--sp-unit));
    line-height: 1.7;
  }

  .top-page .crosstalk-section .crosstalk-col .crosstlak-desc p {
    font-size: calc(21 * var(--sp-unit));
    letter-spacing: 0.13em;
  }

  .top-page .crosstalk-section .crosstalk-col.col-center {
    position: absolute;
    top: calc(-180 * var(--sp-unit));
    left: 0;
    gap: calc(15 * var(--sp-unit));
    margin-bottom: 0;
    flex: 1;
    text-align: justify;
    align-items: flex-start;
  }

  .top-page .crosstalk-section .crosstalk-main-title {
    font-size: calc(32 * var(--sp-unit));
  }

  .top-page .crosstalk-section .crosstalk-main-desc {
    font-size: calc(21 * var(--sp-unit));
  }

  .top-page .career-environment-section .banner-wrap {
    gap: calc(80 * var(--sp-unit));
  }

  .top-page .career-environment-section .item-banner {
    right: auto;
    left: calc(-200 * var(--sp-unit));
    width: calc(1908 * var(--sp-unit));
  }

  .top-page .career-environment-section .item-career {
    left: calc(-200 * var(--sp-unit));
  }

  .top-page .career-environment-section .item-career::before {
    width: calc(2063 * var(--sp-unit));
    height: calc(414 * var(--sp-unit));
  }

  .top-page .career-environment-section .item-environment {
    right: calc(-190 * var(--sp-unit));
  }

  .top-page .career-environment-section .item-environment::before {
    width: calc(1908 * var(--sp-unit));
    height: calc(454 * var(--sp-unit));
  }

  .top-page .career-environment-section .banner-visual-wrap {
    width: calc(901 * var(--sp-unit));
    height: calc(398 * var(--sp-unit));
    clip-path: polygon(30% 0%, 100% 0%, 70% 100%, 0% 100%);
  }

  .top-page .career-environment-section .banner-visual-wrap::before {
    width: calc(953 * var(--sp-unit));
    height: calc(398 * var(--sp-unit));
  }

  .top-page .career-environment-section .banner-visual-wrap img {
    position: relative;
  }

  .top-page .career-environment-section .banner-content {
    left: calc(-130 * var(--sp-unit));
    gap: calc(30 * var(--sp-unit));
    margin-left: calc(100 * var(--sp-unit));
  }

  .top-page .career-environment-section .banner-title {
    width: calc(459 * var(--sp-unit));
    font-size: calc(35 * var(--sp-unit));
  }

  .top-page .career-environment-section .item-career .banner-title {
    left: calc(-45 * var(--sp-unit));
    clip-path: polygon(10% 0%, 100% 0%, 91% 100%, 0% 100%);
  }

  .top-page .career-environment-section .item-environment .banner-title {
    left: calc(-38 * var(--sp-unit));
    clip-path: polygon(10% 0%, 100% 0%, 91% 100%, 0% 100%);
  }

  .top-page .career-environment-section .item-career .banner-visual-wrap img {
    clip-path: unset;
    left: calc(85 * var(--sp-unit));
  }

  .top-page .career-environment-section .item-environment .banner-visual-wrap {
    height: calc(438 * var(--sp-unit));
  }

  .top-page .career-environment-section .item-environment .banner-visual-wrap img {
    clip-path: unset;
    left: calc(225 * var(--sp-unit));
  }

  .top-page .career-environment-section .banner-desc {
    width: calc(408 * var(--sp-unit));
    font-size: calc(21 * var(--sp-unit));
  }

  .top-page .projectstory-section {
    margin-top: calc(100 * var(--sp-unit));
  }

  .top-page .projectstory-section .banner-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: calc(50 * var(--sp-unit));
    padding: 0 calc(50 * var(--sp-unit));
  }

  .top-page .projectstory-section .banner-inner {
    height: auto;
    padding-top: calc(160 * var(--sp-unit));
  }

  .top-page .projectstory-section .banner-inner::after {
    left: calc(-320 * var(--sp-unit));
    width: calc(2786 * var(--sp-unit));
    height: calc(721 * var(--sp-unit));
  }

  .top-page .projectstory-section .banner-title-en {
    left: calc(-90 * var(--sp-unit));
    font-size: calc(104 * var(--sp-unit));
    white-space: nowrap;
  }

  .top-page .projectstory-section .banner-title-ja {
    font-size: calc(35 * var(--sp-unit));
  }

  .top-page .projectstory-section .banner-text {
    font-size: calc(21 * var(--sp-unit));
    margin-bottom: calc(25 * var(--sp-unit));
  }

  .top-page .projectstory-section .banner-visual-wrap {
    position: relative;
    left: calc(-200 * var(--sp-unit));
    right: auto;
    top: auto;
    transform: unset;
    width: calc(1022 * var(--sp-unit));
    height: calc(610 * var(--sp-unit));
  }

  .top-page .projectstory-section .banner-visual-wrap::before,
  .top-page .projectstory-section .banner-visual-wrap::after {
    width: calc(754 * var(--sp-unit));
    height: calc(452 * var(--sp-unit));
  }

  .top-page .projectstory-section .banner-visual-wrap::before {
    top: calc(-10 * var(--sp-unit));
    left: calc(100 * var(--sp-unit));
  }

  .top-page .projectstory-section .banner-visual-wrap::after {
    bottom: calc(-10 * var(--sp-unit));
    right: calc(95 * var(--sp-unit));
  }

  .top-page .projectstory-section .banner-visual img {
    right: calc(90 * var(--sp-unit));
  }

  .top-page .recruit-section {
    padding-top: calc(200 * var(--sp-unit));
  }

  .top-page .recruit-section .item-card {
    justify-content: flex-start;
    padding-bottom: calc(43 * var(--sp-unit));
    width: calc(1400 * var(--sp-unit));
  }

  .top-page .recruit-section .item-card::after {
    width: calc(1400 * var(--sp-unit));
    height: calc(426 * var(--sp-unit));
    top: 42%;
    left: 35%;
  }

  .top-page .recruit-section .card-title-en {
    top: calc(-170 * var(--sp-unit));
    left: 0;
    font-size: calc(119 * var(--sp-unit));
  }

  .top-page .recruit-section .card-title-ja {
    margin-left: calc(70 * var(--sp-unit));
    font-size: calc(50 * var(--sp-unit));
  }

  .top-page .recruit-section .card-desc-wrap {
    flex-direction: column;
    align-items: flex-end;
    gap: calc(30 * var(--sp-unit));
    margin-left: calc(70 * var(--sp-unit));
  }

  .top-page .recruit-section .card-desc-wrap .card-desc {
    font-size: calc(21 * var(--sp-unit));
  }

  .top-page .gallery-section {
    padding: calc(20 * var(--sp-unit)) 0 calc(100 * var(--sp-unit));
  }

  .top-page .gallery-section .gallery-cell {
    width: calc(716 * var(--sp-unit));
    margin-right: calc(-200 * var(--sp-unit));
  }

}

/* common */
.common-page .fv-section {
  position: relative;
  width: 100%;
  padding-bottom: clamp(150px * var(--min-scale), 150 * var(--pc-unit), 150px);
  background-color: var(--color-white);
  overflow: hidden;
}

.common-page .fv-section .fv-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  max-width: var(--width-wrap);
  margin: 0 auto;
  padding-top: clamp(80px * var(--min-scale), 80 * var(--pc-unit), 80px);
}

.common-page .fv-section .wrap {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: clamp(calc(1600px * var(--min-scale)), calc(1600 * var(--pc-unit)), 1600px);
}

.common-page .fv-section .wrap::after {
  content: '';
  position: absolute;
  top: 50%;
  left: clamp(-160px, calc(-160 * var(--pc-unit)), calc(-160px * var(--min-scale)));
  transform: translateY(-50%);
  display: inline-block;
  width: clamp(calc(1408px * var(--min-scale)), calc(1408 * var(--pc-unit)), 1408px);
  height: clamp(calc(454px * var(--min-scale)), calc(454 * var(--pc-unit)), 454px);
  background: url("../images/common/bk-visual.webp") no-repeat;
  background-position: center;
  background-size: contain;
  pointer-events: none;
  mix-blend-mode: multiply;
}

.common-page .fv-section .fv-title-en {
  position: absolute;
  z-index: 2;
  top: clamp(-50px, calc(-50 * var(--pc-unit)), calc(-50px * var(--min-scale)));
  left: clamp(-150px, calc(-150 * var(--pc-unit)), calc(-150px * var(--min-scale)));
  font-size: clamp(calc(133px * var(--min-scale)), calc(133 * var(--pc-unit)), 133px);
  font-weight: var(--weight-extralight);
  letter-spacing: 0.02em;
  line-height: 1.3;
  color: #ACCAFF;
  mix-blend-mode: multiply;
}

.common-page .fv-section .fv-title-ja {
  z-index: 1;
  margin-bottom: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
  font-size: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
  letter-spacing: 0.12em;
  color: var(--color-white);
  flex-shrink: 0;
}

.common-page .fv-section .fv-image-box {
  position: relative;
  z-index: 1;
  left: 0;
  width: clamp(calc(1315px * var(--min-scale)), calc(1315 * var(--pc-unit)), 1315px);
  height: clamp(calc(640px * var(--min-scale)), calc(640 * var(--pc-unit)), 640px);
  clip-path: polygon(35% 0%, 100% 0%, 100% 100%, 0% 100%);
  overflow: hidden;
  flex-shrink: 0;
}

.common-page .fv-section .fv-image-box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.common-page .intro-section .wrap {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.common-page .intro-section .wrap::after {
  content: '';
  position: absolute;
  top: clamp(-20px, calc(-20 * var(--pc-unit)), calc(-20px * var(--min-scale)));
  left: clamp(-460px, calc(-460 * var(--pc-unit)), calc(-460px * var(--min-scale)));
  display: inline-block;
  width: clamp(calc(1346px * var(--min-scale)), calc(1346 * var(--pc-unit)), 1346px);
  height: clamp(calc(922px * var(--min-scale)), calc(922 * var(--pc-unit)), 922px);
  background: url("../images/about/bk-intro.webp") no-repeat;
  background-position: center;
  background-size: contain;
  pointer-events: none;
}

.common-page .intro-section .wrap > * {
  flex-shrink: 0;
}

.common-page .intro-section .intro-image-box {
  position: relative;
  z-index: 1;
  left: clamp(-320px, calc(-320 * var(--pc-unit)), calc(-320px * var(--min-scale)));
  width: clamp(calc(1162px * var(--min-scale)), calc(1162 * var(--pc-unit)), 1162px);
  height: clamp(788px * var(--min-scale), 788 * var(--pc-unit), 788px);
  margin-right: clamp(-580px, calc(-580 * var(--pc-unit)), calc(-580px * var(--min-scale)));
  clip-path: polygon(0% 0%, 100% 0%, 43% 100%, 0% 100%);
  overflow: hidden;
}

.common-page .intro-section .intro-image-box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.common-page .intro-section .intro-text-wrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: clamp(calc(60px * var(--min-scale)), calc(60 * var(--pc-unit)), 60px);
  margin-top: clamp(calc(75px * var(--min-scale)), calc(75 * var(--pc-unit)), 75px);
}

.common-page .intro-section .intro-lead {
  position: relative;
  z-index: 1;
  left: clamp(-110px, calc(-110 * var(--pc-unit)), calc(-110px * var(--min-scale)));
}

.common-page .intro-section .intro-text-block p {
  font-size: clamp(calc(19px * var(--min-scale)), calc(19 * var(--pc-unit)), 19px);
  line-height: 2.6;
}

@media screen and (max-width: 1280px) {
  .common-page .fv-section .fv-title-en {
    top: 0;
    left: 0;
    font-size: clamp(calc(103px * var(--min-scale)), calc(103 * var(--pc-unit)), 103px);
  }
}

@media screen and (max-width: 1024px) {
  .common-page .intro-section .wrap {
    width: 100%;
  }

  .common-page .intro-section .wrap > * {
    flex-shrink: unset;
  }
}

@media screen and (max-width: 768px) {
  .common-page .fv-section {
    padding-bottom: calc(150 * var(--sp-unit));
  }

  .common-page .fv-section .fv-inner {
    padding-top: calc(80 * var(--sp-unit));
  }

  .common-page .fv-section .wrap {
    align-items: flex-start;
    flex-direction: column;
    width: 100%;
  }

  .common-page .fv-section .wrap::after {
    top: calc(223 * var(--sp-unit));
    left: calc(-160 * var(--sp-unit));
    transform: unset;
    width: calc(858 * var(--sp-unit));
    height: calc(289 * var(--sp-unit));
  }

  .common-page .fv-section .fv-title-en {
    position: relative;
    top: 0;
    left: 0;
    font-size: calc(110 * var(--sp-unit));
    line-height: 1;
  }

  .common-page .fv-section .fv-title-ja {
    display: flex;
    justify-content: center;
    align-items: center;
    height: calc(289 * var(--sp-unit));
    padding-left: calc(50 * var(--sp-unit));
    font-size: calc(50 * var(--sp-unit));
  }

  .common-page .fv-section .fv-image-box {
    left: calc(-200 * var(--sp-unit));
    width: calc(1084 * var(--sp-unit));
    height: calc(528 * var(--sp-unit));
    margin-top: calc(100 * var(--sp-unit));
    clip-path: polygon(45% 0%, 100% 0%, 100% 100%, 0% 100%);
  }

  .common-page .intro-section {
    padding-bottom: calc(200 * var(--sp-unit));
  }

  .common-page .intro-section .wrap {
    flex-direction: column;
  }

  .common-page .intro-section .wrap::after {
    top: calc(-40 * var(--sp-unit));
    left: calc(-15 * var(--sp-unit));
    width: calc(770 * var(--sp-unit));
    height: calc(575 * var(--sp-unit));
  }

  .common-page .intro-section .intro-image-box {
    left: 0;
    width: calc(725 * var(--sp-unit));
    height: calc(458 * var(--sp-unit));
    margin-right: calc(-580 * var(--sp-unit));
  }

  .common-page .intro-section .intro-text-wrap {
    gap: calc(30 * var(--sp-unit));
    margin-top: calc(-75 * var(--sp-unit));
    padding: 0 calc(50 * var(--sp-unit));
  }

  .common-page .intro-section .intro-title-block {
    margin-left: auto;
  }

  .common-page .intro-section .intro-lead {
    left: 0;
  }

  .common-page .intro-section .intro-text-block p {
    font-size: calc(30 * var(--sp-unit));
    line-height: 1.8;
  }
}

/* about */
.about-page .fv-section .deco-line.from-top#deco-line-01 {
  top: clamp(-133px, calc(-133 * var(--pc-unit)), calc(-133px * var(--min-scale)));
  right: clamp(-410px, calc(-410 * var(--pc-unit)), calc(-410px * var(--min-scale)));
  width: clamp(calc(2456px * var(--min-scale)), calc(2456 * var(--pc-unit)), 2456px);
}

.about-page .fv-section .deco-line.from-top#deco-line-02 {
  top: clamp(calc(459px * var(--min-scale)), calc(459 * var(--pc-unit)), 459px);
  right: clamp(calc(193px * var(--min-scale)), calc(193 * var(--pc-unit)), 193px);
  width: clamp(calc(688px * var(--min-scale)), calc(688 * var(--pc-unit)), 688px);
}

.about-page .intro-section .intro-lead {
  width: clamp(calc(696px * var(--min-scale)), calc(696 * var(--pc-unit)), 696px);
}

.about-page .business-section .fv-shapes img {
  position: absolute;
  pointer-events: none;
  width: clamp(calc(2093px * var(--min-scale)), calc(2093 * var(--pc-unit)), 2093px);
  top: 0;
  right: clamp(-60px, calc(-60 * var(--pc-unit)), calc(-60px * var(--min-scale)));
  mix-blend-mode: multiply;
}

.about-page .business-section .section-inner {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: clamp(85px * var(--min-scale), 85 * var(--pc-unit), 85px);
  padding-bottom: clamp(100px * var(--min-scale), 100 * var(--pc-unit), 100px);
}

.about-page .business-section .section-inner::before {
  content: '';
  position: absolute;
  z-index: -1;
  top: clamp(-170px, calc(-170 * var(--pc-unit)), calc(-170px * var(--min-scale)));
  right: clamp(-320px, calc(-320 * var(--pc-unit)), calc(-320px * var(--min-scale)));
  display: inline-block;
  width: clamp(calc(1921px * var(--min-scale)), calc(1921 * var(--pc-unit)), 1921px);
  height: clamp(calc(1964px * var(--min-scale)), calc(1964 * var(--pc-unit)), 1964px);
  background: url("../images/about/bk-business-01.webp") no-repeat;
  background-position: center;
  background-size: contain;
  pointer-events: none;
  mix-blend-mode: multiply;
}

.about-page .business-section .section-inner::after {
  content: '';
  position: absolute;
  z-index: -1;
  bottom: clamp(-70px, calc(-70 * var(--pc-unit)), calc(-70px * var(--min-scale)));
  right: clamp(-320px, calc(-320 * var(--pc-unit)), calc(-320px * var(--min-scale)));
  display: inline-block;
  width: clamp(calc(1923px * var(--min-scale)), calc(1923 * var(--pc-unit)), 1923px);
  height: clamp(calc(1259px * var(--min-scale)), calc(1259 * var(--pc-unit)), 1259px);
  background: url("../images/about/bk-business-02.webp") no-repeat;
  background-position: center;
  background-size: contain;
  pointer-events: none;
}

.about-page .business-section .section-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.about-page .business-section .section-row > * {
  flex-shrink: 0;
}

.about-page .business-section .section-top .section-text-box {
  margin-top: clamp(calc(100px * var(--min-scale)), calc(100 * var(--pc-unit)), 100px);
  color: var(--color-white);
}

.about-page .business-section .section-top .business-lead {
  margin-bottom: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
  font-size: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
  letter-spacing: 0.12em;
  line-height: 1.8;
}

.about-page .business-section .section-top .business-desc {
  font-size: clamp(calc(19px * var(--min-scale)), calc(19 * var(--pc-unit)), 19px);
  line-height: 2.6;
}

.about-page .business-section .section-top .section-image-box {
  position: relative;
  right: clamp(-330px, calc(-330 * var(--pc-unit)), calc(-330px * var(--min-scale)));
  width: clamp(calc(1001px * var(--min-scale)), calc(1001 * var(--pc-unit)), 1001px);
  height: clamp(523px * var(--min-scale), 523 * var(--pc-unit), 523px);
  margin-left: clamp(-320px, calc(-320 * var(--pc-unit)), calc(-320px * var(--min-scale)));
  clip-path: polygon(43% 0%, 100% 0%, 57% 100%, 0% 100%);
  overflow: hidden;
}

.about-page .business-section .section-top .section-image-box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.about-page .business-section .section-bottom {
  width: clamp(calc(1127px * var(--min-scale)), calc(1127 * var(--pc-unit)), 1127px);
}

.about-page .business-section .section-bottom .business-card-container {
  display: flex;
  flex-direction: column;
  width: 100%;
  gap: clamp(calc(30px * var(--min-scale)), calc(30 * var(--pc-unit)), 30px);
}

.about-page .business-section .section-bottom .business-card {
  display: flex;
  background-color: var(--color-white);
  border-radius: clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px);
  padding: clamp(calc(40px * var(--min-scale)), calc(40 * var(--pc-unit)), 40px) clamp(calc(60px * var(--min-scale)), calc(60 * var(--pc-unit)), 60px);
  overflow: hidden;
}

.about-page .business-section .section-bottom .business-card .card-header {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
}

.about-page .business-section .section-bottom .business-card .card-header .en {
  font-size: clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px);
  letter-spacing: 0.05em;
  line-height: 1.5;
}

.about-page .business-section .section-bottom .business-card .card-header .ja {
  width: 100%;
  text-align: center;
  font-size: clamp(calc(35px * var(--min-scale)), calc(35 * var(--pc-unit)), 35px);
  letter-spacing: 0.12em;
  line-height: 2.8;
  white-space: nowrap;
  border-top: 2px solid var(--color-primary-blue);
  border-bottom: 2px solid var(--color-primary-blue);
}

.about-page .business-section .section-bottom .item-core {
  flex-direction: row;
  align-items: center;
  gap: clamp(calc(30px * var(--min-scale)), calc(30 * var(--pc-unit)), 30px);
  padding: clamp(calc(60px * var(--min-scale)), calc(60 * var(--pc-unit)), 60px);
}

.about-page .business-section .section-bottom .item-core .card-header {
  min-width: clamp(calc(245px * var(--min-scale)), calc(245 * var(--pc-unit)), 245px);
}

.about-page .business-section .section-bottom .item-core .card-body {
  display: flex;
  align-items: center;
  gap: clamp(calc(10px * var(--min-scale)), calc(10 * var(--pc-unit)), 10px);
}

.about-page .business-section .section-bottom .item-core .business-item {
  flex: 1;
  padding: clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px);
  background-color: #E9F1FF;
}

.about-page .business-section .section-bottom .item-core .item-title {
  position: relative;
  z-index: 1;
  display: inline-block;
  margin-bottom: clamp(calc(15px * var(--min-scale)), calc(15 * var(--pc-unit)), 15px);
  font-size: clamp(calc(28px * var(--min-scale)), calc(28 * var(--pc-unit)), 28px);
  letter-spacing: 0.2em;
  color: var(--color-white);
}

.about-page .business-section .section-bottom .item-core .item-title::before {
  content: '';
  position: absolute;
  z-index: -1;
  top: 50%;
  left: clamp(-20px, calc(-20 * var(--pc-unit)), calc(-20px * var(--min-scale)));
  transform: translateY(-50%);
  display: inline-block;
  width: clamp(calc(190px * var(--min-scale)), calc(190 * var(--pc-unit)), 190px);
  height: clamp(calc(46px * var(--min-scale)), calc(46 * var(--pc-unit)), 46px);
  background-color: var(--color-primary-blue);
  clip-path: polygon(0% 0%, 100% 0%, 85% 100%, 0% 100%);
  pointer-events: none;
}

.about-page .business-section .section-bottom .item-core .item-separator {
  flex-shrink: 0;
  width: clamp(calc(38px * var(--min-scale)), calc(38 * var(--pc-unit)), 38px);
  height: clamp(calc(38px * var(--min-scale)), calc(38 * var(--pc-unit)), 38px);
  display: flex;
  align-items: center;
  justify-content: center;
}

.about-page .business-section .section-bottom .business-sub-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(calc(30px * var(--min-scale)), calc(30 * var(--pc-unit)), 30px);
  width: 100%;
}

.about-page .business-section .section-bottom .item-sub {
  flex-direction: column;
  gap: clamp(calc(30px * var(--min-scale)), calc(30 * var(--pc-unit)), 30px);
}

.about-page .business-section .business-card .item-text {
  font-size: clamp(calc(19px * var(--min-scale)), calc(19 * var(--pc-unit)), 19px);
  line-height: 1.8;
}

.about-page .group-section {
  padding-bottom: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
}

.about-page .group-section::before {
  content: '';
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  display: inline-block;
  width: clamp(calc(1920px * var(--min-scale)), calc(1920 * var(--pc-unit)), 1920px);
  height: clamp(calc(3246px * var(--min-scale)), calc(3246 * var(--pc-unit)), 3246px);
  background: url("../images/about/bk-full-01.webp") no-repeat;
  background-position: center;
  background-size: contain;
  pointer-events: none;
  mix-blend-mode: multiply;
}

.about-page .group-section .fv-shapes img.img-left {
  width: clamp(calc(573px * var(--min-scale)), calc(573 * var(--pc-unit)), 573px);
  top: clamp(calc(158px * var(--min-scale)), calc(158 * var(--pc-unit)), 158px);
  left: clamp(-74px, calc(-74 * var(--pc-unit)), calc(-74px * var(--min-scale)));
}

.about-page .group-section .fv-shapes img.img-right {
  width: clamp(calc(402px * var(--min-scale)), calc(402 * var(--pc-unit)), 402px);
  top: clamp(calc(710px * var(--min-scale)), calc(710 * var(--pc-unit)), 710px);
  right: clamp(-77px, calc(-77 * var(--pc-unit)), calc(-77px * var(--min-scale)));
}

.about-page .group-section .section-inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: clamp(calc(300px * var(--min-scale)), calc(300 * var(--pc-unit)), 300px);
  width: clamp(calc(1600px * var(--min-scale)), calc(1600 * var(--pc-unit)), 1600px);
  padding: clamp(calc(10px * var(--min-scale)), calc(10 * var(--pc-unit)), 10px) clamp(calc(160px * var(--min-scale)), calc(160 * var(--pc-unit)), 160px);
  background-color: var(--color-white);
}

.about-page .group-section .section-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

.about-page .group-section .section-row > * {
  flex-shrink: 0;
}

.about-page .group-section .section-message .business-lead {
  margin-bottom: clamp(calc(70px * var(--min-scale)), calc(70 * var(--pc-unit)), 70px);
  font-size: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
  letter-spacing: 0.12em;
  line-height: 2;
}

.about-page .group-section .section-message .business-desc {
  font-size: clamp(calc(19px * var(--min-scale)), calc(19 * var(--pc-unit)), 19px);
  line-height: 1.8;
}

.about-page .group-section .section-message .section-image-box {
  position: relative;
  right: clamp(-403px, calc(-403 * var(--pc-unit)), calc(-403px * var(--min-scale)));
  width: clamp(calc(1004px * var(--min-scale)), calc(1004 * var(--pc-unit)), 1004px);
  margin-left: clamp(-620px, calc(-620 * var(--pc-unit)), calc(-620px * var(--min-scale)));
}

.about-page .group-section .section-row .section-text-box span {
  font-size: clamp(calc(25px * var(--min-scale)), calc(25 * var(--pc-unit)), 25px);
  line-height: 2;
}

.about-page .group-section .section-row .section-text-box .section-title {
  width: clamp(430px * var(--min-scale), 430 * var(--pc-unit), 430px);
}

.about-page .group-section .section-vision .section-image-box {
  position: relative;
  z-index: 1;
  font-size: clamp(calc(30px * var(--min-scale)), calc(30 * var(--pc-unit)), 30px);
  line-height: 2.6;
  letter-spacing: 0.1em;
  color: var(--color-white);
}

.about-page .group-section .section-vision .section-image-box::after {
  content: '';
  position: absolute;
  z-index: -1;
  top: 50%;
  right: clamp(-320px, calc(-320 * var(--pc-unit)), calc(-320px * var(--min-scale)));
  transform: translateY(-50%);
  display: inline-block;
  width: clamp(calc(1174px * var(--min-scale)), calc(1174 * var(--pc-unit)), 1174px);
  height: clamp(calc(409px * var(--min-scale)), calc(409 * var(--pc-unit)), 409px);
  background: url("../images/about/bk-vision.webp") no-repeat;
  background-position: center;
  background-size: contain;
  pointer-events: none;
  mix-blend-mode: multiply;
}

.about-page .group-section .section-vision .section-image-box h4 {
  position: relative;
  left: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
}

.about-page .group-section .section-core-value .section-image-box {
  position: relative;
  right: clamp(-120px, calc(-120 * var(--pc-unit)), calc(-120px * var(--min-scale)));
  width: clamp(calc(860px * var(--min-scale)), calc(860 * var(--pc-unit)), 860px);
}

.about-page .group-section .section-core-value .section-btn {
  justify-content: center;
  margin: clamp(calc(100px * var(--min-scale)), calc(100 * var(--pc-unit)), 100px) auto clamp(calc(150px * var(--min-scale)), calc(150 * var(--pc-unit)), 150px);
}

.about-page .group-section .section-core-value .section-btn .btn-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: clamp(calc(516px * var(--min-scale)), calc(516 * var(--pc-unit)), 516px);
  height: clamp(calc(102px * var(--min-scale)), calc(102 * var(--pc-unit)), 102px);
  padding-left: clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px);
  font-size: clamp(calc(35px * var(--min-scale)), calc(35 * var(--pc-unit)), 35px);
  letter-spacing: 0.1em;
  text-decoration: none;
  transition: all 0.3s ease;
  background-color: var(--color-primary-blue);
  color: var(--color-white);
  border-radius: clamp(calc(51px * var(--min-scale)), calc(51 * var(--pc-unit)), 51px);
}

.about-page .group-section .section-core-value .section-btn .btn-arrow .btn-icon {
  display: flex;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: clamp(calc(97px * var(--min-scale)), calc(97 * var(--pc-unit)), 97px);
  height: 100%;
  overflow: hidden;
}

.about-page .group-section .section-core-value .section-btn .btn-arrow:hover .btn-icon img {
  animation: arrowMove 1s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.about-page .point-section {
  padding: 0;
}

.about-page .point-section .section-header-box {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: clamp(calc(70px * var(--min-scale)), calc(70 * var(--pc-unit)), 70px);
  margin-bottom: clamp(calc(90px * var(--min-scale)), calc(90 * var(--pc-unit)), 90px);
}

.about-page .point-section .section-header-box > * {
  flex-shrink: 0;
}

.about-page .point-section .section-header-box .point-lead {
  position: relative;
  padding: clamp(calc(40px * var(--min-scale)), calc(40 * var(--pc-unit)), 40px) 0;
  font-size: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
  letter-spacing: 0.12em;
  line-height: 2;
}

.about-page .point-section .section-header-box .point-lead::before {
  content: '';
  position: absolute;
  top: 50%;
  left: clamp(-320px, calc(-320 * var(--pc-unit)), calc(-320px * var(--min-scale)));
  transform: translateY(-50%);
  display: inline-block;
  width: clamp(calc(888px * var(--min-scale)), calc(888 * var(--pc-unit)), 888px);
  height: 100%;
  border-top: 2px solid var(--color-primary-blue);
  border-bottom: 2px solid var(--color-primary-blue);
  pointer-events: none;
}

.about-page .point-section .section-header-box .point-desc {
  font-size: clamp(calc(19px * var(--min-scale)), calc(19 * var(--pc-unit)), 19px);
  line-height: 2.6;
}

.about-page .point-section .banner-wrap {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  gap: clamp(calc(60px * var(--min-scale)), calc(60 * var(--pc-unit)), 60px);
}

.about-page .point-section .item-banner {
  position: relative;
  color: var(--color-white);
  display: flex;
  align-items: center;
  width: clamp(calc(2032px * var(--min-scale)), calc(2032 * var(--pc-unit)), 2032px);
}

.about-page .point-section .item-banner >  * {
  flex-shrink: 0;
}

.about-page .point-section .item-banner::before {
  content: '';
  position: absolute;
  z-index: -1;
  top: 50%;
  transform: translateY(-50%);
  display: inline-block;
  width: clamp(calc(1698px * var(--min-scale)), calc(1698 * var(--pc-unit)), 1698px);
  height: clamp(calc(567px * var(--min-scale)), calc(567 * var(--pc-unit)), 567px);
  pointer-events: none;
  clip-path: polygon(27% 0%, 100% 0%, 73% 100%, 0% 100%);
}

.about-page .point-section .item-banner .banner-visual-wrap {
  width: clamp(calc(883px * var(--min-scale)), calc(883 * var(--pc-unit)), 883px);
  height: clamp(calc(567px * var(--min-scale)), calc(567 * var(--pc-unit)), 567px);
  overflow: hidden;
}

.about-page .point-section .item-banner .banner-content {
  position: relative;
}

.about-page .point-section .item-banner .banner-num {
  position: absolute;
  z-index: 1;
  top: 50%;
  transform: translateY(-50%);
  font-size: clamp(calc(442px * var(--min-scale)), calc(442 * var(--pc-unit)), 442px);
}

.about-page .point-section .item-banner .banner-title {
  position: relative;
  margin-bottom: clamp(calc(40px * var(--min-scale)), calc(40 * var(--pc-unit)), 40px);
  font-size: clamp(calc(40px * var(--min-scale)), calc(40 * var(--pc-unit)), 40px);
  letter-spacing: 0.12em;
  line-height: 2.2;
}

.about-page .point-section .item-banner .banner-title::before {
  content: '';
  position: absolute;
  top: 0;
  z-index: -1;
  height: 100%;
  clip-path: polygon(6% 0%, 100% 0%, 94% 100%, 0% 100%);
  background: var(--color-white);
}

.about-page .point-section .item-banner .banner-desc {
  width: clamp(calc(690px * var(--min-scale)), calc(690 * var(--pc-unit)), 690px);
  font-size: clamp(calc(19px * var(--min-scale)), calc(19 * var(--pc-unit)), 19px);
  line-height: 2.6;
}

.about-page .point-section .item-01 {
  justify-content: flex-start;
}

.about-page .point-section .item-01::before {
  left: clamp(calc(340px * var(--min-scale)), calc(340 * var(--pc-unit)), 340px);
  background: var(--color-primary-blue);
  clip-path: polygon(27% 0%, 100% 0%, 73% 100%, 0% 100%);
}

.about-page .point-section .item-01 .banner-visual-wrap {
  clip-path: polygon(0% 0%, 100% 0%, 47% 100%, 0% 100%);
}

.about-page .point-section .item-01 .banner-content {
  margin-left: clamp(calc(80px * var(--min-scale)), calc(80 * var(--pc-unit)), 80px);
}

.about-page .point-section .item-01 .banner-num {
  left: clamp(-420px, calc(-420 * var(--pc-unit)), calc(-420px * var(--min-scale)));
  color: #0038FF;
}

.about-page .point-section .item-01 .banner-title::before {
  width: clamp(calc(1185px * var(--min-scale)), calc(1185 * var(--pc-unit)), 1185px);
  left: clamp(-80px, calc(-80 * var(--pc-unit)), calc(-80px * var(--min-scale)));
}

.about-page .point-section .item-01 .banner-title span {
  color: var(--color-primary-blue);
}

.about-page .point-section .item-02 {
  justify-content: flex-end;
}

.about-page .point-section .item-02::before {
  left: clamp(-60px, calc(-60 * var(--pc-unit)), calc(-60px * var(--min-scale)));
  background: #0038FF;
  clip-path: polygon(27% 0%, 100% 0%, 73% 100%, 0% 100%);
}

.about-page .point-section .item-02 .banner-visual-wrap {
  clip-path: polygon(47% 0%, 100% 0%, 100% 100%, 0% 100%);
}

.about-page .point-section .item-02 .banner-content {
  right: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
}

.about-page .point-section .item-02 .banner-num {
  right: clamp(-350px, calc(-350 * var(--pc-unit)), calc(-350px * var(--min-scale)));
  color: var(--color-primary-blue);
}

.about-page .point-section .item-02 .banner-title::before {
  width: clamp(calc(1083px * var(--min-scale)), calc(1083 * var(--pc-unit)), 1083px);
  right: clamp(-50px, calc(-50 * var(--pc-unit)), calc(-50px * var(--min-scale)));
}

.about-page .point-section .item-02 .banner-title span {
  color: #0038FF;
}

.about-page .system-section {
  padding: clamp(calc(250px * var(--min-scale)), calc(250 * var(--pc-unit)), 250px) 0;
}

.about-page .system-section::before {
  content: '';
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  display: inline-block;
  width: clamp(calc(1920px * var(--min-scale)), calc(1920 * var(--pc-unit)), 1920px);
  height: clamp(calc(2243px * var(--min-scale)), calc(2243 * var(--pc-unit)), 2243px);
  background: url("../images/about/bk-full-02.webp") no-repeat;
  background-position: center;
  background-size: contain;
  pointer-events: none;
  mix-blend-mode: multiply;
}

.about-page .system-section .card-wrap {
  position: relative;
}

.about-page .system-section .card-wrap::before {
  content: '';
  position: absolute;
  z-index: -1;
  top: 50%;
  left: clamp(-525px, calc(-525 * var(--pc-unit)), calc(-525px * var(--min-scale)));
  transform: translateY(-50%);
  display: inline-block;
  width: clamp(calc(1882px * var(--min-scale)), calc(1882 * var(--pc-unit)), 1882px);
  height: clamp(calc(542px * var(--min-scale)), calc(542 * var(--pc-unit)), 542px);
  background: url("../images/about/bk-system.webp") no-repeat;
  background-position: center;
  background-size: contain;
  pointer-events: none;
}

.about-page .system-section .item-card {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}

.about-page .system-section .item-card .card-content-wrap {
  width: clamp(calc(630px * var(--min-scale)), calc(630 * var(--pc-unit)), 630px);
}

.about-page .system-section .card-title {
  margin-bottom: clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px);
  font-size: clamp(calc(40px * var(--min-scale)), calc(40 * var(--pc-unit)), 40px);
  letter-spacing: 0.12em;
  line-height: 2.2;
}

.about-page .system-section .card-desc {
  font-size: clamp(calc(19px * var(--min-scale)), calc(19 * var(--pc-unit)), 19px);
  line-height: 2.6;
}

.about-page .system-section .card-btn-wrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: clamp(calc(60px * var(--min-scale)), calc(60 * var(--pc-unit)), 60px);
  position: relative;
  right: clamp(-160px, calc(-160 * var(--pc-unit)), calc(-160px * var(--min-scale)));
}

.about-page .system-section .btn-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: clamp(calc(633px * var(--min-scale)), calc(633 * var(--pc-unit)), 633px);
  height: clamp(calc(126px * var(--min-scale)), calc(126 * var(--pc-unit)), 126px);
  padding-left: clamp(calc(40px * var(--min-scale)), calc(40 * var(--pc-unit)), 40px);
  font-size: clamp(calc(27px * var(--min-scale)), calc(27 * var(--pc-unit)), 27px);
  letter-spacing: 0.1em;
  text-decoration: none;
  transition: all 0.3s ease;
  background-color: var(--color-white);
  color: var(--color-white);
  border-radius: clamp(calc(63px * var(--min-scale)), calc(63 * var(--pc-unit)), 63px);
}

.about-page .system-section .btn-arrow.btn-01 {
  background-color: var(--color-primary-blue);
}

.about-page .system-section .btn-arrow.btn-02 {
  background-color: var(--color-primary-skyblue);
}

.about-page .system-section .btn-arrow .btn-icon {
  display: flex;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: clamp(calc(99px * var(--min-scale)), calc(99 * var(--pc-unit)), 99px);
  height: 100%;
  overflow: hidden;
}

.about-page .system-section .btn-arrow:hover .btn-icon img {
  animation: arrowMove 1s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.about-page .future-section {
  padding-bottom: clamp(calc(250px * var(--min-scale)), calc(250 * var(--pc-unit)), 250px);
}

.about-page .future-section .wrap {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.about-page .future-section .wrap::after {
  content: '';
  position: absolute;
  z-index: -1;
  bottom: clamp(-20px, calc(-20 * var(--pc-unit)), calc(-20px * var(--min-scale)));
  right: clamp(-432px, calc(-432 * var(--pc-unit)), calc(-432px * var(--min-scale)));
  display: inline-block;
  width: clamp(calc(1095px * var(--min-scale)), calc(1095 * var(--pc-unit)), 1095px);
  height: clamp(calc(515px * var(--min-scale)), calc(515 * var(--pc-unit)), 515px);
  background: url("../images/about/bk-future.webp") no-repeat;
  background-position: center;
  background-size: contain;
  pointer-events: none;
}

.about-page .future-section .wrap > * {
  flex-shrink: 0;
}

.about-page .future-section .future-text-wrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: clamp(calc(60px * var(--min-scale)), calc(60 * var(--pc-unit)), 60px);
  margin-right: clamp(-400px, calc(-400 * var(--pc-unit)), calc(-400px * var(--min-scale)));
}

.about-page .future-section .future-lead {
  position: relative;
  z-index: 1;
  left: clamp(-320px, calc(-320 * var(--pc-unit)), calc(-320px * var(--min-scale)));
  width: clamp(calc(1295px * var(--min-scale)), calc(1295 * var(--pc-unit)), 1295px);
}

.about-page .future-section .future-text-block p {
  font-size: clamp(calc(19px * var(--min-scale)), calc(19 * var(--pc-unit)), 19px);
  line-height: 2.6;
}

.about-page .future-section .future-image-box {
  position: relative;
  left: clamp(-400px, calc(-400 * var(--pc-unit)), calc(-400px * var(--min-scale)));
  width: clamp(calc(1365px * var(--min-scale)), calc(1365 * var(--pc-unit)), 1365px);
  height: clamp(734px * var(--min-scale), 734 * var(--pc-unit), 734px);
  margin-top: clamp(calc(80px * var(--min-scale)), calc(80 * var(--pc-unit)), 80px);
  margin-right: clamp(-580px, calc(-580 * var(--pc-unit)), calc(-580px * var(--min-scale)));
  clip-path: polygon(43% 0%, 100% 0%, 57% 100%, 0% 100%);
  overflow: hidden;
}

.about-page .future-section .future-image-box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media screen and (max-width: 1280px) {
  .about-page .point-section .section-inner {
    width: 100%;
  }

  .about-page .point-section .section-header-box {
    justify-content: center;
  }

  .about-page .point-section .section-header-box .point-lead {
    font-size: clamp(calc(45px * var(--min-scale)), calc(45 * var(--pc-unit)), 45px);
  }

  .about-page .group-section .section-core-value .section-image-box {
    width: clamp(calc(760px * var(--min-scale)), calc(760 * var(--pc-unit)), 760px);
  }
}

@media screen and (max-width: 1024px) {
  .about-page .group-section .section-row .section-text-box .section-title {
    width: clamp(300px * var(--min-scale), 300 * var(--pc-unit), 300px);
  }

  .about-page .group-section .section-inner {
    width: 100%;
    padding: clamp(calc(10px * var(--min-scale)), calc(10 * var(--pc-unit)), 10px) clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px);
  }

  .about-page .group-section .section-row {
    width: clamp(1100px * var(--min-scale), 1100 * var(--pc-unit), 1100px);
    margin: 0 auto;
  }

  .about-page .group-section .section-col {
    margin: 0 auto;
  }
  
  .about-page .group-section .section-message {
    flex-direction: column;
  }

  .about-page .group-section .section-message .section-image-box {
    margin-top: clamp(-300px, calc(-300 * var(--pc-unit)), calc(-300px * var(--min-scale)));
    right: clamp(-603px, calc(-603 * var(--pc-unit)), calc(-603px * var(--min-scale)));
  }

  .about-page .group-section .section-vision .section-image-box h4 {
    left: 0;
  }

  .about-page .group-section .section-core-value .section-image-box {
    right: 0;
    width: clamp(calc(660px * var(--min-scale)), calc(660 * var(--pc-unit)), 660px);
  }

  .about-page .point-section .section-header-box {
    padding: 0 clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px);
  }

  .about-page .point-section .section-header-box .point-desc {
    flex-shrink: unset;
  }

  .about-page .point-section .banner-wrap {
    gap: clamp(calc(220px * var(--min-scale)), calc(220 * var(--pc-unit)), 220px);
  }

  .about-page .point-section .item-banner {
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
  }

  .about-page .point-section .item-01::before {
    top: 78%;
    left: auto;
    right: clamp(-400px, calc(-400 * var(--pc-unit)), calc(-400px * var(--min-scale)));
  }

  .about-page .point-section .item-01 .banner-visual-wrap {
    margin-right: auto;
  }

  .about-page .point-section .item-01 .banner-content {
    margin-left: auto;
    margin-right: clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px);
  }

  .about-page .point-section .item-02::before {
    top: 20%;
    left: clamp(-400px, calc(-400 * var(--pc-unit)), calc(-400px * var(--min-scale)));
  }

  .about-page .point-section .item-02 .banner-visual-wrap {
    margin-left: auto;
  }

  .about-page .point-section .item-02 .banner-content {
    margin-right: auto;
    margin-left: clamp(calc(100px * var(--min-scale)), calc(100 * var(--pc-unit)), 100px);
  }

  .about-page .system-section .card-wrap::before {
    width: clamp(calc(2682px * var(--min-scale)), calc(2682 * var(--pc-unit)), 2682px);
    height: clamp(calc(842px * var(--min-scale)), calc(842 * var(--pc-unit)), 842px);
  }

  .about-page .system-section .item-card {
    flex-direction: column;
  }

  .about-page .system-section .card-btn-wrap {
    right: 0;
    gap: clamp(calc(30px * var(--min-scale)), calc(30 * var(--pc-unit)), 30px);
  }

  .about-page .future-section .wrap {
    flex-direction: column;
  }

  .about-page .future-section .wrap::after {
    right: clamp(-252px, calc(-252 * var(--pc-unit)), calc(-252px * var(--min-scale)));
  }

  .about-page .future-section .future-image-box {
    left: auto;
    right: clamp(-100px, calc(-100 * var(--pc-unit)), calc(-100px * var(--min-scale)));
  }
}

@media screen and (max-width: 768px) {
  .about-page .fv-section .deco-line.from-top#deco-line-01 {
    top: 0;
    left: 0;
    right: auto;
    width: calc(780 * var(--sp-unit));
  }

  .about-page .fv-section .deco-line.from-top#deco-line-02 {
    top: calc(1050 * var(--sp-unit));
    right: calc(-10 * var(--sp-unit));
    width: calc(500 * var(--sp-unit));
  }

  .about-page .intro-section .intro-lead {
    width: calc(696 * var(--sp-unit));
  }

  .about-page .business-section .fv-shapes img {
    width: calc(780 * var(--sp-unit));
    right: 0;
  }

  .about-page .business-section .section-inner {
    gap: calc(260 * var(--sp-unit));
    padding-bottom: calc(100 * var(--sp-unit));
  }

  .about-page .business-section .section-inner::before {
    top: calc(-50 * var(--sp-unit));
    left: calc(-50 * var(--sp-unit));
    right: auto;
    width: calc(780 * var(--sp-unit));
    height: calc(2529 * var(--sp-unit));
    background: url("../images/about/bk-business-01-sp.webp") no-repeat;
    background-position: top;
    background-size: contain;
  }

  .about-page .business-section .section-inner::after {
    right: calc(-50 * var(--sp-unit));
    width: calc(780 * var(--sp-unit));
    height: calc(2977 * var(--sp-unit));
    background: url("../images/about/bk-business-02-sp.webp") no-repeat;
    background-position: top;
    background-size: contain;
  }

  .about-page .business-section .section-row {
    flex-direction: column-reverse;
  }

  .about-page .business-section .section-row > * {
    flex-shrink: unset;
  }

  .about-page .business-section .section-top .section-text-box {
    margin-top: 0;
  }

  .about-page .business-section .section-top .business-lead {
    margin-bottom: calc(50 * var(--sp-unit));
    font-size: calc(50 * var(--sp-unit));
    line-height: 1.5;
  }

  .about-page .business-section .section-top .business-desc {
    font-size: calc(30 * var(--sp-unit));
    line-height: 1.8;
  }

  .about-page .business-section .section-top .section-image-box {
    top: calc(-50 * var(--sp-unit));
    right: calc(-410 * var(--sp-unit));
    width: calc(933 * var(--sp-unit));
    height: calc(564 * var(--sp-unit));
    margin-left: calc(-320 * var(--sp-unit));
  }

  .about-page .business-section .section-bottom {
    width: 100%;
  }

  .about-page .business-section .section-bottom .business-card-container {
    gap: calc(30 * var(--sp-unit));
  }

  .about-page .business-section .section-bottom .business-card {
    border-radius: calc(20 * var(--sp-unit));
    padding: calc(40 * var(--sp-unit)) calc(60 * var(--sp-unit));
  }

  .about-page .business-section .section-bottom .business-card .card-header .en {
    font-size: calc(20 * var(--sp-unit));
  }

  .about-page .business-section .section-bottom .business-card .card-header .ja {
    font-size: calc(40 * var(--sp-unit));
  }

  .about-page .business-section .section-bottom .item-core {
    flex-direction: column;
    gap: calc(30 * var(--sp-unit));
    padding: calc(60 * var(--sp-unit)) calc(50 * var(--sp-unit));
  }

  .about-page .business-section .section-bottom .item-core .card-header {
    min-width: calc(245 * var(--sp-unit));
  }

  .about-page .business-section .section-bottom .item-core .card-body {
    flex-direction: column;
    gap: calc(10 * var(--sp-unit));
  }

  .about-page .business-section .section-bottom .item-core .business-item {
    padding: calc(30 * var(--sp-unit));
  }

  .about-page .business-section .section-bottom .item-core .item-title {
    margin-bottom: calc(15 * var(--sp-unit));
    font-size: calc(46 * var(--sp-unit));
  }

  .about-page .business-section .section-bottom .item-core .item-title::before {
    left: calc(-30 * var(--sp-unit));
    width: calc(311 * var(--sp-unit));
    height: calc(76 * var(--sp-unit));
  }

  .about-page .business-section .section-bottom .item-core .item-separator {
    width: calc(75 * var(--sp-unit));
    height: calc(75 * var(--sp-unit));
  }

  .about-page .business-section .section-bottom .business-sub-grid {
    display: flex;
    flex-direction: column;
    gap: calc(30 * var(--sp-unit));
  }

  .about-page .business-section .section-bottom .item-sub {
    gap: calc(30 * var(--sp-unit));
  }

  .about-page .business-section .business-card .item-text {
    font-size: calc(30 * var(--sp-unit));
  }

  .about-page .group-section {
    padding-top: calc(500 * var(--sp-unit));
    padding-bottom: calc(75 * var(--sp-unit));
  }

  .about-page .group-section::before {
    width: calc(779 * var(--sp-unit));
    height: calc(2916 * var(--sp-unit));
    background: url("../images/about/bk-full-01-sp.webp") no-repeat;
    background-position: center;
    background-size: contain;
  }

  .about-page .group-section .fv-shapes img.img-left {
    width: calc(573 * var(--sp-unit));
    top: calc(158 * var(--sp-unit));
    left: calc(-74 * var(--sp-unit));
  }

  .about-page .group-section .fv-shapes img.img-right {
    width: calc(402 * var(--sp-unit));
    top: calc(1810 * var(--sp-unit));
    right: calc(-77 * var(--sp-unit));
  }

  .about-page .group-section .section-inner {
    gap: calc(200 * var(--sp-unit));
    width: calc(680 * var(--sp-unit));
    padding: calc(10 * var(--sp-unit)) 0;
    margin: 0 auto;
  }

  .about-page .group-section .section-row {
    width: 100%;
    padding: calc(20 * var(--sp-unit));
    flex-direction: column;
    align-items: flex-start;
    gap: calc(150 * var(--sp-unit));
  }

  .about-page .group-section .section-message .business-lead {
    margin-bottom: calc(40 * var(--sp-unit));
    font-size: calc(37 * var(--sp-unit));
    letter-spacing: 0.05em;
    line-height: 1.7;
    white-space: nowrap;
  }

  .about-page .group-section .section-message .business-desc {
    font-size: calc(30 * var(--sp-unit));
  }

  .about-page .group-section .section-message .section-image-box {
    right: calc(-403 * var(--sp-unit));
    width: calc(1004 * var(--sp-unit));
    margin-left: calc(-420 * var(--sp-unit));
    margin-top: calc(-470 * var(--sp-unit));
  }

  .about-page .group-section .section-row .section-text-box span {
    font-size: calc(25 * var(--sp-unit));
  }

  .about-page .group-section .section-row .section-text-box .section-title {
    width: calc(430 * var(--sp-unit));
  }

  .about-page .group-section .section-vision .section-image-box {
    font-size: calc(30 * var(--sp-unit));
    line-height: 1.8;
    letter-spacing: 0.05em;
    margin-left: auto;
  }

  .about-page .group-section .section-vision .section-image-box::after {
    right: auto;
    left: calc(-260 * var(--sp-unit));
    width: calc(1174 * var(--sp-unit));
    height: calc(309 * var(--sp-unit));
  }

  .about-page .group-section .section-vision .section-image-box h4 {
    left: calc(50 * var(--sp-unit));
  }

  .about-page .group-section .section-core-value .section-image-box {
    right: auto;
    width: calc(647 * var(--sp-unit));
  }

  .about-page .group-section .section-core-value .section-btn {
    align-items: center;
    margin: calc(50 * var(--sp-unit)) auto;
  }

  .about-page .group-section .section-core-value .section-btn .btn-arrow {
    width: calc(516 * var(--sp-unit));
    height: calc(102 * var(--sp-unit));
    padding-left: calc(20 * var(--sp-unit));
    font-size: calc(35 * var(--sp-unit));
    border-radius: calc(51 * var(--sp-unit));
  }

  .about-page .group-section .section-core-value .section-btn .btn-arrow .btn-icon {
    width: calc(97 * var(--sp-unit));
  }

  .about-page .point-section .section-header-box {
    flex-direction: column;
    align-items: flex-start;
    gap: calc(30 * var(--sp-unit));
    padding: 0 calc(50 * var(--sp-unit));
    margin-bottom: calc(150 * var(--sp-unit));
  }

  .about-page .point-section .section-header-box .point-lead {
    padding: calc(30 * var(--sp-unit)) 0;
    font-size: calc(40 * var(--sp-unit));
    letter-spacing: 0.05em;
    line-height: 1.7;
  }

  .about-page .point-section .section-header-box .point-lead::before {
    left: calc(-320 * var(--sp-unit));
    width: calc(888 * var(--sp-unit));
  }

  .about-page .point-section .section-header-box .point-desc {
    font-size: calc(30 * var(--sp-unit));
    letter-spacing: 0.05em;
    line-height: 1.8;
  }

  .about-page .point-section .banner-wrap {
    gap: calc(250 * var(--sp-unit));
  }

  .about-page .point-section .item-banner {
    gap: calc(60 * var(--sp-unit));
  }

  .about-page .point-section .item-banner::before {
    width: calc(1356 * var(--sp-unit));
    height: calc(921 * var(--sp-unit));
    left: calc(-221 * var(--sp-unit));
  }

  .about-page .point-section .item-banner .banner-visual-wrap {
    width: calc(729 * var(--sp-unit));
    height: calc(472 * var(--sp-unit));
  }

  .about-page .point-section .item-banner .banner-num {
    font-size: calc(350 * var(--sp-unit));
  }

  .about-page .point-section .item-banner .banner-title {
    margin-bottom: calc(40 * var(--sp-unit));
    font-size: calc(35 * var(--sp-unit));
  }

  .about-page .point-section .item-banner .banner-desc {
    width: calc(690 * var(--sp-unit));
    font-size: calc(30 * var(--sp-unit));
    line-height: 1.8;
    letter-spacing: 0.05em;
  }

  .about-page .point-section .item-01 .banner-content {
    margin: 0;
    padding: 0 calc(50 * var(--sp-unit));
  }

  .about-page .point-section .item-01 .banner-num {
    left: auto;
    right: calc(100 * var(--sp-unit));
    top: calc(-250 * var(--sp-unit));
  }

  .about-page .point-section .item-01 .banner-title {
    right: calc(-50 * var(--sp-unit));
    padding-left: calc(50 * var(--sp-unit));
  }

  .about-page .point-section .item-01 .banner-title::before {
    left: 0;
    width: calc(756 * var(--sp-unit));
  }

  .about-page .point-section .item-02 {
    padding-top: calc(50 * var(--sp-unit));
  }

  .about-page .point-section .item-02::before {
    top: 35%;
    left: calc(-351 * var(--sp-unit));
  }

  .about-page .point-section .item-02 .banner-content {
    right: auto;
    margin: 0;
    padding: 0 calc(50 * var(--sp-unit));
  }

  .about-page .point-section .item-02 .banner-num {
    right: auto;
    left: calc(100 * var(--sp-unit));
    top: calc(750 * var(--sp-unit));
  }

  .about-page .point-section .item-02 .banner-title {
    left: calc(-50 * var(--sp-unit));
    padding-left: calc(50 * var(--sp-unit));
  }

  .about-page .point-section .item-02 .banner-title::before {
    width: calc(783 * var(--sp-unit));
    left: calc(-70 * var(--sp-unit));
    right: auto;
  }

  .about-page .system-section {
    display: inline-block;
    width: 100%;
    padding: 0 0 calc(75 * var(--sp-unit));
    margin-top: calc(250 * var(--sp-unit));
    background-color: var(--color-white);
  }

  .about-page .system-section::before {
    top: calc(-1000 * var(--sp-unit));
    width: calc(2920 * var(--sp-unit));
    height: calc(3543 * var(--sp-unit));
  }

  .about-page .system-section .card-wrap::before {
    top: calc(100 * var(--sp-unit));
    left: calc(-425 * var(--sp-unit));
    width: calc(1882 * var(--sp-unit));
    height: calc(542 * var(--sp-unit));
  }

  .about-page .system-section .item-card {
    gap: calc(30 * var(--sp-unit));
  }

  .about-page .system-section .item-card .card-content-wrap {
    width: calc(630 * var(--sp-unit));
  }

  .about-page .system-section .card-title {
    margin-bottom: calc(20 * var(--sp-unit));
    font-size: calc(40 * var(--sp-unit));
  }

  .about-page .system-section .card-desc {
    font-size: calc(30 * var(--sp-unit));
    line-height: 1.8;
    letter-spacing: 0.05em;
  }

  .about-page .system-section .card-btn-wrap {
    gap: calc(30 * var(--sp-unit));
  }

  .about-page .system-section .btn-arrow {
    width: calc(633 * var(--sp-unit));
    height: calc(126 * var(--sp-unit));
    padding-left: calc(40 * var(--sp-unit));
    font-size: calc(27 * var(--sp-unit));
    border-radius: calc(63 * var(--sp-unit));
  }

  .about-page .system-section .btn-arrow .btn-icon {
    width: calc(99 * var(--sp-unit));
  }

  .about-page .future-section {
    padding-bottom: calc(150 * var(--sp-unit));
  }

  .about-page .future-section .wrap::after {
    bottom: calc(-20 * var(--sp-unit));
    right: calc(-232 * var(--sp-unit));
    width: calc(816 * var(--sp-unit));
    height: calc(384 * var(--sp-unit));
  }

  .about-page .future-section .wrap > * {
    flex-shrink: unset;
  }

  .about-page .future-section .future-text-wrap {
    width: 100%;
    gap: calc(30 * var(--sp-unit));
    margin-right: 0;
  }

  .about-page .future-section .future-lead {
    left: calc(-50 * var(--sp-unit));
    width: calc(756 * var(--sp-unit));
  }

  .about-page .future-section .future-text-block p {
    font-size: calc(30 * var(--sp-unit));
    letter-spacing: 0.05em;
    line-height: 1.8;
  }

  .about-page .future-section .future-image-box {
    left: 0;
    width: calc(1017 * var(--sp-unit));
    height: calc(547 * var(--sp-unit));
    margin-top: calc(80 * var(--sp-unit));
    margin-right: calc(-580 * var(--sp-unit));
  }
}

/* jobs */
.jobs-page {
  overflow-x: visible;
}

.jobs-page .fv-section .deco-line.from-top#deco-line-01 {
  top: clamp(calc(10px * var(--min-scale)), calc(10 * var(--pc-unit)), 10px);
  left: clamp(-160px, calc(-160 * var(--pc-unit)), calc(-160px * var(--min-scale)));
  width: clamp(calc(2178px * var(--min-scale)), calc(2178 * var(--pc-unit)), 2178px);
}

.jobs-page .fv-section .deco-line.from-top#deco-line-02 {
  top: clamp(calc(399px * var(--min-scale)), calc(399 * var(--pc-unit)), 399px);
  right: clamp(-130px, calc(-130 * var(--pc-unit)), calc(-130px * var(--min-scale)));
  width: clamp(calc(688px * var(--min-scale)), calc(688 * var(--pc-unit)), 688px);
}

.jobs-page .fv-section .fv-image-box {
  margin-left: clamp(-70px, calc(-70 * var(--pc-unit)), calc(-70px * var(--min-scale)));
  clip-path: polygon(35% 0%, 100% 0%, 65% 100%, 0% 100%);
}

.jobs-page .intro-section {
  padding-bottom: clamp(calc(270px * var(--min-scale)), calc(270 * var(--pc-unit)), 270px);
}

.jobs-page .intro-section .intro-text-wrap {
  margin-left: clamp(calc(100px * var(--min-scale)), calc(100 * var(--pc-unit)), 100px);
}

.jobs-page .intro-section .intro-lead {
  width: clamp(calc(613px * var(--min-scale)), calc(613 * var(--pc-unit)), 613px);
}

.jobs-page .intro-section .intro-text-wrap .intro-text-block {
  margin-left: clamp(calc(100px * var(--min-scale)), calc(100 * var(--pc-unit)), 100px);
}

.jobs-page .common-section .section-header-box {
  position: relative;
  margin-bottom: clamp(calc(100px * var(--min-scale)), calc(100 * var(--pc-unit)), 100px);
  text-align: center;
}

.jobs-page .common-section .section-header-box .section-title-en {
  font-size: clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px);
  letter-spacing: 0.05em;
  line-height: 1.5;
}

.jobs-page .common-section .section-header-box .section-title-ja {
  width: clamp(calc(1014px * var(--min-scale)), calc(1014 * var(--pc-unit)), 1014px);
  margin: 0 auto;
  text-align: center;
  font-size: clamp(calc(45px * var(--min-scale)), calc(45 * var(--pc-unit)), 45px);
  letter-spacing: 0.12em;
  line-height: 2.2;
  white-space: nowrap;
  border-top: 2px solid var(--color-primary-blue);
  border-bottom: 2px solid var(--color-primary-blue);
}

.jobs-page .common-section .section-header-box .section-title-caption {
  position: absolute;
  bottom: clamp(-70px, calc(-70 * var(--pc-unit)), calc(-70px * var(--min-scale)));
  left: 50%;
  transform: translateX(-50%);
  font-size: clamp(calc(24px * var(--min-scale)), calc(24 * var(--pc-unit)), 24px);
  line-height: 1.4;
}

.jobs-page .workflow-section {
  padding: clamp(calc(80px * var(--min-scale)), calc(80 * var(--pc-unit)), 80px) 0;
  background-color: #ECF3FF;
}

.jobs-page .workflow-section .workflow-process-bar {
  display: grid;
  grid-template-columns: 1fr 1fr 2fr;
  width: 100%;
  height: clamp(calc(80px * var(--min-scale)), calc(80 * var(--pc-unit)), 80px);
  margin-bottom: clamp(calc(32px * var(--min-scale)), calc(32 * var(--pc-unit)), 32px);
  position: relative;
  overflow-y: clip;
}

.jobs-page .workflow-section .workflow-process-bar .process-step {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-white);
  font-size: clamp(calc(30px * var(--min-scale)), calc(30 * var(--pc-unit)), 30px);
  letter-spacing: 0.27em;
  position: relative;
  height: 100%;
  background: linear-gradient(90deg, #468AFF 0%, #0028A8 100%);
  clip-path: polygon(
    0% 0%, 
    calc(100% - 25px) 0%, 
    100% 50%, 
    calc(100% - 25px) 100%, 
    0% 100%, 
    25px 50%
  );
  margin-left: -25px;
}

.jobs-page .workflow-section .workflow-process-bar .process-step:first-child {
  margin-left: 0;
  clip-path: polygon(
    0% 0%, 
    calc(100% - 25px) 0%, 
    100% 50%, 
    calc(100% - 25px) 100%, 
    0% 100%
  );
}

.jobs-page .workflow-section .workflow-card-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: clamp(calc(27px * var(--min-scale)), calc(27 * var(--pc-unit)), 27px);
  width: 100%;
  margin-bottom: clamp(calc(43px * var(--min-scale)), calc(43 * var(--pc-unit)), 43px);
}

.jobs-page .workflow-section .workflow-card {
  background-color: var(--color-white);
  border-radius: clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px);
  padding: clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px) clamp(calc(35px * var(--min-scale)), calc(35 * var(--pc-unit)), 35px);
  display: flex;
  flex-direction: column;
  gap: clamp(calc(25px * var(--min-scale)), calc(25 * var(--pc-unit)), 25px);
}

.jobs-page .workflow-section .workflow-card .card-badge {
  width: 100%;
  padding: clamp(calc(10px * var(--min-scale)), calc(10 * var(--pc-unit)), 10px) 0;
  font-size: clamp(calc(30px * var(--min-scale)), calc(30 * var(--pc-unit)), 30px);
  letter-spacing: 0.27em;
  color: var(--color-white);
  text-align: center;
  border-radius: clamp(calc(3px * var(--min-scale)), calc(3 * var(--pc-unit)), 3px);
}

.jobs-page .workflow-section .workflow-card .card-badge.bg-blue { background-color: #2656FF; }
.jobs-page .workflow-section .workflow-card .card-badge.bg-blue-light { background-color: var(--color-primary-skyblue); }
.jobs-page .workflow-section .workflow-card .card-badge.bg-orange { background-color: #FF8626; }
.jobs-page .workflow-section .workflow-card .card-badge.bg-teal { background-color: #00AFBE; }

.jobs-page .workflow-section .workflow-card .card-text {
  font-size: clamp(calc(19px * var(--min-scale)), calc(19 * var(--pc-unit)), 19px);
  line-height: 1.8;
  letter-spacing: 0.03em;
}

.jobs-page .workflow-section .workflow-guide-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: clamp(calc(27px * var(--min-scale)), calc(27 * var(--pc-unit)), 27px);
  width: 100%;
}

.jobs-page .workflow-section .workflow-guide-row .guide-bubble {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px);
  padding: clamp(calc(13px * var(--min-scale)), calc(13 * var(--pc-unit)), 13px) 0;
  color: var(--color-white);
  font-size: clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px);
  line-height: 1.7; 
  text-align: center;
}

.jobs-page .workflow-section .workflow-guide-row .bubble-blue {
  grid-column: 1 / 2;
  background-color: #2656FF;
}

.jobs-page .workflow-section .workflow-guide-row .bubble-orange {
  grid-column: 3 / 4;
  background-color: #FF8626;
}

.jobs-page .workflow-section .workflow-guide-row .guide-bubble::before {
  content: '';
  position: absolute;
  top: clamp(-18px, calc(-18 * var(--pc-unit)), calc(-18px * var(--min-scale)));
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: clamp(calc(15px * var(--min-scale)), calc(15 * var(--pc-unit)), 15px) solid transparent;
  border-right: clamp(calc(15px * var(--min-scale)), calc(15 * var(--pc-unit)), 15px) solid transparent;
}

.jobs-page .workflow-section .workflow-guide-row .bubble-blue::before { border-bottom: clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px) solid #2656FF; }
.jobs-page .workflow-section .workflow-guide-row .bubble-orange::before { border-bottom: clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px) solid #FF8626; }

.jobs-page .introduction-section {
  padding: clamp(calc(80px * var(--min-scale)), calc(80 * var(--pc-unit)), 80px) 0 clamp(calc(340px * var(--min-scale)), calc(340 * var(--pc-unit)), 340px);
  background-color: #ECF3FF;
}

.jobs-page .introduction-section .section-inner {
  display: flex;
  flex-direction: column;
}

.jobs-page .introduction-section .job-sticky-tab {
  position: -webkit-sticky;
  position: sticky;
  top: 83px;
  z-index: 10;
  width: 100%;
  background-color: var( --color-primary-blue);
}

.jobs-page .introduction-section .job-sticky-tab .tab-list {
  display: flex;
  list-style: none;
  padding: 0;
  margin: 0;
  width: 100%;
}

.jobs-page .introduction-section .job-sticky-tab .tab-item {
  flex: 1;
  text-align: center;
  border-right: 1px solid rgb(255 255 255 / 50%);
}

.jobs-page .introduction-section .job-sticky-tab .tab-item:last-child {
  border-right: none;
}

.jobs-page .introduction-section .job-sticky-tab .tab-item a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: clamp(calc(80px * var(--min-scale)), calc(80 * var(--pc-unit)), 80px);
  color: var(--color-white);
  font-size: clamp(calc(24px * var(--min-scale)), calc(24 * var(--pc-unit)), 24px);
  font-weight: var(--weight-light);
  letter-spacing: 0.15em;
  text-decoration: none;
  transition: background-color 0.3s ease;
  white-space: nowrap;
}

.jobs-page .introduction-section .job-sticky-tab .tab-item.active a,
.jobs-page .introduction-section .job-sticky-tab .tab-item a:hover {
  background-color: #0038FF;
}

.jobs-page .introduction-section .job-content-container {
  display: flex;
  flex-direction: column;
  gap: clamp(calc(150px * var(--min-scale)), calc(150 * var(--pc-unit)), 150px);
  width: 100%;
}

.jobs-page .introduction-section .job-article-box {
  display: flex;
  justify-content: space-between;
  width: 100%;
  min-height: clamp(calc(706px * var(--min-scale)), calc(706 * var(--pc-unit)), 706px);
  background-color: var(--color-white);
  border-top: 1px solid;
  border-bottom: 1px solid;
  overflow: hidden;
  position: relative;
}

.jobs-page .introduction-section .job-article-box:nth-child(2) {
  border-top: 0;
}

.jobs-page .introduction-section .job-article-box.invert-row {
  flex-direction: row-reverse;
  justify-content: flex-end;
}

.jobs-page .introduction-section .job-article-box .job-info-col {
  flex-shrink: 0;
  left: clamp(calc(265px * var(--min-scale)), calc(265 * var(--pc-unit)), 265px);
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  position: relative;
  z-index: 5;
}

.jobs-page .introduction-section .job-article-box.invert-row .job-info-col {
  left: 0;
}

.jobs-page .introduction-section .job-article-box .job-sub-title {
  font-size: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
  font-weight: var(--weight-light);
  letter-spacing: 0.02em;
  display: block;
  margin: clamp(calc(5px * var(--min-scale)), calc(5 * var(--pc-unit)), 5px) 0;
}

.jobs-page .introduction-section .job-article-box .job-main-title {
  position: relative;
  font-size: clamp(calc(60px * var(--min-scale)), calc(60 * var(--pc-unit)), 60px);
  letter-spacing: 0.35em;
  color: var(--color-white);
  display: flex;
  align-items: center;
  width: fit-content;
  height: clamp(calc(159px * var(--min-scale)), calc(159 * var(--pc-unit)), 159px);
  margin-bottom: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
  white-space: nowrap;
}

.jobs-page .introduction-section .job-article-box .job-main-title::before {
  content: '';
  position: absolute;
  top: 0;
  left: clamp(-320px, calc(-320 * var(--pc-unit)), calc(-320px * var(--min-scale)));
  z-index: -1;
  width: clamp(calc(1562px * var(--min-scale)), calc(1562 * var(--pc-unit)), 1562px);
  height: 100%;
}

.jobs-page .introduction-section .job-article-box .job-desc-wrap {
  margin-bottom: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
  max-width: clamp(calc(700px * var(--min-scale)), calc(700 * var(--pc-unit)), 700px);
}

.jobs-page .introduction-section .job-article-box .job-text {
  width: clamp(calc(690px * var(--min-scale)), calc(690 * var(--pc-unit)), 690px);
  font-size: clamp(calc(19px * var(--min-scale)), calc(19 * var(--pc-unit)), 19px);
  line-height: 2.6;
}

.jobs-page .introduction-section .job-article-box.invert-row .job-text {
  width: clamp(calc(650px * var(--min-scale)), calc(650 * var(--pc-unit)), 650px);
}

.jobs-page .introduction-section .job-article-box .btn-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: clamp(calc(338px * var(--min-scale)), calc(338 * var(--pc-unit)), 338px);
  height: clamp(calc(72px * var(--min-scale)), calc(72 * var(--pc-unit)), 72px);
  padding-left: clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px);
  font-size: clamp(calc(22px * var(--min-scale)), calc(22 * var(--pc-unit)), 22px);
  font-weight: var(--weight-semibold);
  letter-spacing: 0.08em;
  text-decoration: none;
  transition: all 0.3s ease;
  background-color: var(--color-white);
  border: 1px solid;
  border-radius: clamp(calc(36px * var(--min-scale)), calc(36 * var(--pc-unit)), 36px);
}

.jobs-page .introduction-section .job-article-box .btn-arrow .btn-icon {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: clamp(calc(60px * var(--min-scale)), calc(60 * var(--pc-unit)), 60px);
  height: 100%;
  overflow: hidden;
}

.jobs-page .introduction-section .job-article-box .btn-arrow .btn-icon img {
  position: absolute;
  right: 0;
  width: clamp(calc(80px * var(--min-scale)), calc(80 * var(--pc-unit)), 80px);
  height: 100%;
}

.jobs-page .introduction-section .job-article-box .btn-arrow:hover .btn-icon img {
  animation: arrowMove 1s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.jobs-page .introduction-section .job-article-box .job-visual-col {
  flex-shrink: 0;
  position: relative;
  width: clamp(calc(1020px * var(--min-scale)), calc(1020 * var(--pc-unit)), 1020px);
  min-height: clamp(calc(706px * var(--min-scale)), calc(706 * var(--pc-unit)), 706px);
}

.jobs-page .introduction-section .job-article-box .visual-mask {
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 5;
  top: 0;
  left: 0;
  clip-path: polygon(50% 0%, 100% 0%, 100% 100%, 0% 100%);
}

.jobs-page .introduction-section .job-article-box.invert-row .visual-mask {
  clip-path: polygon(0% 0%, 100% 0%, 50% 100%, 0% 100%);
}

.jobs-page .introduction-section .job-article-box .visual-mask img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.jobs-page .introduction-section .job-article-box.theme-blue { border-color: #0038FF; }
.jobs-page .introduction-section .job-article-box.theme-blue .job-sub-title { color: #0038FF; }
.jobs-page .introduction-section .job-article-box.theme-blue .job-main-title::before { background-color: #2656FF; }
.jobs-page .introduction-section .job-article-box.theme-blue .job-text { color: #0038FF; }
.jobs-page .introduction-section .job-article-box.theme-blue .btn-arrow { border-color: #0038FF; color: #0038FF; }

.jobs-page .introduction-section .job-article-box.theme-orange { border-color: var(--color-primary-orange); }
.jobs-page .introduction-section .job-article-box.theme-orange .job-sub-title { color: var(--color-primary-orange); }
.jobs-page .introduction-section .job-article-box.theme-orange .job-main-title::before { background-color: #FF8626; }
.jobs-page .introduction-section .job-article-box.theme-orange .job-text { color: var(--color-primary-orange); }
.jobs-page .introduction-section .job-article-box.theme-orange .btn-arrow { border-color: var(--color-primary-orange); color: var(--color-primary-orange); }

.jobs-page .introduction-section .job-article-box.theme-teal { border-color: #00AFBE; }
.jobs-page .introduction-section .job-article-box.theme-teal .job-sub-title { color: #00AFBE; }
.jobs-page .introduction-section .job-article-box.theme-teal .job-main-title::before { background-color: #00AFBE; }
.jobs-page .introduction-section .job-article-box.theme-teal .job-text { color: #00AFBE; }
.jobs-page .introduction-section .job-article-box.theme-teal .btn-arrow { border-color: #00AFBE; color: #00AFBE; }

.jobs-page .introduction-section .job-article-box.theme-skyblue { border-color: var(--color-primary-skyblue); }
.jobs-page .introduction-section .job-article-box.theme-skyblue .job-sub-title { color: var(--color-primary-skyblue); }
.jobs-page .introduction-section .job-article-box.theme-skyblue .job-main-title::before { background-color:var(--color-primary-skyblue); }
.jobs-page .introduction-section .job-article-box.theme-skyblue .job-text { color: var(--color-primary-skyblue); }
.jobs-page .introduction-section .job-article-box.theme-skyblue .btn-arrow { border-color: var(--color-primary-skyblue); color: var(--color-primary-skyblue); }

@media screen and (max-width: 1280px) {
  .jobs-page .introduction-section .job-article-box .job-info-col {
    flex-shrink: unset;
  }
}

@media screen and (max-width: 1180px) {
  .jobs-page .introduction-section .job-article-box .job-info-col {
    left: clamp(calc(65px * var(--min-scale)), calc(65 * var(--pc-unit)), 65px);
  }

  .jobs-page .introduction-section .job-article-box .job-visual-col {
    flex-shrink: unset;
  }
}

@media screen and (max-width: 768px) {
  .jobs-page .fv-section {
    padding-bottom: calc(50 * var(--sp-unit));
  }

  .jobs-page .fv-section .deco-line.from-top#deco-line-01 {
    top: 0;
    left: 0;
    width: calc(780 * var(--sp-unit));
  }

  .jobs-page .fv-section .deco-line.from-top#deco-line-02 {
    top: calc(811 * var(--sp-unit));;
    right: calc(-370 * var(--sp-unit));
    width: calc(850 * var(--sp-unit));
  }

  .jobs-page .fv-section .fv-image-box {
    margin-left: 0;
    left: calc(-150 * var(--sp-unit));
    clip-path: polygon(35% 0%, 100% 0%, 100% 100%, 0% 100%);
  }

  .jobs-page .intro-section {
    padding-bottom: calc(75 * var(--sp-unit));
  }

  .jobs-page .intro-section .intro-text-wrap {
    margin-left: 0;
  }

  .jobs-page .intro-section .intro-lead {
    width: calc(518 * var(--sp-unit));
  }

  .jobs-page .intro-section .intro-text-wrap .intro-text-block {
    margin-left: 0;
  }

  .jobs-page .common-section .section-header-box {
    margin-bottom: calc(100 * var(--sp-unit));
  }

  .jobs-page .common-section .section-header-box .section-title-en {
    font-size: calc(20 * var(--sp-unit));
  }

  .jobs-page .common-section .section-header-box .section-title-ja {
    width: 100%;
    font-size: calc(45 * var(--sp-unit));
  }

  .jobs-page .common-section .section-header-box .section-title-caption {
    width: 100%;
    bottom: calc(-70 * var(--sp-unit));
    font-size: calc(29 * var(--sp-unit));
  }

  .jobs-page .common-section .section-content-box {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: calc(30 * var(--sp-unit));
    justify-items: center;
  }

  .jobs-page .workflow-section {
    padding: calc(80 * var(--sp-unit)) 0;
  }

  .jobs-page .workflow-section .workflow-process-bar {
    grid-template-columns: auto;
    grid-template-rows: 1fr 1fr 2fr;
    width: calc(77 * var(--sp-unit));
    height: 100%;
    margin-bottom: 0;
    overflow-y: unset;
    overflow-x: clip;
  }

  .jobs-page .workflow-section .workflow-process-bar .process-step {
    font-size: calc(30 * var(--sp-unit));
    writing-mode: vertical-rl;
    background: linear-gradient(180deg, #468AFF 0%, #0028A8 100%);
    position: relative;
    clip-path: polygon(
      0% 0%, 
      50% calc(20 * var(--sp-unit)), 
      100% 0%, 
      100% calc(100% - calc(20 * var(--sp-unit))), 
      50% 100%, 
      0% calc(100% - calc(20 * var(--sp-unit)))
    );
    margin-left: 0;
    margin-top: calc(-20 * var(--sp-unit));
  }

  .jobs-page .workflow-section .workflow-process-bar .process-step:first-child {
    margin-top: 0;
    clip-path: polygon(
      0% 0%, 
      100% 0%, 
      100% calc(100% - calc(20 * var(--sp-unit))), 
      50% 100%, 
      0% calc(100% - calc(20 * var(--sp-unit)))
    );
  }

  .jobs-page .workflow-section .workflow-process-bar .process-step:last-child {
    margin-top: calc(-40 * var(--sp-unit));
  }

  .jobs-page .workflow-section .workflow-card-grid {
    width: calc(412 * var(--sp-unit));
    grid-template-columns: auto;
    grid-template-rows: repeat(4, 1fr);
    gap: calc(27 * var(--sp-unit));
    margin-bottom: calc(43 * var(--sp-unit));
  }

  .jobs-page .workflow-section .workflow-card {
    border-radius: calc(20 * var(--sp-unit));
    padding: calc(20 * var(--sp-unit)) calc(35 * var(--sp-unit));
    gap: calc(25 * var(--sp-unit));
  }

  .jobs-page .workflow-section .workflow-card .card-badge {
    padding: calc(10 * var(--sp-unit)) 0;
    font-size: calc(30 * var(--sp-unit));
    border-radius: calc(3 * var(--sp-unit));
  }

  .jobs-page .workflow-section .workflow-card .card-text {
    font-size: calc(25 * var(--sp-unit));
    letter-spacing: 0.05em;
  }

  .jobs-page .workflow-section .workflow-guide-row {
    width: calc(91 * var(--sp-unit));
    grid-template-columns: auto;
    grid-template-rows: repeat(4, 1fr);
    gap: calc(27 * var(--sp-unit));
  }

  .jobs-page .workflow-section .workflow-guide-row .guide-bubble {
    border-radius: calc(22 * var(--sp-unit));
    padding: calc(13 * var(--sp-unit)) 0;
    font-size: calc(20 * var(--sp-unit));
    writing-mode: vertical-rl;
  }

  .jobs-page .workflow-section .workflow-guide-row .guide-bubble::before {
    top: auto;
    left: calc(-22 * var(--sp-unit));
    border-left: calc(15 * var(--sp-unit)) solid transparent;
    border-right: calc(15 * var(--sp-unit)) solid transparent;
    transform: rotate(-90deg);
  }

  .jobs-page .workflow-section .workflow-guide-row .bubble-blue {
    grid-row: 1 / 2;
    grid-column: unset;
  }

  .jobs-page .workflow-section .workflow-guide-row .bubble-orange {
    grid-row: 3 / 4;
    grid-column: unset;
  }

  .jobs-page .workflow-section .workflow-guide-row .bubble-blue::before { border-bottom: calc(20 * var(--sp-unit)) solid #2656FF; }
  .jobs-page .workflow-section .workflow-guide-row .bubble-orange::before { border-bottom: calc(20 * var(--sp-unit)) solid #FF8626; }

  .jobs-page .introduction-section {
    padding: calc(80 * var(--sp-unit)) 0 calc(150 * var(--sp-unit));
  }

  .jobs-page .introduction-section .job-sticky-tab {
    top: calc(127 * var(--sp-unit));
  }

  .jobs-page .introduction-section .job-sticky-tab .tab-list {
    display: grid;
    grid-template-columns: repeat(3, 2fr);
  }
  .jobs-page .introduction-section .job-sticky-tab .tab-item:nth-child(1),
  .jobs-page .introduction-section .job-sticky-tab .tab-item:nth-child(2),
  .jobs-page .introduction-section .job-sticky-tab .tab-item:nth-child(3) {
    border-bottom: 1px solid rgb(255 255 255 / 50%);
  }

  .jobs-page .introduction-section .job-sticky-tab .tab-item:nth-child(3) {
    border-right: 0;
  }

  .jobs-page .introduction-section .job-sticky-tab .tab-item a {
    height: calc(66 * var(--sp-unit));
    font-size: calc(23 * var(--sp-unit));
  }

  .jobs-page .introduction-section .job-content-container {
    gap: calc(150 * var(--sp-unit));
  }

  .jobs-page .introduction-section .job-connected-group {
    display: flex;
    flex-direction: column;
    gap: calc(150 * var(--sp-unit));
  }

  .jobs-page .introduction-section .job-article-box {
    min-height: unset;
    flex-direction: column;
    padding: 0 calc(50 * var(--sp-unit));
    gap: calc(60 * var(--sp-unit));
  }

  .jobs-page .introduction-section .job-article-box.theme-orange:nth-child(2) {
    border-top: 1px solid var(--color-primary-orange);
  }

  .jobs-page .introduction-section .job-article-box.theme-skyblue:nth-child(2) {
    border-top: 1px solid var(--color-primary-skyblue);
  }

  .jobs-page .introduction-section .job-article-box.invert-row {
    flex-direction: column;
    justify-content: flex-end;
  }

  .jobs-page .introduction-section .job-article-box .job-info-col {
    left: 0;
  }

  .jobs-page .introduction-section .job-article-box .job-sub-title {
    font-size: calc(50 * var(--sp-unit));
    margin: calc(5 * var(--sp-unit)) 0;
  }

  .jobs-page .introduction-section .job-article-box .job-main-title {
    font-size: calc(39 * var(--sp-unit));
    height: calc(106 * var(--sp-unit));
    margin-bottom: calc(50 * var(--sp-unit));
  }

  .jobs-page .introduction-section .job-article-box .job-main-title::before {
    left: calc(-320 * var(--sp-unit));
    width: calc(1562 * var(--sp-unit));
  }

  .jobs-page .introduction-section .job-article-box .job-desc-wrap {
    margin-bottom: 0;
    max-width: calc(700 * var(--sp-unit));
  }

  .jobs-page .introduction-section .job-article-box .job-text {
    width: 100%;
    font-size: calc(29 * var(--sp-unit));
    line-height: 1.9;
  }

  .jobs-page .introduction-section .job-article-box.invert-row .job-text {
    width: 100%;
  }

  .jobs-page .introduction-section .job-article-box .btn-arrow {
    position: absolute;
    left: 50%;
    bottom: calc(-550 * var(--sp-unit));
    transform: translateX(-50%);
    width: calc(338 * var(--sp-unit));
    height: calc(72 * var(--sp-unit));
    padding-left: calc(20 * var(--sp-unit));
    font-size: calc(22 * var(--sp-unit));
    border-radius: calc(36 * var(--sp-unit));
    margin: 0 auto;
  }

  .jobs-page .introduction-section .job-article-box .btn-arrow .btn-icon {
    width: calc(60 * var(--sp-unit));
  }

  .jobs-page .introduction-section .job-article-box .btn-arrow .btn-icon img {
    width: calc(80 * var(--sp-unit));
  }

  .jobs-page .introduction-section .job-article-box .job-visual-col {
    z-index: 0;
    width: calc(100vw + calc(80 * var(--sp-unit)));
    min-height: calc(557 * var(--sp-unit));
    left: calc(-80 * var(--sp-unit));
    right: auto;
  }

  .jobs-page .introduction-section .job-article-box.invert-row .visual-mask {
    clip-path: polygon(0% 0%, 50% 0%, 100% 100%, 0% 100%);
  }
}
/* interview list */
.interview-section .section-title-wrap {
  margin-bottom: clamp(calc(100px * var(--min-scale)), calc(100 * var(--pc-unit)), 100px);
  text-align: center;
}

.interview-section .section-main-title {
  font-size: clamp(calc(233px * var(--min-scale)), calc(233 * var(--pc-unit)), 233px);
  font-weight: var(--weight-extralight);
  letter-spacing: 0.11em;
  line-height: 1;
  color: #FFA76C;
  text-align: center;
}

.interview-section .section-title-sub {
  font-size: clamp(calc(35px * var(--min-scale)), calc(35 * var(--pc-unit)), 35px);
  letter-spacing: 0.1em;
}

.interview-grid-container {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  grid-column-gap: clamp(calc(150px * var(--min-scale)), calc(150 * var(--pc-unit)), 150px);
  grid-row-gap: clamp(calc(90px * var(--min-scale)), calc(90 * var(--pc-unit)), 90px);
  width: clamp(calc(1143px * var(--min-scale)), calc(1143 * var(--pc-unit)), 1143px);
}

.interview-grid-container .interview-card-item {
  position: relative;
  display: block;
  text-decoration: none;
  width: clamp(calc(280px * var(--min-scale)), calc(280 * var(--pc-unit)), 280px);
}

.interview-grid-container .interview-card-item .card-img-wrap {
  width: clamp(calc(280px * var(--min-scale)), calc(280 * var(--pc-unit)), 280px);
  height: clamp(calc(328px * var(--min-scale)), calc(328 * var(--pc-unit)), 328px);
  overflow: hidden;
  position: relative;
  background: url("../images/interview/bk-thumbnail.webp") no-repeat;
  background-position: center;
  background-size: cover;
}

.interview-grid-container .interview-card-item .card-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.interview-grid-container .interview-card-item:hover .card-img-wrap img {
  transform: scale(1.05);
}

.interview-grid-container .interview-card-item .card-desc {
  margin-top: clamp(calc(15px * var(--min-scale)), calc(15 * var(--pc-unit)), 15px);
  letter-spacing: 0.13em;
  font-weight: var(--weight-regular);
  line-height: 0;
  white-space: nowrap;
}

.interview-grid-container .interview-card-item .card-desc p {
  font-size: clamp(calc(18px * var(--min-scale)), calc(18 * var(--pc-unit)), 18px);
  line-height: 1.7;
}

.interview-grid-container .interview-card-item .card-desc span {
  font-size: clamp(calc(16px * var(--min-scale)), calc(16 * var(--pc-unit)), 16px);
  line-height: 1.5;
  color: #667ECB;
}

.interview-grid-container .interview-card-item .card-desc span.u-pc-only {
  display: inline-block !important;
}

.interview-grid-container .interview-card-item .card-info {
  position: absolute;
  top: clamp(calc(14px * var(--min-scale)), calc(14 * var(--pc-unit)), 14px);
  right: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.interview-grid-container .interview-card-item .card-text {
  font-size: clamp(calc(12px * var(--min-scale)), calc(12 * var(--pc-unit)), 12px);
  font-weight: var(--weight-light);
  letter-spacing: 0.08em;
  line-height: 1.1;
}

.interview-grid-container .interview-card-item .card-number {
  font-size: clamp(calc(56px * var(--min-scale)), calc(56 * var(--pc-unit)), 56px);
  line-height: 1.1;
  letter-spacing: 0;
}

.interview-grid-container .interview-card-item .btn-icon {
  width: clamp(calc(46px * var(--min-scale)), calc(46 * var(--pc-unit)), 46px);
  height: clamp(calc(46px * var(--min-scale)), calc(46 * var(--pc-unit)), 46px);
  border-radius: 100%;
  background-color: var(--color-primary-blue);
  overflow: hidden;
}

.interview-grid-container .interview-card-item .btn-icon img {
  width: 100%;
}

.interview-grid-container .interview-card-item:hover .btn-icon img {
  animation: arrowMove 1s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

@media screen and (max-width: 1024px) {
  .interview-section .section-main-title {
    font-size: clamp(calc(190px * var(--min-scale)), calc(190 * var(--pc-unit)), 190px);
  }

  .interview-grid-container {
    width: 100%;
  }
}

@media screen and (max-width: 768px) {
  .interview-section .section-title-wrap {
    margin-bottom: calc(50 * var(--sp-unit));
  }

  .interview-section .section-main-title {
    font-size: calc(122 * var(--sp-unit));
  }

  .interview-section .section-title-sub {
    font-size: calc(40 * var(--sp-unit));
  }

  .interview-grid-container {
    align-items: flex-start;
    grid-column-gap: calc(50 * var(--sp-unit));
    grid-row-gap: calc(90 * var(--sp-unit));
    width: 100%;
  }

  .interview-grid-container .interview-card-item {
    width: calc(294 * var(--sp-unit));
  }

  .interview-grid-container .interview-card-item .card-img-wrap {
    width: calc(280 * var(--sp-unit));
    height: calc(328 * var(--sp-unit));
  }

  .interview-grid-container .interview-card-item .card-desc {
    margin-top: calc(15 * var(--sp-unit));
    white-space: normal;
  }

  .interview-grid-container .interview-card-item .card-desc p {
    font-size: calc(26 * var(--sp-unit));
  }

  .interview-grid-container .interview-card-item .card-desc span {
    font-size: calc(21 * var(--sp-unit));
  }

  .interview-grid-container .interview-card-item .card-desc span.u-pc-only {
    display: none !important;
  }

  .interview-grid-container .interview-card-item .card-info {
    top: calc(-15 * var(--sp-unit));
    align-items: flex-end;
  }

  .interview-grid-container .interview-card-item .card-text {
    font-size: calc(21 * var(--sp-unit));
  }

  .interview-grid-container .interview-card-item .card-number {
    font-size: calc(63 * var(--sp-unit));
  }

  .interview-grid-container .interview-card-item .btn-icon {
    width: calc(70 * var(--sp-unit));
    height: calc(70 * var(--sp-unit));
  }
}

/* interview detail */
.interview-detail-page {
  position: relative;
}

.interview-detail-page::before {
  content: '';
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  display: inline-block;
  width: clamp(calc(1920px * var(--min-scale)), calc(1920 * var(--pc-unit)), 1920px);
  height: clamp(calc(3803px * var(--min-scale)), calc(3803 * var(--pc-unit)), 3803px);
  background: url("../images/interview/bk-page.webp") no-repeat;
  background-position: center;
  background-size: contain;
  pointer-events: none;
}

.interview-detail-page::after {
  content: '';
  position: absolute;
  z-index: -1;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: clamp(calc(1597px * var(--min-scale)), calc(1597 * var(--pc-unit)), 1597px);
  height: clamp(calc(3862px * var(--min-scale)), calc(3862 * var(--pc-unit)), 3862px);
  background: var(--color-white);
  pointer-events: none;
}

.interview-detail-page .fv-section {
  margin-bottom: clamp(calc(200px * var(--min-scale)), calc(200 * var(--pc-unit)), 200px);
}

.interview-detail-page .fv-section .wrap {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.interview-detail-page .fv-section .fv-title-en {
  position: absolute;
  z-index: 2;
  top: 0;
  left: clamp(-300px, calc(-300 * var(--pc-unit)), calc(-300px * var(--min-scale)));
  font-size: clamp(calc(231px * var(--min-scale)), calc(231 * var(--pc-unit)), 231px);
  font-weight: var(--weight-extralight);
  letter-spacing: 0.07em;
  line-height: 1;
  color: var(--color-orange-light);
  mix-blend-mode: multiply;
}

.interview-detail-page .fv-section .deco-line.from-top {
  top: clamp(-110px, calc(-110 * var(--pc-unit)), calc(-110px * var(--min-scale)));
  right: clamp(-210px, calc(-210 * var(--pc-unit)), calc(-210px * var(--min-scale)));
  width: clamp(calc(1314px * var(--min-scale)), calc(1314 * var(--pc-unit)), 1314px);
}

.interview-detail-page .interview-fv .fv-profile-box {
  flex-shrink: 0;
  margin-top: clamp(calc(200px * var(--min-scale)), calc(200 * var(--pc-unit)), 200px);
}

.interview-detail-page .interview-fv .fv-profile-box .main-copy-wrap {
  position: relative;
  margin-bottom: clamp(calc(60px * var(--min-scale)), calc(60 * var(--pc-unit)), 60px);
}

.interview-detail-page .interview-fv .fv-profile-box .num {
  position: absolute;
  top: 50%;
  left: clamp(-150px, calc(-150 * var(--pc-unit)), calc(-150px * var(--min-scale)));
  transform: translateY(-50%);
  font-size: clamp(calc(90px * var(--min-scale)), calc(90 * var(--pc-unit)), 90px);
  line-height: 1;
}

.interview-detail-page .interview-fv .fv-profile-box .main-copy {
  font-size: clamp(calc(38px * var(--min-scale)), calc(38 * var(--pc-unit)), 38px);
  letter-spacing: 0.13em;
  line-height: 2.2;
}

.interview-detail-page .interview-fv .profile-badge {
  position: relative;
  z-index: 1;
  color: var(--color-white);
  font-size: clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px);
  letter-spacing: 0.15em;
  font-weight: var(--weight-regular);
  line-height: 1.9;
}

.interview-detail-page .interview-fv .profile-badge::before {
  content: '';
  position: absolute;
  top: 50%;
  left: clamp(-470px, calc(-470 * var(--pc-unit)), calc(-470px * var(--min-scale)));
  transform: translateY(-50%);
  display: inline-block;
  width: clamp(calc(880px * var(--min-scale)), calc(880 * var(--pc-unit)), 880px);
  height: clamp(calc(162px * var(--min-scale)), calc(162 * var(--pc-unit)), 162px);
  background: url("../images/interview/bk-profile.webp") no-repeat;
  background-position: center;
  background-size: contain;
  pointer-events: none;
}

.interview-detail-page .interview-fv .profile-badge > * {
  position: relative;
  z-index: 2;
}

.interview-detail-page .interview-fv .profile-badge .name {
  font-size: clamp(calc(30px * var(--min-scale)), calc(30 * var(--pc-unit)), 30px);
}

.interview-detail-page .interview-fv .fv-image-box {
  flex-shrink: 0;
  position: relative;
  right: 0;
  z-index: 2;
  width: clamp(calc(1070px * var(--min-scale)), calc(1070 * var(--pc-unit)), 1070px);
  margin-top: clamp(60px * var(--min-scale), 60 * var(--pc-unit), 60px);
}


.interview-detail-page .interview-article-row {
  padding: clamp(calc(100px * var(--min-scale)), calc(100 * var(--pc-unit)), 100px) 0;
}

.interview-detail-page .interview-article-row .interview-inner {
  display: flex;
  align-items: flex-start;
}

.interview-detail-page .interview-article-row .interview-inner > * {
  flex-shrink: 0;
}

.interview-detail-page .interview-article-row .interview-image-box {
  position: relative;
}

.interview-detail-page .interview-article-row .img-wrap {
  position: relative;
  z-index: 5;
  overflow: hidden;
}

.interview-detail-page .interview-article-row .deco-shape {
  position: absolute;
  z-index: 5;
}

.interview-detail-page .interview-article-row .interview-text-box h3 {
  font-size: clamp(calc(45px * var(--min-scale)), calc(45 * var(--pc-unit)), 45px);
  letter-spacing: 0.13em;
  line-height: 1.9;
  margin-bottom: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
  white-space: nowrap;
}

.interview-detail-page .interview-article-row .interview-text-box p {
  font-size: clamp(calc(18px * var(--min-scale)), calc(18 * var(--pc-unit)), 18px);
  letter-spacing: 0;
  line-height: 2.7;
}

.interview-detail-page .text-layout-right .interview-inner {
  flex-direction: row;
}

.interview-detail-page .text-layout-right .interview-image-box {
  left: clamp(-320px, calc(-320 * var(--pc-unit)), calc(-320px * var(--min-scale)));
  width: clamp(calc(908px * var(--min-scale)), calc(908 * var(--pc-unit)), 908px);
  margin-right: clamp(-320px, calc(-320 * var(--pc-unit)), calc(-320px * var(--min-scale)));
}

.interview-detail-page .text-layout-right .interview-image-box::before {
  content: '';
  position: absolute;
  top: clamp(calc(75px * var(--min-scale)), calc(75 * var(--pc-unit)), 75px);
  right: clamp(calc(25px * var(--min-scale)), calc(25 * var(--pc-unit)), 25px);
  width: clamp(calc(879px * var(--min-scale)), calc(879 * var(--pc-unit)), 879px);
  height: clamp(calc(639px * var(--min-scale)), calc(639 * var(--pc-unit)), 639px);
  background: #AAC9FF;
  clip-path: polygon(0% 0%, 100% 0%, 42% 100%, 0% 100%);
  pointer-events: none;
}

.interview-detail-page .text-layout-right .img-wrap {
  clip-path: polygon(0% 0%, 100% 0%, 42% 100%, 0% 100%);
}

.interview-detail-page .text-layout-right .deco-shape {
  bottom:  clamp(-200px, calc(-200 * var(--pc-unit)), calc(-200px * var(--min-scale)));
  right: clamp(calc(100px * var(--min-scale)), calc(100 * var(--pc-unit)), 100px);
  width: clamp(calc(468px * var(--min-scale)), calc(468 * var(--pc-unit)), 468px);
}

.interview-detail-page .text-layout-right .interview-text-box {
  width: clamp(calc(690px * var(--min-scale)), calc(690 * var(--pc-unit)), 690px);
  margin-top: clamp(calc(100px * var(--min-scale)), calc(100 * var(--pc-unit)), 100px);
}

.interview-detail-page .text-layout-left .interview-inner {
  flex-direction: row-reverse;
}

.interview-detail-page .text-layout-left .interview-image-box {
  right: clamp(-320px, calc(-320 * var(--pc-unit)), calc(-320px * var(--min-scale)));
  width: clamp(calc(946px * var(--min-scale)), calc(946 * var(--pc-unit)), 946px);
  margin-left: clamp(-420px, calc(-420 * var(--pc-unit)), calc(-420px * var(--min-scale)));
  margin-top: clamp(calc(250px * var(--min-scale)), calc(250 * var(--pc-unit)), 250px);
}

.interview-detail-page .text-layout-left .interview-image-box::before {
  content: '';
  position: absolute;
  top: clamp(-50px, calc(-50 * var(--pc-unit)), calc(-50px * var(--min-scale)));
  right: clamp(-350px, calc(-350 * var(--pc-unit)), calc(-350px * var(--min-scale)));
  width: clamp(calc(1331px * var(--min-scale)), calc(1331 * var(--pc-unit)), 1331px);
  height: clamp(calc(705px * var(--min-scale)), calc(705 * var(--pc-unit)), 705px);
  background: url("../images/interview/bk-sub2.webp") no-repeat;
  background-position: center;
  background-size: contain;
  pointer-events: none;
}

.interview-detail-page .text-layout-left .img-wrap {
  clip-path: polygon(56% 0%, 100% 0%, 100% 100%, 0% 100%);
}

.interview-detail-page .text-layout-left .deco-shape {
  bottom: clamp(-70px, calc(-70 * var(--pc-unit)), calc(-70px * var(--min-scale)));
  left: clamp(calc(10px * var(--min-scale)), calc(10 * var(--pc-unit)), 10px);
  width: clamp(calc(1087px * var(--min-scale)), calc(1087 * var(--pc-unit)), 1087px);
}

.interview-detail-page .text-layout-left .interview-text-box {
  width: clamp(calc(790px * var(--min-scale)), calc(790 * var(--pc-unit)), 790px);
}

@media screen and (max-width: 1280px) {
  .interview-detail-page .fv-section .fv-title-en {
    left: clamp(-150px, calc(-150 * var(--pc-unit)), calc(-150px * var(--min-scale)));
    font-size: clamp(calc(211px * var(--min-scale)), calc(211 * var(--pc-unit)), 211px);
  }
}

@media screen and (max-width: 1024px) {
  .interview-detail-page .fv-section .fv-title-en {
    left: 0;
  }

  .interview-detail-page .interview-fv .fv-profile-box .main-copy-wrap {
    left: clamp(calc(150px * var(--min-scale)), calc(150 * var(--pc-unit)), 150px);
  }

  .interview-detail-page .interview-article-row .interview-inner {
    justify-content: center;
  }

  .interview-detail-page .text-layout-right .interview-image-box {
    margin-right: clamp(-420px, calc(-420 * var(--pc-unit)), calc(-420px * var(--min-scale)));
  }

  .interview-detail-page .text-layout-right .interview-text-box {
    flex-shrink: unset;
  }

  .interview-detail-page .text-layout-left .interview-image-box {
    margin-left: clamp(-650px, calc(-650 * var(--pc-unit)), calc(-650px * var(--min-scale)));
    margin-right: 0;
    margin-top: clamp(calc(550px * var(--min-scale)), calc(550 * var(--pc-unit)), 550px);
  }

  .interview-detail-page .text-layout-left .interview-text-box {
    width: clamp(calc(740px * var(--min-scale)), calc(740 * var(--pc-unit)), 740px);
  }
}

@media screen and (max-width: 768px) {
  .interview-detail-page::before {
    z-index: 0;
    width: calc(780 * var(--sp-unit));
    height: calc(6308 * var(--sp-unit));
    background: url("../images/interview/bk-page-sp.webp") no-repeat;
    background-position: top;
    background-size: contain;
  }

  .interview-detail-page::after {
    width: calc(1597 * var(--sp-unit));
    height: calc(3862 * var(--sp-unit));
  }

  .interview-detail-page .fv-section {
    margin-bottom: calc(100 * var(--sp-unit));
  }

  .interview-detail-page .fv-section .deco-line.from-top {
    top: calc(50 * var(--sp-unit));
    right: calc(-220 * var(--sp-unit));
    width: calc(980 * var(--sp-unit));
  }

  .interview-detail-page .fv-section .wrap {
    flex-direction: column-reverse;
  }

  .interview-detail-page .fv-section .fv-title-en {
    left: 0;
    font-size: calc(122 * var(--sp-unit));
  }

  .interview-detail-page .interview-fv .fv-profile-box {
    margin-top: calc(10 * var(--sp-unit));
    margin-right: auto;
    margin-left: calc(50 * var(--sp-unit));
  }

  .interview-detail-page .interview-fv .fv-profile-box .main-copy-wrap {
    margin-bottom: calc(60 * var(--sp-unit));
    left: 0;
  }

  .interview-detail-page .interview-fv .fv-profile-box .num {
    position: relative;
    left: 0;
    font-size: calc(80 * var(--sp-unit));
  }

  .interview-detail-page .interview-fv .fv-profile-box .main-copy {
    font-size: calc(40 * var(--sp-unit));
    letter-spacing: 0.05em;
    line-height: 1.7;
  }

  .interview-detail-page .interview-fv .profile-badge {
    font-size: calc(20 * var(--sp-unit));
  }

  .interview-detail-page .interview-fv .profile-badge::before {
    left: calc(-470 * var(--sp-unit));
    width: calc(880 * var(--sp-unit));
    height: calc(162 * var(--sp-unit));
  }

  .interview-detail-page .interview-fv .profile-badge .name {
    font-size: calc(32 * var(--sp-unit));
  }

  .interview-detail-page .interview-fv .fv-image-box {
    width: calc(780 * var(--sp-unit));
    margin-top: calc(150 * var(--sp-unit));
    right: calc(-200 * var(--sp-unit));
  }

  .interview-detail-page .interview-article-row {
    padding: calc(50 * var(--sp-unit));
  }

  .interview-detail-page .interview-article-row .interview-inner {
    gap: calc(100 * var(--sp-unit));
  }

  .interview-detail-page .interview-article-row .interview-text-box h3 {
    font-size: calc(40 * var(--sp-unit));
    letter-spacing: 0.1em;
    line-height: 1.7;
    margin-bottom: calc(50 * var(--sp-unit));
  }

  .interview-detail-page .interview-article-row .interview-text-box p {
    font-size: calc(30 * var(--sp-unit));
    line-height: 1.9;
  }

  .interview-detail-page .text-layout-right .interview-inner {
    flex-direction: column;
  }

  .interview-detail-page .text-layout-right .interview-image-box {
    left: calc(-220 * var(--sp-unit));
    width: calc(908 * var(--sp-unit));
    margin-right: calc(-320 * var(--sp-unit));
  }

  .interview-detail-page .text-layout-right .interview-image-box::before {
    top: calc(75 * var(--sp-unit));
    right: calc(25 * var(--sp-unit));
    width: calc(879 * var(--sp-unit));
    height: calc(639 * var(--sp-unit));
  }

  .interview-detail-page .text-layout-right .deco-shape {
    bottom: calc(-200 * var(--sp-unit));
    right: calc(100 * var(--sp-unit));
    width: calc(468 * var(--sp-unit));
  }

  .interview-detail-page .text-layout-right .interview-text-box {
    width: calc(611 * var(--sp-unit));
    margin: calc(100 * var(--sp-unit)) auto 0;
  }

  .interview-detail-page .text-layout-left .interview-inner {
    flex-direction: column;
  }

  .interview-detail-page .text-layout-left .interview-image-box {
    right: calc(-320 * var(--sp-unit));
    width: calc(946 * var(--sp-unit));
    margin-left: calc(-420 * var(--sp-unit));
    margin-top: calc(50 * var(--sp-unit));
  }

  .interview-detail-page .text-layout-left .interview-image-box::before {
    top: calc(-50 * var(--sp-unit));
    right: calc(-350 * var(--sp-unit));
    width: calc(1331 * var(--sp-unit));
    height: calc(705 * var(--sp-unit));
  }

  .interview-detail-page .text-layout-left .deco-shape {
    bottom: calc(-70 * var(--sp-unit));
    left: calc(-100 * var(--sp-unit));
    width: calc(1087 * var(--sp-unit));
  }

  .interview-detail-page .text-layout-left .interview-text-box {
    width: calc(611 * var(--sp-unit));
    margin: 0 auto;
  }

  #interview-detail-page-01 .text-layout-left .img-wrap img {
    position: relative;
    right: calc(130 * var(--sp-unit));
  }

  #interview-detail-page-04 .text-layout-right .img-wrap img {
    position: relative;
    left: calc(130 * var(--sp-unit));
  }

  #interview-detail-page-05 .text-layout-right .img-wrap img {
    position: relative;
    left: calc(130 * var(--sp-unit));
  }

  #interview-detail-page-07 .text-layout-right .img-wrap img {
    position: relative;
    left: calc(160 * var(--sp-unit));
  }
}

/* chat page */
.chat-page {
  position: relative;
}

.chat-page .bk-wrap {
  position: relative;
}

.chat-page .bk-wrap::before {
  content: '';
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  display: inline-block;
  width: clamp(calc(1920px * var(--min-scale)), calc(1920 * var(--pc-unit)), 1920px);
  height: 100%;
  pointer-events: none;
  background: url("../images/crosstalk/01/bk-page.webp") no-repeat;
  background-position: top;
  background-size: contain;
  background-repeat: repeat-y;
}

.chat-page .profile-section {
  padding-top: 0;
  padding-bottom: clamp(calc(60px * var(--min-scale)), calc(60 * var(--pc-unit)), 60px);
}

.chat-page .profile-section .profile-inner {
  width: clamp(calc(996px * var(--min-scale)), calc(996 * var(--pc-unit)), 996px);
}

.chat-page .profile-section .profile-title {
  position: relative;
  margin-bottom: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
  color: var(--color-primary-blue);
  font-size: clamp(calc(20px * var(--min-scale)), calc(20 * var(--pc-unit)), 20px);
  line-height: 1.5;
  letter-spacing: 0.05em;
}

.chat-page .profile-section .profile-title::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: clamp(calc(905px * var(--min-scale)), calc(905 * var(--pc-unit)), 905px);
  height: 1px;
  background-color: var(--color-primary-blue);
}

.chat-page .profile-section .profile-container {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  grid-column-gap: clamp(calc(85px * var(--min-scale)), calc(85 * var(--pc-unit)), 85px);
  grid-row-gap: clamp(calc(65px * var(--min-scale)), calc(65 * var(--pc-unit)), 65px);
}

.chat-page .profile-section .profile-item {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: clamp(calc(30px * var(--min-scale)), calc(30 * var(--pc-unit)), 30px);
  min-width: clamp(calc(400px * var(--min-scale)), calc(400 * var(--pc-unit)), 400px);
}

.chat-page .profile-section .profile-item .item-img-wrap {
  width: clamp(calc(120px * var(--min-scale)), calc(120 * var(--pc-unit)), 120px);
  height: clamp(calc(120px * var(--min-scale)), calc(120 * var(--pc-unit)), 120px);
  border-radius: 100%;
  overflow: hidden;
}

.chat-page .profile-section .profile-item .item-info .item-name {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: clamp(calc(22px * var(--min-scale)), calc(22 * var(--pc-unit)), 22px);
  font-size: clamp(calc(22px * var(--min-scale)), calc(22 * var(--pc-unit)), 22px);
  letter-spacing: 0.05em;
}

.chat-page .profile-section .profile-item .item-info .item-name span:last-child {
  font-size: clamp(calc(16px * var(--min-scale)), calc(16 * var(--pc-unit)), 16px);
  letter-spacing: 0.06em;
}

.chat-page .profile-section .profile-item .item-info .item-position {
  font-size: clamp(calc(16px * var(--min-scale)), calc(16 * var(--pc-unit)), 16px);
  letter-spacing: 0.06em;
  line-height: 2.7;
}

.chat-page .chat-article-row {
  padding: clamp(calc(100px * var(--min-scale)), calc(100 * var(--pc-unit)), 100px) 0;
}

.chat-page .chat-article-row .chat-inner {
  width: clamp(calc(1014px * var(--min-scale)), calc(1014 * var(--pc-unit)), 1014px);
}

.chat-page .chat-article-row .chat-header-block {
  display: flex;
  align-items: flex-start;
  margin-top: clamp(calc(200px * var(--min-scale)), calc(200 * var(--pc-unit)), 200px);
}

.chat-page .chat-article-row .chat-header-block > * {
  flex-shrink: 0;
}

.chat-page .chat-article-row .chat-header-block .chat-title-wrap {
  position: relative;
  z-index: 2;
}

.chat-page .chat-article-row .chat-header-block .num {
  color: var(--color-primary-blue);
  font-size: clamp(calc(60px * var(--min-scale)), calc(60 * var(--pc-unit)), 60px);
  letter-spacing: 0.05em;
  line-height: 0.9;
}

.chat-page .chat-article-row .chat-header-block .chat-main-title span {
  display: inline-block;
  padding-left: clamp(calc(10px * var(--min-scale)), calc(10 * var(--pc-unit)), 10px);
  margin: clamp(calc(10px * var(--min-scale)), calc(10 * var(--pc-unit)), 10px) 0;
  color: var(--color-white);
  background-color: var(--color-primary-skyblue);
  font-size: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
  letter-spacing: 0.12em;
  line-height: 1.3;
}

.chat-page .chat-article-row .chat-header-block .chat-main-image-box {
  position: absolute;
  top: clamp(calc(60px * var(--min-scale)), calc(60 * var(--pc-unit)), 60px);
  right: 0;
  width: clamp(calc(853px * var(--min-scale)), calc(853 * var(--pc-unit)), 853px);
  margin-left: clamp(-425px, calc(-425 * var(--pc-unit)), calc(-425px * var(--min-scale)));
}

.chat-page .chat-article-row .chat-header-block .chat-main-image-box img {
  position: relative;
  z-index: 1;
  width: clamp(calc(853px * var(--min-scale)), calc(853 * var(--pc-unit)), 853px);
  border-top-left-radius: clamp(calc(214px * var(--min-scale)), calc(214 * var(--pc-unit)), 214px);
  border-bottom-left-radius: clamp(calc(214px * var(--min-scale)), calc(214 * var(--pc-unit)), 214px);
  overflow: hidden;
}

.chat-page .chat-article-row .chat-header-block .chat-main-image-box::before {
  content: '';
  position: absolute;
  top: clamp(-12px, calc(-12 * var(--pc-unit)), calc(-12px * var(--min-scale)));
  left: clamp(-12px, calc(-12 * var(--pc-unit)), calc(-12px * var(--min-scale)));
  width: clamp(calc(864px * var(--min-scale)), calc(864 * var(--pc-unit)), 864px);
  height: clamp(calc(435px * var(--min-scale)), calc(435 * var(--pc-unit)), 435px);
  background: linear-gradient(302deg, rgb(255 255 255 / 0%) 0%, rgb(246 247 252 / 4%) 26%, rgb(70 138 255 / 100%) 100%);
  border-top-left-radius: clamp(calc(216px * var(--min-scale)), calc(216 * var(--pc-unit)), 216px);
  border-bottom-left-radius: clamp(calc(216px * var(--min-scale)), calc(216 * var(--pc-unit)), 216px);
  mix-blend-mode: multiply;
  overflow: hidden;
}

.chat-page .chat-article-row .chat-lead-block {
  padding-left: clamp(calc(35px * var(--min-scale)), calc(35 * var(--pc-unit)), 35px);
  margin: clamp(calc(70px * var(--min-scale)), calc(70 * var(--pc-unit)), 70px) 0;
  border-left: 6px solid var(--color-primary-blue);
  font-size: clamp(calc(19px * var(--min-scale)), calc(19 * var(--pc-unit)), 19px);
  font-weight: var(--weight-semibold);
  line-height: 2.6;
  letter-spacing: 0.06em;
}

.chat-page .chat-article-row .chat-container {
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  flex-direction: column;
  gap: clamp(calc(30px * var(--min-scale)), calc(30 * var(--pc-unit)), 30px);
}

.chat-page .chat-article-row .chat-item {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: clamp(calc(25px * var(--min-scale)), calc(25 * var(--pc-unit)), 25px);
}

.chat-page .chat-article-row .chat-item .chat-profile {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

.chat-page .chat-article-row .chat-item .chat-profile .profile-img {
  width: clamp(calc(73px * var(--min-scale)), calc(73 * var(--pc-unit)), 73px);
  height: clamp(calc(73px * var(--min-scale)), calc(73 * var(--pc-unit)), 73px);
  border-radius: 100%;
  overflow: hidden;
}

.chat-page .chat-article-row .chat-item .chat-profile .profile-name {
  font-size: clamp(calc(22px * var(--min-scale)), calc(22 * var(--pc-unit)), 22px);
  line-height: 1.3;
  letter-spacing: 0.05em;
}

.chat-page .chat-article-row .chat-item .chat-bubble {
  width: 100%;
  padding: clamp(calc(27px * var(--min-scale)), calc(27 * var(--pc-unit)), 27px) clamp(calc(37px * var(--min-scale)), calc(37 * var(--pc-unit)), 37px);
  background-color: var(--color-white);
  border-radius: clamp(calc(60px * var(--min-scale)), calc(60 * var(--pc-unit)), 60px);
  border-top-left-radius: 0;
  font-size: clamp(calc(19px * var(--min-scale)), calc(19 * var(--pc-unit)), 19px);
  line-height: 2.6;
  letter-spacing: 0.06em;
}

.chat-page .chat-article-row .chat-image-block {
  position: relative;
  left: clamp(-240px, calc(-240 * var(--pc-unit)), calc(-240px * var(--min-scale)));
  width: clamp(calc(928px * var(--min-scale)), calc(928 * var(--pc-unit)), 928px);
  margin-top: clamp(calc(80px * var(--min-scale)), calc(80 * var(--pc-unit)), 80px);
}

.chat-page .chat-article-row .chat-image-block::before {
  content: '';
  position: absolute;
  top: clamp(calc(12px * var(--min-scale)), calc(12 * var(--pc-unit)), 12px);
  left: clamp(calc(12px * var(--min-scale)), calc(12 * var(--pc-unit)), 12px);
  width: clamp(calc(928px * var(--min-scale)), calc(928 * var(--pc-unit)), 928px);
  height: clamp(calc(398px * var(--min-scale)), calc(398 * var(--pc-unit)), 398px);
  background: linear-gradient(27deg, rgb(255 255 255 / 0%) 0%, rgb(246 247 252 / 4%) 26%, rgb(70 138 255 / 100%) 100%);
  border-radius: clamp(calc(199px * var(--min-scale)), calc(199 * var(--pc-unit)), 199px);
  mix-blend-mode: multiply;
  overflow: hidden;
}

.chat-page .chat-article-row .chat-image-block img {
  position: relative;
  z-index: 1;
  width: clamp(calc(928px * var(--min-scale)), calc(928 * var(--pc-unit)), 928px);
  border-radius: clamp(calc(199px * var(--min-scale)), calc(199 * var(--pc-unit)), 199px);
  overflow: hidden;
}

.chat-page .chat-article-row .chat-image-block.c-margin-bottom {
  margin-bottom: clamp(calc(80px * var(--min-scale)), calc(80 * var(--pc-unit)), 80px);
}

@media screen and (max-width: 768px) {
  .chat-page .bk-wrap::before {
    width: calc(780 * var(--sp-unit));
    background: url("../images/crosstalk/01/bk-page-sp.webp") no-repeat;
    background-position: top;
    background-size: contain;
    background-repeat: repeat-y;
  }

  .chat-page .profile-section {
    padding-bottom: calc(100 * var(--sp-unit));;
  }

  .chat-page .profile-section .profile-inner {
    width: calc(680 * var(--sp-unit));
  }

  .chat-page .profile-section .profile-title {
    margin-bottom: calc(50 * var(--sp-unit));
    font-size: calc(20 * var(--sp-unit));
  }

  .chat-page .profile-section .profile-title::after {
    width: calc(590 * var(--sp-unit));
  }

  .chat-page .profile-section .profile-container {
    flex-direction: column;
    align-items: flex-start;
    grid-column-gap: calc(45 * var(--sp-unit));
    grid-row-gap: calc(45 * var(--sp-unit));
  }

  .chat-page .profile-section .profile-item {
    gap: calc(40 * var(--sp-unit));
    min-width: auto;
  }

  .chat-page .profile-section .profile-item .item-img-wrap {
    width: calc(188 * var(--sp-unit));
    height: calc(188 * var(--sp-unit));
    flex-shrink: 0;
  }

  .chat-page .profile-section .profile-item .item-info .item-name {
    gap: calc(25 * var(--sp-unit));
    font-size: calc(34 * var(--sp-unit));
  }

  .chat-page .profile-section .profile-item .item-info .item-name span:last-child {
    font-size: calc(25 * var(--sp-unit));
  }

  .chat-page .profile-section .profile-item .item-info .item-position {
    font-size: calc(25 * var(--sp-unit));
  }

  .chat-page .chat-article-row {
    padding: calc(100 * var(--sp-unit)) 0;
  }

  .chat-page .chat-article-row .chat-inner {
    width: calc(680 * var(--sp-unit));
  }

  .chat-page .chat-article-row .chat-header-block {
    margin-top: calc(120 * var(--sp-unit));
  }

  .chat-page .chat-article-row .chat-header-block .num {
    font-size: calc(46 * var(--sp-unit));
  }

  .chat-page .chat-article-row .chat-header-block .chat-main-title span {
    padding-left: calc(10 * var(--sp-unit));
    margin: calc(10 * var(--sp-unit)) 0;
    font-size: calc(38 * var(--sp-unit));
  }

  .chat-page .chat-article-row .chat-header-block .chat-main-image-box {
    top: 0;
    width: calc(633 * var(--sp-unit));
    margin-left: 0;
  }

  .chat-page .chat-article-row .chat-header-block .chat-main-image-box img {
    width: calc(633 * var(--sp-unit));
    border-top-left-radius: calc(158 * var(--sp-unit));
    border-bottom-left-radius: calc(158 * var(--sp-unit));
  }

  .chat-page .chat-article-row .chat-header-block .chat-main-image-box::before {
    top: calc(-12 * var(--sp-unit));
    left: calc(-12 * var(--sp-unit));
    width: calc(641 * var(--sp-unit));
    height: calc(318 * var(--sp-unit));
    border-top-left-radius: calc(160 * var(--sp-unit));
    border-bottom-left-radius: calc(160 * var(--sp-unit));
  }

  .chat-page .chat-article-row .chat-lead-block {
    padding-left: calc(30 * var(--sp-unit));
    margin: calc(50 * var(--sp-unit)) 0 calc(20 * var(--sp-unit));
    border-left: calc(6 * var(--sp-unit)) solid var(--color-primary-blue);
    font-size: calc(30 * var(--sp-unit));
    line-height: 2;
    letter-spacing: 0.05em;
  }

  .chat-page .chat-article-row .chat-container {
    gap: calc(30 * var(--sp-unit));
  }

  .chat-page .chat-article-row .chat-item {
    flex-direction: column;
    gap: calc(5 * var(--sp-unit));
  }

  .chat-page .chat-article-row .chat-item .chat-profile .profile-img {
    width: calc(104 * var(--sp-unit));
    height: calc(104 * var(--sp-unit));
  }

  .chat-page .chat-article-row .chat-item .chat-profile .profile-name {
    font-size: calc(31 * var(--sp-unit));
  }

  .chat-page .chat-article-row .chat-item .chat-bubble {
    padding: calc(35 * var(--sp-unit)) calc(40 * var(--sp-unit));
    border-radius: calc(60 * var(--sp-unit));
    border-top-left-radius: 0;
    font-size: calc(30 * var(--sp-unit));
    line-height: 1.8;
    letter-spacing: 0.05em;
  }

  .chat-page .chat-article-row .chat-image-block {
    left: calc(-51 * var(--sp-unit));
    width: calc(719 * var(--sp-unit));
    margin-top: calc(80 * var(--sp-unit));
  }

  .chat-page .chat-article-row .chat-image-block::before {
    top: calc(-12 * var(--sp-unit));
    left: calc(-12 * var(--sp-unit));
    width: calc(728 * var(--sp-unit));
    height: calc(361 * var(--sp-unit));
    background: linear-gradient(27deg, rgb(255 255 255 / 0%) 0%, rgb(246 247 252 / 4%) 26%, rgb(70 138 255 / 100%) 100%);
    border-radius: calc(182 * var(--sp-unit));
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }

  .chat-page .chat-article-row .chat-image-block img {
    width: calc(719 * var(--sp-unit));
    height: calc(357 * var(--sp-unit));
    border-radius: calc(180 * var(--sp-unit));
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    object-fit: cover;
  }

  .chat-page .chat-article-row .chat-image-block.c-margin-bottom {
    margin-bottom: calc(80 * var(--sp-unit));
  }
}

/* crosstalk page */
.crosstalk-page::before {
  content: '';
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  display: inline-block;
  width: calc(1920 * var(--pc-unit));
  height: calc(2832 * var(--pc-unit));
  background: url("../images/crosstalk/01/bk-fv.webp") no-repeat;
  background-position: top;
  background-size: cover;
  pointer-events: none;
}

.crosstalk-page .fv-section {
  margin-bottom: clamp(calc(145px * var(--min-scale)), calc(145 * var(--pc-unit)), 145px);
}

.crosstalk-page .fv-section .wrap {
  position: relative;
  width: clamp(calc(1600px * var(--min-scale)), calc(1600 * var(--pc-unit)), 1600px);
  padding-top: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
}

.crosstalk-page .fv-section .fv-info-box {
  margin-top: clamp(calc(320px * var(--min-scale)), calc(320 * var(--pc-unit)), 320px);
  color: var(--color-white);
}

.crosstalk-page .fv-section .page-info {
  font-size: clamp(calc(32px * var(--min-scale)), calc(32 * var(--pc-unit)), 32px);
  line-height: 2;
  letter-spacing: 0.12em;
}

.crosstalk-page .fv-section .page-info .num {
  font-size: clamp(calc(115px * var(--min-scale)), calc(115 * var(--pc-unit)), 115px);
  font-weight: var(--weight-extralight);
  line-height: 1.4;
  letter-spacing: 0.04em;
}

.crosstalk-page .fv-section .main-copy {
  font-size: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
  line-height: 2;
  letter-spacing: 0.1em;
  white-space: nowrap;
}

.crosstalk-page .fv-section .main-copy span {
  position: relative;
  background-color: var(--color-primary-skyblue);
}

.crosstalk-page .fv-section .main-copy span::before {
  content: '';
  position: absolute;
  top: 0;
  left: clamp(-160px, calc(-160 * var(--pc-unit)), calc(-160px * var(--min-scale)));
  width: clamp(calc(160px * var(--min-scale)), calc(160 * var(--pc-unit)), 160px);
  height: 100%;
  background-color: var(--color-primary-skyblue);
  pointer-events: none;
}

.crosstalk-page .fv-section .fv-image-box {
  width: clamp(calc(778px * var(--min-scale)), calc(778 * var(--pc-unit)), 778px);
  border-radius: 100%;
  overflow: hidden;
}

.crosstalk-page .intro-section {
  padding-bottom: clamp(calc(350px * var(--min-scale)), calc(350 * var(--pc-unit)), 350px);
}

.crosstalk-page .intro-section .intro-inner {
  display: flex;
  align-items: flex-start;
}

.crosstalk-page .intro-section .intro-inner > * {
  flex-shrink: 0;
}

.crosstalk-page .intro-section .intro-text-block {
  width: clamp(calc(870px * var(--min-scale)), calc(870 * var(--pc-unit)), 870px);
  margin-top: clamp(calc(200px * var(--min-scale)), calc(200 * var(--pc-unit)), 200px);
}

.crosstalk-page .intro-section .intro-text-block .intro-title {
  margin-bottom: clamp(calc(80px * var(--min-scale)), calc(80 * var(--pc-unit)), 80px);
  font-size: clamp(calc(45px * var(--min-scale)), calc(45 * var(--pc-unit)), 45px);
  letter-spacing: 0.1em;
  line-height: 1.6;
  white-space: nowrap;
}

.crosstalk-page .intro-section .intro-text-block .intro-title .small {
  font-size: clamp(calc(32px * var(--min-scale)), calc(32 * var(--pc-unit)), 32px);
  line-height: 1.2;
}

.crosstalk-page .intro-section .intro-text-block .intro-desc {
  font-size: clamp(calc(19px * var(--min-scale)), calc(19 * var(--pc-unit)), 19px);
  line-height: 2.6;
  letter-spacing: 0.06em;
}

.crosstalk-page .intro-section .intro-img-block {
  position: relative;
  width: clamp(calc(719px * var(--min-scale)), calc(719 * var(--pc-unit)), 719px);
  margin-left: 0;
}

.crosstalk-page .intro-section .intro-img-block::before {
  content: '';
  position: absolute;
  top: clamp(-12px, calc(-12 * var(--pc-unit)), calc(-12px * var(--min-scale)));
  left: clamp(-12px, calc(-12 * var(--pc-unit)), calc(-12px * var(--min-scale)));
  width: clamp(calc(731px * var(--min-scale)), calc(731 * var(--pc-unit)), 731px);
  height: clamp(calc(493px * var(--min-scale)), calc(493 * var(--pc-unit)), 493px);
  background: linear-gradient(302deg, rgb(255 255 255 / 0%) 0%, rgb(246 247 252 / 4%) 26%, rgb(70 138 255 / 100%) 100%);
  border-top-left-radius: clamp(calc(248px * var(--min-scale)), calc(248 * var(--pc-unit)), 248px);
  border-bottom-left-radius: clamp(calc(248px * var(--min-scale)), calc(248 * var(--pc-unit)), 248px);
  mix-blend-mode: multiply;
  overflow: hidden;
}

.crosstalk-page .intro-section .intro-img-block img {
  position: relative;
  z-index: 1;
  width: clamp(calc(719px * var(--min-scale)), calc(719 * var(--pc-unit)), 719px);
  border-top-left-radius: clamp(calc(245px * var(--min-scale)), calc(245 * var(--pc-unit)), 245px);
  border-bottom-left-radius: clamp(calc(245px * var(--min-scale)), calc(245 * var(--pc-unit)), 245px);
  overflow: hidden;
}

.crosstalk-page .intro-section .deco-title {
  position: absolute;
  bottom: clamp(-45px, calc(-45 * var(--pc-unit)), calc(-45px * var(--min-scale)));
  left: 50%;
  transform: translateX(-50%);
  color: var(--color-white);
  font-size: clamp(calc(338px * var(--min-scale)), calc(338 * var(--pc-unit)), 338px);
  font-weight: var(--weight-extralight);
  letter-spacing: 0.11em;
  line-height: 1;
}

.crosstalk-page .profile-section .profile-title {
  top: clamp(-15px, calc(-15 * var(--pc-unit)), calc(-15px * var(--min-scale)));
}

@media screen and (max-width: 1280px) {
  .crosstalk-page .intro-section .deco-title {
    font-size: clamp(calc(278px * var(--min-scale)), calc(278 * var(--pc-unit)), 278px);
  }
}

@media screen and (max-width: 1024px) {
  .crosstalk-page .fv-section .wrap {
    width: 100%;
  }

  .crosstalk-page .intro-section .deco-title {
    font-size: clamp(calc(208px * var(--min-scale)), calc(208 * var(--pc-unit)), 208px);
  }
}

@media screen and (max-width: 768px) {
  .crosstalk-page::before {
    top: calc(127 * var(--sp-unit));
    width: calc(780 * var(--sp-unit));
    height: calc(3656 * var(--sp-unit));
    background: url("../images/crosstalk/01/bk-fv-sp.webp") no-repeat;
    background-position: top;
    background-size: cover;
  }

  .crosstalk-page .fv-section {
    margin-bottom: calc(700 * var(--sp-unit));
  }

  .crosstalk-page .fv-section .wrap {
    width: calc(680 * var(--sp-unit));
    padding-top: 0;
  }

  .crosstalk-page .fv-section .fv-info-box {
    margin-top: calc(180 * var(--sp-unit));
  }

  .crosstalk-page .fv-section .page-info {
    font-size: calc(32 * var(--sp-unit));
  }

  .crosstalk-page .fv-section .page-info .num {
    font-size: calc(115 * var(--sp-unit));
  }

  .crosstalk-page .fv-section .main-copy {
    font-size: calc(45 * var(--sp-unit));
  }

  .crosstalk-page .fv-section .main-copy span::before {
    left: calc(-160 * var(--sp-unit));
    width: calc(160 * var(--sp-unit));
  }

  .crosstalk-page .fv-section .fv-image-box {
    width: calc(552 * var(--sp-unit));
    margin-left: auto;
    margin-right: calc(-20 * var(--sp-unit));
  }

  .crosstalk-page .intro-section {
    padding-bottom: calc(190 * var(--sp-unit));
  }

  .crosstalk-page .intro-section .intro-inner {
    flex-direction: column-reverse;
    gap: calc(55 * var(--sp-unit));
  }

  .crosstalk-page .intro-section .intro-text-block {
    width: 100%;
    margin-top: 0;
  }

  .crosstalk-page .intro-section .intro-text-block .intro-title {
    margin-bottom: calc(70 * var(--sp-unit));
    font-size: calc(40 * var(--sp-unit));
  }

  .crosstalk-page .intro-section .intro-text-block .intro-title .small {
    font-size: calc(32 * var(--sp-unit));
  }

  .crosstalk-page .intro-section .intro-text-block .intro-desc {
    font-size: calc(30 * var(--sp-unit));
    line-height: 1.8;
    letter-spacing: 0.05em;
  }

  .crosstalk-page .intro-section .intro-img-block {
    width: calc(678 * var(--sp-unit));
    left: calc(51 * var(--sp-unit));
  }

  .crosstalk-page .intro-section .intro-img-block::before {
    top: calc(-12 * var(--sp-unit));
    left: calc(-12 * var(--sp-unit));
    width: calc(690 * var(--sp-unit));
    height: calc(465 * var(--sp-unit));
    border-top-left-radius: calc(234 * var(--sp-unit));
    border-bottom-left-radius: calc(234 * var(--sp-unit));
  }

  .crosstalk-page .intro-section .intro-img-block img {
    width: calc(678 * var(--sp-unit));
    border-top-left-radius: calc(231 * var(--sp-unit));
    border-bottom-left-radius: calc(231 * var(--sp-unit));
  }

  .crosstalk-page .intro-section .deco-title {
    bottom: calc(-20 * var(--sp-unit));
    font-size: calc(137 * var(--sp-unit));
  }

  .crosstalk-page .profile-section .profile-title {
    top: calc(-15 * var(--sp-unit));
  }
}

/* crosstalk page(crosstalk-02) */
#crosstalk-02::before {
  content: '';
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  display: inline-block;
  width: calc(1920 * var(--pc-unit));
  height: calc(2548 * var(--pc-unit));
  background: url("../images/crosstalk/02/bk-fv.webp") no-repeat;
  background-position: top;
  background-size: contain;
  pointer-events: none;
}

#crosstalk-02 .fv-section .fv-title-en {
  color: #FFA76C;
}

#crosstalk-02 .fv-section .main-copy span {
  background-color: var(--color-orange-light);
}

#crosstalk-02 .fv-section .main-copy span::before {
  background-color: var(--color-orange-light);
}

#crosstalk-02 .intro-section .intro-img-block::before {
  background: linear-gradient(302deg, rgb(255 231 209) 0%, rgb(255 145 71) 100%);
}

#crosstalk-02 .bk-wrap::before {
  background: url("../images/crosstalk/02/bk-page.webp") no-repeat;
  background-position: top;
  background-size: contain;
  background-repeat: repeat-y;
}

#crosstalk-02 .chat-article-row .chat-header-block .chat-main-image-box::before {
  background: linear-gradient(302deg, rgb(255 231 209) 0%, rgb(255 145 71) 100%);
}

#crosstalk-02 .chat-article-row .chat-header-block .chat-main-title span {
  background-color: var(--color-orange-light);
}

#crosstalk-02 .chat-article-row .chat-image-block::before {
  background: linear-gradient(27deg, rgb(255 231 209) 0%, rgb(255 145 71) 100%);
}

@media screen and (max-width: 768px) {
  #crosstalk-02::before {
    top: calc(127 * var(--sp-unit));
    width: calc(780 * var(--sp-unit));
    height: calc(3307 * var(--sp-unit));
    background: url("../images/crosstalk/02/bk-fv-sp.webp") no-repeat;
    background-position: top;
    background-size: cover;
  }

  #crosstalk-02 .bk-wrap::before {
    width: calc(780 * var(--sp-unit));
    background: url("../images/crosstalk/02/bk-page-sp.webp") no-repeat;
    background-position: top;
    background-size: contain;
    background-repeat: repeat-y;
  }
}

/* projectstory page */
.projectstory-page .container {
  padding-bottom: clamp(calc(300px * var(--min-scale)), calc(300 * var(--pc-unit)), 300px);
}

.projectstory-page::before {
  content: '';
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  display: inline-block;
  width: calc(1920 * var(--pc-unit));
  height: 100%;
  background: url("../images/projectstory/bk-page.webp") no-repeat;
  background-position: top;
  background-size: contain;
  pointer-events: none;
  background-repeat: repeat-y;
}

.projectstory-page::after {
  content: '';
  position: absolute;
  z-index: -1;
  top: 83px;
  left: 0;
  display: inline-block;
  width: calc(1920 * var(--pc-unit));
  height: calc(1980 * var(--pc-unit));
  background: url("../images/projectstory/fv-img.webp") no-repeat;
  background-position: top;
  background-size: contain;
  pointer-events: none;
}

.projectstory-page .fv-section .wrap {
  position: relative;
  width: clamp(calc(1600px * var(--min-scale)), calc(1600 * var(--pc-unit)), 1600px);
  padding-top: clamp(calc(380px * var(--min-scale)), calc(380 * var(--pc-unit)), 380px);
  padding-bottom: clamp(calc(350px * var(--min-scale)), calc(350 * var(--pc-unit)), 350px);
}

.projectstory-page .fv-section .fv-info-box {
  color: var(--color-white);
}

.projectstory-page .fv-section .main-copy {
  font-size: clamp(calc(50px * var(--min-scale)), calc(50 * var(--pc-unit)), 50px);
  line-height: 2;
  letter-spacing: 0.1em;
  white-space: nowrap;
}

.projectstory-page .intro-section {
  padding: clamp(calc(100px * var(--min-scale)), calc(100 * var(--pc-unit)), 100px) 0;
}

.projectstory-page .intro-section .intro-inner {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
  gap: clamp(calc(100px * var(--min-scale)), calc(100 * var(--pc-unit)), 100px);
}

.projectstory-page .intro-section .section-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
}

.projectstory-page .intro-section .section-row:first-child {
  justify-content: flex-end;
}

.projectstory-page .intro-section .section-row > * {
  flex-shrink: 0;
}

.projectstory-page .intro-section .intro-text-block {
  width: clamp(calc(950px * var(--min-scale)), calc(950 * var(--pc-unit)), 950px);
  margin-top: clamp(calc(200px * var(--min-scale)), calc(200 * var(--pc-unit)), 200px);
}

.projectstory-page .intro-section .intro-title {
  margin-bottom: clamp(calc(30px * var(--min-scale)), calc(30 * var(--pc-unit)), 30px);
  font-size: clamp(calc(30px * var(--min-scale)), calc(30 * var(--pc-unit)), 30px);
  line-height: 2;
  white-space: nowrap;
  border-top: 1px solid var(--color-primary-skyblue);
  border-bottom: 1px solid var(--color-primary-skyblue);
}

.projectstory-page .intro-section .intro-desc {
  font-size: clamp(calc(19px * var(--min-scale)), calc(19 * var(--pc-unit)), 19px);
  line-height: 2.6;
  letter-spacing: 0.06em;
}

.projectstory-page .intro-section .intro-item {
  width: clamp(calc(580px * var(--min-scale)), calc(580 * var(--pc-unit)), 580px);
}

.projectstory-page .intro-section .intro-item:nth-child(2) {
  width: clamp(calc(630px * var(--min-scale)), calc(630 * var(--pc-unit)), 630px);
}

.projectstory-page .intro-section .intro-item .item-title {
  position: relative;
  margin-bottom: clamp(calc(30px * var(--min-scale)), calc(30 * var(--pc-unit)), 30px);
  font-size: clamp(calc(30px * var(--min-scale)), calc(30 * var(--pc-unit)), 30px);
  line-height: 2.6;
  letter-spacing: 0.1em;
  text-align: center;
  color: var(--color-white);
}

.projectstory-page .intro-section .intro-item .item-title::before {
  content: '';
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: inline-block;
  width: 100%;
  height: clamp(calc(65px * var(--min-scale)), calc(65 * var(--pc-unit)), 65px);
  background: linear-gradient(90deg, #0028A8 0%, #0038FF 100%);
  background-color: var(--color-primary-blue);
  clip-path: polygon(10% 0%, 100% 0%, 90% 100%, 0% 100%);
  pointer-events: none;
}

.projectstory-page .intro-section .intro-item .item-text {
  font-size: clamp(calc(19px * var(--min-scale)), calc(19 * var(--pc-unit)), 19px);
  line-height: 2.6;
  letter-spacing: 0.06em;
}

.projectstory-page .chat-article-row .chat-header-block {
  margin-top: clamp(calc(100px * var(--min-scale)), calc(100 * var(--pc-unit)), 100px);
}

.projectstory-page .chat-article-row .chat-header-block .chat-main-title span {
  background: linear-gradient(90deg, #0028A8 0%, #0038FF 100%);
}

.projectstory-page .chat-article-row .chat-header-block .chat-main-image-box::before {
  top: clamp(-12px, calc(-12 * var(--pc-unit)), calc(-12px * var(--min-scale)));
  left: clamp(-12px, calc(-12 * var(--pc-unit)), calc(-12px * var(--min-scale)));
  width: clamp(calc(869px * var(--min-scale)), calc(869 * var(--pc-unit)), 869px);
  height: clamp(calc(418px * var(--min-scale)), calc(418 * var(--pc-unit)), 418px);
  background: var(--color-primary-skyblue);
  border-radius: 0;
  clip-path: polygon(40% 0%, 100% 0%, 100% 100%, 0% 100%);
}

.projectstory-page .chat-article-row .chat-header-block .chat-main-image-box img {
  position: relative;
  z-index: 1;
  width: clamp(calc(857px * var(--min-scale)), calc(857 * var(--pc-unit)), 857px);
  border-radius: 0;
  clip-path: polygon(40% 0%, 100% 0%, 100% 100%, 0% 100%);
  overflow: hidden;
}

.projectstory-page .chat-article-row .chat-image-block {
  left: clamp(-460px, calc(-460 * var(--pc-unit)), calc(-460px * var(--min-scale)));
  width: clamp(calc(1114px * var(--min-scale)), calc(1114 * var(--pc-unit)), 1114px);
}

.projectstory-page .chat-article-row .chat-image-block::before {
  top: clamp(-12px, calc(-12 * var(--pc-unit)), calc(-12px * var(--min-scale)));
  right: clamp(-12px, calc(-12 * var(--pc-unit)), calc(-12px * var(--min-scale)));
  width: clamp(calc(1129px * var(--min-scale)), calc(1129 * var(--pc-unit)), 1129px);
  height: clamp(calc(418px * var(--min-scale)), calc(418 * var(--pc-unit)), 418px);
  background: var(--color-primary-skyblue);
  border-radius: 0;
  clip-path: polygon(0% 0%, 100% 0%, 70% 100%, 0% 100%);
}

.projectstory-page .chat-article-row .chat-image-block img {
  width: clamp(calc(1114px * var(--min-scale)), calc(1114 * var(--pc-unit)), 1114px);
  border-radius: 0;
  clip-path: polygon(0% 0%, 100% 0%, 70% 100%, 0% 100%);
}

.projectstory-page .article-row-04 .chat-header-block,
.projectstory-page .article-row-05 .chat-header-block {
  margin-top: clamp(calc(200px * var(--min-scale)), calc(200 * var(--pc-unit)), 200px);
}

@media screen and (max-width: 1024px) {
  .projectstory-page .fv-section .wrap {
    padding-bottom: clamp(calc(150px * var(--min-scale)), calc(150 * var(--pc-unit)), 150px);
  }

  .projectstory-page .intro-section .intro-title {
    font-size: clamp(calc(26px * var(--min-scale)), calc(26 * var(--pc-unit)), 26px);
    white-space: normal;
  }

  .projectstory-page .intro-section .intro-item {
    width: clamp(calc(450px * var(--min-scale)), calc(450 * var(--pc-unit)), 450px);
  }

  .projectstory-page .intro-section .intro-item:nth-child(2) {
    width: clamp(calc(570px * var(--min-scale)), calc(570 * var(--pc-unit)), 570px);
  }

  .projectstory-page .intro-section .intro-item .item-title {
    font-size: clamp(calc(26px * var(--min-scale)), calc(26 * var(--pc-unit)), 26px);
  }
}

@media screen and (max-width: 768px) {
  .projectstory-page .container {
    padding-bottom: calc(200 * var(--sp-unit));
  }

  .projectstory-page::before {
    width: calc(780 * var(--sp-unit));
    background: url("../images/projectstory/bk-page-sp.webp") no-repeat;
    background-position: top;
    background-size: contain;
    pointer-events: none;
    background-repeat: repeat-y;
  }

  .projectstory-page::after {
    top: calc(127 * var(--sp-unit));
    width: calc(780 * var(--sp-unit));
    height: calc(2143 * var(--sp-unit));
    background: url("../images/projectstory/fv-img-sp.webp") no-repeat;
    background-position: top;
    background-size: contain;
  }

  .projectstory-page .fv-section .wrap {
    align-items: flex-start;
    width: calc(680 * var(--sp-unit));
    padding-top: calc(270 * var(--sp-unit));
    padding-bottom: calc(870 * var(--sp-unit));
  }

  .projectstory-page .fv-section .main-copy {
    font-size: calc(46 * var(--sp-unit));
  }

  .projectstory-page .intro-section {
    padding: calc(200 * var(--sp-unit)) 0;
  }

  .projectstory-page .intro-section .intro-inner {
    gap: calc(100 * var(--sp-unit));
  }

  .projectstory-page .intro-section .section-row {
    flex-direction: column;
    gap: calc(150 * var(--sp-unit));
  }

  .projectstory-page .intro-section .intro-text-block {
    width: 100%;
    margin-top: calc(200 * var(--sp-unit));
  }

  .projectstory-page .intro-section .intro-title {
    margin-bottom: calc(70 * var(--sp-unit));
    font-size: calc(30 * var(--sp-unit));
    text-align: center;
  }

  .projectstory-page .intro-section .intro-desc {
    font-size: calc(30 * var(--sp-unit));
    line-height: 1.8;
    letter-spacing: 0.05em;
  }

  .projectstory-page .intro-section .intro-item {
    width: 100%;
  }

  .projectstory-page .intro-section .intro-item:nth-child(2) {
    width: 100%;
  }

  .projectstory-page .intro-section .intro-item .item-title {
    margin-bottom: calc(50 * var(--sp-unit));
    font-size: calc(34 * var(--sp-unit));
  }

  .projectstory-page .intro-section .intro-item .item-title::before {
    height: calc(80 * var(--sp-unit));
  }

  .projectstory-page .intro-section .intro-item .item-text {
    font-size: calc(30 * var(--sp-unit));
    line-height: 1.8;
    letter-spacing: 0.05em;
  }

  .projectstory-page .chat-article-row .chat-header-block {
    margin-top: calc(100 * var(--sp-unit));
  }

  .projectstory-page .chat-article-row .chat-header-block .chat-main-image-box {
    left: calc(70 * var(--sp-unit));
    right: auto;
    width: calc(781 * var(--sp-unit));
  }

  .projectstory-page .chat-article-row .chat-header-block .chat-main-image-box::before {
    top: calc(-12 * var(--sp-unit));
    left: calc(-22 * var(--sp-unit));
    width: calc(869 * var(--sp-unit));
    height: calc(378 * var(--sp-unit));
    clip-path: polygon(37% 0%, 100% 0%, 100% 100%, 0% 100%);
  }

  .projectstory-page .chat-article-row .chat-header-block .chat-main-image-box img {
    width: calc(781 * var(--sp-unit));
  }

  .projectstory-page .chat-article-row .chat-image-block {
    left: calc(-50 * var(--sp-unit));
    width: calc(732 * var(--sp-unit));
  }

  .projectstory-page .chat-article-row .chat-image-block::before {
    top: calc(-12 * var(--sp-unit));
    left: calc(-50 * var(--sp-unit));
    right: calc(-32 * var(--sp-unit));
    width: calc(807 * var(--sp-unit));
    height: calc(369 * var(--sp-unit));
    clip-path: polygon(0% 0%, 100% 0%, 72% 100%, 0% 100%);
  }

  .projectstory-page .chat-article-row .chat-image-block img {
    width: calc(732 * var(--sp-unit));
  }

  .projectstory-page .article-row-04 .chat-header-block,
  .projectstory-page .article-row-05 .chat-header-block {
    margin-top: calc(150 * var(--sp-unit));
  }
}