@charset "UTF-8";
/*----------------------------------------
  reset
-----------------------------------------*/
@import url(https://fonts.googleapis.com/css?family=Noto+Sans+JP:,400,500,600,700,900&display=swap&subset=japanese);
/* line 7, ../_base.scss */
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/* line 84, ../_base.scss */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* line 94, ../_base.scss */
html {
  box-sizing: border-box;
}

/* line 97, ../_base.scss */
*:before,
*:after {
  box-sizing: inherit;
}

/* line 102, ../_base.scss */
body {
  line-height: 1;
}

/* line 106, ../_base.scss */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

/* line 120, ../_base.scss */
p {
  text-align: justify;
}

/* line 124, ../_base.scss */
nav ul {
  list-style: none;
}

/* line 128, ../_base.scss */
blockquote,
q {
  quotes: none;
}

/* line 133, ../_base.scss */
blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

/* line 141, ../_base.scss */
a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none;
}

/* change colours to suit your needs */
/* line 151, ../_base.scss */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
/* line 158, ../_base.scss */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

/* line 165, ../_base.scss */
del {
  text-decoration: line-through;
}

/* line 169, ../_base.scss */
abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

/* line 175, ../_base.scss */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* change border colour to suit your needs */
/* line 181, ../_base.scss */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

/* line 190, ../_base.scss */
input,
select {
  vertical-align: middle;
  outline: 0;
}

/* line 196, ../_base.scss */
ul,
li {
  list-style: none;
}

/* line 202, ../_base.scss */
input[type="text"],
input[type="button"],
input[type="submit"],
input[type="tel"],
input[type="email"] {
  -webkit-appearance: none;
  border: none;
  box-sizing: border-box;
}

/* line 211, ../_base.scss */
input[type="text"]:focus,
input[type="button"]:focus,
input[type="submit"]:focus,
input[type="tel"]:focus,
input[type="email"]:focus,
textarea:focus {
  outline: 0;
  background-color: #fff;
}

/* line 221, ../_base.scss */
input:-internal-autofill-selected {
  background-color: #fff !important;
}

/* line 224, ../_base.scss */
input[type="text"]:focus:placeholder-shown,
input[type="button"]:focus:placeholder-shown,
input[type="submit"]:focus:placeholder-shown,
input[type="tel"]:focus:placeholder-shown,
input[type="email"]:focus:placeholder-shown,
textarea:focus:placeholder-shown {
  color: #ddd;
}

/* line 232, ../_base.scss */
input[type="text"]:focus:-webkit-input-placeholder,
input[type="button"]:focus:-webkit-input-placeholder,
input[type="submit"]:focus:-webkit-input-placeholder,
input[type="tel"]:focus:-webkit-input-placeholder,
input[type="email"]:focus:-webkit-input-placeholder,
textarea:focus:-webkit-input-placeholder {
  color: #ddd;
}

/* line 240, ../_base.scss */
input[type="text"]:focus:-moz-placeholder,
input[type="button"]:focus:-moz-placeholder,
input[type="submit"]:focus:-moz-placeholder,
input[type="tel"]:focus:-moz-placeholder,
input[type="email"]:focus:-moz-placeholder,
textarea:focus:-moz-placeholder {
  color: #ddd;
}

/* line 248, ../_base.scss */
input[type="text"]:focus:-ms-input-placeholder,
input[type="button"]:focus:-ms-input-placeholder,
input[type="submit"]:focus:-ms-input-placeholder,
input[type="tel"]:focus:-ms-input-placeholder,
input[type="email"]:focus:-ms-input-placeholder,
textarea:focus:-ms-input-placeholder {
  color: #ddd;
}

/* line 256, ../_base.scss */
select {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0;
  border: 0;
  margin: 0;
  padding: 0;
  background: none transparent;
  vertical-align: middle;
  font-size: inherit;
  color: inherit;
  box-sizing: content-box;
}

/* line 271, ../_base.scss */
input[type="text"]:placeholder-shown,
input[type="email"]:placeholder-shown,
input[type="tel"]:placeholder-shown {
  color: #ddd;
}

/* line 276, ../_base.scss */
input[type="text"]::-webkit-input-placeholder,
input[type="email"]::-webkit-input-placeholder,
input[type="tel"]::-webkit-input-placeholder {
  color: #ddd;
}

/* line 281, ../_base.scss */
input[type="text"]:-moz-placeholder,
input[type="email"]:-moz-placeholder,
input[type="tel"]:-moz-placeholder,
textarea:-moz-placeholder {
  color: #ddd;
}

/* line 288, ../_base.scss */
input[type="text"]:-ms-input-placeholder,
input[type="email"]:-ms-input-placeholder,
input[type="tel"]:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #fff;
}

/* line 294, ../_base.scss */
textarea {
  resize: vertical;
}

/* line 297, ../_base.scss */
textarea:placeholder-shown {
  color: #ddd;
}

/* line 300, ../_base.scss */
textarea::-webkit-input-placeholder {
  color: #ddd;
}

/* line 303, ../_base.scss */
textarea::-moz-placeholder {
  color: #ddd;
}

/* line 308, ../_base.scss */
input:focus::placeholder,
textarea:focus::placeholder {
  color: transparent;
  transition: 0.1s;
}

/* line 314, ../_base.scss */
input:focus::-webkit-input-placeholder,
textarea:focus::-webkit-input-placeholder {
  color: transparent;
  transition: 0.1s;
}

/* line 320, ../_base.scss */
input:focus:-moz-placeholder,
textarea:focus:-moz-placeholder {
  color: transparent;
  transition: 0.1s;
}

/* line 326, ../_base.scss */
input:focus::-moz-placeholder,
textarea:focus::-moz-placeholder {
  color: transparent;
  transition: 0.1s;
}

/* line 331, ../_base.scss */
button {
  background-color: transparent;
  outline: 0;
  border: 0;
}

/*スマートフォンサイトでaタグをタップしたときにでるハイライトの色を消す*/
/* line 338, ../_base.scss */
a {
  -webkit-tap-highlight-color: transparent;
  color: #212121;
}
@media screen and (min-width: 896px) {
  /* line 338, ../_base.scss */
  a {
    transition: 0.3s;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    -webkit-font-smoothing: antialiased;
  }
  /* line 346, ../_base.scss */
  a:hover {
    transition: 0.3s;
    cursor: pointer;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    -webkit-font-smoothing: antialiased;
  }
}

/* line 356, ../_base.scss */
table {
  border-collapse: collapse;
  border: none;
  border-spacing: 0;
  width: 100%;
}

/* line 362, ../_base.scss */
th,
td {
  vertical-align: middle;
  border: solid 1px #000;
  font-weight: normal;
  text-align: left;
  border: 0;
}

/* line 370, ../_base.scss */
caption {
  text-align: left;
}

/* line 374, ../_base.scss */
html {
  scroll-behavior: smooth;
}

/* line 378, ../_base.scss */
html,
body {
  width: 100%;
  height: 100%;
  font-size: 62.5%;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  letter-spacing: 0.05em;
  font-display: swap;
}

/* line 388, ../_base.scss */
body {
  overflow-x: hidden;
}
@media screen and (max-width: 896px) {
  /* line 391, ../_base.scss */
  body.sp_fix {
    position: fixed;
    width: 100%;
    height: 100%;
    overflow: hidden;
  }
}
/* line 398, ../_base.scss */
body.no_scroll {
  overflow: hidden;
}

/* line 402, ../_base.scss */
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

/* line 407, ../_base.scss */
svg {
  width: 100%;
  height: auto;
}

/* line 412, ../_base.scss */
.slick-list:focus {
  outline: none !important;
}

/* line 87, ../_module.scss */
.tel.no_link {
  pointer-events: none;
}

/* line 92, ../_module.scss */
.flx {
  display: flex;
}
/* line 94, ../_module.scss */
.flx.reverse {
  flex-direction: row-reverse;
}
/* line 97, ../_module.scss */
.flx.jfc_sb {
  justify-content: space-between;
}
/* line 100, ../_module.scss */
.flx.jfc_c {
  justify-content: center;
}
/* line 103, ../_module.scss */
.flx.aic {
  align-items: center;
}
/* line 106, ../_module.scss */
.flx.clm {
  flex-direction: column;
}
/* line 108, ../_module.scss */
.flx.clm > * {
  min-height: 0%;
}

/* line 113, ../_module.scss */
.ablt {
  position: absolute;
}

/* line 118, ../_module.scss */
.lead {
  font-size: 1.6rem;
  line-height: 1.8;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 896px) {
  /* line 118, ../_module.scss */
  .lead {
    font-size: 1.4rem;
    text-align: justify;
    text-justify: inter-ideograph;
  }
}

/* line 129, ../_module.scss */
.en {
  font-family: Helvetica, "Helvetica Neue", sans-serif;
}

/* line 137, ../_module.scss */
.vertical {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -o-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
}
@media screen and (max-width: 896px) {
  /* line 137, ../_module.scss */
  .vertical {
    writing-mode: horizontal-tb;
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: horizontal-tb;
  }
}

/* line 149, ../_module.scss */
.tag {
  font-weight: bold;
  width: max-content;
  color: white;
  background: #ea071d;
  font-size: 16px;
  letter-spacing: 0.05em;
  padding: 8px 11px 9px;
}
@media screen and (max-width: 896px) {
  /* line 149, ../_module.scss */
  .tag {
    font-size: 12px;
    padding: 7px 10px 8px;
  }
}

/* line 163, ../_module.scss */
.main_ttl {
  margin-left: auto;
  margin-right: auto;
  opacity: 0;
  transform: translateY(3%);
  transition: 0.35s;
}
@media screen and (min-width: 897px) {
  /* line 163, ../_module.scss */
  .main_ttl {
    width: 1120px;
  }
}
@media screen and (max-width: 896px) {
  /* line 163, ../_module.scss */
  .main_ttl {
    margin-left: 5vw;
    margin-right: 5vw;
  }
}
/* line 176, ../_module.scss */
.main_ttl .jp {
  text-align: center;
  display: block;
  position: relative;
  font-weight: 900;
  font-size: 48px;
  letter-spacing: 0.24em;
}
@media screen and (max-width: 896px) {
  /* line 176, ../_module.scss */
  .main_ttl .jp {
    font-size: 25px;
    line-height: 1.45;
  }
}
@media screen and (min-width: 897px) {
  /* line 187, ../_module.scss */
  .main_ttl .jp::before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 50%;
    transform: translate(0, -50%) scaleX(0);
    background: url(../../img/recruit/deco_ttl01.png) no-repeat;
    background-size: cover;
    width: 202px;
    height: 7px;
    transform-origin: right;
  }
}
@media screen and (min-width: 897px) {
  /* line 204, ../_module.scss */
  .main_ttl .jp::after {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    right: 0;
    top: 50%;
    transform: translate(0, -50%) scaleX(0);
    background: url(../../img/recruit/deco_ttl01.png) no-repeat;
    background-size: cover;
    width: 202px;
    height: 7px;
    transform-origin: left;
  }
}
/* line 221, ../_module.scss */
.main_ttl .jp .txt {
  color: black;
  position: relative;
  z-index: 2;
  transition: 0.55s 0.35s;
}
/* line 227, ../_module.scss */
.main_ttl .jp .circle_txt {
  position: relative;
  display: inline-block;
  margin-right: 0.2vw;
}
@media screen and (max-width: 896px) {
  /* line 227, ../_module.scss */
  .main_ttl .jp .circle_txt {
    margin: 0 1.1vw;
  }
}
/* line 234, ../_module.scss */
.main_ttl .jp .circle_txt::after {
  content: "";
  display: block;
  position: absolute;
  width: 61.2px;
  height: 61.2px;
  left: 43%;
  top: 58%;
  background: #ea071d;
  border-radius: 50%;
  transform: translate(-50%, -50%) scale(0);
  transform-origin: center;
}
@media screen and (max-width: 896px) {
  /* line 234, ../_module.scss */
  .main_ttl .jp .circle_txt::after {
    top: 56%;
    width: 36px;
    height: 36px;
  }
}
/* line 254, ../_module.scss */
.main_ttl .en {
  display: block;
  text-align: center;
  color: #ea071d;
  font-size: 20px;
  font-family: Helvetica, "Helvetica Neue", sans-serif;
  font-weight: 600;
  font-style: normal;
  margin-top: 20px;
  transition: 0.3s 0.55s;
  transform: translateY(10px);
  opacity: 0;
}
@media screen and (max-width: 896px) {
  /* line 254, ../_module.scss */
  .main_ttl .en {
    font-size: 16px;
    margin-top: 13px;
  }
}
/* line 271, ../_module.scss */
.main_ttl.on {
  opacity: 1;
  transform: translateY(0);
}
/* line 275, ../_module.scss */
.main_ttl.on .jp::after, .main_ttl.on .jp::before {
  animation: mainttl_deco 0.55s 0.35s ease forwards;
}
/* line 280, ../_module.scss */
.main_ttl.on .en {
  opacity: 1;
  transform: translateY(0%);
}
/* line 285, ../_module.scss */
.main_ttl.on .circle_txt::after {
  animation: mainttl_circle 0.55s 0.35s ease forwards;
}
/* line 288, ../_module.scss */
.main_ttl.on .circle_txt .txt {
  color: white;
}

