@charset "UTF-8";
/* -----------------------
リセット
----------------------- */
html,
body,
h1,
h2,
h3,
h4,
ul,
ol,
dl,
li,
dt,
dd,
p,
div,
span,
img,
a,
table,
tr,
th,
td {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  list-style: none;
  overflow-wrap: break-word;
  word-break: break-all;
}

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

article,
header,
footer,
aside,
figure,
figcaption,
nav,
section {
  display: block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

body {
  line-height: 1;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

ol,
ul {
  list-style: none;
  list-style-type: none;
}

button {
  background: none;
  border: none;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

a {
  text-decoration: none;
}

img {
  display: block;
}

/* -----------------------
  unity
----------------------- */
@media screen and (min-width: 768px) {
  .sp {
    display: none !important;
  }
}

@media screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: 10%;
}

body {
  font-family: "a-otf-ryumin-pr6n", serif;
  font-style: normal;
  line-height: 1.5;
  font-weight: 300;
  color: #1A1919;
  background-image: url("../img/all_BK.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-size: 100%;
  background-position: center top;
  background-repeat: repeat-y;
}
@media screen and (max-width: 767px) {
  body.active {
    overflow: hidden;
  }
}

.whopper {
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .max-size-large {
    width: min(100vw, 1600px);
    margin: 0 auto;
  }
}

@media screen and (min-width: 768px) {
  .max-size-medium {
    width: min(84.375vw, 1350px);
    margin: 0 auto;
  }
}

@media screen and (min-width: 768px) {
  .max-size-small {
    width: min(68.75vw, 1100px);
    margin: 0 auto;
  }
}

@media screen and (min-width: 768px) {
  .max-size-small-other {
    width: clamp(492px, 51.25vw, 820px);
    margin: 0 auto;
  }
}

.section__wrapper {
  position: relative;
}
.section__wrapper .main__title {
  position: absolute;
  top: 0;
  width: fit-content;
  z-index: 10;
}
@media screen and (min-width: 768px) {
  .section__wrapper .main__title {
    left: 0;
  }
}
@media screen and (max-width: 767px) {
  .section__wrapper .main__title {
    left: 5.1282051282vw;
  }
}
.section__wrapper .main__title .C_gra-vert-title .TL {
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .section__wrapper .main__title .C_gra-vert-title .TL {
    font-size: clamp(31.5px, 3.28125vw, 52.5px);
    width: clamp(31.5px, 3.28125vw, 52.5px);
    letter-spacing: clamp(15px, 1.5625vw, 25px);
  }
}
@media screen and (max-width: 767px) {
  .section__wrapper .main__title .C_gra-vert-title .TL {
    font-size: 7.1794871795vw;
    width: 7.1794871795vw;
    letter-spacing: 2.5641025641vw;
  }
}

/* -----------------------
  header
----------------------- */
.header {
  position: sticky;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999;
  background-image: url("../img/all_BK.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: center top;
  transition: all 0.3s;
}
@media screen and (min-width: 768px) {
  .header.active {
    top: -100%;
  }
}
@media screen and (min-width: 768px) {
  .header {
    padding: clamp(21.75px, 2.265625vw, 36.25px) 0 clamp(21.75px, 2.265625vw, 36.25px) clamp(24.75px, 2.578125vw, 41.25px);
  }
}
@media screen and (max-width: 767px) {
  .header {
    padding: 3.8461538462vw 5.1282051282vw 3.3333333333vw 5.8974358974vw;
  }
}
@media screen and (min-width: 768px) {
  .header .header--inner {
    display: flex;
    gap: clamp(15px, 1.5625vw, 25px);
  }
}
@media screen and (min-width: 768px) {
  .header .header--inner .header--logo {
    flex-shrink: 0;
    width: clamp(73.5px, 7.65625vw, 122.5px);
    margin-top: clamp(8.25px, 0.859375vw, 13.75px);
  }
}
@media screen and (max-width: 767px) {
  .header .header--inner .header--logo {
    width: 11.5384615385vw;
    position: relative;
    z-index: 100;
    mix-blend-mode: multiply;
  }
}
.header .header--inner .header--logo a {
  display: block;
  width: 100%;
}
.header .header--inner .header--logo a .TL {
  width: 100%;
}
.header .header--inner .header--logo a .TL img {
  width: 100%;
  height: auto;
  mix-blend-mode: multiply;
}
.header .header--inner .burger {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 5.8974358974vw;
  aspect-ratio: 45/22;
  width: 11.5384615385vw;
  cursor: pointer;
  z-index: 100;
}
.header .header--inner .burger span {
  position: absolute;
  display: block;
  width: 100%;
  right: 0;
  background-color: #1A1919;
  height: 1px;
}
@media screen and (max-width: 767px) and (min-width: 391px) {
  .header .header--inner .burger span {
    height: 2px;
  }
}
.header .header--inner .burger span:nth-child(1) {
  top: 0;
  width: 60%;
}
.header .header--inner .burger span:nth-child(2) {
  top: 50%;
  transform: translateY(-50%);
  width: 80%;
}
.header .header--inner .burger span:nth-child(3) {
  bottom: 0;
}
@media screen and (min-width: 768px) {
  .header .header--inner .header--nav {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .header .header--inner .header--nav {
    position: fixed;
    top: 0;
    right: -100%;
    width: 100%;
    height: 100vh;
    z-index: 99;
    background-image: url("../img/all_BK.jpg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    overflow-y: scroll;
    opacity: 0;
    transition: right 0.3s, opacity 0.5s;
  }
}
@media screen and (min-width: 768px) {
  .header .header--inner .header--nav .nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
}
@media screen and (max-width: 767px) {
  .header .header--inner .header--nav .nav {
    height: clamp(600px, 166.6666666667vw, 100vh);
    position: relative;
  }
}
.header .header--inner .header--nav .nav .links {
  display: flex;
}
@media screen and (min-width: 768px) {
  .header .header--inner .header--nav .nav .links {
    gap: clamp(18.75px, 1.953125vw, 31.25px);
  }
}
@media screen and (max-width: 767px) {
  .header .header--inner .header--nav .nav .links {
    gap: 8.9743589744vw;
    position: absolute;
    top: 21.3846153846%;
    left: 50%;
    transform: translateX(-50%);
  }
}
.header .header--inner .header--nav .nav .links li a {
  color: #1A1919;
  line-height: 1;
  writing-mode: vertical-rl;
  transition: color 0.3s;
}
@media screen and (min-width: 768px) {
  .header .header--inner .header--nav .nav .links li a {
    font-size: clamp(9.75px, 1.015625vw, 16.25px);
    letter-spacing: clamp(4.125px, 0.4296875vw, 6.875px);
    width: clamp(9.75px, 1.015625vw, 16.25px);
  }
}
@media screen and (max-width: 767px) {
  .header .header--inner .header--nav .nav .links li a {
    font-size: 4.6153846154vw;
    letter-spacing: 1.4102564103vw;
    width: 4.6153846154vw;
  }
}
.header .header--inner .header--nav .nav .links li a:hover {
  color: #D77F3F;
}
@media screen and (min-width: 768px) {
  .header .header--inner .header--nav .nav .sns {
    display: flex;
    flex-direction: column;
    gap: clamp(9.75px, 1.015625vw, 16.25px);
  }
}
@media screen and (max-width: 767px) {
  .header .header--inner .header--nav .nav .sns {
    display: flex;
    flex-direction: column;
    gap: 3.5897435897vw;
    width: 44.358974359vw;
    position: absolute;
    bottom: 11.7948717949vw;
    right: 0;
  }
}
.header .header--inner .header--nav .nav .sns li a {
  display: block;
  color: #1A1919;
  line-height: 1.25;
  border-bottom: solid #1A1919;
  transition: color 0.3s;
  position: relative;
}
@media screen and (min-width: 768px) {
  .header .header--inner .header--nav .nav .sns li a {
    font-size: clamp(12px, 1.25vw, 20px);
    letter-spacing: clamp(1.2px, 0.125vw, 2px);
    width: clamp(129.75px, 13.515625vw, 216.25px);
    border-bottom-width: 1px;
    padding-left: clamp(20.25px, 2.109375vw, 33.75px);
  }
}
@media screen and (min-width: 1280px) {
  .header .header--inner .header--nav .nav .sns li a {
    border-bottom-width: 2px;
  }
}
@media screen and (max-width: 767px) {
  .header .header--inner .header--nav .nav .sns li a {
    font-size: 4.1025641026vw;
    letter-spacing: 0.4102564103vw;
    border-bottom-width: 0.2564102564vw;
    padding-left: 6.9230769231vw;
  }
}
.header .header--inner .header--nav .nav .sns li a:hover {
  color: #D77F3F;
}
.header .header--inner .header--nav .nav .sns li a:hover::before {
  transform: translateY(-80%);
}
.header .header--inner .header--nav .nav .sns li a:hover::after {
  width: 100%;
}
.header .header--inner .header--nav .nav .sns li a::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  aspect-ratio: 24/18;
  transition: transform 0.3s;
}
@media screen and (min-width: 768px) {
  .header .header--inner .header--nav .nav .sns li a::before {
    width: clamp(18px, 1.875vw, 30px);
  }
}
@media screen and (max-width: 767px) {
  .header .header--inner .header--nav .nav .sns li a::before {
    width: 6.1538461538vw;
  }
}
.header .header--inner .header--nav .nav .sns li a::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  transition: width 0.3s;
  width: 0;
  height: 1px;
  background-color: #D77F3F;
}
@media screen and (min-width: 768px) {
  .header .header--inner .header--nav .nav .sns li a::after {
    height: 1px;
  }
}
@media screen and (min-width: 1280px) {
  .header .header--inner .header--nav .nav .sns li a::after {
    height: 2px;
  }
}
@media screen and (max-width: 767px) {
  .header .header--inner .header--nav .nav .sns li a::after {
    height: 0.2564102564vw;
  }
}
.header .header--inner .header--nav .nav .sns li:nth-child(1) a::before {
  background-image: url("../img/icon_tel.png");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.header .header--inner .header--nav .nav .sns li:nth-child(2) a::before {
  background-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="19" viewBox="0 0 24 19" fill="none"><path d="M4 4V14C4 15.6569 5.34315 17 7 17H18C19.6569 17 21 15.6569 21 14V4C21 2.34315 19.6569 1 18 1H7C5.34315 1 4 2.34315 4 4Z" stroke="black" /> <circle cx="18" cy="4" r="1" fill="%231A1919" /> <circle cx="12.5" cy="9.5" r="4" stroke="%231A1919" /> </svg>');
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.header .header--inner.active .burger span {
  right: unset;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%) rotate(0deg);
}
.header .header--inner.active .burger span:nth-child(1) {
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%) rotate(25deg);
  width: 100%;
}
.header .header--inner.active .burger span:nth-child(2) {
  opacity: 0;
}
.header .header--inner.active .burger span:nth-child(3) {
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%) rotate(-25deg);
  bottom: unset;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .header .header--inner.active .header--nav {
    right: 0;
    opacity: 1;
  }
}

/* -----------------------
  KV
----------------------- */
.KV {
  position: relative;
}
.KV.KV_front {
  background-image: url("../img/KV_front.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-position: center top;
}
@media screen and (min-width: 768px) {
  .KV.KV_front {
    height: clamp(349.5px, 36.40625vw, 582.5px);
  }
}
@media screen and (max-width: 767px) {
  .KV.KV_front {
    height: 128.2051282051vw;
    background-position: center left 30%;
  }
}
.KV.KV_about-us {
  background-image: url("../img/KV_about-us.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-position: center;
}
@media screen and (min-width: 768px) {
  .KV.KV_about-us {
    height: clamp(216px, 22.5vw, 360px);
  }
}
@media screen and (max-width: 767px) {
  .KV.KV_about-us {
    height: 51.2820512821vw;
  }
}
.KV.KV_about-us::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 768px) {
  .KV.KV_about-us::before {
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.5) 15.5%, rgba(255, 255, 255, 0) 33.5%);
  }
}
@media screen and (max-width: 767px) {
  .KV.KV_about-us::before {
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.8) 15.5%, rgba(255, 255, 255, 0) 33.5%);
  }
}
.KV.KV_business {
  background-image: url("../img/KV_business.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-position: center top 65%;
}
@media screen and (min-width: 768px) {
  .KV.KV_business {
    height: clamp(216px, 22.5vw, 360px);
  }
}
@media screen and (max-width: 767px) {
  .KV.KV_business {
    height: 51.2820512821vw;
    background-size: 220%;
  }
}
.KV.KV_business::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 768px) {
  .KV.KV_business::before {
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.5) 15.5%, rgba(255, 255, 255, 0) 33.5%);
  }
}
@media screen and (max-width: 767px) {
  .KV.KV_business::before {
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.8) 15.5%, rgba(255, 255, 255, 0) 33.5%);
  }
}
.KV.KV_example {
  background-image: url("../img/KV_example.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  transform: scale(-1, 1);
}
@media screen and (min-width: 768px) {
  .KV.KV_example {
    height: clamp(216px, 22.5vw, 360px);
  }
}
@media screen and (max-width: 767px) {
  .KV.KV_example {
    height: 51.2820512821vw;
    background-size: 140%;
    background-position: left 84% top 25%;
  }
}
.KV.KV_recruit {
  background-image: url("../img/KV_recruit.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (min-width: 768px) {
  .KV.KV_recruit {
    height: clamp(216px, 22.5vw, 360px);
    background-position: center top 57%;
  }
}
@media screen and (max-width: 767px) {
  .KV.KV_recruit {
    height: 51.2820512821vw;
    background-size: 220%;
    background-position: left 39% top 60%;
  }
}
.KV.KV_recruit::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.5) 11%, rgba(255, 255, 255, 0) 34.5%);
}
.KV.KV_contact {
  background-image: url("../img/KV_contact.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (min-width: 768px) {
  .KV.KV_contact {
    height: clamp(216px, 22.5vw, 360px);
    background-position: center top 48%;
  }
}
@media screen and (max-width: 767px) {
  .KV.KV_contact {
    height: 51.2820512821vw;
    background-size: 140%;
    background-position: left top 50%;
  }
}
.KV.KV_contact::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.64) 20%, rgba(255, 255, 255, 0) 100%);
}

