@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Noto+Sans+JP:wght@100..900&family=Oswald:wght@200..700&display=swap");

:root {
  --font-fam: "noto sans JP";
  --theme-color: #fff;
  --font-color: #111;
  --mont: "Montserrat";
  --oswald: "Oswald";
}

body,
input,
textarea {
  font-family: var(--font-fam), sans-serif;
  color: var(--font-color);
}

body {
  width: 100%;
  overflow-x: hidden;
  position: relative;
  background-color: #F5F1E8;
  line-height: 1.8;
  font-size: clamp(1.2rem, 1.33vw, 1.8rem);
  color: #323038;
}

img {
  width: 100%;
}

.br-sp {
  display: block;
}

@media (min-width: 1024px) {
  .br-sp {
    display: none;
  }
}

.br-pc {
  display: none;
}

@media (min-width: 1024px) {
  .br-pc {
    display: block;
  }
}

.header {
  background-color: rgba(245, 241, 232, 0.8);
  position: relative;
}

@media (min-width: 1024px) {
  .header {
    height: clamp(7rem, 5.46vw, 8rem);
    display: flex;
    align-items: center;
    position: sticky;
    top: 0;
    left: 0;
    padding-right: clamp(26rem, 20.31vw, 31rem);
    z-index: 999;
  }
}

.header .logo {
  width: clamp(12.1rem, 9.45vw, 23rem);
  margin-left: -10px;
}

@media (min-width: 1024px) {
  .header .logo {
    width: clamp(20rem, 13.33vw, 23rem);
    margin-top: 5px;
    position: absolute;
    left: 0;
    margin-left: 0;
    z-index: 10;
  }
}

.header__inner {
  padding-block: clamp(1.2rem, 0.93vw, 2.4rem);
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-inline: 13px;
  overflow: clip;
}

@media (min-width: 1024px) {
  .header__inner {
    width: 100%;
    margin-inline: auto;
  }
}

.header__nav {
  display: none;
  position: fixed;
  z-index: 990;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #323038;
  padding-block: 63px;
  padding-inline: 20px;
  transition: top 0.5s;
}

@media (min-width: 1024px) {
  .header__nav {
    display: block !important;
    position: static;
    background-color: transparent;
    padding: 0;
    z-index: 0;
  }
}

@media (max-width: 1023px) {
  .header__nav.active {
    top: 0%;
  }
}

.header__nav--link {
  display: flex;
  flex-direction: column;
}

@media (min-width: 1024px) {
  .header__nav--link {
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
    gap: clamp(3rem, 2.92vw, 6.5rem);
  }
}

.header__nav--link li {
  border-top: solid 1px #DB5D11;
}

@media (min-width: 1024px) {
  .header__nav--link li {
    border: none;
  }
}

.header__nav--link li a {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: clamp(1.5rem, 1.17vw, 1.6rem);
  font-weight: 500;
  padding-block: 16px;
}

@media (min-width: 1024px) {
  .header__nav--link li a {
    color: #323038;
    padding: 0;
    transition: color 0.3s;
  }

  .header__nav--link li a:hover {
    color: #DB5D11;
  }
}

.header__nav--btn_sp {
  padding-block: 19px;
  border-block: solid 1px #DB5D11;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding-inline: 20px;
}

@media (min-width: 1024px) {
  .header__nav--btn_sp {
    display: none;
  }
}

.header__nav--btn_sp li a {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--btn-color);
  color: #fff;
  font-size: 1.8rem;
  font-weight: bold;
  border-radius: 10px;
  height: 60px;
  position: relative;
}

.header__nav--btn_sp li a::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.header__nav--btn_sp li a::after {
  content: "";
  display: block;
  width: 11px;
  height: 12px;
  border-left: solid 11px #fff;
  border-top: solid 6px transparent;
  border-bottom: solid 6px transparent;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
}

.header__nav--btn_sp li.for_home {
  --btn-color: #D5355B;
}

.header__nav--btn_sp li.for_home a::before {
  background: url(../img/icon/icon-house.svg) no-repeat;
  background-size: 100%;
  width: 42px;
  height: 30px;
  min-width: 42px;
  min-height: 30px;
  left: 18px;
}

.header__nav--btn_sp li.for_biz {
  --btn-color: #436ACB;
}

.header__nav--btn_sp li.for_biz a::before {
  background: url(../img/icon/icon-biz.svg) no-repeat;
  background-size: 100%;
  width: 36px;
  height: 40px;
  min-width: 36px;
  min-height: 40px;
  left: 22px;
}

.header__nav .btn {
  width: calc(100% - 40px);
  height: 60px;
  margin-inline: auto;
  margin-top: 19px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  background-color: #C20F0F;
  border-radius: 10px;
  font-size: 1.8rem;
  font-weight: bold;
}

@media (min-width: 1024px) {
  .header__nav .btn {
    margin-top: 0;
    position: absolute;
    top: 0;
    right: 0;
    width: clamp(22rem, 17.18vw, 26rem);
    height: clamp(7rem, 5.46vw, 8rem);
    border-radius: 0;
    border-bottom-left-radius: clamp(1rem, 0.78vw, 2rem);
    transition: background-color 0.3s;
  }

  .header__nav .btn:hover {
    background-color: #323038;
  }
}

.header__nav .btn span {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 26px;
  margin-left: -20px;
  margin-top: 2px;
}

@media (min-width: 1024px) {
  .header__nav .btn span {
    margin: 0;
    gap: clamp(1rem, 0.78vw, 1.5rem);
  }
}

.header__nav .btn span::before {
  content: "";
  display: block;
  background: url(../img/icon/icon-mal.png) no-repeat;
  background-size: 100%;
  width: 24px;
  height: 20.5px;
  min-width: 24px;
  min-height: 20.5px;
  margin-top: 5px;
}

.menu {
  width: 24px;
  height: 16px;
  position: relative;
  cursor: pointer;
  z-index: 999;
  position: fixed;
  right: 13px;
  top: 19px;
}

@media (min-width: 1024px) {
  .menu {
    display: none;
  }
}

.menu span {
  display: block;
  width: 100%;
  height: 1px;
  background-color: #DB5D11;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  transition: opacity 0.5s, transform 0.5s;
}

.menu span:nth-of-type(1) {
  top: 0;
}

.menu span:nth-of-type(2) {
  top: 50%;
  opacity: 1;
}

.menu span:nth-of-type(3) {
  top: 100%;
}

.menu.active span:nth-of-type(1) {
  top: 50%;
  transform: translateX(-50%) rotate(45deg);
}

.menu.active span:nth-of-type(2) {
  top: 50%;
  transform: translateX(100%);
  opacity: 0;
}

.menu.active span:nth-of-type(3) {
  top: 50%;
  transform: translateX(-50%) rotate(-45deg);
}

.footer {
  margin-top: clamp(6rem, 7.81vw, 15rem);
  background-color: #DB5D11;
}

.footer__inner {
  padding-block: clamp(2.2rem, 2.14vw, 4.8rem);
  width: 100%;
  text-align: center;
  color: #fff;
}

@media (min-width: 1024px) {
  .footer__inner {
    width: min(92%, 1200px);
    margin-inline: auto;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 35px;
    text-align: left;
  }
}

.footer__logo {
  width: clamp(22.2rem, 21.67vw, 29rem);
  display: block;
  margin-inline: auto;
}

@media (min-width: 1024px) {
  .footer__logo {
    margin-left: 0;
  }
}

.footer__detail {
  margin-top: 12px;
}

@media (min-width: 1024px) {
  .footer__detail {
    width: 50%;
    margin-top: 0;
  }
}

.footer__detail strong {
  font-size: clamp(1.6rem, 1.56vw, 2rem);
}

.footer__detail p {
  font-size: clamp(1.2rem, 1.56vw, 1.6rem);
}

.footer .copy {
  width: 100%;
  height: 61px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #323038;
  color: #fff;
  font-size: clamp(1rem, 1.3vw, 1.2rem);
}

#topback {
  position: fixed;
  bottom: 9px;
  right: 2px;
  width: 32px;
  height: 56px;
  cursor: pointer;
  z-index: 980;
}

@media (min-width: 1024px) {
  #topback {
    bottom: 23px;
    right: min(2.5%, 50px);
  }
}

#topback.con_end {
  bottom: 295px;
  position: absolute;
}

@media (min-width: 1024px) {
  #topback.con_end {
    bottom: min(23.43vw, 280px);
  }
}

.fv {
  position: relative;
  overflow: clip;
}

@media (min-width: 1024px) {
  .fv {
    padding-bottom: 0;
  }
}

.fv::after {
  content: "";
  display: block;
  background: url(../img/fv/bg.png) no-repeat;
  background-size: cover;
  background-position: -31.74vw 0;
  width: 100%;
  height: 16.53vw;
}

@media (min-width: 1024px) {
  .fv::after {
    background-position: center;
    position: absolute;
    bottom: min(5.98vw, 115px);
    background-size: 100%;
    background-position: left;
    width: min(85.88vw, 1649px);
    height: min(7.03vw, 135px);
  }
}

.fv::before {
  content: "";
  display: block;
  background: url(../img/fv/line.webp) no-repeat;
  background-size: 100%;
  width: 100%;
  height: 15.46vw;
  position: absolute;
  top: 4vw;
  left: 50%;
  transform: translateX(-50%) rotate(-3deg);
  z-index: 20;
}

@media (min-width: 1024px) {
  .fv::before {
    top: 0;
    transform: translateX(-50%) rotate(0deg);
    height: min(9.27vw, 178px);
  }
}

.fv__inner {
  margin-inline: auto;
}

@media (min-width: 1024px) {
  .fv__inner {
    width: min(85%, 1620px);
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: clamp(4.5rem, 3.51vw, 7.1rem);
  }
}

.fv__slider {
  width: 74.66vw;
  height: 74.66vw;
  margin-inline: auto;
  position: relative;
  z-index: 0;
  opacity: 0;
  transition: opacity 1s;
}

@media (min-width: 1024px) {
  .fv__slider {
    width: min(53.3%, 865px);
    height: auto;
    order: 2;
  }
}

.fv__slider.slick-initialized {
  opacity: 1 !important;
}

.fv__slider .item {
  overflow: clip;
  border-radius: 50%;
}

.fv__slider .item img {
  aspect-ratio: 1/1;
  object-fit: cover;
}

.fv__txt {
  width: 66.66vw;
  margin-inline: auto;
  margin-top: -5.34vw;
  position: relative;
  z-index: 5;
}

@media (min-width: 1024px) {
  .fv__txt {
    width: min(100% - (53.3% + clamp(4.5rem, 3.51vw, 7.1rem)));
    order: 1;
    padding-inline: clamp(3.5rem, 3.41vw, 7.2rem);
  }

  .fv__txt img {
    max-width: 540px;
    margin-inline: auto;
  }
}

.fv__txt.fade_fv {
  opacity: 0;
  transform: translateY(10%);
  transition: opacity 1.5s, transform 0.8s;
}

.fv__txt.fade_fv.active {
  opacity: 1;
  transform: translateY(0%);
}

.result_num {
  margin-top: 10px;
  background-color: #323038;
  width: 100%;
  height: 25.86vw;
  position: relative;
  z-index: 10;
  overflow: clip;
}

@media (min-width: 1024px) {
  .result_num {
    margin-top: max(-5.47vw, -105px);
    height: min(11.19vw, 215px);
    overflow: visible;
  }
}