/* line 295, ../_module.scss */
.basebtn {
  background-color: #ea071d;
  color: white;
  position: relative;
  display: block;
  width: 100%;
  font-weight: bold;
  overflow: hidden;
  transition: 0.4s;
  font-size: 18px;
  padding: 29px 35px;
  border-radius: 10px;
  border: 3px solid transparent;
}
/* line 308, ../_module.scss */
.basebtn .txt {
  position: relative;
  transition: 0.4s;
  z-index: 3;
}
@media screen and (max-width: 896px) {
  /* line 295, ../_module.scss */
  .basebtn {
    padding: 24px 22px;
    font-size: 16px;
  }
}
/* line 317, ../_module.scss */
.basebtn.clear {
  background: none;
  border: 4px solid #ea071d;
  color: #ea071d;
}
/* line 321, ../_module.scss */
.basebtn.clear::after {
  background: url(../../img/recruit/ico_arrow_red01.png) no-repeat;
  background-size: contain;
  filter: brightness(1) invert(0);
}
/* line 326, ../_module.scss */
.basebtn.clear::before {
  background: #ea071d;
  width: 50vw;
  height: 50vw;
  filter: brightness(1) invert(0);
}
@media screen and (min-width: 897px) {
  /* line 332, ../_module.scss */
  .basebtn.clear:hover {
    color: white;
  }
  /* line 335, ../_module.scss */
  .basebtn.clear:hover::after {
    filter: brightness(0) invert(1);
  }
  /* line 338, ../_module.scss */
  .basebtn.clear:hover .txt {
    color: white;
  }
}
/* line 344, ../_module.scss */
.basebtn::after {
  content: "";
  display: block;
  position: absolute;
  width: 26px;
  height: 15px;
  right: 28px;
  top: 50%;
  transform: translate(0, -50%);
  background: url(../../img/recruit/ico_arrow_red01.png) no-repeat;
  z-index: 3;
  filter: brightness(0) invert(1);
  transition: 0.4s;
  background-size: contain;
}
@media screen and (max-width: 896px) {
  /* line 344, ../_module.scss */
  .basebtn::after {
    width: 19px;
    height: 11px;
    right: 22px;
  }
}
/* line 364, ../_module.scss */
.basebtn::before {
  content: "";
  display: block;
  position: absolute;
  width: 40vw;
  height: 40vw;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%) scale(0);
  background: white;
  z-index: 2;
  transition: 0.6s;
  border-radius: 50%;
}
@media screen and (min-width: 897px) {
  /* line 380, ../_module.scss */
  .basebtn:hover {
    transition: 0.4s;
  }
  /* line 384, ../_module.scss */
  .basebtn:hover::after {
    filter: brightness(1) invert(0);
    transition: 0.4s;
  }
  /* line 388, ../_module.scss */
  .basebtn:hover .txt {
    letter-spacing: 0.2em;
    transition: 0.4s;
  }
  /* line 392, ../_module.scss */
  .basebtn:hover::before {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
    transition: 0.6s;
  }
  /* line 398, ../_module.scss */
  .basebtn:hover .txt {
    color: #ea071d;
  }
}

/* line 405, ../_module.scss */
.company_item_img {
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 896px) {
  /* line 405, ../_module.scss */
  .company_item_img {
    width: 69.6vw;
    margin: 0 auto;
  }
}
/* line 412, ../_module.scss */
.company_item_img .svg_anim {
  position: absolute;
  width: clamp(0px, 8.286vw, 116px);
  left: -1.4vw;
  top: 0;
}
/* line 418, ../_module.scss */
.company_item_img .svg_anim.on::before {
  opacity: 1;
}
/* line 422, ../_module.scss */
.company_item_img .svg_anim::before {
  content: "＃";
  opacity: 0;
  transition: 0.4s 0.6s;
  color: #ea071d;
  font-weight: bold;
  font-size: 30px;
  display: block;
  position: absolute;
  left: -28px;
  font-family: Helvetica, "Helvetica Neue", sans-serif;
  font-weight: 600;
  font-style: normal;
  top: -2px;
}
/* line 438, ../_module.scss */
.company_item_img .svg_anim svg path {
  stroke: #ea071d;
}
/* line 444, ../_module.scss */
.company_item_img .deco_dot {
  height: 221px;
  width: clamp(0px, 15.214vw, 213px);
  height: clamp(0px, 15.786vw, 221px);
  position: absolute;
  top: 50%;
  right: clamp(-55px, -3.929vw, 0px);
  transform: translateY(-50%);
}
@media screen and (max-width: 896px) {
  /* line 444, ../_module.scss */
  .company_item_img .deco_dot {
    width: 50vw;
    height: 43vw;
    top: 50%;
    right: -10vw;
  }
}
/* line 459, ../_module.scss */
.company_item_img .deco_line {
  background: #ea071d;
  position: absolute;
  height: clamp(0px, 0.714vw, 10px);
  width: clamp(0px, 18.143vw, 254px);
  transform: translateY(-50%);
}
@media screen and (max-width: 896px) {
  /* line 459, ../_module.scss */
  .company_item_img .deco_line {
    height: 6px;
  }
}
/* line 468, ../_module.scss */
.company_item_img .deco_line.line01 {
  right: 0;
  top: 81.6%;
}
@media screen and (max-width: 896px) {
  /* line 468, ../_module.scss */
  .company_item_img .deco_line.line01 {
    top: 85%;
  }
}
/* line 475, ../_module.scss */
.company_item_img .deco_line.line02 {
  left: -25px;
  top: 38%;
}
@media screen and (max-width: 896px) {
  /* line 475, ../_module.scss */
  .company_item_img .deco_line.line02 {
    left: -18px;
    top: 34%;
  }
}
/* line 484, ../_module.scss */
.company_item_img img {
  width: 100%;
  position: relative;
  z-index: 2;
}
/* line 489, ../_module.scss */
.company_item_img .imgwrap {
  width: 100%;
  position: relative;
  z-index: 2;
}

/* line 496, ../_module.scss */
.company_item_txtbox {
  margin-top: 14px;
}
@media screen and (max-width: 896px) {
  /* line 496, ../_module.scss */
  .company_item_txtbox {
    text-align: center;
    margin-top: 28px;
  }
}
/* line 502, ../_module.scss */
.company_item_txtbox .item_ttl {
  font-size: clamp(20px, 2.571vw, 36px);
  letter-spacing: 0.05em;
  color: #ea071d;
  font-weight: 900;
}
@media screen and (max-width: 896px) {
  /* line 502, ../_module.scss */
  .company_item_txtbox .item_ttl {
    font-size: 26px;
  }
}
/* line 510, ../_module.scss */
.company_item_txtbox .item_ttl .small {
  margin-bottom: 18px;
  font-size: 20px;
  letter-spacing: 0.2em;
  display: block;
  color: black;
}
@media screen and (max-width: 896px) {
  /* line 510, ../_module.scss */
  .company_item_txtbox .item_ttl .small {
    font-size: 18px;
    margin-bottom: 13px;
  }
}
/* line 522, ../_module.scss */
.company_item_txtbox .item_txt {
  font-size: 16px;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-top: 18px;
}
@media screen and (max-width: 896px) {
  /* line 522, ../_module.scss */
  .company_item_txtbox .item_txt {
    font-size: 14px;
    margin-top: 15px;
    text-align: center;
  }
}
/* line 533, ../_module.scss */
.company_item_txtbox .basebtn {
  margin-top: 23px;
}
@media screen and (max-width: 896px) {
  /* line 533, ../_module.scss */
  .company_item_txtbox .basebtn {
    margin-top: 20px;
    border-radius: 10px;
    font-size: 13px;
    width: 100%;
    max-width: 400px;
    margin: 20px auto;
    padding: 19px 14px;
  }
}
@media screen and (max-width: 896px) {
  /* line 544, ../_module.scss */
  .company_item_txtbox .basebtn::after {
    right: 20px;
  }
}