/* -----------------------
  footer
----------------------- */
@media screen and (min-width: 768px) {
  .footer {
    padding: clamp(18.75px, 1.953125vw, 31.25px) 0 clamp(3.75px, 0.390625vw, 6.25px);
  }
}
@media screen and (max-width: 767px) {
  .footer {
    padding: 1.5384615385vw 5.1282051282vw 0.5128205128vw 4.1025641026vw;
  }
}
.footer .footer--inner .footer--contents {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .footer .footer--inner .footer--contents {
    padding-inline: clamp(75px, 7.8125vw, 125px) clamp(86.25px, 8.984375vw, 143.75px);
  }
}
@media screen and (max-width: 800px) and (min-width: 767px) {
  .footer .footer--inner .footer--contents {
    padding-inline: clamp(37.5px, 3.90625vw, 62.5px) clamp(45px, 4.6875vw, 75px);
  }
}
@media screen and (min-width: 768px) {
  .footer .footer--inner .footer--contents .logo {
    width: clamp(79.5px, 8.28125vw, 132.5px);
  }
}
@media screen and (max-width: 767px) {
  .footer .footer--inner .footer--contents .logo {
    width: 13.3333333333vw;
  }
}
.footer .footer--inner .footer--contents .logo a {
  display: block;
  width: 100%;
}
.footer .footer--inner .footer--contents .logo a img {
  width: 100%;
  mix-blend-mode: multiply;
}
@media screen and (min-width: 768px) {
  .footer .footer--inner .footer--contents .nav {
    transform: translateY(50%);
  }
}
.footer .footer--inner .footer--contents .nav .links {
  display: flex;
}
@media screen and (min-width: 768px) {
  .footer .footer--inner .footer--contents .nav .links {
    gap: clamp(45px, 4.6875vw, 75px);
  }
}
@media screen and (max-width: 767px) {
  .footer .footer--inner .footer--contents .nav .links {
    gap: 3.8461538462vw;
  }
}
.footer .footer--inner .footer--contents .nav .links li a,
.footer .footer--inner .footer--contents .nav .links li .TX {
  display: block;
  color: #1A1919;
  transition: color 0.3s;
}
@media screen and (min-width: 768px) {
  .footer .footer--inner .footer--contents .nav .links li a,
  .footer .footer--inner .footer--contents .nav .links li .TX {
    font-size: clamp(9.75px, 1.015625vw, 16.25px);
    letter-spacing: clamp(0.585px, 0.0609375vw, 0.975px);
  }
}
@media screen and (max-width: 767px) {
  .footer .footer--inner .footer--contents .nav .links li a,
  .footer .footer--inner .footer--contents .nav .links li .TX {
    font-size: 2.5641025641vw;
    letter-spacing: 0.1538461538vw;
  }
}
.footer .footer--inner .footer--contents .nav .links li a:hover,
.footer .footer--inner .footer--contents .nav .links li .TX:hover {
  color: #D77F3F;
}
.footer .footer--inner .footer--contents .nav .links li .TX:hover {
  color: #1A1919;
}
@media screen and (min-width: 768px) {
  .footer .footer--inner .copylight {
    padding-inline: clamp(15px, 1.5625vw, 25px);
    margin-top: clamp(7.5px, 0.78125vw, 12.5px);
  }
}
@media screen and (max-width: 767px) {
  .footer .footer--inner .copylight {
    margin-top: -1.0256410256vw;
  }
}
.footer .footer--inner .copylight .TX {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .footer .footer--inner .copylight .TX {
    font-size: clamp(9.75px, 1.015625vw, 16.25px);
    letter-spacing: clamp(0.585px, 0.0609375vw, 0.975px);
  }
}
@media screen and (max-width: 767px) {
  .footer .footer--inner .copylight .TX {
    font-size: 2.0512820513vw;
    letter-spacing: 0.1230769231vw;
  }
}
@media screen and (min-width: 768px) {
  .footer .footer--inner .copylight .TX.TX--small {
    font-size: clamp(7.5px, 0.78125vw, 12.5px);
    letter-spacing: clamp(0.45px, 0.046875vw, 0.75px);
  }
}
@media screen and (max-width: 767px) {
  .footer .footer--inner .copylight .TX.TX--small {
    font-size: 1.5384615385vw;
  }
}
.footer .footer--inner .copylight .TX a {
  color: #1A1919;
}