.result_num .contents {
  width: calc(100% - 20px);
  margin-inline: auto;
  height: 15.08vw;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  background-color: #F5F1E8;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}

@media (min-width: 1024px) {
  .result_num .contents {
    width: min(30.05vw, 577px);
    height: min(5vw, 96px);
    position: absolute;
    left: auto;
    right: 0;
    bottom: min(11.19vw, 215px);
    transform: none;
    border-top-left-radius: 20px;
  }
}

.result_num .contents::before {
  content: "";
  display: block;
  background: url(../img/common/fukidashi.png) no-repeat;
  background-size: 100%;
  width: 2.93vw;
  height: 2.93vw;
  position: absolute;
  bottom: -1px;
  left: -2.67vw;
}

@media (min-width: 1024px) {
  .result_num .contents::before {
    width: 20px;
    height: 20px;
    left: -20px;
    bottom: 0;
  }
}

.result_num .contents::after {
  content: "";
  display: block;
  background: url(../img/common/fukidashi.png) no-repeat;
  background-size: 100%;
  width: 2.93vw;
  height: 2.93vw;
  position: absolute;
  bottom: -1px;
  right: -2.67vw;
  transform: scale(-1, 1);
}

@media (min-width: 1024px) {
  .result_num .contents::after {
    content: none;
  }
}

.result_num .contents p {
  font-size: 3.46vw;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  color: #DB5D11;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: baseline;
  margin-top: -4.8vw;
}

@media (min-width: 1024px) {
  .result_num .contents p {
    font-size: min(1.25vw, 2.4rem);
    margin-top: max(-1.88vw, -36px);
    gap: min(1.56vw, 3px);
  }
}

.result_num .contents p .count_set {
  position: relative;
  display: inline-block;
}

.result_num .contents p .num {
  display: inline-block;
  font-size: 15.73vw;
  font-weight: bold;
  position: relative;
  margin-left: 3.2vw;
}

@media (min-width: 1024px) {
  .result_num .contents p .num {
    font-size: min(5.46vw, 10.5rem);
    margin-left: min(1.56vw, 30px);
  }
}

.result_num .contents p .num-bg {
  color: #F5F1E8;
  position: absolute;
  top: 50%;
  left: 55%;
  transform: translate(-50%, -50%);
  -webkit-text-stroke: 15px;
  z-index: -1;
  font-size: 15.73vw;
  font-weight: bold;
}

@media (min-width: 1024px) {
  .result_num .contents p .num-bg {
    font-size: min(5.46vw, 10.5rem);
  }
}

.result_num .contents p .txt {
  font-size: 4.8vw;
}

@media (min-width: 1024px) {
  .result_num .contents p .txt {
    font-size: min(1.56vw, 3rem);
  }
}

.lp__lst {
  width: min(100%, 1354px);
  margin-inline: auto;
  padding-block: 35px;
  background-color: #F5F1E8;
  border-radius: 20px;
  position: relative;
  z-index: 10;
}

@media (min-width: 1024px) {
  .lp__lst {
    width: min(70%, 1354px);
    padding-block: min(2.76vw, 53px);
    margin-top: calc(-1 * (min(2.76vw, 53px) * 2 + min(7.81vw, 150px)) / 2);
  }
}

@media (min-width: 1024px) {
  .lp__lst::before {
    content: "";
    display: block;
    background: url(../img/common/fukidashi.png) no-repeat;
    background-size: 100%;
    width: 10px;
    height: 10px;
    position: absolute;
    top: calc(50% - 5px);
    left: -10px;
    transform: translateY(-50%);
  }
}

@media (min-width: 1024px) and (min-width: 1280px) {
  .lp__lst::before {
    width: 20px;
    height: 20px;
    top: calc(50% - 10px);
    left: -20px;
  }
}

@media (min-width: 1024px) {
  .lp__lst::after {
    content: "";
    display: block;
    background: url(../img/common/fukidashi.png) no-repeat;
    background-size: 100%;
    width: 10px;
    height: 10px;
    position: absolute;
    top: calc(50% - 5px);
    right: -10px;
    transform: translateY(-50%) scale(-1, 1);
  }
}

@media (min-width: 1024px) and (min-width: 1280px) {
  .lp__lst::after {
    width: 20px;
    height: 20px;
    top: calc(50% - 10px);
    right: -20px;
  }
}

.lp__lst ul {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding-inline: clamp(2rem, 1.56vw, 7.7rem);
}

@media (min-width: 1024px) {
  .lp__lst ul {
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: clamp(2rem, 1.95vw, 4rem);
    padding-inline: clamp(4rem, 3.9vw, 7.7rem);
  }
}

@media (min-width: 1024px) {
  .lp__lst ul li {
    width: calc((100% - clamp(2rem, 1.95vw, 4rem)) / 2);
  }
}

.lp__lst ul li a {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--btn-color);
  color: #fff;
  font-size: 1.8rem;
  font-weight: bold;
  border-radius: 10px;
  height: 83px;
  position: relative;
  transition: background-color 0.3s;
}

@media (min-width: 1024px) {
  .lp__lst ul li a {
    height: min(7.81vw, 150px);
    font-size: min(1.25vw, 2.4rem);
  }

  .lp__lst ul li a:hover {
    background-color: #323038;
  }
}

.lp__lst ul li a::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.lp__lst ul li a::after {
  content: "";
  display: block;
  width: 11px;
  height: 12px;
  border-left: solid 11px #fff;
  border-top: solid 6px transparent;
  border-bottom: solid 6px transparent;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
}

@media (min-width: 1024px) {
  .lp__lst ul li a::after {
    width: 16px;
    height: 18px;
    right: min(2.08vw, 40px);
    border-left: solid 16px #fff;
    border-top: solid 9px transparent;
    border-bottom: solid 9px transparent;
  }
}

.lp__lst ul li.for_home {
  --btn-color: #D5355B;
}

.lp__lst ul li.for_home a::before {
  background-image: url(../img/icon/icon-house.svg);
  background-size: 100%;
  background-repeat: no-repeat;
  width: 48px;
  height: 34.5px;
  min-width: 48px;
  min-height: 34.5px;
  left: 18px;
  transition: background-image 0.3s;
}

@media (min-width: 1024px) {
  .lp__lst ul li.for_home a::before {
    width: min(4.32vw, 83px);
    height: min(3.07vw, 59px);
    min-width: min(4.32vw, 83px);
    min-height: min(3.07vw, 59px);
    left: min(2.08vw, 40px);
  }
}

@media (min-width: 1024px) {
  .lp__lst ul li.for_home a:hover::before {
    background-image: url(../img/icon/icon-house-hover.svg);
  }
}

.lp__lst ul li.for_biz {
  --btn-color: #436ACB;
}

.lp__lst ul li.for_biz a::before {
  background-image: url(../img/icon/icon-biz.svg);
  background-size: 100%;
  background-repeat: no-repeat;
  width: 41px;
  height: 44px;
  min-width: 41px;
  min-height: 44px;
  left: 22px;
  transition: background-image 0.3s;
}

@media (min-width: 1024px) {
  .lp__lst ul li.for_biz a::before {
    width: min(3.69vw, 71px);
    height: min(4.01vw, 77px);
    min-width: min(3.69vw, 71px);
    min-height: min(4.01vw, 77px);
    left: min(2.08vw, 40px);
  }
}

@media (min-width: 1024px) {
  .lp__lst ul li.for_biz a:hover::before {
    background-image: url(../img/icon/icon-biz-hover.svg);
  }
}

