@charset "UTF-8";
a {
  color: #212121;
}
a:visited {
  color: #212121;
}
a:hover {
  color: #212121;
}

.btn {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  line-height: 1;
  width: -moz-fit-content;
  width: fit-content;
  height: 3.7em;
  padding: 0 2.9em 0 1.7em;
  min-width: 7.4em;
  border: 1px solid #d92027;
  color: #d92027;
  background-color: #fff;
  border-radius: 0.3em;
  position: relative;
}
.btn:visited {
  color: #d92027;
}
.btn:hover {
  color: #fff;
  background-color: #111;
  border-color: #111;
}
.btn::before {
  content: "";
  width: 2em;
  height: 2em;
  background-image: url(../img/common/i-arw-red.svg);
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0em;
  right: 0.5em;
  z-index: 0;
  transition: all 0.5s;
}
.btn::after {
  content: "";
  width: 2em;
  height: 2em;
  background-image: url(../img/common/i-arw-wh.svg);
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0em;
  right: 2em;
  z-index: 0;
  transition: all 0.5s;
  opacity: 0;
}
.btn:hover::before {
  right: -1em;
  opacity: 0;
}
.btn:hover::after {
  right: 0.5em;
  opacity: 1;
}

.btn-rev {
  background-color: #d92027;
  color: #fff;
}
.btn-rev:visited {
  color: #fff;
}
.btn-rev:hover {
  color: #fff;
  background-color: #111;
  border-color: #111;
}
.btn-rev::before {
  background-image: url(../img/common/i-arw-wh.svg);
}
.btn-rev::after {
  content: "";
  background-image: url(../img/common/i-arw-red.svg);
}

.anc-line {
  position: relative;
  color: #d92027;
  padding-right: 2em;
}
.anc-line:visited {
  color: #d92027;
}
.anc-line:hover {
  color: #212121;
  border-color: #111;
}
.anc-line::before {
  content: "";
  width: 2em;
  height: 2em;
  background-image: url(../img/common/i-arw-red.svg);
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0em;
  right: 0;
  z-index: 0;
  transition: all 0.5s;
}
.anc-line::after {
  content: "";
  width: 2em;
  height: 2em;
  background-image: url(../img/common/i-arw-bk.svg);
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0em;
  right: 2em;
  z-index: 0;
  transition: all 0.5s;
  opacity: 0;
}
.anc-line:hover::before {
  right: -1em;
  opacity: 0;
}
.anc-line:hover::after {
  right: 0;
  opacity: 1;
}

.btn-uline {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  line-height: 1;
  width: -moz-fit-content;
  width: fit-content;
  height: 3.7em;
  min-width: 9em;
  color: #212121;
  border-bottom: 1px solid #707070;
  position: relative;
}
.btn-uline::before {
  content: "";
  width: 0;
  height: 2px;
  background-color: #d92027;
  position: absolute;
  left: 0;
  bottom: -1px;
}
.btn-uline:visited {
  color: #212121;
}
.btn-uline:hover {
  color: #d92027;
}
.btn-uline:hover::before {
  width: 100%;
}

.anc-cir {
  position: relative;
  display: flex;
  height: 2em;
  align-items: center;
  line-height: 1;
  width: 100%;
  padding-left: 1px;
  padding-right: 1.7em;
}
.anc-cir::before {
  content: "";
  width: 20px;
  height: 20px;
  border: 1px solid #d92027;
  background-color: #fff;
  border-radius: 50%;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  right: 0;
  transition: all 0.2s ease-in-out;
}
.anc-cir::after {
  content: "";
  width: 6px;
  height: 6px;
  border: 1px solid;
  border-color: #d92027 #d92027 transparent transparent;
  transform: rotate(45deg);
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  right: 8px;
  transition: all 0.2s ease-in-out;
}
.anc-cir:hover {
  color: #d92027;
}
.anc-cir:hover::before {
  border-width: 5px;
}
.anc-cir:hover::after {
  opacity: 0;
  width: 1px;
  height: 1px;
  background-color: #fff;
}

.btn-arw {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  line-height: 1;
  display: inline-flex;
  height: 5.7rem;
  width: 5.7em;
  background-color: #132939;
  color: #fff;
  border-radius: 3em;
  font-weight: 500;
  position: relative;
  padding: 0 2.2em;
}
@media (max-width: 1380px) {
  .btn-arw {
    min-width: 13em;
  }
}
@media (max-width: 520px) {
  .btn-arw {
    height: 3.7rem;
  }
}
.btn-arw::before {
  content: "";
  height: 1.7em;
  width: 1.7em;
  border: 2px solid;
  border-color: #fff #fff transparent transparent;
  transform: rotate(45deg);
  transition: all 0.3s ease-in;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
}
.btn-arw::after {
  content: "";
  height: 1.7em;
  width: 1.7em;
  border: 2px solid;
  border-color: #fff #fff transparent transparent;
  transform: rotate(45deg);
  transition: all 0.3s ease-in;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  right: 2em;
  opacity: 0;
}
.btn-arw:visited {
  color: #fff;
}
.btn-arw:hover {
  border-color: #F7F8FA;
  background-color: #fff;
  color: #fff;
}
.btn-arw:hover::before {
  right: -1em;
  opacity: 0;
}
.btn-arw:hover::after {
  border-color: #fff #fff transparent transparent;
  opacity: 1;
}

._arw {
  display: inline-flex;
  position: relative;
  padding-right: 2.9em;
}
._arw::before {
  content: "";
  height: 1.7em;
  width: 1.7em;
  border: 2px solid;
  border-color: #fff #fff transparent transparent;
  transform: rotate(45deg);
  transition: all 0.3s ease-in;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  height: 0.5rem;
  width: 0.5rem;
  right: calc(1em + 1px);
}
._arw::after {
  content: "";
  height: 1.7em;
  width: 1.7em;
  border: 2px solid;
  border-color: #fff #fff transparent transparent;
  transform: rotate(45deg);
  transition: all 0.3s ease-in;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  right: 2em;
  opacity: 0;
}
._arw:hover::before {
  right: -1em;
  opacity: 0;
}
._arw:hover::after {
  border-color: #eee #eee transparent transparent;
  right: calc(1em + 1px);
  opacity: 1;
}

.wrap-menu {
  display: flex;
  justify-content: flex-end;
}
@media (max-width: 840px) {
  .wrap-menu {
    display: none;
  }
}
.wrap-menu-blk {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media (max-width: 840px) {
  .wrap-menu-blk {
    display: block;
    height: 100%;
    overflow-y: scroll;
  }
}
.wrap-menu .btn-contact {
  padding: 0.9em 1em;
}
@media (max-width: 840px) {
  .wrap-menu .btn-contact {
    display: none;
  }
}
.wrap-menu .btn-contact a {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  line-height: 1;
  height: 100%;
  background-color: #132939;
  color: #fff;
  padding: 0 1.3em;
  border-radius: 0.5em;
}
.wrap-menu .btn-contact a:hover {
  background-color: #d92027;
}
.wrap-menu a {
  font-size: 0.9em;
}

/* Fixed */
/* Toggle Button */
#opa {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
  animation: fadeOut 2s ease-out forwards;
  animation-delay: 2s;
}

/* ロゴの出現アニメーション */
.opa-logo {
  opacity: 0;
  transform: scale(0.9);
  animation: fadeInZoom 1.5s ease-out forwards;
  width: 15.3846153846%;
}
.opa-logo .txt {
  font-size: 1.7em;
  margin-top: 1em;
  text-align: right;
}