/* -----------------------
  C_gra-vert-title
----------------------- */
.C_gra-vert-title {
  width: fit-content;
}
.C_gra-vert-title .TL {
  background-clip: text;
  background-repeat: no-repeat;
  background-size: cover;
  -webkit-background-clip: text;
  color: transparent;
  writing-mode: vertical-rl;
  line-height: 1;
}
.C_gra-vert-title .TL.type-01 {
  background-image: url("../img/text_BK.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-position: left 62% top;
}
.C_gra-vert-title .TL.type-02 {
  background-image: url("../img/text_BK_type02.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-position: left 62% top;
}
.C_gra-vert-title .TL.type-03 {
  background-image: url("../img/text_BK_type03.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-position: left 44% top;
}
@media screen and (min-width: 768px) {
  .C_gra-vert-title .TL {
    font-size: clamp(27px, 2.8125vw, 45px);
    width: clamp(27px, 2.8125vw, 45px);
    letter-spacing: clamp(7.5px, 0.78125vw, 12.5px);
  }
}
@media screen and (max-width: 767px) {
  .C_gra-vert-title .TL {
    font-size: 9.2307692308vw;
    width: 9.2307692308vw;
    letter-spacing: 2.5641025641vw;
  }
}

/* -----------------------
  C_vert-title
----------------------- */
.C_vert-title {
  width: fit-content;
}
.C_vert-title .TL {
  writing-mode: vertical-rl;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .C_vert-title .TL {
    font-size: clamp(18px, 1.875vw, 30px);
    width: clamp(18px, 1.875vw, 30px);
    letter-spacing: clamp(9px, 0.9375vw, 15px);
  }
}
@media screen and (max-width: 767px) {
  .C_vert-title .TL {
    font-size: 6.1538461538vw;
    width: 6.1538461538vw;
    letter-spacing: 3.0769230769vw;
  }
}

/* -----------------------
  C_vert-text
----------------------- */
.C_vert-text {
  width: fit-content;
}
.C_vert-text--inner {
  display: flex;
  flex-direction: row-reverse;
}
@media screen and (min-width: 768px) {
  .C_vert-text--inner {
    gap: clamp(15px, 1.5625vw, 25px);
  }
}
@media screen and (max-width: 767px) {
  .C_vert-text--inner {
    gap: 5.1282051282vw;
  }
}
.C_vert-text--inner .TX {
  line-height: 1;
  writing-mode: vertical-rl;
}
@media screen and (min-width: 768px) {
  .C_vert-text--inner .TX {
    font-size: clamp(15px, 1.5625vw, 25px);
    width: clamp(15px, 1.5625vw, 25px);
    letter-spacing: clamp(6px, 0.625vw, 10px);
  }
}
@media screen and (max-width: 767px) {
  .C_vert-text--inner .TX {
    font-size: 5.1282051282vw;
    width: 5.1282051282vw;
    letter-spacing: 2.0512820513vw;
  }
}
.C_vert-text--inner .TX span {
  background-image: url("../img/text_BK_type02.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: left 70% top;
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
}

/* -----------------------
  C_btn
----------------------- */
.C_btn {
  display: block;
  position: relative;
}
@media screen and (min-width: 768px) {
  .C_btn {
    width: clamp(151.5px, 15.78125vw, 252.5px);
    padding-bottom: clamp(2.25px, 0.234375vw, 3.75px);
    padding-left: clamp(3.75px, 0.390625vw, 6.25px);
  }
}
@media screen and (max-width: 767px) {
  .C_btn {
    width: 51.7948717949vw;
    padding-bottom: 0.7692307692vw;
    padding-left: 1.2820512821vw;
  }
}
.C_btn::before, .C_btn::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  background-color: #1A1919;
}
@media screen and (min-width: 768px) {
  .C_btn::before, .C_btn::after {
    height: clamp(0.75px, 0.078125vw, 1.25px);
  }
}
@media screen and (max-width: 767px) {
  .C_btn::before, .C_btn::after {
    height: 0.2564102564vw;
  }
}
.C_btn::after {
  width: 0;
  background-color: #D77F3F;
  transition: width 0.3s;
}
.C_btn:hover::after {
  width: 100%;
}
.C_btn:hover .TX {
  color: #D77F3F;
}
.C_btn .TX {
  color: #1A1919;
  line-height: 1.25;
  transition: color 0.3s;
}
@media screen and (min-width: 768px) {
  .C_btn .TX {
    font-size: clamp(12px, 1.25vw, 20px);
    letter-spacing: clamp(1.8px, 0.1875vw, 3px);
  }
}
@media screen and (max-width: 767px) {
  .C_btn .TX {
    font-size: 4.1025641026vw;
    letter-spacing: 0.6153846154vw;
  }
}

/* -----------------------
  C_front_about-us
----------------------- */
.C_front_about-us {
  display: flex;
}
@media screen and (min-width: 768px) {
  .C_front_about-us {
    gap: min(8.75vw, 140px);
  }
}
@media screen and (max-width: 767px) {
  .C_front_about-us {
    position: relative;
    flex-direction: column-reverse;
    padding-bottom: 9.2307692308vw;
  }
}
@media screen and (min-width: 768px) {
  .C_front_about-us .img--wrapper {
    width: min(62.109375vw, 993.75px);
    height: min(41.484375vw, 663.75px);
    flex-shrink: 0;
  }
}
@media screen and (max-width: 767px) {
  .C_front_about-us .img--wrapper {
    width: 94.8717948718vw;
    height: 65.1282051282vw;
    margin-right: auto;
  }
}
.C_front_about-us .img--wrapper .img {
  background-image: url("../img/front_about-us.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 768px) {
  .C_front_about-us .contents--wrapper {
    position: relative;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .C_front_about-us .contents--wrapper {
    margin-bottom: 15.3846153846vw;
  }
}
@media screen and (min-width: 768px) {
  .C_front_about-us .contents--wrapper .C_vert-text {
    padding-top: min(2.96875vw, 47.5px);
    height: clamp(398.25px, 41.484375vw, 663.75px);
  }
}
@media screen and (max-width: 767px) {
  .C_front_about-us .contents--wrapper .C_vert-text {
    padding-right: 5.1282051282vw;
    margin-left: auto;
    height: 79.4871794872vw;
  }
}
.C_front_about-us .contents--wrapper .btn--wrapper {
  position: absolute;
  bottom: 0;
  right: 0;
}

/* -----------------------
  C_front_example_section
----------------------- */
.C_front_example_section .C_gra-vert-title {
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .C_front_example_section .C_gra-vert-title {
    margin-bottom: clamp(45px, 4.6875vw, 75px);
  }
}
@media screen and (max-width: 767px) {
  .C_front_example_section .C_gra-vert-title {
    margin-bottom: 20.5128205128vw;
    height: 48.7179487179vw;
  }
}
.C_front_example_section .links--wrapper {
  width: 100%;
  display: flex;
}
@media screen and (max-width: 767px) {
  .C_front_example_section .links--wrapper {
    flex-wrap: wrap;
  }
}
.C_front_example_section .links--wrapper .link {
  display: block;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .C_front_example_section .links--wrapper .link {
    width: 16.6666666667%;
    height: clamp(423.75px, 44.140625vw, 706.25px);
  }
}
@media screen and (max-width: 767px) {
  .C_front_example_section .links--wrapper .link {
    width: 33.3333333333%;
    height: 88.7179487179vw;
  }
}
.C_front_example_section .links--wrapper .link:nth-child(1) {
  background-image: url("../img/business-item-01.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.C_front_example_section .links--wrapper .link:nth-child(2) {
  background-image: url("../img/business-item-02.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-position: center right 46%;
}
.C_front_example_section .links--wrapper .link:nth-child(3) {
  background-image: url("../img/business-item-03.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-position: center right 55%;
}
.C_front_example_section .links--wrapper .link:nth-child(4) {
  background-image: url("../img/business-item-04.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.C_front_example_section .links--wrapper .link:nth-child(5) {
  background-image: url("../img/business-item-05.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-position: center right 30%;
}
.C_front_example_section .links--wrapper .link:nth-child(6) {
  background-image: url("../img/business-item-06.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.C_front_example_section .links--wrapper .link:before, .C_front_example_section .links--wrapper .link:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
  z-index: 1;
  transition: all 0.8s;
  mix-blend-mode: multiply;
}
.C_front_example_section .links--wrapper .link:before {
  top: 0;
}
.C_front_example_section .links--wrapper .link:after {
  top: -100%;
  background: linear-gradient(180deg, rgba(215, 127, 63, 0.7) 0%, rgba(215, 127, 63, 0.7) 80%, rgba(0, 0, 0, 0.4) 100%);
}
.C_front_example_section .links--wrapper .link:hover:before {
  top: 100%;
}
.C_front_example_section .links--wrapper .link:hover:after {
  top: 0;
}
.C_front_example_section .links--wrapper .link .TX {
  color: #FFFFFF;
  line-height: 1;
  writing-mode: vertical-rl;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  z-index: 3;
}
@media screen and (min-width: 768px) {
  .C_front_example_section .links--wrapper .link .TX {
    font-size: clamp(26.25px, 2.734375vw, 43.75px);
    width: clamp(26.25px, 2.734375vw, 43.75px);
    letter-spacing: clamp(11.25px, 1.171875vw, 18.75px);
    top: clamp(41.25px, 4.296875vw, 68.75px);
  }
}
@media screen and (max-width: 767px) {
  .C_front_example_section .links--wrapper .link .TX {
    font-size: 5.1282051282vw;
    width: 5.1282051282vw;
    letter-spacing: 3.8461538462vw;
    top: 8.7179487179vw;
  }
}

/* -----------------------
  C_front_to-links
----------------------- */
@media screen and (max-width: 767px) {
  .C_front_to-links {
    display: flex;
    flex-direction: column;
    gap: 25.641025641vw;
  }
}
.C_front_to-links .to-link--item .img--wrapper {
  height: fit-content;
}
@media screen and (max-width: 767px) {
  .C_front_to-links .to-link--item .img--wrapper {
    margin-bottom: 7.6923076923vw;
  }
}
@media screen and (max-width: 767px) {
  .C_front_to-links .to-link--item .img--wrapper .img {
    width: 94.8717948718vw;
  }
}
.C_front_to-links .to-link--item .img--wrapper .img.img-01 {
  background-image: url("../img/business-item-05.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (min-width: 768px) {
  .C_front_to-links .to-link--item .img--wrapper .img.img-01 {
    width: min(65.625vw, 1050px);
    height: min(42.96875vw, 687.5px);
  }
}
@media screen and (max-width: 767px) {
  .C_front_to-links .to-link--item .img--wrapper .img.img-01 {
    height: 69.4871794872vw;
    margin-left: auto;
  }
}
.C_front_to-links .to-link--item .img--wrapper .img.img-02 {
  background-image: url("../img/KV_about-us.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (min-width: 768px) {
  .C_front_to-links .to-link--item .img--wrapper .img.img-02 {
    width: min(54.84375vw, 877.5px);
    height: min(36.875vw, 590px);
  }
}
@media screen and (max-width: 767px) {
  .C_front_to-links .to-link--item .img--wrapper .img.img-02 {
    height: 63.8461538462vw;
    margin-right: auto;
  }
}
.C_front_to-links .to-link--item .img--wrapper .img.img-03 {
  background-image: url("../img/front_links_recruit.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (min-width: 768px) {
  .C_front_to-links .to-link--item .img--wrapper .img.img-03 {
    width: min(54.375vw, 870px);
    height: min(26.875vw, 430px);
  }
}
@media screen and (max-width: 767px) {
  .C_front_to-links .to-link--item .img--wrapper .img.img-03 {
    height: 70.5128205128vw;
    margin-left: auto;
  }
}
@media screen and (max-width: 767px) {
  .C_front_to-links .to-link--item .contents--wrapper {
    padding-inline: 5.1282051282vw;
  }
}
@media screen and (max-width: 767px) {
  .C_front_to-links .to-link--item .contents--wrapper .sentence--wrapper {
    display: flex;
    flex-direction: row-reverse;
    gap: 9.4871794872vw;
    padding-inline: 11.5384615385vw;
  }
}
@media screen and (max-width: 767px) {
  .C_front_to-links .to-link--item .contents--wrapper .sentence--wrapper .text {
    margin-top: 8.9743589744vw;
  }
}
@media screen and (min-width: 768px) {
  .C_front_to-links .to-link--item:nth-child(1) {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    height: clamp(412.5px, 42.96875vw, 687.5px);
    margin-bottom: clamp(150px, 15.625vw, 250px);
  }
}
@media screen and (min-width: 768px) {
  .C_front_to-links .to-link--item:nth-child(1) .contents--wrapper {
    padding-left: min(11.25vw, 180px);
    margin-top: min(9.921875vw, 158.75px);
    position: relative;
  }
}
@media screen and (max-width: 767px) {
  .C_front_to-links .to-link--item:nth-child(1) .contents--wrapper .sentence--wrapper {
    min-height: 97.4358974359vw;
  }
}
@media screen and (min-width: 768px) {
  .C_front_to-links .to-link--item:nth-child(1) .contents--wrapper .sentence--wrapper .title {
    position: absolute;
    bottom: calc(100% + min(7.8125vw, 125px));
    right: 0;
  }
}
@media screen and (max-width: 767px) {
  .C_front_to-links .to-link--item:nth-child(1) .contents--wrapper .sentence--wrapper .title {
    height: 48.7179487179vw;
  }
}
@media screen and (min-width: 768px) {
  .C_front_to-links .to-link--item:nth-child(1) .contents--wrapper .sentence--wrapper .text {
    margin-bottom: min(3.90625vw, 62.5px);
  }
}
@media screen and (max-width: 767px) {
  .C_front_to-links .to-link--item:nth-child(1) .contents--wrapper .sentence--wrapper .text {
    white-space: nowrap;
  }
}
@media screen and (min-width: 768px) {
  .C_front_to-links .to-link--item:nth-child(1) .contents--wrapper .btn--wrapper {
    position: absolute;
    bottom: 0;
    left: 0;
  }
}
@media screen and (max-width: 767px) {
  .C_front_to-links .to-link--item:nth-child(1) .contents--wrapper .btn--wrapper {
    margin-top: 9.4871794872vw;
  }
}
@media screen and (min-width: 768px) {
  .C_front_to-links .to-link--item:nth-child(2) {
    display: flex;
    gap: min(7.734375vw, 123.75px);
    margin-bottom: clamp(135px, 14.0625vw, 225px);
  }
}
@media screen and (min-width: 768px) {
  .C_front_to-links .to-link--item:nth-child(2) .contents--wrapper {
    position: relative;
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .C_front_to-links .to-link--item:nth-child(2) .contents--wrapper .sentence--wrapper {
    width: fit-content;
    height: clamp(202.5px, 21.09375vw, 337.5px);
  }
}
@media screen and (max-width: 767px) {
  .C_front_to-links .to-link--item:nth-child(2) .contents--wrapper .sentence--wrapper {
    height: 74.358974359vw;
  }
}
@media screen and (min-width: 768px) {
  .C_front_to-links .to-link--item:nth-child(2) .contents--wrapper .sentence--wrapper .title {
    width: fit-content;
    height: clamp(138.75px, 14.453125vw, 231.25px);
    margin-left: auto;
    margin-bottom: min(5.46875vw, 87.5px);
  }
}
@media screen and (min-width: 768px) {
  .C_front_to-links .to-link--item:nth-child(2) .contents--wrapper .btn--wrapper {
    position: absolute;
    bottom: 0;
    right: 0;
    transform: translateY(100%);
  }
}
@media screen and (max-width: 767px) {
  .C_front_to-links .to-link--item:nth-child(2) .contents--wrapper .btn--wrapper {
    margin-top: 15.3846153846vw;
  }
}
@media screen and (min-width: 768px) {
  .C_front_to-links .to-link--item:nth-child(3) {
    display: flex;
    flex-direction: row-reverse;
    gap: min(4.296875vw, 68.75px);
    padding-inline: min(7.5vw, 120px);
    height: clamp(258px, 26.875vw, 430px);
  }
}
@media screen and (min-width: 768px) {
  .C_front_to-links .to-link--item:nth-child(3) .contents--wrapper {
    position: relative;
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .C_front_to-links .to-link--item:nth-child(3) .contents--wrapper .sentence--wrapper {
    width: fit-content;
    display: flex;
    flex-direction: row-reverse;
    margin-left: auto;
    gap: min(4.6875vw, 75px);
  }
}
@media screen and (max-width: 767px) {
  .C_front_to-links .to-link--item:nth-child(3) .contents--wrapper .sentence--wrapper {
    gap: 15.3846153846vw;
    padding-inline: 14.8717948718vw;
    height: 84.6153846154vw;
  }
}
@media screen and (min-width: 768px) {
  .C_front_to-links .to-link--item:nth-child(3) .contents--wrapper .sentence--wrapper .title {
    width: fit-content;
    margin-left: auto;
    margin-bottom: min(7.8125vw, 125px);
  }
}
@media screen and (min-width: 768px) {
  .C_front_to-links .to-link--item:nth-child(3) .contents--wrapper .btn--wrapper {
    position: absolute;
    bottom: 0;
    left: 0;
  }
}
@media screen and (max-width: 767px) {
  .C_front_to-links .to-link--item:nth-child(3) .contents--wrapper .btn--wrapper {
    margin-top: 13.8461538462vw;
  }
}

/* -----------------------
  C_front_contact
----------------------- */
.C_front_contact {
  position: relative;
}
.C_front_contact::before {
  content: "";
  background-image: url("../img/front_contact.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: scale(-1, 1);
}
@media screen and (max-width: 767px) {
  .C_front_contact::before {
    background-position: top 10% right 47%;
    background-size: 179%;
  }
}
.C_front_contact--inner {
  position: relative;
  z-index: 2;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .C_front_contact--inner {
    width: calc(min(84.375vw, 1350px) - min(1.875vw, 30px) * 2);
    padding: clamp(179.25px, 18.671875vw, 298.75px) 0 clamp(24.75px, 2.578125vw, 41.25px);
  }
}
@media screen and (max-width: 767px) {
  .C_front_contact--inner {
    width: 100%;
    padding: 7.1794871795vw 0 71.5384615385vw 24.358974359vw;
  }
}
.C_front_contact--inner .C_gra-vert-title {
  position: absolute;
  top: 0;
  transform: translateY(-29%);
}
@media screen and (min-width: 768px) {
  .C_front_contact--inner .C_gra-vert-title {
    height: clamp(210px, 21.875vw, 350px);
    left: 0;
  }
}
@media screen and (max-width: 767px) {
  .C_front_contact--inner .C_gra-vert-title {
    left: 9.2307692308vw;
    height: 71.7948717949vw;
  }
}
@media screen and (min-width: 768px) {
  .C_front_contact--inner .contents--wrapper {
    display: flex;
    flex-direction: column;
    gap: clamp(22.5px, 2.34375vw, 37.5px);
  }
}
@media screen and (max-width: 767px) {
  .C_front_contact--inner .contents--wrapper {
    display: flex;
    flex-direction: column;
    gap: 7.6923076923vw;
  }
}
.C_front_contact--inner .contents--wrapper .text--wrapper .TX {
  line-height: 187%;
}
@media screen and (min-width: 768px) {
  .C_front_contact--inner .contents--wrapper .text--wrapper .TX {
    font-size: clamp(12px, 1.25vw, 20px);
  }
}
@media screen and (max-width: 767px) {
  .C_front_contact--inner .contents--wrapper .text--wrapper .TX {
    font-size: 4.1025641026vw;
  }
}

/* -----------------------
  C_about-us_message
----------------------- */
.C_about-us_message {
  display: flex;
  position: relative;
}
@media screen and (min-width: 768px) {
  .C_about-us_message {
    gap: clamp(45px, 4.6875vw, 75px);
  }
}
@media screen and (max-width: 767px) {
  .C_about-us_message {
    flex-direction: column;
    gap: 7.6923076923vw;
  }
}
@media screen and (min-width: 768px) {
  .C_about-us_message .img--wrapper {
    width: clamp(174px, 18.125vw, 290px);
    height: clamp(185.25px, 19.296875vw, 308.75px);
    flex-shrink: 0;
  }
}
@media screen and (max-width: 767px) {
  .C_about-us_message .img--wrapper {
    width: 59.4871794872vw;
    height: 63.3333333333vw;
    margin: 0 auto;
  }
}
.C_about-us_message .img--wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (min-width: 768px) {
  .C_about-us_message .contents--wrapper .text .TX {
    line-height: 250%;
    font-size: clamp(12px, 1.25vw, 20px);
  }
}
@media screen and (max-width: 767px) {
  .C_about-us_message .contents--wrapper .text .TX {
    line-height: 187%;
    font-size: 4.1025641026vw;
  }
}
.C_about-us_message .contents--wrapper .name {
  width: fit-content;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .C_about-us_message .contents--wrapper .name {
    margin-top: clamp(27px, 2.8125vw, 45px);
  }
}
@media screen and (max-width: 767px) {
  .C_about-us_message .contents--wrapper .name {
    margin-top: 9.2307692308vw;
  }
}
.C_about-us_message .contents--wrapper .name .TX {
  line-height: 140%;
}
@media screen and (min-width: 768px) {
  .C_about-us_message .contents--wrapper .name .TX {
    font-size: clamp(15px, 1.5625vw, 25px);
  }
}
@media screen and (max-width: 767px) {
  .C_about-us_message .contents--wrapper .name .TX {
    font-size: 5.1282051282vw;
  }
}

/* -----------------------
  C_about-us_summary
----------------------- */
@media screen and (min-width: 768px) {
  .C_about-us_summary .summary--title {
    margin-bottom: clamp(45px, 4.6875vw, 75px);
  }
}
@media screen and (max-width: 767px) {
  .C_about-us_summary .summary--title {
    margin-bottom: 7.6923076923vw;
    padding-left: 7.1794871795vw;
  }
}
.C_about-us_summary .summary--title .TL {
  color: #000000;
  line-height: 1;
  writing-mode: vertical-rl;
  font-weight: 300;
}
@media screen and (min-width: 768px) {
  .C_about-us_summary .summary--title .TL {
    font-size: clamp(27px, 2.8125vw, 45px);
    width: clamp(27px, 2.8125vw, 45px);
    letter-spacing: clamp(3.75px, 0.390625vw, 6.25px);
  }
}
@media screen and (max-width: 767px) {
  .C_about-us_summary .summary--title .TL {
    font-size: 6.1538461538vw;
    width: 6.1538461538vw;
    letter-spacing: 1.2820512821vw;
    height: 16.1538461538vw;
  }
}
.C_about-us_summary .summary--contents li {
  border-bottom: solid #D6D6D6;
  display: flex;
}
@media screen and (min-width: 768px) {
  .C_about-us_summary .summary--contents li {
    border-bottom-width: clamp(0.75px, 0.078125vw, 1.25px);
    gap: clamp(15px, 1.5625vw, 25px);
    padding: clamp(15px, 1.5625vw, 25px) clamp(25.5px, 2.65625vw, 42.5px);
  }
}
@media screen and (max-width: 767px) {
  .C_about-us_summary .summary--contents li {
    border-bottom-width: 0.2564102564vw;
    padding: 5.1282051282vw 2.5641025641vw 5.1282051282vw 7.1794871795vw;
    gap: 2.5641025641vw;
  }
}
.C_about-us_summary .summary--contents li:first-child {
  border-top: solid #D6D6D6;
}
@media screen and (min-width: 768px) {
  .C_about-us_summary .summary--contents li:first-child {
    border-top-width: clamp(0.75px, 0.078125vw, 1.25px);
  }
}
@media screen and (max-width: 767px) {
  .C_about-us_summary .summary--contents li:first-child {
    border-top-width: 0.2564102564vw;
  }
}
.C_about-us_summary .summary--contents li .list--title {
  flex-shrink: 0;
}
@media screen and (min-width: 768px) {
  .C_about-us_summary .summary--contents li .list--title {
    width: clamp(136.5px, 14.21875vw, 227.5px);
  }
}
@media screen and (max-width: 767px) {
  .C_about-us_summary .summary--contents li .list--title {
    width: 20.2564102564vw;
  }
}
.C_about-us_summary .summary--contents li .list--title .TX {
  color: #7C7C7C;
  font-weight: 300;
}
@media screen and (min-width: 768px) {
  .C_about-us_summary .summary--contents li .list--title .TX {
    font-size: clamp(12px, 1.25vw, 20px);
    letter-spacing: clamp(-0.12px, -0.0125vw, -0.2px);
  }
}
@media screen and (max-width: 767px) {
  .C_about-us_summary .summary--contents li .list--title .TX {
    font-size: 4.1025641026vw;
    letter-spacing: -0.041025641vw;
  }
}
.C_about-us_summary .summary--contents li .list--contents .TX {
  color: #292929;
  font-weight: 300;
}
@media screen and (min-width: 768px) {
  .C_about-us_summary .summary--contents li .list--contents .TX {
    font-size: clamp(12px, 1.25vw, 20px);
    letter-spacing: clamp(1.2px, 0.125vw, 2px);
  }
}
@media screen and (max-width: 767px) {
  .C_about-us_summary .summary--contents li .list--contents .TX {
    font-size: 4.1025641026vw;
    letter-spacing: 0.4102564103vw;
  }
}
@media screen and (max-width: 767px) {
  .C_about-us_summary .summary--contents li .list--contents .TX span {
    display: inline-block;
    margin-top: 2.5641025641vw;
  }
}

/* -----------------------
  C_about-us_access
----------------------- */
.C_about-us_access {
  width: 100%;
  position: relative;
}
@media screen and (min-width: 768px) {
  .C_about-us_access {
    height: clamp(337.5px, 35.15625vw, 562.5px);
  }
}
@media screen and (max-width: 767px) {
  .C_about-us_access {
    height: 50vw;
  }
}
.C_about-us_access iframe {
  width: 100%;
  height: 100%;
}
.C_about-us_access .access--inner {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  pointer-events: none;
}
@media screen and (min-width: 768px) {
  .C_about-us_access .access--inner {
    right: 0;
  }
}
@media screen and (max-width: 767px) {
  .C_about-us_access .access--inner {
    display: contents;
  }
}
.C_about-us_access .access--inner .access--title {
  position: absolute;
}
@media screen and (min-width: 768px) {
  .C_about-us_access .access--inner .access--title {
    top: 0;
    transform: translateY(-65%);
    right: 0;
  }
}
@media screen and (max-width: 767px) {
  .C_about-us_access .access--inner .access--title {
    top: 0;
    transform: translateY(-80%);
    right: 12.0512820513vw;
  }
}
.C_about-us_access .access--inner .access--title .TL {
  color: #000000;
  line-height: 1;
  writing-mode: vertical-rl;
  font-weight: 300;
}
@media screen and (min-width: 768px) {
  .C_about-us_access .access--inner .access--title .TL {
    font-size: clamp(27px, 2.8125vw, 45px);
    width: clamp(27px, 2.8125vw, 45px);
    letter-spacing: clamp(3.75px, 0.390625vw, 6.25px);
  }
}
@media screen and (max-width: 767px) {
  .C_about-us_access .access--inner .access--title .TL {
    font-size: 6.1538461538vw;
    width: 6.1538461538vw;
    letter-spacing: 1.2820512821vw;
  }
}

/* -----------------------
  C_selector
----------------------- */
@media screen and (min-width: 768px) {
  .C_selector {
    width: fit-content;
    margin-left: auto;
  }
}
@media screen and (max-width: 767px) {
  .C_selector {
    width: 100%;
  }
}
.C_selector--inner {
  border-top: solid #1A1919;
}
@media screen and (min-width: 768px) {
  .C_selector--inner {
    padding-inline: clamp(12px, 1.25vw, 20px);
    border-top-width: clamp(0.75px, 0.078125vw, 1.25px);
  }
}
@media screen and (max-width: 767px) {
  .C_selector--inner {
    padding-inline: clamp(9.75px, 1.015625vw, 16.25px);
    border-top-width: clamp(0.75px, 0.078125vw, 1.25px);
  }
}
.C_selector--inner .lists {
  display: flex;
  flex-direction: row-reverse;
}
@media screen and (min-width: 768px) {
  .C_selector--inner .lists {
    gap: clamp(26.25px, 2.734375vw, 43.75px);
  }
}
@media screen and (max-width: 767px) {
  .C_selector--inner .lists {
    justify-content: space-between;
  }
}
.C_selector--inner .lists .list {
  cursor: pointer;
  position: relative;
  height: fit-content;
  transition: all 0.5s ease;
}
@media screen and (min-width: 768px) {
  .C_selector--inner .lists .list {
    padding-block: clamp(11.25px, 1.171875vw, 18.75px) clamp(41.25px, 4.296875vw, 68.75px);
  }
}
@media screen and (max-width: 767px) {
  .C_selector--inner .lists .list {
    padding-block: 2.0512820513vw 10.5128205128vw;
  }
}
.C_selector--inner .lists .list::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0%;
  left: 50%;
  transform: translateX(-50%);
  height: 0%;
  background: linear-gradient(180deg, #D77F3F 0%, rgba(215, 127, 63, 0) 100%);
  transition: all 0.5s ease;
}
@media screen and (min-width: 768px) {
  .C_selector--inner .lists .list::before {
    width: 240%;
  }
}
@media screen and (max-width: 767px) {
  .C_selector--inner .lists .list::before {
    width: 200%;
  }
}
.C_selector--inner .lists .list .TX {
  line-height: 1;
  writing-mode: vertical-rl;
  position: relative;
  z-index: 2;
  transition: all 0.5s ease;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .C_selector--inner .lists .list .TX {
    font-size: clamp(18px, 1.875vw, 30px);
    width: clamp(18px, 1.875vw, 30px);
    letter-spacing: clamp(7.5px, 0.78125vw, 12.5px);
  }
}
@media screen and (max-width: 767px) {
  .C_selector--inner .lists .list .TX {
    font-size: 5.1282051282vw;
    width: 5.1282051282vw;
    letter-spacing: 2.5641025641vw;
  }
}
.C_selector--inner .lists .list:hover::before {
  height: 100%;
  background: linear-gradient(180deg, #D77F3F 0%, rgba(215, 127, 63, 0) 100%);
  opacity: 0.6;
}
@media screen and (min-width: 768px) {
  .C_selector--inner .lists .list:hover .TX {
    transform: translateY(clamp(12.75px, 1.328125vw, 21.25px));
  }
}
@media screen and (max-width: 767px) {
  .C_selector--inner .lists .list:hover .TX {
    transform: translateY(3.0769230769vw);
  }
}
.C_selector--inner .lists .list.selected::before {
  height: 100%;
}
@media screen and (min-width: 768px) {
  .C_selector--inner .lists .list.selected .TX {
    transform: translateY(clamp(12.75px, 1.328125vw, 21.25px));
  }
}
@media screen and (max-width: 767px) {
  .C_selector--inner .lists .list.selected .TX {
    transform: translateY(3.0769230769vw);
  }
}

/* -----------------------
  C_example-item
----------------------- */
@media screen and (min-width: 768px) {
  .C_example-item {
    display: flex;
    flex-direction: column;
    gap: clamp(120px, 12.5vw, 200px);
  }
}
@media screen and (max-width: 767px) {
  .C_example-item {
    display: flex;
    flex-direction: column;
    gap: 25.641025641vw;
  }
}
.C_example-item .item:last-child p {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .C_example-item .item:last-child p {
    font-size: clamp(12px, 1.25vw, 20px);
  }
}
@media screen and (max-width: 767px) {
  .C_example-item .item:last-child p {
    font-size: 4.1025641026vw;
  }
}
.C_example-item .item .img--area {
  display: flex;
  position: relative;
}
@media screen and (min-width: 768px) {
  .C_example-item .item .img--area {
    width: fit-content;
    margin-left: auto;
    align-items: flex-end;
    gap: clamp(15px, 1.5625vw, 25px);
  }
}
@media screen and (max-width: 767px) {
  .C_example-item .item .img--area {
    flex-direction: column;
    gap: 5.1282051282vw;
  }
}
.C_example-item .item .img--area::before {
  content: "";
  position: absolute;
}
@media screen and (min-width: 768px) {
  .C_example-item .item .img--area::before {
    aspect-ratio: 155/16;
    width: min(12.109375vw, 193.75px);
    bottom: min(1.71875vw, 27.5px);
    left: 38%;
    transform: translateX(-50%) skewX(45deg);
    border-bottom: min(0.078125vw, 1.25px) solid #1A1919;
    border-right: min(0.078125vw, 1.25px) solid #1A1919;
  }
}
@media screen and (max-width: 767px) {
  .C_example-item .item .img--area::before {
    aspect-ratio: 19/162;
    width: 4.8717948718vw;
    top: 50%;
    left: 3.8461538462vw;
    transform: translateY(-50%) skewY(45deg);
    border-bottom: 1.2820512821vw solid #D77F3F;
    border-right: 1.2820512821vw solid #D77F3F;
  }
}
@media screen and (max-width: 767px) {
  .C_example-item .item .img--area .img--wrapper {
    width: 100%;
    height: 68.2051282051vw;
  }
}
@media screen and (min-width: 768px) {
  .C_example-item .item .img--area .img--wrapper.before {
    width: min(23.046875vw, 368.75px);
    height: min(22.96875vw, 367.5px);
  }
}
@media screen and (min-width: 768px) {
  .C_example-item .item .img--area .img--wrapper.after {
    width: min(35.390625vw, 566.25px);
    height: min(26.875vw, 430px);
  }
}
.C_example-item .item .img--area .img--wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.C_example-item .item .contents-area {
  position: relative;
}
@media screen and (min-width: 768px) {
  .C_example-item .item .contents-area {
    padding-top: clamp(26.25px, 2.734375vw, 43.75px);
  }
}
@media screen and (max-width: 767px) {
  .C_example-item .item .contents-area {
    padding-top: 21.0256410256vw;
  }
}
.C_example-item .item .contents-area .C_vert-title {
  position: absolute;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .C_example-item .item .contents-area .C_vert-title {
    top: 0;
    transform: translateY(-60%);
    left: clamp(27.75px, 2.890625vw, 46.25px);
  }
}
@media screen and (max-width: 767px) {
  .C_example-item .item .contents-area .C_vert-title {
    top: 2.5641025641vw;
    left: 50%;
    transform: translateX(-50%);
  }
}
.C_example-item .item .contents-area .TX--containaer {
  background-color: #FAFAFA;
}
@media screen and (min-width: 768px) {
  .C_example-item .item .contents-area .TX--containaer {
    padding: clamp(33.75px, 3.515625vw, 56.25px) clamp(114.75px, 11.953125vw, 191.25px);
  }
}
@media screen and (max-width: 767px) {
  .C_example-item .item .contents-area .TX--containaer {
    padding: 25.1282051282vw 6.4102564103vw 8.4615384615vw;
  }
}
.C_example-item .item .contents-area .TX--containaer .TX {
  color: #292929;
  font-family: "Zen Kaku Gothic New", serif;
  font-style: normal;
  font-weight: 400;
  line-height: 200%;
}
@media screen and (min-width: 768px) {
  .C_example-item .item .contents-area .TX--containaer .TX {
    font-size: clamp(12px, 1.25vw, 20px);
    letter-spacing: clamp(0.96px, 0.1vw, 1.6px);
  }
}
@media screen and (max-width: 767px) {
  .C_example-item .item .contents-area .TX--containaer .TX {
    font-size: 4.1025641026vw;
    letter-spacing: 0.3282051282vw;
  }
}

/* -----------------------
  C_business-items
----------------------- */
@media screen and (min-width: 768px) {
  .C_business-items {
    display: flex;
    flex-direction: column;
    gap: clamp(75px, 7.8125vw, 125px);
  }
}
@media screen and (max-width: 767px) {
  .C_business-items {
    display: flex;
    flex-direction: column;
    gap: 15.3846153846vw;
  }
}
.C_business-items .item {
  width: 100%;
  display: flex;
}
@media screen and (min-width: 768px) {
  .C_business-items .item {
    justify-content: space-between;
  }
}
@media screen and (max-width: 767px) {
  .C_business-items .item {
    flex-direction: column;
    gap: 7.6923076923vw;
  }
}
@media screen and (min-width: 768px) {
  .C_business-items .item .item--img {
    width: min(47.421875vw, 758.75px);
    height: min(25.3125vw, 405px);
  }
}
@media screen and (max-width: 767px) {
  .C_business-items .item .item--img {
    aspect-ratio: 390/211;
    width: 100%;
  }
}
.C_business-items .item .item--img.img--01 {
  background-image: url("../img/business-item-01.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.C_business-items .item .item--img.img--02 {
  background-image: url("../img/business-item-02.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.C_business-items .item .item--img.img--03 {
  background-image: url("../img/business-item-03.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.C_business-items .item .item--img.img--04 {
  background-image: url("../img/business-item-04.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.C_business-items .item .item--img.img--05 {
  background-image: url("../img/business-item-05.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.C_business-items .item .item--img.img--06 {
  background-image: url("../img/business-item-06.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.C_business-items .item .item--contents {
  display: flex;
}
@media screen and (min-width: 768px) {
  .C_business-items .item .item--contents {
    width: min(39.0625vw, 625px);
    flex-direction: column;
    justify-content: space-between;
    gap: min(1.5625vw, 25px);
  }
}
@media screen and (max-width: 767px) {
  .C_business-items .item .item--contents {
    padding-inline: 5.1282051282vw;
    gap: 15.8974358974vw;
  }
}
.C_business-items .item .item--contents .title {
  width: fit-content;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .C_business-items .item .item--contents .title {
    flex-shrink: 0;
    margin-top: 2.5641025641vw;
  }
}
.C_business-items .item .item--contents .title .TL {
  color: #000000;
  line-height: 1;
  writing-mode: vertical-rl;
}
@media screen and (min-width: 768px) {
  .C_business-items .item .item--contents .title .TL {
    font-size: clamp(15px, 1.5625vw, 25px);
    width: clamp(15px, 1.5625vw, 25px);
    letter-spacing: clamp(6px, 0.625vw, 10px);
  }
}
@media screen and (max-width: 767px) {
  .C_business-items .item .item--contents .title .TL {
    font-size: 5.1282051282vw;
    width: 5.1282051282vw;
    letter-spacing: 2.0512820513vw;
  }
}
@media screen and (max-width: 767px) {
  .C_business-items .item .item--contents .TX--containaer {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .C_business-items .item .item--contents .TX--containaer .TX {
    font-size: clamp(12px, 1.25vw, 20px);
    line-height: 250%;
  }
}
@media screen and (max-width: 767px) {
  .C_business-items .item .item--contents .TX--containaer .TX {
    font-size: 4.1025641026vw;
    line-height: 187%;
  }
}
@media screen and (min-width: 768px) {
  .C_business-items .item:nth-child(odd) {
    flex-direction: row-reverse;
    padding-left: min(7.8125vw, 125px);
  }
}
@media screen and (min-width: 768px) {
  .C_business-items .item:nth-child(odd) .item--contents .title {
    margin-left: auto;
  }
}
@media screen and (min-width: 768px) {
  .C_business-items .item:nth-child(even) {
    padding-right: min(7.8125vw, 125px);
  }
}
@media screen and (min-width: 768px) {
  .C_business-items .item:nth-child(even) .item--contents .title {
    margin-right: auto;
  }
}

/* -----------------------
  C_business-area
----------------------- */
.C_business-area {
  display: flex;
}
@media screen and (min-width: 768px) {
  .C_business-area {
    gap: clamp(42.75px, 4.453125vw, 71.25px);
  }
}
@media screen and (max-width: 767px) {
  .C_business-area {
    flex-direction: column;
    gap: clamp(18.75px, 1.953125vw, 31.25px);
  }
}
@media screen and (min-width: 768px) {
  .C_business-area .area--item {
    width: clamp(160.5px, 16.71875vw, 267.5px);
  }
}
@media screen and (max-width: 767px) {
  .C_business-area .area--item {
    width: 54.8717948718vw;
  }
}
@media screen and (min-width: 768px) {
  .C_business-area .area--item:nth-child(2) {
    width: clamp(201.75px, 21.015625vw, 336.25px);
  }
}
@media screen and (max-width: 767px) {
  .C_business-area .area--item:nth-child(2) {
    width: 68.9743589744vw;
  }
}
.C_business-area .area--item .area--title {
  border-bottom: solid #1A1919;
}
@media screen and (min-width: 768px) {
  .C_business-area .area--item .area--title {
    border-bottom-width: clamp(0.75px, 0.078125vw, 1.25px);
  }
}
@media screen and (max-width: 767px) {
  .C_business-area .area--item .area--title {
    border-bottom-width: 0.2564102564vw;
  }
}
.C_business-area .area--item .area--title .TL {
  line-height: 1.67;
}
@media screen and (min-width: 768px) {
  .C_business-area .area--item .area--title .TL {
    font-size: clamp(18px, 1.875vw, 30px);
  }
}
@media screen and (max-width: 767px) {
  .C_business-area .area--item .area--title .TL {
    font-size: 5.1282051282vw;
  }
}
@media screen and (min-width: 768px) {
  .C_business-area .area--item .area--contents {
    margin-top: clamp(3.75px, 0.390625vw, 6.25px);
    padding-left: clamp(8.25px, 0.859375vw, 13.75px);
  }
}
@media screen and (max-width: 767px) {
  .C_business-area .area--item .area--contents {
    padding-left: 2.8205128205vw;
  }
}
.C_business-area .area--item .area--contents .TX {
  line-height: 250%;
}
@media screen and (min-width: 768px) {
  .C_business-area .area--item .area--contents .TX {
    font-size: clamp(12px, 1.25vw, 20px);
  }
}
@media screen and (max-width: 767px) {
  .C_business-area .area--item .area--contents .TX {
    font-size: 4.1025641026vw;
  }
}

/* -----------------------
  C_recruit
----------------------- */
@media screen and (min-width: 768px) {
  .C_recruit {
    padding-inline: min(6.09375vw, 97.5px);
    display: flex;
    flex-direction: column;
    gap: clamp(45px, 4.6875vw, 75px);
  }
}
@media screen and (max-width: 767px) {
  .C_recruit {
    display: flex;
    flex-direction: column;
    gap: 15.3846153846vw;
  }
}
@media screen and (min-width: 768px) {
  .C_recruit--hero {
    display: flex;
    flex-direction: column;
    gap: clamp(45px, 4.6875vw, 75px);
  }
}
@media screen and (max-width: 767px) {
  .C_recruit--hero {
    display: flex;
    flex-direction: column;
    gap: 7.6923076923vw;
  }
}
.C_recruit--hero .img--wrapper {
  position: relative;
}
.C_recruit--hero .img--wrapper .hero--img {
  background-image: url("../img/recruit_hero.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .C_recruit--hero .img--wrapper .hero--img {
    aspect-ratio: 724/347;
  }
}
@media screen and (max-width: 767px) {
  .C_recruit--hero .img--wrapper .hero--img {
    aspect-ratio: 350/395;
    background-position: center right 10%;
  }
  .C_recruit--hero .img--wrapper .hero--img::before {
    content: "";
    position: absolute;
    z-index: 2;
    inset: 0;
    background: linear-gradient(237deg, rgba(255, 255, 255, 0.74) 25.32%, rgba(255, 255, 255, 0) 55.55%);
  }
}
.C_recruit--hero .img--wrapper .hero--text {
  width: fit-content;
  position: absolute;
  z-index: 3;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .C_recruit--hero .img--wrapper .hero--text {
    top: 0;
    right: 0;
    transform: translate(50%, -20%);
  }
}
@media screen and (max-width: 767px) {
  .C_recruit--hero .img--wrapper .hero--text {
    top: 0;
    right: 0;
    transform: translate(0, -30%);
  }
}
.C_recruit--hero .img--wrapper .hero--text .hero--text--inner {
  display: flex;
  flex-direction: row-reverse;
}
@media screen and (min-width: 768px) {
  .C_recruit--hero .img--wrapper .hero--text .hero--text--inner {
    gap: clamp(15px, 1.5625vw, 25px);
  }
}
@media screen and (max-width: 767px) {
  .C_recruit--hero .img--wrapper .hero--text .hero--text--inner {
    gap: 5.1282051282vw;
  }
}
.C_recruit--hero .img--wrapper .hero--text .hero--text--inner .TX {
  writing-mode: vertical-rl;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .C_recruit--hero .img--wrapper .hero--text .hero--text--inner .TX {
    font-size: clamp(15px, 1.5625vw, 25px);
    letter-spacing: clamp(6px, 0.625vw, 10px);
    width: clamp(15px, 1.5625vw, 25px);
  }
}
@media screen and (max-width: 767px) {
  .C_recruit--hero .img--wrapper .hero--text .hero--text--inner .TX {
    font-size: 5.1282051282vw;
    letter-spacing: 2.0512820513vw;
    width: 5.1282051282vw;
  }
}
@media screen and (min-width: 768px) {
  .C_recruit--hero .hero--contents .text .TX {
    font-size: clamp(12px, 1.25vw, 20px);
    letter-spacing: clamp(-0.12px, -0.0125vw, -0.2px);
  }
}
@media screen and (max-width: 767px) {
  .C_recruit--hero .hero--contents .text .TX {
    font-size: 4.1025641026vw;
    letter-spacing: -0.041025641vw;
  }
}
@media screen and (min-width: 768px) {
  .C_recruit--contents {
    display: flex;
    flex-direction: column;
    gap: clamp(22.5px, 2.34375vw, 37.5px);
  }
}
@media screen and (max-width: 767px) {
  .C_recruit--contents {
    display: flex;
    flex-direction: column;
    gap: 15.3846153846vw;
  }
}
@media screen and (min-width: 768px) {
  .C_recruit--contents .item {
    display: flex;
    flex-direction: column;
    gap: clamp(3.75px, 0.390625vw, 6.25px);
  }
}
@media screen and (max-width: 767px) {
  .C_recruit--contents .item {
    display: flex;
    flex-direction: column;
    gap: 1.2820512821vw;
  }
}
@media screen and (max-width: 767px) {
  .C_recruit--contents .item .item--title {
    padding-inline: 1.7948717949vw;
  }
}
.C_recruit--contents .item .item--title .TL {
  color: #7C7C7C;
}
@media screen and (min-width: 768px) {
  .C_recruit--contents .item .item--title .TL {
    font-size: clamp(14.25px, 1.484375vw, 23.75px);
    letter-spacing: clamp(-0.1425px, -0.01484375vw, -0.2375px);
  }
}
@media screen and (max-width: 767px) {
  .C_recruit--contents .item .item--title .TL {
    font-size: 4.8717948718vw;
    letter-spacing: -0.0487179487vw;
  }
}
.C_recruit--contents .item .item--lists .list {
  border-bottom: solid #D6D6D6;
  display: flex;
}
@media screen and (min-width: 768px) {
  .C_recruit--contents .item .item--lists .list {
    border-bottom-width: clamp(0.75px, 0.078125vw, 1.25px);
    gap: clamp(7.5px, 0.78125vw, 12.5px);
    padding: clamp(11.25px, 1.171875vw, 18.75px) min(1.40625vw, 22.5px);
  }
}
@media screen and (max-width: 767px) {
  .C_recruit--contents .item .item--lists .list {
    border-bottom-width: 0.2564102564vw;
    flex-direction: column;
    gap: 3.8461538462vw;
    padding: 3.8461538462vw 4.6153846154vw;
  }
}
.C_recruit--contents .item .item--lists .list:first-child {
  border-top: solid #D6D6D6;
}
@media screen and (min-width: 768px) {
  .C_recruit--contents .item .item--lists .list:first-child {
    border-top-width: clamp(0.75px, 0.078125vw, 1.25px);
  }
}
@media screen and (max-width: 767px) {
  .C_recruit--contents .item .item--lists .list:first-child {
    border-top-width: 0.2564102564vw;
  }
}
@media screen and (min-width: 768px) {
  .C_recruit--contents .item .item--lists .list .list--title {
    width: clamp(82.5px, 8.59375vw, 137.5px);
    flex-shrink: 0;
  }
}
.C_recruit--contents .item .item--lists .list .list--title .TX {
  color: #292929;
  line-height: 162%;
}
@media screen and (min-width: 768px) {
  .C_recruit--contents .item .item--lists .list .list--title .TX {
    font-size: clamp(12px, 1.25vw, 20px);
    letter-spacing: clamp(1.2px, 0.125vw, 2px);
  }
}
@media screen and (max-width: 767px) {
  .C_recruit--contents .item .item--lists .list .list--title .TX {
    font-size: 4.1025641026vw;
    letter-spacing: 0.4102564103vw;
  }
}
.C_recruit--contents .item .item--lists .list .list--contents {
  width: 100%;
}
.C_recruit--contents .item .item--lists .list .list--contents .TX {
  color: #292929;
  line-height: 200%;
}
@media screen and (min-width: 768px) {
  .C_recruit--contents .item .item--lists .list .list--contents .TX {
    font-size: clamp(9.75px, 1.015625vw, 16.25px);
    letter-spacing: clamp(0.975px, 0.1015625vw, 1.625px);
  }
}
@media screen and (max-width: 767px) {
  .C_recruit--contents .item .item--lists .list .list--contents .TX {
    font-size: 3.3333333333vw;
    letter-spacing: 0.3333333333vw;
  }
}

/* -----------------------
  page-contact
----------------------- */
@media screen and (min-width: 768px) {
  .C_contact_form .C_contact {
    margin-top: clamp(56.25px, 5.859375vw, 93.75px);
  }
}
@media screen and (max-width: 767px) {
  .C_contact_form .C_contact {
    margin-top: 12.8205128205vw;
  }
}

/* -----------------------
  page-confirm
----------------------- */
@media screen and (min-width: 768px) {
  .C_contact_confirm .C_contact {
    margin-top: clamp(56.25px, 5.859375vw, 93.75px);
  }
}
@media screen and (max-width: 767px) {
  .C_contact_confirm .C_contact {
    margin-top: 10.2564102564vw;
  }
}

/* -----------------------
  page-complete
----------------------- */
@media screen and (max-width: 767px) {
  .contact_complete {
    padding-top: 33.8461538462vw !important;
  }
}
@media screen and (min-width: 768px) {
  .contact_complete .contact-wrap {
    padding-inline: clamp(150px, 15.625vw, 250px) !important;
  }
}
.contact_complete .contact_complete_content {
  background-color: #FFFFFF;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .contact_complete .contact_complete_content {
    padding: clamp(47.25px, 4.921875vw, 78.75px) clamp(149.25px, 15.546875vw, 248.75px);
  }
}
@media screen and (max-width: 767px) {
  .contact_complete .contact_complete_content {
    padding: 13.5897435897vw 2.3076923077vw 16.4102564103vw;
  }
}
@media screen and (min-width: 768px) {
  .contact_complete .contact_complete_content .TL {
    font-size: clamp(15px, 1.5625vw, 25px);
    letter-spacing: clamp(1.2px, 0.125vw, 2px);
    line-height: 1.4;
  }
}
@media screen and (max-width: 767px) {
  .contact_complete .contact_complete_content .TL {
    font-size: 4.6153846154vw;
    letter-spacing: 0.3692307692vw;
    line-height: 1.5;
  }
}
.contact_complete .contact_complete_content .TX {
  line-height: 1.87;
}
@media screen and (min-width: 768px) {
  .contact_complete .contact_complete_content .TX {
    font-size: clamp(12px, 1.25vw, 20px);
    margin-top: 2.34375vw;
  }
}
@media screen and (max-width: 767px) {
  .contact_complete .contact_complete_content .TX {
    font-size: 4.1025641026vw;
    margin-top: 5.1282051282vw;
  }
}

/* -----------------------
  C_example
----------------------- */
/* -----------------------
  C_contact_form
----------------------- */
@media screen and (min-width: 768px) {
  .C_contact_form li {
    padding-block: clamp(18.75px, 1.953125vw, 31.25px);
  }
}
@media screen and (max-width: 767px) {
  .C_contact_form li {
    padding-block: 5.8974358974vw;
  }
}
.C_contact_form li .title {
  display: flex;
  display: block;
}
@media screen and (min-width: 768px) {
  .C_contact_form li .title {
    align-items: flex-start;
    justify-content: space-between;
  }
}
@media screen and (max-width: 767px) {
  .C_contact_form li .title {
    align-items: flex-end;
  }
}
.C_contact_form li .title .form-s {
  background-color: #D77F3F;
  color: #FAFAFA;
  width: fit-content;
  height: fit-content;
}
@media screen and (min-width: 768px) {
  .C_contact_form li .title .form-s {
    font-size: clamp(12px, 1.25vw, 20px);
    letter-spacing: clamp(2.4px, 0.25vw, 4px);
    padding: clamp(0px, 0vw, 0px) clamp(5.25px, 0.546875vw, 8.75px);
  }
}
@media screen and (max-width: 767px) {
  .C_contact_form li .title .form-s {
    font-size: 4.1025641026vw;
    letter-spacing: 0.8205128205vw;
    padding: 0vw 1.7948717949vw;
    margin-left: 3.8461538462vw;
  }
}
.C_contact_form li .input-area {
  position: relative;
}
@media screen and (min-width: 768px) {
  .C_contact_form li .input-area {
    margin-left: clamp(32.25px, 3.359375vw, 53.75px);
    flex: 1;
  }
}
.C_contact_form li .input-area .form-TX {
  border: none;
  outline: none;
  background-color: #FFFFFF;
  font-family: "a-otf-ryumin-pr6n", serif;
  font-style: normal;
}
@media screen and (min-width: 768px) {
  .C_contact_form li .input-area .form-TX {
    padding: clamp(11.25px, 1.171875vw, 18.75px) clamp(15px, 1.5625vw, 25px);
  }
}
@media screen and (max-width: 767px) {
  .C_contact_form li .input-area .form-TX {
    padding: 2.5641025641vw 5.1282051282vw;
    font-size: 4.1025641026vw;
    letter-spacing: -0.041025641vw;
    margin-top: 1.7948717949vw;
  }
}
.C_contact_form li .input-area .form-TX.wpcf7-not-valid {
  background-color: rgba(215, 127, 63, 0.1);
}
.C_contact_form li .input-area .form-TX::placeholder {
  color: #9F9F9F;
}
@media screen and (min-width: 768px) {
  .C_contact_form li .input-area .postal input {
    width: clamp(84.75px, 8.828125vw, 141.25px);
    margin-inline: clamp(5.25px, 0.546875vw, 8.75px);
  }
}
@media screen and (max-width: 767px) {
  .C_contact_form li .input-area .postal input {
    width: 34.1025641026vw;
    margin-inline: 1.2820512821vw;
  }
}
@media screen and (min-width: 768px) {
  .C_contact_form li .input-area .form-TX.address {
    margin-top: clamp(14.25px, 1.484375vw, 23.75px);
  }
}
@media screen and (max-width: 767px) {
  .C_contact_form li .input-area .form-TX.address {
    margin-top: 3.3333333333vw;
  }
}
.C_contact_form li .input-area .wpcf7-not-valid-tip {
  color: #D77F3F;
  position: absolute;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .C_contact_form li .input-area .wpcf7-not-valid-tip {
    font-size: clamp(12px, 1.25vw, 20px);
    letter-spacing: clamp(-0.12px, -0.0125vw, -0.2px);
  }
}
@media screen and (max-width: 767px) {
  .C_contact_form li .input-area .wpcf7-not-valid-tip {
    font-size: 4.1025641026vw;
    letter-spacing: -0.041025641vw;
  }
}
.C_contact_form li .input-area textarea {
  resize: none;
}
@media screen and (min-width: 768px) {
  .C_contact_form li .input-area textarea {
    height: clamp(172.5px, 17.96875vw, 287.5px);
  }
}
@media screen and (max-width: 767px) {
  .C_contact_form li .input-area textarea {
    height: 58.9743589744vw;
  }
}
.C_contact_form li.policy .agree-content {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .C_contact_form li.policy .agree-content {
    width: 100%;
    margin-top: clamp(22.5px, 2.34375vw, 37.5px);
  }
}
@media screen and (max-width: 767px) {
  .C_contact_form li.policy .agree-content {
    margin-top: 7.6923076923vw;
  }
}
.C_contact_form li.policy .agree-content input[type=checkbox] {
  position: relative;
  background-color: #FFFFFF;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
@media screen and (min-width: 768px) {
  .C_contact_form li.policy .agree-content input[type=checkbox] {
    width: clamp(22.5px, 2.34375vw, 37.5px);
    height: clamp(22.5px, 2.34375vw, 37.5px);
    border: clamp(0.75px, 0.078125vw, 1.25px) solid #D9D9D9;
    vertical-align: clamp(-3.75px, -0.390625vw, -6.25px);
  }
}
@media screen and (max-width: 767px) {
  .C_contact_form li.policy .agree-content input[type=checkbox] {
    width: 5.8974358974vw;
    height: 5.8974358974vw;
    border: 0.2564102564vw solid #D9D9D9;
    vertical-align: -2.5641025641vw;
  }
}
.C_contact_form li.policy .agree-content input[type=checkbox]:checked {
  background-color: #D77F3F;
}
.C_contact_form li.policy .agree-content input[type=checkbox]:checked:before {
  position: absolute;
  content: "";
}
@media screen and (min-width: 768px) {
  .C_contact_form li.policy .agree-content input[type=checkbox]:checked:before {
    top: clamp(1.5px, 0.15625vw, 2.5px);
    left: clamp(7.5px, 0.78125vw, 12.5px);
    transform: rotate(35deg);
    width: clamp(5.25px, 0.546875vw, 8.75px);
    height: clamp(13.5px, 1.40625vw, 22.5px);
    border-right: clamp(1.5px, 0.15625vw, 2.5px) solid #FFFFFF;
    border-bottom: clamp(1.5px, 0.15625vw, 2.5px) solid #FFFFFF;
  }
}
@media screen and (max-width: 767px) {
  .C_contact_form li.policy .agree-content input[type=checkbox]:checked:before {
    top: 0.2564102564vw;
    left: 1.7948717949vw;
    transform: rotate(35deg);
    width: 1.5384615385vw;
    height: 3.5897435897vw;
    border-right: 0.5128205128vw solid #FFFFFF;
    border-bottom: 0.5128205128vw solid #FFFFFF;
  }
}
@media screen and (min-width: 768px) {
  .C_contact_form li.policy .agree-content span {
    font-size: clamp(15px, 1.5625vw, 25px);
    letter-spacing: clamp(-0.15px, -0.015625vw, -0.25px);
  }
}
@media screen and (max-width: 767px) {
  .C_contact_form li.policy .agree-content span {
    font-size: 4.1025641026vw;
    letter-spacing: -0.041025641vw;
  }
}
.C_contact_form li.policy .agree-content .wpcf7-not-valid-tip {
  color: #D77F3F;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .C_contact_form li.policy .agree-content .wpcf7-not-valid-tip {
    font-size: clamp(12px, 1.25vw, 20px);
    letter-spacing: clamp(-0.12px, -0.0125vw, -0.2px);
  }
}
@media screen and (max-width: 767px) {
  .C_contact_form li.policy .agree-content .wpcf7-not-valid-tip {
    font-size: 4.1025641026vw;
    letter-spacing: -0.041025641vw;
  }
}

/* -----------------------
  C_contact
----------------------- */
.main__contact {
  position: relative;
}
@media screen and (min-width: 768px) {
  .main__contact {
    padding-block: clamp(120px, 12.5vw, 200px) clamp(165px, 17.1875vw, 275px);
  }
}
@media screen and (max-width: 767px) {
  .main__contact {
    padding-block: 25.641025641vw 33.3333333333vw;
  }
}
.main__contact .C_gra-vert-title {
  position: absolute;
  white-space: nowrap;
  top: 0;
  left: 0;
}
@media screen and (min-width: 768px) {
  .main__contact .C_gra-vert-title {
    top: clamp(19.5px, 2.03125vw, 32.5px);
    left: clamp(77.25px, 8.046875vw, 128.75px);
  }
}
@media screen and (max-width: 767px) {
  .main__contact .C_gra-vert-title {
    top: -42.0512820513vw;
    left: 5.1282051282vw;
  }
}
@media screen and (max-width: 767px) {
  .main__contact .C_gra-vert-title .TL {
    font-size: 7.1794871795vw;
  }
}
@media screen and (min-width: 768px) {
  .main__contact .contact-wrap {
    padding-inline: clamp(200.25px, 20.859375vw, 333.75px);
  }
}
@media screen and (max-width: 767px) {
  .main__contact .contact-wrap {
    padding-inline: 5.1282051282vw;
  }
}
.main__contact .contact-wrap .contact-TL {
  line-height: 1.75;
}
@media screen and (min-width: 768px) {
  .main__contact .contact-wrap .contact-TL {
    text-align: center;
    font-size: clamp(12px, 1.25vw, 20px);
    letter-spacing: clamp(0.96px, 0.1vw, 1.6px);
  }
}
@media screen and (max-width: 767px) {
  .main__contact .contact-wrap .contact-TL {
    font-size: 4.1025641026vw;
    letter-spacing: 0.3282051282vw;
  }
}

@media screen and (min-width: 768px) {
  .C_contact li {
    padding-inline: clamp(3.75px, 0.390625vw, 6.25px);
    border-bottom: clamp(0.75px, 0.078125vw, 1.25px) solid #D6D6D6;
    display: flex;
  }
}
@media screen and (max-width: 767px) {
  .C_contact li {
    padding-inline: 4.6153846154vw;
    border-bottom: 0.2564102564vw solid #D6D6D6;
  }
}
@media screen and (min-width: 768px) {
  .C_contact li .title {
    width: clamp(121.5px, 12.65625vw, 202.5px);
    font-size: clamp(15px, 1.5625vw, 25px);
    letter-spacing: clamp(-0.15px, -0.015625vw, -0.25px);
  }
}
@media screen and (max-width: 767px) {
  .C_contact li .title {
    font-size: 5.1282051282vw;
    letter-spacing: -0.0512820513vw;
  }
}
.C_contact li .input-area {
  position: relative;
}
@media screen and (min-width: 768px) {
  .C_contact li .input-area {
    margin-left: clamp(32.25px, 3.359375vw, 53.75px);
    flex: 1;
  }
}
.C_contact li .input-area .form-TX {
  width: 100%;
  box-sizing: border-box;
}
@media screen and (min-width: 768px) {
  .C_contact li .input-area .form-TX {
    font-size: clamp(15px, 1.5625vw, 25px);
    letter-spacing: clamp(-0.15px, -0.015625vw, -0.25px);
  }
}
.C_contact li .input-area .postal {
  display: flex;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .C_contact li .input-area .postal .postal-TX {
    font-size: clamp(15px, 1.5625vw, 25px);
    letter-spacing: clamp(-0.075px, -0.0078125vw, -0.125px);
  }
}
@media screen and (max-width: 767px) {
  .C_contact li .input-area .postal .postal-TX {
    font-size: 5.1282051282vw;
    letter-spacing: -0.0256410256vw;
  }
}
.C_contact li.message {
  position: relative;
}
@media screen and (min-width: 768px) {
  .C_contact li.message {
    padding-bottom: clamp(26.25px, 2.734375vw, 43.75px);
  }
}
@media screen and (min-width: 768px) {
  .C_contact li.message .form-TX {
    line-height: 1.8;
  }
}
@media screen and (max-width: 767px) {
  .C_contact li.message .form-TX {
    line-height: 2;
  }
}
.C_contact li.message .down {
  opacity: 1 !important;
  transform: none !important;
  position: absolute;
  bottom: 0;
  right: 0;
}
@media screen and (min-width: 768px) {
  .C_contact li.message .down {
    font-size: clamp(9.75px, 1.015625vw, 16.25px);
    bottom: clamp(15px, 1.5625vw, 25px);
  }
}
@media screen and (max-width: 767px) {
  .C_contact li.message .down {
    font-size: 3.3333333333vw;
    right: 7.6923076923vw;
  }
}
@media screen and (min-width: 768px) {
  .C_contact li.message .wpcf7-not-valid-tip {
    bottom: -100%;
  }
}
@media screen and (min-width: 768px) {
  .C_contact li.policy {
    flex-wrap: wrap;
  }
}
.C_contact li.policy .policy-content .form-TX {
  overflow-y: scroll;
}
@media screen and (min-width: 768px) {
  .C_contact li.policy .policy-content .form-TX {
    height: clamp(130.5px, 13.59375vw, 217.5px);
  }
}
@media screen and (max-width: 767px) {
  .C_contact li.policy .policy-content .form-TX {
    height: 58.9743589744vw;
  }
}
@media screen and (min-width: 768px) {
  .C_contact li.policy .policy-content .form-TX .policy-TX {
    font-size: clamp(9.75px, 1.015625vw, 16.25px);
    letter-spacing: clamp(-0.0975px, -0.01015625vw, -0.1625px);
    line-height: 1.8;
  }
}
@media screen and (max-width: 767px) {
  .C_contact li.policy .policy-content .form-TX .policy-TX {
    font-size: 3.3333333333vw;
    letter-spacing: -0.0333333333vw;
    line-height: 2;
  }
}
.C_contact li.policy .agree-content {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .C_contact li.policy .agree-content {
    width: 100%;
    margin-top: clamp(22.5px, 2.34375vw, 37.5px);
  }
}
@media screen and (max-width: 767px) {
  .C_contact li.policy .agree-content {
    margin-top: 7.6923076923vw;
  }
}
.C_contact li.policy .agree-content input[type=checkbox] {
  position: relative;
  background-color: #FFFFFF;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
@media screen and (min-width: 768px) {
  .C_contact li.policy .agree-content input[type=checkbox] {
    width: clamp(22.5px, 2.34375vw, 37.5px);
    height: clamp(22.5px, 2.34375vw, 37.5px);
    border: clamp(0.75px, 0.078125vw, 1.25px) solid #D9D9D9;
    vertical-align: clamp(-3.75px, -0.390625vw, -6.25px);
  }
}
@media screen and (max-width: 767px) {
  .C_contact li.policy .agree-content input[type=checkbox] {
    width: 5.8974358974vw;
    height: 5.8974358974vw;
    border: 0.2564102564vw solid #D9D9D9;
    vertical-align: -2.5641025641vw;
  }
}
.C_contact li.policy .agree-content input[type=checkbox]:checked {
  background-color: #D77F3F;
}
.C_contact li.policy .agree-content input[type=checkbox]:checked:before {
  position: absolute;
  content: "";
}
@media screen and (min-width: 768px) {
  .C_contact li.policy .agree-content input[type=checkbox]:checked:before {
    top: clamp(1.5px, 0.15625vw, 2.5px);
    left: clamp(7.5px, 0.78125vw, 12.5px);
    transform: rotate(35deg);
    width: clamp(5.25px, 0.546875vw, 8.75px);
    height: clamp(13.5px, 1.40625vw, 22.5px);
    border-right: clamp(1.5px, 0.15625vw, 2.5px) solid #FFFFFF;
    border-bottom: clamp(1.5px, 0.15625vw, 2.5px) solid #FFFFFF;
  }
}
@media screen and (max-width: 767px) {
  .C_contact li.policy .agree-content input[type=checkbox]:checked:before {
    top: 0.2564102564vw;
    left: 1.7948717949vw;
    transform: rotate(35deg);
    width: 1.5384615385vw;
    height: 3.5897435897vw;
    border-right: 0.5128205128vw solid #FFFFFF;
    border-bottom: 0.5128205128vw solid #FFFFFF;
  }
}
@media screen and (min-width: 768px) {
  .C_contact li.policy .agree-content span {
    font-size: clamp(15px, 1.5625vw, 25px);
    letter-spacing: clamp(-0.15px, -0.015625vw, -0.25px);
  }
}
@media screen and (max-width: 767px) {
  .C_contact li.policy .agree-content span {
    font-size: 4.1025641026vw;
    letter-spacing: -0.041025641vw;
  }
}
.C_contact li:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.btn-area {
  display: flex;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .btn-area {
    margin-top: clamp(45px, 4.6875vw, 75px);
  }
}
@media screen and (max-width: 767px) {
  .btn-area {
    margin-top: 7.6923076923vw;
  }
}
.btn-area .submit {
  transition: all 0.3s ease;
}
@media screen and (min-width: 768px) {
  .btn-area .submit {
    width: clamp(126.75px, 13.203125vw, 211.25px);
    padding-block: clamp(9.75px, 1.015625vw, 16.25px);
    background-color: #FFFFFF;
    border: clamp(0.75px, 0.078125vw, 1.25px) solid #1A1919;
    color: #1A1919;
  }
}
@media screen and (max-width: 767px) {
  .btn-area .submit {
    width: 43.3333333333vw;
    padding-block: 3.5897435897vw;
    background-color: #FFFFFF;
    border: 0.2564102564vw solid #1A1919;
    color: #1A1919;
  }
}
.btn-area .submit .btn-TX {
  text-align: center;
  font-family: "a-otf-ryumin-pr6n", serif;
  font-style: normal;
}
@media screen and (min-width: 768px) {
  .btn-area .submit .btn-TX {
    font-size: clamp(15px, 1.5625vw, 25px);
    letter-spacing: clamp(4.5px, 0.46875vw, 7.5px);
  }
}
@media screen and (max-width: 767px) {
  .btn-area .submit .btn-TX {
    font-size: 5.1282051282vw;
    letter-spacing: 1.5384615385vw;
  }
}
.btn-area .submit:hover {
  background-color: #1A1919;
  transition: all 0.3s ease;
}
.btn-area .submit:hover .btn-TX {
  color: #FFFFFF;
}
.btn-area .back {
  text-align: center;
  font-family: "a-otf-ryumin-pr6n", serif;
  font-style: normal;
}
@media screen and (min-width: 768px) {
  .btn-area .back {
    font-size: clamp(15px, 1.5625vw, 25px);
    letter-spacing: clamp(4.5px, 0.46875vw, 7.5px);
  }
}
@media screen and (max-width: 767px) {
  .btn-area .back {
    font-size: 5.1282051282vw;
    letter-spacing: 1.5384615385vw;
  }
}

.wpcf7-response-output {
  display: none;
}

.grecaptcha-badge {
  visibility: hidden;
}

/* -----------------------
  C_contact_confirm
----------------------- */
.C_contact_confirm li {
  align-items: center;
}
@media screen and (min-width: 768px) {
  .C_contact_confirm li {
    padding: clamp(22.5px, 2.34375vw, 37.5px) clamp(18.75px, 1.953125vw, 31.25px) clamp(22.5px, 2.34375vw, 37.5px) clamp(6px, 0.625vw, 10px);
  }
}
@media screen and (max-width: 767px) {
  .C_contact_confirm li {
    padding: 5.641025641vw 6.4102564103vw 5.641025641vw 4.6153846154vw;
  }
}
@media screen and (max-width: 767px) {
  .C_contact_confirm .input-area {
    margin-top: 7.6923076923vw;
  }
}
@media screen and (max-width: 767px) {
  .C_contact_confirm .input-area .form-TX {
    font-size: 5.1282051282vw;
    letter-spacing: 0.2564102564vw;
  }
}
@media screen and (min-width: 768px) {
  .C_contact_confirm .input-area .postal {
    margin-left: clamp(-15px, -1.5625vw, -25px);
  }
}
@media screen and (min-width: 768px) {
  .C_contact_confirm .input-area .postal .form-TX.postal01 {
    width: clamp(37.5px, 3.90625vw, 62.5px);
    margin-inline: clamp(24px, 2.5vw, 40px) clamp(33.75px, 3.515625vw, 56.25px);
  }
}
@media screen and (max-width: 767px) {
  .C_contact_confirm .input-area .postal .form-TX.postal01 {
    width: 8.9743589744vw;
    margin-inline: 3.0769230769vw;
  }
}
@media screen and (min-width: 768px) {
  .C_contact_confirm .input-area .postal .form-TX.postal02 {
    width: clamp(32.25px, 3.359375vw, 53.75px);
    margin-left: clamp(37.5px, 3.90625vw, 62.5px);
  }
}
@media screen and (max-width: 767px) {
  .C_contact_confirm .input-area .postal .form-TX.postal02 {
    width: 12.0512820513vw;
    margin-left: 3.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .C_contact_confirm .input-area .address {
    margin-top: clamp(13.5px, 1.40625vw, 22.5px);
  }
}
@media screen and (max-width: 767px) {
  .C_contact_confirm .input-area .address {
    margin-top: 6.4102564103vw;
  }
}
@media screen and (max-width: 767px) {
  .C_contact_confirm .input-area.policy-content {
    margin-top: 1.2820512821vw;
  }
}
.C_contact_confirm .input-area.policy-content .form-TX {
  background-color: #FAFAFA;
}
@media screen and (min-width: 768px) {
  .C_contact_confirm .input-area.policy-content .form-TX {
    padding: clamp(11.25px, 1.171875vw, 18.75px) clamp(15px, 1.5625vw, 25px);
  }
}
@media screen and (max-width: 767px) {
  .C_contact_confirm .input-area.policy-content .form-TX {
    padding: 2.5641025641vw 5.1282051282vw;
  }
}
@media screen and (min-width: 768px) {
  .C_contact_confirm .btn-area {
    gap: clamp(150px, 15.625vw, 250px);
  }
}
@media screen and (max-width: 767px) {
  .C_contact_confirm .btn-area {
    flex-direction: column;
    align-items: center;
    gap: 5.1282051282vw;
  }
}
.C_contact_confirm .btn-area .back {
  border: none;
  background-color: #BCBCBC;
}

/* -----------------------
  404error
----------------------- */
@media screen and (min-width: 768px) {
  .error-404-wrap {
    padding: clamp(120px, 12.5vw, 200px) clamp(150px, 15.625vw, 250px);
  }
}
@media screen and (max-width: 767px) {
  .error-404-wrap {
    padding: 25.641025641vw 5.1282051282vw;
  }
}
.error-404-wrap .error-404-TX {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .error-404-wrap .error-404-TX {
    font-size: clamp(22.5px, 2.34375vw, 37.5px);
  }
}
@media screen and (max-width: 767px) {
  .error-404-wrap .error-404-TX {
    font-size: 4.6153846154vw;
  }
}

/* -----------------------
  front
----------------------- */
@media screen and (min-width: 768px) {
  .main__front {
    padding-block: clamp(97.5px, 10.15625vw, 162.5px) 0;
  }
}
@media screen and (max-width: 767px) {
  .main__front {
    padding-block: 7.6923076923vw 0;
  }
}
@media screen and (min-width: 768px) {
  .main__front .section_front_about-us {
    margin-bottom: clamp(75px, 7.8125vw, 125px);
  }
}
@media screen and (max-width: 767px) {
  .main__front .section_front_about-us {
    margin-bottom: 25.641025641vw;
  }
}
@media screen and (min-width: 768px) {
  .main__front .section_front_example {
    margin-bottom: clamp(178.5px, 18.59375vw, 297.5px);
  }
}
@media screen and (max-width: 767px) {
  .main__front .section_front_example {
    margin-bottom: 25.641025641vw;
  }
}
@media screen and (min-width: 768px) {
  .main__front .section_front_to-links {
    margin-bottom: clamp(159.75px, 16.640625vw, 266.25px);
  }
}
@media screen and (max-width: 767px) {
  .main__front .section_front_to-links {
    margin-bottom: 45.641025641vw;
  }
}

/* -----------------------
  about-us
----------------------- */
@media screen and (min-width: 768px) {
  .main__about-us {
    padding-block: clamp(168.75px, 17.578125vw, 281.25px) 0;
  }
}
@media screen and (max-width: 767px) {
  .main__about-us {
    padding-block: 41.0256410256vw 0;
  }
}
@media screen and (min-width: 768px) {
  .main__about-us .section__wrapper .main__title {
    transform: translateY(-80%);
    height: clamp(187.5px, 19.53125vw, 312.5px);
  }
}
@media screen and (max-width: 767px) {
  .main__about-us .section__wrapper .main__title {
    transform: translateY(-160%);
    height: 40.2564102564vw;
  }
}
@media screen and (min-width: 768px) {
  .main__about-us .section_about-us_message {
    margin-bottom: clamp(120px, 12.5vw, 200px);
  }
}
@media screen and (max-width: 767px) {
  .main__about-us .section_about-us_message {
    padding-inline: 5.1282051282vw;
    margin-bottom: 25.641025641vw;
  }
}
@media screen and (min-width: 768px) {
  .main__about-us .section_about-us_summary {
    margin-bottom: clamp(90px, 9.375vw, 150px);
  }
}
@media screen and (max-width: 767px) {
  .main__about-us .section_about-us_summary {
    padding-inline: 5.1282051282vw;
    margin-bottom: 41.0256410256vw;
  }
}

/* -----------------------
  business
----------------------- */
@media screen and (min-width: 768px) {
  .main__business {
    padding-block: clamp(121.5px, 12.65625vw, 202.5px) clamp(168.75px, 17.578125vw, 281.25px);
  }
}
@media screen and (max-width: 767px) {
  .main__business {
    padding-block: 42.3076923077vw 52.8205128205vw;
  }
}
.main__business .section__wrapper .main__title {
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .main__business .section__wrapper .main__title {
    transform: translateY(-50%);
  }
}
@media screen and (max-width: 1024px) and (min-width: 767px) {
  .main__business .section__wrapper .main__title {
    transform: translateY(-60%);
  }
}
@media screen and (max-width: 767px) {
  .main__business .section__wrapper .main__title {
    transform: translateY(-165%);
  }
}
@media screen and (min-width: 768px) {
  .main__business .section_business_items {
    margin-bottom: clamp(105.75px, 11.015625vw, 176.25px);
  }
}
@media screen and (max-width: 767px) {
  .main__business .section_business_items {
    margin-bottom: 25.641025641vw;
  }
}
@media screen and (max-width: 767px) {
  .main__business .section_business_area {
    padding-inline: 5.1282051282vw;
  }
}

/* -----------------------
  example
----------------------- */
@media screen and (min-width: 768px) {
  .main__example {
    padding-block: clamp(22.5px, 2.34375vw, 37.5px) clamp(168.75px, 17.578125vw, 281.25px);
  }
}
@media screen and (max-width: 767px) {
  .main__example {
    padding-block: 25.641025641vw 34.8717948718vw;
  }
}
.main__example .section__wrapper .main__title {
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .main__example .section__wrapper .main__title {
    transform: translateY(-125%);
  }
}
@media screen and (min-width: 768px) {
  .main__example .section_example {
    display: flex;
    flex-direction: column;
    gap: clamp(75px, 7.8125vw, 125px);
  }
}
@media screen and (max-width: 767px) {
  .main__example .section_example {
    display: flex;
    flex-direction: column;
    gap: 50.5128205128vw;
    padding-inline: 5.1282051282vw;
  }
}

/* -----------------------
  recruit
----------------------- */
@media screen and (min-width: 768px) {
  .main__recruit {
    padding-block: clamp(120px, 12.5vw, 200px) clamp(168.75px, 17.578125vw, 281.25px);
  }
}
@media screen and (max-width: 767px) {
  .main__recruit {
    padding-block: 41.0256410256vw 34.8717948718vw;
  }
}
.main__recruit .section__wrapper .main__title {
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .main__recruit .section__wrapper .main__title {
    transform: translateY(-50%);
  }
}
@media screen and (max-width: 767px) {
  .main__recruit .section__wrapper .main__title {
    transform: translateY(-160%);
  }
}
@media screen and (max-width: 767px) {
  .main__recruit .section__recruit {
    padding-inline: 5.1282051282vw;
  }
}

/* -----------------------
  anime
----------------------- */
.imgAnime > * {
  opacity: 0;
}
.imgAnime.show {
  position: relative;
}
.imgAnime.show > * {
  opacity: 0;
  animation: imgAnime 1.1s ease-in-out 0.5s forwards;
}
@keyframes imgAnime {
  40% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.imgAnime.show::after {
  content: "";
  display: block;
  width: 0%;
  height: 100%;
  background-color: rgb(0, 0, 0);
  position: absolute;
  top: 0;
  z-index: 2;
  animation: imgAnime-filter 1.1s ease-in-out 0.5s forwards;
}
@keyframes imgAnime-filter {
  0% {
    width: 0%;
    left: 0;
  }
  40% {
    width: 100%;
    left: 0;
  }
  60% {
    width: 100%;
    left: 0;
  }
  100% {
    width: 0%;
    left: 100%;
  }
}

.right {
  opacity: 0;
  transform: translateX(-100%);
}
.right.show {
  animation: right 0.8s ease 0.5s forwards;
}
@keyframes right {
  0% {
    opacity: 0;
    transform: translateX(-100%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

.hover-opa {
  transition: 0.3s;
}
.hover-opa:hover {
  opacity: 0.6;
}

.hover-scale {
  transition: 0.3s;
}
.hover-scale:hover {
  transform: scale(1.05);
}

.up {
  opacity: 0;
  transform: translateY(100%);
}
.up.show {
  animation: up 0.5s ease forwards;
}
@keyframes up {
  0% {
    opacity: 0;
    transform: translateY(100%);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.down {
  opacity: 0;
  transform: translateY(-100%);
}
.down.show {
  animation: down ease forwards;
}
@keyframes down {
  0% {
    opacity: 0;
    transform: translateY(-100%);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.left {
  opacity: 0;
  transform: translateX(100%);
}
.left.show {
  animation: left 0.8s ease forwards;
}
@keyframes left {
  0% {
    opacity: 0;
    transform: translateX(100%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

.pop {
  opacity: 0;
  transform: scale(0.5);
}
.pop.show {
  animation: pop ease forwards;
}
@keyframes pop {
  0% {
    opacity: 0;
    transform: scale(0.5);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.loadUp {
  opacity: 0;
  transform: translateY(100%);
}
.loadUp.show {
  animation: loadUp ease forwards;
}
@keyframes loadUp {
  0% {
    opacity: 0;
    transform: translateY(100%);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.loadDown {
  opacity: 0;
  transform: translateY(-100%);
}
.loadDown.show {
  animation: loadDown ease forwards;
}
@keyframes loadDown {
  0% {
    opacity: 0;
    transform: translateY(-100%);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.loadLeft {
  opacity: 0;
  transform: translateX(100%);
}
.loadLeft.show {
  animation: loadLeft ease forwards;
}
@keyframes loadLeft {
  0% {
    opacity: 0;
    transform: translateX(100%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

.loadRight {
  opacity: 0;
  transform: translateX(-100%);
}
.loadRight.show {
  animation: loadRight ease forwards;
}
@keyframes loadRight {
  0% {
    opacity: 0;
    transform: translateX(-100%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

.loadPop {
  opacity: 0;
  transform: scale(0.5);
}
.loadPop.show {
  animation: loadPop ease forwards;
}
@keyframes loadPop {
  0% {
    opacity: 0;
    transform: scale(0.5);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.delay-01 {
  animation-delay: 0.1s !important;
}

.delay-02 {
  animation-delay: 0.2s !important;
}

.delay-03 {
  animation-delay: 0.3s !important;
}

.delay-04 {
  animation-delay: 0.4s !important;
}

.delay-05 {
  animation-delay: 0.5s !important;
}

.delay-06 {
  animation-delay: 0.6s !important;
}

.delay-07 {
  animation-delay: 0.7s !important;
}

.delay-08 {
  animation-delay: 0.8s !important;
}

.delay-09 {
  animation-delay: 0.9s !important;
}

.delay-10 {
  animation-delay: 1s !important;
}

.delay-15 {
  animation-delay: 1.5s !important;
}

.duration-01 {
  animation-duration: 0.1s !important;
}

.duration-02 {
  animation-duration: 0.2s !important;
}

.duration-03 {
  animation-duration: 0.3s !important;
}

.duration-04 {
  animation-duration: 0.4s !important;
}

.duration-05 {
  animation-duration: 0.5s !important;
}

.duration-06 {
  animation-duration: 0.6s !important;
}

.duration-07 {
  animation-duration: 0.7s !important;
}

.duration-08 {
  animation-duration: 0.8s !important;
}

.duration-09 {
  animation-duration: 0.9s !important;
}

.duration-10 {
  animation-duration: 1s !important;
}

.duration-15 {
  animation-duration: 1.5s !important;
}

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