/* line 552, ../_module.scss */
.deco_dot {
  background-size: 3px 3px;
  background-image: radial-gradient(#ea071d 20%, rgba(0, 0, 0, 0) 20%);
}

/* line 557, ../_module.scss */
.under_lead {
  padding: 70px 10vw;
  margin: 0;
  position: relative;
}
@media screen and (max-width: 896px) {
  /* line 557, ../_module.scss */
  .under_lead {
    padding: 0 0 70px 0;
  }
}
@media screen and (min-width: 897px) {
  /* line 564, ../_module.scss */
  .under_lead .imgbox {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 42vw;
  }
}
@media screen and (min-width: 897px) {
  /* line 571, ../_module.scss */
  .under_lead .imgbox img {
    height: 850px;
    width: 100%;
    object-fit: cover;
  }
}
@media screen and (max-width: 896px) {
  /* line 571, ../_module.scss */
  .under_lead .imgbox img {
    width: 100%;
    height: 55vw;
    object-fit: cover;
  }
}
/* line 584, ../_module.scss */
.under_lead .lead_ttl {
  margin-bottom: 30px;
}
@media screen and (max-width: 896px) {
  /* line 584, ../_module.scss */
  .under_lead .lead_ttl {
    margin: 70px 0 18px;
    padding-left: 5vw;
    padding-right: 5vw;
  }
}
/* line 591, ../_module.scss */
.under_lead .lead_ttl .smalltxt {
  display: block;
  position: relative;
  font-size: 16px;
  font-weight: bold;
  font-size: 16px;
  padding-left: 24px;
  margin-bottom: 25px;
}
@media screen and (max-width: 896px) {
  /* line 591, ../_module.scss */
  .under_lead .lead_ttl .smalltxt {
    font-size: 14px;
    margin-bottom: 18px;
    padding-left: 24px;
  }
}
/* line 604, ../_module.scss */
.under_lead .lead_ttl .smalltxt::after {
  content: "";
  display: block;
  position: absolute;
  width: 16px;
  height: 2px;
  left: 0;
  top: 50%;
  transform: translate(0, -50%);
  background: #ea071d;
}
/* line 616, ../_module.scss */
.under_lead .lead_ttl .maintxt {
  color: #ea071d;
  font-size: 26px;
  line-height: 1.75;
  display: block;
}
@media screen and (max-width: 896px) {
  /* line 616, ../_module.scss */
  .under_lead .lead_ttl .maintxt {
    font-size: 21px;
  }
}
/* line 626, ../_module.scss */
.under_lead .lead_txt {
  color: #0d0d0d;
  line-height: 2;
}
@media screen and (min-width: 897px) {
  /* line 626, ../_module.scss */
  .under_lead .lead_txt {
    max-width: 38.143vw;
  }
}
@media screen and (max-width: 896px) {
  /* line 626, ../_module.scss */
  .under_lead .lead_txt {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}

/* line 639, ../_module.scss */
.dotbg {
  background-size: 20px 20px;
  background-color: #fff;
  background-image: radial-gradient(#000000 0%, rgba(0, 0, 0, 0) 6%);
}
@media screen and (max-width: 896px) {
  /* line 639, ../_module.scss */
  .dotbg {
    background-size: 9px 9px;
  }
}

/* line 647, ../_module.scss */
.common_txtbox {
  position: relative;
}
/* line 649, ../_module.scss */
.common_txtbox_num {
  position: absolute;
  right: 0;
  top: 0;
  font-size: 12.857vw;
  font-weight: bold;
  font-family: Helvetica, "Helvetica Neue", sans-serif;
  color: #fbdcdc;
}
@media screen and (max-width: 896px) {
  /* line 649, ../_module.scss */
  .common_txtbox_num {
    font-size: 19vw;
  }
}
/* line 662, ../_module.scss */
.common_txtbox_ttl .smalltxt {
  display: block;
  position: relative;
  font-size: 16px;
  font-weight: bold;
  font-size: 16px;
  padding-left: 24px;
  margin-bottom: 25px;
}
@media screen and (max-width: 896px) {
  /* line 662, ../_module.scss */
  .common_txtbox_ttl .smalltxt {
    font-size: 14px;
    margin-bottom: 18px;
    padding-left: 24px;
  }
}
/* line 675, ../_module.scss */
.common_txtbox_ttl .smalltxt::after {
  content: "";
  display: block;
  position: absolute;
  width: 16px;
  height: 2px;
  left: 0;
  top: 50%;
  transform: translate(0, -50%);
  background: #ea071d;
}
/* line 687, ../_module.scss */
.common_txtbox_ttl .maintxt {
  color: white;
  background-color: #ea071d;
  font-size: 28px;
  letter-spacing: 0.05em;
  display: block;
  width: max-content;
  padding: 4px 12px;
  margin-top: 6px;
}
@media screen and (max-width: 896px) {
  /* line 687, ../_module.scss */
  .common_txtbox_ttl .maintxt {
    font-size: 18px;
    padding: 7px 9px;
  }
}
/* line 700, ../_module.scss */
.common_txtbox_ttl .maintxt::before, .common_txtbox_ttl .maintxt::after {
  background-color: #ea071d;
}
/* line 706, ../_module.scss */
.common_txtbox_txt {
  line-height: 2;
  letter-spacing: 0.05em;
  margin-top: 18px;
}

/* line 714, ../_module.scss */
.company_links {
  padding: 155px 0 75px;
  position: relative;
  z-index: 2;
  background: white;
}
@media screen and (max-width: 896px) {
  /* line 714, ../_module.scss */
  .company_links {
    padding: 100px 0 50px;
  }
}
/* line 722, ../_module.scss */
.company_links .bgwrap {
  background-size: 20px 20px;
  background-image: radial-gradient(#000000 0%, rgba(0, 0, 0, 0) 8%);
  padding: 70px 0;
}
/* line 727, ../_module.scss */
.company_links .company_lists {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0px 7vw;
}
@media screen and (max-width: 896px) {
  /* line 727, ../_module.scss */
  .company_links .company_lists {
    gap: 65px 0;
  }
}
/* line 735, ../_module.scss */
.company_links .company_lists .company_item {
  width: 21.429vw;
  position: relative;
}
@media screen and (max-width: 896px) {
  /* line 735, ../_module.scss */
  .company_links .company_lists .company_item {
    width: 68%;
  }
}
/* line 741, ../_module.scss */
.company_links .company_lists .company_item.current {
  display: none;
}
/* line 744, ../_module.scss */
.company_links .company_lists .company_item:nth-of-type(2n) {
  margin-right: 0;
}
/* line 747, ../_module.scss */
.company_links .company_lists .company_item .svg_anim {
  position: absolute;
  width: clamp(0px, 8.286vw, 100px);
  left: -1.4vw;
  top: 0;
}
@media screen and (max-width: 896px) {
  /* line 747, ../_module.scss */
  .company_links .company_lists .company_item .svg_anim {
    width: clamp(0px, 20vw, 100px);
    left: -6vw;
  }
}
/* line 757, ../_module.scss */
.company_links .company_lists .company_item .svg_anim.on::before {
  opacity: 1;
}
/* line 761, ../_module.scss */
.company_links .company_lists .company_item .svg_anim::before {
  content: "＃";
  opacity: 0;
  transition: 0.4s 0.6s;
  color: #ea071d;
  font-weight: bold;
  font-size: 30px;
  display: block;
  position: absolute;
  left: -28px;
  font-family: Helvetica, "Helvetica Neue", sans-serif;
  font-weight: 600;
  font-style: normal;
  top: -2px;
}
@media screen and (max-width: 896px) {
  /* line 761, ../_module.scss */
  .company_links .company_lists .company_item .svg_anim::before {
    font-size: 22px;
    left: -24px;
    top: 2px;
  }
}
/* line 782, ../_module.scss */
.company_links .company_lists .company_item .svg_anim svg path {
  stroke: #ea071d;
}
/* line 788, ../_module.scss */
.company_links .company_lists .company_item .item_ttl {
  font-size: calc(31 / 1400 * 100vw);
}
/* line 790, ../_module.scss */
.company_links .company_lists .company_item .item_ttl .small {
  font-size: 18px;
}
/* line 795, ../_module.scss */
.company_links .company_lists .company_item_img .deco_dot {
  height: clamp(0px, 15.786vw, 221px);
  right: clamp(-25px, -3.929vw, 0px);
}
@media screen and (max-width: 896px) {
  /* line 795, ../_module.scss */
  .company_links .company_lists .company_item_img .deco_dot {
    height: 40vw;
    right: -6.929vw;
    width: 24.214vw;
  }
}
@media screen and (max-width: 896px) {
  /* line 804, ../_module.scss */
  .company_links .company_lists .company_item_img .line01 {
    right: -5px;
    top: 86%;
  }
}
@media screen and (max-width: 896px) {
  /* line 810, ../_module.scss */
  .company_links .company_lists .company_item_img .line02 {
    left: calc(22 / 375 * -100vw);
    top: 27%;
  }
}
/* line 819, ../_module.scss */
.company_links .basebtn.clear {
  margin: 80px auto 0;
  font-size: 20px;
  background: #fff;
}
@media screen and (min-width: 897px) {
  /* line 819, ../_module.scss */
  .company_links .basebtn.clear {
    width: 680px;
    padding: 40px 35px;
  }
}
@media screen and (max-width: 896px) {
  /* line 819, ../_module.scss */
  .company_links .basebtn.clear {
    padding: 18px 22px;
    width: 90%;
  }
}

/* line 834, ../_module.scss */
.secttl {
  font-size: 90px;
  font-weight: 900;
  color: #ea071d;
}
@media screen and (max-width: 896px) {
  /* line 834, ../_module.scss */
  .secttl {
    font-size: 60px;
    text-align: center;
  }
}

/* line 843, ../_module.scss */
.tac {
  text-align: center;
}

/* line 846, ../_module.scss */
.bold_txt {
  font-weight: bold;
  font-size: 24px;
  line-height: 2;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 896px) {
  /* line 846, ../_module.scss */
  .bold_txt {
    font-size: 14px;
  }
}
/* line 854, ../_module.scss */
.bold_txt .red {
  color: #ea071d;
}

/* line 858, ../_module.scss */
.red {
  color: #ea071d;
}

/* line 861, ../_module.scss */
.marker {
  display: inline;
  position: relative;
  background-image: linear-gradient(90deg, rgba(255, 93, 109, 0.2), rgba(255, 93, 109, 0.2));
  /* 単色の場合は同じ色、グラデーションさせる場合は別々の色 */
  border-radius: 2px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100% 100%;
  /* '30%'の部分にマーカーの太さを記入 */
  transition: all 1s ease-in-out;
  /* マーカーを引く速度を調整 */
  font-weight: bold;
  /* ついでに太字にしたい場合 */
  line-height: 1;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  padding: 1.5px 4px;
}

/* line 881, ../_module.scss */
.basetable {
  width: 60vw;
  margin: 54px 10vw 0 auto;
}
@media screen and (max-width: 896px) {
  /* line 881, ../_module.scss */
  .basetable {
    width: 90vw;
    margin: 25px auto 0;
  }
}
/* line 888, ../_module.scss */
.basetable tr {
  border-bottom: 1px solid #d9d9d9;
}
@media screen and (max-width: 896px) {
  /* line 888, ../_module.scss */
  .basetable tr {
    display: flex;
  }
}
/* line 893, ../_module.scss */
.basetable tr th {
  font-size: 18px;
  font-weight: bold;
  padding: 25px 20px 25px 0;
  line-height: 1.75;
  vertical-align: top;
}
@media screen and (max-width: 896px) {
  /* line 893, ../_module.scss */
  .basetable tr th {
    font-size: 14px;
    padding: 18px 0;
    margin-right: 16px;
    width: 60px;
  }
}
/* line 905, ../_module.scss */
.basetable tr th .thtxt {
  position: relative;
  display: block;
  padding: 0 0 0 43px;
}
@media screen and (max-width: 896px) {
  /* line 905, ../_module.scss */
  .basetable tr th .thtxt {
    padding: 0;
  }
}
@media screen and (min-width: 897px) {
  /* line 912, ../_module.scss */
  .basetable tr th .thtxt::before {
    content: "";
    display: inline-block;
    position: absolute;
    width: 12px;
    height: 12px;
    left: 2.5%;
    border-radius: 50%;
    border: 2px solid #ea071d;
    top: 11px;
  }
}
@media screen and (min-width: 897px) {
  /* line 893, ../_module.scss */
  .basetable tr th {
    width: 31.4%;
  }
}
/* line 930, ../_module.scss */
.basetable tr td {
  line-height: 1.75;
  padding: 25px 0;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 896px) {
  /* line 930, ../_module.scss */
  .basetable tr td {
    padding: 18px 0;
    width: calc(100% - 80px);
  }
}
@media screen and (min-width: 897px) {
  /* line 930, ../_module.scss */
  .basetable tr td {
    width: 100%;
  }
}
/* line 941, ../_module.scss */
.basetable tr td.flx {
  align-items: flex-start;
  gap: 16px;
  flex-wrap: wrap;
}
@media screen and (max-width: 896px) {
  /* line 941, ../_module.scss */
  .basetable tr td.flx {
    gap: 10px;
  }
}
/* line 948, ../_module.scss */
.basetable tr td.flx .table_link {
  background: #ea071d;
  color: white;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 4px;
  padding: 5px 18px;
  width: max-content;
}
/* line 957, ../_module.scss */
.basetable tr td.flx .table_link .txt {
  font-weight: bold;
  font-size: 12px;
  margin-right: 10px;
}
@media screen and (max-width: 896px) {
  /* line 957, ../_module.scss */
  .basetable tr td.flx .table_link .txt {
    font-size: 11px;
    margin-right: 8px;
  }
}
/* line 966, ../_module.scss */
.basetable tr td.flx .table_link .svgwrap {
  width: 16px;
  display: flex;
  align-items: center;
}

/* line 976, ../_module.scss */
.table_dl {
  display: flex;
  margin-bottom: 14px;
}
@media screen and (max-width: 896px) {
  /* line 976, ../_module.scss */
  .table_dl {
    margin-bottom: 7px;
  }
}
/* line 982, ../_module.scss */
.table_dl:nth-last-of-type(1) {
  margin-bottom: 0;
}
@media screen and (min-width: 897px) {
  /* line 985, ../_module.scss */
  .table_dl .table_dt {
    width: 134px;
  }
}
@media screen and (max-width: 896px) {
  /* line 985, ../_module.scss */
  .table_dl .table_dt {
    width: 117px;
  }
}

/* line 995, ../_module.scss */
.bg_ttlarea {
  width: 80vw;
  margin: 0 auto;
  position: relative;
  padding-top: 58px;
}
@media screen and (max-width: 896px) {
  /* line 995, ../_module.scss */
  .bg_ttlarea {
    width: 90vw;
    padding-top: 46px;
  }
}
/* line 1004, ../_module.scss */
.bg_ttlarea .ttltxt {
  z-index: 2;
  position: relative;
  text-align: center;
  transition-delay: 0.3s;
}
@media screen and (min-width: 897px) {
  /* line 1004, ../_module.scss */
  .bg_ttlarea .ttltxt {
    display: flex;
    align-items: flex-end;
    padding-left: 70px;
  }
}
@media screen and (max-width: 896px) {
  /* line 1004, ../_module.scss */
  .bg_ttlarea .ttltxt {
    display: block;
  }
}
@media screen and (min-width: 897px) {
  /* line 1017, ../_module.scss */
  .bg_ttlarea .ttltxt::before {
    content: "";
    display: block;
    position: absolute;
    width: 36px;
    height: 2px;
    left: 0;
    top: 50%;
    transform: translate(0, -50%) scaleX(0);
    transform-origin: left;
    background: #ea071d;
    transition: 0.3s 0.6s;
  }
}
/* line 1033, ../_module.scss */
.bg_ttlarea .ttltxt.on::before {
  transform: translate(0, -50%) scaleX(1);
}
/* line 1037, ../_module.scss */
.bg_ttlarea .ttltxt .jp {
  color: #ea071d;
  font-size: 50px;
  letter-spacing: 0.05em;
  margin-right: 30px;
}
@media screen and (max-width: 896px) {
  /* line 1037, ../_module.scss */
  .bg_ttlarea .ttltxt .jp {
    font-size: 22px;
    display: block;
    text-align: center;
    margin-right: 0;
  }
}
/* line 1049, ../_module.scss */
.bg_ttlarea .ttltxt .en {
  font-size: 14px;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 896px) {
  /* line 1049, ../_module.scss */
  .bg_ttlarea .ttltxt .en {
    font-size: 12px;
    text-align: center;
    display: block;
    margin-top: 8px;
    text-align: center;
  }
}
/* line 1061, ../_module.scss */
.bg_ttlarea .bgtxt {
  font-size: 120px;
  letter-spacing: 0.05em;
  color: #f7f5f5;
  font-family: Helvetica, "Helvetica Neue", sans-serif;
  position: absolute;
  font-weight: bold;
  top: 0;
  left: 0;
}
@media screen and (max-width: 896px) {
  /* line 1061, ../_module.scss */
  .bg_ttlarea .bgtxt {
    font-size: 18vw;
    left: 50%;
    transform: translateX(-50%) scaleY(0);
  }
  /* line 1074, ../_module.scss */
  .bg_ttlarea .bgtxt.on {
    animation: scale_y01 0.3s ease forwards;
  }
}

/* line 1081, ../_module.scss */
.commentbox {
  position: absolute;
  left: 50%;
  top: -55px;
  box-shadow: 0px 25px 30px -7px rgba(0, 0, 0, 0.25);
  transform: translateX(-50%);
  background: white;
  border-radius: 300px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px 0;
  width: 254px;
  border: 1px solid #eaeaea;
  flex-wrap: wrap;
}
@media screen and (max-width: 896px) {
  /* line 1081, ../_module.scss */
  .commentbox {
    width: 200px;
    padding: 14px 0;
  }
}
/* line 1100, ../_module.scss */
.commentbox::before, .commentbox::after {
  border: solid transparent;
  content: "";
  height: 0;
  width: 0;
  pointer-events: none;
  box-shadow: 0px 25px 30px -7px rgba(0, 0, 0, 0.25);
  position: absolute;
  top: 100%;
  left: 50%;
}
/* line 1112, ../_module.scss */
.commentbox::before {
  border-color: rgba(255, 255, 255, 0);
  border-top-width: 20px;
  border-bottom-width: 20px;
  border-left-width: 10px;
  border-right-width: 10px;
  margin-left: -10px;
  margin-top: -4px;
  border-top-color: #ffffff;
}
/* line 1122, ../_module.scss */
.commentbox::after {
  border-color: rgba(247, 247, 247, 0);
  border-top-width: 17px;
  border-bottom-width: 17px;
  border-left-width: 10px;
  border-right-width: 10px;
  margin-left: -10px;
  border-top-color: #f7f7f7;
}
/* line 1131, ../_module.scss */
.commentbox .red {
  display: block;
  width: 100%;
  font-weight: bold;
  color: #ea071d;
  font-size: 12px;
  margin-bottom: 8px;
  letter-spacing: 0.05em;
}
/* line 1140, ../_module.scss */
.commentbox .maintxt {
  font-weight: bold;
  display: block;
  width: 100%;
  font-size: 20px;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 896px) {
  /* line 1140, ../_module.scss */
  .commentbox .maintxt {
    font-size: 15px;
  }
}

/* line 1151, ../_module.scss */
.common_prof {
  display: flex;
  flex-direction: column;
  gap: 0.571vw 0;
}
@media screen and (max-width: 896px) {
  /* line 1151, ../_module.scss */
  .common_prof {
    gap: 2vw 0;
  }
}
/* line 1158, ../_module.scss */
.common_prof_flx {
  gap: 0 0.5vw;
  align-items: center;
}
@media screen and (max-width: 896px) {
  /* line 1158, ../_module.scss */
  .common_prof_flx {
    gap: 0 3.5vw;
  }
}
/* line 1164, ../_module.scss */
.common_prof_flx_position {
  border-radius: 7.143vw;
  background: #ea071d;
  color: white;
  width: max-content;
  white-space: nowrap;
  font-weight: bold;
  padding: 0.286vw 1.143vw;
  font-size: 1vw;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 896px) {
  /* line 1164, ../_module.scss */
  .common_prof_flx_position {
    font-size: 4vw;
    background: white;
    color: #ea071d;
    padding: 1vw 3vw;
  }
}
/* line 1181, ../_module.scss */
.common_prof_flx_year {
  color: white;
  font-size: 1vw;
  letter-spacing: 0.05em;
  font-weight: bold;
}
@media screen and (max-width: 896px) {
  /* line 1181, ../_module.scss */
  .common_prof_flx_year {
    font-size: 4vw;
  }
}
/* line 1191, ../_module.scss */
.common_prof_name {
  color: white;
  font-weight: bold;
  font-size: 2.286vw;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 896px) {
  /* line 1191, ../_module.scss */
  .common_prof_name {
    font-size: 7vw;
  }
}

/* line 1202, ../_module.scss */
.bg_ttlarea02 {
  position: relative;
}
/* line 1204, ../_module.scss */
.bg_ttlarea02 .jp {
  color: #ea071d;
  font-size: 24px;
  font-weight: bold;
  letter-spacing: 2px;
  transition-delay: 0.3s;
  display: block;
  z-index: 4;
}
@media screen and (min-width: 897px) {
  /* line 1204, ../_module.scss */
  .bg_ttlarea02 .jp {
    top: 50%;
    left: 60px;
    position: absolute;
    transform: translate(0, -47%);
  }
}
@media screen and (max-width: 896px) {
  /* line 1204, ../_module.scss */
  .bg_ttlarea02 .jp {
    position: relative;
    z-index: 2;
  }
}
/* line 1222, ../_module.scss */
.bg_ttlarea02 .jp.on {
  transform: translate(0, -50%);
}
/* line 1226, ../_module.scss */
.bg_ttlarea02 .en {
  font-weight: bold;
  font-size: 100px;
  color: #f7f5f5;
  display: block;
}
@media screen and (max-width: 896px) {
  /* line 1226, ../_module.scss */
  .bg_ttlarea02 .en {
    top: 50%;
    left: 50%;
    position: absolute;
    transform: translate(-50%, -50%) scaleX(0);
    font-size: 16vw;
  }
  /* line 1237, ../_module.scss */
  .bg_ttlarea02 .en.on {
    animation: scale_y02 0.3s ease forwards;
  }
}

/* line 1243, ../_module.scss */
.circle-hover,
.transformlink {
  position: relative;
}
/* line 1246, ../_module.scss */
.circle-hover .circle-hover-after,
.transformlink .circle-hover-after {
  background: #ea071d;
  width: 100%;
  height: 100%;
  transform: translate(-50%, -50%);
  left: 50%;
  top: 50%;
  transition: all 0.3s;
  position: absolute;
  content: "";
  border-radius: 50%;
}
/* line 1258, ../_module.scss */
.circle-hover .circle-hover-before,
.transformlink .circle-hover-before {
  z-index: 2;
  background: white;
  width: calc(100% - 8px);
  opacity: 0;
  transition: all 0.3s;
  height: calc(100% - 8px);
  transform: translate(-50%, -50%) scale(0);
  left: 50%;
  top: 50%;
  position: absolute;
  content: "";
  border-radius: 50%;
}
@media screen and (min-width: 897px) {
  /* line 1274, ../_module.scss */
  .circle-hover:hover .circle-hover-before,
  .transformlink:hover .circle-hover-before {
    transform: translate(-50%, -50%) scale(1.2);
    opacity: 1;
  }
  /* line 1280, ../_module.scss */
  .circle-hover:hover .circle-hover-after,
  .transformlink:hover .circle-hover-after {
    transform: translate(-50%, -50%) scale(1.2);
  }
}

/* line 1290, ../_module.scss */
.common_txtbox .common_txtbox_lead {
  margin-bottom: 16px;
}
@media screen and (max-width: 896px) {
  /* line 1290, ../_module.scss */
  .common_txtbox .common_txtbox_lead {
    display: flex;
    flex-direction: column;
    gap: 4px 0;
  }
}
/* line 1297, ../_module.scss */
.common_txtbox .common_txtbox_lead .scr_cvr {
  background: #ea071d;
  color: white;
  font-weight: bold;
  padding: 8px 10px 9px;
  font-size: 20px;
  letter-spacing: 0.05em;
  width: max-content;
}
@media screen and (max-width: 896px) {
  /* line 1297, ../_module.scss */
  .common_txtbox .common_txtbox_lead .scr_cvr {
    font-size: 15px;
    line-height: 1.5;
    padding: 7px 5px;
  }
}
@media screen and (max-width: 896px) {
  /* line 1310, ../_module.scss */
  .common_txtbox .common_txtbox_lead .scr_cvr.pc {
    display: none;
  }
}
/* line 1315, ../_module.scss */
.common_txtbox .common_txtbox_lead .scr_cvr.sp {
  display: none;
}
@media screen and (max-width: 896px) {
  /* line 1315, ../_module.scss */
  .common_txtbox .common_txtbox_lead .scr_cvr.sp {
    display: block;
  }
}
/* line 1323, ../_module.scss */
.common_txtbox .common_txtbox_ttl {
  font-size: clamp(30px, 2.6vw, 38px);
  line-height: 1.5;
  margin-bottom: 20px;
  font-weight: 900;
}
@media screen and (max-width: 896px) {
  /* line 1323, ../_module.scss */
  .common_txtbox .common_txtbox_ttl {
    font-size: 22px;
    margin-bottom: 14px;
  }
}
/* line 1333, ../_module.scss */
.common_txtbox .common_txtbox_txt {
  font-size: 16px;
  line-height: 2;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 896px) {
  /* line 1333, ../_module.scss */
  .common_txtbox .common_txtbox_txt {
    font-size: 14px;
  }
}

/* line 1343, ../_module.scss */
.shape_anim {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0;
  transition: opacity 0.3s;
}
/* line 1351, ../_module.scss */
.shape_anim.on {
  opacity: 1;
}
/* line 1354, ../_module.scss */
.shape_anim .shape {
  left: 50%;
  transform: translate(-50%, 0);
  position: absolute;
  width: 95%;
}
/* line 1359, ../_module.scss */
.shape_anim .shape.shape01 {
  animation: shape01 6s ease-in-out infinite alternate;
}
/* line 1361, ../_module.scss */
.shape_anim .shape.shape01 img {
  animation: FloatHorizontal 15s ease-in-out infinite alternate;
}
/* line 1365, ../_module.scss */
.shape_anim .shape.shape02 {
  animation: shape02 6s ease-in-out infinite alternate;
}
/* line 1367, ../_module.scss */
.shape_anim .shape.shape02 img {
  animation: FloatVertical 15s ease-in-out infinite alternate;
}

@keyframes FloatHorizontal {
  0% {
    transform: translate3d(2vw, 0, 0);
  }
  50% {
    transform: translate3d(-2vw, 0, 0);
  }
  100% {
    transform: translate3d(2vw, 0, 0);
  }
}
@keyframes FloatVertical {
  0% {
    transform: translate3d(0, 2vw, 0);
  }
  50% {
    transform: translate3d(0, -2vw, 0);
  }
  100% {
    transform: translate3d(0, 2vw, 0);
  }
}
@keyframes shape01 {
  0% {
    transform: rotate(3deg) translate(-49%, -1%) scale(0.98);
    transform-origin: left;
  }
  25% {
    transform: rotate(0deg) translate(-50%, 0) scale(1.02);
  }
  50% {
    transform: rotate(-3deg) translate(-51%, 1%) scale(0.98);
  }
  75% {
    transform: rotate(0deg) translate(-50%, 0) scale(1.02);
  }
  100% {
    transform: rotate(3deg) translate(-49%, -1%) scale(0.98);
    transform-origin: left;
  }
}
@keyframes shape02 {
  0% {
    transform: rotate(3deg) translate(-51%, 1%) scale(1.02);
    transform-origin: left;
  }
  25% {
    transform: rotate(0deg) translate(-50%, 0) scale(0.98);
  }
  50% {
    transform: rotate(-3deg) translate(-49%, -1%) scale(1.02);
  }
  75% {
    transform: rotate(0deg) translate(-50%, 0) scale(0.98);
  }
  100% {
    transform: rotate(3deg) translate(-51%, 1%) scale(1.02);
    transform-origin: left;
  }
}
@keyframes shape_move01 {
  0% {
    transform: rotate(3deg) translate(-49%, -1%) scale(0.98);
    transform-origin: left;
  }
  25% {
    transform: rotate(0deg) translate(-50%, 0) scale(1.02);
  }
  50% {
    transform: rotate(-3deg) translate(-51%, 1%) scale(0.98);
  }
  75% {
    transform: rotate(0deg) translate(-50%, 0) scale(1.02);
  }
  100% {
    transform: rotate(3deg) translate(-49%, -1%) scale(0.98);
    transform-origin: left;
  }
}
@keyframes shape_move02 {
  0% {
    transform: rotate(3deg) translate(-51%, 1%) scale(1.02);
    transform-origin: left;
  }
  25% {
    transform: rotate(0deg) translate(-50%, 0) scale(0.98);
  }
  50% {
    transform: rotate(-3deg) translate(-49%, -1%) scale(1.02);
  }
  75% {
    transform: rotate(0deg) translate(-50%, 0) scale(0.98);
  }
  100% {
    transform: rotate(3deg) translate(-51%, 1%) scale(1.02);
    transform-origin: left;
  }
}
@keyframes shape_move03 {
  0% {
    transform: rotate(177deg) translate(-49%, -1%) scale(0.98);
    transform-origin: left;
  }
  25% {
    transform: rotate(180deg) translate(-50%, 0) scale(1.02);
  }
  50% {
    transform: rotate(183deg) translate(-51%, 1%) scale(0.98);
  }
  75% {
    transform: rotate(180deg) translate(-50%, 0) scale(1.02);
  }
  100% {
    transform: rotate(177deg) translate(-49%, -1%) scale(0.98);
    transform-origin: left;
  }
}
@keyframes shape_move04 {
  0% {
    transform: rotate(177deg) translate(-51%, 1%) scale(1.02);
    transform-origin: left;
  }
  25% {
    transform: rotate(180deg) translate(-50%, 0) scale(0.98);
  }
  50% {
    transform: rotate(183deg) translate(-49%, -1%) scale(1.02);
  }
  75% {
    transform: rotate(180deg) translate(-50%, 0) scale(0.98);
  }
  100% {
    transform: rotate(177deg) translate(-51%, 1%) scale(1.02);
    transform-origin: left;
  }
}
@keyframes mainttl_deco {
  0% {
    transform: translate(0, -50%) scaleX(0);
  }
  75% {
    transform: translate(0, -50%) scaleX(1.15);
  }
  100% {
    transform: translate(0, -50%) scaleX(1);
  }
}
@keyframes mainttl_circle {
  0% {
    transform: translate(-50%, -50%) scale(0);
  }
  75% {
    transform: translate(-50%, -50%) scale(1.5);
  }
  100% {
    transform: translate(-50%, -50%) scale(1);
  }
}
@keyframes circle_link {
  0% {
    transform: translate(-50%, -50%) scale(1);
  }
  75% {
    transform: translate(-50%, -50%) scale(1.2);
  }
  100% {
    transform: translate(-50%, -50%) scale(1);
  }
}
/* line 4, ../_layout.scss */
.sp {
  display: none;
}
@media screen and (max-width: 896px) {
  /* line 4, ../_layout.scss */
  .sp {
    display: block;
  }
}

@media screen and (max-width: 896px) {
  /* line 10, ../_layout.scss */
  .pc {
    display: none;
  }
}

/* line 15, ../_layout.scss */
.inner {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}

/* line 20, ../_layout.scss */
.outer {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}

/* line 26, ../_layout.scss */
.header {
  position: relative;
}
@media screen and (max-width: 896px) {
  /* line 31, ../_layout.scss */
  .header.open .header_inner .nav_bg {
    opacity: 1;
    z-index: 10000;
    height: 100vh;
  }
  /* line 38, ../_layout.scss */
  .header .nav_bg {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 0;
    background-color: rgba(0, 0, 0, 0.7);
    opacity: 0;
  }
}

/* line 51, ../_layout.scss */
.under_mv {
  background-color: #ea071d;
  margin-top: 120px;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 896px) {
  /* line 51, ../_layout.scss */
  .under_mv {
    margin-top: 59px;
  }
}
/* line 59, ../_layout.scss */
.under_mv .text_box {
  padding: 56px 10%;
}
@media screen and (max-width: 896px) {
  /* line 59, ../_layout.scss */
  .under_mv .text_box {
    padding: 42px 5%;
  }
}
/* line 64, ../_layout.scss */
.under_mv .text_box h2 {
  color: #fff;
  font-size: 80px;
}
@media screen and (max-width: 896px) {
  /* line 64, ../_layout.scss */
  .under_mv .text_box h2 {
    font-size: 40px;
  }
}
/* line 71, ../_layout.scss */
.under_mv .text_box .title {
  padding-left: 34px;
  margin-top: 24px;
}
@media screen and (max-width: 896px) {
  /* line 71, ../_layout.scss */
  .under_mv .text_box .title {
    padding-left: 24px;
    margin-top: 22px;
  }
}
/* line 78, ../_layout.scss */
.under_mv .text_box .title span {
  font-size: 20px;
  letter-spacing: 0.2em;
  color: #fff;
  position: relative;
  font-weight: bold;
}
/* line 84, ../_layout.scss */
.under_mv .text_box .title span::after {
  position: absolute;
  content: "●";
  color: #fff;
  top: 8px;
  left: -28px;
  font-size: 14px;
}
@media screen and (max-width: 896px) {
  /* line 84, ../_layout.scss */
  .under_mv .text_box .title span::after {
    font-size: 10px;
    left: -20px;
  }
}
@media screen and (max-width: 896px) {
  /* line 78, ../_layout.scss */
  .under_mv .text_box .title span {
    font-size: 16px;
  }
}
/* line 102, ../_layout.scss */
.under_mv.type_img {
  position: relative;
}
@media screen and (max-width: 896px) {
  /* line 102, ../_layout.scss */
  .under_mv.type_img {
    display: block;
  }
}
/* line 108, ../_layout.scss */
.under_mv.type_img .text_box .en {
  line-height: 0.96;
}

/* line 118, ../_layout.scss */
body.loaded .under_mv .fade_right,
body.loaded .under_firstview .fade_right {
  opacity: 1;
  transform: translateX(0%);
}
/* line 124, ../_layout.scss */
body.loaded .under_lead .img_ap {
  opacity: 1;
}
/* line 126, ../_layout.scss */
body.loaded .under_lead .img_ap img {
  transform: scale(1);
}
/* line 129, ../_layout.scss */
body.loaded .under_lead .img_ap::after {
  animation: img_ap 0.6s cubic-bezier(0.52, 0.11, 0.05, 0.89) forwards;
}
@media screen and (min-width: 897px) {
  /* line 133, ../_layout.scss */
  body.loaded .under_lead .fade_y {
    opacity: 1;
    transform: translateY(0%);
  }
}

/* line 143, ../_layout.scss */
.header {
  position: fixed;
  z-index: 100;
}
@media screen and (min-width: 897px) {
  /* line 143, ../_layout.scss */
  .header {
    top: 0;
    left: 0;
    width: 100%;
    height: 100px;
    padding: 0 6% 0 3%;
    opacity: 1;
    transition: all cubic-bezier(0.22, 1, 0.36, 1) 0.4s;
    pointer-events: auto;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
@media screen and (max-width: 896px) {
  /* line 143, ../_layout.scss */
  .header {
    margin-top: 0;
    padding: 14px 5%;
    position: fixed;
    top: 0;
    width: 100%;
    left: 0;
    z-index: 10000;
  }
}
/* line 169, ../_layout.scss */
.header.bg_on {
  background: white;
}
@media screen and (min-width: 897px) {
  /* line 169, ../_layout.scss */
  .header.bg_on {
    height: 70px;
  }
}
/* line 177, ../_layout.scss */
.header.bg_on .header_inner .logo a .header_logo {
  transition: all cubic-bezier(0.22, 1, 0.36, 1) 0.4s;
  width: 220px;
}
@media screen and (max-width: 896px) {
  /* line 177, ../_layout.scss */
  .header.bg_on .header_inner .logo a .header_logo {
    width: 180px;
  }
}
/* line 191, ../_layout.scss */
.header.bg_on .header_inner .nav__mainnav ul li .parent_list.entry::before {
  width: 136px;
  height: 136px;
  transition: all cubic-bezier(0.22, 1, 0.36, 1) 0.4s;
}
/* line 203, ../_layout.scss */
.header.hide {
  opacity: 0;
  pointer-events: none;
}
/* line 207, ../_layout.scss */
.header .header_inner {
  width: 100%;
}
/* line 209, ../_layout.scss */
.header .header_inner .logo {
  display: flex;
  align-items: center;
}
@media screen and (min-width: 897px) {
  /* line 216, ../_layout.scss */
  .header .header_inner .logo a:hover {
    opacity: 0.7;
  }
}
/* line 220, ../_layout.scss */
.header .header_inner .logo a .header_logo {
  width: 257px;
  transition: all cubic-bezier(0.22, 1, 0.36, 1) 0.4s;
}
@media screen and (max-width: 896px) {
  /* line 220, ../_layout.scss */
  .header .header_inner .logo a .header_logo {
    width: 180px;
  }
}
/* line 227, ../_layout.scss */
.header .header_inner .logo a p {
  font-size: 14px;
  font-weight: 900;
  letter-spacing: 0.05em;
  margin-left: 22px;
}
@media screen and (max-width: 896px) {
  /* line 227, ../_layout.scss */
  .header .header_inner .logo a p {
    font-size: 10px;
    margin-left: 15px;
  }
}
/* line 239, ../_layout.scss */
.header .header_inner .menuBtn {
  display: none;
}
@media screen and (max-width: 896px) {
  /* line 239, ../_layout.scss */
  .header .header_inner .menuBtn {
    cursor: pointer;
    z-index: 10002;
    transition: 0.3s;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 31px;
    height: 31px;
  }
  /* line 258, ../_layout.scss */
  .header .header_inner .menuBtn.open {
    transform: translateX(0%);
  }
  /* line 261, ../_layout.scss */
  .header .header_inner .menuBtn.close {
    transform: translateX(0%) !important;
  }
  /* line 264, ../_layout.scss */
  .header .header_inner .menuBtn span {
    width: 31px;
    height: 2px;
    background: #ea071d;
    display: block;
    min-height: 0%;
    transition: 0.3s;
  }
  /* line 271, ../_layout.scss */
  .header .header_inner .menuBtn span:nth-of-type(2) {
    margin: 4px 0;
  }
  /* line 279, ../_layout.scss */
  .header .header_inner .menuBtn .txt {
    width: 100%;
    display: block;
    text-align: center;
    color: #ea071d;
    font-weight: bold;
    font-size: 10px;
    transition: 0.3s;
    letter-spacing: 0.01em;
    margin-top: 5px;
  }
  /* line 291, ../_layout.scss */
  .header .header_inner .menuBtn.close span {
    background: white;
    transform: rotate(20deg);
  }
  /* line 294, ../_layout.scss */
  .header .header_inner .menuBtn.close span:nth-of-type(1) {
    margin-top: 0px;
  }
  /* line 297, ../_layout.scss */
  .header .header_inner .menuBtn.close span:nth-of-type(2) {
    width: 100%;
    margin-top: -2px;
    transform: rotate(-20deg);
  }
  /* line 302, ../_layout.scss */
  .header .header_inner .menuBtn.close span:last-child {
    opacity: 0;
  }
}
@media screen and (max-width: 896px) and (max-width: 896px) {
  /* line 306, ../_layout.scss */
  .header .header_inner .menuBtn.close .txt {
    transition: 0.3s;
    color: white;
  }
}

/* line 315, ../_layout.scss */
.header .header_inner .nav {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 896px) {
  /* line 315, ../_layout.scss */
  .header .header_inner .nav {
    display: none;
  }
}
@media screen and (max-width: 896px) {
  /* line 321, ../_layout.scss */
  .header .header_inner .nav__mainnav {
    padding: 20px 5%;
  }
}
/* line 327, ../_layout.scss */
.header .header_inner .nav__mainnav ul {
  justify-content: center;
  padding-right: 10px;
  padding-left: 10px;
}
@media screen and (max-width: 896px) {
  /* line 327, ../_layout.scss */
  .header .header_inner .nav__mainnav ul {
    display: block;
  }
}
@media screen and (min-width: 897px) {
  /* line 335, ../_layout.scss */
  .header .header_inner .nav__mainnav ul li:not(:last-child) {
    margin-right: 24px;
  }
}
@media screen and (max-width: 896px) {
  /* line 335, ../_layout.scss */
  .header .header_inner .nav__mainnav ul li:not(:last-child) {
    margin-bottom: 6px;
  }
}
/* line 343, ../_layout.scss */
.header .header_inner .nav__mainnav ul li:last-child {
  margin-left: 60px;
}
/* line 346, ../_layout.scss */
.header .header_inner .nav__mainnav ul li .parent_list {
  font-size: 1.4rem;
  display: block;
  font-weight: bold;
  letter-spacing: 0.04em;
  color: #000;
  white-space: nowrap;
}
@media screen and (min-width: 897px) {
  /* line 346, ../_layout.scss */
  .header .header_inner .nav__mainnav ul li .parent_list {
    position: relative;
  }
  /* line 355, ../_layout.scss */
  .header .header_inner .nav__mainnav ul li .parent_list:hover {
    color: #ea071d;
  }
}
/* line 361, ../_layout.scss */
.header .header_inner .nav__mainnav ul li .parent_list span img {
  width: 14px;
}
/* line 365, ../_layout.scss */
.header .header_inner .nav__mainnav ul li .parent_list.modal_list {
  margin-right: 16px;
}
/* line 367, ../_layout.scss */
.header .header_inner .nav__mainnav ul li .parent_list.modal_list::after {
  position: absolute;
  content: "";
  top: 4px;
  right: -16px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8.7px 5px 0 5px;
  border-color: #ea071d transparent transparent transparent;
}
/* line 379, ../_layout.scss */
.header .header_inner .nav__mainnav ul li .parent_list.document {
  color: #ea071d;
  border: 1px solid #ea071d;
  padding: 13px;
  border-radius: 4px;
}
/* line 384, ../_layout.scss */
.header .header_inner .nav__mainnav ul li .parent_list.document::after {
  display: none;
}
/* line 388, ../_layout.scss */
.header .header_inner .nav__mainnav ul li .parent_list.entry {
  width: 64px;
  z-index: 1;
  position: relative;
}
/* line 408, ../_layout.scss */
.header .header_inner .nav__mainnav ul li .parent_list.entry img {
  position: relative;
  z-index: 3;
  filter: brightness(0) invert(1);
  transition: 0.3s;
}
/* line 414, ../_layout.scss */
.header .header_inner .nav__mainnav ul li .parent_list.entry .circle-hover-before {
  width: 178px;
  height: 178px;
}
/* line 418, ../_layout.scss */
.header .header_inner .nav__mainnav ul li .parent_list.entry .circle-hover-after {
  width: 186px;
  height: 186px;
}
/* line 422, ../_layout.scss */
.header .header_inner .nav__mainnav ul li .parent_list.entry::after {
  display: none;
}
/* line 426, ../_layout.scss */
.header .header_inner .nav__mainnav ul li .parent_list.entry:hover .circle-hover-after,
.header .header_inner .nav__mainnav ul li .parent_list.entry:hover .circle-hover-before {
  transform: translate(-50%, -50%) scale(1);
}
/* line 430, ../_layout.scss */
.header .header_inner .nav__mainnav ul li .parent_list.entry:hover img {
  filter: brightness(1) invert(0);
  transition: 0.3s;
}
/* line 438, ../_layout.scss */
.header .header_inner .nav__mainnav ul .modal_link {
  position: relative;
}
/* line 441, ../_layout.scss */
.header .header_inner .nav__mainnav ul .modal_link .modal .inner {
  display: none;
  position: absolute;
  top: 16px;
  left: 0;
  padding-top: 14px;
}
/* line 447, ../_layout.scss */
.header .header_inner .nav__mainnav ul .modal_link .modal .inner ul {
  background-color: #ea071d;
  width: 222px;
  padding: 20px 40px;
  position: relative;
}
/* line 452, ../_layout.scss */
.header .header_inner .nav__mainnav ul .modal_link .modal .inner ul.short {
  width: 206px;
}
/* line 455, ../_layout.scss */
.header .header_inner .nav__mainnav ul .modal_link .modal .inner ul li {
  margin: 0;
  display: inline-block;
}
/* line 458, ../_layout.scss */
.header .header_inner .nav__mainnav ul .modal_link .modal .inner ul li:last-child {
  margin-bottom: 0;
}
/* line 461, ../_layout.scss */
.header .header_inner .nav__mainnav ul .modal_link .modal .inner ul li a {
  padding: 6px 4px;
  display: inline-block;
}
/* line 464, ../_layout.scss */
.header .header_inner .nav__mainnav ul .modal_link .modal .inner ul li a:hover {
  background-color: #fff;
}
/* line 466, ../_layout.scss */
.header .header_inner .nav__mainnav ul .modal_link .modal .inner ul li a:hover span {
  color: #ea071d;
}
/* line 470, ../_layout.scss */
.header .header_inner .nav__mainnav ul .modal_link .modal .inner ul li a span {
  color: #fff;
  font-size: 14px;
  letter-spacing: 0.05em;
  transition: 0.3s;
  position: relative;
}
/* line 476, ../_layout.scss */
.header .header_inner .nav__mainnav ul .modal_link .modal .inner ul li a span::after {
  position: absolute;
  content: "";
  top: 7px;
  left: -18px;
  width: 8px;
  height: 8px;
  background: #fff;
  border-radius: 50%;
}
/* line 493, ../_layout.scss */
.header .header_inner .nav__mainnav ul .doc {
  margin-right: 5px !important;
}
/* line 501, ../_layout.scss */
.header .menu {
  width: 270px;
  position: fixed;
  right: -100%;
  top: 0;
  height: 100vh;
  padding: 100px 10%;
  background-color: #ea071d;
  transition: 0.6s;
  z-index: 10001;
  overflow-y: scroll;
}
@media screen and (max-width: 896px) {
  /* line 501, ../_layout.scss */
  .header .menu {
    padding: 70px 0;
    height: 100dvh;
  }
}
/* line 516, ../_layout.scss */
.header .menu.on {
  right: 0;
}
/* line 520, ../_layout.scss */
.header .menu .menu_lists .menu_list {
  padding: 23px 5vw;
  border-top: 1px white dashed;
  border-right: none;
  border-left: none;
}
/* line 525, ../_layout.scss */
.header .menu .menu_lists .menu_list:last-child {
  border-bottom: 1px white dashed;
}
/* line 528, ../_layout.scss */
.header .menu .menu_lists .menu_list > a {
  color: white;
  font-weight: bold;
  letter-spacing: 0.1em;
  font-size: 15px;
  width: 100%;
  display: block;
  position: relative;
}
/* line 536, ../_layout.scss */
.header .menu .menu_lists .menu_list > a::after {
  content: "";
  position: absolute;
  background: url(../../img/recruit/ico_arrow_wht01.png) no-repeat;
  background-size: contain;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 15px;
  height: 12px;
  right: 0;
  top: 50%;
  transform: translate(0, -50%);
}
/* line 551, ../_layout.scss */
.header .menu .menu_lists .menu_list .child_lists {
  display: flex;
  flex-direction: column;
  margin-top: 20px;
  gap: 12px 0px;
  padding-left: 4px;
}
@media screen and (max-width: 896px) {
  /* line 557, ../_layout.scss */
  .header .menu .menu_lists .menu_list .child_lists .child_list {
    margin-bottom: 4px;
  }
  /* line 560, ../_layout.scss */
  .header .menu .menu_lists .menu_list .child_lists .child_list:last-child {
    margin-bottom: 0;
  }
}
/* line 564, ../_layout.scss */
.header .menu .menu_lists .menu_list .child_lists .child_list a {
  color: white;
  font-size: 12px;
  letter-spacing: 0.1em;
  padding: 5px 15px;
  font-weight: normal;
  position: relative;
}
/* line 571, ../_layout.scss */
.header .menu .menu_lists .menu_list .child_lists .child_list a::after {
  content: "";
  display: block;
  position: absolute;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background-color: #fff;
  left: 0;
  top: 50%;
  transform: translate(0, -50%);
}

/* line 591, ../_layout.scss */
.footer {
  position: relative;
}
@media screen and (max-width: 896px) {
  /* line 591, ../_layout.scss */
  .footer {
    padding: 65px 0 0;
  }
}
@media screen and (min-width: 897px) {
  /* line 596, ../_layout.scss */
  .footer .logo {
    padding-top: 44px;
  }
}
@media screen and (max-width: 896px) {
  /* line 596, ../_layout.scss */
  .footer .logo {
    margin: auto;
  }
}
/* line 603, ../_layout.scss */
.footer .logo a {
  display: block;
  margin: 0 auto;
}
@media screen and (min-width: 897px) {
  /* line 603, ../_layout.scss */
  .footer .logo a {
    width: 300px;
  }
  /* line 606, ../_layout.scss */
  .footer .logo a:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 896px) {
  /* line 603, ../_layout.scss */
  .footer .logo a {
    width: 224px;
  }
}
/* line 616, ../_layout.scss */
.footer .logo p {
  text-align: center;
  font-size: 14px;
  font-weight: 900;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 897px) {
  /* line 616, ../_layout.scss */
  .footer .logo p {
    padding-left: 56px;
  }
}
@media screen and (max-width: 896px) {
  /* line 616, ../_layout.scss */
  .footer .logo p {
    padding-left: 48px;
  }
}
/* line 630, ../_layout.scss */
.footer .link_wrap {
  margin-top: 100px;
  padding: 0 10%;
}
@media screen and (max-width: 896px) {
  /* line 630, ../_layout.scss */
  .footer .link_wrap {
    padding: 0 0 50px;
    margin-top: 55px;
    flex-direction: column;
  }
}
@media screen and (min-width: 897px) {
  /* line 638, ../_layout.scss */
  .footer .link_wrap .left_block {
    width: 80%;
  }
}
@media screen and (max-width: 896px) {
  /* line 638, ../_layout.scss */
  .footer .link_wrap .left_block {
    width: 90vw;
    margin: 0 auto;
  }
}
/* line 646, ../_layout.scss */
.footer .link_wrap .left_block .block {
  display: flex;
}
@media screen and (max-width: 896px) {
  /* line 646, ../_layout.scss */
  .footer .link_wrap .left_block .block {
    flex-direction: column;
  }
}
@media screen and (min-width: 897px) {
  /* line 652, ../_layout.scss */
  .footer .link_wrap .left_block .block.under .parent_link {
    margin-bottom: 92px;
  }
}
@media screen and (max-width: 896px) {
  /* line 657, ../_layout.scss */
  .footer .link_wrap .left_block .block.under:nth-last-of-type(1) {
    border-bottom: 1px dotted black;
  }
}
/* line 663, ../_layout.scss */
.footer .link_wrap .left_block .block .parent_link,
.footer .link_wrap .left_block .block .link_list {
  white-space: nowrap;
}
@media screen and (min-width: 897px) {
  /* line 663, ../_layout.scss */
  .footer .link_wrap .left_block .block .parent_link,
  .footer .link_wrap .left_block .block .link_list {
    margin-right: 10%;
  }
}
@media screen and (min-width: 897px) {
  /* line 671, ../_layout.scss */
  .footer .link_wrap .left_block .block .parent_link a:hover,
  .footer .link_wrap .left_block .block .link_list a:hover {
    opacity: 0.7;
  }
}
/* line 675, ../_layout.scss */
.footer .link_wrap .left_block .block .parent_link a .list_title,
.footer .link_wrap .left_block .block .link_list a .list_title {
  font-size: 16px;
  font-weight: 900;
  letter-spacing: 0.05em;
  position: relative;
}
/* line 680, ../_layout.scss */
.footer .link_wrap .left_block .block .parent_link a .list_title::after,
.footer .link_wrap .left_block .block .link_list a .list_title::after {
  position: absolute;
  content: "";
  background-color: #ea071d;
  height: 16px;
  width: 6px;
  top: 5px;
  left: -13px;
}
@media screen and (max-width: 896px) {
  /* line 680, ../_layout.scss */
  .footer .link_wrap .left_block .block .parent_link a .list_title::after,
  .footer .link_wrap .left_block .block .link_list a .list_title::after {
    left: 0;
    width: 4px;
  }
}
/* line 695, ../_layout.scss */
.footer .link_wrap .left_block .block .parent_link ul,
.footer .link_wrap .left_block .block .link_list ul {
  margin-top: 28px;
}
@media screen and (max-width: 896px) {
  /* line 695, ../_layout.scss */
  .footer .link_wrap .left_block .block .parent_link ul,
  .footer .link_wrap .left_block .block .link_list ul {
    margin-top: 8px;
    padding-left: 16px;
    margin-bottom: 23px;
  }
}
/* line 702, ../_layout.scss */
.footer .link_wrap .left_block .block .parent_link ul li,
.footer .link_wrap .left_block .block .link_list ul li {
  margin-bottom: 15px;
}
/* line 704, ../_layout.scss */
.footer .link_wrap .left_block .block .parent_link ul li a,
.footer .link_wrap .left_block .block .link_list ul li a {
  position: relative;
}
@media screen and (max-width: 896px) {
  /* line 704, ../_layout.scss */
  .footer .link_wrap .left_block .block .parent_link ul li a,
  .footer .link_wrap .left_block .block .link_list ul li a {
    display: block;
  }
}
@media screen and (min-width: 897px) {
  /* line 710, ../_layout.scss */
  .footer .link_wrap .left_block .block .parent_link ul li a:hover,
  .footer .link_wrap .left_block .block .link_list ul li a:hover {
    color: #ea071d;
  }
}
/* line 714, ../_layout.scss */
.footer .link_wrap .left_block .block .parent_link ul li a span,
.footer .link_wrap .left_block .block .link_list ul li a span {
  font-size: 14px;
  letter-spacing: 0.2em;
  font-weight: 500;
}
@media screen and (max-width: 896px) {
  /* line 714, ../_layout.scss */
  .footer .link_wrap .left_block .block .parent_link ul li a span,
  .footer .link_wrap .left_block .block .link_list ul li a span {
    position: relative;
  }
  /* line 720, ../_layout.scss */
  .footer .link_wrap .left_block .block .parent_link ul li a span::after,
  .footer .link_wrap .left_block .block .link_list ul li a span::after {
    content: "";
    display: block;
    position: absolute;
    left: 5px;
    top: 50%;
    transform: translate(0, -50%);
    background: #ea071d;
    width: 4px;
    height: 4px;
    border-radius: 50%;
  }
}
@media screen and (min-width: 897px) {
  /* line 740, ../_layout.scss */
  .footer .link_wrap .left_block .block .parent_link:hover {
    color: #ea071d;
  }
}
/* line 744, ../_layout.scss */
.footer .link_wrap .left_block .block .parent_link span {
  font-size: 16px;
  font-weight: 900;
  letter-spacing: 0.05em;
  position: relative;
}
@media screen and (max-width: 896px) {
  /* line 744, ../_layout.scss */
  .footer .link_wrap .left_block .block .parent_link span {
    padding-left: 4vw;
  }
}
/* line 752, ../_layout.scss */
.footer .link_wrap .left_block .block .parent_link span::after {
  position: absolute;
  content: "";
  background-color: #ea071d;
  height: 16px;
  width: 6px;
  top: 5px;
  left: -13px;
}
@media screen and (max-width: 896px) {
  /* line 752, ../_layout.scss */
  .footer .link_wrap .left_block .block .parent_link span::after {
    width: 4px;
    left: 0;
  }
}
/* line 767, ../_layout.scss */
.footer .link_wrap .left_block .block .link_list {
  margin-bottom: 28px;
}
@media screen and (max-width: 896px) {
  /* line 767, ../_layout.scss */
  .footer .link_wrap .left_block .block .link_list {
    margin-bottom: 0;
  }
}
@media screen and (max-width: 896px) {
  /* line 772, ../_layout.scss */
  .footer .link_wrap .left_block .block .link_list span {
    padding-left: 4vw;
  }
}
@media screen and (min-width: 897px) {
  /* line 780, ../_layout.scss */
  .footer .link_wrap .left_block .block .parentstyle:hover {
    color: #ea071d;
  }
}
@media screen and (max-width: 896px) {
  /* line 778, ../_layout.scss */
  .footer .link_wrap .left_block .block .parentstyle {
    display: block;
    width: 100%;
    padding: 18px 0;
    border-top: 1px dotted black;
  }
}
@media screen and (max-width: 896px) {
  /* line 791, ../_layout.scss */
  .footer .link_wrap .left_block .block a.parentstyle {
    position: relative;
  }
  /* line 794, ../_layout.scss */
  .footer .link_wrap .left_block .block a.parentstyle::after {
    content: "";
    position: absolute;
    background: url(../../img/recruit/ico_arrow_red01.png) no-repeat;
    background-size: contain;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 15px;
    height: 12px;
    right: 4vw;
    top: 50%;
    transform: translate(0, -50%);
  }
}
/* line 812, ../_layout.scss */
.footer .link_wrap .right_block {
  width: 20%;
}
@media screen and (max-width: 896px) {
  /* line 812, ../_layout.scss */
  .footer .link_wrap .right_block {
    width: 90vw;
    margin: 30px auto 0;
    display: flex;
    gap: 0 5vw;
  }
}
/* line 820, ../_layout.scss */
.footer .link_wrap .right_block .parent_link {
  align-items: center;
  padding-bottom: 1.071vw;
  border-bottom: 1px solid #d9d9d9;
  margin-bottom: 1.071vw;
}
@media screen and (min-width: 897px) {
  /* line 827, ../_layout.scss */
  .footer .link_wrap .right_block .parent_link:hover .text {
    color: #ea071d;
  }
}
@media screen and (max-width: 896px) {
  /* line 820, ../_layout.scss */
  .footer .link_wrap .right_block .parent_link {
    padding-bottom: 2vw;
    margin-bottom: 0;
    width: calc(50% - 2.5vw);
    gap: 0 16px;
  }
}
/* line 838, ../_layout.scss */
.footer .link_wrap .right_block .parent_link .icon {
  background-color: #ea071d;
  width: 4.571vw;
  height: 4.571vw;
  max-width: 64px;
  max-height: 64px;
  border-radius: 6px;
  display: inline-block;
  position: relative;
}
@media screen and (max-width: 896px) {
  /* line 838, ../_layout.scss */
  .footer .link_wrap .right_block .parent_link .icon {
    width: 32px;
    height: 32px;
  }
}
/* line 851, ../_layout.scss */
.footer .link_wrap .right_block .parent_link .icon .info {
  width: 2.286vw;
  max-width: 32px;
}
@media screen and (max-width: 896px) {
  /* line 851, ../_layout.scss */
  .footer .link_wrap .right_block .parent_link .icon .info {
    width: 16px;
  }
}
/* line 858, ../_layout.scss */
.footer .link_wrap .right_block .parent_link .icon .mail {
  width: 1.857vw;
  max-width: 26px;
}
@media screen and (max-width: 896px) {
  /* line 858, ../_layout.scss */
  .footer .link_wrap .right_block .parent_link .icon .mail {
    width: 13px;
  }
}
/* line 865, ../_layout.scss */
.footer .link_wrap .right_block .parent_link .icon .info,
.footer .link_wrap .right_block .parent_link .icon .mail {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
/* line 873, ../_layout.scss */
.footer .link_wrap .right_block .parent_link .text {
  font-size: clamp(12px, 1.429vw, 20px);
  letter-spacing: 0.05em;
  font-weight: 900;
  margin-left: 13%;
  white-space: nowrap;
  transition: 0.3s;
}
@media screen and (max-width: 896px) {
  /* line 873, ../_layout.scss */
  .footer .link_wrap .right_block .parent_link .text {
    font-weight: bold;
    margin-left: 0;
    font-size: 15px;
  }
}
/* line 890, ../_layout.scss */
.footer .banner_wrap {
  display: flex;
  padding: 0px 9%;
  padding-bottom: 60px;
  margin-top: -30px;
}
@media screen and (max-width: 896px) {
  /* line 890, ../_layout.scss */
  .footer .banner_wrap {
    display: block;
    padding: 0 0 50px;
    margin: 0;
  }
}
/* line 900, ../_layout.scss */
.footer .banner_wrap .banner {
  display: block;
  width: 300px;
  margin-right: 10px;
  transition: 0.3s;
}
@media screen and (min-width: 897px) {
  /* line 906, ../_layout.scss */
  .footer .banner_wrap .banner:hover {
    opacity: 0.6;
  }
}
@media screen and (max-width: 896px) {
  /* line 900, ../_layout.scss */
  .footer .banner_wrap .banner {
    margin: 0 auto 20px;
  }
  /* line 912, ../_layout.scss */
  .footer .banner_wrap .banner:nth-last-of-type(1) {
    margin-bottom: 0px;
  }
}
/* line 919, ../_layout.scss */
.footer_under {
  background-color: #f9f8f8;
  padding: 48px 10% 40px;
  border-bottom: 8px solid #ea071d;
}
@media screen and (max-width: 896px) {
  /* line 919, ../_layout.scss */
  .footer_under {
    padding: 34px 10%;
    flex-direction: column;
  }
}
/* line 927, ../_layout.scss */
.footer_under a {
  font-size: 14px;
  letter-spacing: 0.05em;
  padding-bottom: 4px;
  border-bottom: 1px solid #676767;
  font-weight: 500;
}
@media screen and (min-width: 897px) {
  /* line 934, ../_layout.scss */
  .footer_under a:hover {
    color: #ea071d;
    border-bottom: 1px solid #ea071d;
  }
}
/* line 939, ../_layout.scss */
.footer_under a .external_link {
  margin-left: 6px;
  width: 11px;
}
@media screen and (max-width: 896px) {
  /* line 939, ../_layout.scss */
  .footer_under a .external_link {
    margin-left: 4px;
  }
}
@media screen and (max-width: 896px) {
  /* line 927, ../_layout.scss */
  .footer_under a {
    width: max-content;
    font-size: 12px;
    margin: 0 auto;
  }
}
/* line 952, ../_layout.scss */
.footer_under .copyright {
  font-size: 12px;
  letter-spacing: 0.05em;
  font-weight: 500;
}
@media screen and (max-width: 896px) {
  /* line 952, ../_layout.scss */
  .footer_under .copyright {
    margin-top: 26px;
  }
}

/* line 1098, ../_layout.scss */
.cv {
  padding: 155px 0 70px;
  background: white;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 896px) {
  /* line 1098, ../_layout.scss */
  .cv {
    overflow: hidden;
    padding: 50px 0 80px;
  }
}
@media screen and (max-width: 896px) {
  /* line 1107, ../_layout.scss */
  .cv .sp_arrow {
    display: flex;
    justify-content: center;
    gap: 0 14px;
    margin-bottom: 43px;
    position: relative;
    z-index: 2;
  }
}
/* line 1116, ../_layout.scss */
.cv .sp_arrow .svg_anim {
  width: 19px;
}
/* line 1119, ../_layout.scss */
.cv .sp_arrow .svg_anim svg path {
  fill: white;
  stroke: #ea071d;
  stroke-width: 3px;
}
/* line 1127, ../_layout.scss */
.cv_txtbox {
  text-align: center;
  position: relative;
}
/* line 1130, ../_layout.scss */
.cv_txtbox_bg {
  position: absolute;
  top: 38%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (min-width: 897px) {
  /* line 1130, ../_layout.scss */
  .cv_txtbox_bg {
    width: 636px;
  }
}
@media screen and (max-width: 896px) {
  /* line 1130, ../_layout.scss */
  .cv_txtbox_bg {
    width: 88vw;
    top: 56%;
  }
}
/* line 1143, ../_layout.scss */
.cv_txtbox .cv_ttl {
  position: relative;
  z-index: 2;
}
/* line 1146, ../_layout.scss */
.cv_txtbox .cv_ttl .small {
  color: black;
  font-size: 20px;
  display: block;
  letter-spacing: 0.4em;
}
@media screen and (max-width: 896px) {
  /* line 1146, ../_layout.scss */
  .cv_txtbox .cv_ttl .small {
    font-size: 14px;
  }
}
/* line 1155, ../_layout.scss */
.cv_txtbox .cv_ttl .maintxt {
  width: max-content;
  margin: 16px auto 0;
  letter-spacing: 0.05em;
  position: relative;
  color: #ea071d;
  display: block;
  font-size: 50px;
}
@media screen and (max-width: 896px) {
  /* line 1155, ../_layout.scss */
  .cv_txtbox .cv_ttl .maintxt {
    width: 90vw;
    margin: 12px auto 18px;
    font-size: 22px;
  }
}
/* line 1168, ../_layout.scss */
.cv_txtbox .cv_ttl .maintxt .cv_arrow {
  display: flex;
  justify-content: space-between;
  position: absolute;
  top: 64%;
  transform: translateY(-50%);
  width: 116px;
}
@media screen and (max-width: 896px) {
  /* line 1168, ../_layout.scss */
  .cv_txtbox .cv_ttl .maintxt .cv_arrow {
    display: none;
  }
}
/* line 1178, ../_layout.scss */
.cv_txtbox .cv_ttl .maintxt .cv_arrow.cv_left {
  left: -200px;
}
/* line 1181, ../_layout.scss */
.cv_txtbox .cv_ttl .maintxt .cv_arrow.cv_right {
  right: -200px;
}
/* line 1184, ../_layout.scss */
.cv_txtbox .cv_ttl .maintxt .cv_arrow .svg_anim {
  width: 46px;
}
/* line 1187, ../_layout.scss */
.cv_txtbox .cv_ttl .maintxt .cv_arrow .svg_anim svg path {
  fill: white;
  stroke: #ea071d;
}
/* line 1196, ../_layout.scss */
.cv_txtbox .cv_txt {
  position: relative;
  z-index: 2;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.7;
  letter-spacing: 0.12em;
}
@media screen and (min-width: 897px) {
  /* line 1196, ../_layout.scss */
  .cv_txtbox .cv_txt {
    margin-top: 28px;
  }
}
@media screen and (max-width: 896px) {
  /* line 1196, ../_layout.scss */
  .cv_txtbox .cv_txt {
    font-size: 14px;
    padding: 0 5vw;
  }
}
/* line 1213, ../_layout.scss */
.cv_links {
  padding: 0 10vw;
  display: flex;
  margin-top: 75px;
  justify-content: center;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 896px) {
  /* line 1213, ../_layout.scss */
  .cv_links {
    padding: 0 5vw;
    margin-top: 22px;
    flex-direction: column;
  }
}
/* line 1225, ../_layout.scss */
.cv_links .cv_link {
  width: 50%;
  display: flex;
  background: white;
  align-items: center;
  justify-content: center;
  padding: 54px 0;
  border: 4px solid #ea071d;
  position: relative;
  overflow: hidden;
  transition: 0.6s;
}
@media screen and (max-width: 896px) {
  /* line 1225, ../_layout.scss */
  .cv_links .cv_link {
    width: 100%;
    justify-content: flex-start;
    border-width: 3px;
    padding: 16px 0 16px 11.2vw;
  }
}
/* line 1242, ../_layout.scss */
.cv_links .cv_link::before {
  content: "";
  display: block;
  position: absolute;
  width: 55vw;
  height: 55vw;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%) scale(0);
  background: white;
  z-index: 1;
  transition: 0.6s;
  border-radius: 50%;
}
@media screen and (min-width: 897px) {
  /* line 1256, ../_layout.scss */
  .cv_links .cv_link:hover {
    border: 4px solid #ea071d;
    transition: 0.4s;
    border-radius: 10px 0 0 10px;
  }
  /* line 1261, ../_layout.scss */
  .cv_links .cv_link:hover::before {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
    transition: 0.6s;
  }
  /* line 1268, ../_layout.scss */
  .cv_links .cv_link:hover .cv_link_txt span {
    letter-spacing: 0.4em;
    transition: 0.4s;
  }
}
/* line 1275, ../_layout.scss */
.cv_links .cv_link_icon {
  width: 67px;
  transition: 0.6s;
  height: 67px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  border: 4px solid #ea071d;
  margin-right: 27px;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 896px) {
  /* line 1275, ../_layout.scss */
  .cv_links .cv_link_icon {
    width: 47px;
    height: 47px;
    margin-right: 17px;
    border-width: 3px;
  }
}
/* line 1293, ../_layout.scss */
.cv_links .cv_link_icon img {
  width: 32px;
}
@media screen and (max-width: 896px) {
  /* line 1293, ../_layout.scss */
  .cv_links .cv_link_icon img {
    width: 20px;
  }
}
/* line 1300, ../_layout.scss */
.cv_links .cv_link_txt {
  position: relative;
  transition: 0.6s;
  z-index: 2;
}
/* line 1304, ../_layout.scss */
.cv_links .cv_link_txt .jp {
  font-weight: bold;
  font-size: 20px;
  display: block;
  letter-spacing: 0.2em;
  transition: 0.6s;
}
@media screen and (max-width: 896px) {
  /* line 1304, ../_layout.scss */
  .cv_links .cv_link_txt .jp {
    font-size: 16px;
  }
}
/* line 1314, ../_layout.scss */
.cv_links .cv_link_txt .en {
  display: block;
  letter-spacing: 0.2em;
  margin-top: 8px;
  font-weight: bold;
  font-size: 14px;
  transition: 0.6s;
}
@media screen and (max-width: 896px) {
  /* line 1314, ../_layout.scss */
  .cv_links .cv_link_txt .en {
    font-size: 10px;
    margin-top: 4px;
  }
}
/* line 1329, ../_layout.scss */
.cv_links .cv_link:nth-of-type(1) .cv_link_icon img {
  transition: 0.6s;
}
/* line 1333, ../_layout.scss */
.cv_links .cv_link:nth-of-type(1)::before {
  background: #ea071d;
}
@media screen and (min-width: 897px) {
  /* line 1338, ../_layout.scss */
  .cv_links .cv_link:nth-of-type(1):hover .cv_link_icon {
    border-color: white;
  }
  /* line 1340, ../_layout.scss */
  .cv_links .cv_link:nth-of-type(1):hover .cv_link_icon img {
    filter: brightness(0) invert(1);
    transition: 0.6s;
  }
  /* line 1346, ../_layout.scss */
  .cv_links .cv_link:nth-of-type(1):hover .cv_link_txt .jp {
    color: white;
  }
  /* line 1349, ../_layout.scss */
  .cv_links .cv_link:nth-of-type(1):hover .cv_link_txt .en {
    color: white;
  }
}
/* line 1356, ../_layout.scss */
.cv_links .cv_link:nth-of-type(2) {
  background: #ea071d;
}
@media screen and (min-width: 897px) {
  /* line 1356, ../_layout.scss */
  .cv_links .cv_link:nth-of-type(2) {
    border-left: none;
  }
}
@media screen and (max-width: 896px) {
  /* line 1356, ../_layout.scss */
  .cv_links .cv_link:nth-of-type(2) {
    margin-top: 14px;
  }
}
/* line 1364, ../_layout.scss */
.cv_links .cv_link:nth-of-type(2) .cv_link_icon {
  border-color: white;
}
/* line 1366, ../_layout.scss */
.cv_links .cv_link:nth-of-type(2) .cv_link_icon img {
  filter: brightness(0) invert(1);
  transition: 0.6s;
}
/* line 1372, ../_layout.scss */
.cv_links .cv_link:nth-of-type(2) .cv_link_txt .jp {
  color: white;
}
/* line 1375, ../_layout.scss */
.cv_links .cv_link:nth-of-type(2) .cv_link_txt .en {
  color: white;
}
@media screen and (min-width: 897px) {
  /* line 1379, ../_layout.scss */
  .cv_links .cv_link:nth-of-type(2):hover {
    border-radius: 0 10px 10px 0;
  }
  /* line 1382, ../_layout.scss */
  .cv_links .cv_link:nth-of-type(2):hover .cv_link_icon {
    border-color: #ea071d;
  }
  /* line 1384, ../_layout.scss */
  .cv_links .cv_link:nth-of-type(2):hover .cv_link_icon img {
    filter: brightness(1) invert(0);
    transition: 0.6s;
  }
  /* line 1390, ../_layout.scss */
  .cv_links .cv_link:nth-of-type(2):hover .cv_link_txt .jp {
    color: #ea071d;
  }
  /* line 1393, ../_layout.scss */
  .cv_links .cv_link:nth-of-type(2):hover .cv_link_txt .en {
    color: #ea071d;
  }
}

/* line 1404, ../_layout.scss */
.under_linkarea {
  margin-top: 130px;
}
@media screen and (min-width: 897px) {
  /* line 1404, ../_layout.scss */
  .under_linkarea {
    padding: 0 7.571vw;
  }
}
@media screen and (max-width: 896px) {
  /* line 1404, ../_layout.scss */
  .under_linkarea {
    margin-top: 80px;
  }
}
/* line 1412, ../_layout.scss */
.under_linkarea_ttl {
  font-size: 24px;
  letter-spacing: 0.2em;
  margin-bottom: 42px;
}
@media screen and (max-width: 896px) {
  /* line 1412, ../_layout.scss */
  .under_linkarea_ttl {
    font-size: 21px;
    padding: 0 5vw;
    margin-bottom: 20px;
  }
}
/* line 1421, ../_layout.scss */
.under_linkarea_ttl .tag {
  display: none;
}
@media screen and (max-width: 896px) {
  /* line 1421, ../_layout.scss */
  .under_linkarea_ttl .tag {
    display: block;
    margin-bottom: 8px;
  }
}
/* line 1429, ../_layout.scss */
.under_linkarea_link {
  position: relative;
  display: block;
}
/* line 1432, ../_layout.scss */
.under_linkarea_link .imgbox {
  overflow: hidden;
}
/* line 1434, ../_layout.scss */
.under_linkarea_link .imgbox .img_ap {
  transition: transform 0.3s;
}
@media screen and (max-width: 896px) {
  /* line 1437, ../_layout.scss */
  .under_linkarea_link .imgbox img {
    width: 100%;
    height: 61vw;
    object-fit: cover;
  }
}
/* line 1445, ../_layout.scss */
.under_linkarea_link .decotxt {
  position: absolute;
  top: 1.643vw;
  right: -4.143vw;
}
/* line 1449, ../_layout.scss */
.under_linkarea_link .decotxt .tagbox {
  background: #ea071d;
  display: flex;
  width: max-content;
  align-items: center;
  justify-content: center;
  padding: 0.714vw 1.857vw;
  gap: 0 0.857vw;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 896px) {
  /* line 1449, ../_layout.scss */
  .under_linkarea_link .decotxt .tagbox {
    display: none;
  }
}
/* line 1462, ../_layout.scss */
.under_linkarea_link .decotxt .tagbox .txt {
  font-size: 1vw;
  color: white;
  font-family: Helvetica, "Helvetica Neue", sans-serif;
  letter-spacing: 0;
  font-weight: bold;
}
/* line 1469, ../_layout.scss */
.under_linkarea_link .decotxt .tagbox .line {
  background: white;
  width: 2.857vw;
  height: 0.071vw;
  display: block;
}
/* line 1476, ../_layout.scss */
.under_linkarea_link .decotxt .decobg {
  position: absolute;
  right: 1.857vw;
  top: -3.857vw;
  width: 7.143vw;
  height: 15.714vw;
  background-size: 3px 3px;
  background-color: transparent;
  background-image: radial-gradient(#ea071d 0%, rgba(0, 0, 0, 0) 8%);
}
@media screen and (max-width: 896px) {
  /* line 1476, ../_layout.scss */
  .under_linkarea_link .decotxt .decobg {
    right: -3vw;
    top: -16vw;
    width: 16vw;
    height: 30vw;
  }
}
/* line 1494, ../_layout.scss */
.under_linkarea_link.on .under_linkarea_link_circle {
  opacity: 1;
}
/* line 1499, ../_layout.scss */
.under_linkarea_link_circle {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  width: 22.143vw;
  height: 22.143vw;
  border-radius: 50%;
  display: flex;
  opacity: 0;
  transform-origin: center;
  justify-content: center;
  align-items: center;
  background: #ea071d;
  transition: opacity 0.3s ease;
  transition-delay: 0.5s;
}
@media screen and (max-width: 896px) {
  /* line 1499, ../_layout.scss */
  .under_linkarea_link_circle {
    width: 45vw;
    height: 45vw;
  }
}
/* line 1519, ../_layout.scss */
.under_linkarea_link_circle .circle_inner {
  display: flex;
  flex-direction: column;
  gap: 1.386vw 0;
  position: relative;
  z-index: 4;
}
@media screen and (max-width: 896px) {
  /* line 1519, ../_layout.scss */
  .under_linkarea_link_circle .circle_inner {
    gap: 3vw 0;
  }
}
/* line 1529, ../_layout.scss */
.under_linkarea_link_circle .circle_img {
  border-radius: 50%;
  border: 4px solid white;
  width: 4.786vw;
  height: 4.786vw;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  transition: 0.3s;
}
@media screen and (max-width: 896px) {
  /* line 1529, ../_layout.scss */
  .under_linkarea_link_circle .circle_img {
    width: 11vw;
    height: 11vw;
    border-width: 1px;
  }
}
/* line 1544, ../_layout.scss */
.under_linkarea_link_circle .circle_img .imgwrap {
  width: 2.929vw;
  filter: brightness(0) invert(1);
  margin-bottom: 5px;
}
@media screen and (max-width: 896px) {
  /* line 1544, ../_layout.scss */
  .under_linkarea_link_circle .circle_img .imgwrap {
    width: 6.2vw;
  }
}
/* line 1553, ../_layout.scss */
.under_linkarea_link_circle .pagettl {
  color: white;
  text-align: center;
}
@media screen and (min-width: 897px) {
  /* line 1553, ../_layout.scss */
  .under_linkarea_link_circle .pagettl {
    margin-bottom: 0.9vw;
  }
}
/* line 1559, ../_layout.scss */
.under_linkarea_link_circle .pagettl .maintxt {
  font-size: 2.286vw;
  display: block;
  letter-spacing: 0.2em;
  margin-bottom: 0.571vw;
  transition: 0.3s;
}
@media screen and (max-width: 896px) {
  /* line 1559, ../_layout.scss */
  .under_linkarea_link_circle .pagettl .maintxt {
    font-size: 17px;
    margin-bottom: 8px;
  }
}
/* line 1570, ../_layout.scss */
.under_linkarea_link_circle .pagettl .subtxt {
  font-size: 1.286vw;
  display: block;
  letter-spacing: 0.2em;
  transition: 0.3s;
}
@media screen and (max-width: 896px) {
  /* line 1570, ../_layout.scss */
  .under_linkarea_link_circle .pagettl .subtxt {
    font-size: 12px;
  }
}
/* line 1580, ../_layout.scss */
.under_linkarea_link_circle .arrow {
  width: 1.786vw;
  margin: 0 auto;
  transition: 0.3s ease;
  filter: brightness(0) invert(1);
}
@media screen and (max-width: 896px) {
  /* line 1580, ../_layout.scss */
  .under_linkarea_link_circle .arrow {
    width: 4vw;
  }
}
@media screen and (min-width: 897px) {
  /* line 1593, ../_layout.scss */
  .under_linkarea_link:hover .under_linkarea_link_circle .circle_img {
    border-color: #ea071d;
  }
  /* line 1596, ../_layout.scss */
  .under_linkarea_link:hover .under_linkarea_link_circle .imgwrap {
    filter: brightness(1) invert(0);
  }
  /* line 1600, ../_layout.scss */
  .under_linkarea_link:hover .under_linkarea_link_circle .pagettl .maintxt,
  .under_linkarea_link:hover .under_linkarea_link_circle .pagettl .subtxt {
    color: #ea071d;
  }
  /* line 1605, ../_layout.scss */
  .under_linkarea_link:hover .under_linkarea_link_circle .arrow {
    filter: brightness(1) invert(0);
  }
  /* line 1610, ../_layout.scss */
  .under_linkarea_link:hover .imgbox .img_ap {
    transform: scale(1.08);
  }
  /* line 1616, ../_layout.scss */
  .under_linkarea_link:hover .circle-hover .circle-hover-before,
  .under_linkarea_link:hover .transformlink .circle-hover-before {
    transform: translate(-50%, -50%) scale(1.2);
    opacity: 1;
  }
  /* line 1622, ../_layout.scss */
  .under_linkarea_link:hover .circle-hover .circle-hover-after,
  .under_linkarea_link:hover .transformlink .circle-hover-after {
    transform: translate(-50%, -50%) scale(1.2);
  }
}

/* line 14, ../_states.scss */
.hvrop {
  transition: 0.3s;
}
@media screen and (min-width: 897px) {
  /* line 17, ../_states.scss */
  .hvrop:hover {
    opacity: 0.7;
  }
}

/* line 22, ../_states.scss */
.underline {
  position: relative;
}
/* line 24, ../_states.scss */
.underline::after {
  content: "";
  background: #dadada;
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: -4px;
  left: 0;
  transform: scale(0, 1);
  transition: transform 0.3s;
  transform-origin: right top;
}
@media screen and (min-width: 897px) {
  /* line 38, ../_states.scss */
  .underline:hover::after {
    transform-origin: left top;
    transform: scale(1, 1);
  }
}

/* line 46, ../_states.scss */
.hoverScale .thumb {
  overflow: hidden;
  transition: transform 0.4s cubic-bezier(0.4, 0.1, 0.3, 1);
}
/* line 49, ../_states.scss */
.hoverScale .thumb .scaleImg {
  transition: transform 0.4s cubic-bezier(0.4, 0.1, 0.3, 1);
}
/* line 51, ../_states.scss */
.hoverScale .thumb .scaleImg img {
  backface-visibility: hidden;
}
@media screen and (min-width: 897px) {
  /* line 58, ../_states.scss */
  .hoverScale:hover .thumb {
    transform: scale(0.95);
  }
  /* line 60, ../_states.scss */
  .hoverScale:hover .thumb .scaleImg {
    transform: scale(1.15);
  }
}

/* line 70, ../_states.scss */
.svg_anim svg {
  stroke-dasharray: 1000;
  stroke-dashoffset: 1000;
  transition: 1s;
  width: 100%;
  height: auto;
}
/* line 78, ../_states.scss */
.svg_anim.on svg {
  stroke-dashoffset: 2000;
}

/* line 84, ../_states.scss */
.fade_y {
  transform: translateY(3%);
  opacity: 0;
  transition: 0.3s;
}
/* line 88, ../_states.scss */
.fade_y.on {
  opacity: 1;
  transform: translateY(0%);
}

/* line 93, ../_states.scss */
.fade_left {
  transform: translateX(-3%);
  opacity: 0;
  transition: 0.3s;
}
/* line 97, ../_states.scss */
.fade_left.on {
  opacity: 1;
  transform: translateX(0%);
}

/* line 102, ../_states.scss */
.fade_right {
  transform: translateX(3%);
  opacity: 0;
  transition: 0.3s;
}
/* line 106, ../_states.scss */
.fade_right.on {
  opacity: 1;
  transform: translateX(0%);
}

/* line 112, ../_states.scss */
.scr_cvr {
  overflow: hidden;
  position: relative;
  display: block;
  opacity: 0;
  transition: 0.3s;
}
/* line 118, ../_states.scss */
.scr_cvr::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  right: 0;
  top: 0;
  z-index: 1;
  background-color: #ea071d;
  transition: all 0.3s cubic-bezier(0.5, 0, 0.3, 1);
  transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
}
/* line 130, ../_states.scss */
.scr_cvr.on {
  opacity: 1;
}
/* line 132, ../_states.scss */
.scr_cvr.on::before {
  right: -100%;
  transition-delay: 0.3s;
}

/* line 139, ../_states.scss */
.img_ap {
  position: relative;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.6s;
}
/* line 144, ../_states.scss */
.img_ap img {
  transform: scale(1.5);
  transition: 1s;
}
/* line 148, ../_states.scss */
.img_ap::after {
  position: absolute;
  content: "";
  background-color: #fff;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
/* line 157, ../_states.scss */
.img_ap.on {
  opacity: 1;
}
/* line 159, ../_states.scss */
.img_ap.on img {
  transform: scale(1);
}
/* line 162, ../_states.scss */
.img_ap.on::after {
  animation: img_ap 0.6s cubic-bezier(0.52, 0.11, 0.05, 0.89) forwards;
}

@keyframes img_ap {
  100% {
    transform: translateY(100%);
  }
}
@keyframes scale_y {
  100% {
    transform: scaleY(1);
  }
}
@keyframes scale_y01 {
  100% {
    transform: translateX(-50%) scaleY(1);
  }
}
@keyframes scale_y02 {
  100% {
    transform: translate(-50%, -50%) scaleY(1);
  }
}
/* line 190, ../_states.scss */
.scale_y {
  transform: scaleY(0);
  transform-origin: top;
}
/* line 193, ../_states.scss */
.scale_y.on {
  animation: scale_y 1s cubic-bezier(0.52, 0.11, 0.05, 0.89) forwards;
}

@keyframes scale_x {
  100% {
    transform: scaleX(1);
  }
}
/* line 204, ../_states.scss */
.scale_x {
  transform: scaleX(0);
  transform-origin: left;
}
/* line 207, ../_states.scss */
.scale_x.on {
  animation: scale_x 0.3s ease forwards;
}

@keyframes scale_center {
  100% {
    transform: scale(1);
  }
}
@keyframes scale_center01 {
  100% {
    transform: translate(-50%, 0) scale(1);
  }
}
/* line 223, ../_states.scss */
.scale_center {
  transform: scale(0);
  transform-origin: center;
}
/* line 226, ../_states.scss */
.scale_center.on {
  animation: scale_center 0.3s ease forwards;
}

/* line 5, _privacypolicy.scss */
.privacypolicy .privacy_wrap {
  padding: 100px 10% 130px;
}
@media screen and (max-width: 896px) {
  /* line 5, _privacypolicy.scss */
  .privacypolicy .privacy_wrap {
    padding: 60px 5%;
  }
}
/* line 11, _privacypolicy.scss */
.privacypolicy .privacy_wrap .lead.first_text {
  margin-top: 0;
  font-weight: 700;
}
/* line 16, _privacypolicy.scss */
.privacypolicy .privacy_wrap .text_wrap {
  margin-top: 66px;
}
@media screen and (max-width: 896px) {
  /* line 16, _privacypolicy.scss */
  .privacypolicy .privacy_wrap .text_wrap {
    margin-top: 40px;
  }
}
/* line 21, _privacypolicy.scss */
.privacypolicy .privacy_wrap .text_wrap .title {
  font-size: 2rem;
  letter-spacing: 0.175em;
  font-weight: 900;
  line-height: 1.6;
  color: #ea071d;
}
@media screen and (max-width: 896px) {
  /* line 21, _privacypolicy.scss */
  .privacypolicy .privacy_wrap .text_wrap .title {
    font-size: 1.6rem;
  }
}
/* line 31, _privacypolicy.scss */
.privacypolicy .privacy_wrap .text_wrap .lead {
  margin-top: 20px;
}
@media screen and (max-width: 896px) {
  /* line 31, _privacypolicy.scss */
  .privacypolicy .privacy_wrap .text_wrap .lead {
    margin-top: 14px;
  }
}
/* line 36, _privacypolicy.scss */
.privacypolicy .privacy_wrap .text_wrap .lead span {
  font-size: 2.4rem;
  margin-top: -8px;
  display: block;
  letter-spacing: 0.175em;
}
@media screen and (max-width: 896px) {
  /* line 36, _privacypolicy.scss */
  .privacypolicy .privacy_wrap .text_wrap .lead span {
    font-size: 2rem;
  }
}
/* line 46, _privacypolicy.scss */
.privacypolicy .privacy_wrap .text_wrap a {
  display: inline-block;
  color: #ea071d;
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  font-weight: bold;
  position: relative;
  border-bottom: 1px solid #ea071d;
}
@media screen and (min-width: 897px) {
  /* line 55, _privacypolicy.scss */
  .privacypolicy .privacy_wrap .text_wrap a:hover {
    opacity: 0.6;
  }
}
@media screen and (max-width: 896px) {
  /* line 46, _privacypolicy.scss */
  .privacypolicy .privacy_wrap .text_wrap a {
    font-size: 1.3rem;
  }
}
/* line 63, _privacypolicy.scss */
.privacypolicy .privacy_wrap .text_wrap .tel {
  color: #000;
  border: none;
  pointer-events: none;
}