@keyframes fadeInZoom {
  to {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes fadeOut {
  to {
    opacity: 0;
    visibility: hidden;
  }
}
.site-main {
  padding-top: 94px;
}
@media (max-width: 840px) {
  .site-main {
    padding-top: 9vw;
  }
}
@media (max-width: 520px) {
  .site-main {
    padding-top: 62px;
  }
}

.totop {
  position: fixed;
  bottom: 30px;
  right: 15px;
  opacity: 0;
  background-color: #212121;
  border: none;
  color: #212121;
  height: 50px;
  width: 50px;
  border-radius: 0.3em;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1;
}
.totop:hover {
  background-color: #d92027;
}
@media (max-width: 690px) {
  .totop {
    bottom: 14vw;
    right: 2vw;
  }
}
.totop.fixed {
  opacity: 1;
}
.totop img {
  width: 44%;
  transform: translateY(-5%);
}

._grd {
  position: relative;
  background: transparent;
  overflow: hidden;
  cursor: pointer;
  z-index: 0;
}
._grd::before, ._grd::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
._grd::before {
  background: linear-gradient(to right, #20B2AA 48%, #00b9fc);
  transition: all 0.6s;
  z-index: -1;
}
._grd::after {
  background: linear-gradient(to right, #00b9fc, #20B2AA 48%);
  z-index: -2;
}
._grd:hover::before {
  opacity: 0;
}

.site-header .main-navigation {
  margin-top: 1em;
}
.site-header .main-navigation .btn {
  display: flex;
}

.wrap-hdmenu {
  display: flex;
}

.l-mv {
  position: relative;
  padding: 0;
  margin: 0 50px;
  overflow-x: hidden;
}
@media (max-width: 1380px) {
  .l-mv {
    margin: 0 2.4vw;
  }
}
.l-mv::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #d92027;
  background: linear-gradient(to top, #d92027 0%, #ff4d4d 50%, #ff2e2e 75%, #d92027 100%);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  border-radius: 0.3em 0.3em 0 0;
}
.l-mv .l-mv--inner {
  position: relative;
}
.l-mv .l-mv--inner::before {
  width: 200%;
  height: 174%;
  background: linear-gradient(to right, #d92027 0%, #ff2e2e 25%, #b0171b 50%, #ff4d4d 75%, #d92027 100%);
  position: absolute;
  margin: auto;
  top: 10vw;
  left: -10%;
  z-index: -1;
  border-radius: 0 0 50% 12em;
  transform: rotate(-36deg);
}
.l-mv .l-mv--inner .wrap-visual {
  overflow: hidden;
  margin-right: calc((50vw - 50% - 50px) * -1);
  position: relative;
}
@media (max-width: 690px) {
  .l-mv .l-mv--inner .wrap-visual {
    margin-right: 0;
  }
}
.l-mv .l-mv--inner .wrap-visual::before {
  height: 100%;
  width: calc(100% + 236px);
  border-radius: 3.7em;
  background: linear-gradient(to right, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.3));
  position: absolute;
  top: 0;
  left: auto;
  right: auto;
  z-index: 0;
}
.l-mv .l-mv--inner .wrap-visual video {
  display: block;
  width: 76.9230769231%;
  margin-left: auto;
  margin-right: 50px;
  position: relative;
  top: 0;
  aspect-ratio: 8/5;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  clip-path: polygon(0 0, 55% 0, 100% 100%, 45% 100%);
  z-index: 1;
}
@media (max-width: 1380px) {
  .l-mv .l-mv--inner .wrap-visual video {
    aspect-ratio: 7/5;
  }
}
@media (max-width: 840px) {
  .l-mv .l-mv--inner .wrap-visual video {
    aspect-ratio: 6/5;
  }
}
@media (max-width: 690px) {
  .l-mv .l-mv--inner .wrap-visual video {
    width: 100%;
    aspect-ratio: 4.5/5;
    margin-right: 0;
  }
}
@media (max-width: 520px) {
  .l-mv .l-mv--inner .wrap-visual video {
    aspect-ratio: 4/5;
  }
}
.l-mv .l-mv--inner .tx-catch {
  height: -moz-fit-content;
  height: fit-content;
  position: absolute;
  margin: auto;
  left: 0;
  bottom: 6vw;
  line-height: 1.3;
  z-index: 10;
  color: #fff;
}
.l-mv .l-mv--inner .tx-catch .txt {
  margin-bottom: 1.7em;
}
.l-mv .l-mv--inner .tx-catch .main-catch {
  font-size: 4.8em;
  font-weight: 600;
  letter-spacing: 0.29em;
}
@media (max-width: 840px) {
  .l-mv .l-mv--inner .tx-catch .main-catch {
    font-size: 9vw;
  }
}
.l-mv .l-mv--inner .tx-catch .main-catch span {
  display: inline-block;
  position: relative;
}
.l-mv .l-mv--inner .tx-catch .main-catch span::before {
  content: "";
  width: calc(100% - 0.2em);
  height: 1px;
  background-color: #fff;
  position: absolute;
  margin: auto;
  bottom: 0;
  left: 0;
}
.l-mv .l-mv--inner .tx-catch .sub-copy {
  font-size: 1.3em;
  font-weight: 500;
  margin-top: 1em;
  padding-left: 0.2em;
  text-shadow: 3px 3px 3px rgba(0, 0, 0, 0.1);
}
.l-mv .l-mv--inner .tx-catch .sub-copy span {
  position: relative;
  display: inline-block;
}
.l-mv .l-mv--inner .tx-catch .sub-copy span::before {
  width: 100%;
  height: 82%;
  background-color: #d92027;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
}
.l-mv .mv-recruit {
  position: absolute;
  top: 18%;
  right: 5%;
  z-index: 10;
  text-align: right;
}
@media (max-width: 840px) {
  .l-mv .mv-recruit {
    top: 6vw;
  }
}
.l-mv .mv-recruit .ttl {
  font-size: 4.8em;
  font-weight: 500;
  color: #d92027;
  color: #fff;
  margin: 0;
  white-space: nowrap;
}
@media (max-width: 840px) {
  .l-mv .mv-recruit .ttl {
    font-size: 6.2vw;
  }
}
.l-mv .mv-recruit .ttl ._num {
  display: inline-block;
  line-height: 1;
  position: relative;
}
.l-mv .mv-recruit .ttl ._en {
  display: block;
  line-height: 1;
  position: relative;
}
.l-mv .mv-recruit .ttl ._min {
  font-size: 0.5em;
  line-height: 1;
}
.l-mv .mv-recruit .mk-line {
  display: flex;
  justify-content: flex-end;
  margin: 0 -2px 1em;
  position: relative;
  right: 1em;
}
.l-mv .mv-recruit .mk-label {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  line-height: 1;
  background: none;
  color: #d92027;
  padding: 0.5em;
  margin: 0 2px;
  position: relative;
}
.l-mv .mv-recruit .mk-label::before {
  content: "";
  width: calc(100% + 2px);
  height: 100%;
  background-color: #fff;
  border-radius: 0.1em;
  transform: skewX(-36deg);
  position: absolute;
  left: -2px;
  top: 0;
  z-index: -1;
}

.scroll-unit {
  position: absolute;
  top: -9em;
  left: 1em;
  z-index: 10;
}
@media (max-width: 1480px) {
  .scroll-unit {
    top: auto;
    bottom: 0;
    left: 0;
  }
}

.scrollbar-text {
  display: inline-block;
  padding: 10px 10px 110px;
  color: #fff;
  font-size: 0.8em;
  line-height: 1;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  writing-mode: vertical-lr;
}

.scrollbar {
  position: absolute;
  left: 1em;
  bottom: 1px;
}

.scrollbar::after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 1px;
  height: 100px;
  background: #fff;
  animation: liner 2.5s cubic-bezier(1, 0, 0, 1) infinite;
}

@keyframes liner {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  30% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  70% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}
.l-ttl,
.sec-ttl {
  text-align: center;
  margin-bottom: 2.2em;
}
@media (max-width: 1180px) {
  .l-ttl,
  .sec-ttl {
    margin-bottom: 1.7em;
  }
}
.l-ttl .ttl,
.sec-ttl .ttl {
  display: inline-block;
  font-size: 2.4em;
  color: #d92027;
  font-weight: 600;
  margin-bottom: 1em;
  position: relative;
}
@media (max-width: 1180px) {
  .l-ttl .ttl,
  .sec-ttl .ttl {
    font-size: 3.7vw;
  }
}
@media (max-width: 690px) {
  .l-ttl .ttl,
  .sec-ttl .ttl {
    font-size: 1.8em;
    margin-bottom: 0.5em;
  }
}
.l-ttl .ttl::before,
.sec-ttl .ttl::before {
  content: "";
  height: 0.37em;
  width: 0.22em;
  background-color: #d92027;
  border-radius: 2px;
  position: absolute;
  top: -0.48em;
  right: -0.29em;
  transform: skewX(-36deg);
}
.l-ttl .sub-ttl,
.sec-ttl .sub-ttl {
  display: block;
  font-size: 1.125rem;
  font-weight: 600;
}
@media (max-width: 1180px) {
  .l-ttl .sub-ttl,
  .sec-ttl .sub-ttl {
    font-size: 2.2vw;
  }
}
@media (max-width: 690px) {
  .l-ttl .sub-ttl,
  .sec-ttl .sub-ttl {
    font-size: 1.125em;
  }
}

.sec-ttl {
  margin-bottom: 4.8em;
}

.tx-ttl {
  font-size: 1.3em;
  font-weight: 600;
  margin-bottom: 1em;
}

.l-top--news {
  position: relative;
  padding: 0;
  background-color: #d92027;
  margin: 0 50px 4em;
  border-radius: 0 0 0.3em 0.3em;
  height: 188px;
}
@media (max-width: 1380px) {
  .l-top--news {
    height: 250px;
    margin: 0 2.4vw 4em;
  }
}
@media (max-width: 1180px) {
  .l-top--news {
    height: 282px;
    margin: 0 2.4vw 4em;
  }
}
@media (max-width: 520px) {
  .l-top--news {
    height: auto;
    margin-bottom: 0;
  }
}
.l-top--news::before {
  content: "";
  display: block;
  width: 100%;
  height: 320px;
  background-image: url(../img/top/wave.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
  border-radius: 0 0 0.3em 0.3em;
}
.l-top--news .content {
  position: relative;
}
.l-top--news .l-top--news--inner {
  width: 100%;
  margin: 0 auto;
  background-color: #fff;
  border-radius: 0.2em;
  padding: 3.7em 2.9em 3.7em 0;
  position: relative;
  margin: auto;
  left: 0;
  right: 0;
  top: -2em;
  z-index: 1;
  box-shadow: 0 0 0.5em rgba(0, 0, 0, 0.1);
}
@media (max-width: 1380px) {
  .l-top--news .l-top--news--inner {
    width: 100%;
    top: 0;
  }
}
@media (max-width: 960px) {
  .l-top--news .l-top--news--inner {
    padding: 3.7vw 2.9vw 3.7vw 0;
  }
}
@media (max-width: 520px) {
  .l-top--news .l-top--news--inner {
    width: 94%;
    top: -1em;
  }
}
.l-top--news .blk-news {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 690px) {
  .l-top--news .blk-news {
    display: block;
  }
}
.l-top--news .blk-news .l-ttl-inner {
  width: 26.9230769231%;
  margin: 0 auto;
}
@media (max-width: 690px) {
  .l-top--news .blk-news .l-ttl-inner {
    width: 100%;
    margin: inherit;
    margin-bottom: 1.3em;
    border: none;
  }
}
.l-top--news .blk-news .wrap-news {
  width: 73.0769230769%;
  padding-left: 3.7em;
  margin: -1em 0;
  margin-left: -1em;
  position: relative;
}
.l-top--news .blk-news .wrap-news::before {
  content: "";
  width: 1px;
  height: calc(100% - 2em);
  background-color: #d92027;
  position: absolute;
  top: 1em;
  left: 0;
}
@media (max-width: 960px) {
  .l-top--news .blk-news .wrap-news {
    padding-left: 3.7vw;
  }
}
@media (max-width: 690px) {
  .l-top--news .blk-news .wrap-news {
    padding-left: 5.2vw;
    border-left: none;
    width: 100%;
  }
}
.l-top--news .blk-news .wrap-news .anc-news {
  display: block;
  position: relative;
  padding: 0.75em 2em 0.75em 1em;
  border: solid rgb(215.6153846154, 220.5384615385, 230.3846153846);
  border-width: 0 0 1px;
}
@media (max-width: 960px) {
  .l-top--news .blk-news .wrap-news .anc-news {
    padding: 0.5em 2em 0.5em 1em;
  }
}
.l-top--news .blk-news .wrap-news .anc-news:last-of-type {
  border-width: 0;
}
.l-top--news .blk-news .wrap-news .anc-news:hover {
  background-color: #F7F8FA;
}
.l-top--news .blk-news .wrap-news .anc-news::before {
  content: "";
  width: 1.3em;
  height: 1.3em;
  background-image: url(../img/common/i-arw-red.svg);
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0em;
  right: 0.5em;
  z-index: 0;
  transition: all 0.5s;
}
.l-top--news .blk-news .wrap-news .anc-news::after {
  content: "";
  width: 1.3em;
  height: 1.3em;
  background-image: url(../img/common/i-arw-bk.svg);
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0em;
  right: 2em;
  z-index: 0;
  transition: all 0.5s;
  opacity: 0;
}
.l-top--news .blk-news .wrap-news .anc-news:hover::before {
  right: -1em;
  opacity: 0;
}
.l-top--news .blk-news .wrap-news .anc-news:hover::after {
  right: 0.5em;
  opacity: 1;
}
.l-top--news .blk-news .wrap-news dl {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.l-top--news .blk-news .wrap-news dl dt {
  width: 8em;
  font-variant-numeric: tabular-nums;
}
.l-top--news .blk-news .wrap-news dl dd {
  width: calc(100% - 8em);
}
@media (max-width: 960px) {
  .l-top--news .blk-news .wrap-news dl dd {
    width: 100%;
  }
}

.ttl-intro {
  display: flex;
  flex-direction: column;
  margin-bottom: 3em;
  position: relative;
  left: 7.6923076923%;
  z-index: 1;
}
@media (max-width: 1380px) {
  .ttl-intro {
    left: auto;
    padding-left: 8em;
  }
}
@media (max-width: 840px) {
  .ttl-intro {
    padding-left: 9vw;
  }
}
@media (max-width: 520px) {
  .ttl-intro {
    padding-left: 0;
  }
}
.ttl-intro::after {
  content: "";
  width: 4.8em;
  height: 0;
  background-color: #d92027;
  border-radius: 6px;
  position: absolute;
  margin: auto;
  top: -2.2em;
  left: -8.3em;
  z-index: 0;
  transform: skewX(36deg);
  transition: all 0.5s ease-in-out;
}
@media (max-width: 1380px) {
  .ttl-intro::after {
    left: 0;
  }
}
@media (max-width: 840px) {
  .ttl-intro::after {
    width: 3.6em;
    border-radius: 3px;
    top: -1.9em;
  }
}
@media (max-width: 520px) {
  .ttl-intro::after {
    width: 1.7em;
    top: -1em;
  }
}
.ttl-intro.show::after {
  height: 6.3em;
}
@media (max-width: 840px) {
  .ttl-intro.show::after {
    height: 4.725em;
  }
}
@media (max-width: 520px) {
  .ttl-intro.show::after {
    height: 2.2em;
  }
}
.ttl-intro .tx-first {
  display: block;
  font-size: 2.9em;
  margin-bottom: 1em;
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
}
@media (max-width: 840px) {
  .ttl-intro .tx-first {
    font-size: 4.2vw;
  }
}
@media (max-width: 520px) {
  .ttl-intro .tx-first {
    font-size: 1.7em;
    padding-left: 10vw;
  }
}
.ttl-intro ._min {
  position: relative;
  display: inline-block;
  font-size: 1.125em;
  color: #fff;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0.75em 1em 0.75em 1.7em;
  z-index: 0;
}
.ttl-intro ._min::before {
  content: "";
  width: 0;
  height: 100%;
  background-color: #212121;
  position: absolute;
  top: 0;
  left: 0.7em;
  transform: skewX(36deg);
  border-radius: 0.3em;
  z-index: -1;
  transition: all 0.5s ease-in-out;
}
.ttl-intro.show ._min::before {
  width: 100%;
}
.ttl-intro + .txt {
  position: relative;
  left: 7.6923076923%;
}
@media (max-width: 1180px) {
  .ttl-intro + .txt {
    width: 84.6153846154%;
  }
}
@media (max-width: 690px) {
  .ttl-intro + .txt {
    max-width: 90%;
    margin: 0 auto;
    left: 0;
  }
}

.l-top--intro {
  position: relative;
  padding-top: 9em;
  background-color: #F7F8FA;
}
@media (max-width: 1380px) {
  .l-top--intro {
    padding-top: 6em;
  }
}
@media (max-width: 520px) {
  .l-top--intro {
    padding-top: 3.7em;
  }
}
.l-top--intro::before {
  content: "";
  width: 100%;
  height: 12em;
  background-color: #F7F8FA;
  position: absolute;
  margin: auto;
  top: -12em;
  left: 0;
  z-index: -1;
}
.l-top--intro::after {
  content: "";
  width: 60%;
  height: 114%;
  border-radius: 3.7em;
  position: absolute;
  margin: auto;
  top: -33vw;
  left: 2vw;
  z-index: -2;
  transform: rotate(-36deg);
  background: linear-gradient(to right, #f5f7f9, #eef1f5 40%, #f5f7f9 80%), linear-gradient(to bottom, #ffffff 0%, #f0f3f6 100%);
  background-blend-mode: lighten;
}
.l-top--intro .ttl-intro {
  left: 0;
}
.l-top--intro .blk-content {
  width: 62%;
  margin: 0 auto;
  border-radius: 0.3em;
  padding: 3.7em 6.3em;
  position: relative;
}
@media (max-width: 1380px) {
  .l-top--intro .blk-content {
    width: 72%;
  }
}
@media (max-width: 840px) {
  .l-top--intro .blk-content {
    width: 88%;
  }
}
@media (max-width: 690px) {
  .l-top--intro .blk-content {
    width: 100%;
    padding: 2em 6vw;
  }
}
.l-top--intro .blk-content::after {
  content: "";
  width: 141%;
  height: calc(100% + 6em);
  background: #fff;
  border-radius: 1em;
  position: absolute;
  margin: auto;
  top: 0;
  left: 0;
  z-index: 0;
  transform: skewX(36deg);
}
.l-top--intro .blk-content::before {
  content: "";
  width: 141%;
  height: calc(100% + 4.6em);
  background-color: #fdeaea;
  border-radius: 1em;
  position: absolute;
  margin: auto;
  top: -4.6em;
  left: 2.2em;
  z-index: 0;
  transform: skewX(-36deg);
}
.l-top--intro .blk-content .ttl {
  font-size: 2.9em;
  color: #d92027;
  margin: 0 -1.8em 1.3em;
  z-index: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  line-height: 1.7;
  position: relative;
  z-index: 1;
}
@media (max-width: 840px) {
  .l-top--intro .blk-content .ttl {
    font-size: 4.2vw;
    margin: 0 0 1.3em;
  }
}
@media (max-width: 520px) {
  .l-top--intro .blk-content .ttl {
    font-size: 1.7em;
  }
}
.l-top--intro .blk-content .ttl span {
  display: block;
  position: relative;
}
.l-top--intro .blk-content .ttl span:nth-of-type(2) {
  margin-left: auto;
}
.l-top--intro .blk-content .ttl span::before {
  content: "";
  width: 100%;
  height: 1px;
  background-color: #d92027;
  position: absolute;
  margin: auto;
  bottom: 0;
  left: 0;
}
.l-top--intro .l-top--intro-inner {
  position: relative;
  width: 76.9230769231%;
  margin: 0 auto;
}
@media (max-width: 840px) {
  .l-top--intro .l-top--intro-inner {
    width: 92.3076923077%;
  }
}
@media (max-width: 520px) {
  .l-top--intro .l-top--intro-inner {
    width: 100%;
  }
}
.l-top--intro .l-top--intro-inner .l-image {
  position: absolute;
  margin: auto;
  width: 60%;
  bottom: 4em;
  left: -22em;
  z-index: 1;
}
@media (max-width: 1380px) {
  .l-top--intro .l-top--intro-inner .l-image {
    width: 24vw;
    left: -21vw;
  }
}
@media (max-width: 840px) {
  .l-top--intro .l-top--intro-inner .l-image {
    position: relative;
    left: auto;
    width: 68%;
    bottom: auto;
    margin-bottom: 3em;
  }
}
.l-top--intro .l-top--intro-inner .l-image figure {
  position: relative;
  z-index: 0;
}
.l-top--intro .l-top--intro-inner .l-image figure::before {
  content: "";
  width: 4.8em;
  height: 6.3em;
  background-color: #d92027;
  border-radius: 6px;
  position: absolute;
  margin: auto;
  top: -2.9em;
  left: -2.9em;
  z-index: 0;
  transform: skewX(36deg);
}
@media (max-width: 840px) {
  .l-top--intro .l-top--intro-inner .l-image figure::before {
    width: 3.6em;
    height: 4.725em;
    border-radius: 3px;
  }
}
@media (max-width: 520px) {
  .l-top--intro .l-top--intro-inner .l-image figure::before {
    width: 1.7em;
    height: 2.2em;
  }
}
.l-top--intro .l-top--intro-inner .l-image figure img {
  border-radius: 0.2em;
}
.l-top--intro .l-top--intro-inner .l-text {
  margin-right: -17vw;
}
@media (max-width: 840px) {
  .l-top--intro .l-top--intro-inner .l-text {
    margin-right: 0;
  }
}
.l-top--intro .l-top--intro-inner .l-text .tx-ttl {
  margin-bottom: 1.7em;
  position: relative;
  z-index: 1;
}
.l-top--intro .l-top--intro-inner .l-text .txt {
  margin-bottom: 1em;
  position: relative;
  z-index: 1;
}

.l-top--interview {
  position: relative;
  background-color: #F7F8FA;
}
.l-top--interview .wrap-slide {
  position: relative;
}
.l-top--interview .wrap-prs-eng {
  position: relative;
}
.l-top--interview .wrap-prs-eng::before {
  content: "";
  width: 80%;
  aspect-ratio: 1/1;
  background-color: rgba(217, 32, 39, 0.2);
  border-radius: 50%;
  position: absolute;
  margin: auto;
  top: 20%;
  right: 0;
  z-index: -1;
  transform: scale(0.68);
  transition: all 0.7s ease-in-out;
}
.l-top--interview .wrap-prs-eng .tx-department {
  width: -moz-fit-content;
  width: fit-content;
  padding: 1em;
  background: #212121;
  color: #fff;
  border-radius: 0.3em;
  position: absolute;
  bottom: 0;
  margin: auto;
  left: 0;
  right: 0;
  transition: all 0.7s ease-in-out;
}
.l-top--interview .wrap-prs-eng .btn {
  position: absolute;
  bottom: 0;
  margin: auto;
  left: 0;
  right: 0;
}
.l-top--interview .speechBubble {
  position: absolute;
  display: block;
  padding: 2.9em 2.2em;
  border-radius: 50%;
  background-color: #F7F8FA;
  background-color: #fff;
  text-align: left;
  height: 88%;
  writing-mode: vertical-rl;
  left: -25%;
  top: 0;
  transform: rotate(-3deg);
  opacity: 0;
  transition: all 0.3s ease-in-out;
  z-index: 1;
}
@media (max-width: 1180px) {
  .l-top--interview .speechBubble {
    left: -30%;
    height: 100%;
  }
}
.l-top--interview .speechBubble::after {
  content: "";
  position: absolute;
  bottom: 46%;
  right: -0.8em;
  border-style: solid;
  border-width: 0.5em 0 0.5em 1em;
  border-color: transparent transparent transparent #fff;
}
.l-top--interview .swiper-slide-active .speechBubble {
  opacity: 1;
}
.l-top--interview .swiper-slide-active .wrap-prs-eng .tx-department {
  transform: translateY(2em);
}
.l-top--interview .swiper-slide {
  padding: 2em 0;
}
.l-top--interview .swiper-slide img {
  transform: scale(0.68);
  transition: all 0.7s ease-in-out;
  border-radius: 0 0 30% 30%;
}
.l-top--interview .swiper-slide.swiper-slide-active .wrap-prs-eng::before,
.l-top--interview .swiper-slide.swiper-slide-active img {
  transform: scale(1);
}
.l-top--interview .swiper-button-next,
.l-top--interview .swiper-button-prev {
  width: 3.7em;
  height: 3.7em;
}
.l-top--interview .swiper-button-next::before,
.l-top--interview .swiper-button-prev::before {
  content: "";
  width: 3.7em;
  height: 3.7em;
  background-color: #d92027;
  border-radius: 50%;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;
  transition: 0.3s ease;
}
.l-top--interview .swiper-button-next::after,
.l-top--interview .swiper-button-prev::after {
  color: #fff;
  font-size: 2em;
}
.l-top--interview .swiper-button-next:hover::before,
.l-top--interview .swiper-button-prev:hover::before {
  background-color: #212121;
}
@media (max-width: 690px) {
  .l-top--interview .swiper-button-prev {
    display: none;
  }
}
@media (max-width: 690px) {
  .l-top--interview .swiper-button-next {
    right: -1em;
  }
}

.l-top--feature {
  background-color: #fdeaea;
}
.l-top--feature .l-row {
  margin: 0 -3em;
}
@media (max-width: 960px) {
  .l-top--feature .l-row {
    margin: 0 -1em;
  }
}
.l-top--feature .l-row .l-col {
  padding: 0 3em;
}
@media (max-width: 960px) {
  .l-top--feature .l-row .l-col {
    padding: 0 1em;
  }
}
.l-top--feature .l-row .l-col-inner {
  position: relative;
  height: 100%;
}
.l-top--feature .l-row .l-col-inner::before {
  content: "";
  width: 61.5384615385%;
  height: calc(100% + 1.3em);
  background-color: #fff;
  border-radius: 0.3em;
  position: absolute;
  margin: auto;
  top: 1.3em;
  right: 0;
  z-index: 0;
}
.l-top--feature .l-ttl {
  position: relative;
  text-align: left;
  z-index: 1;
}
.l-top--feature .l-image {
  position: relative;
  z-index: 0;
}
.l-top--feature .l-image figure {
  position: relative;
  margin-right: 6em;
}
.l-top--feature .btn {
  width: 41.4%;
  position: absolute;
  margin: auto;
  right: 3em;
  bottom: -8%;
}
.l-top--feature .txt {
  position: relative;
  z-index: 1;
  padding: 0 0.25em;
  margin-top: 3.7em;
}

.l-top--about {
  padding-bottom: 4em;
}

.l-top--about,
.l-methods {
  position: relative;
  background-color: #F7F8FA;
  background-color: #fdeaea;
}
.l-top--about::before,
.l-methods::before {
  content: "";
  height: 160vh;
  width: 240%;
  background: linear-gradient(to right, #d92027 0%, #b0171b 25%, #ff4d4d 50%, #b0171b 75%, #d92027 100%);
  border-radius: 50%;
  position: absolute;
  margin: auto -70%;
  left: 0;
  right: 0;
  top: 16vw;
}
.l-top--about [class^=blk-],
.l-methods [class^=blk-] {
  position: relative;
}
.l-top--about [class^=blk-] .l-col-inner,
.l-methods [class^=blk-] .l-col-inner {
  position: relative;
  background-color: #fff;
  padding: 2.9em;
  border-radius: 0.2em;
  height: 100%;
  transition: all 0.3s ease-in-out;
}
@media (max-width: 840px) {
  .l-top--about [class^=blk-] .l-col-inner,
  .l-methods [class^=blk-] .l-col-inner {
    padding: 2.2em;
  }
}
@media (max-width: 690px) {
  .l-top--about [class^=blk-] .l-col-inner,
  .l-methods [class^=blk-] .l-col-inner {
    padding: 1.7em;
  }
}
.l-top--about [class^=blk-] .l-col-inner::before,
.l-methods [class^=blk-] .l-col-inner::before {
  content: "";
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: contain;
  display: block;
  width: calc(100% + 2.6em);
  height: auto;
  aspect-ratio: 7/5;
  position: relative;
  margin: 0 -1.3em;
  top: -3.7em;
}
@media (max-width: 690px) {
  .l-top--about [class^=blk-] .l-col-inner::before,
  .l-methods [class^=blk-] .l-col-inner::before {
    width: 58%;
    margin: 0 auto;
    top: -1em;
  }
}
.l-top--about [class^=blk-] .l-col-inner .l-ttl .ttl,
.l-methods [class^=blk-] .l-col-inner .l-ttl .ttl {
  margin-bottom: 1rem;
}
.l-top--about [class^=blk-] .l-col-inner .l-ttl .ttl::before,
.l-methods [class^=blk-] .l-col-inner .l-ttl .ttl::before {
  content: none;
}
.l-top--about [class^=blk-] .wrap-anc,
.l-methods [class^=blk-] .wrap-anc {
  background-color: #fff;
}
.l-top--about [class^=blk-] .wrap-anc:hover .l-col-inner,
.l-methods [class^=blk-] .wrap-anc:hover .l-col-inner {
  background-color: aliceblue;
}
.l-top--about .blk-data .l-col-inner::before,
.l-methods .blk-data .l-col-inner::before {
  background-image: url(../img/top/i-blk-data.png);
}
.l-top--about .blk-job .l-col-inner::before,
.l-methods .blk-job .l-col-inner::before {
  background-image: url(../img/top/i-blk-job.png);
}
.l-top--about .blk-team .l-col-inner::before,
.l-methods .blk-team .l-col-inner::before {
  background-image: url(../img/top/l-blk-team.png);
}
@media (max-width: 960px) {
  .l-top--about .l-row,
  .l-methods .l-row {
    margin: 0 -1em;
  }
}
.l-top--about .l-row .l-col,
.l-methods .l-row .l-col {
  padding: 0 2.2em;
}
@media (max-width: 960px) {
  .l-top--about .l-row .l-col,
  .l-methods .l-row .l-col {
    padding: 0 1em;
  }
}
.l-top--about .l-ttl,
.l-methods .l-ttl {
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
}
.l-top--about .l-ttl .btn,
.l-methods .l-ttl .btn {
  border: none;
  background: none;
  padding: 0;
  min-width: auto;
  width: 3.7em;
  position: absolute;
  margin: auto;
  right: -3.7em;
  top: 0;
  bottom: 0;
}
.l-top--about .l-ttl .btn::before,
.l-methods .l-ttl .btn::before {
  right: auto;
}

.l-top--faq {
  background-color: #F7F8FA;
  padding-top: 0;
}
.l-top--faq .inner {
  position: relative;
  background-color: #fff;
  border-radius: 0.2em;
  padding: 4.8em 0;
  z-index: 1;
}

.anc {
  margin-top: -5em;
  padding-top: 5em;
}

.blk-faq {
  padding: 2em 5em;
}
@media (max-width: 1180px) {
  .blk-faq {
    padding: 3em 4em;
  }
}
@media (max-width: 960px) {
  .blk-faq {
    padding: 3em;
  }
}
@media (max-width: 840px) {
  .blk-faq {
    padding: 2em;
  }
}
@media (max-width: 690px) {
  .blk-faq {
    padding: 1em;
  }
}

.wrap-qa {
  position: relative;
  bottom: -1px;
}
.wrap-qa:last-of-type {
  border-bottom: 1px solid #212121;
}

.acc {
  cursor: pointer;
  position: relative;
  display: flex;
  justify-content: space-between;
  background-color: #fff;
  transition: all 0.3s ease-in;
  border-top: 1px solid #212121;
}
.acc:hover {
  background-color: #F7F8FA;
}
.acc .tx-q {
  display: flex;
  align-items: center;
  min-height: 4.8em;
  position: relative;
  padding: 0.5em 3em 0.5em 3.7em;
}
@media (max-width: 690px) {
  .acc .tx-q {
    padding-left: 3.5em;
  }
}
.acc .tx-q::before {
  content: "Q";
  font-size: 1.3em;
  font-weight: 700;
  position: absolute;
  margin: auto;
  left: 1em;
  top: 50%;
  transform: translateY(-50%);
  color: #d92027;
}
@media (max-width: 690px) {
  .acc .tx-q::before {
    left: 1em;
  }
}
.acc .symbol {
  width: 30px;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  margin: auto;
  right: 1em;
  top: 0;
  bottom: 0;
}
@media (max-width: 690px) {
  .acc .symbol {
    right: 1em;
  }
}
.acc .symbol span {
  display: block;
  background-color: #000;
  width: 100%;
  height: 1px;
  transition: all 0.4s ease;
}
.acc .symbol span:nth-of-type(1) {
  transform: translateX(15px);
}
.acc .symbol span:nth-of-type(2) {
  transform: rotate(-90deg);
}
.acc.active {
  background-color: #212121;
  color: #fff;
}
.acc.active .symbol span {
  background-color: #fff;
}
.acc.active .symbol span:nth-of-type(2) {
  transform: rotate(0deg);
}
.acc.active .tx-q::before {
  color: #fff;
}

.panel {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
  background-color: #fff;
}
.panel .tx-ans {
  display: flex;
  align-items: center;
  min-height: 3.7em;
  position: relative;
  padding: 1.7em 3em 1.7em 3.7em;
  border: 1px solid #212121;
  margin-bottom: -1px;
}
@media (max-width: 690px) {
  .panel .tx-ans {
    padding-left: 3.5em;
    padding-right: 1em;
  }
}
.panel .tx-ans::before {
  content: "A";
  font-size: 1.3em;
  font-weight: 600;
  position: absolute;
  margin: auto;
  left: 1em;
  top: 0;
  top: 50%;
  transform: translateY(-50%);
  color: #d92027;
}
@media (max-width: 690px) {
  .panel .tx-ans::before {
    left: 1em;
  }
}

.modal {
  display: none;
  position: fixed;
  z-index: 9999;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
}

.modal-content {
  position: relative;
  background-color: white;
  margin: 5% auto;
  padding: 0;
  width: 90%;
  max-width: 1200px;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
}

.modal-content iframe {
  width: 100%;
  height: 80vh;
}

.close {
  position: absolute;
  top: 8px;
  right: 16px;
  font-size: 28px;
  font-size: 4.8em;
  line-height: 1;
  cursor: pointer;
}

/* モーダルのスタイル */
/* モーダルオーバーレイの初期状態は非表示 */
/* モーダル全体の共通設定 */
.site-header .main-navigation .menu .menu-item .md-modal {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  line-height: 1;
  width: -moz-fit-content;
  width: fit-content;
  height: 3.7em;
  padding: 0 2.9em 0 1.7em;
  min-width: 7.4em;
  color: #fff;
  background-color: #d92027;
  border-radius: 0.3em;
  position: relative;
  letter-spacing: 0.06em;
}
@media (max-width: 840px) {
  .site-header .main-navigation .menu .menu-item .md-modal {
    display: none;
    width: 100%;
    border: none;
  }
}
.site-header .main-navigation .menu .menu-item .md-modal:visited {
  color: #fff;
}
.site-header .main-navigation .menu .menu-item .md-modal:hover {
  color: #fff;
  background-color: #111;
}
.site-header .main-navigation .menu .menu-item .md-modal::before {
  content: "";
  width: 2em;
  height: 2em;
  background: none;
  background-image: url(../img/common/i-arw-wh.svg);
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0em;
  right: 1em;
  z-index: 0;
  transition: all 0.5s;
}
.site-header .main-navigation .menu .menu-item .md-modal::after {
  content: "";
  width: 2em;
  height: 2em;
  background-image: url(../img/common/i-arw-red.svg);
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0em;
  right: 2em;
  z-index: 0;
  transition: all 0.5s;
  opacity: 0;
}
.site-header .main-navigation .menu .menu-item .md-modal:hover::before {
  width: 2em;
  right: -1em;
  opacity: 0;
}
.site-header .main-navigation .menu .menu-item .md-modal:hover::after {
  right: 1em;
  opacity: 1;
}

.md-container {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 1000;
  align-items: center;
  justify-content: center;
}

/* 背景オーバーレイ */
.md-overlay {
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.6);
  z-index: 1;
}

/* モーダル本体 */
.md-contents {
  height: -moz-fit-content;
  height: fit-content;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 2;
  background: #fff;
  width: 90%;
  max-width: 800px;
  padding: 2.9em 2.2em;
  border-radius: 10px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
  animation: fadeIn 0.3s ease-out;
  text-align: center;
}
.md-contents .txt {
  margin-bottom: 1.3em;
}

/* 閉じるボタン */
.md-close {
  position: absolute;
  top: 0;
  right: 16px;
  background: none;
  border: none;
  font-size: 3em;
  color: #333;
  cursor: pointer;
  line-height: 1;
}

/* フェードインアニメーション */
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(-20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.entry-line {
  margin-bottom: 1.7em;
  background-color: #F7F8FA;
  padding: 1.7em 1.3em;
}
.entry-line ul {
  display: flex;
  margin: 0 -1em;
  justify-content: center;
}
.entry-line ul li {
  display: flex;
  align-items: center;
  width: 42%;
  padding: 0 1em;
  margin: 0 1em;
}
@media (max-width: 520px) {
  .entry-line ul li {
    width: 50%;
    margin: 0 auto 1em;
  }
}
.entry-line ul li:last-of-type {
  margin-right: 0;
}
@media (max-width: 520px) {
  .entry-line ul li:last-of-type {
    margin: 0 auto;
  }
}
.entry-line ul li a {
  display: block;
  background: #fff;
}
.entry-line ul li img {
  display: block;
  width: 100%;
}

.inner-entry ul {
  display: flex;
  margin: 0 -0.5em;
}
.inner-entry ul li {
  padding: 0 0.5em;
  margin: 0;
  width: 33.33%;
}
@media (max-width: 690px) {
  .inner-entry ul li {
    width: 50%;
  }
}
.inner-entry ul li a {
  height: 100%;
  display: flex;
  align-items: center;
  background-color: #fff;
  box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.15);
}
.inner-entry ul li a.wrap-bnr {
  padding: 5px 5px;
}
.inner-entry ul li a.wrap-bnr img {
  width: 92%;
  margin: 0 auto;
}

/* スマホ対応 */
.sp-entry {
  display: none;
}
@media (max-width: 840px) {
  .sp-entry {
    display: block;
    width: 90%;
    padding: 2.9em;
    position: fixed;
    margin: auto;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 100;
  }
}
@media (max-width: 690px) {
  .sp-entry {
    width: 100%;
    padding: 1.3em 2.9em;
  }
}
.sp-entry .wrap-btn {
  display: flex;
  justify-content: center;
}
.sp-entry .sp-entry-btn {
  width: 33.33%;
  margin-bottom: 1.7em;
}
@media (max-width: 690px) {
  .sp-entry .sp-entry-btn {
    width: 50%;
  }
}
.sp-entry .sp-entry-btn a {
  display: block;
}
.sp-entry .sp-entry-btn a img {
  width: 90%;
}

@media (max-width: 480px) {
  .md-contents {
    padding: 1.5em;
    font-size: 0.95em;
  }
}
.entry-area {
  margin-top: 4.4em;
  position: relative;
  background-color: #fff;
  padding: 3.7em;
  border-radius: 0.2em;
  overflow: hidden;
  display: flex;
  flex-wrap: wrap;
}
@media (max-width: 840px) {
  .entry-area {
    padding: 3.7em;
  }
}
@media (max-width: 690px) {
  .entry-area {
    padding: 2.2em 1.7em;
  }
}
.entry-area .l-40 {
  width: 38%;
  display: flex;
  align-items: center;
}
@media (max-width: 690px) {
  .entry-area .l-40 {
    width: 100%;
  }
}
.entry-area .l-40 .l-ttl {
  text-align: center;
  margin: 0 auto 2.9em;
}
.entry-area .l-40 .txt {
  text-align: center;
}
.entry-area .l-60 {
  width: 62%;
}
@media (max-width: 690px) {
  .entry-area .l-60 {
    width: 100%;
  }
}
.entry-area .sub-ttl {
  margin-bottom: 0;
}
.entry-area .entry-upper,
.entry-area .entry-lower {
  position: relative;
}
.entry-area .entry-upper::before,
.entry-area .entry-lower::before {
  content: "";
  width: 86%;
  height: 100%;
  background-color: #F7F8FA;
  border-radius: 0.5em;
  position: absolute;
  margin: auto;
  top: 17%;
  left: 0;
  right: 0;
  z-index: 0;
  transform: skewX(-36deg);
}
.entry-area .entry-upper {
  margin-bottom: 2.9em;
}
.entry-area .entry-lower .sub-ttl {
  position: relative;
  margin-bottom: 1em;
  text-align: center;
  z-index: 0;
}
.entry-area .entry-lower .sub-ttl ._mk {
  position: relative;
  display: inline-block;
  color: #d92027;
}
.entry-area .entry-lower .sub-ttl ._mk::before {
  content: "";
  height: 0.75em;
  width: 100%;
  background-color: #fdeaea;
  position: absolute;
  margin: auto;
  bottom: 0;
  left: 0;
  z-index: -1;
}
.entry-area .ttl-entry {
  position: relative;
  display: flex;
  align-items: center;
  margin: 0 auto;
  margin-bottom: 1.3em;
  width: -moz-fit-content;
  width: fit-content;
}
.entry-area .ttl-entry ._num {
  font-size: 4.2em;
  color: #d92027;
  padding-right: 0.1em;
  font-weight: 600;
  line-height: 1;
}
@media (max-width: 520px) {
  .entry-area .ttl-entry ._num {
    font-size: 3.8em;
  }
}
.entry-area .ttl-entry .txt {
  font-size: 1.3em;
  line-height: 1.3;
  transform: translateY(3px);
}
@media (max-width: 520px) {
  .entry-area .ttl-entry .txt {
    font-size: 1.2em;
  }
}
.entry-area .inner-entry {
  position: relative;
  margin-bottom: 1.3em;
}
.entry-area .inner-entry ul {
  display: flex;
  justify-content: center;
  margin: 0 -0.5em;
}
.entry-area .inner-entry ul li {
  padding: 0 0.5em;
  margin: 0;
  width: 33.33%;
}
@media (max-width: 840px) {
  .entry-area .inner-entry ul li {
    width: 50%;
  }
}
.entry-area .inner-contact {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 0.5em;
  padding-top: 0.5em;
  position: absolute;
  bottom: 4.7em;
}
@media (max-width: 840px) {
  .entry-area .inner-contact {
    position: relative;
    margin: 0 auto;
    bottom: -1em;
  }
}
@media (max-width: 520px) {
  .entry-area .inner-contact {
    flex-direction: column;
    bottom: 0;
  }
}
.entry-area .inner-contact .btn {
  width: 38%;
}
@media (max-width: 520px) {
  .entry-area .inner-contact .btn {
    width: 80%;
    margin: 0 auto;
  }
}
.entry-area .inner-contact .txt {
  width: -moz-fit-content;
  width: fit-content;
}
@media (max-width: 520px) {
  .entry-area .inner-contact .txt {
    text-align: center;
    width: 100%;
  }
}

.p-header {
  padding: 0 0 6em;
  position: relative;
  z-index: 100;
}
@media (max-width: 960px) {
  .p-header {
    padding-bottom: 3em;
  }
}
@media (max-width: 690px) {
  .p-header {
    padding-bottom: 2em;
  }
}

.p-header--inner {
  position: relative;
}
.p-header--inner::after {
  content: "";
  height: 120%;
  aspect-ratio: 1/1;
  background-color: #d92027;
  border-radius: 0.8em;
  position: absolute;
  margin: auto;
  top: 0;
  right: -3vw;
  z-index: -1;
  transform: skewX(-36deg);
}
.p-header--inner .page-ttl {
  position: absolute;
  margin: auto;
  top: 42%;
}
.p-header--inner .page-ttl .ttl-en {
  font-size: 1.7em;
  font-weight: 600;
  color: #d92027;
  margin-bottom: 1.7em;
}
@media (max-width: 840px) {
  .p-header--inner .page-ttl .ttl-en {
    font-size: 2.9vw;
  }
}
@media (max-width: 520px) {
  .p-header--inner .page-ttl .ttl-en {
    font-size: 1.3em;
    margin-bottom: 1em;
  }
}
.p-header--inner .page-ttl .entry-title {
  font-size: 3.7em;
  display: inline-block;
  text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.8);
}
@media (max-width: 840px) {
  .p-header--inner .page-ttl .entry-title {
    font-size: 5.2vw;
  }
}
@media (max-width: 520px) {
  .p-header--inner .page-ttl .entry-title {
    font-size: 2.2em;
  }
}
.p-header--inner .wrap-visual {
  position: relative;
  top: 10%;
  background-color: #eee;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 68%;
  aspect-ratio: 18/9;
  border-radius: 0.3em;
  margin-left: auto;
  margin-right: -8%;
  transform: translateY(10%);
}
@media (max-width: 690px) {
  .p-header--inner .wrap-visual {
    aspect-ratio: 12/9;
  }
}

.pg__induction-training .wrap-visual {
  background-image: url(../img/key/kv-training.jpg);
}

.pg__career-model .wrap-visual {
  background-image: url(../img/key/kv-career.jpg);
}

.pg__data .wrap-visual {
  background-image: url(../img/key/kv-data.jpg);
}

.pg__job .wrap-visual {
  background-image: url(../img/key/kv-job.jpg);
}

.pg__message .wrap-visual {
  background-image: url(../img/key/kv-team.jpg);
}

.pg__contact .wrap-visual,
.pg__contact-confirm .wrap-visual,
.pg__contact-thanks .wrap-visual {
  background-image: url(../img/key/kv-contact.jpg);
}

.pg__privacy .wrap-visual {
  background-image: url(../img/key/kv-company.jpg);
}

.l-image figure img {
  border-radius: 0.3em;
}

.l-intro {
  position: relative;
  padding-top: 8em;
}
@media (max-width: 690px) {
  .l-intro {
    padding-top: 4em;
  }
}
.l-intro::before {
  content: "";
  width: 48%;
  height: 110%;
  background-color: #F7F8FA;
  border-radius: 1.3em;
  position: absolute;
  margin: auto;
  top: -7vw;
  right: 50px;
  z-index: -10;
  transform: skewX(-36deg);
  transition: 1.5s ease;
}

.pg__induction-training .l-intro,
.pg__message .l-intro {
  padding-bottom: 10em;
}
@media (max-width: 690px) {
  .pg__induction-training .l-intro,
  .pg__message .l-intro {
    padding-bottom: 3em;
  }
}
.pg__induction-training .l-intro .content,
.pg__message .l-intro .content {
  position: relative;
}
.pg__induction-training .l-intro .l-image img,
.pg__message .l-intro .l-image img {
  position: relative;
  z-index: -1;
}
.pg__induction-training .l-intro .l-text .l-ttl,
.pg__message .l-intro .l-text .l-ttl {
  margin: 2.2em 0 0;
  text-align: right;
}
@media (max-width: 690px) {
  .pg__induction-training .l-intro .l-text .l-ttl,
  .pg__message .l-intro .l-text .l-ttl {
    text-align: center;
    margin-bottom: 2.9em;
  }
}

.l-text {
  position: relative;
}
@media (max-width: 690px) {
  .l-text {
    margin-bottom: 0 !important;
  }
}
.l-text .l-sideline {
  position: relative;
}
.l-text .l-sideline .l-ttl {
  margin-top: 10%;
}
@media (max-width: 690px) {
  .l-text .l-sideline .l-ttl {
    margin-top: 0;
  }
}
.l-text .l-sideline > .txt {
  margin-top: 2.2em;
}
.l-text .blk-content {
  padding: 2.9em 0 2.9em 3.7em;
  border-radius: 2.2em;
  width: 120%;
  position: relative;
  top: inherit;
  right: 20%;
  z-index: 0;
}
@media (max-width: 1180px) {
  .l-text .blk-content {
    padding-bottom: 0;
  }
}
@media (max-width: 840px) {
  .l-text .blk-content {
    width: calc(100% + 20vw);
    right: 20vw;
  }
}
@media (max-width: 690px) {
  .l-text .blk-content {
    width: 100%;
    right: auto;
    padding: 0 2.2em;
  }
}
.l-text .blk-content::before {
  content: "";
  width: 30%;
  height: 100%;
  border-radius: 0.4em;
  background-color: #F7F8FA;
  position: absolute;
  left: -5%;
  top: 0;
  z-index: -1;
  transform: skewX(-36deg);
}
.l-text .blk-content .blk-ttl {
  font-size: 1.7em;
  font-weight: 600;
  margin-bottom: 1.3em;
}
@media (max-width: 690px) {
  .l-text .blk-content .blk-ttl {
    font-size: 1.3em;
  }
}
@media (max-width: 690px) {
  .l-text .blk-content .blk-ttl br {
    display: none;
  }
}

._od .l-text .blk-content::before {
  left: auto;
  right: 0;
  transform: skewX(36deg);
}

@media (max-width: 690px) {
  .l-room {
    padding: 0;
  }
}
.l-room .l-room-image img {
  border-radius: 0.3em;
}

.l-methods::before {
  top: 24vw;
}
.l-methods .blk-m01 .l-col-inner::before {
  background-image: url(../img/training/i-blk-m01.png);
}
.l-methods .blk-m02 .l-col-inner::before {
  background-image: url(../img/training/i-blk-m02.png);
}
.l-methods .blk-m03 .l-col-inner::before {
  background-image: url(../img/training/i-blk-m03.png);
}
.l-methods .ttl-catch {
  margin: 2.2em 0 1.7em;
  text-align: center;
  font-size: 2.2em;
  color: #fff;
  position: relative;
  z-index: 1;
}
@media (max-width: 690px) {
  .l-methods .ttl-catch {
    margin: 1em 0;
    line-height: 1.3em;
    font-size: 1.8em;
  }
}
.l-methods .bottom-area {
  margin-top: 4.4em;
  position: relative;
  background-color: #fff;
  padding: 3.7em;
  border-radius: 0.2em;
}
@media (max-width: 690px) {
  .l-methods .bottom-area {
    margin-top: 3.7em;
    padding: 2.2em;
  }
}
.l-methods .bottom-area .l-ttl {
  margin-top: 2.2em;
  text-align: left;
  margin-bottom: 3.7em;
  margin-left: 0;
}
.l-methods .bottom-area .l-ttl .ttl::before {
  content: none;
}
.l-methods .bottom-area .ttl-entry {
  font-size: 1.7em;
  line-height: 1.4;
}
.l-methods .bottom-area .ttl-entry span {
  font-size: 1.7em;
  color: #d92027;
  padding-right: 0.1em;
  font-weight: 700;
  line-height: 1;
}
.l-methods .bottom-area .l-row {
  position: relative;
  z-index: 1;
}
.l-methods .bottom-area .l-row .l-40 {
  width: 38%;
}
@media (max-width: 520px) {
  .l-methods .bottom-area .l-row .l-40 {
    width: 100%;
    padding-top: 38%;
  }
}
.l-methods .bottom-area .l-row .l-60 {
  width: 62%;
}
@media (max-width: 520px) {
  .l-methods .bottom-area .l-row .l-60 {
    width: 100%;
  }
}
.l-methods .bottom-area .l-image {
  position: relative;
}
.l-methods .bottom-area .l-image::before {
  content: "";
  width: 100%;
  height: 110%;
  background-image: url(../img/training/i-edu-bottom.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  right: 0;
  bottom: -1em;
}

.pg__career-model .wrap-intro {
  position: relative;
}
.pg__career-model .wrap-intro .speechBubble {
  position: absolute;
  left: auto;
  right: 12%;
  bottom: -30%;
  transform: rotate(16deg);
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  padding: 1.3em;
  border: 2px solid #212121;
  border-radius: 8px;
  background-color: #fff;
}
@media (max-width: 960px) {
  .pg__career-model .wrap-intro .speechBubble {
    right: 0;
  }
}
@media (max-width: 690px) {
  .pg__career-model .wrap-intro .speechBubble {
    position: relative;
    transform: none;
    top: -1em;
    margin: 0;
    margin-left: auto;
  }
}
.pg__career-model .wrap-intro .speechBubble::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 25%;
  border-style: solid;
  border-width: 20px 20px 0 0;
  border-color: #212121 transparent transparent;
  translate: -50% 100%;
}
.pg__career-model .wrap-intro .speechBubble::after {
  content: "";
  position: absolute;
  bottom: 2px;
  left: 25%;
  border-style: solid;
  border-width: 18px 18px 0 0;
  border-color: #ffffff transparent transparent;
  translate: calc(-38% - 1px) 100%;
}
.pg__career-model .l-intro {
  margin-bottom: 8em;
}
@media (max-width: 520px) {
  .pg__career-model .l-intro {
    margin-bottom: 0;
    padding-bottom: 0;
  }
}
.pg__career-model .l-intro .l-step-area {
  position: relative;
}
.pg__career-model .l-intro .l-image {
  width: 28%;
}
@media (max-width: 960px) {
  .pg__career-model .l-intro .l-image {
    width: 24%;
    padding-right: 0;
  }
}
@media (max-width: 690px) {
  .pg__career-model .l-intro .l-image {
    position: absolute;
    top: 0;
  }
}
@media (max-width: 690px) {
  .pg__career-model .l-intro .l-image {
    width: 30%;
  }
}
.pg__career-model .l-intro .l-step {
  width: 72%;
}
@media (max-width: 960px) {
  .pg__career-model .l-intro .l-step {
    width: 76%;
    padding-left: 0;
  }
}
@media (max-width: 690px) {
  .pg__career-model .l-intro .l-step {
    width: 100%;
  }
}

.l-step-image {
  display: flex;
  flex-direction: column-reverse;
  padding-top: 4.8em;
}
.l-step-image .dl-step {
  position: relative;
  display: flex;
  justify-content: flex-start;
}
.l-step-image .dl-step dt {
  width: 23%;
  background-color: #d92027;
  padding: 1.3em;
  border-radius: 1.7em 0 0 0;
  position: relative;
  aspect-ratio: 7/5;
}
.l-step-image .dl-step dt .ttl-year {
  position: absolute;
  top: -2.9em;
  line-height: 1;
  font-size: 1.3em;
  color: #d92027;
  white-space: nowrap;
}
.l-step-image .dl-step dt .ttl-year span {
  font-size: 2.2em;
}
.l-step-image .dl-step dd {
  width: 77%;
  padding: 0 1.7em;
  border-radius: 1.7em 0 0 0;
  background-color: #fff;
  position: relative;
  left: -1.7em;
  z-index: 1;
  display: flex;
  align-items: center;
  min-height: 6em;
}
@media (max-width: 960px) {
  .l-step-image .dl-step dd br {
    display: none;
  }
}
@media (max-width: 520px) {
  .l-step-image .dl-step dd {
    padding-top: 1em;
    padding-bottom: 1em;
  }
}
.l-step-image .dl-step:nth-of-type(1) {
  left: 0;
}
.l-step-image .dl-step:nth-of-type(2) {
  left: 8em;
}
@media (max-width: 1380px) {
  .l-step-image .dl-step:nth-of-type(2) {
    left: 6em;
  }
}
.l-step-image .dl-step:nth-of-type(2) dt {
  width: calc(23% - 1.3em);
  background-color: rgb(229.3228915663, 80.8771084337, 86.4939759036);
}
.l-step-image .dl-step:nth-of-type(2) dd {
  width: calc(77% - 4em);
}
.l-step-image .dl-step:nth-of-type(3) {
  left: 16em;
}
@media (max-width: 1380px) {
  .l-step-image .dl-step:nth-of-type(3) {
    left: 12em;
  }
}
.l-step-image .dl-step:nth-of-type(3) dt {
  width: calc(23% - 2.2em);
  background-color: rgb(237.1879518072, 134.2120481928, 138.1084337349);
}
.l-step-image .dl-step:nth-of-type(3) dd {
  width: calc(77% - 8em);
}
.inner-ttl {
  position: relative;
  display: flex;
  margin-bottom: 6em;
}
@media (max-width: 690px) {
  .inner-ttl {
    margin-bottom: 3em;
  }
}
.inner-ttl::before {
  content: "";
  width: 50%;
  height: auto;
  aspect-ratio: 16/9;
  border-radius: 0.6em;
  background-image: url(../img/career/p-career-ttl.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: absolute;
  top: -12em;
  right: 0;
  z-index: 1;
}
@media (max-width: 840px) {
  .inner-ttl::before {
    top: -7em;
  }
}
@media (max-width: 520px) {
  .inner-ttl::before {
    content: none;
  }
}
.inner-ttl .sec-ttl {
  text-align: left;
}
@media (max-width: 960px) {
  .inner-ttl .sec-ttl {
    margin-bottom: 0;
  }
}
@media (max-width: 690px) {
  .inner-ttl .sec-ttl {
    width: 100%;
    text-align: center;
  }
}

.wrap-intro {
  position: relative;
}

.l-achievements {
  position: relative;
}
.l-achievements::before {
  content: "";
  height: 100%;
  width: 240%;
  background-color: #F7F8FA;
  border-radius: 50%;
  position: absolute;
  margin: auto -70%;
  left: 0;
  right: 0;
  top: 12vw;
  transform: none;
  z-index: -1;
}
.l-achievements .area-career {
  background-color: #fff;
  border-radius: 1.3em;
  padding: 2.9em 4.8em;
  margin-bottom: 5.7em;
  box-shadow: 0 1px 0.2em rgba(0, 0, 0, 0.2);
  position: relative;
}
@media (max-width: 840px) {
  .l-achievements .area-career {
    padding: 2.9em;
    margin-bottom: 2.9em;
  }
}
@media (max-width: 690px) {
  .l-achievements .area-career {
    padding: 2.2em;
    padding-top: 0;
    margin-bottom: 2.2em;
  }
}
.l-achievements .area-career .l-image {
  width: 30%;
  position: relative;
}
@media (max-width: 690px) {
  .l-achievements .area-career .l-image {
    width: 100%;
  }
}
.l-achievements .area-career .l-image .l-ttl {
  margin-bottom: 0;
  text-align: left;
  position: absolute;
  bottom: 0;
  left: 2em;
  z-index: 1;
}
@media (max-width: 690px) {
  .l-achievements .area-career .l-image .l-ttl {
    left: auto;
    margin-bottom: inherit;
  }
}
.l-achievements .area-career .l-image .l-ttl .ttl {
  display: block;
  margin-bottom: 0.5em;
}
.l-achievements .area-career .l-image .l-ttl .ttl::before {
  content: none;
}
.l-achievements .area-career .l-image .l-ttl .sub-ttl {
  display: inline-block;
  margin-left: 0.5em;
  padding: 0.3em 0.4em;
  background-color: #212121;
  color: #fff;
  line-height: 1.1;
  border-radius: 0.2em;
}
.l-achievements .area-career .l-image .l-col-inner {
  height: 100%;
}
@media (max-width: 690px) {
  .l-achievements .area-career .l-image .l-col-inner {
    height: auto;
  }
}
.l-achievements .area-career .l-image figure {
  display: block;
  height: 100%;
  position: relative;
  text-align: center;
}
@media (max-width: 690px) {
  .l-achievements .area-career .l-image figure {
    width: 42%;
    margin-left: auto;
  }
}
.l-achievements .area-career .l-image figure::before {
  content: "";
  width: 88%;
  height: auto;
  aspect-ratio: 1/1;
  background-color: rgba(217, 32, 39, 0.2);
  border-radius: 50%;
  position: absolute;
  margin: auto;
  left: -1vw;
  bottom: -1vw;
  z-index: 0;
}
.l-achievements .area-career .l-image figure img {
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  max-height: 100%;
  z-index: 1;
}
@media (max-width: 690px) {
  .l-achievements .area-career .l-image figure img {
    position: relative;
  }
}
.l-achievements .area-career .l-text {
  width: 70%;
}
@media (max-width: 690px) {
  .l-achievements .area-career .l-text {
    width: 100%;
  }
}
.l-achievements .area-career .l-text .ttl {
  font-size: 1.3em;
  background-color: #F7F8FA;
  padding: 1em;
  border-radius: 3px;
}
.l-achievements .area-career .l-text .txt {
  margin-bottom: 2em;
}
.l-achievements .area-career .l-text .txt:last-of-type {
  margin-bottom: 0;
}
.l-achievements .area-career ._od .l-image .l-ttl {
  left: auto;
  right: 2em;
  text-align: right;
}
@media (max-width: 690px) {
  .l-achievements .area-career ._od .l-image .l-ttl {
    right: auto;
    text-align: left;
  }
}
.l-achievements .area-career ._od .l-image .l-ttl .sub-ttl {
  margin-left: auto;
  margin-right: 0.5em;
}
.l-achievements .area-career ._od .l-image figure {
  right: auto;
  left: 0;
}
.l-achievements .area-career ._od .l-image figure::before {
  left: auto;
  right: -1vw;
}
.l-data {
  position: relative;
}
.l-data::before {
  content: "";
  height: 160vh;
  width: 240%;
  background: linear-gradient(to bottom, #f5f7f9 0%, #eaeef2 25%, #dce2e8 50%, #e9edf1 75%, #f5f7f9 100%);
  border-radius: 50%;
  position: absolute;
  margin: auto -70%;
  left: 0;
  right: 0;
  top: 24vw;
  transform: none;
}
@media (max-width: 960px) {
  .l-data .l-row {
    margin: 0 -0.5em;
  }
}
.l-data .l-col {
  margin-bottom: 2em;
}
@media (max-width: 960px) {
  .l-data .l-col {
    padding: 0 0.5em;
    margin-bottom: 1em;
  }
}
@media (max-width: 690px) {
  .l-data .l-col {
    width: 50% !important;
  }
}
@media (max-width: 520px) {
  .l-data .l-col {
    width: 100% !important;
  }
}
.l-data .l-col-inner {
  width: 100%;
  height: 100%;
  background-color: #fff;
  aspect-ratio: 1/1;
  border-radius: 1em;
  padding: 2.2em;
  box-shadow: 0 0 0.5em rgba(0, 0, 0, 0.1);
}
.l-data .l-col-inner._auto {
  height: auto;
  aspect-ratio: 8/5;
}
@media (max-width: 690px) {
  .l-data .l-col-inner._auto {
    aspect-ratio: 1/1;
  }
}
.l-data [class^=d-image_] .l-col-inner {
  background: none;
}
.l-data .ttl {
  font-size: 1.7em;
  margin: auto 0;
  text-align: center;
}

.graph-wrap {
  position: relative;
}

.circle {
  transform: rotate(-90deg);
  height: 100%;
  width: 100%;
  margin: auto;
  position: relative;
}
.circle circle {
  fill: none;
  stroke-width: 10px;
  position: relative;
}

.show .circle circle:nth-child(1) {
  stroke: #f78d9b;
  stroke-dashoffset: 0;
  animation: anime01 1.5s 0s forwards ease-in-out;
}
.show .circle circle:nth-child(2) {
  stroke: #5caeea;
  stroke-dasharray: 0, 100;
  stroke-dashoffset: 68;
  animation: anime02 1.5s 0.7s forwards ease-in-out;
}

@keyframes anime01 {
  0% {
    stroke-dasharray: 0, 100;
  }
  50%, 100% {
    stroke-dasharray: 32, 100;
  }
}
@keyframes anime02 {
  0% {
    stroke-dasharray: 0, 100;
  }
  50%, 100% {
    stroke-dasharray: 68, 32;
  }
}
.gap-area {
  position: absolute;
  top: -65px;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 325px;
  height: 325px;
}

.show .d-ratioMF_20 .circle circle:nth-child(1) {
  stroke: #f78d9b;
  stroke-dashoffset: 0;
  animation: anime-02-1 1.5s 0s forwards ease-in-out;
}
.show .d-ratioMF_20 .circle circle:nth-child(2) {
  stroke: #4fc5b5;
  stroke-dasharray: 0, 100;
  stroke-dashoffset: 58;
  animation: anime-02-2 1.5s 0.7s forwards ease-in-out;
}

@keyframes anime-02-1 {
  0% {
    stroke-dasharray: 0, 100;
  }
  50%, 100% {
    stroke-dasharray: 42, 100;
  }
}
@keyframes anime-02-2 {
  0% {
    stroke-dasharray: 0, 100;
  }
  50%, 100% {
    stroke-dasharray: 58, 42;
  }
}
.show .d-ratio_eng .circle circle:nth-child(1) {
  stroke: #f06467;
  stroke-dashoffset: 0;
  animation: anime-04-1 1.5s 0s forwards ease-in-out;
}
.show .d-ratio_eng .circle circle:nth-child(2) {
  stroke: #5caeea;
  stroke-dasharray: 0, 100;
  stroke-dashoffset: 32;
  animation: anime-04-2 1.5s 0.7s forwards ease-in-out;
}

@keyframes anime-04-1 {
  0% {
    stroke-dasharray: 0, 100;
  }
  50%, 100% {
    stroke-dasharray: 68, 100;
  }
}
@keyframes anime-04-2 {
  0% {
    stroke-dasharray: 0, 100;
  }
  50%, 100% {
    stroke-dasharray: 32, 68;
  }
}
.counter {
  font-size: 3rem;
  font-weight: bold;
  line-height: 1.1;
}

[class^=gra-ttl-] {
  position: absolute;
  bottom: 0;
}

.gra-ttl-left {
  left: 0;
}

.gra-ttl-right {
  right: 0;
}

.d-ratio_eng .gra-ttl-left {
  bottom: auto;
  top: 17%;
}
.d-ratio_eng .gra-ttl-right {
  text-align: right;
}
.d-ratio_eng .gra-ttl {
  display: block;
}

/* 棒グラフ3
/*------------------------------------
  bar graph
------------------------------------*/
.chart {
  display: flex;
  flex-direction: column;
  gap: 20px;
  width: 100%;
  margin: auto;
}

.bar-container {
  background: #ddd;
  border-radius: 4px;
  position: relative;
  overflow: hidden;
  height: 40px;
}

.show .bar {
  background: #4fc5b5;
  height: 100%;
  width: 0%;
  color: white;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding-right: 10px;
  font-weight: bold;
  border-radius: 4px;
  transition: width 1.5s ease-out;
}

.title {
  margin-bottom: 5px;
  font-weight: bold;
}

[class^=d-image_] .l-col-inner {
  position: relative;
}
[class^=d-image_] .l-col-inner::before {
  content: "";
  height: 82%;
  width: 92%;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: bottom;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
}

@media (max-width: 690px) {
  .d-image_01 {
    display: none;
  }
}
.d-image_01 .l-col-inner {
  box-shadow: none;
}
.d-image_01 .l-col-inner::before {
  background-image: url(../img/data/data-man.png);
  right: 0;
}

@media (max-width: 690px) {
  .d-image_02 {
    display: none;
  }
}
.d-image_02 .l-col-inner {
  box-shadow: none;
}
.d-image_02 .l-col-inner::before {
  background-image: url(../img/data/data-woman.png);
  left: 0;
}

.percent-wrap {
  position: relative;
  height: 100%;
}
.percent-wrap .ttl-percent {
  position: absolute;
  bottom: 0;
  right: 0;
}
.percent-wrap._childcare::before {
  content: "";
  height: 60%;
  width: 50%;
  background-image: url(../img/data/i-data-childcare.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.d-ratio_20,
.d-average_age,
.d-ratio_graduate {
  position: relative;
}
.d-ratio_20::after,
.d-average_age::after,
.d-ratio_graduate::after {
  content: "";
  height: 70%;
  width: 70%;
  display: block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  margin: auto;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 1;
}

.d-ratio_20::after {
  background-image: url(../img/data/i-data_20.svg);
}

.d-average_age::after {
  background-image: url(../img/data/i-data_all.svg);
}

.d-ratio_graduate::after {
  background-image: url(../img/data/i-data_gr.svg);
}

.percent-wrap-w {
  height: 50%;
  position: relative;
}
.percent-wrap-w._upper::before, .percent-wrap-w._lower::before {
  content: "";
  height: 100%;
  width: 50%;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
}
.percent-wrap-w._upper .ttl,
.percent-wrap-w._upper .ttl-percent {
  text-align: left;
}
.percent-wrap-w._upper::before {
  background-image: url(../img/data/i-data-working.svg);
  right: 0;
}
.percent-wrap-w._lower .ttl,
.percent-wrap-w._lower .ttl-percent {
  text-align: right;
}
.percent-wrap-w._lower::before {
  background-image: url(../img/data/i-data-vacation.svg);
  left: 0;
}

.l-job {
  position: relative;
}
@media (max-width: 690px) {
  .l-job .l-job-inner figure {
    width: 77%;
    margin: 0 auto;
  }
}
@media (max-width: 690px) {
  .l-job .l-job-inner .l-text {
    margin-bottom: 0;
  }
}
.l-job._last-set {
  padding-bottom: 16em;
}
@media (max-width: 960px) {
  .l-job._last-set {
    padding-bottom: 16vw;
  }
}
.l-job ._od .blk-content {
  right: auto;
  left: 0;
  padding-right: 3.7em;
  padding-left: 0;
}
@media (max-width: 690px) {
  .l-job ._od .blk-content {
    padding: 0 2.2em;
  }
}
.l-job ._od .blk-content::before {
  left: auto;
  right: 0;
}

.l-message {
  position: relative;
}
.l-message::before {
  content: "";
  height: 160vh;
  width: 240%;
  background-color: #fdeaea;
  border-radius: 50%;
  position: absolute;
  margin: auto -70%;
  left: 0;
  right: 0;
  top: 18vw;
  transform: none;
  z-index: -1;
}
.l-message .area-message {
  margin-bottom: 2.2em;
}
.l-message .area-message .l-col-inner {
  position: relative;
}
.l-message .area-message figure {
  margin-bottom: 2.2em;
  width: 62%;
  position: relative;
}
.l-message .area-message figure::before {
  content: "";
  width: 3.7em;
  height: 3.7em;
  position: absolute;
  margin: auto;
  top: 60%;
  right: 0;
  left: 0;
  background-color: #d92027;
  border-radius: 100%;
  opacity: 0.8;
}
.l-message .area-message figure::after {
  content: "";
  position: absolute;
  top: calc(68% - 0.6em);
  left: calc(50% - 0.375em);
  width: 1.2em;
  height: 1.2rem;
  background-color: #fff;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
.l-message .area-message figure img {
  border-radius: 50%;
}
.l-message .area-message .l-text {
  width: 58%;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  text-align: center;
}
.l-message .area-message .l-text .l-ttl .ttl::before {
  content: none;
}
.l-message .area-message .l-text .tx-ttl {
  margin-bottom: 0;
  background-color: #fff;
  padding: 1.1em;
  position: relative;
  border-radius: 0.4em;
}
@media (max-width: 690px) {
  .l-message .area-message .l-text .tx-ttl {
    font-size: 1em;
  }
}

.l-entry {
  padding-top: 0;
  position: relative;
}
.l-entry::before {
  content: "";
  height: 160vh;
  width: 240%;
  background: linear-gradient(to right, #d92027 0%, #b0171b 25%, #ff4d4d 50%, #b0171b 75%, #d92027 100%);
  border-radius: 50%;
  position: absolute;
  margin: auto -70%;
  left: 0;
  right: 0;
  top: -5vw;
}
@media (max-width: 1180px) {
  .l-entry::before {
    border-radius: 0;
  }
}
.l-entry .entry-area {
  margin-top: 0;
}
.l-entry .entry-area .entry-line ul {
  display: flex;
  margin: 0 -1em;
}
@media (max-width: 520px) {
  .l-entry .entry-area .entry-line ul {
    display: flex;
  }
}
.l-entry .entry-area .entry-line ul li {
  width: 33.33%;
  padding: 0 1em;
}
@media (max-width: 1180px) {
  .l-entry .entry-area .entry-line ul li {
    width: 50%;
  }
}
.l-entry .entry-area .entry-line ul li:last-of-type {
  margin-right: 0;
}
@media (max-width: 520px) {
  .l-entry .entry-area .entry-line ul li:last-of-type {
    margin: 0 auto;
  }
}
.l-entry .entry-area .entry-line ul li a {
  display: block;
  height: 60px;
}
.l-entry .entry-area .entry-line ul li img {
  display: block;
  width: 100%;
}

.lower-inner {
  width: 84.6153846154%;
  margin: 5em auto 8em;
  background-color: rgb(240.7230769231, 242.5076923077, 246.0769230769);
  padding: 6.3em 8.2em;
  line-height: 2.2;
  border-radius: 0.3em;
}
@media (max-width: 1380px) {
  .lower-inner {
    width: 100%;
    padding: 2.9em 3.7em;
  }
}
@media (max-width: 520px) {
  .lower-inner {
    padding: 1.7em 2.2em;
  }
}

.l-privacy .od-list {
  list-style: decimal;
  margin: 2.2em;
}

.site-footer {
  background-color: #212121;
}
.site-footer .footer-main-navigation {
  margin-bottom: 2.2em;
}
.site-footer .footer-main-navigation #fooer-menu a:hover {
  color: #d92027;
}
.site-footer .entry-line ul {
  justify-content: flex-end;
}

@keyframes zoomInAnime {
  from {
    transform: scale(1.16);
  }
  to {
    transform: scale(1);
  }
}
.sec-mv {
  padding: 0;
  position: relative;
  height: 740px;
}
@media (max-width: 690px) {
  .sec-mv {
    height: 542px;
  }
}
@media (max-width: 520px) {
  .sec-mv {
    height: 110vw;
  }
}
.sec-mv::after {
  content: "";
  width: 0;
  height: 100%;
  background: linear-gradient(to right, rgba(255, 229, 0, 0.4), rgba(217, 32, 39, 0.8));
  position: absolute;
  bottom: 0;
  right: 0;
  clip-path: polygon(11.5% 0, 100% 0%, 100% 100%, 0% 100%);
  transition: all 0.9s ease-in-out;
  opacity: 0.3;
  z-index: -1;
}
.sec-mv .l-mv-inner {
  position: relative;
  width: 100%;
  margin: 0 auto;
  background-image: url(../img/mv/top-mv-bg.jpg);
  background-position: center left;
  background-repeat: no-repeat;
  background-size: contain;
}
@media (max-width: 960px) {
  .sec-mv .l-mv-inner {
    background-size: cover;
  }
}
.sec-mv .l-mv-inner::before {
  content: "";
  width: 80%;
  height: 100%;
  background: linear-gradient(to left, rgba(217, 32, 39, 0.9), rgba(0, 70, 176, 0.6));
  position: absolute;
  top: 0;
  left: 0;
}
.sec-mv .l-mv-inner .mv-catch {
  height: -moz-fit-content;
  height: fit-content;
  position: absolute;
  margin: auto;
  left: 8%;
  top: 10%;
  bottom: 0;
  z-index: 10;
}
@media (max-width: 690px) {
  .sec-mv .l-mv-inner .mv-catch {
    left: 4%;
  }
}
@media (max-width: 520px) {
  .sec-mv .l-mv-inner .mv-catch {
    left: 8%;
  }
}
.sec-mv .l-mv-inner .mv-catch::before, .sec-mv .l-mv-inner .mv-catch::after {
  width: 23.5%;
  aspect-ratio: 9/16;
  background: linear-gradient(rgba(217, 32, 39, 0.2), rgba(0, 149, 230, 0.1));
  clip-path: polygon(36.5% 0, 100% 0%, 63.5% 100%, 0% 100%);
  position: absolute;
  margin: auto;
  z-index: -1;
}
.sec-mv .l-mv-inner .mv-catch::before {
  top: -8em;
  left: -4em;
}
.sec-mv .l-mv-inner .mv-catch::after {
  top: 11em;
  right: 21em;
}
.sec-mv .l-mv-inner .mv-catch .ttl-catch {
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: 0.1em;
  width: 580px;
  opacity: 0;
  transition: cubic-bezier(0.215, 0.61, 0.355, 1) 1.6s;
  transform: translate(0, 3em);
  transition-delay: 0.2s;
}
@media (max-width: 1480px) {
  .sec-mv .l-mv-inner .mv-catch .ttl-catch {
    width: 520px;
    transform: translateX(-20px);
  }
}
@media (max-width: 690px) {
  .sec-mv .l-mv-inner .mv-catch .ttl-catch {
    width: 80vw;
  }
}
.sec-mv .l-mv-inner .mv-catch .ttl-catch .sp-line {
  display: inline-block;
  background-color: #fff;
  line-height: 1;
}
.sec-mv .l-mv-inner .mv-catch .ttl-catch ._mk {
  color: #d92027;
}
.sec-mv .l-mv-inner .mv-catch .ttl {
  font-size: 1.9em;
  margin: 1.3em 0;
  padding-left: 0.1em;
}
.sec-mv .l-mv-inner .mv-catch .ttl ._inner {
  display: inline-block;
  padding: 0.5em 0.5em;
  background: #d92027;
  position: relative;
  color: #fff;
}
.sec-mv .l-mv-inner .mv-catch .ttl ._inner::before {
  content: "";
  width: 1em;
  height: 0.6em;
  background-color: #d92027;
  position: absolute;
  margin: auto;
  left: 50%;
  bottom: -0.6em;
  transform: translateX(-50%);
  clip-path: polygon(15% 0, 0 100%, 100% 0);
}
.sec-mv .l-mv-inner .mv-catch .ttl ._en {
  font-size: 1.125em;
}
.sec-mv .l-mv-inner .mv-catch .btn {
  height: 4.2em;
}
.sec-mv .l-mv-inner .mv-catch .i-catch {
  display: flex;
  margin-top: 0.5em;
}
.sec-mv .l-mv-inner .mv-catch .i-catch li {
  width: 160px;
  padding: 0.5em;
  opacity: 0;
  transition: cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s;
  transition-delay: 0s;
  transform: translate(0, -1em);
}
.sec-mv .l-mv-inner .mv-catch .i-catch li:nth-of-type(1) {
  transition-delay: 1.6s;
}
.sec-mv .l-mv-inner .mv-catch .i-catch li:nth-of-type(2) {
  transition-delay: 1.8s;
}
@media (max-width: 1480px) {
  .sec-mv .l-mv-inner .mv-catch .i-catch li {
    width: 140px;
  }
}
@media (max-width: 960px) {
  .sec-mv .l-mv-inner .mv-catch .i-catch li {
    width: 120px;
    padding: 0.2em;
  }
}
@media (max-width: 690px) {
  .sec-mv .l-mv-inner .mv-catch .i-catch li {
    width: 18vw;
    padding: 0.2em;
  }
}
.sec-mv.visible::after {
  width: 58%;
  opacity: 1;
}
.sec-mv.visible .l-mv-inner .mv-catch .ttl-catch {
  opacity: 1;
  transform: translate(0, 0);
}
.sec-mv.visible .l-mv-inner .mv-catch .i-catch li {
  transform: translate(0, 0);
  opacity: 1;
}

/* img.videoThumb のスタイル定義 */
img.videoThumb {
  cursor: pointer; /* マウスカーソルが画像の上に来たときに、ポインターに変更する */
  width: 100%;
}

/* img.videoThumb のホバー時のスタイル定義 */
img.videoThumb:hover {
  opacity: 0.8; /* マウスオーバー時に画像の透明度を80%に設定 */
}

/* .modalContent のスタイル定義 */
.modalContent {
  background-color: #fefefe; /* 背景色を設定 */
  margin: 15% auto; /* 上下のマージンを15%、左右のマージンを自動に設定 */
  padding: 0; /* パディングを設定 */
  border: 1px solid #888; /* 境界線の色と太さを設定 */
  animation: fadeIn 0.7s ease 0s 1 normal; /* アニメーションの名前、時間、タイミング関数、遅延時間、反復回数、方向を設定 */
  position: relative; /* 位置を設定 */
  width: 100%; /* 幅を100%に設定 */
  aspect-ratio: 16/9; /* アスペクト比を16:9に設定 */
  max-width: 800px; /* 最大幅を600pxに設定 */
}

/* .modalContent iframe のスタイル定義 */
.modalContent iframe {
  position: absolute; /* 絶対位置を設定 */
  margin: auto;
  width: 100%; /* 幅を100%に設定 */
  height: 100%; /* 高さを100%に設定 */
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

/* button.closeBtn のスタイル定義 */
button.closeBtn {
  display: inline-block; /* ディスプレイプロパティをinline-blockに設定 */
  vertical-align: middle; /* 垂直方向の配置を中央に設定 */
  color: #FFF; /* 文字色を白に設定 */
  line-height: 1; /* 行の高さを1に設定 */
  width: 1.6rem; /* 幅を1.6remに設定 */
  height: 0.2rem; /* 高さを0.2remに設定 */
  background: currentColor; /* 背景色を現在の文字色に設定 */
  border-radius: 0.1rem; /* ボーダーの角を丸める */
  position: absolute; /* 絶対位置を設定 */
  transform: rotate(45deg); /* 要素を45度回転させる */
  border: none; /* ボーダーをなくす */
  right: -35px; /* 右から-35pxの位置に配置 */
  top: 7px; /* 上から7pxの位置に配置 */
  opacity: 0.6; /* 透明度を60%に設定 */
  transition: 0.2s ease-in-out; /* 0.2秒間でプロパティを変更し、変更の速度が先頭と末尾でゆっくりとなるように設定 */
}

/* button.closeBtn:before のスタイル定義 */
button.closeBtn:before {
  content: ""; /* 内容を空に設定 */
  position: absolute; /* 絶対位置を設定 */
  top: 0; /* 上から0の位置に配置 */
  left: 0; /* 左から0の位置に配置 */
  width: 100%; /* 幅を100%に設定 */
  height: 100%; /* 高さを100%に設定 */
  background: inherit; /* 背景色を親要素から継承 */
  border-radius: inherit; /* ボーダーの角を親要素から継承 */
  transform: rotate(90deg); /* 要素を90度回転させる */
}

/* button.closeBtn のホバー時のスタイル定義 */
button.closeBtn:hover {
  opacity: 1; /* マウスオーバー時に透明度を100%に設定 */
}

/* fadeIn アニメーションの定義 */
@keyframes fadeIn {
  0% {
    opacity: 0; /* 開始時点での透明度を0%に設定 */
    transform: translateY(30px); /* 開始時点での要素の位置をY軸方向に30px下に移動 */
  }
  100% {
    opacity: 1; /* 終了時点での透明度を100%に設定 */
  }
}
/* fadeOut アニメーションの定義 */
@keyframes fadeOut {
  0% {
    opacity: 1; /* 開始時点での透明度を100%に設定 */
  }
  100% {
    opacity: 0; /* 終了時点での透明度を0%に設定 */
    transform: translateY(60px); /* 終了時点での要素の位置をY軸方向に60px下に移動 */
  }
}
.sec-custom ._image {
  text-align: center;
}
.sec-custom .i-case {
  display: block;
  margin: auto;
  width: 33%;
  margin-bottom: 1em;
}
@media (max-width: 690px) {
  .sec-custom .i-case {
    width: 23%;
  }
}
.sec-custom .i-case + .subttl {
  font-size: 1.3em;
  font-weight: 700;
  margin: 1.3em 0;
  text-align: center;
}
.sec-custom .i-case + .subttl ._mk {
  color: #0046B0;
}
.sec-custom .i-case + .subttl + img {
  width: 88%;
  margin: 0 auto;
}
@media (max-width: 690px) {
  .sec-custom .i-case + .subttl + img {
    width: 77%;
  }
}

.wrap-i-box {
  width: 1200px;
  max-width: 100%;
  margin: 5em auto 0;
}
@media (max-width: 690px) {
  .wrap-i-box {
    margin-top: 0;
  }
}
@media (max-width: 690px) {
  .wrap-i-box {
    max-width: 80%;
  }
}

.ul-i-box {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -4em;
}
@media (max-width: 840px) {
  .ul-i-box {
    margin: 0 -2em;
  }
}
.ul-i-box li {
  padding: 0 4em;
  width: 33.3333333333%;
  position: relative;
}
@media (max-width: 840px) {
  .ul-i-box li {
    padding: 0 2em;
  }
}
@media (max-width: 690px) {
  .ul-i-box li {
    width: 100%;
    margin-bottom: 1em;
  }
}
.ul-i-box li ._inner {
  display: flex;
  align-items: center;
  padding: 0 2em 0 8em;
  aspect-ratio: 24/9;
  background-color: #0046B0;
  color: #fff;
}
@media (max-width: 690px) {
  .ul-i-box li ._inner {
    padding-left: 5em;
  }
}
@media (max-width: 690px) {
  .ul-i-box li ._inner {
    aspect-ratio: auto;
    padding-top: 1em;
    padding-bottom: 1em;
  }
}
.ul-i-box li ._inner::before {
  content: "";
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 4em;
  height: 4em;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  left: 6em;
}
@media (max-width: 690px) {
  .ul-i-box li ._inner::before {
    width: 3em;
    height: 3em;
    left: 3em;
  }
}
.ul-i-box li:nth-of-type(1) ._inner::before {
  background-image: url(../img/feature/i_features_01.svg);
}
.ul-i-box li:nth-of-type(2) ._inner::before {
  background-image: url(../img/feature/i_features_02.svg);
}
.ul-i-box li:nth-of-type(3) ._inner::before {
  background-image: url(../img/feature/i_features_03.svg);
}

.dli-plus-circle {
  display: inline-block;
  vertical-align: middle;
  color: #0046B0;
  line-height: 1;
  position: relative;
  width: 2em;
  height: 2em;
  border: 0.1em solid currentColor;
  border-radius: 50%;
  box-sizing: content-box;
  background-color: #F7F8FA;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  right: -1em;
}
@media (max-width: 690px) {
  .dli-plus-circle {
    right: 0;
    left: 0;
    bottom: -6.5em;
    z-index: 1;
  }
}
.dli-plus-circle > span {
  width: 52%;
  height: 2px;
  background: currentColor;
  position: relative;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}
.dli-plus-circle > span::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: inherit;
  border-radius: inherit;
  transform: rotate(90deg);
}

.wrap-arc .subttl {
  font-size: 1.3em;
  margin-bottom: 2.1em;
}

.wpcf7 {
  padding: 3.7em;
  width: 84.6153846154%;
  margin: 2.9em auto 0;
  background-color: rgb(240.7230769231, 242.5076923077, 246.0769230769);
}
@media (max-width: 690px) {
  .wpcf7 {
    padding: 1.7em;
    width: 100%;
  }
}
.wpcf7 .btn-line {
  margin: 3em auto 0;
}
.wpcf7 .wpcf7-list-item label {
  cursor: pointer;
}
.wpcf7 .wpcf7-list-item label input[type=checkbox],
.wpcf7 .wpcf7-list-item label input[type=radio] {
  width: 1.7em;
  height: 1.7em;
  accent-color: rgba(217, 32, 39, 0.2);
}
.wpcf7 .wpcf7-list-item label:hover {
  color: #d92027;
}

.wrap-smform {
  padding: 3.7em;
  width: 84.6153846154%;
  margin: 2.9em auto 0;
  background-color: rgb(240.7230769231, 242.5076923077, 246.0769230769);
}
@media (max-width: 690px) {
  .wrap-smform {
    padding: 1.7em;
    width: 100%;
  }
}

.tx-upper-form {
  margin: 0 7.6923076923%;
  margin-bottom: 2.9em;
}
.tx-upper-form .btn {
  margin: 1em auto;
}

.tx-lower-form {
  margin: 0 15.3846153846%;
  margin-top: 2.9em;
}
@media (max-width: 690px) {
  .tx-lower-form {
    margin: 0 1em;
    margin-top: 2.9em;
  }
}

.tx-ast {
  padding-left: 1.3em;
  position: relative;
}
.tx-ast::before {
  content: "※";
  position: absolute;
  left: 0;
}

.smf-form--business .smf-item {
  border: none;
}
.smf-form--business .smf-item__col--label {
  background: none;
  border: none;
}

.smf-checkboxes-control {
  text-align: center;
}

.smf-action {
  display: flex;
  justify-content: center;
}
.smf-action button.smf-button-control__control[data-action=confirm],
.smf-action button.smf-button-control__control[data-action=complete],
.smf-action button.smf-button-control__control[data-action=back] {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  line-height: 1;
  width: -moz-fit-content;
  width: fit-content;
  height: 3.7em;
  padding: 0 2.9em 0 1.7em;
  min-width: 7.4em;
  border: 1px solid #d92027;
  color: #fff;
  background-color: #d92027;
  background-image: none;
  border-radius: 0.3em;
  position: relative;
}
.smf-action button.smf-button-control__control[data-action=confirm]:visited,
.smf-action button.smf-button-control__control[data-action=complete]:visited,
.smf-action button.smf-button-control__control[data-action=back]:visited {
  color: #fff;
}
.smf-action button.smf-button-control__control[data-action=confirm]:hover,
.smf-action button.smf-button-control__control[data-action=complete]:hover,
.smf-action button.smf-button-control__control[data-action=back]:hover {
  background-color: #212121;
  border-color: #212121;
}
.smf-action button.smf-button-control__control[data-action=confirm]::before,
.smf-action button.smf-button-control__control[data-action=complete]::before,
.smf-action button.smf-button-control__control[data-action=back]::before {
  content: "";
  width: 2em;
  height: 2em;
  background-image: url(../img/common/i-arw-wh.svg);
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0em;
  right: 0.5em;
  z-index: 0;
  transition: all 0.5s;
}
.smf-action button.smf-button-control__control[data-action=confirm]::after,
.smf-action button.smf-button-control__control[data-action=complete]::after,
.smf-action button.smf-button-control__control[data-action=back]::after {
  content: "";
  width: 2em;
  height: 2em;
  background-image: url(../img/common/i-arw-red.svg);
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0em;
  right: 2em;
  z-index: 0;
  transition: all 0.5s;
  opacity: 0;
}
.smf-action button.smf-button-control__control[data-action=confirm]:hover::before,
.smf-action button.smf-button-control__control[data-action=complete]:hover::before,
.smf-action button.smf-button-control__control[data-action=back]:hover::before {
  right: -1em;
  opacity: 0;
}
.smf-action button.smf-button-control__control[data-action=confirm]:hover::after,
.smf-action button.smf-button-control__control[data-action=complete]:hover::after,
.smf-action button.smf-button-control__control[data-action=back]:hover::after {
  right: 0.5em;
  opacity: 1;
}
.smf-action button.smf-button-control__control[data-action=back] {
  border-color: #212121;
  background-color: #212121;
  padding: 0 1.7em 0 2.9em;
  color: #fff;
}
.smf-action button.smf-button-control__control[data-action=back]::before {
  right: inherit;
  left: 0.5em;
  transform: rotate(180deg);
}
.smf-action button.smf-button-control__control[data-action=back]::after {
  right: inherit;
  left: 2em;
  transform: rotate(180deg);
}
.smf-action button.smf-button-control__control[data-action=back]:hover::before {
  right: inherit;
  left: -1em;
}
.smf-action button.smf-button-control__control[data-action=back]:hover::after {
  right: inherit;
  left: 0.5em;
}

.smf-form--business .smf-item__col--label {
  border: none;
  padding: 1.3em;
}
@media (max-width: 690px) {
  .smf-form--business .smf-item__col--label {
    padding: 0;
  }
}
@media (max-width: 690px) {
  .smf-form--business .smf-item__col--label .smf-item__label {
    display: inline-block;
  }
}
@media (max-width: 690px) {
  .smf-form--business .smf-item__col--label .smf-item__description {
    display: inline-block;
    font-size: 0.8em;
  }
}
.smf-form--business .smf-item__col--controls {
  padding: 1.3em;
}
@media (max-width: 690px) {
  .smf-form--business .smf-item__col--controls {
    padding: 0;
    margin-bottom: 1em;
  }
}

@media (max-width: 520px) {
  .smf-form .smf-radio-buttons-control--horizontal .smf-radio-buttons-control__control > .smf-label {
    display: block;
  }
}

.smf-form .smf-text-control__control {
  min-width: 60%;
}
@media (max-width: 520px) {
  .smf-form .smf-text-control__control {
    width: 100%;
  }
}

.smf-item__controls:has(div[data-validations=required]),
.smf-item__controls:has(input[data-validations=required]),
.smf-item__controls:has(input[data-validations="email required"]),
.smf-item__controls:has(textarea[data-validations=required]) {
  position: relative;
}
.smf-item__controls:has(div[data-validations=required])::before,
.smf-item__controls:has(input[data-validations=required])::before,
.smf-item__controls:has(input[data-validations="email required"])::before,
.smf-item__controls:has(textarea[data-validations=required])::before {
  content: "必須";
  font-size: 0.7em;
  display: inline-block;
  background-color: #d92027;
  color: #fff;
  padding: 3px 4px;
  line-height: 1;
  position: absolute;
  left: -4.7em;
  top: 5px;
}
@media (max-width: 690px) {
  .smf-item__controls:has(div[data-validations=required])::before,
  .smf-item__controls:has(input[data-validations=required])::before,
  .smf-item__controls:has(input[data-validations="email required"])::before,
  .smf-item__controls:has(textarea[data-validations=required])::before {
    left: auto;
    right: 0.5em;
    top: -2.2em;
  }
}

.dl-form {
  display: flex;
  flex-wrap: wrap;
}
.dl-form dt {
  width: 15em;
  margin-bottom: 0.5em;
  padding-top: 0.75em;
}
@media (max-width: 690px) {
  .dl-form dt {
    display: block;
    width: 100%;
  }
}
.dl-form dt.i-must {
  position: relative;
}
.dl-form dt.i-must::before {
  content: "必須";
  font-size: 0.7em;
  display: inline-block;
  background-color: #d92027;
  color: #fff;
  padding: 3px 4px;
  line-height: 1;
  position: absolute;
  right: 1.7em;
  top: 1.4em;
}
.dl-form dd {
  width: calc(100% - 15em);
  margin-bottom: 2em;
}
@media (max-width: 690px) {
  .dl-form dd {
    display: block;
    width: 100%;
  }
}
.dl-form._conf dt {
  padding-top: 0;
}
@media (max-width: 690px) {
  .dl-form._conf dd {
    background-color: #fff;
    padding: 0.75em;
    border-radius: 0.2em;
    color: #999;
  }
}
@media (max-width: 690px) {
  .dl-form._flat {
    margin-top: 3em;
  }
}
.dl-form._flat dt {
  width: 17em;
  padding-top: 0;
  padding-right: 3em;
  margin-bottom: 1em;
}
.dl-form._flat dd {
  width: calc(100% - 17em);
}
.dl-form._flat dd .wpcf7-list-item {
  margin: 0 1em 0.75em 0;
}
.dl-form._flat dd .wpcf7-textarea {
  height: 10em;
}
@media (max-width: 690px) {
  .dl-form._flat dt, .dl-form._flat dd {
    display: block;
    width: 100%;
  }
}

.wpcf7 [type=radio] {
  height: 1.3em;
  width: 1.3em;
  margin-right: 0.5em;
}

.wpcf7-list-item label:hover {
  color: #0095E6;
}

.wrap-form {
  padding: 5em;
  background-color: #F7F8FA;
  margin: 3em auto;
  width: 1100px;
  max-width: 90%;
  border-radius: 0.3em;
}
@media (max-width: 690px) {
  .wrap-form {
    padding: 1em;
    margin: 0;
    max-width: 100%;
  }
}
.wrap-form .udline {
  display: inline-block;
  position: relative;
}
.wrap-form .udline::before {
  content: "";
  height: 1px;
  width: 100%;
  background-color: #d92027;
  position: absolute;
  bottom: 0;
  transition: all 0.3s ease-in-out;
}
.wrap-form .udline:hover {
  color: #d92027;
}
.wrap-form .udline:hover::before {
  width: 0;
}
.wrap-form .l-row {
  margin-bottom: 2em;
}
.wrap-form .txt {
  text-align: center;
}
@media (max-width: 690px) {
  .wrap-form .txt {
    text-align: left;
  }
}

.apply-list .wpcf7-list-item {
  width: 33%;
  padding: 0.25em 1.3em 0.25em 0;
  margin: 0;
}
@media (max-width: 1380px) {
  .apply-list .wpcf7-list-item {
    width: 50%;
  }
}
@media (max-width: 520px) {
  .apply-list .wpcf7-list-item {
    width: 100%;
  }
}

.wrap-dl {
  text-align: center;
  padding: 3em 0;
}

.wpcf7 input, .wpcf7 textarea {
  padding: 0.75em 1em 0.7em;
  border: none;
  border-radius: 0.5em;
  background-color: #fff;
  max-width: 100%;
}
.wpcf7 input[type=checkbox] {
  width: 1.3em;
  height: 1.3em;
  margin-right: 0.5em;
}

.wpcf7-form-control.btn {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  line-height: 1;
  background: #d92027;
  position: relative;
  margin: 0 0.27em;
  height: 3.7em;
  min-width: 13em;
  color: #fff;
  font-weight: bold;
  letter-spacing: 0.008em;
  border-radius: 0.3em;
  padding: 0.5em 0 0.56em;
  border: none;
  cursor: pointer;
  transition: all 0.3s;
}
.wpcf7-form-control.btn:hover {
  opacity: 0.8;
}
@media (max-width: 960px) {
  .wpcf7-form-control.btn {
    margin: 0 0.8vw;
    font-size: 4.2vw;
  }
}
@media (max-width: 690px) {
  .wpcf7-form-control.btn {
    margin: 0 0.8vw;
    font-size: 4.8vw;
  }
}
.wpcf7-form-control.btn span {
  position: relative;
  display: inline-block;
  transform: translateX(-20px);
}
@media (max-width: 690px) {
  .wpcf7-form-control.btn span {
    transform: translateX(-2.7vw);
  }
}
.wpcf7-form-control.btn span::before {
  content: "";
  width: 0.45em;
  height: 0.45em;
  background-image: url(../img/form_icon.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  margin: auto;
  top: 50%;
  transform: translateY(-38%);
  right: -1em;
}
@media (max-width: 690px) {
  .wpcf7-form-control.btn span::before {
    width: 3vw;
    height: 3vw;
  }
}
.wpcf7-form-control.btn::after {
  content: "";
  width: calc(100% - 20px);
  height: calc(100% - 20px);
  border: 1px solid #fff;
  border-radius: 0.2em;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
@media (max-width: 690px) {
  .wpcf7-form-control.btn::after {
    width: calc(100% - 1.6vw);
    height: calc(100% - 1.6vw);
    border-radius: 0.3em;
  }
}
.wpcf7-form-control.btn-back {
  background-color: #212121;
  color: #fff;
  border-radius: 0.3em;
}

.wpcf7-spinner {
  position: absolute;
}

.wrap-btn {
  position: relative;
}
.wrap-btn::after {
  content: "";
  width: 20px;
  height: 20px;
  background-image: url(../img/i-arw-btn.png);
  background-position: center;
  background-size: contain;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  right: 3em;
  z-index: 1;
}
@media (max-width: 690px) {
  .wrap-btn::after {
    width: 3vw;
    height: 3vw;
    right: 1.3em;
  }
}
.wrap-btn::before {
  content: "";
  width: calc(100% - 20px);
  height: calc(100% - 20px);
  border: 1px solid #fff;
  border-radius: 0.2em;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
@media (max-width: 690px) {
  .wrap-btn::before {
    width: calc(100% - 1.6vw);
    height: calc(100% - 1.6vw);
    border-radius: 0.3em;
  }
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
  border: none;
  background-color: #00b9fc;
  color: #fff;
  padding: 1.7em;
}

.l-sec-ttl {
  position: relative;
  margin-bottom: 5em;
  margin-top: 6em;
}
.l-sec-ttl:first-of-type {
  margin-top: 0;
}
@media (max-width: 520px) {
  .l-sec-ttl {
    margin-bottom: 8vw;
    margin-top: 8vw;
  }
}
.l-sec-ttl .ttl {
  font-size: 2.1em;
  margin-bottom: 0;
  letter-spacing: 0.08em;
}
@media (max-width: 960px) {
  .l-sec-ttl .ttl {
    font-size: 1.7em;
  }
}
@media (max-width: 520px) {
  .l-sec-ttl .ttl {
    font-size: 4.8vw;
  }
}
.l-sec-ttl .ttl .tx-acc {
  display: inline-block;
}
.l-sec-ttl .ttl img {
  vertical-align: bottom;
  height: 1.8em;
}
.l-sec-ttl + .tx-lead {
  line-height: 2;
  margin-bottom: 5em;
}
@media (max-width: 690px) {
  .l-sec-ttl + .tx-lead {
    margin-bottom: 2em;
  }
}

.entry-header,
.page-header {
  padding-top: 6em;
  padding-bottom: 5em;
  position: relative;
}
@media (max-width: 840px) {
  .entry-header,
  .page-header {
    padding-top: 5em;
    padding-bottom: 5em;
  }
}
@media (max-width: 690px) {
  .entry-header,
  .page-header {
    padding-top: 4em;
    padding-bottom: 2em;
  }
}
@media (max-width: 520px) {
  .entry-header,
  .page-header {
    padding-bottom: 0;
  }
}
.entry-header ._inner,
.page-header ._inner {
  position: relative;
}
.entry-header ._inner::before,
.page-header ._inner::before {
  content: "";
  height: 1px;
  width: calc(100% + 9.6em);
  background-color: #726e69;
  position: absolute;
  bottom: -2.9em;
  left: -4.8em;
  z-index: -1;
}
@media (max-width: 840px) {
  .entry-header ._inner::before,
  .page-header ._inner::before {
    width: 100%;
    bottom: -1.7em;
    left: 0;
  }
}
.entry-header ._inner::after,
.page-header ._inner::after {
  content: "";
  width: 16.8em;
  height: 23.1em;
  background: linear-gradient(rgba(45, 197, 96, 0.2), rgba(93, 156, 236, 0.1));
  clip-path: polygon(0 0, 50% 0, 100% 33%, 50% 66%, 100% 100%, 50% 100%, 0 66%, 50% 33%);
  position: absolute;
  margin: auto;
  top: -3.7em;
  left: -16vw;
  z-index: -1;
}
.entry-header .l-ttl,
.page-header .l-ttl {
  position: relative;
  margin-right: 3em;
  width: 60%;
}
@media (max-width: 1180px) {
  .entry-header .l-ttl,
  .page-header .l-ttl {
    width: 100%;
  }
}
.entry-header .l-ttl::before,
.page-header .l-ttl::before {
  height: 3px;
  width: 0.5em;
  background-color: #fff;
  position: absolute;
  right: -0.5em;
  top: calc(8em - 1px);
}
.entry-header .l-ttl::after,
.page-header .l-ttl::after {
  height: 3px;
  width: 100%;
  background-color: #d92027;
  border-radius: 2px;
  position: absolute;
  margin: auto;
  left: 0;
  top: calc(8em - 1px);
  z-index: 0;
}
@media (max-width: 960px) {
  .entry-header .l-ttl::after,
  .page-header .l-ttl::after {
    height: 9em;
  }
}
@media (max-width: 840px) {
  .entry-header .l-ttl::after,
  .page-header .l-ttl::after {
    height: 7em;
    top: auto;
    bottom: -1.5em;
  }
}
.entry-header .l-ttl .entry-title,
.entry-header .l-ttl .page-title,
.page-header .l-ttl .entry-title,
.page-header .l-ttl .page-title {
  text-align: left;
  margin-bottom: 1.3em;
}
@media (max-width: 690px) {
  .entry-header .l-ttl .entry-title,
  .entry-header .l-ttl .page-title,
  .page-header .l-ttl .entry-title,
  .page-header .l-ttl .page-title {
    font-size: 1.7em;
  }
}
.entry-header .l-ttl ._en,
.entry-header .l-ttl ._program,
.page-header .l-ttl ._en,
.page-header .l-ttl ._program {
  display: block;
  position: absolute;
  top: -2.9em;
  color: #d92027;
}
.entry-header .tx-lead,
.page-header .tx-lead {
  margin-bottom: 0;
}
.entry-header .tx-lead .page-title,
.page-header .tx-lead .page-title {
  margin-bottom: 0;
  font-size: 1.3em;
  font-weight: 700;
}
.entry-header .entry-title,
.entry-header .page-title,
.page-header .entry-title,
.page-header .page-title {
  position: relative;
  text-align: center;
  font-size: 2.2em;
}
@media (max-width: 960px) {
  .entry-header .entry-title,
  .entry-header .page-title,
  .page-header .entry-title,
  .page-header .page-title {
    font-size: 1.7em;
  }
}
@media (max-width: 520px) {
  .entry-header .entry-title,
  .entry-header .page-title,
  .page-header .entry-title,
  .page-header .page-title {
    font-size: 4.8vw;
  }
}

[class^=bgttl-] {
  position: relative;
}
[class^=bgttl-]::before, [class^=bgttl-]::after {
  content: "";
  height: 280px;
  aspect-ratio: 20/9;
  clip-path: polygon(9% 0, 100% 0%, 100% 100%, 0% 100%);
  position: absolute;
  right: 0;
  top: 1em;
  margin: auto;
}
@media (max-width: 1180px) {
  [class^=bgttl-]::before, [class^=bgttl-]::after {
    height: 21vw;
  }
}
@media (max-width: 690px) {
  [class^=bgttl-]::before, [class^=bgttl-]::after {
    height: 22vw;
    right: -10em;
  }
}
@media (max-width: 520px) {
  [class^=bgttl-]::before, [class^=bgttl-]::after {
    content: none;
  }
}
[class^=bgttl-]::before {
  background: linear-gradient(to right, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.5));
  z-index: 1;
}
[class^=bgttl-]::after {
  background-image: url(../img/sample.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  opacity: 0.9;
}
[class^=bgttl-] ._inner {
  position: relative;
}

.bgttl-basic::after {
  background-image: url(../img/kv/kv_program-basic.jpg);
}

.bgttl-advanced::after {
  background-image: url(../img/kv/kv_program-advanced.jpg);
}

.bgttl-intro::after {
  background-image: url(../img/kv/kv_how_to_use.jpg);
}

.bgttl-apply::after {
  background-image: url(../img/kv/kv_apply.jpg);
}

.bgttl-subsidy::after {
  background-image: url(../img/kv/kv_subsidy.jpg);
}

.bgttl-casestudy::after {
  background-image: url(../img/kv/kv_casestudy.jpg);
}

.bgttl-company::after {
  background-image: url(../img/kv/kv_company.jpg);
}

.bgttl-instructor::after {
  background-image: url(../img/kv/kv_instructor.jpg);
}

.bgttl-news::after {
  background-image: url(../img/kv/kv_news.jpg);
}

.bgttl-movie::after {
  background-image: url(../img/kv/kv_movie.jpg);
}

.bgttl-keyword::after {
  background-image: url(../img/kv/kv_keyword.jpg);
}

.bgttl-faq::after {
  background-image: url(../img/kv/kv_faq.jpg);
}

.bgttl-dl::after {
  background-image: url(../img/kv/kv_dl.jpg);
}

.bgttl-subsidy-dl::after {
  background-image: url(../img/kv/kv_subsidy-dl.jpg);
}

.bgttl-opinion::after {
  background-image: url(../img/kv/kv_opinion.jpg);
}

.anc-inn {
  display: flex;
  flex-wrap: wrap;
  margin-left: -1.5em;
  margin-right: -1.5em;
}
@media (max-width: 690px) {
  .anc-inn {
    margin-left: 0;
    margin-right: 0;
  }
}
.anc-inn .l-col {
  padding-left: 1.5em;
  padding-right: 1.5em;
}
@media (max-width: 840px) {
  .anc-inn .l-col {
    width: 50% !important;
    padding-left: 0.5em;
    padding-right: 0.5em;
  }
}
.anc-inn .l-col .btn-uline {
  justify-content: flex-start;
  width: 100%;
  text-align: left;
}
.anc-inn .l-col .btn-uline .anc-cir {
  display: flex;
  width: 100%;
}
.anc-inn .l-col .btn-uline .anc-cir::before {
  right: 0;
}
.anc-inn .l-col .btn-uline .anc-cir::after {
  transform: rotate(135deg);
  top: -2px;
  right: 7px;
}

.sec-page-intro {
  padding-top: 8em;
}
@media (max-width: 960px) {
  .sec-page-intro {
    padding-top: 6em;
  }
}
@media (max-width: 840px) {
  .sec-page-intro {
    padding-top: 5em;
  }
}
@media (max-width: 690px) {
  .sec-page-intro {
    padding-top: 4em;
  }
}
.sec-page-intro .content {
  position: relative;
}
@media (max-width: 690px) {
  .sec-page-intro .l-row .l-col {
    margin-bottom: 0;
  }
}
.sec-page-intro .ttl {
  font-size: 1.7em;
  margin-bottom: 1.7em;
}
@media (max-width: 690px) {
  .sec-page-intro .ttl {
    font-size: 1.3em;
  }
}

.ttl-cnt {
  font-size: 1.7em;
  margin-bottom: 2.2em;
  text-align: center;
}
@media (max-width: 690px) {
  .ttl-cnt {
    font-size: 1.3em;
  }
}
.ttl-cnt span {
  position: relative;
  display: inherit;
}
.ttl-cnt span::before {
  content: "";
  height: 3px;
  width: 1.3em;
  background-color: #d92027;
  position: absolute;
  margin: auto;
  left: 0;
  right: 0;
  bottom: -1em;
  border-radius: 2px;
}

.ttl-info,
.lower-sct-ttl {
  font-size: 1.7em;
  margin-bottom: 2.9em;
  text-align: left;
  position: relative;
}
@media (max-width: 690px) {
  .ttl-info,
  .lower-sct-ttl {
    font-size: 1.3em;
    margin-bottom: 2.2em;
  }
}
.ttl-info::before,
.lower-sct-ttl::before {
  content: "";
  width: 2em;
  height: 100%;
  height: 3px;
  background: #d92027;
  position: absolute;
  left: 0;
  bottom: -1em;
}
.ttl-info::after,
.lower-sct-ttl::after {
  content: "";
  width: 5px;
  height: 5px;
  background: #d92027;
  border-radius: 3px;
  position: absolute;
  left: calc(2em + 5px);
  bottom: calc((1em + 1px) * -1);
}

.p-career .ttl-info::before,
.p-career .lower-sct-ttl::before {
  background: #0095E6;
}
.p-career .ttl-info::after,
.p-career .lower-sct-ttl::after {
  background: #0095E6;
}

.ttl-info {
  margin-bottom: 2.2em;
}

[class^=corner-] {
  display: block;
  width: 1em;
  height: 1em;
  position: absolute;
  overflow: hidden;
}
[class^=corner-]::before {
  display: block;
  content: "";
  width: 200%;
  height: 200%;
  position: absolute;
  top: 0px;
  left: 0px;
  background: transparent;
  border-radius: 12%;
  box-shadow: -1em 1em 0 0 red;
  transform: translate(0, -50%);
}

.bg-ttl {
  position: relative;
}
.bg-ttl .corner-lt {
  left: 0;
  top: -1em;
}
.bg-ttl .corner-lt::before {
  box-shadow: -1em 1em 0 0 #fff;
}
.bg-ttl .corner-rb {
  right: -1em;
  bottom: 0;
}
.bg-ttl .corner-rb::before {
  box-shadow: -1em 1em 0 0 #fff;
}

.sec-program .wrap-image {
  position: relative;
}
.sec-program .bg-ttl {
  background-color: #fff;
  width: -moz-fit-content;
  width: fit-content;
  padding: 2.2em 2.9em 0 0;
  border-radius: 0 0.2em 0 0;
  position: absolute;
  bottom: 0;
  left: 0;
}
.sec-program .bg-ttl .ttl-course {
  margin-bottom: 0;
}

.sec-category .sct-ttl {
  margin-bottom: 1em;
}
.sec-category .l-row {
  margin-right: -3em;
  margin-left: -3em;
}
.sec-category .l-row .l-col {
  padding-left: 3em;
  padding-right: 3em;
}
.sec-category ._inner {
  position: relative;
}
.sec-category .wrap-image {
  position: relative;
  margin-bottom: 3em;
}
.sec-category .wrap-image::before {
  height: 100%;
  aspect-ratio: 1/1;
  background-color: #F7F8FA;
  background-color: #f1f0f0;
  border-radius: 0.5em;
  position: absolute;
  bottom: -4.8em;
  right: 0;
  z-index: -1;
}
.sec-category .wrap-image img {
  width: 100%;
  border-radius: 0.2em;
  aspect-ratio: 8/5;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.sec-category .bg-ttl {
  background-color: #fff;
  padding: 2.9em 2px 0;
  width: 61.5384615385%;
  border-radius: 0 1.3em 0 0;
  position: absolute;
  margin: 0 auto;
  left: 0;
  bottom: 0;
}
.sec-category .subttl {
  margin-bottom: 0;
}
.sec-category .subttl ._min {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  width: 7em;
  height: 7em;
  background-color: #000;
  color: #fff;
  border-radius: 50%;
  font-size: 0.9rem;
  line-height: 1.3;
  font-weight: 500;
  font-weight: 700;
  position: absolute;
  bottom: 3em;
  left: -1.3em;
  z-index: 0;
}
@media (max-width: 690px) {
  .sec-category .subttl ._min {
    width: 6em;
    height: 6em;
    left: 0;
  }
}
.sec-category .subttl ._min ._mk {
  position: relative;
}
.sec-category ._advanced .subttl {
  margin-bottom: 0;
}
.sec-category ._basic ._min {
  background-color: #d92027;
}
.sec-category ._advanced ._min {
  background-color: #0046B0;
}

.home .sec-category {
  padding-bottom: 0;
}
.home .sec-category .l-tx-scl {
  margin-top: 1em;
}
@media (max-width: 690px) {
  .home .sec-category .l-tx-scl {
    margin-top: 0;
  }
}

.ul-btn-faq .l-col {
  margin-bottom: 2em;
}
.ul-btn-faq a {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  background-color: #f2f2f2;
  height: 6em;
  padding-left: 5em;
  position: relative;
}
.ul-btn-faq a::before {
  content: "";
  width: 0.5em;
  height: 0.5em;
  background-color: #000;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  right: 2.2em;
}
.ul-btn-faq a span {
  position: relative;
}
.ul-btn-faq a span::before, .ul-btn-faq a span::after {
  content: "";
  width: 1.7em;
  height: 1.7em;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  left: -3em;
}
.ul-btn-faq a span::before {
  background-color: #FFBF51;
  border-radius: 50%;
}
.ul-btn-faq a span::after {
  content: "Q";
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  line-height: 1;
  color: #fff;
}

[class^=l-neg-] {
  position: relative;
}
[class^=l-neg-] ._image ._inner img {
  width: 100%;
  height: 480px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
@media (max-width: 1180px) {
  [class^=l-neg-] ._image ._inner img {
    height: 28vw;
  }
}
@media (max-width: 690px) {
  [class^=l-neg-] ._image ._inner img {
    height: 40vw;
  }
}
[class^=l-neg-] ._text {
  display: flex;
  align-items: center;
}
@media (max-width: 690px) {
  [class^=l-neg-] ._text {
    margin-bottom: 0;
  }
}
@media (max-width: 1380px) {
  [class^=l-neg-] ._text ._inner .btn-arw {
    width: 50%;
  }
}

.l-neg-mr ._image ._inner {
  margin-right: calc((100vw - 100%) / 2 * -1);
}
@media (max-width: 690px) {
  .l-neg-mr ._image ._inner {
    margin-right: 0;
  }
}
.l-neg-mr ._image ._inner img {
  border-radius: 0.5em 0 0 0.5em;
}
@media (max-width: 690px) {
  .l-neg-mr ._image ._inner img {
    border-radius: 0.25em;
  }
}

.l-neg-ml ._image ._inner {
  margin-left: calc((100vw - 100%) / 2 * -1);
}
@media (max-width: 690px) {
  .l-neg-ml ._image ._inner {
    margin-left: 0;
  }
}
.l-neg-ml ._image ._inner img {
  border-radius: 0 0.5em 0.5em 0;
}
@media (max-width: 690px) {
  .l-neg-ml ._image ._inner img {
    border-radius: 0.25em;
  }
}

.sec-howto .btn-line {
  justify-content: flex-start;
}
.sec-howto .btn-line a {
  margin-right: 1em;
}

.i-step {
  position: relative;
  font-weight: 700;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
.i-step ._num {
  font-size: 2.9em;
}
@media (max-width: 690px) {
  .i-step ._num {
    font-size: 1.8em;
  }
}
.i-step ._min {
  font-size: 0.7em;
  line-height: 1;
  background-color: #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: -1.6em;
}
@media (max-width: 690px) {
  .i-step ._min {
    top: -5px;
    transform: translateY(0);
    left: 2px;
  }
}

.l-flow {
  padding-top: 0em;
}
.l-flow._subsidy {
  padding-top: 2em;
}

.blk-flow-anc {
  margin-bottom: 6em;
}
@media (max-width: 840px) {
  .blk-flow-anc {
    margin-bottom: 3em;
  }
}
.blk-flow-anc .ul-flow {
  display: flex;
  justify-content: center;
}
@media (max-width: 840px) {
  .blk-flow-anc .ul-flow {
    flex-wrap: wrap;
    width: 80%;
    margin: 0 auto;
  }
}
@media (max-width: 690px) {
  .blk-flow-anc .ul-flow {
    flex-wrap: wrap;
    width: 96%;
  }
}
.blk-flow-anc .ul-flow li {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 25%;
  height: 4.8em;
  background-color: #d92027;
  color: #fff;
  padding: 0 1.3em 0 1.7em;
  clip-path: polygon(90% 0, 100% 50%, 90% 100%, 0 100%, 0 0);
}
@media (max-width: 840px) {
  .blk-flow-anc .ul-flow li {
    width: 50%;
    margin-bottom: 1em;
  }
}
@media (max-width: 690px) {
  .blk-flow-anc .ul-flow li {
    padding: 0 1.5em 0 1em;
    line-height: 1.4;
  }
}
.blk-flow-anc .ttl-step {
  color: #fff;
}
@media (max-width: 690px) {
  .blk-flow-anc .ttl-step {
    line-height: 1.4;
  }
}
.blk-flow-anc .i-step {
  margin: 0 1em 0 0;
}
@media (max-width: 690px) {
  .blk-flow-anc .i-step {
    margin-right: 0.5em;
  }
}
.blk-flow-anc .i-step ._min {
  background: #d92027;
}

._subsidy .blk-flow-anc {
  margin-bottom: 6em;
}
._subsidy .blk-flow-anc .ul-flow {
  display: flex;
}
._subsidy .blk-flow-anc .ul-flow li {
  display: block;
  height: auto;
  background: none;
  color: inherit;
  padding: 0;
  clip-path: none;
  width: 16.6666666667%;
  position: relative;
}
._subsidy .blk-flow-anc .ttl-step {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  height: 4.8em;
  background-color: #d92027;
  color: #fff;
  padding: 0 0.5em 0 1.7em;
  clip-path: polygon(90% 0, 100% 50%, 90% 100%, 0 100%, 0 0);
}
._subsidy .blk-flow-anc .i-step {
  margin: 0;
  color: #d92027;
  position: absolute;
  left: 0;
  top: -80%;
}
._subsidy .blk-flow-anc .i-step ._min {
  background: #fff;
}

.ul-flow._twoline {
  flex-wrap: wrap;
  width: 975px;
  max-width: 100%;
  margin: 0 auto;
}
.ul-flow._twoline li {
  width: 33.33%;
  margin-bottom: 1em;
}
@media (max-width: 520px) {
  .ul-flow._twoline li {
    width: 50%;
  }
}

.blk-flow {
  padding: 4em;
  background-color: #F7F8FA;
}
@media (max-width: 1180px) {
  .blk-flow {
    padding: 3em;
  }
}
@media (max-width: 690px) {
  .blk-flow {
    padding: 1.3em;
  }
}
.blk-flow .dl-flow {
  background-color: #fff;
  margin-bottom: 4em;
  display: flex;
  position: relative;
}
.blk-flow .dl-flow::before {
  content: "";
  width: 5em;
  height: 1.5em;
  background-color: #FFBF51;
  clip-path: polygon(100% 0, 0 0, 50% 100%);
  position: absolute;
  margin: auto;
  left: 0;
  right: 0;
  bottom: -1.5em;
}
.blk-flow .dl-flow:last-of-type {
  margin-bottom: 0;
}
.blk-flow .dl-flow:last-of-type::before {
  content: none;
}
.blk-flow .dl-flow dt {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 15em;
  height: 15em;
  position: relative;
}
@media (max-width: 1180px) {
  .blk-flow .dl-flow dt {
    width: 13em;
    height: 13em;
  }
}
@media (max-width: 840px) {
  .blk-flow .dl-flow dt {
    width: 11em;
  }
}
@media (max-width: 690px) {
  .blk-flow .dl-flow dt {
    width: 4em;
    height: 4em;
    position: absolute;
    top: -2.3em;
    left: 1.2em;
  }
}
.blk-flow .dl-flow dt::before {
  content: "";
  width: 1px;
  height: 77%;
  background-color: #d0d0d0;
  position: absolute;
  margin: auto;
  right: 0;
  top: 0;
  bottom: 0;
}
@media (max-width: 690px) {
  .blk-flow .dl-flow dt::before {
    content: none;
  }
}
.blk-flow .dl-flow dt .i-step {
  color: #d92027;
}
.blk-flow .dl-flow dt .i-step ._min {
  background: #fff;
}
@media (max-width: 690px) {
  .blk-flow .dl-flow dt .i-step ._min {
    top: 10px;
  }
}
.blk-flow .dl-flow dd {
  width: calc(100% - 15em);
  padding-left: 15.3846153846%;
  padding-right: 7.6923076923%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
}
@media (max-width: 1180px) {
  .blk-flow .dl-flow dd {
    width: calc(100% - 13em);
  }
}
@media (max-width: 840px) {
  .blk-flow .dl-flow dd {
    width: calc(100% - 11em);
    padding-right: 5%;
  }
}
@media (max-width: 690px) {
  .blk-flow .dl-flow dd {
    width: 100%;
    padding-top: 1.7em;
    padding-bottom: 1.7em;
    padding-left: 18%;
  }
}
@media (max-width: 520px) {
  .blk-flow .dl-flow dd {
    padding: 1.5em;
  }
}
.blk-flow .dl-flow dd .subttl {
  font-size: 1.3em;
}
.blk-flow .dl-flow dd .anc-url {
  margin-right: 0.25em;
  padding-right: 2.2em;
  text-decoration: underline;
  color: #d92027;
}
.blk-flow .dl-flow dd .anc-url::before, .blk-flow .dl-flow dd .anc-url::after {
  right: 0;
}
.blk-flow .dl-flow dd .anc-url:hover {
  background: none;
  color: #0095E6;
}
.blk-flow .dl-flow .i-step ._num {
  font-size: 2.9em;
}
.blk-flow [class^=i-space-] {
  height: 38.4615384615%;
  aspect-ratio: 1/1;
  position: absolute;
  margin: auto;
  left: 3em;
  top: 0;
  bottom: 0;
}
@media (max-width: 840px) {
  .blk-flow [class^=i-space-] {
    left: 2em;
  }
}
@media (max-width: 520px) {
  .blk-flow [class^=i-space-] {
    height: 3.7em;
    top: -2em;
    bottom: auto;
    left: 0;
    right: 0;
  }
}
.blk-flow [class^=i-space-]::before {
  content: "";
  height: 100%;
  width: 100%;
  background-color: #F7F8FA;
  border-radius: 50%;
  position: absolute;
  margin: auto;
  top: 0;
  left: 0;
}
@media (max-width: 690px) {
  .blk-flow [class^=i-space-]::before {
    width: 3.7em;
    height: 3.7em;
  }
}
.blk-flow [class^=i-space-]::after {
  content: "";
  width: 3.6em;
  height: 3.6em;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  margin: auto;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}
@media (max-width: 690px) {
  .blk-flow [class^=i-space-]::after {
    width: 2.9em;
    height: 2.9em;
  }
}
.blk-flow .i-space-01::after {
  background-image: url(../img/icon/ill-apply-01.svg);
}
.blk-flow .i-space-02::after {
  background-image: url(../img/icon/ill-apply-02.svg);
}
.blk-flow .i-space-03::after {
  background-image: url(../img/icon/ill-apply-03.svg);
}
.blk-flow .i-space-04::after {
  background-image: url(../img/icon/ill-apply-04.svg);
}
.blk-flow._subsidy .i-space-03::after {
  background-image: url(../img/icon/ill-step-03.svg);
}
.blk-flow._subsidy .i-space-05::after {
  background-image: url(../img/icon/ill-step-05.svg);
}
.blk-flow._subsidy .i-space-06::after {
  background-image: url(../img/icon/ill-step-06.svg);
}

.sec-dl-bnr {
  position: relative;
  background: rgba(0, 149, 230, 0.05);
  background: #faf9f9;
}
.sec-dl-bnr a {
  display: block;
  width: 76.9230769231%;
  aspect-ratio: 33/10;
  margin: auto;
  border: 5px solid #0095E6;
  background: #fff;
  border-radius: 0.5em;
  position: relative;
}
@media (max-width: 690px) {
  .sec-dl-bnr a {
    aspect-ratio: auto;
    width: 96%;
  }
}
.sec-dl-bnr a::before {
  content: "";
  height: 100%;
  background-color: #d92027;
  position: absolute;
  left: 0;
  top: 0;
}
.sec-dl-bnr a .anc-cir {
  width: 100%;
  height: 100%;
  line-height: normal;
  padding: 0;
}
.sec-dl-bnr a .anc-cir::before {
  width: 32px;
  height: 32px;
  top: auto;
  bottom: 2.2em;
  right: 2.2em;
  border-color: #0095E6;
}
.sec-dl-bnr a .anc-cir::after {
  content: "";
  width: 9px;
  height: 9px;
  border: 1px solid;
  border-color: transparent #0095E6 #0095E6 transparent;
  top: auto;
  bottom: calc(2.2em + 13px);
  right: calc(2.2em + 11px);
}
.sec-dl-bnr a:hover {
  opacity: 1;
}
.sec-dl-bnr a:hover .anc-cir::before {
  scale: 1.3;
  border: 1px solid #0095E6;
  background-color: #fff;
}
.sec-dl-bnr a:hover .anc-cir::after {
  scale: 1.3;
  opacity: 1;
  bottom: calc(2.2em + 14px);
  right: calc(2.2em + 11px);
}
.sec-dl-bnr a:hover img {
  opacity: 1;
  scale: 1.06;
}
.sec-dl-bnr .blk-dl {
  padding: 0 4em;
  width: 100%;
  border-radius: 0.2em;
}
@media (max-width: 690px) {
  .sec-dl-bnr .blk-dl {
    padding: 2em;
  }
}
.sec-dl-bnr .blk-dl .l-row {
  align-items: center;
  height: 100%;
}
.sec-dl-bnr .blk-dl .l-row .l-col {
  margin-bottom: 0;
}
.sec-dl-bnr .blk-dl .en-ttl {
  color: #0095E6;
}
.sec-dl-bnr .blk-dl .sct-ttl {
  color: #0095E6;
}
.sec-dl-bnr .blk-dl .tx-lead {
  color: #0095E6;
  margin-bottom: 0;
}
.sec-dl-bnr .blk-dl ._image {
  position: relative;
  text-align: center;
}
.sec-dl-bnr .blk-dl ._image ._inner {
  width: 85%;
  position: absolute;
  margin: auto;
  top: -11em;
}
@media (max-width: 690px) {
  .sec-dl-bnr .blk-dl ._image ._inner {
    position: relative;
    top: 0;
  }
}
.sec-dl-bnr .blk-dl ._image ._inner img {
  transition: all 0.2s ease-in-out;
}

.blk-contact {
  text-align: center;
}
.blk-contact ._inner {
  text-align: left;
  width: 84.6153846154%;
  max-width: 90%;
  margin: 0 auto;
  background-image: url(../img/bg/bg-guidance.jpg);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  padding: 6em;
  border-radius: 1.3em;
}
.blk-contact .txt {
  margin-bottom: 2em;
}
.blk-contact .dl-blk-contact {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 2em;
}
.blk-contact .dl-blk-contact dt {
  width: 23%;
  display: flex;
  align-items: center;
  font-size: 1.3em;
}
.blk-contact .dl-blk-contact dd {
  width: 77%;
  display: flex;
  align-items: center;
}
.blk-contact .dl-blk-contact dd .btn-line {
  justify-content: flex-start;
}
.blk-contact .dl-blk-contact dd .btn-line .btn:first-of-type {
  margin-right: 1.7em;
}

.pg__casestudy .sec-page-intro .l-row ._text {
  width: 35%;
}
@media (max-width: 840px) {
  .pg__casestudy .sec-page-intro .l-row ._text {
    width: 100%;
  }
}
.pg__casestudy .sec-page-intro .l-row ._link {
  width: 65%;
}
@media (max-width: 840px) {
  .pg__casestudy .sec-page-intro .l-row ._link {
    width: 90%;
    margin: 0 auto;
  }
}
@media (max-width: 690px) {
  .pg__casestudy .sec-page-intro .l-row ._link {
    width: 100%;
  }
}

.bg-case-company {
  padding: 4em;
  background-color: #F7F8FA;
}
@media (max-width: 960px) {
  .bg-case-company {
    padding: 3em;
  }
}
@media (max-width: 840px) {
  .bg-case-company {
    padding: 2em;
  }
}
@media (max-width: 690px) {
  .bg-case-company {
    padding: 1em;
  }
}
.bg-case-company ._inner img {
  width: 100%;
  aspect-ratio: 16/9;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}
.bg-case-company .subttl {
  font-size: 1.3em;
  margin: 2.9em 0 1.7em;
  padding: 0 0 0 1.7em;
  line-height: 1.7;
  position: relative;
}
@media (max-width: 690px) {
  .bg-case-company .subttl {
    margin: 1.7em 0 1.7em;
  }
}
.bg-case-company .subttl::before {
  content: "“";
  color: #2DC560;
  font-size: 2em;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;
  position: absolute;
  left: 0;
  top: -0.5em;
}
.bg-case-company .tx-line {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  padding-left: 2.2em;
}
.bg-case-company .tx-line a {
  margin-right: 1.3em;
  text-decoration: underline;
}

.pg__casestudy .sec-voice .l-row {
  justify-content: center;
}
.pg__casestudy .sec-voice .l-col {
  margin-bottom: 4.8em;
}

.sec-voice ._inner.i-man01::before {
  background-image: url(../img/case/i-man01.svg);
}
.sec-voice ._inner.i-man02::before {
  background-image: url(../img/case/i-man02.svg);
}
.sec-voice ._inner.i-man03::before {
  background-image: url(../img/case/i-man03.svg);
}
.sec-voice ._inner.i-man04::before {
  background-image: url(../img/case/i-man04.svg);
}
.sec-voice ._inner.i-man05::before {
  background-image: url(../img/case/i-man05.svg);
}
.sec-voice ._inner.i-man06::before {
  background-image: url(../img/case/i-man06.svg);
}
.sec-voice ._inner.i-man07::before {
  background-image: url(../img/case/i-man07.svg);
}
.sec-voice ._inner.i-man08::before {
  background-image: url(../img/case/i-man08.svg);
}
.sec-voice ._inner.i-woman01::before {
  background-image: url(../img/case/i-woman01.svg);
}
.sec-voice ._inner.i-woman02::before {
  background-image: url(../img/case/i-woman02.svg);
}
.sec-voice ._inner.i-woman03::before {
  background-image: url(../img/case/i-woman03.svg);
}
.sec-voice ._inner.i-woman04::before {
  background-image: url(../img/case/i-woman04.svg);
}
.sec-voice ._inner.i-woman05::before {
  background-image: url(../img/case/i-woman05.svg);
}
.sec-voice ._inner.i-woman06::before {
  background-image: url(../img/case/i-woman06.svg);
}
.sec-voice ._inner.i-woman07::before {
  background-image: url(../img/case/i-woman07.svg);
}
.sec-voice ._inner.i-woman08::before {
  background-image: url(../img/case/i-woman08.svg);
}

.wrap-interview {
  width: 1100px;
  max-width: 100%;
  margin: 0 auto 5em;
}
.wrap-interview .l-msg {
  align-items: center;
  position: relative;
}
.wrap-interview .l-msg .txt {
  text-align: right;
  padding: 0.5em 2px;
}
@media (max-width: 690px) {
  .wrap-interview .l-msg .txt {
    padding: 0 1em;
    margin-bottom: 1.3em;
  }
}
.wrap-interview .l-ttl {
  padding: 0 30px;
  width: 54%;
}
@media (max-width: 690px) {
  .wrap-interview .l-ttl {
    width: 100%;
    padding: 2.2em 1em 0;
  }
}
.wrap-interview .l-ttl .tx-label {
  position: absolute;
  left: 2em;
  top: 0;
  color: #726e69;
}
@media (max-width: 690px) {
  .wrap-interview .l-ttl .tx-label {
    left: 1em;
  }
}
.wrap-interview .l-ttl .ttl {
  line-height: 1.5;
}
@media (max-width: 690px) {
  .wrap-interview .l-ttl .ttl {
    margin-bottom: 0.5em;
  }
}
.wrap-interview .l-photo {
  padding: 0 30px;
  width: 46%;
}
@media (max-width: 690px) {
  .wrap-interview .l-photo {
    padding: 0 1em;
    width: 100%;
  }
}
.wrap-interview .l-photo img {
  width: 100%;
  aspect-ratio: 8/5;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}
.wrap-interview ._inner {
  background-color: #fff;
  padding: 2em 0;
}
.wrap-interview ._inner:first-of-type {
  padding-top: 4em;
}
.wrap-interview ._inner:last-of-type {
  padding-bottom: 4em;
}
.wrap-interview .ttl-heading {
  font-size: 1.3em;
  margin-bottom: 1.7em;
  color: #3cb665;
  background-color: #F7F8FA;
  font-weight: 500;
  padding: 1em;
}
@media (max-width: 690px) {
  .wrap-interview .ttl-heading {
    line-height: 1.5;
  }
}
.wrap-interview .ttl-interview {
  font-size: 1.3em;
  margin-bottom: 1.3em;
  position: relative;
  padding-left: 2.2em;
  font-size: 1.3em;
  font-weight: 700;
}
.wrap-interview .ttl-interview::before {
  content: "";
  width: 1.3em;
  height: 1px;
  background-color: #d92027;
  position: absolute;
  top: 47%;
  left: 0.37em;
}
.wrap-interview .txt {
  padding: 0 2.9em;
}

.movie-list-wrapper .l-row .l-col {
  margin-bottom: 4em;
}
@media (max-width: 690px) {
  .movie-list-wrapper .l-row .l-col {
    margin-bottom: 2.2em;
  }
}
.movie-list-wrapper .ytttl {
  font-size: 1.125em;
  line-height: 1.4;
  margin-bottom: 0.5em;
}
.movie-list-wrapper .txt {
  font-size: 0.9em;
  color: rgb(58.5, 58.5, 58.5);
}
@media (max-width: 690px) {
  .movie-list-wrapper .txt {
    font-size: 0.8em;
  }
}
@media (max-width: 690px) {
  .movie-list-wrapper ._inner {
    display: flex;
  }
  .movie-list-wrapper ._inner .wrap-image {
    width: 23%;
  }
  .movie-list-wrapper ._inner .tx-yt {
    width: 77%;
    padding: 0 0 0 1em;
  }
}

.sec-instructor .l-thumb .txt {
  font-weight: 700;
}
.sec-instructor .l-thumb .tx-name {
  font-weight: 700;
  font-size: 1.3em;
  margin-bottom: 1.7em;
}
.sec-instructor .subttl {
  line-height: 1.4;
  margin-bottom: 2.2em;
}
.sec-instructor .tx-lead {
  padding-bottom: 2.2em;
  margin-bottom: 2.2em;
}
.sec-instructor .dl-introduce {
  position: relative;
  margin-bottom: 3em;
}
.sec-instructor .dl-introduce dt {
  margin-bottom: 1.3em;
}
.sec-instructor .dl-introduce dt span {
  position: relative;
  color: #132939;
  padding-left: 1.7em;
  font-size: 1.125em;
}
.sec-instructor .dl-introduce dt span::before {
  content: "";
  width: 1em;
  height: 1em;
  background-color: #d92027;
  border-radius: 50%;
  position: absolute;
  margin: auto;
  left: 0;
  top: 0;
  bottom: 0;
}
.sec-instructor .dl-introduce dd {
  margin-bottom: 2.2em;
  padding: 2.9em 3.7em;
  background-color: #F7F8FA;
  border-radius: 3px;
}
@media (max-width: 690px) {
  .sec-instructor .dl-introduce dd {
    padding: 2.2em 2.9em;
  }
}
@media (max-width: 690px) {
  .sec-instructor .dl-introduce dd {
    padding: 1.7em;
  }
}
.sec-instructor .dl-introduce dd li {
  padding-left: 1em;
  position: relative;
  margin-bottom: 0.3em;
}
.sec-instructor .dl-introduce dd li::before {
  content: "";
  width: 0.6em;
  height: 2px;
  background-color: #d92027;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  left: 0;
}

.sec-od {
  background-color: #F7F8FA;
}
.sec-od .lower-sct-ttl {
  line-height: 1.4;
}
.sec-od .l-row {
  margin-bottom: 5em;
}
@media (max-width: 690px) {
  .sec-od .l-row {
    margin-bottom: 0;
  }
}
.sec-od .l-row ._text {
  width: 70%;
}
@media (max-width: 690px) {
  .sec-od .l-row ._text {
    width: 100%;
  }
}
.sec-od .l-row ._image {
  width: 30%;
}
@media (max-width: 690px) {
  .sec-od .l-row ._image {
    width: 100%;
  }
}
.sec-od .l-row._od .lower-sct-ttl {
  text-align: right;
}
@media (max-width: 690px) {
  .sec-od .l-row._od .lower-sct-ttl {
    text-align: left;
  }
}
.sec-od .l-row._od .lower-sct-ttl::before {
  left: auto;
  right: 0;
}
@media (max-width: 690px) {
  .sec-od .l-row._od .lower-sct-ttl::before {
    left: 0;
    right: auto;
  }
}
.sec-od .l-row._od .lower-sct-ttl::after {
  left: auto;
  right: calc(2em + 5px);
  bottom: calc((1em + 1px) * -1);
}
@media (max-width: 690px) {
  .sec-od .l-row._od .lower-sct-ttl::after {
    right: auto;
    left: calc(2em + 5px);
    bottom: calc((1em + 1px) * -1);
  }
}

.l-cnv {
  background-color: #aaa;
  color: #fff;
  text-align: center;
  padding: 3em 0;
}
.l-cnv .l-col {
  margin-bottom: 0;
  position: relative;
  padding: 2em 0;
}
.l-cnv .l-col:nth-of-type(1)::before {
  content: "";
  width: 1px;
  height: 100%;
  background-color: #fff;
  position: absolute;
  margin: auto;
  right: 0;
  top: 0;
  bottom: 0;
}
.l-cnv .l-col .subttl {
  font-size: 1.7em;
  margin-bottom: 1.7em;
}
.l-cnv .l-col .btn {
  margin: 0 auto;
}

.s-upside {
  padding-top: 12em;
}
@media (max-width: 840px) {
  .s-upside {
    padding-top: 20vw;
  }
}

.l-lead {
  margin-bottom: 3em;
  text-align: center;
}
.l-lead .ttl {
  line-height: 1.6;
}

.inn {
  max-width: 100%;
  margin: 0 auto;
  padding: 5em;
  background-color: #fff;
  line-height: 2;
}
@media (max-width: 840px) {
  .inn {
    padding: 3em;
  }
}
@media (max-width: 690px) {
  .inn {
    padding: 2em;
  }
}
@media (max-width: 520px) {
  .inn {
    padding: 1.3em;
  }
}

._concept .ttl-cnt {
  font-size: 3.7em;
  font-family: "Times New Roman", Times, serif;
  font-weight: normal;
  margin-bottom: 1.3em;
}
@media (max-width: 690px) {
  ._concept .ttl-cnt {
    font-size: 2.9em;
  }
}
._concept .subcopy {
  margin-bottom: 5em;
}

.wrap-tb {
  margin-bottom: 5em;
}
.wrap-tb .tb {
  width: 990px;
  max-width: calc(100% - 3em);
  margin: 0 auto;
  background-color: #fff;
}
@media (max-width: 690px) {
  .wrap-tb .tb {
    max-width: 100%;
  }
}
.wrap-tb .tb th, .wrap-tb .tb td {
  padding: 1.7em 1em;
  border-bottom: 1px solid #d0d0d0;
}
@media (max-width: 690px) {
  .wrap-tb .tb th, .wrap-tb .tb td {
    display: block;
    width: 100%;
    padding: 1em 1.3em;
    border: none;
  }
}
.wrap-tb .tb th {
  padding-left: 1px;
  font-weight: 500;
  width: 23.0769230769%;
  position: relative;
}
@media (max-width: 690px) {
  .wrap-tb .tb th {
    width: 100%;
    padding-left: 1.3em;
    padding-bottom: 0.25em;
  }
}
.wrap-tb .tb th::before {
  content: "";
  width: 100%;
  height: 1px;
  background-color: #726e69;
  position: absolute;
  left: 0;
  bottom: -1px;
}
@media (max-width: 690px) {
  .wrap-tb .tb th::before {
    width: 5em;
    background-color: #d92027;
    left: 1.3em;
  }
}
.wrap-tb .tb td {
  border-color: #d0d0d0;
}

.wrap-cnt {
  margin-bottom: 5em;
}
.wrap-cnt ._inner {
  width: 990px;
  max-width: calc(100% - 3em);
  margin: 0 auto;
}

.wrap-arc .l-col {
  margin-top: 2em;
  margin-bottom: 2em;
}
.wrap-arc .l-col-inner {
  position: relative;
  z-index: 0;
}
.wrap-arc .l-col-inner::before {
  content: "";
  width: 0;
  height: auto;
  aspect-ratio: 1/1;
  background-color: rgba(255, 255, 255, 0.8);
  position: absolute;
  left: -2em;
  top: -2em;
  z-index: -1;
  transition: all 0.5s ease-in-out;
}
@media (max-width: 960px) {
  .wrap-arc .l-col-inner::before {
    left: 1em;
    top: -1em;
  }
}
.wrap-arc .l-col-inner.is-active::before {
  width: 28%;
}
.wrap-arc .l-col-inner .subttl {
  font-size: 1.3em;
  margin-bottom: 1.3em;
  color: #d92027;
}

.bg-benefit {
  background-color: #fff;
  padding: 3em;
}
@media (max-width: 840px) {
  .bg-benefit {
    padding: 2em;
  }
}
@media (max-width: 520px) {
  .bg-benefit {
    padding: 1em;
  }
}
.bg-benefit .l-row {
  margin: 0 -1.5em;
}
.bg-benefit .l-col {
  padding-left: 1.5em;
  padding-right: 1.5em;
}
.bg-benefit .subttl {
  font-size: 1.1em;
  color: #d92027;
  padding: 1em 1em;
  background-color: rgba(217, 32, 39, 0.1);
  margin-bottom: 1em;
}

.li-sty__bar li {
  position: relative;
  padding-left: 1.5em;
}
.li-sty__bar li::before {
  content: "";
  width: 0.5em;
  height: 2px;
  background-color: #d92027;
  position: absolute;
  margin: auto;
  left: 0.5em;
  top: 0;
  bottom: 0;
}

.l-form {
  padding: 8em 0 9.5em;
}
@media (max-width: 690px) {
  .l-form {
    padding-bottom: 14vw;
  }
}
.l-form .sec-ttl {
  margin-bottom: 7.25em;
}
@media (max-width: 690px) {
  .l-form .sec-ttl {
    margin-bottom: 12vw;
  }
}
.l-form .sec-ttl .ttl {
  font-size: 2.7em;
}
@media (max-width: 520px) {
  .l-form .sec-ttl .ttl {
    font-size: 6.8vw;
  }
}
.l-form-inner {
  background-color: rgb(255, 255, 255);
  margin: 0 auto;
  padding: 4.5em 6.15em 6.5em;
  border-radius: 1.8em;
}
@media (max-width: 1180px) {
  .l-form-inner {
    padding: 5vw 8vw;
  }
}
@media (max-width: 690px) {
  .l-form-inner {
    padding: 6vw 5vw;
    border-radius: 1em;
  }
}
.l-form-inner a {
  text-decoration: underline;
}
.l-form-inner a:hover {
  text-decoration: none;
}
.l-form .dl-form {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 2.75em;
}
@media (max-width: 690px) {
  .l-form .dl-form {
    margin-bottom: 1.3em;
  }
}
.l-form .dl-form dt {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  line-height: 1;
  line-height: 1.4;
  text-align: left;
  position: relative;
  width: 34.5%;
  justify-content: flex-start;
  padding-right: 3.5em;
}
@media (max-width: 690px) {
  .l-form .dl-form dt {
    width: 100%;
    height: auto;
    margin-bottom: 0;
  }
}
.l-form .dl-form dt.i-must::after {
  content: "必須";
  display: inline-block;
  font-size: 0.7em;
  background-color: #212121;
  color: #fff;
  border-radius: 3px;
  line-height: 1;
  padding: 0.5em 0.75em;
  position: absolute;
  margin: auto;
  right: 1em;
  top: 50%;
  transform: translateY(-50%);
}
@media (max-width: 690px) {
  .l-form .dl-form dt.i-must::after {
    font-size: 2vw;
    padding: 0.25em 0.5em;
    position: relative;
    margin: 0 0 0 1em;
    right: auto;
    top: auto;
    transform: none;
  }
}
.l-form .dl-form dt.dt-uper {
  align-items: flex-start;
}
.l-form .dl-form dt.dt-uper .tx-dt {
  transform: translateY(1.6em);
}
@media (max-width: 690px) {
  .l-form .dl-form dt.dt-uper .tx-dt {
    transform: none;
  }
}
.l-form .dl-form dd {
  width: 65%;
  padding-left: 0.5em;
  padding: 1em 0.5em;
}
.l-form .dl-form dd.h-area {
  height: auto;
}
@media (max-width: 690px) {
  .l-form .dl-form dd {
    width: 100%;
    margin-bottom: 0.5em;
    padding-left: 0;
    padding-right: 0;
  }
}
.l-form .dl-form dd input[type=text],
.l-form .dl-form dd input[type=tel],
.l-form .dl-form dd input[type=email],
.l-form .dl-form dd select,
.l-form .dl-form dd textarea {
  border: none;
  border-radius: 0.5em;
  background-color: #f7f7f7;
  height: 3.36em;
  padding: 0 1.3em;
}
.l-form .dl-form dd textarea {
  height: auto;
  padding: 1em 1.3em;
}
.l-form .dl-form dd select {
  -webkit-appearance: auto;
     -moz-appearance: auto;
          appearance: auto;
}
.l-form .dl-form dd input[type=text],
.l-form .dl-form dd input[type=tel],
.l-form .dl-form dd input[type=email],
.l-form .dl-form dd select.slc-course {
  width: 100%;
}
.l-form .dl-form dd .l-line {
  position: relative;
}
.l-form .dl-form dd select.slc-year {
  width: 8em;
  margin-right: 0.75em;
  text-align: center;
}
.l-form .dl-form dd select.slc-year + .error {
  position: absolute;
  left: 0;
}
.l-form .dl-form dd select.slc-month {
  width: 6em;
  text-align: center;
}
.l-form .dl-form dd select.slc-month + .error {
  position: absolute;
  left: 0;
}
.l-form .dl-form dd input[type=text].inp-tel {
  width: 8em;
  text-align: center;
}
@media (max-width: 690px) {
  .l-form .dl-form dd input[type=text].inp-tel {
    width: 6em;
  }
}
.l-form .dl-form dd input[type=text].rec-age {
  width: 5em;
  text-align: center;
}
@media (max-width: 690px) {
  .l-form .dl-form dd input[type=text].rec-age {
    width: 4em;
  }
}
.l-form .dl-form dd input[type=checkbox] {
  width: 1.8em;
  height: 1.8em;
  margin-right: 1em;
}
.l-form .dl-form dd .select-wrap {
  position: relative;
}
.l-form .dl-form dd .select-wrap::after {
  content: "";
  width: 0.6em;
  height: 0.6em;
  border: solid #ccc;
  border-width: 0 1px 1px 0;
  transform: rotate(45deg);
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  right: 1.3em;
}
.l-form .dl-form dd .select-wrap select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.l-form .dl-form dd textarea {
  height: 10em;
  margin: 0.5em 0;
}
.l-form .dl-form dd .mwform-checkbox-field {
  display: inline-block;
}
.l-form .dl-form dd .error {
  white-space: nowrap;
  letter-spacing: 0.06em;
  font-size: 0.9em;
}
.l-form .dl-form dd .tx-count {
  text-align: right;
}
.l-form .btn {
  width: 400px;
  max-width: 100%;
  margin: 2em auto 0;
  font-size: 1.125em;
  height: 2.9em;
}
@media (max-width: 840px) {
  .l-form .btn {
    width: 50vw;
  }
}
@media (max-width: 690px) {
  .l-form .btn {
    font-size: 3.7vw;
  }
}
.l-form .btn-back {
  width: 5em;
  background-color: #212121;
  color: #fff;
}
.l-form .wpcf7-list-item {
  margin: 0;
}
.l-form .wpcf7-list-item input[type=checkbox],
.l-form .wpcf7-list-item input[type=radio] {
  width: 1.3rem;
  height: 1.3rem;
}

.btn-line {
  display: flex;
  justify-content: center;
  text-align: center;
  margin-top: 2.2em;
}
.btn-line._p-confirm .btn {
  margin: 2em 0.5em 0;
}

.wpcf7 .btn-line {
  margin: 3em auto 0;
}

.mw_wp_form_confirm .dl-form dt {
  margin-bottom: 1.5em;
  opacity: 0.5;
}
@media (max-width: 690px) {
  .mw_wp_form_confirm .dl-form dt {
    margin-bottom: 0;
  }
}
.mw_wp_form_confirm .dl-form dd {
  margin-bottom: 1.5em;
}
@media (max-width: 690px) {
  .mw_wp_form_confirm .dl-form dd {
    padding-top: 0.5em;
  }
}
.mw_wp_form_confirm .btn-line {
  justify-content: space-evenly;
}
.mw_wp_form_confirm .btn-line .wrap-btn {
  width: 20%;
}
.mw_wp_form_confirm .btn-line .wrap-btn {
  width: 77%;
}
.mw_wp_form_confirm .btn-line .wrap-btn .btn {
  width: 100%;
}

@media (max-width: 690px) {
  .pg__contact .site-footer,
  .pg__contact-confirm .site-footer {
    margin-bottom: 0;
  }
}
.site-footer-inner {
  position: relative;
  background-color: rgba(238, 238, 238, 0.95);
  padding: 2.25em 0;
  color: #fff;
}
@media (max-width: 690px) {
  .site-footer-inner {
    padding: 1.25em 0 1em;
  }
}
.site-footer-inner .l-btn {
  display: flex;
  justify-content: space-between;
}
@media (max-width: 690px) {
  .site-footer-inner .l-btn {
    position: fixed;
    bottom: 0;
    right: 0;
    left: 0;
    padding: 0;
    margin: 0;
  }
}
.site-footer-inner .l-btn-blk {
  width: 48%;
  max-width: 336px;
}
@media (max-width: 960px) {
  .site-footer-inner .l-btn-blk {
    width: 47%;
  }
}
@media (max-width: 690px) {
  .site-footer-inner .l-btn-blk {
    width: 50%;
    max-width: none;
  }
}
@media (max-width: 690px) {
  .site-footer-inner .l-btn-blk.sa.sa--up_01, .site-footer-inner .l-btn-blk.sa.sa--up_02 {
    opacity: 1;
    transform: none;
  }
}
.site-footer-inner .l-btn-blk a {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  line-height: 1;
  color: #fff;
  font-size: 2.1em;
  font-weight: bold;
  height: 3.2em;
  border-radius: 0.8em;
  letter-spacing: normal;
}
@media (max-width: 960px) {
  .site-footer-inner .l-btn-blk a {
    font-size: 1.7em;
  }
}
@media (max-width: 840px) {
  .site-footer-inner .l-btn-blk a {
    font-size: 1.5em;
  }
}
@media (max-width: 690px) {
  .site-footer-inner .l-btn-blk a {
    font-size: 3.7vw;
    border-radius: 0;
  }
}
.site-footer-inner .l-btn-blk._contact a::before {
  background: linear-gradient(to right, #3b60e3, #48c2ef);
}
.site-footer-inner .l-btn-blk._contact a::after {
  background: linear-gradient(to right, #48c2ef, #3b60e3);
}
.site-footer-inner .l-row {
  justify-content: space-between;
}
.site-footer-inner .l-row .l-col {
  margin-bottom: 0;
}
.site-footer-inner .l-row .l-tel {
  width: 44%;
  padding-top: 1.5em;
}
@media (max-width: 960px) {
  .site-footer-inner .l-row .l-tel {
    width: 50%;
  }
}
@media (max-width: 690px) {
  .site-footer-inner .l-row .l-tel {
    width: 100%;
    padding-top: 0;
    text-align: center;
  }
}
.site-footer-inner .l-row .l-tel-num {
  width: 84%;
  margin-bottom: 0.3em;
}
@media (max-width: 690px) {
  .site-footer-inner .l-row .l-tel-num {
    width: 77%;
    margin-left: auto;
    margin-right: auto;
  }
}
.site-footer-inner .l-row .l-btn {
  width: 56%;
}
@media (max-width: 960px) {
  .site-footer-inner .l-row .l-btn {
    width: 50%;
  }
}
@media (max-width: 690px) {
  .site-footer-inner .l-row .l-btn {
    width: 100%;
    z-index: 1;
  }
}

.site-info {
  color: #dfdfdf;
}
.site-info .logo {
  margin-bottom: 1.7em;
}
.site-info .logo img {
  width: 190px;
}
.site-info .l-row {
  justify-content: space-between;
}
@media (max-width: 520px) {
  .site-info .l-row {
    margin-left: 0;
    margin-right: 0;
  }
}
@media (max-width: 520px) {
  .site-info .l-row .l-col {
    padding-left: 0;
    padding-right: 0;
  }
}
.site-info .l-row .site-info--company {
  width: 40%;
}
@media (max-width: 690px) {
  .site-info .l-row .site-info--company {
    width: 100%;
  }
}
.site-info .l-row .site-info--company a {
  color: #fff;
}
@media (max-width: 1180px) {
  .site-info .l-row .site-info--company .is-tab {
    display: block;
  }
}
.site-info .l-row .site-info--menu {
  width: 60%;
}
@media (max-width: 690px) {
  .site-info .l-row .site-info--menu {
    width: 100%;
    padding-top: 0;
  }
}
@media (max-width: 520px) {
  .site-info .l-row .site-info--menu {
    display: block;
    margin-bottom: 0;
  }
}
.site-info .l-row .site-info--menu .menu-footer-container .menu {
  display: grid;
  grid-auto-flow: column;
  grid-template-rows: repeat(6, auto);
}
@media (max-width: 690px) {
  .site-info .l-row .site-info--menu .menu-footer-container .menu {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    text-align: left;
  }
}
.site-info .l-row .site-info--menu .menu-footer-container .menu li a {
  font-size: 0.86em;
  color: #dfdfdf;
  position: relative;
  display: block;
  padding: 0.25em 1em 0.25em 1em;
  white-space: nowrap;
}
.site-info .l-row .site-info--menu .menu-footer-container .menu li a:visited {
  color: #dfdfdf;
}
.site-info .l-row .site-info--menu .menu-footer-container .menu li a:hover {
  color: #d92027;
}
@media (max-width: 520px) {
  .site-info .l-row .site-info--menu .menu-footer-container .menu li a {
    padding: 1em;
    border-top: 1px solid rgba(33, 33, 33, 0.3);
  }
}
.site-info .l-row .site-info--menu .menu-footer-container .menu li a::before {
  content: "";
  width: 0.3em;
  height: 0.5em;
  background: #20B2AA;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
  position: absolute;
  margin: auto;
  left: 0;
  top: 0;
  bottom: 0;
}
@media (max-width: 520px) {
  .site-info .l-row .site-info--menu .menu-footer-container .menu li a::before {
    left: auto;
    right: 1em;
  }
}
@media (max-width: 690px) {
  .site-info .l-row .site-info--menu .menu-footer-container .menu li {
    width: 50%;
  }
}
.site-info-logo {
  margin-bottom: 1em;
}
.site-info-logo img {
  height: 2.5em;
}
.site-info .txt {
  font-size: 0.7em;
  color: #fff;
  margin-bottom: 0.5em;
}
@media (max-width: 690px) {
  .site-info .txt {
    font-size: 1em;
  }
}
.site-info .tx-copy {
  font-size: 0.7em;
  color: #fff;
  text-align: right;
}
@media (max-width: 690px) {
  .site-info .tx-copy {
    text-align: center;
    margin: 2em 0;
  }
}

.site-info--privacy {
  display: flex;
  align-items: flex-end;
}
@media (max-width: 520px) {
  .site-info--privacy {
    flex-direction: column-reverse;
    align-items: flex-start;
  }
}
@media (max-width: 520px) {
  .site-info--privacy .menu-privacy-container {
    width: 100%;
  }
}
.site-info--privacy .menu {
  display: flex;
  margin-left: -1em;
}
@media (max-width: 690px) {
  .site-info--privacy .menu li {
    width: 50%;
    text-align: left;
  }
}
.site-info--privacy .menu a {
  display: block;
  color: #212121;
  padding: 0 1em;
  position: relative;
  font-size: 0.86em;
  color: #dfdfdf;
}
.site-info--privacy .menu a:hover {
  color: #d92027;
}
.site-info--privacy .menu a br {
  display: none;
}
@media (max-width: 520px) {
  .site-info--privacy .menu a br {
    display: block;
  }
}
@media (max-width: 520px) {
  .site-info--privacy .menu a {
    border-top: 1px solid rgba(33, 33, 33, 0.3);
  }
  .site-info--privacy .menu a::before {
    content: "";
    width: 0.5em;
    height: 0.7em;
    background: #d92027;
    clip-path: polygon(0 0, 0% 100%, 100% 50%);
    position: absolute;
    margin: auto;
    left: 0;
    top: 0;
    bottom: 0;
  }
}

.site-info-lower {
  border-top: 1px solid rgba(255, 255, 255, 0.5019607843);
  padding-top: 1.7em;
  margin-top: 1.7em;
}
@media (max-width: 690px) {
  .site-info-lower {
    padding: 0;
    margin: 0;
    border: none;
  }
}
.site-info-lower .l-row {
  align-items: center;
}

.l-emp {
  min-height: 80vh;
  padding-top: 12em;
}
.l-emp .page-title {
  font-size: 4.8em;
  margin-bottom: 1em;
}

.wrap-content {
  background-color: #fff;
  padding: 6em;
}
@media (max-width: 960px) {
  .wrap-content {
    padding: 3em;
  }
}
@media (max-width: 690px) {
  .wrap-content {
    padding: 2em;
  }
}
@media (max-width: 520px) {
  .wrap-content {
    padding: 1em;
  }
}

.l-pp h3 {
  font-size: 1.3em;
  margin: 2em 0;
  line-height: 1.4;
}
.l-pp h4 {
  margin-bottom: 1em;
  padding-left: 2em;
}
.l-pp p {
  margin-bottom: 2em;
  padding-left: 3em;
}
@media (max-width: 840px) {
  .l-pp p {
    padding-left: 1em;
  }
}
@media (max-width: 520px) {
  .l-pp p {
    padding-left: 0;
  }
}
.l-pp ul {
  list-style-type: disc;
  margin-bottom: 1em;
  margin-left: 4em;
}
.l-pp ol {
  list-style-type: decimal;
  margin-bottom: 1em;
  margin-left: 5em;
}
.l-pp .l-row {
  margin: inherit;
}
@media (max-width: 690px) {
  .l-pp .l-row {
    flex-direction: column;
  }
}
.l-pp .l-row .i-box {
  width: calc(100px + 3em);
  text-align: center;
}
@media (max-width: 690px) {
  .l-pp .l-row .i-box {
    margin: 0 auto;
    width: 100%;
  }
}
.l-pp .l-row .tx-lead {
  width: calc(100% - (100px + 3em));
}
@media (max-width: 690px) {
  .l-pp .l-row .tx-lead {
    width: 100%;
  }
}

.error-404 {
  min-height: 50vh;
}

.error404 .ttl {
  margin-top: 2em;
}

.wrap-policy {
  width: 76.9230769231%;
  margin: 0 auto 4em;
  padding: 4em 0;
  position: relative;
}
@media (max-width: 690px) {
  .wrap-policy {
    width: 100%;
    padding: 1em;
  }
}
.wrap-policy::before {
  content: "";
  width: calc(100% + 12em);
  height: 100%;
  background-color: #F7F8FA;
  border-radius: 5px;
  position: absolute;
  top: 0;
  left: -6em;
  z-index: -1;
}
.wrap-policy ol,
.wrap-policy dl,
.wrap-policy p {
  margin-bottom: 1.3em;
}
.wrap-policy .blk-rgt {
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
}
.wrap-policy .tb-no {
  width: -moz-fit-content;
  width: fit-content;
}
.wrap-policy .tb-no th {
  padding: 0 2em 0 0;
}
.wrap-policy .tb-no td {
  padding: 0;
}
.wrap-policy .subttl {
  font-size: 1.3em;
}

.ol-dcl {
  list-style: decimal;
  padding-left: 2.1em;
}

.dl-tb {
  display: flex;
  flex-wrap: wrap;
  margin-left: 1.1em;
}
@media (max-width: 690px) {
  .dl-tb {
    display: block;
    margin-left: 0;
  }
}
.dl-tb dt {
  width: 10em;
}
@media (max-width: 690px) {
  .dl-tb dt {
    width: 100%;
    margin-bottom: 1em;
  }
}
.dl-tb dd {
  width: calc(100% - 10em);
  margin-bottom: 0.5em;
}
@media (max-width: 690px) {
  .dl-tb dd {
    width: 100%;
    margin-bottom: 1em;
  }
}

.scl-view {
  position: relative;
  display: inline-block;
}
.scl-view .is-mttl--top {
  transition: clip-path 0.8s cubic-bezier(0, 0.85, 0.09, 0.09);
  clip-path: polygon(0 0, -100% 0, -100% 100%, 0 100%);
  position: absolute;
  color: #132939;
  top: 0;
  left: 0;
  display: block;
  letter-spacing: 0.02em;
}
.scl-view .is-mttl--bottom {
  color: #d0d0d0;
  transition: opacity 0.3s ease, transform 0.3s ease;
  letter-spacing: 0.02em;
}
.scl-view.is-active .is-mttl--top {
  clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
}
.scl-view.is-active .is-mttl--bottom {
  opacity: 1;
  transform: translateZ(0);
}/*# sourceMappingURL=style-plus.css.map */