.svg_animation {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.svg_animation svg {
  width: 100%;
}

.svg_animation svg .test01 {
  stroke: #38405f;
  stroke-dasharray: 2000;
  stroke-dashoffset: 2000;
  stroke-width: 1;
  animation: test 10s linear infinite;
}

@keyframes test {
  0% {
    stroke-dashoffset: 2000;
  }

  100% {
    stroke-dashoffset: 0;
  }
}

:root {
  --inner-margin: 40px;
  --inner-max: 1620px;
}

@media (min-width: 768px) {
  :root {
    --inner-margin: 7.5%;
  }
}

@media (min-width: 1024px) {
  :root {
    --inner-margin: 15%;
  }
}

.inner {
  width: min(100% - var(--inner-margin), var(--inner-max));
  margin-left: auto;
  margin-right: auto;
  transition: width 0.2s;
}

.fade {
  opacity: 0;
  transform: translateY(50px);
  transition: opacity 1s, transform 0.5s;
}

.fade.active {
  opacity: 1;
  transform: translateY(0px);
}

.fade-con {
  opacity: 0;
  transform: translateY(50px);
  transition: opacity 1s, transform 0.5s;
}

.fade-con.active {
  opacity: 1;
  transform: translateY(0px);
}

.blog {
  width: 100%;
  padding-top: 28px;
  padding-bottom: 30px;
}

@media (min-width: 1024px) {
  .blog {
    padding-top: min(7.81vw, 150px);
    padding-bottom: min(5.2vw, 100px);
  }
}

.blog .ttl {
  width: calc(100% - 10px);
  height: 188px;
  margin-left: auto;
  margin-right: 0;
  background-color: #DB5D11;
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
  padding-block: 8px;
  position: relative;
}

@media (min-width: 1024px) {
  .blog .ttl {
    width: 97.3%;
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
    height: max(min(13.69vw, 263px), 188px);
    display: flex;
    align-items: baseline;
    padding-top: min(1.04vw, 20px);
  }
}

.blog .ttl::before {
  content: "";
  display: block;
  width: 90%;
  height: 1px;
  background-color: #323038;
  margin-left: -10px;
  position: absolute;
  bottom: 85px;
}

@media (min-width: 1024px) {
  .blog .ttl::before {
    bottom: 44px;
    width: min(30.46vw, 585px);
    margin-left: -2.7%;
  }
}

.blog .ttl::after {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #323038;
  margin-left: -10px;
  left: 90%;
  bottom: 80px;
  position: absolute;
}

@media (min-width: 1024px) {
  .blog .ttl::after {
    margin-left: -2.7%;
    left: min(30.46vw, 585px);
    bottom: 39px;
  }
}

@media (min-width: 1280px) {
  .blog .ttl::after {
    width: 15px;
    height: 15px;
    bottom: 37.5px;
  }
}

.blog .ttl h3 {
  font-family: var(--mont), sans-serif;
  font-size: 4.5rem;
  font-weight: 600;
  color: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  line-height: 1.4;
  width: fit-content;
  margin-inline: auto;
}

@media (min-width: 1024px) {
  .blog .ttl h3 {
    width: min(31.25vw, 600px);
    margin-left: 0;
    font-size: min(3.9vw, 7.5rem);
    padding-top: 25px;
    gap: clamp(1rem, 0.97vw, 1.5rem);
  }
}

@media (min-width: 1280px) {
  .blog .ttl h3 {
    padding-top: 20px;
  }
}

.blog .ttl h3 span {
  font-family: var(--font-fam), sans-serif;
  font-size: clamp(1.4rem, 1.36vw, 2rem);
  font-weight: 500;
  line-height: 1;
}

.blog__inner {
  width: calc(100% - 40px);
  margin-inline: auto;
  position: relative;
}

@media (min-width: 1024px) {
  .blog__inner {
    width: 97.3%;
    min-width: 1010px;
    margin-left: auto;
    margin-right: 2.5%;
  }
}

.blog__lst {
  background-color: #fff;
  border-radius: 10px;
  margin-top: -65px;
  padding-inline: 20px;
  padding-top: 25px;
  padding-bottom: 16px;
}

@media (min-width: 1024px) {
  .blog__lst {
    border-radius: 20px;
    width: min(64.06vw, 1230px);
    margin-top: min(max(-11.46vw, -220px), -140px);
    margin-left: auto;
    margin-right: 0;
    padding-inline: min(4.16vw, 80px);
    padding-top: min(2.6vw, 50px);
    padding-bottom: min(1.56vw, 30px);
  }
}

.blog__lst ul li {
  border-bottom: solid 1px #DB5D11;
  padding-bottom: 16px;
}

.blog__lst ul li:nth-of-type(n+2) {
  padding-top: 18px;
}

.blog__lst ul li a {
  display: flex;
  flex-direction: column;
  gap: 12px;
  transition: color 0.3s;
}

@media (min-width: 1024px) {
  .blog__lst ul li a {
    padding-inline: clamp(0.5rem, 0.48vw, 1rem) clamp(1rem, 0.97vw, 1.6rem);
  }
}

.blog__lst ul li a .detail {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

@media (min-width: 1024px) {
  .blog__lst ul li a .detail {
    justify-content: flex-start;
    gap: clamp(2rem, 1.56vw, 3.5rem);
  }
}

.blog__lst ul li a .day {
  font-size: clamp(1.4rem, 1.36vw, 1.8rem);
  font-weight: bold;
}

.blog__lst ul li a .day span {
  font-size: clamp(2.4rem, 2.34vw, 2.9rem);
}

.blog__lst ul li a .cat {
  width: fit-content;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #DB5D11;
  color: #fff;
  font-size: clamp(1rem, 0.97vw, 1.2rem);
  font-weight: 500;
  border-radius: 5px;
  padding-inline: clamp(2rem, 1.56vw, 2.6rem);
  padding-block: 4px;
}

@media (min-width: 1024px) {
  .blog__lst ul li a:hover {
    color: #DB5D11;
  }
}

.blog__lst>a {
  margin-top: clamp(2rem, 1.56vw, 2.8rem);
  font-size: clamp(1.4rem, 1.36vw, 2rem);
  font-weight: 500;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: clamp(1rem, 1.3vw, 3.5rem);
  width: fit-content;
  margin-left: auto;
  margin-right: 0;
  transition: color 0.3s;
}

.blog__lst>a::after {
  content: "";
  display: block;
  background-image: url(../img/icon/arrow.svg);
  background-size: 100%;
  background-repeat: no-repeat;
  margin-left: 0;
  width: clamp(2rem, 1.56vw, 2.5rem);
  height: clamp(2rem, 1.56vw, 2.5rem);
  min-width: clamp(2rem, 1.56vw, 2.5rem);
  min-height: clamp(2rem, 1.56vw, 2.5rem);
  transition: background-image 0.3s, transform 0.3s;
}

@media (min-width: 1024px) {
  .blog__lst>a:hover {
    color: #DB5D11;
  }

  .blog__lst>a:hover::after {
    background-image: url(../img/icon/arrow-hover.svg);
    background-size: 100%;
    transform: translateX(-10px);
  }
}

.biz {
  width: 100%;
  padding-top: 30px;
  padding-bottom: 30px;
}

@media (min-width: 1024px) {
  .biz {
    padding-top: min(5.2vw, 100px);
    padding-bottom: min(5.2vw, 100px);
  }
}

.biz .ttl {
  width: calc(100% - 10px);
  height: 188px;
  margin-left: 0;
  margin-right: auto;
  background-color: #323038;
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
  padding-block: 8px;
  position: relative;
}

@media (min-width: 1024px) {
  .biz .ttl {
    width: 97.3%;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
    height: max(min(13.69vw, 263px), 188px);
    display: flex;
    align-items: baseline;
    padding-top: min(1.04vw, 20px);
  }
}

.biz .ttl::before {
  content: "";
  display: block;
  width: 90%;
  height: 1px;
  background-color: #DB5D11;
  margin-right: -10px;
  position: absolute;
  right: 0;
  bottom: 85px;
}

@media (min-width: 1024px) {
  .biz .ttl::before {
    bottom: 44px;
    width: min(30.46vw, 585px);
    margin-right: -2.7%;
  }
}

.biz .ttl::after {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #DB5D11;
  margin-right: -10px;
  right: 90%;
  bottom: 80px;
  position: absolute;
}

@media (min-width: 1024px) {
  .biz .ttl::after {
    margin-right: -2.7%;
    right: min(30.46vw, 585px);
    bottom: 39px;
  }
}

@media (min-width: 1280px) {
  .biz .ttl::after {
    width: 15px;
    height: 15px;
    bottom: 37.5px;
  }
}

.biz .ttl h3 {
  font-family: var(--mont), sans-serif;
  font-size: 4.5rem;
  font-weight: 600;
  color: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  line-height: 1.4;
  width: fit-content;
  margin-inline: auto;
}

@media (min-width: 1024px) {
  .biz .ttl h3 {
    width: min(31.25vw, 600px);
    margin-right: 0;
    font-size: min(3.9vw, 7.5rem);
    padding-top: 25px;
    gap: clamp(1rem, 0.97vw, 1.5rem);
  }
}

@media (min-width: 1280px) {
  .biz .ttl h3 {
    padding-top: 20px;
  }
}

.biz .ttl h3 span {
  font-family: var(--font-fam), sans-serif;
  font-size: clamp(1.4rem, 1.36vw, 2rem);
  font-weight: 500;
  line-height: 1;
}

.biz__inner {
  width: calc(100% - 40px);
  margin-inline: auto;
  position: relative;
}

@media (min-width: 1024px) {
  .biz__inner {
    width: 97.3%;
    min-width: 1010px;
    margin-right: auto;
    margin-left: 2.7%;
  }
}

.biz__txt {
  background-color: #fff;
  border-radius: 10px;
  margin-top: -65px;
  padding-inline: 20px;
  padding-top: 25px;
  padding-bottom: 16px;
}

@media (min-width: 1024px) {
  .biz__txt {
    border-radius: 20px;
    width: min(64.06vw, 1230px);
    margin-top: min(max(-11.46vw, -220px), -140px);
    margin-right: auto;
    margin-left: 0;
    padding-inline: min(4.16vw, 80px);
    padding-top: min(2.6vw, 50px);
    padding-bottom: min(2.6vw, 50px);
  }
}

.biz__txt p {
  width: fit-content;
  margin-inline: auto;
  font-size: clamp(1.6rem, 1.56vw, 3rem);
  font-weight: 500;
}

.biz__txt p span {
  font-size: clamp(2.2rem, 2.14vw, 4rem);
  font-weight: bold;
  color: #DB5D11;
  border-bottom: double 4px #1B1D4B;
}

.biz__contents {
  padding-top: clamp(6.7rem, 6.54vw, 11.6rem);
  margin-inline: auto;
  padding-inline: 20px;
  counter-reset: num 0;
  display: flex;
  flex-direction: column;
  gap: clamp(6.6rem, 6.44vw, 11.2rem);
}

@media (min-width: 1024px) {
  .biz__contents {
    width: 94.7%;
    padding-inline: 0;
  }
}

.biz__contents .box {
  counter-increment: num 1;
}

.biz__contents .box>.box__inner {
  position: relative;
  background-color: #fff;
  border-radius: 10px;
  padding-inline: 20px;
  padding-block: 28px;
  display: flex;
  flex-direction: column;
}

@media (min-width: 1024px) {
  .biz__contents .box>.box__inner {
    flex-direction: row;
    gap: 35px;
  }
}

@media (min-width: 1280px) {
  .biz__contents .box>.box__inner {
    background-color: transparent;
    padding: 0;
  }
}

.biz__contents .box>.box__inner::before {
  content: "";
  display: block;
  width: calc(100% + 30px);
  height: 150px;
  border: solid 2px #323038;
  border-right: none;
  position: absolute;
  right: -20px;
  top: -7px;
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
  z-index: -1;
}

@media (min-width: 1024px) {
  .biz__contents .box>.box__inner::before {
    width: calc(100% + 10px + 2.7%);
    right: -2.7%;
    top: -12px;
  }
}

@media (min-width: 1280px) {
  .biz__contents .box>.box__inner::before {
    content: none;
  }
}

.biz__contents .box--pc {
  display: contents;
}

@media (min-width: 1024px) {
  .biz__contents .box--pc {
    display: block;
    order: 2;
    width: calc(100% - (43.9% + 35px));
  }
}

@media (min-width: 1280px) {
  .biz__contents .box--pc {
    width: min(64.16vw, 1232px);
    background-color: #fff;
    border-radius: clamp(1rem, 0.97vw, 2rem);
    margin-right: 0;
    margin-left: auto;
    padding-top: min(3.95vw, 76px);
    padding-bottom: min(4.68vw, 90px);
    padding-left: min(16.77vw, 322px);
    border-radius: 18px;
    position: relative;
  }
}

@media (min-width: 1280px) {
  .biz__contents .box--pc::before {
    content: "";
    display: block;
    width: min(67.7vw, 1300px);
    right: calc(50vw - 82%);
    top: -12px;
    height: min(11.97vw, 320px);
    border: solid 2px #323038;
    border-right: none;
    position: absolute;
    border-top-left-radius: 30px;
    border-bottom-left-radius: 30px;
    z-index: -1;
  }
}

.biz__contents .box h4 {
  order: 1;
  font-size: clamp(1.8rem, 1.75vw, 3.5rem);
  color: #DB5D11;
  font-weight: bold;
  width: 100%;
  margin-left: auto;
  margin-right: 0;
  position: relative;
}

@media (min-width: 1024px) {
  .biz__contents .box h4 {
    padding-top: 10px;
  }
}

@media (min-width: 1280px) {
  .biz__contents .box h4 {
    padding-top: 0;
    line-height: 1;
  }
}

.biz__contents .box h4::before {
  content: "0" counter(num);
  font-family: var(--oswald), sans-serif;
  font-size: clamp(5.6rem, 7.29vw, 11.5rem);
  line-height: 1;
  font-weight: normal;
  color: #323038;
  position: absolute;
  left: 0;
  top: 0;
}

@media (min-width: 1024px) {
  .biz__contents .box h4::before {
    line-height: 0.8;
  }
}

@media (min-width: 1280px) {
  .biz__contents .box h4::before {
    top: -24px;
  }
}

.biz__contents .box h4 span {
  position: relative;
  display: block;
  width: 61.33vw;
  margin-left: auto;
  margin-right: 0;
}

@media (min-width: 1024px) {
  .biz__contents .box h4 span {
    width: min(37.5vw, 720px);
  }
}

.biz__contents .box h4 span::before {
  content: "";
  display: block;
  width: calc(100% + 24px);
  height: 2px;
  background-color: #323038;
  position: absolute;
  bottom: -20px;
  right: -20px;
}

@media (min-width: 1280px) {
  .biz__contents .box h4 span::before {
    right: 0;
    bottom: -36px;
  }
}

.biz__contents .box h4 span::after {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  min-width: 8px;
  min-height: 8px;
  background-color: #323038;
  border-radius: 50%;
  position: absolute;
  bottom: -23px;
  left: -4px;
}

@media (min-width: 1280px) {
  .biz__contents .box h4 span::after {
    width: 15px;
    height: 15px;
    min-width: 15px;
    min-height: 15px;
    bottom: -42px;
    left: -27px;
  }
}

.biz__contents .box .img_box {
  margin-top: 79px;
  order: 2;
  position: relative;
}

@media (min-width: 1024px) {
  .biz__contents .box .img_box {
    order: 1;
    width: 43.9%;
  }
}

@media (min-width: 1280px) {
  .biz__contents .box .img_box {
    position: absolute;
    top: min(3.12vw, 60px);
    z-index: 10;
  }
}

.biz__contents .box .img_box img {
  border-radius: 10px;
  aspect-ratio: 29.4/18.4;
  object-fit: cover;
}

@media (min-width: 1024px) {
  .biz__contents .box .img_box img {
    border-radius: clamp(2rem, 1.95vw, 4rem);
  }
}

.biz__contents .box .img_box .txt {
  width: 22.53vw;
  height: 22.53vw;
  min-width: 22.53vw;
  min-height: 22.53vw;
  border-radius: 50%;
  background-color: #DB5D11;
  color: #fff;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 2px;
  position: absolute;
  top: -42px;
  right: -12px;
}

@media (min-width: 1024px) {
  .biz__contents .box .img_box .txt {
    width: min(9.32vw, 179px);
    height: min(9.32vw, 179px);
    min-width: min(9.32vw, 179px);
    min-height: min(9.32vw, 179px);
    top: max(-4.64vw, -89px);
    right: max(-1.83vw, -35px);
  }
}

.biz__contents .box .img_box .txt p {
  margin-top: 4px;
  font-size: 2.4vw;
  font-weight: 500;
}

@media (min-width: 1024px) {
  .biz__contents .box .img_box .txt p {
    font-size: min(0.93vw, 1.8rem);
  }
}

.biz__contents .box .img_box .txt>strong {
  font-size: 8.53vw;
  font-weight: bold;
  line-height: 1;
}

@media (min-width: 1024px) {
  .biz__contents .box .img_box .txt>strong {
    font-size: min(3.38vw, 6.5rem);
  }
}

.biz__contents .box .img_box .txt>strong span {
  font-size: 2.66vw;
  font-weight: 500;
}

@media (min-width: 1024px) {
  .biz__contents .box .img_box .txt>strong span {
    font-size: min(1.04vw, 2rem);
  }
}

.biz__contents .box .img_box .txt>span {
  font-size: 2.66vw;
  font-weight: 500;
}

@media (min-width: 1024px) {
  .biz__contents .box .img_box .txt>span {
    font-size: min(0.93vw, 1.8rem);
  }
}

.biz__contents .box .detail {
  margin-top: clamp(2.9rem, 2.26vw, 6.7rem);
  order: 3;
  display: flex;
  flex-direction: column;
  gap: clamp(2.6rem, 2.03vw, 3rem);
}

@media (min-width: 1024px) {
  .biz__contents .box .detail {
    margin-top: min(5.83vw, 112px);
  }
}

@media (min-width: 1280px) {
  .biz__contents .box .detail {
    max-width: 630px;
    padding-right: 30px;
  }
}

.biz__contents .box .detail__case {
  background-color: #F0F0F0;
  border-radius: 10px;
  padding-inline: clamp(2rem, 1.95vw, 2.9rem);
  padding-top: 16px;
  padding-bottom: 20px;
}

.biz__contents .box .detail__case strong {
  display: block;
  width: 100%;
  font-size: clamp(1.4rem, 1.36vw, 1.8rem);
  font-weight: 500;
  border-bottom: solid 1px #323038;
  padding-bottom: 8px;
}

@media (min-width: 1024px) {
  .biz__contents .box .detail__case strong {
    padding-inline: 14px;
  }
}

.biz__contents .box .detail__case p {
  font-size: clamp(1.4rem, 1.36vw, 1.8rem);
  font-weight: 500;
  line-height: 2;
}

.biz__contents .box .detail__case ul {
  padding-top: 10px;
  font-size: clamp(1.4rem, 1.36vw, 1.8rem);
  font-weight: 500;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

@media (min-width: 1024px) {
  .biz__contents .box .detail__case ul {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 8px 0;
  }
}

.biz__contents .box .detail__case ul li {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: clamp(0.5rem, 0.39vw, 0.8rem);
}

@media (min-width: 1024px) {
  .biz__contents .box .detail__case ul li {
    padding-inline: 14px;
    width: 50%;
  }
}

.biz__contents .box .detail__case ul li::before {
  content: "";
  width: clamp(0.7rem, 0.54vw, 1rem);
  height: clamp(0.7rem, 0.54vw, 1rem);
  min-width: clamp(0.7rem, 0.54vw, 1rem);
  min-height: clamp(0.7rem, 0.54vw, 1rem);
  background-color: #DB5D11;
  border-radius: 50%;
  margin-top: clamp(0.9rem, 0.87vw, 1rem);
}

.biz__contents .box .detail .btn__lst {
  width: 100%;
  margin-inline: auto;
}

.biz__contents .box .detail .btn__lst ul {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

@media (min-width: 1024px) {
  .biz__contents .box .detail .btn__lst ul {
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: clamp(1rem, 0.97vw, 2rem);
  }
}

@media (min-width: 1024px) {
  .biz__contents .box .detail .btn__lst ul li {
    width: calc((100% - clamp(1rem, 0.97vw, 2rem)) / 2);
  }
}

.biz__contents .box .detail .btn__lst ul li a {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--btn-color);
  color: #fff;
  font-size: clamp(1.6rem, 1.56vw, 2rem);
  font-weight: bold;
  border-radius: 10px;
  height: 68px;
  position: relative;
  padding-left: 20px;
  transition: background-color 0.3s;
}

@media (min-width: 1024px) {
  .biz__contents .box .detail .btn__lst ul li a {
    height: 60px;
    padding-left: 0;
  }

  .biz__contents .box .detail .btn__lst ul li a:hover {
    background-color: #323038;
  }
}

.biz__contents .box .detail .btn__lst ul li a::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.biz__contents .box .detail .btn__lst ul li a::after {
  content: "";
  display: block;
  width: 11px;
  height: 12px;
  border-left: solid 11px #fff;
  border-top: solid 6px transparent;
  border-bottom: solid 6px transparent;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
}

.biz__contents .box .detail .btn__lst ul li.for_home {
  --btn-color: #D5355B;
}

.biz__contents .box .detail .btn__lst ul li.for_home a::before {
  background-image: url(../img/icon/icon-house.svg);
  background-size: 100%;
  background-repeat: no-repeat;
  width: 48px;
  height: 34.5px;
  min-width: 48px;
  min-height: 34.5px;
  left: 18px;
  transition: background-image 0.3s;
}

@media (min-width: 1024px) {
  .biz__contents .box .detail .btn__lst ul li.for_home a::before {
    content: none;
  }
}

.biz__contents .box .detail .btn__lst ul li.for_biz {
  --btn-color: #436ACB;
}

.biz__contents .box .detail .btn__lst ul li.for_biz a::before {
  background-image: url(../img/icon/icon-biz.svg);
  background-size: 100%;
  background-repeat: no-repeat;
  width: 41px;
  height: 44px;
  min-width: 41px;
  min-height: 44px;
  left: 22px;
  transition: background-image 0.3s;
}

@media (min-width: 1024px) {
  .biz__contents .box .detail .btn__lst ul li.for_biz a::before {
    content: none;
  }
}

.biz__contents .box:nth-of-type(even) .box__inner::before {
  transform: scale(-1, -1);
  right: auto;
  left: -20px;
}

@media (min-width: 1024px) {
  .biz__contents .box:nth-of-type(even) .box__inner::before {
    right: auto;
    left: -2.7%;
  }
}

@media (min-width: 1024px) {
  .biz__contents .box:nth-of-type(even) .box__inner .box--pc {
    order: 1;
  }
}

@media (min-width: 1280px) {
  .biz__contents .box:nth-of-type(even) .box__inner .box--pc {
    margin-right: auto;
    margin-left: 0;
    padding-left: 0;
    padding-right: min(16.77vw, 322px);
  }
}

@media (min-width: 1280px) {
  .biz__contents .box:nth-of-type(even) .box__inner .box--pc::before {
    transform: scale(-1, -1);
    right: auto;
    left: calc(50vw - 82%);
  }
}

@media (min-width: 1024px) {
  .biz__contents .box:nth-of-type(even) .box__inner h4::before {
    left: auto;
    right: 0;
  }
}

@media (min-width: 1024px) {
  .biz__contents .box:nth-of-type(even) .box__inner h4 span {
    margin-left: 0;
    margin-right: auto;
    text-align: right;
    padding-right: min(3.64vw, 70px);
  }
}

@media (min-width: 1024px) {
  .biz__contents .box:nth-of-type(even) .box__inner h4 span::before {
    right: auto;
    left: -20px;
  }
}

@media (min-width: 1024px) {
  .biz__contents .box:nth-of-type(even) .box__inner h4 span::before {
    left: 0;
  }
}

@media (min-width: 1024px) {
  .biz__contents .box:nth-of-type(even) .box__inner h4 span::after {
    left: auto;
    right: -4px;
  }
}

@media (min-width: 1024px) {
  .biz__contents .box:nth-of-type(even) .box__inner h4 span::after {
    right: -27px;
  }
}

@media (min-width: 1024px) {
  .biz__contents .box:nth-of-type(even) .box__inner .img_box {
    order: 2;
  }
}

@media (min-width: 1280px) {
  .biz__contents .box:nth-of-type(even) .box__inner .img_box {
    position: absolute;
    top: min(3.12vw, 60px);
    z-index: 10;
    right: 0;
  }
}

@media (min-width: 1024px) {
  .biz__contents .box:nth-of-type(even) .box__inner .img_box .txt {
    right: auto;
    top: max(-4.64vw, -89px);
    left: max(-1.83vw, -35px);
  }
}

@media (min-width: 1280px) {
  .biz__contents .box:nth-of-type(even) .box__inner .detail {
    padding-right: 0;
    padding-left: 30px;
    margin-left: auto;
    margin-right: 0;
  }
}

@media (min-width: 1024px) {
  .biz__contents .box:nth-of-type(4) .detail__case ul {
    flex-direction: column;
  }
}

@media (min-width: 1024px) {
  .biz__contents .box:nth-of-type(4) .detail__case ul li {
    width: 100%;
  }
}

@media (min-width: 1024px) {
  .biz__contents .box:nth-of-type(5) .detail__case ul {
    flex-direction: column;
  }
}

@media (min-width: 1024px) {
  .biz__contents .box:nth-of-type(5) .detail__case ul li {
    width: 100%;
  }
}

.area {
  width: 100%;
  padding-top: 30px;
  padding-bottom: 30px;
}

@media (min-width: 1024px) {
  .area {
    padding-top: min(5.2vw, 100px);
    padding-bottom: min(5.2vw, 100px);
  }
}

@media (min-width: 1024px) {
  .area__inner {
    width: min(94.7%, 1620px);
  }
}

.area__inner ul {
  display: flex;
  flex-direction: column;
  gap: 30px;
}

@media (min-width: 1024px) {
  .area__inner ul {
    flex-direction: row;
    justify-content: center;
    gap: clamp(3rem, 2.34vw, 3.4rem);
  }
}

.area__inner ul li {
  overflow: clip;
  border-radius: 10px;
  color: #fff;
  background-color: #fff;
  border: solid 2px;
  border-color: var(--contents_color);
}

@media (min-width: 1024px) {
  .area__inner ul li {
    border-radius: 20px;
  }
}

.area__inner ul li.support {
  --contents_color: #C20F0F;
}

.area__inner ul li.support .img_box {
  margin-top: 30px;
  padding-inline: 10px;
  padding-bottom: 20px;
}

@media (min-width: 1024px) {
  .area__inner ul li.support .img_box {
    margin-top: 26px;
    padding-inline: 8.5%;
    padding-bottom: 45px;
  }
}

.area__inner ul li.support p>span::after {
  background: url(../img/index/area/icon01.png) no-repeat;
  background-size: 100%;
}

.area__inner ul li.recruiting {
  --contents_color: #323038;
}

.area__inner ul li.recruiting .img_box {
  margin-top: 20px;
  padding-inline: 45px;
  padding-bottom: 30px;
}

@media (min-width: 1024px) {
  .area__inner ul li.recruiting .img_box {
    margin-top: 26px;
    padding-inline: 10%;
    padding-bottom: 45px;
  }
}

.area__inner ul li.recruiting p>span::after {
  background: url(../img/index/area/icon02.png) no-repeat;
  background-size: 100%;
}

.area__inner ul li p {
  display: flex;
  justify-content: center;
  align-items: center;
  width: clamp(23.5rem, 22.94vw, 47.1rem);
  height: clamp(4.632rem, 4.52vw, 8.9rem);
  background-color: var(--contents_color);
  border-bottom-right-radius: 10px;
  position: relative;
}

.area__inner ul li p>span {
  display: block;
  width: clamp(9.1rem, 8.88vw, 17.5rem);
  height: clamp(9.1rem, 8.88vw, 17.5rem);
  min-width: clamp(9.1rem, 8.88vw, 17.5rem);
  min-height: clamp(9.1rem, 8.88vw, 17.5rem);
  border-radius: 50%;
  background-color: var(--contents_color);
  position: absolute;
  top: calc(-1 * clamp(2.6rem, 2.53vw, 4.9rem));
  left: calc(-1 * clamp(1rem, 0.97vw, 1.6rem));
  z-index: 0;
}

.area__inner ul li p>span::after {
  content: "";
  display: block;
  width: clamp(3.2rem, 3.12vw, 6.2rem);
  height: clamp(3.2rem, 3.12vw, 6.2rem);
  min-width: clamp(3.2rem, 3.12vw, 6.2rem);
  min-height: clamp(3.2rem, 3.12vw, 6.2rem);
  position: absolute;
  top: calc(50% + clamp(0.9rem, 0.87vw, 1.5rem));
  left: calc(50% + 1px);
  transform: translate(-50%, -50%);
}

.area__inner ul li strong {
  display: block;
  margin-left: auto;
  margin-right: 0;
  width: clamp(17rem, 16.6vw, 32.1rem);
  text-align: center;
  font-size: clamp(1.6rem, 1.56vw, 3.5rem);
  padding-inline: clamp(0.9rem, 0.87vw, 4.3rem);
  position: relative;
  z-index: 5;
}

@media (min-width: 1280px) {
  .area__inner ul li strong {
    padding-left: 0;
    padding-right: clamp(2rem, 1.56vw, 4.3rem);
  }
}

.area__inner ul li strong span {
  font-size: clamp(1.1rem, 1.07vw, 2.6rem);
}

.recruit {
  width: 100%;
  padding-top: 28px;
  padding-bottom: 30px;
}

@media (min-width: 1024px) {
  .recruit {
    padding-top: min(5.2vw, 100px);
    padding-bottom: min(5.2vw, 100px);
  }
}

.recruit .ttl {
  width: calc(100% - 10px);
  height: 188px;
  margin-left: 0;
  margin-right: auto;
  background-color: #DB5D11;
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
  padding-block: 8px;
  position: relative;
}

@media (min-width: 1024px) {
  .recruit .ttl {
    width: 97.3%;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
    height: max(min(16.82vw, 323px), 231px);
    display: flex;
    align-items: baseline;
    padding-top: min(1.04vw, 20px);
  }
}

.recruit .ttl::before {
  content: "";
  display: block;
  width: 90%;
  height: 1px;
  background-color: #323038;
  margin-right: -10px;
  position: absolute;
  right: 0;
  bottom: 85px;
}

@media (min-width: 1024px) {
  .recruit .ttl::before {
    bottom: 98px;
    width: min(61.04vw, 1172px);
    margin-right: -2.7%;
  }
}

.recruit .ttl::after {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #323038;
  margin-right: -10px;
  right: 90%;
  bottom: 80px;
  position: absolute;
}

@media (min-width: 1024px) {
  .recruit .ttl::after {
    margin-right: -2.7%;
    right: min(61.04vw, 1172px);
    bottom: 94px;
  }
}

@media (min-width: 1280px) {
  .recruit .ttl::after {
    width: 15px;
    height: 15px;
    bottom: 92px;
  }
}

.recruit .ttl h3 {
  font-family: var(--mont), sans-serif;
  font-size: 4.5rem;
  font-weight: 600;
  color: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  line-height: 1.4;
  width: fit-content;
  margin-inline: auto;
}

@media (min-width: 1024px) {
  .recruit .ttl h3 {
    width: min(31.25vw, 600px);
    margin-inline: auto;
    font-size: min(3.9vw, 7.5rem);
    padding-top: 25px;
    gap: clamp(1rem, 0.97vw, 1.5rem);
  }
}

@media (min-width: 1280px) {
  .recruit .ttl h3 {
    padding-top: 20px;
  }
}

.recruit .ttl h3 span {
  font-family: var(--font-fam), sans-serif;
  font-size: clamp(1.4rem, 1.36vw, 2rem);
  font-weight: 500;
  line-height: 1;
}

.recruit__inner {
  width: calc(100% - 40px);
  margin-inline: auto;
  position: relative;
}

@media (min-width: 1024px) {
  .recruit__inner {
    width: 97.3%;
    min-width: 1010px;
    margin-left: auto;
    margin-right: auto;
  }
}

.recruit__dl {
  background-color: #fff;
  border-radius: 10px;
  margin-top: -65px;
  padding-inline: 20px;
  padding-top: 25px;
  padding-bottom: calc(30px + clamp(3rem, 2.92vw, 6rem));
  position: relative;
  overflow: hidden;
  height: 600px;
}

@media (min-width: 1024px) {
  .recruit__dl {
    border-radius: 20px;
    width: min(95%, 1230px);
    margin-top: max(-3.18vw, -61px);
    margin-inline: auto;
    padding-inline: min(4.16vw, 80px);
    padding-top: min(2.6vw, 50px);
    padding-bottom: min(clamp(3rem, 2.92vw, 6rem) + 30px, 90px);
    height: 440px;
  }
}

.recruit__dl.active {
  height: 100%;
}

.recruit__dl.active::after {
  z-index: -1;
}

.recruit__dl::after {
  content: "";
  width: 100%;
  height: 197px;
  border-radius: 0px 0px 20px 20px;
  background: linear-gradient(rgba(255, 255, 255, 0) 0%, #fff 63.46%, rgba(255, 255, 255, 0.93) 76.01%, #fff 100%);
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}

.recruit__dl strong {
  display: block;
  font-size: clamp(2.4rem, 2.34vw, 2.8rem);
  font-weight: bold;
  text-align: center;
}

.recruit__dl strong+p {
  margin-top: clamp(2.6rem, 2.03vw, 4.3rem);
  font-size: 1.6rem;
}

.recruit__dl dl {
  margin-top: 36px;
}

@media (min-width: 1024px) {
  .recruit__dl dl {
    padding-top: 26px;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
  }
}

.recruit__dl dl dt {
  border-top: solid 1px #323038;
  background-color: #F5F1E8;
  font-size: 1.8rem;
  font-weight: bold;
  padding-block: clamp(1.8rem, 1.4vw, 3rem);
  padding-inline: clamp(2rem, 1.56vw, 3rem);
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction: column;
}

@media (min-width: 1024px) {
  .recruit__dl dl dt {
    width: min(18.5%, 185px);
  }
}

.recruit__dl dl dt:nth-last-of-type(1) {
  border-bottom: solid 1px #323038;
}

.recruit__dl dl dd {
  font-size: 1.6rem;
  font-weight: normal;
  padding-block: clamp(1.6rem, 1.25vw, 2.6rem);
  padding-inline: clamp(2rem, 1.56vw, 3rem);
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction: column;
}

@media (min-width: 1024px) {
  .recruit__dl dl dd {
    width: calc(100% - min(18.5%, 185px));
    border-top: solid 1px #323038;
  }
}

.recruit__dl dl dd:nth-last-of-type(1) {
  border-bottom: solid 1px #323038;
}

.recruit__dl dl dd p+p {
  margin-top: clamp(1.6rem, 1.25vw, 2.8rem);
}

.recruit__dl dl dd li {
  text-indent: -1.6rem;
  padding-left: 1.6rem;
}

.recruit__dl dl+p {
  margin-top: clamp(1.8rem, 1.75vw, 3.6rem);
  width: fit-content;
  margin-inline: auto;
  font-size: clamp(1.6rem, 1.56vw, 1.9rem);
  font-weight: normal;
}

.recruit__dl .btn {
  margin-top: clamp(1.8rem, 1.75vw, 3.6rem);
  width: min(100%, 353px);
  height: 68px;
  margin-inline: auto;
  border-radius: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: clamp(1.55rem, 1.51vw, 1.9rem);
  font-weight: bold;
  background-color: #C20F0F;
  position: relative;
  transition: background-color 0.3s;
}

.recruit__dl .btn::after {
  content: "";
  display: block;
  width: 12px;
  height: 11px;
  border-top: solid 11px #fff;
  border-right: solid 6px transparent;
  border-left: solid 6px transparent;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
}

@media (min-width: 1024px) {
  .recruit__dl .btn:hover {
    background-color: #323038;
  }
}

.recruit_btn {
  width: fit-content;
  margin-inline: auto;
  position: relative;
  z-index: 5;
  margin-top: calc(-1 * clamp(5rem, 4.88vw, 6rem) / 2);
}

.recruit_btn::before {
  content: "";
  display: block;
  width: min(16.6%, 30px);
  height: 3px;
  background-color: #fff;
  position: absolute;
  top: 48%;
  left: 50%;
  opacity: 1;
  transform: translate(-50%, -50%);
  z-index: 10;
  transition: opacity 0.3s, transform 0.3s;
}

.recruit_btn::after {
  content: "";
  display: block;
  width: min(16.6%, 30px);
  height: 3px;
  background-color: #fff;
  position: absolute;
  top: 48%;
  left: 50%;
  transition: opacity 0.3s, transform 0.3s;
  transform: translate(-50%, -50%) rotate(90deg);
}

.recruit_btn.active::before {
  opacity: 0;
  transform: translate(-50%, -50%) rotate(-90deg);
}

.recruit_btn.active::after {
  opacity: 1;
  transform: translate(-50%, -50%) rotate(0deg);
}

.recruit_btn button {
  appearance: none;
  margin-inline: auto;
  height: clamp(5rem, 4.88vw, 6rem);
  width: clamp(14rem, 13.67vw, 18rem);
  border-radius: 100px;
  background-color: #323038;
  position: relative;
}

.recruit_btn+.recruit__dl {
  margin-top: clamp(2.4rem, 2.34vw, 5.6rem) !important;
}

.recruiting-area {
  padding-top: 28px;
  padding-bottom: 30px;
}

@media (min-width: 1024px) {
  .recruiting-area {
    padding-top: min(5.2vw, 100px);
    padding-bottom: min(4.16vw, 80px);
  }
}

.recruiting-area__inner {
  background: url(../img/index/recruiting/img_sp.jpg) no-repeat;
  background-size: 100%;
  padding-top: 140.5333333333%;
  position: relative;
}

@media (min-width: 1024px) {
  .recruiting-area__inner {
    background: url(../img/index/recruiting/img_pc.jpg) no-repeat;
    background-size: 100%;
    padding-top: 39.5833333333%;
  }
}

.recruiting-area__wrapper {
  position: absolute;
  top: 6.4vw;
  width: 100%;
  left: 50%;
  transform: translateX(-50%);
}

@media (min-width: 1024px) {
  .recruiting-area__wrapper {
    width: min(94.7%, 1620px);
    margin-inline: auto;
    display: flex;
    justify-content: flex-end;
    top: min(5.05vw, 97px);
  }
}

.recruiting-area__contents {
  width: 100%;
  padding-inline: 40px;
}

@media (min-width: 1024px) {
  .recruiting-area__contents {
    padding-left: min(3.28vw, 63px);
    padding-right: min(1.97vw, 38px);
    width: 50%;
  }
}

.recruiting-area__contents .heading {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 13.17vw;
  background-color: #C20F0F;
  color: #fff;
  border-radius: 100px;
  position: relative;
  padding-left: 12.8vw;
}

@media (min-width: 1024px) {
  .recruiting-area__contents .heading {
    height: min(6.19vw, 119px);
    border-radius: 200px;
    padding-left: min(6.25vw, 120px);
  }
}

.recruiting-area__contents .heading>span {
  display: block;
  width: 17.46vw;
  height: 17.46vw;
  background-color: #C20F0F;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

@media (min-width: 1024px) {
  .recruiting-area__contents .heading>span {
    width: min(8.22vw, 158px);
    height: min(8.22vw, 158px);
  }
}

.recruiting-area__contents .heading>span::before {
  content: "";
  display: block;
  background: url(../img/index/area/icon02.png) no-repeat;
  background-size: 100%;
  width: 8.4vw;
  height: 8.4vw;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-23deg);
}

@media (min-width: 1024px) {
  .recruiting-area__contents .heading>span::before {
    width: min(3.93vw, 75.63px);
    height: min(3.93vw, 75.63px);
  }
}

.recruiting-area__contents .heading strong {
  font-size: 5.33vw;
  font-weight: bold;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 4.26vw;
}

@media (min-width: 1024px) {
  .recruiting-area__contents .heading strong {
    font-size: min(2.86vw, 5.5rem);
    gap: min(1.35vw, 26px);
  }
}

.recruiting-area__contents .heading strong span {
  color: #FFDF10;
  font-size: 7.19vw;
  font-weight: bold;
}

@media (min-width: 1024px) {
  .recruiting-area__contents .heading strong span {
    font-size: min(3.85vw, 7.4rem);
  }
}

.recruiting-area__contents .txt {
  color: #fff;
  font-size: 4.26vw;
  font-weight: bold;
  text-align: center;
  margin-top: 5.06vw;
  text-shadow: 0px 5px 10px rgba(0, 0, 0, 0.3);
  line-height: 1.6;
}

@media (min-width: 1024px) {
  .recruiting-area__contents .txt {
    font-size: min(1.66vw, 3.2rem);
    margin-top: min(4.37vw, 84px);
  }
}

.recruiting-area__contents .txt strong {
  font-size: 5.33vw;
  font-weight: bold;
  border-bottom: double 4px #FFDF10;
}

@media (min-width: 1024px) {
  .recruiting-area__contents .txt strong {
    margin-top: min(0.52vw, 10px);
    font-size: min(2.18vw, 4.2rem);
    line-height: 1.8;
  }
}

@media (min-width: 1280px) {
  .recruiting-area__contents .txt strong {
    border-bottom: double 6px #FFDF10;
  }
}

.recruiting-area__contents .txt strong span {
  font-size: 3.73vw;
  font-weight: bold;
}

@media (min-width: 1024px) {
  .recruiting-area__contents .txt strong span {
    font-size: min(1.51vw, 2.9rem);
  }
}

.recruiting-area__contents .txt+strong {
  display: block;
  width: fit-content;
  margin-inline: auto;
  font-size: 11.73vw;
  font-weight: bold;
  color: #fff;
  border-bottom: double 4px #FFDF10;
  text-shadow: 0px 5px 10px rgba(0, 0, 0, 0.3);
  line-height: 1.6;
}

@media (min-width: 1024px) {
  .recruiting-area__contents .txt+strong {
    margin-top: min(0.62vw, 12px);
    font-size: min(4.79vw, 9.2rem);
  }
}

@media (min-width: 1280px) {
  .recruiting-area__contents .txt+strong {
    border-bottom: double 6px #FFDF10;
  }
}

.company {
  padding-top: 30px;
  padding-bottom: 30px;
}

@media (min-width: 1024px) {
  .company {
    padding-top: min(4.16vw, 80px);
    padding-bottom: min(5.2vw, 100px);
  }
}

.company h3 {
  font-family: var(--mont), sans-serif;
  text-align: center;
  color: #db5d11;
  width: 222px;
  display: flex;
  flex-direction: column;
  align-items: center;
  line-height: 1.4;
  margin-inline: auto;
  gap: clamp(1.2rem, 1.56vw, 2rem);
}

@media (min-width: 1024px) {
  .company h3 {
    gap: clamp(2rem, 1.95vw, 3.7rem);
    width: min(19.11vw, 367px);
  }
}

.company h3 strong {
  position: relative;
  font-weight: 600;
  text-shadow: 1px 1px 0 #323038, -1px 1px 0 #323038, 1px -1px 0 #323038, -1px -1px 0 #323038;
}

.company h3 span {
  font-family: var(--font-fam), sans-serif;
  font-size: clamp(1.4rem, 1.36vw, 2rem);
  font-weight: 500;
  line-height: 1;
  color: #323038;
}

@media (min-width: 1024px) {
  .company__inner {
    width: 97.3%;
    min-width: 1010px;
  }
}

.company__dl {
  margin-top: clamp(3.2rem, 3.12vw, 6.6rem);
  background-color: #fff;
  border-radius: 10px;
  padding-inline: 20px;
  padding-top: 25px;
  padding-bottom: 20px;
  position: relative;
}

@media (min-width: 1024px) {
  .company__dl {
    border-radius: 20px;
    width: min(95%, 1200px);
    margin-inline: auto;
    padding-inline: min(4.16vw, 80px);
    padding-top: min(3.33vw, 64px);
    padding-bottom: min(3.12vw, 60px);
  }
}

.company__dl strong {
  display: block;
  font-size: clamp(2.4rem, 2.34vw, 2.8rem);
  font-weight: bold;
  text-align: center;
}

.company__dl strong+p {
  margin-top: clamp(2.6rem, 2.03vw, 4.3rem);
  font-size: 1.6rem;
}

@media (min-width: 1024px) {
  .company__dl dl {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
  }
}

.company__dl dl dt {
  border-top: solid 1px #323038;
  background-color: #F5F1E8;
  font-size: 1.8rem;
  font-weight: bold;
  padding-block: clamp(1.8rem, 1.4vw, 3rem);
  padding-inline: clamp(2rem, 1.56vw, 3rem);
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction: column;
}

@media (min-width: 1024px) {
  .company__dl dl dt {
    width: min(18.5%, 185px);
  }
}

.company__dl dl dt:nth-last-of-type(1) {
  border-bottom: solid 1px #323038;
}

.company__dl dl dd {
  font-size: 1.6rem;
  font-weight: normal;
  padding-block: clamp(1.6rem, 1.25vw, 2.6rem);
  padding-inline: clamp(2rem, 1.56vw, 3rem);
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction: column;
}

@media (min-width: 1024px) {
  .company__dl dl dd {
    width: calc(100% - min(18.5%, 185px));
    border-top: solid 1px #323038;
  }
}

.company__dl dl dd:nth-last-of-type(1) {
  border-bottom: solid 1px #323038;
}

.company__dl dl dd p+p {
  margin-top: clamp(1.6rem, 1.25vw, 2.8rem);
}

.company__dl dl dd ul li {
  text-indent: -1.6rem;
  padding-left: 1.6rem;
}

.company__dl dl dd ul.pc-flex {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 4px 0;
}

@media (min-width: 1024px) {
  .company__dl dl dd ul.pc-flex li {
    width: 41%;
  }
}

.company__dl dl+p {
  margin-top: clamp(1.8rem, 1.75vw, 3.6rem);
  width: fit-content;
  margin-inline: auto;
  font-size: clamp(1.6rem, 1.56vw, 1.9rem);
  font-weight: normal;
}

.contact {
  width: 100%;
  padding-top: 30px;
}

@media (min-width: 1024px) {
  .contact {
    padding-top: min(5.2vw, 100px);
  }
}

.contact .ttl {
  width: calc(100% - 10px);
  height: 188px;
  margin-left: auto;
  margin-right: 0;
  background-color: #323038;
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
  padding-block: 8px;
  position: relative;
}

@media (min-width: 1024px) {
  .contact .ttl {
    width: 97.3%;
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
    height: max(min(16.82vw, 323px), 231px);
    display: flex;
    align-items: baseline;
    padding-top: min(1.04vw, 20px);
  }
}

.contact .ttl::before {
  content: "";
  display: block;
  width: 90%;
  height: 1px;
  background-color: #DB5D11;
  margin-left: -10px;
  position: absolute;
  left: 0;
  bottom: 85px;
}

@media (min-width: 1024px) {
  .contact .ttl::before {
    bottom: 98px;
    width: min(61.04vw, 1172px);
    margin-left: -2.7%;
  }
}

.contact .ttl::after {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #DB5D11;
  margin-left: -10px;
  left: 90%;
  bottom: 80px;
  position: absolute;
}

@media (min-width: 1024px) {
  .contact .ttl::after {
    margin-left: -2.7%;
    left: min(61.04vw, 1172px);
    bottom: 94px;
  }
}

@media (min-width: 1280px) {
  .contact .ttl::after {
    width: 15px;
    height: 15px;
    bottom: 92px;
  }
}

.contact .ttl h3 {
  font-family: var(--mont), sans-serif;
  font-size: 4.5rem;
  font-weight: 600;
  color: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  line-height: 1.4;
  width: fit-content;
  margin-inline: auto;
}

@media (min-width: 1024px) {
  .contact .ttl h3 {
    width: min(31.25vw, 600px);
    margin-inline: auto;
    font-size: min(3.9vw, 7.5rem);
    padding-top: 25px;
    gap: clamp(1rem, 0.97vw, 1.5rem);
  }
}

@media (min-width: 1280px) {
  .contact .ttl h3 {
    padding-top: 20px;
  }
}

.contact .ttl h3 span {
  font-family: var(--font-fam), sans-serif;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1;
}

@media (min-width: 1024px) {
  .contact .ttl h3 span {
    font-size: min(1.04vw, 2rem);
  }
}

.contact__inner {
  margin-inline: auto;
  position: relative;
}

@media (min-width: 1024px) {
  .contact__inner {
    width: 97.3%;
    min-width: 1010px;
    margin-left: auto;
    margin-right: auto;
  }
}

.contact__dl {
  background-color: #fff;
  border-radius: 10px;
  margin-top: -65px;
  padding-inline: 20px;
  padding-top: 25px;
  padding-bottom: 43px;
  position: relative;
}

@media (min-width: 1024px) {
  .contact__dl {
    border-radius: 20px;
    width: min(95%, 1230px);
    margin-top: max(-3.18vw, -61px);
    margin-inline: auto;
    padding-inline: min(4.16vw, 80px);
    padding-top: min(2.6vw, 50px);
    padding-bottom: min(3.12vw, 60px);
  }
}

.contact__dl>p {
  word-break: keep-all;
  text-align: center;
  font-size: clamp(1.6rem, 1.56vw, 2rem);
  font-weight: bold;
}

.contact__dl form>dl {
  margin-top: clamp(3.2rem, 4.16vw, 6rem);
}

@media (min-width: 1024px) {
  .contact__dl form>dl {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
  }
}

.contact__dl form>dl dt {
  border-top: solid 1px #323038;
  background-color: #F5F1E8;
  font-size: 1.8rem;
  font-weight: bold;
  padding-block: clamp(1.8rem, 1.4vw, 3rem);
  padding-inline: clamp(2rem, 1.56vw, 3rem);
  display: flex;
  justify-content: flex-start;
}

@media (min-width: 1024px) {
  .contact__dl form>dl dt {
    width: max(min(27.5%, 290px), 260px);
  }
}

.contact__dl form>dl dt.req::after {
  content: "*";
  color: #C20F0F;
}

.contact__dl form>dl dt:nth-last-of-type(1) {
  border-bottom: solid 1px #323038;
}

.contact__dl form>dl dd {
  font-size: 1.6rem;
  font-weight: normal;
  padding-block: clamp(1.6rem, 1.25vw, 2.6rem);
  padding-inline: clamp(2rem, 1.56vw, 3rem);
}

@media (min-width: 1024px) {
  .contact__dl form>dl dd {
    width: calc(100% - max(min(27.5%, 290px), 260px));
    border-top: solid 1px #323038;
  }
}

.contact__dl form>dl dd:nth-last-of-type(1) {
  border-bottom: solid 1px #323038;
}

.contact__dl form>dl dd>p {
  text-decoration: underline;
  color: #C20F0F;
}

.contact__dl form>dl dd>p:has(.err) {
  text-decoration: none;
}

.contact__dl form>dl dd ul {
  width: min(100%, 660px);
  margin-top: 18px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

@media (min-width: 1024px) {
  .contact__dl form>dl dd ul {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 6px 0;
  }
}

@media (min-width: 1024px) {
  .contact__dl form>dl dd ul li {
    width: 50%;
  }
}

.contact__dl form>dl dd input[type=text] {
  width: min(100%, 660px);
  height: clamp(4rem, 3.9vw, 4.6rem);
  background-color: #F0F0F0;
  border-radius: 7px;
  padding-inline: 12px;
  font-size: 1.6rem;
}

@media (min-width: 1024px) {
  .contact__dl form>dl dd.addr input[type=text] {
    max-width: 202px;
  }
}

.contact__dl form>dl dd textarea {
  width: min(100%, 660px);
  background-color: #F0F0F0;
  min-height: clamp(12rem, 15.62vw, 28rem);
  border-radius: 7px;
  padding: 12px;
  font-size: 1.6rem;
}

.contact__dl .privacy {
  width: min(100%, 900px);
  margin-inline: auto;
  margin-top: clamp(3rem, 3.9vw, 6rem);
  border-radius: 7px;
  background-color: #F0F0F0;
  padding: clamp(2rem, 2.6vw, 4.5rem);
}

.contact__dl .privacy strong {
  display: block;
  text-align: center;
  font-size: 2rem;
  font-weight: bold;
}

.contact__dl .privacy .contents {
  height: clamp(23.8rem, 23.24vw, 26rem);
  overflow-y: scroll;
  margin-top: clamp(1.8rem, 2.34vw, 2.6rem);
  background-color: #fff;
  font-size: clamp(1.4rem, 1.36vw, 1.6rem);
  padding-block: clamp(1.7rem, 1.66vw, 2.4rem);
  padding-inline: clamp(1.3rem, 1.26vw, 3rem);
}

@media (min-width: 1024px) {
  .contact__dl .privacy .contents {
    padding-left: clamp(1.3rem, 1.26vw, 3rem);
    padding-right: clamp(4rem, 3.9vw, 8rem);
  }
}

.contact__dl .privacy .contents dl {
  margin-top: clamp(1.6rem, 1.56vw, 1.8rem);
}

.contact__dl .privacy .contents dl dt:nth-of-type(n+2) {
  margin-top: clamp(1.6rem, 1.56vw, 1.8rem);
}

.contact__dl .privacy_chk {
  margin-top: clamp(3rem, 2.92vw, 5.8rem);
  width: fit-content;
  margin-inline: auto;
}

.contact__dl .privacy_chk label {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: clamp(1.6rem, 1.56vw, 2rem);
  font-weight: bold;
}

.contact__dl .privacy .contents ul {
  list-style-type: disc;
  margin-left: 1.5em;
  margin-top: 0.5em;
}

.contact__dl .privacy .contents dl dd>div {
  margin-top: 1em;
}

.contact__dl .privacy .contents dl dd p+p {
  margin-top: 1em;
}

.contact__dl .privacy .contents dl dd a {
  text-decoration: underline;
}

.contact__dl .privacy .contents dl dd a:hover {
  text-decoration: none;
}

.radio {
  cursor: pointer;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 4px;
  position: relative;
}

@media (min-width: 1024px) {
  .radio {
    gap: 0;
  }
}

.radio span {
  display: block;
  width: 16px;
  height: 16px;
  min-width: 16px;
  min-height: 16px;
  border-radius: 50%;
  border: solid 1px #323038;
  position: relative;
}

.radio span::after {
  content: "";
  display: block;
  width: 9px;
  height: 9px;
  min-width: 9px;
  min-height: 9px;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: #DB5D11;
  transform: translate(-50%, -50%);
  opacity: 0;
}

.radio input[type=radio] {
  appearance: none;
  position: absolute;
  top: 0;
  left: 0;
}

.radio:has(input[type=radio]:checked) span::after {
  opacity: 1;
}

.chk {
  cursor: pointer;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 4px;
  position: relative;
}

.chk span {
  display: block;
  width: 16px;
  height: 16px;
  min-width: 16px;
  min-height: 16px;
  border: solid 1px #323038;
  position: relative;
}

.chk span::after {
  content: "";
  display: block;
  width: 5px;
  height: 10px;
  min-width: 5px;
  min-height: 10px;
  border-right: solid 2px #DB5D11;
  border-bottom: solid 2px #DB5D11;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  opacity: 0;
}

.chk input[type=checkbox] {
  appearance: none;
  position: absolute;
  top: 0;
  left: 0;
}

.chk:has(input[type=checkbox]:checked) span::after {
  opacity: 1;
}

.conf_container>strong {
  font-size: clamp(1.8rem, 1.75vw, 2.4rem);
  font-weight: bold;
  display: block;
  text-align: center;
}

.conf_container .err {
  color: #C20F0F;
}

.conf_container.contact__dl>p {
  margin-top: clamp(2.4rem, 2.34vw, 2.8rem);
  font-size: 1.6rem;
}

.conf_container.contact__dl dl {
  margin-top: clamp(3.2rem, 3.12vw, 4.5rem);
}

.conf_container.contact__dl dl:nth-of-type(n+2) {
  margin-top: 0;
}

.conf_container.contact__dl dl:nth-last-of-type(1) {
  border-bottom: solid 1px #323038;
}

.conf_container.contact__dl dl dt:nth-last-of-type(1) {
  border-bottom: none;
}

.conf_container.contact__dl dl dd:nth-last-of-type(1) {
  border-bottom: none;
}

.submit_btn {
  margin-top: clamp(3.2rem, 3.12vw, 6rem);
  margin-inline: auto;
  width: min(100%, 353px);
  position: relative;
}

.submit_btn::after {
  content: "";
  display: block;
  width: 11px;
  height: 13px;
  border-left: solid 11px #fff;
  border-top: solid 6.5px transparent;
  border-bottom: solid 6.5px transparent;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
}

.submit_btn input[type=submit] {
  border-radius: 10px;
  width: 100%;
  height: 68px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: clamp(1.6rem, 1.56vw, 1.9rem);
  font-weight: bold;
  background-color: #C20F0F;
  transition: background-color 0.3s;
}

@media (min-width: 1024px) {
  .submit_btn:hover input[type=submit] {
    background-color: #323038;
  }
}

.back_btn {
  width: min(100%, 353px);
  position: relative;
}

.back_btn::after {
  content: "";
  display: block;
  width: 11px;
  height: 13px;
  border-left: solid 11px #fff;
  border-top: solid 6.5px transparent;
  border-bottom: solid 6.5px transparent;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
}

.back_btn input[type=button] {
  border-radius: 10px;
  width: 100%;
  height: 68px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: clamp(1.6rem, 1.56vw, 1.9rem);
  font-weight: bold;
  background-color: #323038;
  transition-timing-function: opacity 0.3s;
}

@media (min-width: 1024px) {
  .back_btn:hover input[type=button] {
    opacity: 0.6;
  }
}

.back_btn.send input[type=button] {
  background-color: #C20F0F;
  transition: background-color 0.3s;
}

@media (min-width: 1024px) {
  .back_btn.send:hover input[type=button] {
    opacity: 1;
    background-color: #323038;
  }
}

.submit_area {
  margin-top: clamp(3.2rem, 3.12vw, 6rem);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: clamp(1.2rem, 1.17vw, 2.4rem);
}

@media (min-width: 1024px) {
  .submit_area {
    flex-direction: row;
  }
}

.submit_area .submit_btn {
  margin: 0;
}

._blog {
  --inner-max: 1200px;
  margin-inline: auto;
}

._blog h3 {
  padding-top: 30px;
  width: fit-content;
  margin-inline: auto;
  color: #DB5D11;
  font-size: clamp(2.5rem, 2.44vw, 3.5rem);
  font-weight: bold;
}

._blog__inner {
  padding-top: clamp(3rem, 2.34vw, 5rem);
  display: flex;
  flex-direction: column;
  gap: clamp(2.7rem, 2.1vw, 5rem);
}

aside {
  background-color: #DB5D11;
  border-radius: 10px;
  padding: 20px;
}

@media (min-width: 1024px) {
  aside {
    width: min(88.3%, 1060px);
    margin-inline: auto;
    border-radius: 20px;
    padding-block: 22px;
    padding-inline: 30px;
  }
}

aside ul {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

@media (min-width: 1024px) {
  aside ul {
    flex-direction: row;
  }
}

aside ul li {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
}

@media (min-width: 1024px) {
  aside ul li {
    width: 50%;
  }

  aside ul li:nth-of-type(1) {
    padding-right: 28px;
  }

  aside ul li:nth-of-type(2) {
    padding-left: 28px;
  }
}

aside ul li strong {
  font-size: 1.6rem;
  color: #fff;
  font-weight: bold;
}

aside ul li .select_box {
  width: 52vw;
  position: relative;
}

@media (min-width: 1024px) {
  aside ul li .select_box {
    width: min(21.48vw, 352px);
  }
}

@media (min-width: 1280px) {
  aside ul li .select_box {
    width: min(25vw, 352px);
  }
}

aside ul li .select_box::after {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-right: solid 1px #323038;
  border-bottom: solid 1px #323038;
  position: absolute;
  top: calc(50% - 2px);
  right: 15px;
  transform: translateY(-50%) rotate(45deg);
  pointer-events: none;
}

aside ul li .select_box select {
  appearance: none;
  cursor: pointer;
  width: 100%;
  height: 37px;
  border-radius: 10px;
  font-size: 1.6rem;
  font-weight: 500;
  padding-inline: 18px;
}

.breadcrumb {
  padding-top: clamp(1.5rem, 1.17vw, 4rem);
  width: min(100% - var(--inner-margin), 1200px);
  margin-inline: auto;
}

.breadcrumb ul {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  color: #DB5D11;
}

.breadcrumb ul li {
  display: inline;
  font-size: clamp(1.2rem, 0.93vw, 1.6rem);
  font-weight: normal;
  color: #323038;
  --hover_color: #323038;
}

.breadcrumb ul li:nth-of-type(1) {
  color: #323038;
  --hover_color: #323038;
}

.breadcrumb ul li:not(:nth-of-type(1))::before {
  content: "ー";
  display: inline-block;
  padding-inline: clamp(1rem, 0.78vw, 1.6rem);
  color: #323038;
}

.breadcrumb ul li.current {
  color: #DB5D11;
}

.breadcrumb ul li a {
  text-decoration: underline;
  text-decoration-color: transparent;
  transition: text-decoration-color 0.3s;
}

@media (min-width: 1024px) {
  .breadcrumb ul li a:hover {
    text-decoration-color: var(--hover_color);
  }
}

.pager {
  margin-top: clamp(3rem, 2.34vw, 5rem);
}

.pager ul {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
}

.pager ul li {
  line-height: 1;
  padding-bottom: 2px;
}

.pager ul li.current {
  color: #fff;
  background-color: #323038;
  border-radius: 10px;
  width: 41px;
  height: 41px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2.1rem;
  font-weight: normal;
}

@media (min-width: 1024px) {
  .pager ul li.current {
    font-size: 2rem;
    width: 36px;
    height: 36px;
  }
}

.pager ul li a {
  line-height: 1;
  padding-bottom: 2px;
}

.pager ul li a.pages {
  border-radius: 10px;
  border: solid 1px #DB5D11;
  color: #DB5D11;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2.1rem;
  font-weight: normal;
  width: 41px;
  height: 41px;
  transition: color 0.3s, background-color 0.3s;
}

@media (min-width: 1024px) {
  .pager ul li a.pages {
    font-size: 2rem;
    width: 36px;
    height: 36px;
  }
}

@media (min-width: 1024px) {
  .pager ul li a.pages:hover {
    color: #fff;
    background-color: #DB5D11;
  }
}

.pager ul li a.prev {
  display: block;
  width: 41px;
  height: 41px;
  position: relative;
}

@media (min-width: 1024px) {
  .pager ul li a.prev {
    width: 36px;
    height: 36px;
  }
}

.pager ul li a.prev::before {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  position: absolute;
  top: 50%;
  left: 6px;
  border-left: solid 1px #323038;
  border-top: solid 1px #323038;
  transform: translateY(-50%) rotate(-45deg);
}

.pager ul li a.next {
  display: block;
  width: 41px;
  height: 41px;
  position: relative;
}

@media (min-width: 1024px) {
  .pager ul li a.next {
    width: 36px;
    height: 36px;
  }
}

.pager ul li a.next::before {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  position: absolute;
  top: 50%;
  right: 6px;
  border-right: solid 1px #323038;
  border-bottom: solid 1px #323038;
  transform: translateY(-50%) rotate(-45deg);
}

.pager ul li a.arrow::before {
  transition: border-color 0.3s;
}

@media (min-width: 1024px) {
  .pager ul li a.arrow:hover::before {
    border-color: #DB5D11;
  }
}

.single-pager {
  padding-top: clamp(3rem, 2.92vw, 5rem);
}

.single-pager ul {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 29px;
}

.single-pager ul li a.backbtn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: min(29.86vw, 136px);
  background-color: #323038;
  color: #fff;
  font-size: clamp(1.6rem, 1.25vw, 2rem);
  font-weight: normal;
  padding-inline: clamp(1.2rem, 0.93vw, 1.6rem);
  padding-block: 4px;
  border-radius: 10px;
  transition: background-color 0.3s;
}

@media (min-width: 1024px) {
  .single-pager ul li a.backbtn:hover {
    background-color: #DB5D11;
  }
}

.single-pager ul li a.prev {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 4px;
  transition: color 0.3s;
}

.single-pager ul li a.prev::before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-left: solid 1px #323038;
  border-top: solid 1px #323038;
  transform: rotate(-45deg);
  transition: border-color 0.3s;
}

@media (min-width: 1024px) {
  .single-pager ul li a.prev:hover {
    color: #DB5D11;
  }

  .single-pager ul li a.prev:hover::before {
    border-color: #DB5D11;
  }
}

.single-pager ul li a.next {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 4px;
  transition: color 0.3s;
}

.single-pager ul li a.next::after {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-right: solid 1px #323038;
  border-bottom: solid 1px #323038;
  transform: rotate(-45deg);
  transition: border-color 0.3s;
}

@media (min-width: 1024px) {
  .single-pager ul li a.next:hover {
    color: #DB5D11;
  }

  .single-pager ul li a.next:hover::after {
    border-color: #DB5D11;
  }
}

._blog__lst {
  width: 100%;
  background-color: #fff;
  border-radius: 10px;
  padding-inline: 20px;
  padding-block: 20px;
}

@media (min-width: 1024px) {
  ._blog__lst {
    border-radius: 20px;
    margin-inline: auto;
    padding-inline: min(3.64vw, 70px);
    padding-block: min(2.6vw, 50px);
  }
}

._blog__lst>ul li {
  border-bottom: solid 1px #DB5D11;
  padding-bottom: 16px;
}

._blog__lst>ul li:nth-of-type(n+2) {
  padding-top: 18px;
}

._blog__lst>ul li a {
  display: flex;
  flex-direction: column;
  gap: 12px;
  transition: color 0.3s;
}

@media (min-width: 1024px) {
  ._blog__lst>ul li a {
    padding-inline: clamp(0.5rem, 0.48vw, 1rem) clamp(1rem, 0.97vw, 1.6rem);
  }
}

._blog__lst>ul li a .detail {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

@media (min-width: 1024px) {
  ._blog__lst>ul li a .detail {
    justify-content: flex-start;
    gap: clamp(2rem, 1.56vw, 3.5rem);
  }
}

._blog__lst>ul li a .day {
  font-size: clamp(1.4rem, 1.36vw, 1.8rem);
  font-weight: bold;
}

._blog__lst>ul li a .day span {
  font-size: 2.4rem;
}

._blog__lst>ul li a .cat {
  width: fit-content;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #DB5D11;
  color: #fff;
  font-size: clamp(1rem, 0.97vw, 1.2rem);
  font-weight: 500;
  border-radius: 5px;
  padding-inline: clamp(2rem, 1.56vw, 2.6rem);
  padding-block: 4px;
}

._blog__lst>ul li a p {
  font-size: clamp(1.4rem, 1.09vw, 1.6rem);
}

@media (min-width: 1024px) {
  ._blog__lst>ul li a:hover {
    color: #DB5D11;
  }
}

._blog__lst>a {
  margin-top: clamp(2rem, 1.56vw, 2.8rem);
  font-size: clamp(1.4rem, 1.36vw, 2rem);
  font-weight: 500;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: clamp(1rem, 1.3vw, 3.5rem);
  width: fit-content;
  margin-left: auto;
  margin-right: 0;
  transition: color 0.3s;
}

._blog__lst>a::after {
  content: "";
  display: block;
  background-image: url(../img/icon/arrow.svg);
  background-size: 100%;
  background-repeat: no-repeat;
  margin-left: 0;
  width: clamp(2rem, 1.56vw, 2.5rem);
  height: clamp(2rem, 1.56vw, 2.5rem);
  min-width: clamp(2rem, 1.56vw, 2.5rem);
  min-height: clamp(2rem, 1.56vw, 2.5rem);
  transition: background-image 0.3s, transform 0.3s;
}

@media (min-width: 1024px) {
  ._blog__lst>a:hover {
    color: #DB5D11;
  }

  ._blog__lst>a:hover::after {
    background-image: url(../img/icon/arrow-hover.svg);
    background-size: 100%;
    transform: translateX(-10px);
  }
}

._blog__single {
  background-color: #fff;
  border-radius: 10px;
  padding-inline: 20px;
  padding-block: 20px;
  width: 100%;
}

@media (min-width: 1024px) {
  ._blog__single {
    border-radius: 20px;
    margin-inline: auto;
    padding-inline: min(3.64vw, 70px);
    padding-block: min(2.6vw, 50px);
  }
}

._blog__single .detail {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

@media (min-width: 1024px) {
  ._blog__single .detail {
    justify-content: flex-start;
    gap: clamp(2rem, 1.56vw, 3.5rem);
  }
}

._blog__single .detail .day {
  font-size: clamp(1.4rem, 1.36vw, 1.8rem);
  font-weight: bold;
}

._blog__single .detail .day span {
  font-size: 2.4rem;
}

._blog__single .detail .cat {
  width: fit-content;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #DB5D11;
  color: #fff;
  font-size: clamp(1rem, 0.97vw, 1.2rem);
  font-weight: 500;
  border-radius: 5px;
  padding-inline: clamp(2rem, 1.56vw, 2.6rem);
  padding-block: 4px;
}

._blog__single h4 {
  font-size: clamp(1.8rem, 1.75vw, 2.5rem);
  font-weight: bold;
  color: #DB5D11;
}

._blog__single--contents {
  margin-top: clamp(1.8rem, 1.75vw, 4rem);
  padding-block: clamp(1.8rem, 1.75vw, 4rem);
  border-block: solid 1px #DB5D11;
}

._blog__single--contents *:nth-child(n+2) {
  margin-top: clamp(1.8rem, 1.75vw, 4rem);
}

._blog__single--contents p {
  font-size: clamp(1.4rem, 1.36vw, 1.8rem);
  font-weight: normal;
}

._blog__single--contents img {
  display: block;
  text-align: center;
  margin-inline: auto;
}

._recruit {
  width: 100%;
}

._recruit h3 {
  padding-top: 30px;
  width: fit-content;
  margin-inline: auto;
  color: #DB5D11;
  font-size: clamp(2.5rem, 2.44vw, 3.5rem);
  font-weight: bold;
}

._recruit .recruit__inner {
  padding-top: clamp(3rem, 2.34vw, 5rem);
}

._recruit .recruit__dl {
  margin-top: 0;
}

._recruit .recruit__dl .btn::after {
  content: none;
}

@media (min-width: 1024px) {
  body:not(:has(.lp__lst)) .result_num {
    background-color: #F5F1E8;
  }
}

@media (min-width: 1024px) {
  body:not(:has(.lp__lst)) .blog {
    padding-top: 0 !important;
    margin-top: max(-5.21vw, -100px);
    position: relative;
    z-index: 100;
  }
}

@media (min-width: 1280px) {
  body:not(:has(.lp__lst)) .biz__contents .box--pc {
    min-height: 612px;
  }
}

.wp-pagenavi {
  margin-top: clamp(3rem, 2.34vw, 5rem);
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
}

.wp-pagenavi .pages {
  display: none;
}

.wp-pagenavi .current {
  line-height: 1;
  padding-bottom: 2px;
  color: #fff;
  background-color: #323038;
  border-radius: 10px;
  width: 41px;
  height: 41px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2.1rem;
  font-weight: normal;
}

@media (min-width: 1024px) {
  .wp-pagenavi .current {
    font-size: 2rem;
    width: 36px;
    height: 36px;
  }
}

.wp-pagenavi .page {
  line-height: 1;
  padding-bottom: 2px;
  border-radius: 10px;
  border: solid 1px #DB5D11;
  color: #DB5D11;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2.1rem;
  font-weight: normal;
  width: 41px;
  height: 41px;
  transition: color 0.3s, background-color 0.3s;
}

@media (min-width: 1024px) {
  .wp-pagenavi .page {
    font-size: 2rem;
    width: 36px;
    height: 36px;
  }
}

@media (min-width: 1024px) {
  .wp-pagenavi .page:hover {
    color: #fff;
    background-color: #DB5D11;
  }
}

.wp-pagenavi .previouspostslink {
  line-height: 1;
  padding-bottom: 2px;
  display: block;
  width: 41px;
  height: 41px;
  position: relative;
  transition: border-color 0.3s;
}

@media (min-width: 1024px) {
  .wp-pagenavi .previouspostslink {
    width: 36px;
    height: 36px;
  }
}

.wp-pagenavi .previouspostslink::before {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  position: absolute;
  top: 50%;
  left: 6px;
  border-left: solid 1px #323038;
  border-top: solid 1px #323038;
  transform: translateY(-50%) rotate(-45deg);
}

@media (min-width: 1024px) {
  .wp-pagenavi .previouspostslink:hover::before {
    border-color: #DB5D11;
  }
}

.wp-pagenavi .nextpostslink {
  line-height: 1;
  padding-bottom: 2px;
  display: block;
  width: 41px;
  height: 41px;
  position: relative;
  transition: border-color 0.3s;
}

@media (min-width: 1024px) {
  .wp-pagenavi .nextpostslink {
    width: 36px;
    height: 36px;
  }
}

.wp-pagenavi .nextpostslink::before {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  position: absolute;
  top: 50%;
  right: 6px;
  border-right: solid 1px #323038;
  border-bottom: solid 1px #323038;
  transform: translateY(-50%) rotate(-45deg);
}

@media (min-width: 1024px) {
  .wp-pagenavi .nextpostslink:hover::before {
    border-color: #DB5D11;
  }
}

.err_404 {
  padding-block: clamp(8rem, 6.25vw, 12rem);
  width: min(100% - 40px, 960px);
  margin-inline: auto;
}

.err_404 strong {
  font-size: clamp(2.4rem, 2.34vw, 3.6rem);
  font-weight: bold;
  display: block;
  text-align: center;
}

.err_404 a {
  margin-top: clamp(2.4rem, 2.34vw, 3.6rem);
  display: block;
  width: fit-content;
  margin-inline: auto;
  color: #DB5D11;
  font-size: clamp(1.8rem, 1.75vw, 2.4rem);
  font-weight: bold;
  text-decoration: underline;
}

.recruit__dl.empty {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-block: 0;
  height: clamp(20rem, 19.53vw, 30rem);
}

.recruit__dl.empty::after {
  content: none;
}