/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;-moz-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}

/*!///////////////////////////////////////////*/
/*!//////////// ↓↓↓reset↓↓↓ ////////////*/
/*!///////////////////////////////////////////*/
*, *::before, *::after { box-sizing: border-box;}
h1, h2, h3, h4, h5, h6, p, ul, ol, dl { margin: 0; color: #000;}
a { text-decoration: none;}
ul,ol { padding-left: 0; list-style-type: none;}
dd { margin-left: 0;}
p {font-size: 14px; line-height: 1.75;}
@media screen and (min-width: 768px) { p { font-size: 16px;}}
button {border: 0;}
/*!///////////////////////////////////////////*/
/*!//////////// ↑↑↑reset↑↑↑ ////////////*/
/*!///////////////////////////////////////////*/


/*!////////////////////////////////////////////*/
/*!//////////// ↓↓↓common↓↓↓ ////////////*/
/*!////////////////////////////////////////////*/
body { font-family: "Noto Sans JP", sans-serif;}
@media screen and (max-width: 767px) {
  .sp-none { display: none !important;}}
@media screen and (min-width: 768px) {
  .pc-none {display: none !important;}}
.hidden { display: none !important;}
.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

html.is-menu-open,
body.is-menu-open{
  overflow: hidden;
  height: 100%;
}
body.is-menu-open {
  position: fixed;
  left: 0;
  width: 100%;
}
body.is-menu-open .wrapper {
  overflow: visible;
}
.image { display: block; width: 100%;}
.wrapper {position: relative; overflow:clip;} /* overflowは適宜hiddenに変更 */
.container {
  position: relative;
  width: 100%;
  max-width: 1040px;
  margin-left: auto;
  margin-right: auto;
  padding-left: min(calc(20 / 375 * 100vw), 20px);
  padding-right: min(calc(20 / 375 * 100vw), 20px);
}
@media screen and (max-width: 767px) {
  .container--sp275 {
    width: calc(315 / 375 * 100vw);
  }
}

body * { min-height: 0vw;} /* clamp用 */

a { transition: .3s; }
a * {pointer-events: none; transition: .3s;} /* サイト計測用 */

img ,svg { width: 100%; height: auto; object-fit: contain; display: block;}

section { position: relative; }

h2 { text-align: center; }

.WBR { word-break: keep-all; overflow-wrap: anywhere; } 

.Grid {
  width: 100%;
  display: grid;
  grid-template-columns: auto;
  grid-template-rows: auto;
  gap: 20px;
}

@media screen and (min-width: 769px) {
  a[href^="tel:"] {
      pointer-events: none;
  }
}

summary {
  cursor: pointer;
	list-style: none;
}
summary::-webkit-details-marker {
	display: none;
}

/*!////////////////////////////////////////////*/
/*!//////////// ↑↑↑common↑↑↑ ////////////*/
/*!////////////////////////////////////////////*/

html {
  scroll-padding-top: 110px;
}
@media screen and (max-width: 767px) {
  html {
    scroll-padding-top: 44px;
  }
}

main {
  background-image: linear-gradient(to right,#eeeeee,#eeeeee,#c8c8c8),linear-gradient(to right,#eeeeee 50%,#c8c8c8 50%);
  background-position: center;
  background-size: min(100%,1400px) 100%, 100% 100%;
  background-repeat: no-repeat;
  margin-top: 110px;
}
@media screen and (max-width: 767px) {
  main {
    margin-top: 44px;
  }
}

.clip {
  clip-path: polygon(-1% -1%, 75% -1%, 101% 35%, 101% 101%, 25% 101%, -1% 65%);
}

.header {
  z-index: 100;
  position: fixed;
  top: 0;
  width: 100%;
  height: 110px;
  background-color: #0fac2a;
  background-image: linear-gradient(to bottom,#0fac2a ,#0fac2a),url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 377.51 597.07"><polygon fill="%23ffffff" points="0 597.07 0 0 377.51 0 0 597.07"/></svg>');
  background-size: 100% 10px, 377.5062px;
  background-position: left bottom,left top ;
  background-repeat: no-repeat;
  overflow: visible;
}
.is-menu-open .header {
  background-image:
  linear-gradient(to bottom,rgba(15, 172, 42,0), rgba(15, 172, 42,0)),
  url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 377.51 597.07"><polygon fill="%23ffffff" points="0 597.07 0 0 377.51 0 0 597.07"/></svg>');
  background-size:0% 0px, 377.5062px;
}
@media screen and (max-width: 767px) {
  .header ,.is-menu-open .header {
    background-image: linear-gradient(to bottom,#0fac2a ,#0fac2a),url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 377.51 597.07"><polygon fill="%23ffffff" points="0 597.07 0 0 377.51 0 0 597.07"/></svg>');
    height: 44px;
    background-size: 100% 4px, min(calc(150 / 375 * 100vw), 150px);
  }
}

.header__inner {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 5px;
}

.header__logo {
  width: 377.5062px;
  margin-right: min(3.5%,50px);
  flex-shrink: 0;
  margin-bottom: auto;
}
@media screen and (max-width: 767px) {
  .header__logo {
    width: min(calc(150 / 375 * 100vw), 150px);
  }
}

.header__recruit {
  margin-right: auto;
  max-width: 350px;
  flex: 1;
  margin-right: 15px;
}
div.header__recruit {
  margin-right: auto;
}
@media screen and (max-width: 767px) {
  .header__recruit {
    max-width: calc(131 / 375 * 100cqw);
  }
}

.header__recruit a {
  margin-right: auto;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 5px 30px;
}
@media screen and (max-width: 767px) {
  .header__recruit a {
    margin-right: auto;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 2px calc(8 / 375 * 100cqw);
  }
}

.header__recruit img {
  width: 100%;
  max-width: 223.9629px;
  transition: transform 0.3s ease;
  filter: drop-shadow(0 0px 0px rgba(0, 0, 0, 0.1));
}
@media screen and (min-width: 768px) {
  .header__recruit a:hover img {
    transform: translateY(-3px);
    filter: drop-shadow(0 5px 0px rgba(0, 0, 0, 0.1));
  }
}
@media screen and (max-width: 767px) {
  .header__recruit img {
    max-width: calc(81 / 375 * 100cqw);
  }
}

.header__recruit p {
  font-size: 20px;
  color: #fff;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .header__recruit p {
    font-size: calc(9 / 375 * 100cqw);
  }
}

.header__keihin {
  position: relative;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background-image: linear-gradient(to bottom,#fff 0px,#fff 1px,transparent 1px),linear-gradient(to bottom,#fff 0px,#fff 1px,transparent 1px);
  background-position: top right , bottom left;
  background-size: calc(100% - min(calc(25 / 1400 * 100vw), 25px)) 1px;
  background-repeat: no-repeat;
  margin-right: min(calc(5 / 1400 * 100vw), 5px);
  /* margin-left: 15px; */
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .header__keihin:hover {
    background-size: 0 1px;
    transition-delay: .3s;
  }
}
@media screen and (max-width: 767px) {
  .header__keihin {
    position: fixed;
    right: 0;
    top: 50px;
    clip-path: polygon(0% 0%, 0% 0%, 100% 12%, 100% 100%, 100% 100%, 0% 88%);
    background-color: #0fac2a;
    width: min(calc(26 / 375 * 100vw), 26px);
    writing-mode: vertical-rl;
    padding: min(calc(30 / 375 * 100vw), 30px) 0 min(calc(45 / 375 * 100vw), 45px);
    margin: 0;
    flex-direction: column;
  }
}

.header__keihin::before ,.header__keihin::after {
  content: "";
  position: absolute;
  width: clamp(65px,calc(78vw / 14),78px);
  height: 1px;
  background-color: #fff;
  pointer-events: none;
  transition: .3s;
  transition-delay: .3s;
}
.header__keihin::before {
  top: 0;
  left: min(calc(25 / 1400 * 100vw), 25px);
  transform: rotate(126deg);
  transform-origin: 0;
}
.header__keihin::after {
  bottom: 0;
  right: min(calc(25 / 1400 * 100vw), 25px);
  transform: rotate(124deg);
  transform-origin: 100%;
}
.header__keihin:hover::before,.header__keihin:hover::after {
  width: 0;
  transition: .3s;
  transition-delay: 0;
}
@media screen and (max-width: 767px) {
  .header__keihin::before ,.header__keihin::after {
    content: none;
  }
}

.header__keihin p {
  position: relative;
  color: #fff;
  font-size: min(calc(24 / 1400 * 100cqw), 24px);
  padding: 5px min(calc(50 / 1400 * 100vw), 50px) 5px min(calc(40 / 1400 * 100vw), 40px);
}
@media screen and (min-width: 768px) {
  .header__keihin:hover p {
    transform: translateY(-2px);
    filter: drop-shadow(0 5px 0px rgba(0, 0, 0, 0.1));
  }
}
@media screen and (max-width: 767px) {
  .header__keihin p {
    font-size: min(calc(10.1 / 375 * 100vw), 10.1px);
    padding: 0;
  }
}

.header__keihin p::after {
  content: "";
  position: absolute;
  right: min(calc(25 / 1400 * 100vw), 25px);
  top: 50%;
  transform: translateY(-50%);
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 8.04 15.97"><polygon fill="%23ffffff" points=".12 0 .12 3.77 4.27 7.93 0 12.2 0 15.97 8.04 7.93 .12 0"/></svg>');
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  width: min(calc(8.04 / 1000 * 100vw), 8.0444px);
  height: auto;
  aspect-ratio: 8.0444 / 15.9722;
  transition: .3s;
}
@media screen and (min-width: 768px) {
  .header__keihin:hover p::after {
    right: 10px;
    transform: translateY(calc(-50% + 2px));
  }
}
@media screen and (max-width: 767px) {
  .header__keihin p::after {
    right: 50%;
    top: calc(100% + 5px);
    transform: translateX(50%);
    width: min(calc(5.325 / 375 * 100vw), 5.325px);
  }
}

.header__button-menu {
  position: relative;
  z-index: 3;
  appearance: none;
  border: none;
  padding: 0;
  width: min(calc(160 / 1400 * 100vw), 160px);
  height: 100px;
  clip-path: polygon(63px 0%, 0% 0%, 100% 0%, 100% 100%, 100% 100%, 0% 100%);
  background-color: #fff;
  margin-bottom: auto;

  cursor: pointer;
  flex-shrink: 0;
}
.header__button-menu:focus-visible {
  outline: 2px solid #0fac2a;
  outline-offset: -6px;
}
@media screen and (min-width: 768px) {
  body.is-menu-open .header__button-menu {
    background-color: #0fac2a;
  }
}
@media screen and (max-width: 767px) {
  .header__button-menu {
    height: 40px;
    width: 65px;
    clip-path: polygon(33.5% 0%, 0% 0%, 100% 0%, 100% 100%, 100% 100%, 0% 100%);
  }
}

.header__button-menu::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-28%, calc(-50% + 5px)) skew(-34deg);
  width: min(40%, 50px);
  height: 30px;
  background-image: linear-gradient(#0fac2a, #0fac2a), linear-gradient(#0fac2a, #0fac2a), linear-gradient(#0fac2a, #0fac2a);
  background-repeat: no-repeat;
  background-size: min(100%,50px) 5px;
  background-position: top right, center center, bottom left;
  transform-origin: 100%;
  transition: .3s ease;
}
@media screen and (min-width: 768px) {
  .header__button-menu:hover::before {
    height: 43px;
    width: min(50%, 52px);
  }
}
@media screen and (max-width: 767px) {
  .header__button-menu::before {
    transform: translate(-28%, calc(-50% + 2px)) skew(-34deg);
    width: 20px;
    height: 12.0649px;
    background-size: min(100%,50px) 1.7px;
  }
}

.header__button-menu::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: min(40%, 50px);
  height: 5px;
  background-color: #0fac2a;
  transform: translate(-28%, -50%) skew(-34deg);
  transform-origin: center;
  opacity: 0;
  pointer-events: none;
  transition: all .3s ease,background-color 0s;
}

body.is-menu-open .header__button-menu::before,
body.is-menu-open .header__button-menu:hover::before {
  height: 5px;
  width: min(50%, 52px);
  background-image: linear-gradient(#fff, #ddd);
  background-size: 100% 5px;
  background-position: center;
  transform-origin: center;
  transform: translate(-28%, -50%) rotate(40deg);
}
body.is-menu-open .header__button-menu::after {
  opacity: 1;
  background-color: #fff;
  width: min(50%, 52px);
  transform: translate(-28%, -50%) rotate(-40deg);
}
@media screen and (max-width: 767px) {
  .header__button-menu::after {
    height: 1.7px;
  }
  
  body.is-menu-open .header__button-menu::before,
  body.is-menu-open .header__button-menu:hover::before {
    height: 1.7px;
    background-image: linear-gradient(#0fac2a, #0fac2a);
    background-size: 100% 1.7px;
  }
  body.is-menu-open .header__button-menu::after {
    background-color: #0fac2a;
  }
}

body.is-menu-open .header__keihin {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.header__menu {
  position: fixed;
  z-index: 1;
  top: var(--header-height, 110px);
  left: 0;
  width: 100%;
  height: calc(100vh - var(--header-height, 110px));
  height: calc(100dvh - var(--header-height, 110px));
  padding-left: calc(350px + min(3.5%,50px));
  background-color: #0fac2a;
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 761.63 675.94" preserveAspectRatio="none"><polygon fill="%23ffffff" points="0 0 0 675.94 761.63 0 0 0"/></svg>');
  background-size: 377.5062px 597.0725px;
  background-position: left -110px;
  background-repeat: no-repeat;
  overflow: hidden;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  clip-path: polygon(100% 0%, 100% 0%, 100% 0%, 100% 0%);
  transition: clip-path 0.65s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.65s, opacity 0.3s;
}
body.is-menu-open .header__menu {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
  clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
}

.header__menu-inner {
  width: 100%;
  height: 100%;
  max-width: 770px;
  overflow: auto;
  overscroll-behavior: contain;
  padding: min(calc(48 / 1400 * 100vw), 48px) 20px max(48px, env(safe-area-inset-bottom)) 0;
  display: flex;
  justify-content: center;
  gap: min(calc(48 / 1400 * 100vw), 48px);
  opacity: 0;
  transform: translate3d(8%, -18%, 0);
  transition: opacity 0.4s ease, transform 0.55s cubic-bezier(0.16, 1, 0.3, 1);
  transition-delay: 0s;
}
body.is-menu-open .header__menu-inner {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  transition-delay: 0.18s;
}

.menu__list-1 {
  display: grid;
  grid-template-columns: 1fr;
  gap: min(calc(40 / 800 * 100vh), 40px) min(calc(80 / 1400 * 100vw), 80px);
  max-width: 1040px;
  margin: 0 auto;
}
.menu__list-1 ul {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
}
.menu__list-1 ul li {
  width: 100%;
  max-height: 55px;
  flex: 1;
}

.menu__list-1 a {
  position: relative;
  width: 100%;
  color: #fff;
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  padding-right: 40px;
}
.menu__list-1 a:hover {
  transform: translateY(-2px);
  filter: drop-shadow(0 4px 0 rgba(0, 0, 0, 0.12));
}
.menu__list-1-mainlink {
  font-size: min(calc(20 / 1400 * 100vw), 20px);
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 3px;
}
.menu__list-1-sublink {
  font-size: min(calc(16 / 1400 * 100vw), 16px);
  font-weight: 500;
  line-height: 1.4;
  padding-left: min(calc(20 / 375 * 100vw), 20px);
  letter-spacing: 2px;
}

.menu__list-1 a::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  width: 13px;
  aspect-ratio: 8.04 / 15.97;
  height: auto;
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 8.04 15.97"><polygon fill="%23ffffff" points=".12 0 .12 3.77 4.27 7.93 0 12.2 0 15.97 8.04 7.93 .12 0"/></svg>');
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
}
.menu__list-1 .menu__list-1-sublink a::before {
  width: 7px;
}

.menu__list-1 a:focus-visible,
.menu__list-2 a:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 4px;
}

.menu__list-2 {
  position: relative;
  display: flex;
  align-items: stretch;
  flex-direction: column;
  gap: 30px 20px;
  width: 100%;
  max-width: 1040px;
  margin: 0 auto;
  max-width: 400px;
  padding-left: 70px;
}
.menu__list-2.sp-none::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 18.21px;
  height: 100%;
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 18.21 71.95"><polygon fill="%23ccd8d2" points="18.21 46.3 18.21 37.9 0 25.65 0 34.05 18.21 46.3"/><polygon fill="%23ccd8d2" points="18.21 59.12 18.21 50.73 0 38.48 0 46.87 18.21 59.12"/><polygon fill="%23ccd8d2" points="18.21 33.47 18.21 25.08 0 12.83 0 21.22 18.21 33.47"/><polygon fill="%23ccd8d2" points="18.21 20.65 18.21 12.25 0 0 0 8.4 18.21 20.65"/><polygon fill="%23ccd8d2" points="18.21 71.95 18.21 63.55 0 51.3 0 59.7 18.21 71.95"/></svg>'),
  linear-gradient(to bottom, #fff, #fff);
  background-size: 18.21px 71.95px ,1px calc(100% - 71.95px);
  background-repeat: no-repeat;
  background-position: left top ,right bottom;
}

.menu__list-2-title {
  width: 100%;
  max-width: 234.5005px;
}

.menu__list-2 p {
  color: #fff;
  font-size: min(calc(16 / 1400 * 100vw), 16px);
  font-weight: 700;
}
.menu__list-2 > a {
  position: relative;
  width: 100%;
  height: 90px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.menu__list-2 > a:hover {
  transform: translateY(-3px);
  filter: drop-shadow(-2px 5px 0 rgba(0, 0, 0, 0.3));
}

.menu__list-2 > a p {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  background-color: #fff;
  font-size: clamp(min(calc(14 / 375 * 100vw), 14px), calc(16 / 1000 * 100vw), 16px);
  font-weight: 700;
  line-height: 1.2;
  padding-left: min(calc(40 / 1400 * 100vw), 40px);
  padding-right: min(calc(40 / 1400 * 100vw), 40px);
  clip-path: polygon(0% 0%, 90% 0%, 100% 30%, 100% 100%, 10% 100%, 0% 70%);
}
.menu__list-2-link--new p {
  color: #4689ce;
}
.menu__list-2-link--career p {
  color: #000;
}

.menu__list-2 > a p::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: min(calc(30 / 1400 * 100vw), 30px);
  width: min(calc(17.57 / 1400 * 100vw), 17.57px);
  aspect-ratio: 17.57 / 34.89;
  height: auto;
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 17.57 34.89"><polygon fill="%234689ce" points=".25 0 .25 8.23 9.34 17.32 0 26.65 0 34.89 17.57 17.32 .25 0"/></svg>');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transition: right 0.3s ease;
}
.menu__list-2 > a.menu__list-2-link--career p::before {
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 17.57 34.89"><polygon fill="%23000000" points=".25 0 .25 8.23 9.34 17.32 0 26.65 0 34.89 17.57 17.32 .25 0"/></svg>');
}
.menu__list-2 > a:hover p::before {
  right: min(calc(20 / 1400 * 100vw), 20px);
}

.menu__fixed-link {
  z-index: -1;
  position: fixed;
  top: 75px;
  right: 0;
  transform: translate(0);
  width: 70px;
  max-width: none;
  height: 511px;
  display: flex;
  flex-direction: column;
  padding: 0;
  margin: 0;
  gap: 0;
}
.menu__fixed-link > a {
  height: 100%;
  padding: 0;
  width: 100%;
  max-width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  text-align: center;
}
.menu__fixed-link > a.menu__fixed-link--new {
  background-color: #4689ce;
}
.menu__fixed-link > a.menu__fixed-link--career {
  background-color: #000;
}
.menu__fixed-link > a.menu__fixed-link--new p {
  color: #fff;
}
.menu__fixed-link > a.menu__fixed-link--career p {
  color: #fff;
}
@media screen and (min-width: 768px) {
  .menu__fixed-link {
    clip-path: polygon(100% 35px, 100% calc(100% + 35px), 0% calc(100% + 35px), 0% 35px);
  }
  .menu__fixed-link > a {
    writing-mode: vertical-lr;
    transform: skewY(35deg);
  }
  .menu__fixed-link > a:hover {
    transform: translateX(3px) skewY(35deg);
  }
  .menu__fixed-link > a.menu__fixed-link--new {
    padding-top: 15px;
  }
  .menu__fixed-link > a p {
    transform: skewY(-35deg);
    font-size: 16px;
    font-weight: 500;
  }
}

@media screen and (max-width: 767px) {
  .header__menu {
    top: var(--header-height, calc(44 / 375 * 100vw));
    height: calc(100vh - var(--header-height, calc(44 / 375 * 100vw)));
    height: calc(100dvh - var(--header-height, calc(44 / 375 * 100vw)));
    background-image: none;
    padding-left: min(calc(40 / 375 * 100vw), 40px);
    padding-right: min(calc(40 / 375 * 100vw), 40px);
  }
  .header__menu-inner {
    display: flex;
    justify-content: flex-start;
    padding: 20px 0;
    gap: 0;
    max-width: 400px;
    margin: 0 auto;
  }
  .menu__list-1 {
    width: 100%;
    grid-template-columns: 1fr;
    gap: 0;
    display: flex;
    flex-direction: column;
  }
  .menu__list-1 ul {
    gap: 0;
  }
  .menu__list-1 ul li {
    display: flex;
    min-height: calc(60 / 665 * 100vh);
    border-bottom: 1px solid #c0f0c4;
  }
  .menu__list-1-mainlink {
    font-size: min(calc(16 / 375 * 100vw), 16px);
    letter-spacing: 2px;
  }
  .menu__list-1-sublink {
    font-size: min(calc(14 / 375 * 100vw), 14px);

    letter-spacing: 1px;
  }
  .menu__list-1 .menu__list-1-mainlink a::before {
    width: 20px;
    aspect-ratio: 1;
    background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 20 20"><polygon fill="%23ffffff" points="11.25 8.75 11.25 0 8.75 0 8.75 8.75 0 8.75 0 11.25 8.75 11.25 8.75 20 11.25 20 11.25 11.25 20 11.25 20 8.75 11.25 8.75"/></svg>');
  }
  .menu__list-1 .menu__list-1-sublink a::before {
    width: 7px;
  }
  .menu__fixed-link {
    position: fixed;
    top: auto;
    bottom: 0;
    right: auto;
    left: 50%;
    transform: translateX(-50%) skew(-20deg);
    width: calc(100% + 40px);
    max-width: none;
    height: 60px;
    flex-direction: row;
    padding: 0;
    margin: 0;
    gap: 0;
    transition: 0;
  }
  .menu__fixed-link > a {
    height: 100%;
    padding: 0;
    width: 100%;
    max-width: 100%;
    justify-content: center;
    text-align: center;
    transition: 0;
  }

  .menu__fixed-link > a p {
    font-size: min(calc(12 / 375 * 100vw), 12px);
    clip-path: none;
    padding: 0;
    justify-content: center;
    transform: skew(20deg);
    background-color: transparent;
    transition: 0;
  }

}

@media (prefers-reduced-motion: reduce) {
  .header__menu,
  .header__menu-inner,
  .header__button-menu::before,
  .header__button-menu::after {
    transition: none;
  }
}

.deco__slash {
  width: auto;
  height: 19px;
  display: flex;
  gap: 4.5px;
  transform: skew(-34deg);
  pointer-events: none;
}
.deco__slash--1 {
  position: absolute;
  bottom: 10px;
  right: min(calc(205 / 1400 * 100vw), 205px);
  height: 12.1428px;
  gap: min(calc(4.5 / 1400 * 100vw), 4.5px);
}
.deco__slash--2 {
  z-index: 11;
  position: absolute;
  top: 78%;
  left: 51%;
}
@media screen and (max-width: 767px) {
  .deco__slash {
    height: 7.8px;
    gap: 1.845px;
  }
  .deco__slash--1 {
    bottom: 4px;
    right: min(calc(80 / 375 * 100vw),80px);
    height: 8.0132px;
    gap: min(calc(1.7 / 375 * 100vw), 1.7px);
  }
  .deco__slash--2 {
    top: 51.25%;
    left: 41%;
  }
}

.deco__slash span {
  display: block;
  width: 10.5422px;
  height: 100%;
  background-color: #ccd8d2;
}
.deco__slash--1 span {
  width: 6.2px;
}
body.is-menu-open .deco__slash span {
  background-color: transparent;
}
.deco__slash--2 span {
  background-color: #4689ce;
}
@media screen and (max-width: 767px) {
  .deco__slash span {
    width: 4.1px;
  }
}

.keihin-deco-img {
  position: relative;
}

.keihin-deco-img::after {
  content: "";
  position: absolute;
  top: 100%;
  left: calc(80 / 486 * 100%);
  transform: translateY(-50%);
  width: calc(112 / 486 * 100%);
  height: auto;
  aspect-ratio: 112 / 28;
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 112 28"><polygon fill="%234689ce" points="59.22 0 40.08 28.46 53.2 28.46 72.34 0 59.22 0"/><polygon fill="%234689ce" points="39.18 0 20.04 28.46 33.16 28.46 52.3 0 39.18 0"/><polygon fill="%234689ce" points="79.26 0 60.12 28.46 73.24 28.46 92.38 0 79.26 0"/><polygon fill="%234689ce" points="99.3 0 80.16 28.46 93.28 28.46 112.42 0 99.3 0"/><polygon fill="%234689ce" points="19.14 0 0 28.46 13.12 28.46 32.26 0 19.14 0"/></svg>');
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
}

.top {
  position: relative;
  z-index: 2;
  background-image: linear-gradient(to bottom,#fff,#fff 68%,transparent 68%);
  background-size: 100% 100%;
  background-position: top center;
  background-repeat: no-repeat;

}
@media screen and (max-width: 767px) {
  .top {
    background-image: linear-gradient(to bottom,#fff,#fff 85%,transparent 85%);
  }
}

/* スライダー */
/* スライダー外枠コンテナ */
.slider-stage {
  position: relative;
  width: 100%;
  max-width: 1400px;
  height: auto;
  aspect-ratio: 1400 / 823;
  overflow: hidden;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .slider-stage {
    transform-origin: right;
    aspect-ratio: 375 / 406;
  }

}

/* スライド共通スタイル */
.slide-item {
  position: absolute;
  /* 基準となる「現在のスライド」のサイズ・位置（右上寄り） */
  top: 0;
  right: 0;
  width: calc(900 / 1400 * 100%);
  height: auto;
  aspect-ratio: 900 / 651;
  overflow: hidden;
  /* シャープな印象を与える加速曲線（cubic-bezier） */
  transition: transform 0.85s cubic-bezier(0.16, 1, 0.3, 1),
              opacity 0.85s cubic-bezier(0.16, 1, 0.3, 1);
  will-change: transform, opacity;
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .slide-item {
    transform-origin: right;
    width: calc(292% / 3.75);
  }
}

.slide-inner {
  width: 100%;
  height: 100%;
  position: relative;
}

.slide-inner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: grayscale(20%) contrast(1.1);
  transition: filter 0.85s ease;
  clip-path: polygon(-1% -1%, 75% -1%, 101% 35%, 101% 101%, 25% 101%, -1% 65%);
}

/* 各状態（ステータス）の配置・縮小率 */

/* 1. 待機状態（さらに右上の画面外から進入） */
.slide-item.is-entering {
  transform: translate3d(50%, -50%, 0) scale(1.15);
  opacity: 0;
  z-index: 1;
}

/* 2. 現在のスライド（右上メイン位置・等倍） */
.slide-item.is-current {
  transform: translate3d(0, 0, 0) scale(1);
  opacity: 1;
  z-index: 10;
  pointer-events: auto;
  transition: 0;
}
/* .slide-item.is-current img {
  filter: grayscale(0%) contrast(1.05);
} */


/* 3. ひとつ前のスライド（左下へ移動・縮小） */
.slide-item.is-prev {
  /* 右上基準から左下へ平行移動 + 縮小（角度は変えない） */
  transform: translate3d(-83%, 48%, 0) scale(0.56);
  z-index: 5;
}
@media screen and (max-width: 767px) {
  .slide-item.is-prev {
    transform: translate3d(0, 113.5%, 0) scale(0.56);
}
}

/* 4. 退場完了（さらに左下画面外へ抜けて消える） */
.slide-item.is-leaving {
  transform: translate3d(-180%, 110%, 0) scale(0.35);
  opacity: 0;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .slide-item.is-leaving {
  transform: translate3d(0, 300%, 0)  scale(0.35);
}
}

/* 「前へ」用退場：右上へフェードアウト（is-entering と同じ位置） */
.slide-item.is-leaving-prev {
  transform: translate3d(50%, -50%, 0) scale(1.15);
  opacity: 0;
  z-index: 1;
}

/* 非アクティブなその他のスライド（完全非表示） */
.slide-item.is-hidden {
  opacity: 0;
  transform: translate3d(60%, -60%, 0) scale(1);
  visibility: hidden;
  transition: none; /* 即座に待機位置へ戻すため */
}

/* --- ナビゲーション UI（矢印・ページネーション） --- */
.slider-ui {
  position: absolute;
  bottom: 10%;
  right: 20%;
  display: flex;
  align-items: center;
  gap: 20px;
  z-index: 20;
}
@media screen and (max-width: 767px) {
    .slider-ui {
      bottom: 40%;
      right: 20%;
      gap: calc(10 / 375 * 100vw);
  }
}


/* 「次へ」矢印ボタン */
.btn-next {
  background-color: #000;
  border: 1px solid rgba(255, 255, 255, 0.3);
  width: 34px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: #fff;
  transition: all 0.3s ease;
  outline: none;
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 35 35"><polygon fill="%23ffffff" points="19.54 9.23 12.05 16.73 19.44 24.11 19.44 20.6 15.56 16.73 19.54 12.74 19.54 9.23"/></svg>') ;
  background-repeat: no-repeat;
  background-size: contain;
  clip-path: polygon(0% 0%, 70% 0%, 100% 25%, 100% 100%, 25% 100%, 0% 75%);
}
@media screen and (max-width: 767px) {
  .btn-next {
    width: calc(18 / 375 * 100vw);
    height: calc(18 / 375 * 100vw);
  }
}

.btn-next:hover {
  background-color: #5a5a5a;
  /* color: #0d0f12; */
  border-color: #ffffff;
}

/* ページネーション */
.slider-dots {
  display: flex;
  gap: 10px;
}
@media screen and (max-width: 767px) {
  .slider-dots {
    gap: calc(7 / 375 * 100vw);
  }
}

.dot {
  width: 10px;
  height: 10px;
  background: #a0a0a0;
  transition: all 0.4s ease;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .dot {
    width: calc(5 / 375 * 100vw);
    height: calc(5 / 375 * 100vw);
  }
}

.dot.is-active {
  background: #5a5a5a;
  transform: scale(1.15);
}

.top__title {
  position: absolute;
  z-index: 15;
  top: calc(160 / 823 * 100%);
  left: 50%;
  transform: translateX(calc(-106%));
  font-size: min(calc(38 / 1400 * 100cqw), 38px);
  letter-spacing: min(calc(2 / 1400 * 100cqw), 2px);
  color: #0fac2a;
  line-height: calc(88 / 38);
  font-weight: 700;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .top__title {
    font-size: calc(20 / 375 * 100cqw);
    line-height: 2;
    letter-spacing: min(calc(1 / 375 * 100cqw), 1px);
    top: calc(150 / 406.1105 * 100%);
    left: calc(20 / 375 * 100%);
    transform: translate(0);
  }
}

.introduction {
  position: relative;
  z-index: 1;
}

.design-container {
  position: relative;
  width: 100%;
  max-width: 1400px;
  padding-left: 70px;
  padding-right: 70px;
  margin-left: auto;
  margin-right: auto;
}
.design-container--white {
  background-color: #fff;
}
.design-container--green {
  background-color: #0fac2a;
}
.introduction__design-container {
  margin-top: calc(0% - min(calc(263 / 1400 * 100vw),263px));
  padding-top: calc(min(calc(263 / 1400 * 100vw),263px) + 117px);
  padding-bottom: 293px;
}
.training__design-container {
  padding-top: 85px;
  padding-bottom: 400px;
}
.instagram__design-container {
  padding-top: 90px;
  padding-bottom: 170px;
}
.entry__design-container {
  padding-top: 85px;
  padding-bottom: 145px;
  background-color: #0fac2a;
}
.introduction-keihin__design-container {
  padding-bottom: 145px;
}
.keihinwhite__design-container {
  padding-top: 150px;
  padding-bottom: 360px;
}
.keihin-interviews__design-container {
  /* margin-top: calc(0% - min(calc(280 / 1200 * 100vw), 280px)); */
  padding-top: 120px;
  padding-bottom: 185px;
}
/* @media screen and (max-width: 767px) {
  .keihin-interviews__design-container {
    margin-top: calc(0% - min(calc(195 / 375 * 100vw), 195px));
  }
} */

.interview-sec1__design-container {
  padding-top: calc(100px + calc(120 / 1400 * 100vw));
  padding-bottom: 30px;
}
.interview-sec3__design-container {
  padding-top: 70px;
  padding-bottom: 150px;
}
.footer-slider__design-container {
  padding-top: 100px;
  padding-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .design-container {
    /* padding-left: min(calc(35 / 375 * 100vw), 35px);
    padding-right: min(calc(35 / 375 * 100vw), 35px); */
    padding-left: 0;
    padding-right: 0;
  }
  .introduction__design-container {
    margin-top: calc(0% - calc(65 / 375 * 100vw));
    padding-top: calc(calc(65 / 375 * 100vw) + min(calc(20 / 375 * 100vw), 20px));
    padding-bottom: calc(calc(85 / 375 * 100vw) + 70px);
  }
  .training__design-container {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .instagram__design-container {
    padding-top: 120px;
    padding-bottom: 80px;
  }
  .entry__design-container {
    padding-top: 55px;
    padding-bottom: 40px; /* notice セクション追加に伴い 75px → 40px に調整 */
  }
  .introduction-keihin__design-container {
    padding-bottom: 60px;
  }
  .keihinwhite__design-container {
    padding-top: 60px;
    padding-bottom: 270px;
  }
  .keihin-interviews__design-container {
    padding-top: 80px;
    padding-bottom: 165px;
  }
  .interview-sec1__design-container {
    padding-top: calc(35px + calc(200 / 375 * 100vw));
    padding-bottom: 30px;
  }
  .interview-sec3__design-container {
    padding-top: 150px;
    padding-bottom: 60px;
  }
  .footer-slider__design-container {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

.design-parts {
  position: absolute;
  width: 70px;
  height: 100%;
  top: 0;
  right: min(calc(60 / 1400 * 100vw), 60px);
  display: flex;
  flex-direction: column;
  pointer-events: none;
}
.design-parts--left {
  left: min(calc(60 / 1400 * 100vw), 60px);
  right: auto;
  transform: scaleX(-1);
}
.keihin-interviews__design-container .design-parts {
  /* top: min(calc(480 / 1200 * 100vw), 480px); */
  top: 0;
}
@media screen and (max-width: 767px) {
  .design-parts {
    right: 0;
    width: min(calc(35 / 375 * 100vw), 35px);
  }
  .design-parts--left {
    left: 0;
    right: auto;
  }
  /* .keihin-interviews__design-container .design-parts {
    top: calc(min(calc(265 / 375 * 100vw), 265px) + 300px);
  } */
}

.design-parts .steady ,.design-parts .responsive {
  position: relative;
  width: 100%;
  background-position: top left;
  background-image: linear-gradient(to bottom,#fff,#fff);
  background-size: calc(2 / 70 * 100%) calc(100% - 43.1733px);
  background-repeat: no-repeat;
}
.design-container--white .design-parts .steady ,.design-container--white .design-parts .responsive {
  background-image: linear-gradient(to bottom,#c8c8c8,#c8c8c8);
}
.design-container--green .design-parts .steady ,.design-container--green .design-parts .responsive {
  background-image: linear-gradient(to bottom,#87d594,#87d594);
}
.design-parts .steady {
  height: calc(min(calc(263 / 1400 * 100vw),263px) + 117px);
  background-position: top left,bottom left;
  background-image: linear-gradient(to bottom,#fff,#fff),
  url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 44 43.17"><polygon fill="%23ffffff" points="44 42.35 2 0 0 .82 42 43.17 44 42.35"/></svg>');
  background-size: calc(2 / 70 * 100%) calc(100% - 43.1733px),calc(44 / 70 * 100%);
}
.design-container--white .design-parts .steady {
  background-image: linear-gradient(to bottom,#c8c8c8,#c8c8c8),
  url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 44 43.17"><polygon fill="%23c8c8c8" points="44 42.35 2 0 0 .82 42 43.17 44 42.35"/></svg>');
}
.design-container--green .design-parts .steady {
  background-image: linear-gradient(to bottom,#87d594,#87d594),
  url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 44 43.17"><polygon fill="%2387d594" points="44 42.35 2 0 0 .82 42 43.17 44 42.35"/></svg>');
}
.training__design-container .design-parts .steady {
  height: 170px;
}
.instagram__design-container .design-parts .steady {
  height: 120px;
}
.entry__design-container .design-parts .steady {
  height: 90px;
}
.introduction-keihin__design-container .design-parts .steady {
  height: 35px;
}
.keihinwhite__design-container .design-parts .steady {
  height: 200px;
}
.keihin-interviews__design-container .design-parts .steady {
  height: 370px;
}
.interview-sec1__design-container .design-parts .steady {
  height:calc(145px + calc(120 / 1400 * 100vw));
}
.footer-slider__design-container .design-parts .steady {
  height: 170px;
}
.design-parts .steady--2 {
  height: 286px;
  background-position: bottom left,top left;
  background-image: linear-gradient(to bottom,#fff,#fff),
  url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 44 43.17"><polygon fill="%23ffffff" points="42 0 0 42.35 2 43.17 44 .82 42 0"/></svg>');
}
.design-container--white .design-parts .steady--2 {
  background-image: linear-gradient(to bottom,#c8c8c8,#c8c8c8),
  url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 44 43.17"><polygon fill="%23c8c8c8" points="42 0 0 42.35 2 43.17 44 .82 42 0"/></svg>');;
}
.design-container--green .design-parts .steady--2 {
  background-image: linear-gradient(to bottom,#87d594,#87d594),
  url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 44 43.17"><polygon fill="%2387d594" points="42 0 0 42.35 2 43.17 44 .82 42 0"/></svg>');;
}
.training__design-container .design-parts .steady--2 {
  height: 425px;
}
.entry__design-container .design-parts .steady--2 {
  height: 150px;
}
.introduction-keihin__design-container .design-parts .steady--2 {
  height: 320px;
}
.keihinwhite__design-container .design-parts .steady--2 {
  height: 350px;
}
.keihin-interviews__design-container .design-parts .steady--2 {
  height: calc(min(calc(430 / 1400 * 100vw), 430px) + min(calc(280 / 1200 * 100vw), 280px));
}
.interview-sec3__design-container .design-parts .steady--2 {
  height: 100px;
}
.footer-slider__design-container .design-parts .steady--2 {
  height: 165px;
}
.design-parts .responsive {
  flex: 1;
  background-position: calc(42 / 70 * 100%) top;
  background-image: linear-gradient(to bottom,#fff,#fff);
  background-size: calc(2 / 70 * 100%) 100%;
}
.design-container--white .design-parts .responsive {
  background-image: linear-gradient(to bottom,#c8c8c8,#c8c8c8);
}
.design-container--green .design-parts .responsive {
  background-image: linear-gradient(to bottom,#87d594,#87d594);
}
.employee-benefits .design-parts .responsive {
  background-size: calc(2 / 70 * 100%) calc(100% - clamp(100px,calc(300 / 768 * 100vw), 300px));
}
.design-parts .responsive--inline {
  background-position: bottom left;
}
@media screen and (max-width: 767px) {
  .design-parts .steady ,.design-parts .responsive {
    background-size: calc(2 / 70 * 100%) calc(100% - min(calc(21 / 375 * 100vw), 21px));
  }
  .design-parts .steady {
    height: calc(calc(65 / 375 * 100vw) + min(calc(100 / 375 * 100vw), 100px));
    background-size: calc(2 / 70 * 100%) calc(100% - min(calc(21 / 375 * 100vw), 21px)),calc(44 / 70 * 100%);
  }
  .training__design-container .design-parts .steady {
    height: 120px;
  }
  .training__design-container .design-parts .steady--2 {
    height: 80px;
  }
  .instagram__design-container .design-parts .steady {
    height: 90px;
  }
  .instagram__design-container .design-parts .steady--2 {
    height: 30px;
  }
  .design-parts .steady--2 {
    height: min(calc(430 / 375 * 100vw), 430px);
  }
  .design-parts .responsive {
    background-size: calc(2 / 70 * 100%) 100%;
  }
  .entry__design-container .design-parts .steady {
    height: 120px;
  }
  .entry__design-container .design-parts .steady--2 {
    height: 65px;
  }
  .keihinwhite__design-container .design-parts .steady {
    height: 120px;
  }
  .keihinwhite__design-container .design-parts .steady--2 {
    height: 210px;
  }
  .introduction-keihin__design-container .design-parts .steady {
    height: 350px;
  }
  .introduction-keihin__design-container .design-parts .steady--2 {
    height: 100px;
  }
  .keihin-interviews__design-container .design-parts .steady--2 {
    height: calc(calc(min(calc(195 / 375 * 100vw), 195px) + 300px) + 300px);
  }
  .interview-sec1__design-container .design-parts.design-parts--right .steady.steady--1 {
    background: none;
  }
  .interview-sec3__design-container .design-parts .steady {
    height: 75px;
  }
  .interview-sec3__design-container .design-parts .steady--2 {
    height: 65px;
  }

  .footer-slider__design-container .design-parts .steady {
    height: 105px;
  }
  .footer-slider__design-container .design-parts .steady--2 {
    height: 70px;
  }
}

.design-parts .responsive .slash ,.training__list__slash {
  position: absolute;
  width: calc(22.7676 / 70 * 100%);
  height: auto;
  aspect-ratio: 22.7676 / 89.938;
  bottom: -6.6px;
  left: calc(31.6162 / 70 * 100%);
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 22.7676 89.938"><polygon fill="%23ffffff" points="0 42.56 22.77 57.87 22.77 47.38 0 32.06 0 42.56"/><polygon fill="%23ffffff" points="0 58.59 22.77 73.91 22.77 63.41 0 48.1 0 58.59"/><polygon fill="%23ffffff" points="0 26.53 22.77 41.84 22.77 31.34 0 16.03 0 26.53"/><polygon fill="%23ffffff" points="0 0 0 10.5 22.77 25.81 22.77 15.31 0 0"/><polygon fill="%23ffffff" points="0 74.63 22.77 89.94 22.77 79.44 0 64.13 0 74.63"/></svg>');
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
.design-container--white .design-parts .responsive .slash,
.training__list__slash {
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 22.7676 89.938"><polygon fill="%23c8c8c8" points="0 42.56 22.77 57.87 22.77 47.38 0 32.06 0 42.56"/><polygon fill="%23c8c8c8" points="0 58.59 22.77 73.91 22.77 63.41 0 48.1 0 58.59"/><polygon fill="%23c8c8c8" points="0 26.53 22.77 41.84 22.77 31.34 0 16.03 0 26.53"/><polygon fill="%23c8c8c8" points="0 0 0 10.5 22.77 25.81 22.77 15.31 0 0"/><polygon fill="%23c8c8c8" points="0 74.63 22.77 89.94 22.77 79.44 0 64.13 0 74.63"/></svg>');
}
.design-container--green .design-parts .responsive .slash {
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 22.7676 89.938"><polygon fill="%2387d594" points="0 42.56 22.77 57.87 22.77 47.38 0 32.06 0 42.56"/><polygon fill="%2387d594" points="0 58.59 22.77 73.91 22.77 63.41 0 48.1 0 58.59"/><polygon fill="%2387d594" points="0 26.53 22.77 41.84 22.77 31.34 0 16.03 0 26.53"/><polygon fill="%2387d594" points="0 0 0 10.5 22.77 25.81 22.77 15.31 0 0"/><polygon fill="%2387d594" points="0 74.63 22.77 89.94 22.77 79.44 0 64.13 0 74.63"/></svg>');
}
.design-parts--left .responsive .slash {
  bottom: auto;
  top: -6.6px;
  transform: scaleX(-1);
}
.training__list__slash {
  width: min(calc(12.1111 / 375 * 100vw), 12.1111px);
  bottom: auto;
  top: calc(200 / 375 * 100vw);
  left: 50%;
  transform: translateX(calc(-50% - calc(180 / 375 * 100vw) + calc(min(calc(12.1111 / 375 * 100vw), 12.1111px) / 2)));
}

.introduction__content {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 45px 5px;
  margin-bottom: clamp(50px, calc(60 / 1400 * 100vw), 60px);
}
@media screen and (max-width: 767px) {
  .introduction__content {
    justify-content: center;
  }
}

.introduction__content-item h2 {
  color: #0fac2a;
  font-size: clamp(min(calc(18 / 375 * 100vw), 18px), calc(28 / 1000 * 100vw), 28px);
  font-weight: 700;
  line-height: 2;
  text-align: left;
  margin-bottom: clamp(10px, calc(45 / 1400 * 100vw), 45px);
}

.introduction__content-item p {
  font-size: clamp(min(calc(14 / 375 * 100vw), 14px), calc(18 / 1000 * 100vw), 18px);
  font-weight: 400;
  line-height: calc(50 / 18);
}
@media screen and (max-width: 767px) {
  .introduction__content-item p {
    line-height: 2;
  }
}

.introduction__content-img {
 flex: 1;
 min-width: min(calc(250 / 375 * 100vw), 250px);
 max-width: 416px;
 margin-top: min(calc(15 / 1400 * 100vw), 15px);
}

.introduction__content-img img {
  width: 103%;
  transform: translateX(-3%);
}
@media screen and (max-width: 767px) {
  .introduction__content-img img {
    width: 100%;
    transform: translateX(0);
  }
}

.common-link-btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 300px;
  width: calc(262.5 / 275 * 100%);
  height: 60px;
  transition: transform .3s,filter .3s;
}
@media screen and (min-width: 768px) {
  .common-link-btn:hover {
    transform: translate(5px,-5px);
  }
}
@media screen and (max-width: 767px) {
  .common-link-btn {
    margin: 0 auto;
    height: 70px;
  }
}

@media screen and (min-width: 768px) {
  .common-link-btn::before {
    pointer-events: none;
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    clip-path: polygon(0% 0%, calc(100% - 18px) 0%, 100% 18px, 100% 100%, 18px 100%, 0% calc(100% - 18px));
    background-color: #0fac2a;
    transition: .3s;
  }
  .entry__common-link-btn::before {
    background-color: transparent;
  }
  .common-link-btn:hover::before {
    transform: translate(-5px,5px);
  }
}

.common-link-btn::after { 
  content: '';
  position: absolute;
  width: 10.2501px;
  height: 20.3517px;
  top: 50%;
  right: 25px;
  transform: translateY(-50%);
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 10.25 20.35"><polygon fill="%23ffffff" points=".15 0 .15 4.8 5.45 10.1 0 15.55 0 20.35 10.25 10.1 .15 0"/></svg>') ;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  transition: .3s;
}
.entry__common-link-btn::after {
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 10.25 20.35"><polygon fill="%234689ce" points=".15 0 .15 4.8 5.45 10.1 0 15.55 0 20.35 10.25 10.1 .15 0"/></svg>') ;
}
@media screen and (min-width: 768px) {
  .common-link-btn:hover::after { 
    right: 18px;
  }
}

.common-link-btn div {
  color: #fff;
  font-size: clamp(min(calc(14 / 375 * 100vw), 14px), calc(16 / 1000 * 100vw), 16px);
  font-weight: 500;
  letter-spacing: min(calc(1 / 375 * 100vw), 1px);
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding-left: min(calc(30 / 375 * 100vw), 30px);
  width: 100%;
  height: 100%;
  background-color: #000;
  clip-path: polygon(0% 0%, calc(100% - 18px) 0%, 100% 18px, 100% 100%, 18px 100%, 0% calc(100% - 18px));
}
.entry__common-link-btn div {
  font-size: clamp(min(calc(14 / 375 * 100vw), 14px), calc(20 / 1000 * 100vw), 20px);
}

.keihin-link-btn {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%,50%);
  width: calc(335 / 375 * 100%);
  max-width: 800px;
  height: clamp(175px, calc(300 / 768 * 100vw), 300px);
  background-color: #4689ce;
  background-image: url(../img/recruit/keihin-link_img.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  clip-path: polygon(0% 0%, calc(100% - clamp(30px, calc(60 / 768 * 100vw), 60px)) 0%, 100% clamp(30px, calc(60 / 768 * 100vw), 60px), 100% 100%, clamp(30px, calc(60 / 768 * 100vw), 60px) 100%, 0% calc(100% - clamp(30px, calc(60 / 768 * 100vw), 60px)));
}
.keihin-link-btn:hover {
  transform: translate(-50%,50%) scale(.99);
  filter: brightness(1.1);
}

.keihin-link-btn-inner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.keihin-link-btn-img {
  position: absolute;
  bottom: -1%;
  left: 3.5%;
  width: calc(775.7363 / 800 * 100%);
  height: auto;
  aspect-ratio: 775.7363 / 79.1047;

}

.keihin-link-btn-subtitle {
  position: absolute;
  top: calc(25 / 330 * 100%);
  left: 3.5%;
  font-size: clamp(min(calc(12 / 375 * 100vw), 12px), calc(25 / 1000 * 100vw), 25px);
  letter-spacing: clamp(min(calc(8 / 375 * 100vw), 8px), calc(15 / 1000 * 100vw), 15px);
  font-weight: 700;
  line-height: 1.5;
  color: #fff;
}

.keihin-link-btn-title {
  position: relative;
  display: inline-block;
  font-size: clamp(min(calc(14 / 375 * 100vw), 14px), calc(20 / 1000 * 100vw), 20px);
  letter-spacing: clamp(min(calc(3 / 375 * 100vw), 3px), calc(5 / 1000 * 100vw), 5px);
  font-weight: 500;
  line-height: 1.5;
  color: #fff;
}

.keihin-link-btn-title::after {
  content: '';
  position: absolute;
  top: 50%;
  right: calc(0% - clamp(min(calc(15 / 375 * 100vw), 15px), calc(30 / 1000 * 100vw), 30px));
  transform: translateY(-50%);
  width: clamp(min(calc(12 / 375 * 100vw), 12px), calc(20.75 / 1000 * 100vw), 20.75px);
  height: auto;
  aspect-ratio: 20.75 / 41.2;
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 20.75 41.2"><polygon fill="%23ffffff" points=".3 0 .3 9.73 11.03 20.45 0 31.48 0 41.2 20.75 20.45 .3 0"/></svg>') ;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  transition: .3s;
  pointer-events: none;
}
@media screen and (min-width: 768px) {
  .keihin-link-btn:hover .keihin-link-btn-title::after {
    right: calc(0% - 38px);
  }
}

.data-insights{ 
  background-image: linear-gradient(to bottom,rgba(15, 172, 42,.6),rgba(15, 172, 42,.6)),
  url(../img/recruit/data-insights_bg.jpg),linear-gradient(#fff,#fff);
  background-size: 100%;
  background-position: top center;
  background-repeat: no-repeat;
  padding-top: calc(min(calc(155 / 1000 * 100vw), 155px) + 100px);
  padding-bottom: 100px;
}
@media screen and (max-width: 767px) {
  .data-insights{ 
    background-image: linear-gradient(to bottom,rgba(15, 172, 42,.6),rgba(15, 172, 42,.6)),
    url(../img/recruit/data-insights_bg_sp.jpg),linear-gradient(#fff,#fff);
    padding-top: calc(calc(85 / 375 * 100vw) + 55px);
  }
}

/* --------------------------------------------------------------------------
   .data-insights__graf
   デザイン(PC 1000px幅)の実寸をそのまま記述できるように、各アイテムを
   コンテナ(container-type: inline-size)にして --u = 「デザイン1px分の長さ」 を定義。
   --u はアイテム幅に対する比率なので、PC/SPでアイテム幅に対する文字サイズが常に同じになる。
   ※ --u の中の cqw は「使用する要素の祖先コンテナ」を基準に解決されるため、
   　 アイテム自身のプロパティでは var(--u) を使わない（%指定で対応している）。
   -------------------------------------------------------------------------- */
.data-insights__graf {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  column-gap: 3%; /* 30 / 1000 */
  row-gap: min(calc(30 / 1000 * 100vw), 30px);
  font-feature-settings: "palt" 1;
}
.data-insights__graf-item {
  container-type: inline-size;
  --u: calc(100cqw / 227.5); /* 幅227.5pxのアイテム基準 */
  position: relative;
  grid-column: span 1;
  aspect-ratio: 227.5 / 250;
  background-color: #fff;
  /* 四隅の切り落とし 24px × 34px */
  clip-path: polygon(10.5495% 0, 89.4505% 0, 100% 13.6%, 100% 86.4%, 89.4505% 100%, 10.5495% 100%, 0 86.4%, 0 13.6%);
}
.data-insights__graf-item--wide {
  --u: calc(100cqw / 485); /* 幅485pxのアイテム基準 */
  grid-column: span 2;
  aspect-ratio: 485 / 250;
  clip-path: polygon(4.9485% 0, 95.0515% 0, 100% 13.6%, 100% 86.4%, 95.0515% 100%, 4.9485% 100%, 0 86.4%, 0 13.6%);
}

/* 図・イラストを入れる枠（アイテムに対して縦横100%・テキストの背面） */
.data-insights__graf-figure {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
}
.data-insights__graf-figure img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* 見出し帯 */
.data-insights__graf-title {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  width: 100%;
  height: 17%; /* 42.5 / 250 */
  padding-top: calc(12.5 * var(--u));
  background-color: #4689ce;
  clip-path: polygon(0 0, 100% 0, 100% 12.9412%, 83% 12.9412%, 75% 100%, 25% 100%, 17% 12.9412%, 0 12.9412%);
  color: #fff;
  font-size: calc(18 * var(--u));
  font-weight: 700;
  letter-spacing: -.02em;
  line-height: 1;
  white-space: nowrap;
}
.data-insights__graf-item--wide .data-insights__graf-title {
  letter-spacing: .1em;
}
/* 「年齢分布・比率」のみデザイン上さらに詰めている */
.data-insights__graf-item--age-ratio .data-insights__graf-title {
  letter-spacing: -.08em;
}
.data-insights__graf-title-sub {
  font-size: calc(14 / 18 * 1em);
  line-height: 1.45;
}

/* 共通テキストパーツ */
.data-insights__graf-label ,
.data-insights__graf-age ,
.data-insights__graf-income-head ,
.data-insights__graf-year {
  color: #000;
  font-weight: 500;
  line-height: 1;
  white-space: nowrap;
  transition: 0s;
}
.data-insights__graf-num {
  color: #0fac2a;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}
.data-insights__graf-unit {
  font-size: .5em;
}

/* ラベル＋数値を2列に並べるタイプ（新卒初任給／キャリア採用給与／育児休暇取得率） */
.data-insights__graf-cols {
  position: absolute;
  left: 0;
  z-index: 1;
  display: flex;
  justify-content: center;
  width: 100%;
}
.data-insights__graf-col {
  text-align: center;
}
.data-insights__graf-col .data-insights__graf-label {
  font-size: calc(16 * var(--u));
}

/* 1 新卒初任給（大卒） / 2 キャリア採用給与（25歳） */
.data-insights__graf-item--salary .data-insights__graf-cols ,
.data-insights__graf-item--career .data-insights__graf-cols {
  top: calc(62.2 * var(--u));
  gap: calc(19 * var(--u));
}
.data-insights__graf-item--salary .data-insights__graf-num ,
.data-insights__graf-item--career .data-insights__graf-num {
  margin-top: calc(5.2 * var(--u));
  font-size: calc(45 * var(--u));
}

/* 3 年収例 */
.data-insights__graf-income {
  position: absolute;
  top: calc(52.2 * var(--u));
  left: 0;
  z-index: 1;
  width: 100%;
  text-align: center;
}
.data-insights__graf-income-head {
  font-size: calc(16 * var(--u));
}
.data-insights__graf-income-head--2 {
  margin-top: calc(15.5 * var(--u));
}
.data-insights__graf-income-row {
  margin-top: calc(8 * var(--u));
  font-size: calc(24 * var(--u));
  line-height: 1;
  white-space: nowrap;
}
.data-insights__graf-income-head + .data-insights__graf-income-row {
  margin-top: calc(9 * var(--u));
}
.data-insights__graf-age {
  margin-right: calc(3.5 * var(--u));
  font-size: calc(16 / 24 * 1em);
}

/* 4 売上高 */
.data-insights__graf-item--sales .data-insights__graf-num {
  position: absolute;
  z-index: 1;
  font-size: calc(45 * var(--u));
  transform: translateX(-50%);
}
.data-insights__graf-num--sales1 { top: calc(82.2 * var(--u)); left: calc(107 * var(--u)); }
.data-insights__graf-num--sales2 { top: calc(56.4 * var(--u)); left: calc(232.25 * var(--u)); }
.data-insights__graf-num--sales3 { top: calc(56.4 * var(--u)); left: calc(367.5 * var(--u)); }
.data-insights__graf-year {
  position: absolute;
  top: calc(216.3 * var(--u));
  z-index: 1;
  font-size: calc(16 * var(--u));
  transform: translateX(-50%);
}
.data-insights__graf-year--1 { left: calc(100 * var(--u)); }
.data-insights__graf-year--2 { left: calc(228.5 * var(--u)); }
.data-insights__graf-year--3 { left: calc(355.75 * var(--u)); }

/* 5 社員数 */
.data-insights__graf-rows {
  position: absolute;
  top: calc(56.7 * var(--u));
  left: 0;
  z-index: 1;
  width: 100%;
}
.data-insights__graf-row {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: calc(45 * var(--u));
  line-height: 1;
}
.data-insights__graf-row + .data-insights__graf-row {
  margin-top: calc(3.7 * var(--u));
}
.data-insights__graf-row .data-insights__graf-label {
  width: calc(70.5 * var(--u));
  padding-top: calc(3 * var(--u));
  font-size: calc(16 / 45 * 1em);
  text-align: left;
}

/* 6 平均年齢 / 8 平均勤続年数 / 9 年間休日数 / 11 ３年以内離職率 / 12 有休取得率 */
.data-insights__graf-item--age .data-insights__graf-num ,
.data-insights__graf-item--tenure .data-insights__graf-num ,
.data-insights__graf-item--holiday .data-insights__graf-num ,
.data-insights__graf-item--turnover .data-insights__graf-num ,
.data-insights__graf-item--paid-leave .data-insights__graf-num {
  position: absolute;
  left: 0;
  z-index: 1;
  width: 100%;
  text-align: center;
}
.data-insights__graf-item--age .data-insights__graf-num { top: calc(65.4 * var(--u)); font-size: calc(45 * var(--u)); }
.data-insights__graf-item--tenure .data-insights__graf-num { top: calc(65.4 * var(--u)); font-size: calc(45 * var(--u)); }
.data-insights__graf-item--holiday .data-insights__graf-num { top: calc(65.7 * var(--u)); font-size: calc(45 * var(--u)); }
.data-insights__graf-item--turnover .data-insights__graf-num { top: calc(62.9 * var(--u)); font-size: calc(45 * var(--u)); }
.data-insights__graf-item--paid-leave .data-insights__graf-num { top: calc(67.5 * var(--u)); font-size: calc(42 * var(--u)); }

/* 7 年齢分布・比率 / 10 新卒中途割合（円グラフの引き出しラベル） */
.data-insights__graf-pie-label {
  position: absolute;
  z-index: 1;
  text-align: center;
  transform: translateX(-50%);
}
.data-insights__graf-pie-label .data-insights__graf-label {
  display: block;
  font-size: calc(16 * var(--u));
}
.data-insights__graf-pie-label .data-insights__graf-num {
  display: block;
}
.data-insights__graf-item--age-ratio .data-insights__graf-num {
  margin-top: calc(1.5 * var(--u));
  font-size: calc(24 * var(--u));
}
.data-insights__graf-pie-label--10 { top: calc(55.8 * var(--u)); left: calc(195.5 * var(--u)); }
.data-insights__graf-pie-label--20 { top: calc(108.6 * var(--u)); left: calc(187.5 * var(--u)); }
.data-insights__graf-pie-label--30 { top: calc(175.8 * var(--u)); left: calc(168 * var(--u)); }
.data-insights__graf-pie-label--40 { top: calc(185.1 * var(--u)); left: calc(65 * var(--u)); }
.data-insights__graf-pie-label--50 { top: calc(94.1 * var(--u)); left: calc(43 * var(--u)); }
.data-insights__graf-pie-label--60 { top: calc(51.5 * var(--u)); left: calc(111.5 * var(--u)); }
.data-insights__graf-pie-label--60 .data-insights__graf-num { margin-top: calc(-1.5 * var(--u)); }

.data-insights__graf-item--recruit-ratio .data-insights__graf-num {
  margin-top: calc(.5 * var(--u));
  font-size: calc(40 * var(--u));
}
.data-insights__graf-pie-label--new { top: calc(51.2 * var(--u)); left: calc(171 * var(--u)); }
.data-insights__graf-pie-label--mid { top: calc(159.7 * var(--u)); left: calc(72 * var(--u)); }

/* 13 育児休暇取得率 */
.data-insights__graf-item--childcare .data-insights__graf-cols {
  top: calc(64.7 * var(--u));
  gap: calc(15.5 * var(--u));
  transform: translateX(calc(7.5 * var(--u))); /* デザイン上、中央より少し右寄せ */
}
.data-insights__graf-item--childcare .data-insights__graf-num {
  margin-top: calc(3.6 * var(--u));
  font-size: calc(42 * var(--u));
}
/* 「女性」はデザイン上100%の中央より左寄り */
.data-insights__graf-item--childcare .data-insights__graf-col:last-child .data-insights__graf-label {
  transform: translateX(calc(-7 * var(--u)));
}

@media screen and (max-width: 767px) {
  .data-insights__graf {
    grid-template-columns: repeat(2, 1fr);
    column-gap: 4.7761%; /* 16 / 335 */
    row-gap: min(calc(17.5 / 375 * 100vw), 17.5px);
  }
  .data-insights__graf-item--wide {
    grid-column: span 2;
  }
  /* SPは「新卒初任給 → キャリア採用給与 → 売上高 → 年収例 → …」の並び */
  .data-insights__graf-item { order: 3; }
  .data-insights__graf-item--salary ,
  .data-insights__graf-item--career { order: 1; }
  .data-insights__graf-item--sales { order: 2; }
}

.common-title {
  margin-bottom: 50px;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .common-title {
    max-width: 375px;
    margin: 0 auto 55px;
  }
}

.common-title-main {
  margin-bottom: clamp(20px, calc(25 / 1000 * 100vw), 25px);
}

.common-title-sub {
  font-size: clamp(min(calc(12 / 375 * 100vw), 12px), calc(16 / 1000 * 100vw), 16px);
  font-weight: 700;
}
.common-title--white .common-title-sub {
  color: #fff;
}
@media screen and (min-width: 768px) {
  .employee-benefits .common-title-sub {
    text-align: left;
  }
}

.training {
  background-color: #fff;
}

.training__container {
  max-width: 900px;
}



.training__list {
  display: flex;
  flex-direction: column;
  gap: 160px;
}
@media screen and (max-width: 767px) {
  .training__list {
    gap: 45px;
  }
}

.training__list-item {
  width: 100%;
  position: relative;
  display: grid;
  grid-template-columns: 55px 1fr;
  gap: 40px;
  max-width: min(calc(600 / 1000 * 100vw), 600px);
}
.training__list-item--2 {
  margin-left: auto;
}
@media screen and (max-width: 767px) {
  .training__list-item {
    display: flex;
    flex-direction: column;
    max-width: 100%;
    gap: 25px;
  }
  
}

.training__list-title {
  width: 100%;
  grid-area: 1 / 1 / 3 / 2;
}
@media screen and (max-width: 767px) {
  .training__list-title {
    min-height: calc(215 / 375 * 100vw);
    max-width:calc(41 / 375 * 100vw);
    transform: translateX(-50%);
  }
  .training__list-item--2 .training__list-title {
    transform: translateX(50%);
    margin-left: auto;
  }
}

.training__list-title h3 {
  width: 100%;
}

.training__list-img {
  position: absolute;
  top: -45px;
  left: max(min(calc(560 / 1000 * 100vw), 560px), 56%);
  width: min(calc(600 / 1400 * 100vw), 600px);
  height: auto;
  aspect-ratio: 600 / 434.3193;
}
.training__list-item--2 .training__list-img {
  width: min(calc(540 / 1400 * 100vw), 540px);
  top: -110px;
  left: auto;
  right: max(min(calc(700 / 1140 * 100vw), 700px), 70%);
}
@media screen and (max-width: 767px) {
  .training__list-img ,.training__list-item--2 .training__list-img {
    top: 0;
    left: calc(55 / 375 * 100vw);
    width: calc(300 / 375 * 100vw);
  }
  .training__list-item--2 .training__list-img {
    left: auto;
    right: calc(55 / 375 * 100vw);
  }
}

.training__list-img-inner {
  position: relative;
  width: 100%;
}

.training__list__design-parts {
  position: absolute;
  top: auto;
  bottom: 0;
  right: auto;
  left: 20%;
  transform: translateY(50%);
  width: min(calc(112.4224 / 1400 * 100vw), 112.4224px);
  height: auto;
  aspect-ratio: 56.21 / 14.23;
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 56.21 14.23"><polygon fill="%234689ce" points="29.61 0 20.04 14.23 26.6 14.23 36.17 0 29.61 0"/><polygon fill="%234689ce" points="19.59 0 10.02 14.23 16.58 14.23 26.15 0 19.59 0"/><polygon fill="%234689ce" points="39.63 0 30.06 14.23 36.62 14.23 46.19 0 39.63 0"/><polygon fill="%234689ce" points="49.65 0 40.08 14.23 46.64 14.23 56.21 0 49.65 0"/><polygon fill="%234689ce" points="9.57 0 0 14.23 6.56 14.23 16.13 0 9.57 0"/></svg>') ;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
.training__list-item--2 .training__list__design-parts {
  right: 0;
  left: auto;
  transform: translateX(50%) rotate(90deg);
  transform-origin: 60% 0%;
}
@media screen and (max-width: 767px) {
  .training__list__design-parts {
    width: calc(56.21 / 375 * 100vw);
  }
}

.training__list-img img {
  clip-path: polygon(0% 0%, 75% 0%, 100% 25%, 100% 100%, 25% 100%, 0% 75%);
}

.training__list-text {
  font-size: clamp(min(calc(14 / 375 * 100vw), 14px), calc(16 / 1000 * 100vw), 16px);
}

.training__list-item-tag-wrapper {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 20px;
  max-width: 330px
}

.training__list-item-tag {
  background-image: linear-gradient(#0fac2a,#0fac2a),linear-gradient(#0fac2a,#0fac2a),linear-gradient(#0fac2a,#0fac2a),linear-gradient(#0fac2a,#0fac2a),
  url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 16.53 16.4"><polygon fill="%230fac2a" points=".41 0 0 1 15.53 16.4 16.53 15.98 .41 0"/></svg>'),
  url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 16.53 16.4"><polygon fill="%230fac2a" points=".41 0 0 1 15.53 16.4 16.53 15.98 .41 0"/></svg>');
  background-size: calc(100% - 16px) 1px ,1px calc(100% - 16px),1px calc(100% - 16px),calc(100% - 16px) 1px ,16px,16px;
  background-position: top left,top left,bottom right,bottom right,bottom left,top right;
  background-repeat: no-repeat;
  padding: 0 5px 20px  min(calc(40 / 1000 * 100vw), 40px);
  margin-top: 10px;
}

.training__list-item-tag-title {
  position: relative;
  display: inline-block;
  color: #0fac2a;
  font-size: clamp(min(calc(16 / 375 * 100vw), 16px), calc(18 / 1000 * 100vw), 18px);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 1px;
  text-align: left;
  background-color: #fff;
  transform: translateY(-50%);

}

.training__list-item-tag-title::before {
  content: "";
  z-index: -1;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
  background-color: #fff;
  width: calc(100% + 20px);
  height: 5px;
}

.employee-benefits__container {
  width: calc(1150 / 1140 * 100%);
  max-width: 1150px;
  background-image: linear-gradient(rgba(15, 172, 42,.8),rgba(15, 172, 42,.8)),url(../img/recruit/employee-benefits_bg.jpg),linear-gradient(#fff,#fff);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: top center;
  margin-top: -300px;
  transform: translateX(min(calc(195 / 1400 * 100vw), 195px));
  padding-left: min(calc(150 / 1140 * 100vw), 150px);
  padding-right: calc(min(calc(150 / 1140 * 100vw), 150px) + 45px);
  padding-top: 90px;
  padding-bottom: 100px;
  clip-path: polygon(0% 0%, 100% 0%, 100% 100%, clamp(50px,calc(200 / 1400 * 100vw),200px) 100%, 0% calc(100% - clamp(50px,calc(200 / 1400 * 100vw),200px)));
}
@media screen and (max-width: 767px) {
  .employee-benefits__container {
    margin-top: 0;
    transform: translateX(0);
    padding-right: min(calc(20 / 375 * 100vw), 55px);
    padding-left: min(calc(20 / 375 * 100vw), 55px);
    padding-bottom: 150px;
    background-size: cover ,100%,cover;
    background-image: linear-gradient(rgba(15, 172, 42,.8),rgba(15, 172, 42,.8)),url(../img/recruit/employee-benefits_bg_sp.jpg),linear-gradient(#fff,#fff);
  }
}

.employee-benefits__list {
  display: grid;
  justify-content: center;
  grid-template-columns: repeat(auto-fit, minmax(clamp(min(calc(300 / 375 * 100vw), 300px), calc(365 / 1000 * 100vw), 365px), 1fr));
  grid-auto-rows: auto;
  gap: 30px min(calc(65 / 1400 * 100vw), 65px);
}

.employee-benefits__list-item {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  text-align: center;
  flex-direction: column;
  gap: clamp(30px,calc(40 / 1400 * 100vw), 40px);
  padding: clamp(25px,calc(50 / 1400 * 100vw), 50px) clamp(min(calc(40 / 375 * 100vw), 40px),calc(45 / 1400 * 100vw), 45px) clamp(25px,calc(60 / 1400 * 100vw), 60px);
  background-image: linear-gradient(#ccd8d2,#ccd8d2),linear-gradient(#ccd8d2,#ccd8d2),linear-gradient(#ccd8d2,#ccd8d2),linear-gradient(#ccd8d2,#ccd8d2),
  url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 80.25 80.33"><polygon fill="%23ccd8d2" points="78.75 80.33 0 1.5 .62 0 .84 .22 80.25 79.7 78.75 80.33"/></svg>'),
  url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 113.21 18.67"><polygon fill="%23ccd8d2" points="47.46 18.67 38.85 18.67 26.3 0 34.91 0 47.46 18.67"/><polygon fill="%23ccd8d2" points="60.61 18.67 52 18.67 39.44 0 48.05 0 60.61 18.67"/><polygon fill="%23ccd8d2" points="34.32 18.67 25.71 18.67 13.15 0 21.76 0 34.32 18.67"/><polygon fill="%23ccd8d2" points="21.17 18.67 12.56 18.67 0 0 8.61 0 21.17 18.67"/><polygon fill="%23ccd8d2" points="73.76 18.67 65.15 18.67 52.59 0 61.2 0 73.76 18.67"/><polygon fill="%23ccd8d2" points="86.91 18.67 78.3 18.67 65.74 0 74.35 0 86.91 18.67"/><polygon fill="%23ccd8d2" points="100.06 18.67 91.45 18.67 78.89 0 87.5 0 100.06 18.67"/><polygon fill="%23ccd8d2" points="113.21 18.67 104.6 18.67 92.04 0 100.65 0 113.21 18.67"/></svg>');
  background-size: calc(100% - 80px) 2px, 2px calc(100% - 37px),calc(100% - 132px) 2px,2px calc(100% - 80px) ,80px 80px ,113px 18px;
  background-position: left top, left top,right bottom,right bottom,right top,left bottom;
  background-repeat: no-repeat;
}
@media screen and (max-width: 767px) {
  .employee-benefits__list-item {
    background-size: calc(100% - 73px) 1px, 1px calc(100% - 37px),calc(100% - 112px) 1px,1px calc(100% - 73px) ,73px 73px ,103px 17px;
    background-position: left top, left top,right bottom,right bottom,right top,left bottom;
    background-repeat: no-repeat;
  }
}

.employee-benefits__list-item * ,.employee-benefits__other * {
  color: #fff;
}

.employee-benefits__list-item-content-title {
  margin-bottom: clamp(10px,calc(20 / 1400 * 100vw), 20px);
  font-size: clamp(min(calc(16 / 375 * 100vw), 16px), calc(18 / 1000 * 100vw), 18px);
  line-height: calc(32 / 18);
  font-weight: 700;
  letter-spacing: 1px;
}

.employee-benefits__list-item-content-text {
  font-size: clamp(min(calc(14 / 375 * 100vw), 14px), calc(16 / 1000 * 100vw), 16px);
  line-height: 2;
}

.employee-benefits__other {
  position: relative;
  padding-left: 200px;
  margin-top: clamp(40px,calc(70 / 1400 * 100vw), 70px);
  background-image: linear-gradient(#ccd8d2,#ccd8d2),url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 18.67 73.76"><polygon fill="%23ccd8d2" points="0 73.76 18.67 61.2 18.67 52.59 0 65.15 0 73.76"/><polygon fill="%23ccd8d2" points="0 60.61 18.67 48.05 18.67 39.44 0 52 0 60.61"/><polygon fill="%23ccd8d2" points="0 47.46 18.67 34.91 18.67 26.3 0 38.85 0 47.46"/><polygon fill="%23ccd8d2" points="0 34.32 18.67 21.76 18.67 13.15 0 25.71 0 34.32"/><polygon fill="%23ccd8d2" points="0 12.56 0 21.17 18.67 8.61 18.67 0 0 12.56"/></svg>');
  background-size: 2px calc(100% - 60px),18.67px 73.76px;
  background-position: 200px bottom, calc(200px - 16.67px) top;
  background-repeat: no-repeat;
}
@media screen and (max-width: 767px) {
  .employee-benefits__other {
    padding-left: min(calc(25 / 375 * 100vw), 25px);
    background-size: min(calc(2 / 375 * 100vw),2px) calc(100% - min(calc(60 / 375 * 100vw), 60px)),min(calc(18.67 / 375 * 100vw), 18.67px) min(calc(73.76 / 375 * 100vw), 73.76px);
    background-position: min(calc(16.67 / 375 * 100vw), 16.67px) bottom, left top;
  }
}

.employee-benefits__other-list {
  padding-left: min(calc(50 / 375 * 100vw), 50px);
  display: flex;
  flex-direction: column;
  gap: clamp(30px,calc(40 / 1400 * 100vw), 40px);
}

.employee-benefits__other-list-item {
  display: flex;
  flex-direction: column;
  gap: clamp(5px,calc(10 / 1400 * 100vw), 10px);
}

.employee-benefits__other-list-item-title {
  position: relative;
  font-size: clamp(min(calc(16 / 375 * 100vw), 16px), calc(18 / 1000 * 100vw), 18px);
  line-height: calc(32 / 18);
  font-weight: 700;
}

.employee-benefits__other-list-item-title::before {
  content: "■";
  position: absolute;
  right: calc(100% + 10px);
  top: 0;
}

.employee-benefits__other-list-item-text {
  font-size: clamp(min(calc(14 / 375 * 100vw), 14px), calc(16 / 1000 * 100vw), 16px);
  line-height: calc(22 / 16);
}

.employee-benefits-image {
  position: absolute;
  width: 415.53px;
  height: auto;
  aspect-ratio: 415.53 / 300.7878;
  bottom: 45px;
  left: 50%;
  transform: translateX(calc(-50% - min(calc(352 / 1400 * 100vw), 352px)));
}
@media screen and (max-width: 767px) {
  .employee-benefits-image {
    width: min(calc(261.4243 / 375 * 100vw), 261.4243px);
    bottom: 0;
    left: 50%;
    transform: translate(-50%,40%);
  }
}

.employee-benefits-image img {
  clip-path: polygon(calc(100% - clamp(min(calc(65 / 375 * 100vw), 65px),calc(100 / 1400 * 100vw),100px)) 0%, 100% clamp(min(calc(65 / 375 * 100vw), 65px),calc(100 / 1400 * 100vw),100px), 100% 100%, clamp(min(calc(65 / 375 * 100vw), 65px),calc(100 / 1400 * 100vw),100px) 100%, 0% calc(100% - clamp(min(calc(65 / 375 * 100vw), 65px),calc(100 / 1400 * 100vw),100px)), 0% 0%);
}

@media screen and (min-width: 768px) {
  .instagram .common-title-sub {
    text-align: left;
  }
}

/* Smash Balloon Instagram Feed
   WordPress化後も同じセレクタ（#sb_instagram / #sbi_images / .sbi_item など）で適用する */
.whitebg__content {
  position: relative;
  width: 100%;
  max-width: 1040px;
  margin-left: auto;
  margin-right: auto;
  padding-left: min(calc(20 / 375 * 100vw), 20px);
  padding-right: min(calc(20 / 375 * 100vw), 20px);
}
.whitebg__content--keihin {
  padding-top: 100px;
  padding-bottom: 100px;
}
@media screen and (max-width: 767px) {
  .whitebg__content {
    padding-top: 50px;
    padding-bottom: 60px;
  }
}

.whitebg__content::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 70px;
  transform: translateX(-50%);
  width: 100vw;
  height: 100%;
  background-image: linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 100 100"><polygon fill="%23fff" points="0 100 0 0 100 0 0 100"/></svg>');
  background-repeat: no-repeat;
  background-size: 50%  100%,
   min(calc(300 / 1300 * 100vw),300px) 100%,
   min(calc(200 / 1300 * 100vw),200px) calc(100% - min(calc(200 / 1300 * 100vw),200px)),
   min(calc(200 / 1300 * 100vw),200px) min(calc(200 / 1300 * 100vw),200px);
  background-position: left top ,
  calc(50% + calc(min(calc(300 / 1300 * 100vw),300px) / 2)) top,
  calc(50% +  min(calc(400 / 1300 * 100vw),400px)) top ,
  calc(50% + min(calc(400 / 1300 * 100vw),400px)) bottom;
}
.whitebg__content--keihin::before {
  top: 0;
}
@media screen and (max-width: 767px) {
  .whitebg__content::before {
    top: 0;
    width: 100vw;
    height: 100%;
    background-image: linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 100 100"><polygon fill="%23fff" points="0 100 0 0 100 0 0 100"/></svg>');
    background-size: calc(100% - calc(59.5 / 375 * 100vw))  100%,
     100% calc(100% - calc(59.5 / 375 * 100vw)),
     calc(60 / 375 * 100vw) calc(60 / 375 * 100vw);
    background-position: left top ,
    left top ,
    right bottom;
  }

}

.whitebg__content-item {
  position: relative;
  width: 90%;
  margin-bottom: 40px;
  max-width: 850px;
}
@media screen and (max-width: 767px) {
  .whitebg__content-item {
    margin: 0 auto 30px;
    width: 100%;
  }
}

.instagram #sb_instagram {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

/* プラグイン標準のヘッダー・もっと見る・フォローボタンはサイト側のボタンを使うため非表示 */
.instagram #sb_instagram .sb_instagram_header,
.instagram #sb_instagram #sbi_load,
.instagram #sb_instagram .sbi_follow_btn {
  display: none;
}

.instagram #sb_instagram #sbi_images {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(min(calc(15 / 375 * 100vw), 15px),calc(30 / 1400 * 100vw), 30px);
  width: 100%;
  padding: 0;
  margin: 0;
}

.instagram #sb_instagram.sbi_col_3 #sbi_images,
.instagram #sb_instagram.sbi_mob_col_2 #sbi_images {
  grid-template-columns: repeat(4, 1fr);
}

.instagram #sb_instagram #sbi_images .sbi_item {
  display: block;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden;
}

.instagram #sb_instagram .sbi_photo_wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
}

.instagram #sb_instagram .sbi_photo {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.instagram #sb_instagram .sbi_photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, .28);
  opacity: 0;
  transition: .3s;
}

.instagram #sb_instagram .sbi_photo:hover::after,
.instagram #sb_instagram .sbi_photo:focus-visible::after {
  opacity: 1;
}

.instagram #sb_instagram .sbi_photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  margin: 0 !important;
  padding: 0 !important;
  max-width: none;
  transition: transform .3s;
}

.instagram #sb_instagram .sbi_photo:hover img,
.instagram #sb_instagram .sbi_photo:focus-visible img {
  transform: scale(1.06);
}

.instagram #sb_instagram .sbi-screenreader {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

@media screen and (max-width: 767px) {
  .instagram #sb_instagram #sbi_images,
  .instagram #sb_instagram.sbi_col_3 #sbi_images,
  .instagram #sb_instagram.sbi_mob_col_2 #sbi_images {
    grid-template-columns: repeat(3, 1fr);
    gap: min(calc(10 / 375 * 100vw), 10px);
  }
}

.instagram__common-link-btn {
  margin-left: min(calc(275 / 1400 * 100vw),275px);
}
@media screen and (max-width: 767px) {
  .instagram__common-link-btn {
    margin-left: auto;
    margin-right: auto;
    max-width: 262px;
  }
}

/* QA アコーディオン */
.qa__design-container {
  padding-top: 0;
  padding-bottom: 90px;
}
@media screen and (max-width: 767px) {
  .qa__design-container {
    padding-bottom: 60px;
  }
}

.qa__content {
  width: 100%;
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
  background-color: #fff;
  padding: clamp(20px,calc(60 / 1400 * 100vw),60px) clamp(min(calc(10 / 375 * 100vw), 10px),calc(80 / 1400 * 100vw),80px) clamp(30px,calc(75 / 1400 * 100vw),75px);
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 67.36 14.02"><polygon fill="%23ffffff" points="0 14.02 13.09 14.02 22.96 0 9.87 0 0 14.02"/><polygon fill="%23ffffff" points="22.2 14.02 35.29 14.02 45.16 0 32.07 0 22.2 14.02"/><polygon fill="%23ffffff" points="44.4 14.02 57.49 14.02 67.36 0 54.27 0 44.4 14.02"/></svg>'),linear-gradient(#0fac2a,#0fac2a);
  background-size: 67.3587px 14.0228px,100% 10px;
  background-repeat: no-repeat;
  background-position: calc(100% - 50px) top,center top;
}
@media screen and (max-width: 767px) {
  .qa__content {
    background-size: 63.5639px 13.2328px,100% 10px;
    background-position: calc(100% - 15px) top,center top;
  }
}

.qa__content-item {
  width: 100%;
}

.qa__content-item-title {
  display: flex;
  align-items: center;
  gap: 16px;
  width: 100%;
  height: 80px;
  min-height: 80px;
  padding: 0 30px 0 12px;
  border-bottom: 1px solid #dbf3df;
  color: #000;
  transition: .3s;
  background-image: linear-gradient(to bottom,#fff,rgba(219, 243, 223,0));
  background-size: 100%;
  background-position: bottom center;
  background-repeat: no-repeat;
}
.qa__content-item-title:hover {
  background-image: linear-gradient(to bottom,#fff,rgba(219, 243, 223,.2));
  background-size: 100% 100%;
}
.qa__content-item[open] .qa__content-item-title {
  border-bottom: none;
}
.qa__content-item-title:focus-visible {
  outline: 2px solid #0fac2a;
  outline-offset: 4px;
}

.qa__content-item-title::before,
.qa__content-item-answer::before {
  flex-shrink: 0;
  width: 28px;
  font-size: clamp(min(calc(30 / 375 * 100vw), 30px), calc(35 / 1000 * 100vw), 35px);
  font-weight: 700;
  line-height: 1;
  text-align: center;
}
.qa__content-item-title::before {
  content: "Q";
  color: #0fac2a;
}
.qa__content-item-answer::before {
  content: "A";
  font-size: clamp(min(calc(20 / 375 * 100vw), 20px), calc(22 / 1000 * 100vw), 22px);
}

.qa__content-item-title p,
.qa__content-item-answer p {
  flex: 1;
  margin: 0;
  color: #000;
  font-size: clamp(min(calc(14 / 375 * 100vw), 14px), calc(16 / 1000 * 100vw), 16px);
  font-weight: 700;
  line-height: 1.6;
  text-align: left;
}
.qa__content-item-answer p {
  font-weight: 500;
}

.qa__content-item-title::after {
  content: "";
  flex-shrink: 0;
  width: 14px;
  height: auto;
  aspect-ratio: 14 / 8;
  margin-left: auto;
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16.28 8.2"><polygon fill="%230fac2a" points="12.44 .12 8.2 4.36 3.84 0 0 0 8.2 8.2 16.28 .12 12.44 .12"/></svg>');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transition: transform .3s ,background-color .3s;
}
.qa__content-item-title:hover::after {
  transform: scale(1.5);

}
.qa__content-item[open] .qa__content-item-title::after {
  transform: rotate(180deg);
}

.qa__content-item-answer {
  display: flex;
  align-items: center;
  gap: 16px;
  width: 100%;
  height: 80px;
  min-height: 80px;
  padding: 0 36px 0 45px;
  background-color: #dbf3df;
  clip-path: polygon(calc(100% - 20px) 0%, 100% 20px, 100% 100%, 20px 100%, 0% calc(100% - 20px), 0% 0%);
}

@media screen and (max-width: 767px) {
  .qa__content-item-title,
  .qa__content-item-answer {
    height: auto;
    min-height: 64px;
    padding-top: 16px;
    padding-bottom: 16px;
  }
  .qa__content-item-title {
    gap: 10px;
    padding-left: 4px;
    padding-right: 4px;
    padding-left: min(calc(15 / 375 * 100vw), 15px);
  }
  .qa__content-item-answer {
    gap: 10px;
    padding-left: 4px;
    padding-right: 20px;
    padding-left: min(calc(20 / 375 * 100vw), 20px);
  }
  .qa__content-item-title::before,
  .qa__content-item-answer::before {
    width: 22px;
  }
}

.entry {
  background-color: #0fac2a;
}

.entry-linklist {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: min(calc(25 / 375 * 100vw), 25px) min(calc(80 / 1400 * 100vw), 80px);
}

.entry__common-link-btn {
  background-image: url(../img/recruit/button_silver.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  background-color: transparent;
  width: calc(275 / 335 * 100%);
  max-width: 410px;
  height: auto;
  aspect-ratio: 41 / 11;
}

.entry__common-link-btn div {
  background-color: transparent;
  clip-path: none;
  color: #4689ce;
}

/* ─── entry-notice（エントリーセクション：注意書き） ─── */
.entry-notice {
  margin: clamp(40px, calc(60 / 1400 * 100vw), 60px) auto 0;
  max-width: 900px;
  width: 90%;
}

.entry-notice__separator {
  display: flex;
  align-items: center;
  gap: min(calc(15 / 1400 * 100vw), 15px);
  margin-bottom: clamp(18px, calc(28 / 1400 * 100vw), 28px);
}

.entry-notice__deco-slash {
  height: 12px;
  display: flex;
  gap: 4px;
  transform: skew(-34deg);
  flex-shrink: 0;
}

.entry-notice__deco-slash span {
  display: block;
  width: 7px;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.75);
}

.entry-notice__separator-line {
  flex: 1;
  height: 1px;
  background-color: rgba(255, 255, 255, 0.75);
}
.entry-notice__separator-line--top {
  margin-bottom: auto;
}
.entry-notice__separator-line--bottom {
  margin-top: auto;
}

.entry-notice__text {
  color: #fff;
  font-size: clamp(min(calc(14 / 375 * 100vw), 14px), calc(16 / 1400 * 100vw), 16px);
  line-height: 1.9;
  margin-bottom: clamp(min(calc(14 / 375 * 100vw), 14px), calc(20 / 1400 * 100vw), 20px);
}

.entry-notice__contact {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: clamp(20px, calc(28 / 1400 * 100vw), 28px);
}

.entry-notice__contact-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px 12px;
  color: #000;
  font-size: clamp(min(calc(13 / 375 * 100vw), 13px), calc(14 / 1400 * 100vw), 14px);
  white-space: nowrap;
  font-weight: 500;
  flex-shrink: 0;
  line-height: 1.5;
  background-color: #fff;
}

.entry-notice__contact-info {
  color: #fff;
  font-weight: 500;
  font-size: clamp(min(calc(14 / 375 * 100vw), 14px), calc(16 / 1400 * 100vw), 16px);
  white-space: nowrap;
}

.entry-notice__bottom-line {
  width: 100%;
  height: 1px;
  background-color: rgba(255, 255, 255, 0.75);
}

@media screen and (max-width: 767px) {
  .entry-notice {
    margin-top: min(calc(30 / 375 * 100vw), 30px);
    width: calc(280 / 335 * 100%);
  }
  .entry-notice__separator {
    gap: min(calc(8 / 375 * 100vw), 8px);
    margin-bottom: min(calc(10 / 375 * 100vw), 10px);
  }
  .entry-notice__deco-slash {
    height: 8px;
    gap: 2.5px;
  }
  .entry-notice__deco-slash span {
    width: 5px;
  }
  .entry-notice__text {
    line-height: 1.85;
  }
  .entry-notice__contact {
    gap: min(calc(10 / 375 * 100vw), 10px);
    margin-bottom: min(calc(10 / 375 * 100vw), 10px);
  }
  .entry-notice__contact-label {
    padding: 2px min(calc(3 / 375 * 100vw), 3px);
  }

}


.footer {
  position: relative;
  background-color: #000;
  height: 20px;
}
@media screen and (max-width: 767px) {
  .footer {
    height: 75px;
  }
}

.footer__content {
  position: relative;
  width: 100%;
  height: 100%;
}

.footer__content::before {
  content: "";
  position: absolute;
  width: calc(335 / 375 * 100%);
  max-width: 470px;
  height: 40px;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #000;
  clip-path: polygon(30px 0%, calc(100% - 30px) 0%, 100% 100%, 0% 100%);
}
@media screen and (max-width: 767px) {
  .footer__content::before {
    bottom: 60px;
    height: 35px;
  }
}

.copyright {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translate(-50%,50%);
  color: #fff;
  font-size: min(calc(9 / 375 * 100vw), 9px);
  font-weight: 400;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .copyright {
    bottom: 80px;
  }
}

/* 京浜 */
.bg-green {
  background-color: #0fac2a;
}
.bg-white {
  background-color: #fff;
}

.top-keihin {
  z-index: 1;
  position: relative;
  display: flex;
  justify-content: space-between;
  padding-top: 35px;
  max-width: 1400px;
  margin: 0 auto;
}

.top-keihin__title {
  width: min(calc(171.6733 / 1400 * 100%),171.6733px);
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .top-keihin__title {
    width: calc(63 / 375 * 100%);
  }
}

.top-keihin__image {
  width: min(calc(1087.0077 / 1400 * 100%),1087.0077px);
  clip-path: polygon(min(calc(847 / 1087.0077 * 100%),847px) 0%, 100% min(calc(240 / 853.0382 * 100%),240px), 100% 100%, min(calc(240 / 1087.0077 * 100%),240px) 100%, 0% min(calc(610 / 853.0382 * 100%),610px), 0% 0%);
}
@media screen and (max-width: 767px) {
  .top-keihin__image {
    clip-path: polygon(calc(203 / 280 * 100%) 0%, 100% calc(77 / 376 * 100%), 100% 100%, calc(77 / 280 * 100%) 100%, 0% calc(299 / 376 * 100%), 0% 0%);
    width: calc(280 / 375 * 100%);
  }
}

.top-keihin__subtitle {
  position: absolute;
  top: min(calc(calc(430 / 1400 * 100vw) + 35px),430px);
  left: min(calc(208 / 1400 * 100vw),208px);
  color: #0fac2a;
  text-align: left;
  font-size: min(calc(36 / 1400 * 100vw),36px);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.05em;
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: min(calc(15 / 1400 * 100vw),15px);
}
@media screen and (max-width: 767px) {
  .top-keihin__subtitle {
    top: calc(calc(203 / 375 * 100vw) + 35px);
    left: calc(64 / 375 * 100vw);
    font-size: calc(14 / 375 * 100vw);
    gap: calc(10 / 375 * 100vw);
  }
}

.top-keihin__subtitle span {
  padding: min(calc(10 / 1400 * 100vw), 10px) min(calc(20 / 1400 * 100vw), 20px);
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .top-keihin__subtitle span {
    padding: min(calc(5 / 375 * 100vw), 5px) min(calc(10 / 375 * 100vw), 10px);
  }
}

.introduction-keihin__content {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: min(calc(130 / 1400 * 100%),130px);
  padding-bottom: 140px;
}
@media screen and (max-width: 767px) {
  .introduction-keihin__content {
    padding-bottom: 50px;
  }
}

.introduction-keihin__content-title {
  position: relative;
  padding: calc(calc(50 / 1400 * 100vw) + clamp(35px,calc(70 / 1400 * 100vw),70px)) 0 clamp(65px,calc(140 / 1400 * 100vw),140px);
  display: inline-block;
  margin-top:  calc(-50 / 1400 * 100vw);
}

.introduction-keihin__content-title::before {
  content: "";
  position: absolute;
  top: 0;
  left: 45%;
  transform: translateX(-50%);
  width: min(calc(880.611 / 1000 * 100vw),880.611px);
  min-width: calc(100% + 40px);
  height: 100%;
  background-color: #fff;
  clip-path: polygon(calc(100% - clamp(min(calc(60 / 375 * 100vw),60px),calc(180 / 1400 * 100vw),180px)) 0%, 100%  clamp(min(calc(60 / 375 * 100vw),60px),calc(180 / 1400 * 100vw),180px), 100% 100%,  clamp(min(calc(60 / 375 * 100vw),60px),calc(180 / 1400 * 100vw),180px) 100%, 0% calc(100% -  clamp(min(calc(60 / 375 * 100vw),60px),calc(180 / 1400 * 100vw),180px)), 0% 0%);
}
@media screen and (max-width: 767px) {
  .introduction-keihin__content-title::before {
    left: 0;
    transform: translateX(calc(0% - min(calc(35 / 375 * 100%),35px)));
    width: calc(350 / 375 * 100vw);
    min-width: calc(100% + min(calc(45 / 375 * 100vw),45px));
    min-width: auto;
  }
}

.introduction-keihin__content-title h2 {
  position: relative;
  display: inline-block;
  text-align: left;
  font-size: clamp(min(calc(14 / 375 * 100vw), 14px), calc(18 / 1000 * 100vw), 18px);
  line-height: calc(52 / 18);
  font-weight: 400;
  padding: 0 clamp(min(calc(15 / 375 * 100vw),15px),calc(75 / 1000 * 100vw),75px);
}
@media screen and (max-width: 767px) {
  .introduction-keihin__content-title h2 {
    line-height: 2;
    padding: 0 0 0 min(calc(5 / 375 * 100vw),5px);
  }
}

.introduction-keihin__content-img {
  position: relative;
  flex: 1;
  margin-bottom: -40px;
  margin-top: calc(0% - min(calc(30 / 375 * 100%),30px));
  margin-left: auto;
  min-width: 200px;
  max-width: clamp(min(calc(175 / 375 * 100vw),175px),calc(350 / 768 * 100vw),350px);
}
@media screen and (max-width: 767px) {
  .introduction-keihin__content-img {
    margin-bottom: 0;
  }
}

.introduction-keihin__content-img-inner {
  width: calc(494 / 320 * 100%);
  max-width: 495px;
}
@media screen and (max-width: 767px) {
  .introduction-keihin__content-img-inner {
    width: calc(202 / 175 * 100%);
  }
}

.introduction-keihin__content-img img{
  clip-path: polygon(calc(100% - clamp(min(calc(55 / 375 * 100vw),55px),calc(130 / 1400 * 100vw),130px)) 0%, 100%  clamp(min(calc(55 / 375 * 100vw),55px),calc(130 / 1400 * 100vw),130px), 100% 100%,  clamp(min(calc(55 / 375 * 100vw),55px),calc(130 / 1400 * 100vw),130px) 100%, 0% calc(100% -  clamp(min(calc(55 / 375 * 100vw),55px),calc(130 / 1400 * 100vw),130px)), 0% 0%);
}


.introduction-keihin__list {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(min(calc(230 / 375 * 100vw),230px),1fr));
  justify-content: center;
  gap: 45px min(calc(25 / 375 * 100vw),25px);
  max-width: 900px;
  width: 90%;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .introduction-keihin__list {
    width: calc(278 / 335 * 100%);
  }
}

.introduction-keihin__list-item {
  display: flex;
  flex-direction: column;
  gap: clamp(15px,calc(20 / 1000 * 100vw),20px);
}
@media screen and (min-width: 768px) {
  .introduction-keihin__list-item:nth-of-type(2n) {
    flex-direction: column-reverse;
  }
}

.introduction-keihin__list-item * {
  color: #fff;
}

.introduction-keihin__list-item-content {
  display: flex;
  flex-direction: column;
  gap: clamp(15px,calc(20 / 1000 * 100vw),20px);
}

.introduction-keihin__list-item-image {
  width: 100%;
  max-width: clamp(min(calc(200 / 375 * 100vw),200px),calc(260 / 1000 * 100vw),260px);
  margin: 0 auto;
}

.introduction-keihin__list-item-image img {
  clip-path: polygon(calc(100% - calc(55 / 260 * 100%)) 0%, 100%  calc(55 / 188.2051 * 100%), 100% 100%,  calc(55 / 260 * 100%) 100%, 0% calc(100% -  calc(55 / 188.2051 * 100%)), 0% 0%);
}

.introduction-keihin__list-item-content h3 {
  font-size: clamp(min(calc(18 / 375 * 100vw),18px),calc(20 / 1000 * 100vw),20px);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.05em;
}

.introduction-keihin__list-item-content p {
  font-size: clamp(min(calc(14 / 375 * 100vw),14px),calc(16 / 1000 * 100vw),16px);
  line-height: 2;
}

.job-categories__container {
  max-width: 870px;
}

.job-categories__item-name {
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 20px 15px;
}
@media screen and (max-width: 767px) {
  .job-categories__item-name {
    justify-content: center;
    align-items: center;
    flex-direction: column;
  }
}

.job-categories__item-name dl {
  position: relative;
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  gap: clamp(20px,calc(30 / 1000 * 100vw),30px) clamp(40px,calc(40 / 1000 * 100vw),40px);
}
@media screen and (max-width: 767px) {
  .job-categories__item-name dl {
    justify-content: center;
    align-items: center;
    flex-direction: column;
  }
}

.job-categories__item-name dt {
  background-color: #0fac2a;
  padding: 5px 0;
  width: 220px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  clip-path: polygon(calc(100% - 15px) 0%, 100% 15px, 100% 100%,15px 100%, 0% calc(100% - 15px), 0% 0%);
}
@media screen and (max-width: 767px) {
  .job-categories__item-name dt {
    padding: 15px min(calc(25 / 375 * 100vw),25px);
    width: auto;
  }
}

.job-categories__item-name dt h3 {
  font-size: clamp(min(calc(18 / 375 * 100vw),18px),calc(23 / 1000 * 100vw),23px);
  color: #fff;
  letter-spacing: .2em;
}

.job-categories__item-image {
  flex: 1;
  min-width: 200px;
  max-width: 486px;
  position: relative;
  margin-left: auto;
  margin-bottom: -80px;
}
@media screen and (max-width: 767px) {
  .job-categories__item-image {
    margin: 0;
  }
}

.job-categories__item-image-inner {
  width: 100%;
}
@media screen and (min-width: 1001px) {
  .job-categories__item-image-inner {
    position: absolute;
    left: 0;
    top: 0;
    width: min(calc(486 / 1400 * 100vw),486px);
  }
}

.job-categories__item-image-inner img {
  clip-path: polygon(75.3% 0%, 100% 34%, 100% 100%,24.7% 100%, 0% 64%, 0% 0%);
}

.job-categories__item-numlist {
  margin-top: 140px;
  display: grid;
  grid-template-columns: repeat(2,auto);
  justify-content: space-between;
  gap: 140px 50px;
}
@media screen and (max-width: 767px) {
  .job-categories__item-numlist {
    margin-top: clamp(75px,calc(140 / 1000 * 100vw),140px);
    grid-template-columns: auto;
    justify-content: center;
    gap: clamp(75px,calc(140 / 1000 * 100vw),140px) clamp(50px,calc(50 / 1000 * 100vw),50px);
  }
}

.job-categories__item-numlist-item{
  position: relative;
  width: 100%;
  max-width: clamp(294px,calc(337 / 768 * 100vw),337px);
}
@media screen and (min-width: 768px) {
  .job-categories__item-numlist-item:nth-of-type(2n) {
    transform: translateY(calc(100% + 60px));
  }
}

.job-categories__item-numlist-item-number {
  position: absolute;
  left: calc(0% - clamp(min(calc(45 / 375 * 100vw),45px),calc(78 / 1000 * 100vw),78px));
  top: calc(0% - clamp(min(calc(35 / 375 * 100vw),35px),calc(60 / 1000 * 100vw),60px));
  width: 300px;
  height: clamp(min(calc(93 / 375 * 100vw),93px),calc(120 / 1000 * 100vw),120px);
  pointer-events: none;
}

.job-categories__item-numlist-item-number img {
  height: 100%;
  width: auto;
  object-fit: contain;
}

.job-categories__item-numlist-item h4 {
  position: relative;
  font-size: clamp(min(calc(18 / 375 * 100vw),18px),calc(20 / 1000 * 100vw),20px);
  font-weight: 700;
  line-height: 1.2;
  color: #0fac2a;
  width: 100%;
  background-image: linear-gradient(to right, #0fac2a, #0fac2a);
  background-position: bottom left;
  background-size: calc(100% - clamp(min(calc(37 / 375 * 100vw),37px),calc(45 / 1000 * 100vw),45px)) 1px;
  background-repeat: no-repeat;
  padding-bottom: 13px;
  margin-bottom: 10px;
}

.job-categories__item-numlist-item h4::before {
  content: "";
  position: absolute;
  left: calc(100% - clamp(min(calc(37 / 375 * 100vw),37px),calc(45 / 1000 * 100vw),45px));
  bottom: 0;
  width: clamp(min(calc(49.1848 / 375 * 100vw),49.1848px),calc(56 / 1000 * 100vw),56px);
  height: auto;
  aspect-ratio: 56 / 14;
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 56.21 14.23"><polygon fill="%230fac2a" points="20.04 14.23 26.6 14.23 36.17 0 29.61 0 20.04 14.23"/><polygon fill="%230fac2a" points="10.02 14.23 16.58 14.23 26.15 0 19.59 0 10.02 14.23"/><polygon fill="%230fac2a" points="30.06 14.23 36.62 14.23 46.19 0 39.63 0 30.06 14.23"/><polygon fill="%230fac2a" points="40.08 14.23 46.64 14.23 56.21 0 49.65 0 40.08 14.23"/><polygon fill="%230fac2a" points="0 14.23 6.56 14.23 16.13 0 9.57 0 0 14.23"/></svg>');
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: contain;
}

.job-categories__item-numlist-item p {
  position: relative;
  font-size: clamp(min(calc(14 / 375 * 100vw),14px),calc(16 / 1000 * 100vw),16px);
  font-weight: 400;
  line-height: 2;
}

/* 京浜 社員インタビュー スライダー */
.keihin-interviews {
  /* margin-top: calc(0% - min(calc(280 / 1200 * 100vw), 280px)); */

  margin-top: calc(0% - min(calc(480 / 1200 * 100vw), 480px));
  padding-top: 100px;
}
@media screen and (max-width: 767px) {
  .keihin-interviews {
    margin-top: calc(0% - min(calc(365 / 375 * 100vw), 365px));
    padding-top: 70px;
  }
}

.keihin-interviews-slider {
  /* デザイン指定：アクティブ260 / その他202 / 間隔90・60 */
  --slide-w: min(calc(202 / 1400 * 100vw), 202px);
  --active-w: min(calc(260 / 1400 * 100vw), 260px);
  --gap: min(calc(60 / 1400 * 100vw), 60px);
  --gap-active: min(calc(90 / 1400 * 100vw), 90px);
  --arrow-size: min(calc(34 / 1400 * 100vw), 34px);
  --duration: .6s;
  --easing: cubic-bezier(0.16, 1, 0.3, 1);
  position: relative;
  width: calc(var(--active-w) + var(--gap-active) + var(--slide-w) * 3 + var(--gap) * 2);
  max-width: 100%;
  margin: 0 auto;
  height: min(calc(345 / 1400 * 100vw), 345px);
}

.keihin-interviews-slider__viewport {
  width: calc(100% + var(--gap));
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .keihin-interviews-slider__viewport {
    width: calc(100% + min(calc(60 / 375 * 100vw), 60px));
    overflow: hidden;
  }
}

.keihin-interviews-slider__track {
  height: min(calc(345 / 1000 * 100vw), 345px);
  display: flex;
  align-items: flex-start;
  width: max-content;
  will-change: transform;
  transition: transform var(--duration) var(--easing);
  height: min(calc(345 / 1400 * 100vw), 345px);
}
@media screen and (max-width: 767px) {
  .keihin-interviews-slider__track {
    height: auto;
  }
}

.keihin-interviews-slider__slide {
  position: relative;
  flex-shrink: 0;
  width: var(--slide-w);
  margin-right: var(--gap);
  margin-top: auto;
  margin-bottom: auto;
  transition: width var(--duration) var(--easing), margin-right var(--duration) var(--easing);
}

.keihin-interviews-slider__slide.is-active {
  width: var(--active-w);
  margin-right: var(--gap-active);
}

.keihin-interviews-slider__image {
  transition: transform 0.3s ease-in-out;
}
.keihin-interviews-slider__slide a:hover .keihin-interviews-slider__image {
  transform: scale(1.05);
}

/* 外枠：位置決め用（absolute） */
.keihin-interviews-slider__title {
  z-index: 1;
  position: absolute;
  bottom: calc(58 / 343 * 100%);
  left: calc(130 / 260 * 100%);
  width: max-content;
  line-height: 1.4;
}
.other-staff-slider .keihin-interviews-slider__title {
  bottom: calc(55 / 343 * 100%);
}

.keihin-interviews-slider__title span {
  display: inline;
  background: #0fac2a;
  color: #fff;
  font-size: min(calc(10.5 / 1400 * 100vw), 10.5px);
  font-weight: 700;
  line-height: 1.5;
  padding: 2px 8px;
  white-space: nowrap;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}
.keihin-interviews-slider__slide.is-active .keihin-interviews-slider__title span {
  font-size: min(calc(16 / 1400 * 100vw), 16px);
  line-height: 2.3;
  padding: 3px 8px;
}
.other-staff-slider .keihin-interviews-slider__title span {
  font-size: min(calc(13.2 / 1400 * 100vw), 13.2px);
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .keihin-interviews-slider__slide.is-active .keihin-interviews-slider__title span ,.other-staff-slider .keihin-interviews-slider__title span {
    font-size: min(calc(12 / 375 * 100vw), 12px);
  }
}

.keihin-interviews-slider__image {
  position: relative;
  width: 100%;
  height: auto;
  aspect-ratio: 260 / 310;
  overflow: hidden;

  clip-path: polygon(calc(170 / 260 * 100%) 0%, 100% calc(60 / 310 * 100%), 100% 100%, 0% 100%, 0% 0%);
}
.keihin-interviews-slider__image::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: calc(90 / 260 * 100%);
  height: auto;
  aspect-ratio: 3 / 2;
  background-color: #4689ce;
  clip-path: polygon(0% 0%, 100% 100%, 0% 100%);
}

.keihin-interviews-slider__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}

.keihin-interviews-slider__name-container {
  display: flex;
  align-items: flex-end;
  gap: 8px;
}
.keihin-interviews-slider__slide.is-active .keihin-interviews-slider__name-container{
  gap: 12px;
}

.keihin-interviews-slider__name {
  margin-top: min(calc(8 / 1400 * 100vw), 8px);
  color: #000;
  font-size: min(calc(16 / 1400 * 100vw), 16px);
  font-weight: 700;
  line-height: 1.4;
  transition: font-size var(--duration) var(--easing);
  white-space: nowrap;
}
.keihin-interviews-slider__slide.is-active .keihin-interviews-slider__name {
  font-size: min(calc(22 / 1400 * 100vw), 22px);
}

.keihin-interviews-slider__name::before {
  content: "";
  display: inline-block;
  width: min(calc(30 / 375 * 100vw), 30px);
  height: auto;
  aspect-ratio: 42 / 16.5;
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 41.87 16.47"><polygon fill="%230fac2a" points="11.08 0 0 16.47 7.6 16.47 18.67 0 11.08 0"/><polygon fill="%230fac2a" points="22.68 0 11.6 16.47 19.19 16.47 30.27 0 22.68 0"/><polygon fill="%230fac2a" points="34.28 0 23.2 16.47 30.79 16.47 41.87 0 34.28 0"/></svg>');
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: contain;
  margin-right: 4px;
}
.keihin-interviews-slider__slide.is-active .keihin-interviews-slider__name::before {
  width: min(calc(42 / 1400 * 100vw), 42px);
  margin-right: 7.5px;
}
@media screen and (max-width: 767px) {
  .keihin-interviews-slider__slide.is-active .keihin-interviews-slider__name::before {
    width: min(calc(31 / 375 * 100vw), 31px);
    margin-right: min(calc(3 / 375 * 100vw), 3px);
  }
}

.keihin-interviews-slider__year {
  line-height: 1.6;
  font-size: min(calc(11 / 375 * 100vw), 11px);
  font-weight: 500;
  color: #0fac2a;
  white-space: nowrap;
}
.keihin-interviews-slider__slide.is-active .keihin-interviews-slider__year {
  font-size: min(calc(15 / 1400 * 100vw), 15px);
}
@media screen and (max-width: 767px) {
  .keihin-interviews-slider__slide.is-active .keihin-interviews-slider__year {
    font-size: min(calc(12 / 375 * 100vw), 12px);
  }
}

.keihin-interviews-slider__arrow {
  position: absolute;
  top: calc(var(--active-w) * 310 / 260 / 2);
  z-index: 2;
  width: var(--arrow-size);
  height: var(--arrow-size);
  padding: 0;
  border: none;
  background-color: #000;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 35 35"><polygon fill="%23ffffff" points="19.54 9.23 12.05 16.73 19.44 24.11 19.44 20.6 15.56 16.73 19.54 12.74 19.54 9.23"/></svg>');
  clip-path: polygon(0% 0%, 70% 0%, 100% 25%, 100% 100%, 25% 100%, 0% 75%);
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.keihin-interviews-slider__arrow:hover {
  background-color: #5a5a5a;
}

.keihin-interviews-slider__arrow:focus-visible {
  outline: 2px solid #0fac2a;
  outline-offset: 3px;
}

.keihin-interviews-slider__arrow--prev {
  left: 0;
  transform: translate(calc(-100% - min(calc(16 / 1400 * 100vw), 16px)), -50%);
}

.keihin-interviews-slider__arrow--next {
  right: 0;
  transform: translate(calc(100% + min(calc(16 / 1400 * 100vw), 16px)), -50%) scaleX(-1);
}

/* 総数が表示枚数以下のときは矢印を出さない */
.keihin-interviews-slider.is-no-arrow .keihin-interviews-slider__arrow {
  display: none;
}

@media screen and (max-width: 767px) {
  .keihin-interviews {
    padding-bottom: 40px;
  }

  .keihin-interviews-slider {
    --slide-w: min(calc(191 / 375 * 100vw), 191px);
    --active-w: min(calc(191 / 375 * 100vw), 191px);
    --gap: min(calc(24 / 375 * 100vw), 24px);
    --gap-active: min(calc(90 / 375 * 100vw), 90px);
    --arrow-size: min(calc(28 / 375 * 100vw), 28px);
    width: var(--active-w);
    height: auto;
  }

  .keihin-interviews-slider__name,
  .keihin-interviews-slider__slide.is-active .keihin-interviews-slider__name {
    margin-top: min(calc(8 / 375 * 100vw), 8px);
    font-size: min(calc(17 / 375 * 100vw), 17px);
    transform-origin: top;
  }

  .keihin-interviews-slider__arrow--prev {
    transform: translate(calc(-100% - min(calc(12 / 375 * 100vw), 12px)), -50%);
  }

  .keihin-interviews-slider__arrow--next {
    transform: translate(calc(100% + min(calc(12 / 375 * 100vw), 12px)), -50%) scaleX(-1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .keihin-interviews-slider__track,
  .keihin-interviews-slider__slide,
  .keihin-interviews-slider__name {
    transition: none;
  }
}

.keihin-links {
  padding-top: clamp(50px,calc(100 / 1000 * 100vw),100px);

}

.job-keihin-links-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(30px,calc(43 / 1000 * 100vw),43px) min(calc(50 / 1000 * 100vw),50px);
  max-width: 650px;
}
@media screen and (max-width: 767px) {
  .job-keihin-links-list {
    display: flex;
    flex-direction: column;
    width: calc(305 / 335 * 100%);
    max-width: 350px;
    margin: 0 auto;
  }
}

.job-keihin-links-list-link{
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  clip-path: polygon(calc(100% - 20px) 0%, 100% 20px, 100% 100%, 20px 100%, 0% calc(100% - 20px), 0% 0%);
}
@media screen and (min-width: 768px) {
  .job-keihin-links-list-link:hover {
    filter: brightness(1.05);
  }
  .job-keihin-links-list-link:nth-of-type(1) {
    grid-area: 1 / 1 / 2 / 3;
    flex-direction: row;
  }
}

.job-keihin-links-list-eyecatch,.job-keihin-links-list-title {
  display: flex;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .job-keihin-links-list-link:nth-of-type(1) .job-keihin-links-list-eyecatch,
  .job-keihin-links-list-link:nth-of-type(1) .job-keihin-links-list-title {
    width: 50%;
  }
}


@media screen and (max-width: 767px) {
  .job-keihin-links-list-eyecatch {
    width: 100%;
    height: auto;
    aspect-ratio: 305 / 132;
  }
  .job-keihin-links-list-eyecatch img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top center;
  }
}

.job-keihin-links-list-title {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: min(calc(20 / 1000 * 100em), 20px);
  padding-left: calc(20 / 1000 * 100em);
  padding-right: calc(25 / 1000 * 100em);
  padding-top: calc(20 / 1000 * 100em);
  padding-bottom: calc(20 / 1000 * 100em);
  background-color: #000;
}
.job-keihin-links-list-title::after {
  content: "";
  width: 11px;
  aspect-ratio: 8.04 / 15.97;
  height: auto;
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 8.04 15.97"><polygon fill="%23ffffff" points=".12 0 .12 3.77 4.27 7.93 0 12.2 0 15.97 8.04 7.93 .12 0"/></svg>');
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  margin-left: auto;
  transition: transform 0.3s ease;
}
@media screen and (min-width: 768px) {
  .job-keihin-links-list-link:hover .job-keihin-links-list-title::after {
    transform: translateX(10px);
  }
  .job-keihin-links-list-link:nth-of-type(1) .job-keihin-links-list-title {
    padding-left: calc(40 / 1000 * 100em);
  }
}

.job-keihin-links-list-title img {
  max-height: min(calc(33 / 375 * 100vw), 33px);
  width: auto;
  height: 100%;
}
@media screen and (min-width: 768px) {
  .job-keihin-links-list-link:nth-of-type(1) .job-keihin-links-list-title img {
    max-height: min(calc(37 / 375 * 100em), 37px);
  }
}

.job-keihin-links-img {
  position: absolute;
  top: -145px;
  left: min(calc(780 / 1400 * 100vw), 780px);
  width: min(calc(465 / 1400 * 100vw), 465px);
  height: auto;
}
@media screen and (max-width: 1250px) {
  .job-keihin-links-img {
    top: calc(100% + 40px);
    left: calc(100% + 80px);
    transform: translateX(-100%);
    max-width: 350px;
    width: calc(202 / 335 * 100%);
  }
}
@media screen and (max-width: 767px) {
  .job-keihin-links-img {
    max-width: 202px;
    left: calc(100% + min(calc(20 / 375 * 100vw), 20px));

  }
}

.job-keihin-links-img-inner {
  position: relative;
}

.job-keihin-links-img-inner img {
  clip-path: polygon(75% 0%, 100% 34%, 100% 100%, 25% 100%, 0% 66%, 0% 0%);
}

/* 社員インタビューページ */
.interview-top {
  z-index: 1;
  position: relative;
}

.interview-top__title {
  z-index: 1;
  position: relative;
  display: block;
  width: calc(1308.791 / 1400 * 100%);
  height: auto;
  padding-left: calc(30 / 1400 * 100%);
  padding-top: calc(5 / 1400 * 100vw);
}
@media screen and (max-width: 767px) {
  .interview-top__title {
    width: 100%;
    padding-left: 0;
    padding-top: 0;
  }
}

.interview-top__title-text {
  position: absolute;
  top: calc(170 / 1400 * 100vw);
  left: calc(1050 / 1400 * 100%);
  color: #0fac2a;
  font-size: calc(32 / 1400 * 100vw);
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: calc(3 / 1400 * 100vw);
}

.interview-top__img{ 
  position: relative;
  width: calc(1124.5638 / 1400 * 100%);
  height: auto;
  aspect-ratio: 1125 / 728;
}
.interview-top__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  clip-path: polygon(77.5% 0%, 100% 35%, 100% 100%, 22.5% 100%, 0% 65%, 0% 0%);
}
@media screen and (max-width: 767px) {
  .interview-top__img{ 
    width: calc(335 / 375 * 100vw);
    aspect-ratio: 335 / 327;
    margin-top: calc(40 / 375 * 100vw);
  }
  .interview-top__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    clip-path: polygon(76% 0%, 100% 24%, 100% 100%, 24% 100%, 0% 76%, 0% 0%);
  }
}

.interview-top__content {
  position: absolute;
  left: calc(825 / 1400 * 100%);
  bottom: calc(50 / 1400 * 100vw);
  display: flex;
  flex-direction: column;
  width: calc(475 / 1400 * 100%);
  min-height: calc(338.0983 / 1400 * 100vw);
  background-color: #fff;
  clip-path: polygon(80% 0%, 100% 28%, 100% 100%, 20% 100%, 0% 72%, 0% 0%);
  padding: calc(65 / 1400 * 100vw) calc(60 / 1400 * 100vw);
}
@media screen and (max-width: 767px) {
  .interview-top__content {
    position: absolute;
    left: calc(105 / 375 * 100vw);
    bottom: calc(-150 / 375 * 100vw);
    width: calc(270 / 375 * 100%);
    min-height: calc(193 / 375 * 100vw);
    clip-path: polygon(80% 0%, 100% 28%, 100% 100%, 20% 100%, 0% 72%, 0% 0%);
    padding: calc(28 / 375 * 100vw) calc(28 / 375 * 100vw) calc(45 / 375 * 100vw);
  }
}

.interview-top__content-maincomment {
  font-size: calc(28 / 1400 * 100vw);
  text-align: left;
  line-height: 2;
  color: #0fac2a;
  letter-spacing: calc(1 / 1400 * 100vw);
  margin-bottom: auto;
}
@media screen and (max-width: 767px) {
  .interview-top__content-maincomment {
    font-size: calc(18 / 375 * 100vw);
    letter-spacing: calc(.5 / 375 * 100vw);
  }
}

.interview-top__content-job {
  position: relative;
  background-image: linear-gradient(to right, #0fac2a, #0fac2a);
  background-size: 100% 1px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 91.5% 1px;
  background-position: bottom right;
  padding-left: calc(60 / 1400 * 100vw);
  padding-top: calc(10 / 1400 * 100vw);
  margin-bottom: calc(12 / 1400 * 100vw);
}
.interview-top__content-job::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: calc(-13 / 1400 * 100vw);
  width: calc(58.25 / 1400 * 100vw);
  height: auto;
  aspect-ratio: 58.25 / 22.92;
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 58.25 22.92"><polygon fill="%230fac2a" points="47.69 0 32.27 22.92 42.84 22.92 58.25 0 47.69 0"/><polygon fill="%230fac2a" points="31.55 0 16.14 22.92 26.7 22.92 42.12 0 31.55 0"/><polygon fill="%230fac2a" points="15.41 0 0 22.92 10.57 22.92 25.98 0 15.41 0"/></svg>');
}
@media screen and (max-width: 767px) {
  .interview-top__content-job {
    padding-left: calc(50 / 375 * 100vw);
    padding-top: calc(10 / 375 * 100vw);
    margin-bottom: calc(12 / 375 * 100vw);
  }
  .interview-top__content-job::before {
    left: 0;
    width: calc(41.7 / 375 * 100vw);
  }
}

.interview-top__content-job p {
  font-size: calc(16 / 1400 * 100vw);
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .interview-top__content-job p {
    font-size: calc(11 / 375 * 100vw);
  }
}

.interview-top__content-details {
  display: flex;
  align-items: flex-end;
  padding-left: calc(10 / 1400 * 100vw);
  gap: calc(15 / 1400 * 100vw);
}
@media screen and (max-width: 767px) {
  .interview-top__content-details {
    padding-left: calc(10 / 375 * 100vw);
    gap: calc(15 / 375 * 100vw);
  }
}

.interview-top__content-name {
  font-size: calc(22 / 1400 * 100vw);
  font-weight: 700;
  line-height: 1.2;
}
@media screen and (max-width: 767px) {
  .interview-top__content-name {
    font-size: calc(14 / 375 * 100vw);
  }
}

.interview-top__content-name span {
  font-size: calc(13.2 / 1400 * 100vw);
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .interview-top__content-name span {
    font-size: calc(8.4 / 375 * 100vw);
  }
}

.interview-top__content-year {
  font-size: calc(14 / 1400 * 100vw);
  line-height: 1.2;
  display: flex;
  gap: calc(5 / 1400 * 100vw);
}
.interview-top__content-year::before {
  content: "■";
  color: #87d594;
}
@media screen and (max-width: 767px) {
  .interview-top__content-year {
    font-size: calc(10 / 375 * 100vw);
    gap: calc(3 / 375 * 100vw);
  }
}

.interview-sec1__content {
  position: relative;
  z-index: 2;
  display: flex;
  flex-wrap: wrap;
  gap: 0 min(calc(25 / 1000 * 100vw), 25px);
}

.head-and-comment {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.interview-sec1__head-and-comment {
  flex: 1;
  min-width: min(calc(300 / 375 * 100vw), 300px);
  padding-right: min(calc(50 / 1400 * 100vw), 50px);
  padding-left: 50px;
  padding-top: 50px;
  padding-bottom: 50px;
}
@media screen and (max-width: 767px) {
  .interview-sec1__head-and-comment {
    max-width: none;
    min-width: 100%;
    padding-right: 0;
    padding-left: 0;
    padding-top: 0;
  }
}

.interview-common-title {
  font-size: clamp(min(calc(18 / 375 * 100vw),18px),calc(20 / 1000 * 100vw),20px);
  font-weight: 700;
  line-height: 2;
  color: #0fac2a;
  text-align: center;
  margin-bottom: 20px;
  letter-spacing: min(calc(1 / 375 * 100vw), 1px);
}
.interview-common-title--left {
  text-align: left;
}
@media screen and (max-width: 767px) {
  .interview-common-title {
    margin-bottom: 0;
  }
}

.interview-common-text {
  font-size: clamp(14px,calc(16 / 1000 * 100vw),16px);
  line-height: 2;
  color: #000;
}

.interview-sec1 {
  margin-top: calc(0% - calc(120 / 1400 * 100vw));
}
@media screen and (max-width: 767px) {
  .interview-sec1 {
    margin-top: calc(0% - calc(65 / 375 * 100vw));
  }
}

.interview-sec1__img {
  width: 445px;
  width: 50%;
  min-width: 225px;
  /* width: clamp(min(calc(225 / 375 * 100vw), 225px),44%,445px); */
  margin-bottom: -90px;
  margin-left: auto;
}

.interview-img-inner {
  width: 100%;
  height: auto;
  aspect-ratio: 564.3055 / 413.9236;
  overflow: hidden;
}
.interview-sec1__img-inner {
  width: calc(565 / 443 * 100%);
}

.interview-img-inner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  clip-path: polygon(75% 0%, 100% 34%, 100% 100%, 25% 100%, 0% 66%, 0% 0%);
}

.interview-sec2__content{ 
  z-index: 1;
  position: relative;
  display: flex;
  flex-direction: row-reverse;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0 min(calc(25 / 1000 * 100vw), 25px);
  padding-left: min(calc(100 / 1000 * 100vw), 100px);
  padding-bottom: 150px;
  padding-top: 100px;
}
.interview-sec2__content::before {
  content: "";
  z-index: -1;
  position: absolute;
  top: 0;
  left: 0;
  width: calc(100% + min(calc(200 / 1400 * 100vw), 200px));
  height: 100%;
  background-color: #fff;
  clip-path: polygon(calc(100% - 220px) 0%, 100% 220px, 100% 100%, 220px 100%, 0% calc(100% - 220px), 0% 0%);
}
@media screen and (max-width: 767px) {
  .interview-sec2__content{ 
    gap: 20px;
    padding-left: 0;
    padding-bottom: 120px;
    padding-top: 85px;
  }
  .interview-sec2__content::before {
    transform: translateX(-50%);
    left: 50%;
    width: 100vw;
    clip-path: polygon(calc(100% - 65px) 0%, 100% 65px, 100% 100%, 65px 100%, 0% calc(100% - 65px), 0% 0%);
  }
}

.interview-sec2__head-and-comment {
  position: relative;
  flex: 1;
  min-width: min(calc(300 / 767 * 100vw), 300px);
  padding-top: 50px;
  padding-bottom: 50px;
}
@media screen and (max-width: 767px) {
  .interview-sec2__head-and-comment {
    padding-top: 0;
    padding-bottom: 35px;
  }
  .interview-sec2__head-and-comment .interview-common-title {
    padding-top: 0;
  }
}

.interview-sec2__img1 {
  width: 100%;
  max-width: 54%;
  min-width: min(calc(300 / 375 * 100vw), 300px);
}

.interview-sec2__img2 {
  position: absolute;
  top: calc(100% - 100px);
  right: 0;
  width: clamp(min(calc(220 / 375 * 100vw), 220px),43%, 428.8722px);
}
@media screen and (max-width: 767px) {
  .interview-sec2__img2 {
    top: calc(100% - 60px);
    right: calc(0% - calc(0% + min(calc(50 / 375 * 100vw), 50px)));
    width: clamp(min(calc(220 / 375 * 100vw), 220px),43%, 428.8722px);
  }
}

.interview-sec3__container {
  max-width: 1240px;
}
@media screen and (max-width: 767px) {
  .interview-sec3__container {
    padding-left: min(calc(48.5vw / 3.75), 48.5px);
    padding-right: min(calc(30vw / 3.75), 30px);
  }
}

.interview-sec3__content {
  z-index: 1;
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0 min(calc(90 / 1000 * 100vw), 90px);
  padding: 30px min(calc(100 / 1400 * 100vw), 100px);
}
@media screen and (max-width: 767px) {
  .interview-sec3__content {
    padding: 0;
  }
}

.interview-sec3__title {
  position: absolute;
  left: 0;
  top: 0;
  width: min(calc(98 / 1400 * 100vw), 98px);
  height: auto;
  aspect-ratio: 98.05 / 830.69;
  max-height: 100%;
}
@media screen and (max-width: 767px) {
  .interview-sec3__title {
    top: min(calc(30 / 375 * 100vw), 30px);
    transform: translateX(-100%);
    width: min(calc(35 / 375 * 100vw), 35px);
  }
}

.interview-sec3__title img {
  max-height: 100%;
}

.interview-sec3__schedule-list {
  flex: 1;
  min-width: min(calc(330 / 767 * 100vw), 330px);
  max-width: 500px;
}

.interview-sec3__schedule-list-item {
  position: relative;
  width: 100%;
  background-color: #0fac2a;
  padding: 1px;
  clip-path: polygon(calc(100% - 40px) 0%, 100% 40px, 100% 100%, 40px 100%, 0% calc(100% - 40px), 0% 0%);
}
@media screen and (max-width: 767px) {
  .interview-sec3__schedule-list-item {
    clip-path: polygon(calc(100% - 30px) 0%, 100% 30px, 100% 100%, 30px 100%, 0% calc(100% - 30px), 0% 0%);
  }
}

.interview-sec3__schedule-list-item-list {
  clip-path: polygon(calc(100% - 39px) 0%, 100% 39px, 100% 100%, 39px 100%, 0% calc(100% - 39px), 0% 0%);
}
@media screen and (max-width: 767px) {
  .interview-sec3__schedule-list-item-list {
    clip-path: polygon(calc(100% - 29px) 0%, 100% 29px, 100% 100%, 29px 100%, 0% calc(100% - 29px), 0% 0%);
  }
}

.interview-sec3__schedule-list-item-list > li {
  display: grid;
  grid-template-columns: clamp(60px,calc(90 / 1000 * 100vw),90px) 1fr;
  gap: 15px 0;
  width: 100%;
}

.interview-sec3__schedule-list-item-list-item-time {
  position: relative;
  z-index: 1;
  background-color: #0fac2a;
  color: #fff;
  display: flex;
  justify-content: flex-end;
  padding-right: min(calc(15 / 1000 * 100vw), 15px);
}
.interview-sec3__schedule-list-item-list > li:first-of-type .interview-sec3__schedule-list-item-list-item-time {
  padding-top: 60px;
}
.interview-sec3__schedule-list-item-list > li:last-of-type .interview-sec3__schedule-list-item-list-item-time {
  padding-bottom: 60px;
}

.interview-sec3__schedule-list-item-list-item-time p {
  position: relative;
  font-weight: 700;
  font-size: clamp(min(calc(13vw / 3.75),13px),calc(16 / 1000 * 100vw),16px);
  line-height: 1.2;
  color: #fff;
}
.interview-sec3__schedule-list-item-list-item-time p::after {
  content: "■";
  position: absolute;
  top: 0;
  left: 100%;
  transform: translateX(calc(calc(min(calc(15 / 1000 * 100vw), 15px)) / 2));
  font-size: clamp(10px,calc(12 / 1000 * 100vw),12px);
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .interview-sec3__schedule-list-item-list-item-time p {
    padding-right: min(calc(4vw / 3.75),4px);
  }
}

.interview-sec3__schedule-list-item-list-item-content {
  width: 100%;
  min-height: 80px;
  background-color: #cfeed4;
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding: 0 clamp(min(calc(15 / 375 * 100vw),15px),calc(25 / 1000 * 100vw), 25px) min(calc(10 / 375 * 100vw), 10px);
  min-height: clamp(min(calc(65 / 375 * 100vw),65px),calc(90 / 1000 * 100vw),90px);
}
.interview-sec3__schedule-list-item-list > li:first-of-type .interview-sec3__schedule-list-item-list-item-content {
  padding-top: clamp(35px,calc(60 / 1000 * 100vw),55px);
}
.interview-sec3__schedule-list-item-list > li:last-of-type .interview-sec3__schedule-list-item-list-item-content {
  padding-bottom: clamp(35px,calc(55 / 1000 * 100vw),55px);
}

.interview-sec3__schedule-list-item-list-item-content-title {
  font-size: clamp(min(calc(12 / 375 * 100vw), 12px),calc(16 / 1000 * 100vw),16px);
  font-weight: 500;
  line-height: 1.2;
}

.interview-sec3__schedule-list-item-list-item-content-text {
  font-size: clamp(min(calc(11 / 375 * 100vw), 11px),calc(14 / 1000 * 100vw),14px);
  font-weight: 400;
  line-height: calc(24 / 14);
}

.interview-sec3__schedule-holiday {
  width: 44%;
  min-width: 200px;
  max-width: 700px;
  background-color: #4689ce;
  padding: 40px min(calc(50 / 1400 * 100vw), 50px);
  clip-path: polygon(calc(100% - 60px) 0%, 100% 60px, 100% 100%, 60px 100%, 0% calc(100% - 60px), 0% 0%);
  display: flex;
  flex-direction: column;
  gap: clamp(10px,calc(20 / 1000 * 100vw),20px);
  margin-top: min(calc(150 / 1000 * 100vw), 150px);
}
@media screen and (max-width: 1000px) {
  .interview-sec3__schedule-holiday {
    width: 100%;
    min-width: min(calc(200 / 375 * 100vw), 200px);
    max-width: 500px;
    padding: clamp(15px,calc(40 / 375 * 100vw),40px) min(calc(30 / 375 * 100vw), 30px) clamp(25px,calc(25 / 1000 * 100vw),40px);
    margin-top: 50px;
    clip-path: polygon(calc(100% - 40px) 0%, 100% 40px, 100% 100%, 40px 100%, 0% calc(100% - 40px), 0% 0%);
  }
}

.interview-sec3__schedule-holiday * {
  color: #fff;
}

.interview-sec3__schedule-holiday .interview-common-title {
  margin: 0;
}

.interview-sec3__schedule-holiday-text {
  font-size: clamp(min(calc(12 / 375 * 100vw), 11px),calc(16 / 1000 * 100vw),16px);
  font-weight: 400;
  line-height: 2;
}

/* ============================================
   other-staff スライダー（3枚表示・サイズ差なし）
   ============================================ */
.other-staff-slider {
  --slide-w: min(calc(215 / 1400 * 100vw), 215px);
  --gap: min(calc(80 / 1400 * 100vw), 80px);
  --arrow-size: min(calc(34 / 1400 * 100vw), 34px);
  --duration: 0.45s;
  --easing: cubic-bezier(0.16, 1, 0.3, 1);
  position: relative;
  width: calc(var(--slide-w) * 3 + var(--gap) * 2);
  max-width: 100%;
  margin: 0 auto;
}

.other-staff-slider__track {
  display: flex;
  align-items: flex-start;
  width: max-content;
  will-change: transform;
  transition: transform var(--duration) var(--easing);
}

.other-staff-slider__slide {
  position: relative;
  flex-shrink: 0;
  width: var(--slide-w);
  margin-right: var(--gap);
}

.other-staff-slider__slide a {
  display: block;
  text-decoration: none;
  transition: opacity 0.3s;
}

.other-staff-slider__slide a:hover {
  opacity: 0.8;
}

.other-staff-slider__title {
  margin-bottom: min(calc(8 / 1400 * 100vw), 8px);
  font-size: min(calc(14 / 1400 * 100vw), 14px);
  font-weight: 700;
  line-height: 1.6;
  color: #000;
}

/* 画像ボックス：keihin-interviews-slider__image と同仕様 */
.other-staff-slider__image {
  width: 100%;
  aspect-ratio: 260 / 310;
  overflow: hidden;
}

.other-staff-slider__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}

.other-staff-slider__name-container {
  margin-top: min(calc(8 / 1400 * 100vw), 8px);
  text-align: center;
}

/* 名前テキスト：keihin-interviews-slider__name と同仕様（固定サイズ、拡大なし） */
.other-staff-slider__name {
  color: #000;
  font-size: min(calc(16 / 1400 * 100vw), 16px);
  font-weight: 500;
  line-height: 1.4;
}

.other-staff-slider__year {
  color: #555;
  font-size: min(calc(13 / 1400 * 100vw), 13px);
  font-weight: 400;
  line-height: 1.4;
}

/* 矢印ボタン：keihin-interviews-slider__arrow と同仕様 */
.other-staff-slider__arrow {
  position: absolute;
  top: calc(var(--slide-w) * 310 / 260 / 2 + var(--slide-w) * 14 / 260);
  z-index: 2;
  width: var(--arrow-size);
  height: var(--arrow-size);
  padding: 0;
  border: none;
  background-color: #000;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 35 35"><polygon fill="%23ffffff" points="19.54 9.23 12.05 16.73 19.44 24.11 19.44 20.6 15.56 16.73 19.54 12.74 19.54 9.23"/></svg>');
  clip-path: polygon(0% 0%, 70% 0%, 100% 25%, 100% 100%, 25% 100%, 0% 75%);
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.other-staff-slider__arrow:hover {
  background-color: #5a5a5a;
}

.other-staff-slider__arrow:focus-visible {
  outline: 2px solid #0fac2a;
  outline-offset: 3px;
}

.other-staff-slider__arrow--prev {
  left: 0;
  transform: translate(calc(-100% - min(calc(16 / 1400 * 100vw), 16px)), -50%);
}

.other-staff-slider__arrow--next {
  right: 0;
  transform: translate(calc(100% + min(calc(16 / 1400 * 100vw), 16px)), -50%) scaleX(-1);
}

/* 総数が表示枚数以下のときは矢印を出さない（1〜3枚は非表示、4枚〜表示） */
.other-staff-slider.is-no-arrow .other-staff-slider__arrow {
  display: none;
}

@media screen and (max-width: 767px) {
  .other-staff-slider {
    --slide-w: min(calc(191 / 375 * 100vw), 191px);
    --gap: min(calc(80 / 375 * 100vw), 80px);
    --arrow-size: min(calc(28 / 375 * 100vw), 28px);
    width: var(--slide-w);
  }

  .other-staff-slider__title {
    font-size: min(calc(12 / 375 * 100vw), 12px);
    margin-bottom: min(calc(6 / 375 * 100vw), 6px);
  }

  .other-staff-slider__name {
    font-size: min(calc(17 / 375 * 100vw), 17px);
  }

  .other-staff-slider__year {
    font-size: min(calc(12 / 375 * 100vw), 12px);
  }

  .other-staff-slider__name-container {
    margin-top: min(calc(8 / 375 * 100vw), 8px);
  }

  .other-staff-slider__arrow--prev {
    transform: translate(calc(-100% - min(calc(12 / 375 * 100vw), 12px)), -50%);
  }

  .other-staff-slider__arrow--next {
    transform: translate(calc(100% + min(calc(12 / 375 * 100vw), 12px)), -50%) scaleX(-1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .other-staff-slider__track {
    transition: none;
  }
}

.fade-in {
  opacity: 0;
  transition: .3s;
}
.fade-in.fade-in-active {
  opacity: 1;
}
.fade-in--graf {
  transition: .6s;
  transform: translateY(50px);
  opacity: 0;
}
.fade-in--graf.fade-in-active {
  transform: translateY(0);
  opacity: 1;
}
.data-insights__graf-item--sales .data-insights__graf-num {
  transform: translateX(-50%);
}

.fade-in--left img {
  transition: .6s;
  transform: translateX(-500px);
  opacity: 0;
}
.fade-in--right img {
  transition: .6s;
  transform: translateX(500px);
  opacity: 0;
}
.fade-in.fade-in-active img {
  transform: translateX(0);
  opacity: 1;
}

