@charset "UTF-8";
/*------------------------------------------------------------
	デフォルトスタイル
------------------------------------------------------------*/
*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td, p, figure {
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
  outline: 0;
  font-size: 100%;
}

body {
  width: 100%;
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
  font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", メイリオ, sans-serif;
  font-size: 13px;
}

body,
table,
input, textarea, select, option {
  font: Arial, Helvetica, sans-serif;
  /*font-family: HiraKakuProN-W3;*/
  /*font-size: 85%;*/
}

article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary {
  display: block;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

ins {
  text-decoration: none;
}

del {
  text-decoration: line-through;
}

em {
  font-weight: bold;
  font-style: normal;
}

.clearfix:after {
  visibility: hidden;
  display: block;
  content: " ";
  clear: both;
  height: 0;
}

/* ************************************************ */
/*                       共通                       */
/* ************************************************ */
body.is-lock {
  /* when modal active */
  touch-action: none;
  -webkit-overflow-scrolling: none;
  overflow: hidden;
  /* Other browsers */
  overscroll-behavior: none;
  scrollbar-gutter: stable;
}

#wrapper {
  word-wrap: break-word;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-feature-settings: "pkna";
  color: #1d295a;
  min-width: 320px;
  font-size: 2.846975089vw;
}
@media (min-width: 768px) {
  #wrapper {
    font-size: 1.5384615385vw;
  }
}
@media (min-width: 1040px) {
  #wrapper {
    font-size: 16px;
  }
}
#wrapper img {
  height: auto;
  max-width: 100%;
  vertical-align: top;
  image-rendering: -webkit-optimize-contrast;
  image-rendering: optimizequality;
}
@media (min-width: 768px) {
  #wrapper .is-pc {
    display: block;
  }
  #wrapper .is-sp {
    display: none;
  }
  #wrapper br.is-pc {
    display: inline;
  }
}
@media (max-width: 768 -1px) {
  #wrapper .is-pc {
    display: none;
  }
  #wrapper .is-sp {
    display: block;
  }
  #wrapper br.is-sp {
    display: inline;
  }
}
#wrapper button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.u-dib {
  display: inline-block;
}

a {
  color: currentColor;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  white-space: nowrap;
}

.inter-regular {
  font-family: "Inter", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

.inter-bold, .companyPhilosophy__title, .faqItem__contentInner::before, .faqItem__summary::before {
  font-family: "Inter", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

.inter-black, .faq hgroup::before {
  font-family: "Inter", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
}

.material-symbols-outlined.fz-4 {
  font-size: 7.1174377224vw;
}
@media (min-width: 768px) {
  .material-symbols-outlined.fz-4 {
    font-size: 3.8461538462vw;
  }
}
@media (min-width: 1040px) {
  .material-symbols-outlined.fz-4 {
    font-size: 40px;
  }
}
.material-symbols-outlined.fw-700 {
  font-weight: 700;
}

.l-widthKeeper {
  max-width: 1040px;
  margin: 0 auto;
}
@media (min-width: 768px) {
  .l-widthKeeper {
    padding-right: 1.9230769231vw;
    padding-left: 1.9230769231vw;
  }
}
@media (min-width: 1040px) {
  .l-widthKeeper {
    padding-right: 20px;
    padding-left: 20px;
  }
}

.u-text-strong {
  color: #fff600;
  font-weight: bold;
}

.mv {
  color: #fff;
  padding-bottom: 4.4483985765vw;
  background-color: #1d295a;
}
@media (min-width: 768px) {
  .mv {
    padding-bottom: 3.3653846154vw;
  }
}
@media (min-width: 1040px) {
  .mv {
    padding-bottom: 35px;
  }
}
.mv__catch {
  background: url("../img/pic_mv_bg.jpg") no-repeat center top;
  background-size: 100% auto;
}
@media (min-width: 768px) {
  .mv__catch {
    background-image: url("../img/pic_mv_bg_pc.jpg");
    background-size: cover;
  }
}
.mv__logo {
  width: 35.5871886121vw;
  padding: 2.6690391459vw 4.4483985765vw;
  margin-bottom: 38.256227758vw;
  text-align: center;
  background-color: #000;
}
@media (min-width: 768px) {
  .mv__logo {
    width: 16.4423076923vw;
    padding: 1.4423076923vw 2.4038461538vw;
    margin-bottom: 8.6538461538vw;
  }
}
@media (min-width: 1040px) {
  .mv__logo {
    width: 171px;
    padding: 15px 25px;
    margin-bottom: 90px;
  }
}
.mv__title {
  margin-bottom: 3.5587188612vw;
}
@media (min-width: 768px) {
  .mv__title {
    padding-bottom: 3.8461538462vw;
    margin-bottom: 3.3653846154vw;
  }
}
@media (min-width: 1040px) {
  .mv__title {
    padding-bottom: 40px;
    margin-bottom: 35px;
  }
}
.mv__title-school {
  display: block;
  width: 64.0569395018vw;
  margin: 0 0 2.6690391459vw 3.5587188612vw;
}
@media (min-width: 768px) {
  .mv__title-school {
    width: 57.4038461538vw;
    margin: 0 0 1.4423076923vw 0;
  }
}
@media (min-width: 1040px) {
  .mv__title-school {
    width: 597px;
    margin: 0 0 15px 0;
  }
}
.mv__title-copy {
  display: block;
  width: 91.103202847vw;
}
@media (min-width: 768px) {
  .mv__title-copy {
    width: 78.8461538462vw;
  }
}
@media (min-width: 1040px) {
  .mv__title-copy {
    width: 820px;
  }
}
@media (min-width: 768px) {
  .mv__leadKenshuBox {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.9230769231vw;
    gap: 2.4038461538vw;
  }
}
@media (min-width: 1040px) {
  .mv__leadKenshuBox {
    gap: 25px;
    margin-bottom: 20px;
  }
}
.mv__lead {
  display: flex;
  align-items: center;
  gap: 2.6690391459vw;
  margin: 0 0 2.6690391459vw 4.4483985765vw;
}
@media (min-width: 768px) {
  .mv__lead {
    margin: 0;
  }
}
.mv__lead > p {
  width: 65.1245551601vw;
}
@media (min-width: 768px) {
  .mv__lead > p {
    width: 50vw;
  }
}
@media (min-width: 1040px) {
  .mv__lead > p {
    width: 520px;
  }
}
@media (max-width: 767px) {
  .mv__lead::after {
    display: block;
    content: "";
    width: 19.5729537367vw;
    height: 2px;
    background-color: #fff;
  }
}
.mv__kenshu {
  width: 88.7010676157vw;
  margin: 0 0 3.5587188612vw 4.4483985765vw;
}
@media (min-width: 768px) {
  .mv__kenshu {
    width: 43.0769230769vw;
    margin: 0;
  }
}
@media (min-width: 1040px) {
  .mv__kenshu {
    width: 448px;
  }
}
@media (min-width: 768px) {
  .mv__diamondWorkLocationBox {
    display: flex;
    justify-content: space-between;
    margin-bottom: 3.4615384615vw;
  }
}
@media (min-width: 1040px) {
  .mv__diamondWorkLocationBox {
    margin-bottom: 36px;
  }
}
.mv__diamond {
  width: 93.0604982206vw;
  margin: 0 auto 1.7793594306vw;
}
@media (min-width: 768px) {
  .mv__diamond {
    width: 64.4230769231vw;
    margin: 0;
  }
}
@media (min-width: 1040px) {
  .mv__diamond {
    width: 670px;
  }
}

.workLocation {
  width: 86.2989323843vw;
  margin: 0 auto 1.7793594306vw;
  padding: 1.7793594306vw 10.6761565836vw 3.5587188612vw 0;
  color: #fff;
  background: url("../img/pic_mv_bg_japan.png") no-repeat right top;
  background-size: contain;
}
@media (min-width: 768px) {
  .workLocation {
    width: 28.5576923077vw;
    margin: 0;
    padding: 0 0 0 1.9230769231vw;
    border-left: 1px solid #414c79;
  }
}
@media (min-width: 1040px) {
  .workLocation {
    width: 297px;
    padding: 0 0 0 20px;
  }
}
@media (max-width: 767px) {
  .workLocation__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 1.7793594306vw;
    margin-bottom: 1.7793594306vw;
    border-bottom: 1px solid #616a8c;
  }
}
@media (min-width: 768px) {
  .workLocation__header {
    margin-bottom: 1.4423076923vw;
  }
}
@media (min-width: 1040px) {
  .workLocation__header {
    margin-bottom: 15px;
  }
}
.workLocation__title {
  font-size: 3.5587188612vw;
  font-weight: normal;
}
@media (min-width: 768px) {
  .workLocation__title {
    font-size: 1.9230769231vw;
  }
}
@media (min-width: 1040px) {
  .workLocation__title {
    font-size: 20px;
  }
}
.workLocation__welcome {
  font-size: 2.846975089vw;
}
@media (min-width: 768px) {
  .workLocation__welcome {
    font-size: 1.3461538462vw;
  }
}
@media (min-width: 1040px) {
  .workLocation__welcome {
    font-size: 14px;
  }
}
.workLocation__content dl {
  display: flex;
  flex-wrap: wrap;
  gap: 1.7793594306vw 6.2277580071vw;
}
@media (min-width: 768px) {
  .workLocation__content dl {
    flex-direction: column;
    gap: 0.9615384615vw;
  }
}
@media (min-width: 1040px) {
  .workLocation__content dl {
    gap: 10px;
  }
}
.workLocation__content dl > div {
  display: flex;
  align-items: center;
  gap: 1.7793594306vw;
}
@media (min-width: 768px) {
  .workLocation__content dl > div {
    gap: 0.9615384615vw;
  }
}
@media (min-width: 1040px) {
  .workLocation__content dl > div {
    gap: 10px;
  }
}
.workLocation__content dl > div > dt {
  padding: 0.8896797153vw;
  line-height: 1;
  font-size: 2.4911032028vw;
  background-color: #111a3d;
}
@media (min-width: 768px) {
  .workLocation__content dl > div > dt {
    padding: 0.4807692308vw 0.9615384615vw;
    font-size: 1.3461538462vw;
  }
}
@media (min-width: 1040px) {
  .workLocation__content dl > div > dt {
    padding: 5px 10px;
    font-size: 14px;
  }
}

.lineLinkPr {
  text-align: center;
  margin-bottom: 4.0925266904vw;
}
@media (min-width: 768px) {
  .lineLinkPr {
    margin-bottom: 2.8846153846vw;
  }
}
@media (min-width: 1040px) {
  .lineLinkPr {
    margin-bottom: 30px;
  }
}
.lineLinkPr__inner {
  display: inline-block;
  font-weight: bold;
}
.lineLinkPr__inner > dt {
  font-size: 4.2704626335vw;
  padding-bottom: 0.2em;
  margin-bottom: 0.3em;
  border-bottom: 2px dotted #293977;
}
@media (min-width: 768px) {
  .lineLinkPr__inner > dt {
    font-size: 3.0769230769vw;
  }
}
@media (min-width: 1040px) {
  .lineLinkPr__inner > dt {
    font-size: 32px;
  }
}
.lineLinkPr__inner > dd {
  font-size: 3.2028469751vw;
}
@media (min-width: 768px) {
  .lineLinkPr__inner > dd {
    font-size: 2.3076923077vw;
  }
}
@media (min-width: 1040px) {
  .lineLinkPr__inner > dd {
    font-size: 24px;
  }
}

.lineLink {
  padding: 0 3.5587188612vw;
}
@media (min-width: 768px) {
  .lineLink {
    padding: 0 20.1923076923vw;
  }
}
@media (min-width: 1040px) {
  .lineLink {
    padding: 0 210px;
  }
}
.lineLink > a {
  position: relative;
  display: flex;
  flex-direction: column;
  font-weight: bold;
  padding: 2.6690391459vw 3.5587188612vw 3.5587188612vw 19.5729537367vw;
  background: #00B349;
  background: linear-gradient(180deg, rgb(0, 179, 73) 0%, rgb(0, 161, 55) 100%);
  border-radius: 1.7793594306vw;
  color: #fff;
  text-decoration: none;
}
.lineLink > a:hover {
  background: linear-gradient(180deg, rgb(0, 138, 55) 0%, rgb(0, 104, 35) 100%);
}
@media (min-width: 768px) {
  .lineLink > a {
    padding: 1.9230769231vw 1.9230769231vw 1.9230769231vw 13.0769230769vw;
    border-radius: 1.1538461538vw;
  }
}
@media (min-width: 1040px) {
  .lineLink > a {
    padding: 20px 20px 20px 136px;
    border-radius: 12px;
  }
}
.lineLink > a::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  left: 5.3380782918vw;
  width: 9.3416370107vw;
  height: 9.0747330961vw;
  background: url("../img/icon_line.png") no-repeat center center;
  background-size: cover;
}
@media (min-width: 768px) {
  .lineLink > a::before {
    left: 3.6538461538vw;
    width: 6.3461538462vw;
    height: 6.0576923077vw;
  }
}
@media (min-width: 1040px) {
  .lineLink > a::before {
    left: 38px;
    width: 66px;
    height: 63px;
  }
}
.lineLink__title {
  font-size: 6.2277580071vw;
  font-weight: bold;
}
@media (min-width: 768px) {
  .lineLink__title {
    font-size: 3.3653846154vw;
  }
}
@media (min-width: 1040px) {
  .lineLink__title {
    font-size: 35px;
  }
}

.mvScroll {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.8896797153vw;
  padding-bottom: 15.1245551601vw;
  margin-bottom: 2.6690391459vw;
  text-align: center;
  font-size: 3.5587188612vw;
  color: #fff;
  background: url("../img/pic_bg_mv_bottom.png") no-repeat center bottom;
  background-size: 100% 100%;
}
@media (min-width: 768px) {
  .mvScroll {
    gap: 0.4807692308vw;
    margin-bottom: 3.8461538462vw;
    padding-bottom: 4.8076923077vw;
    font-size: 1.7307692308vw;
    background-size: 20% 100%;
  }
}
@media (min-width: 1040px) {
  .mvScroll {
    gap: 5px;
    padding-bottom: 50px;
    margin-bottom: 40px;
    font-size: 18px;
    background-size: 280px 100%;
  }
}

.floatButton {
  position: fixed;
  bottom: 0;
  right: 0;
  left: 0;
  padding: 10px;
  z-index: 100;
  background-color: rgba(255, 255, 255, 0.9);
  font-feature-settings: "palt";
  margin: 0 auto;
}
.floatButton .lineLink > a {
  padding: 2.6690391459vw 2.6690391459vw 3.2028469751vw 16.0142348754vw;
}
@media (min-width: 768px) {
  .floatButton .lineLink > a {
    padding: 1.9230769231vw 1.9230769231vw 1.9230769231vw 13.0769230769vw;
  }
}
@media (min-width: 1040px) {
  .floatButton .lineLink > a {
    max-width: 580px;
    margin: 0 auto;
    padding: 20px 20px 20px 136px;
  }
}
.floatButton .lineLink > a::before {
  left: 5.3380782918vw;
  width: 7.1174377224vw;
  height: 7.1174377224vw;
  background-size: contain;
}
@media (min-width: 768px) {
  .floatButton .lineLink > a::before {
    left: 5.7692307692vw;
    width: 3.8461538462vw;
    height: 3.8461538462vw;
  }
}
@media (min-width: 1040px) {
  .floatButton .lineLink > a::before {
    left: 60px;
    width: 40px;
    height: 40px;
  }
}
.floatButton .lineLink .lineLink__title {
  font-size: 3.9145907473vw;
  font-weight: bold;
}
@media (min-width: 768px) {
  .floatButton .lineLink .lineLink__title {
    font-size: 2.3076923077vw;
  }
}
@media (min-width: 1040px) {
  .floatButton .lineLink .lineLink__title {
    font-size: 24px;
  }
}

.sec > hgroup {
  text-align: center;
  margin-bottom: 5.3380782918vw;
}
@media (min-width: 768px) {
  .sec > hgroup {
    margin-bottom: 4.3269230769vw;
  }
}
@media (min-width: 1040px) {
  .sec > hgroup {
    margin-bottom: 45px;
  }
}
.sec__head {
  font-weight: bold;
  font-size: 3.5587188612vw;
  margin-bottom: 3.9145907473vw;
}
@media (min-width: 768px) {
  .sec__head {
    font-size: 2.6923076923vw;
    margin-bottom: 2.8846153846vw;
  }
}
@media (min-width: 1040px) {
  .sec__head {
    font-size: 28px;
    margin-bottom: 30px;
  }
}
.sec__head.--polygon {
  display: inline-block;
  color: #1c2857;
  padding: 0.15em 4em;
  background-color: #fff;
  clip-path: polygon(0% 50%, 5% 0%, 96% 0%, 100% 50%, 96% 100%, 5% 100%);
}
.sec__head.--bg-navy {
  color: #fff600;
  background-color: #1c2857;
}
.sec__head.--large {
  font-size: 4.9822064057vw;
  padding: 0.3em;
  margin-bottom: 1.2em;
}
@media (min-width: 768px) {
  .sec__head.--large {
    font-size: 3.0769230769vw;
    margin-bottom: 1.8em;
  }
}
@media (min-width: 1040px) {
  .sec__head.--large {
    font-size: 32px;
  }
}
.sec__title {
  margin: 0 auto;
}
.sec__lead {
  font-size: 3.5587188612vw;
  line-height: 1.8;
  padding: 0 3.5587188612vw;
}
@media (min-width: 768px) {
  .sec__lead {
    font-size: 2.3076923077vw;
    padding: 0;
  }
}
@media (min-width: 1040px) {
  .sec__lead {
    font-size: 24px;
  }
}

.feature__title {
  width: 85.0533807829vw;
}
@media (min-width: 768px) {
  .feature__title {
    width: 67.3076923077vw;
  }
}
@media (min-width: 1040px) {
  .feature__title {
    width: 700px;
  }
}
.feature__anxietyListBox {
  background: url("../img/pic_bg_feature.jpg") no-repeat center top;
  background-size: cover;
}
@media (min-width: 768px) {
  .feature__anxietyListBox {
    background-color: #a9a9a9;
    background-image: url("../img/pic_bg_feature_pc.jpg");
    background-size: auto 100%;
  }
}
.feature__anxietyList {
  padding-top: 52.1352313167vw;
  padding-bottom: 5.3380782918vw;
  color: #fff;
}
@media (max-width: 767px) {
  .feature__anxietyList {
    display: flex;
    align-items: start;
    flex-direction: column;
    gap: 0.8896797153vw;
  }
}
@media (min-width: 768px) {
  .feature__anxietyList {
    padding-top: 25.3846153846vw;
    padding-bottom: 2.8846153846vw;
  }
}
@media (min-width: 1040px) {
  .feature__anxietyList {
    padding-top: 264px;
    padding-bottom: 30px;
  }
}
.feature__anxietyItem {
  display: inline-flex;
  flex-direction: column;
  padding: 3.2028469751vw;
  background-color: rgba(0, 0, 0, 0.7);
}
@media (min-width: 768px) {
  .feature__anxietyItem {
    position: relative;
    padding: 1.7307692308vw;
  }
}
@media (min-width: 1040px) {
  .feature__anxietyItem {
    padding: 18px;
  }
}
.feature__anxietyItem:nth-child(1) {
  margin-left: 2.6690391459vw;
}
@media (min-width: 768px) {
  .feature__anxietyItem:nth-child(1) {
    margin-left: 0;
  }
}
.feature__anxietyItem:nth-child(2) {
  align-self: flex-end;
}
@media (min-width: 768px) {
  .feature__anxietyItem:nth-child(2) {
    top: 1.9230769231vw;
    margin-bottom: 1.9230769231vw;
    margin-left: 2.5vw;
  }
}
@media (min-width: 1040px) {
  .feature__anxietyItem:nth-child(2) {
    top: 20px;
    margin-bottom: 20px;
    margin-left: 26px;
  }
}
@media (min-width: 768px) {
  .feature__anxietyItem:nth-child(3) {
    top: -1.9230769231vw;
    margin: 1.9230769231vw 1.7307692308vw 0 1.9230769231vw;
  }
}
@media (min-width: 1040px) {
  .feature__anxietyItem:nth-child(3) {
    top: -20px;
    margin: 20px 18px 0 20px;
  }
}
.feature__anxietyItem:nth-child(4) {
  align-self: flex-end;
  margin-right: 3.5587188612vw;
}
@media (min-width: 768px) {
  .feature__anxietyItem:nth-child(4) {
    margin-right: 1.9230769231vw;
  }
}
@media (min-width: 1040px) {
  .feature__anxietyItem:nth-child(4) {
    margin-right: 20px;
  }
}
.feature__anxietyItem > dt {
  font-weight: bold;
  font-size: 4.0925266904vw;
}
@media (min-width: 768px) {
  .feature__anxietyItem > dt {
    font-size: 2.3076923077vw;
  }
}
@media (min-width: 1040px) {
  .feature__anxietyItem > dt {
    font-size: 24px;
  }
}
.feature__anxietyItem > dd {
  font-size: 3.2028469751vw;
}
@media (min-width: 768px) {
  .feature__anxietyItem > dd {
    font-size: 1.7307692308vw;
  }
}
@media (min-width: 1040px) {
  .feature__anxietyItem > dd {
    font-size: 18px;
  }
}
.feature__reason {
  padding: 7.1174377224vw 3.5587188612vw 13.3451957295vw;
  color: #fff;
  text-align: center;
  font-size: 3.5587188612vw;
  background-color: #1d1d1d;
}
@media (min-width: 768px) {
  .feature__reason {
    padding: 5.7692307692vw 1.9230769231vw 13.4615384615vw;
    font-size: 2.3076923077vw;
  }
}
@media (min-width: 1040px) {
  .feature__reason {
    padding: 60px 20px 140px;
    font-size: 24px;
  }
}
.feature__reason > span {
  display: block;
  margin-bottom: 1.7793594306vw;
}
@media (min-width: 768px) {
  .feature__reason > span {
    margin-bottom: 0.9615384615vw;
  }
}
@media (min-width: 1040px) {
  .feature__reason > span {
    margin-bottom: 10px;
  }
}
.feature__reason > em {
  display: block;
  color: #ffd200;
  font-weight: bold;
  font-size: 4.2704626335vw;
}
@media (min-width: 768px) {
  .feature__reason > em {
    font-size: 3.0769230769vw;
  }
}
@media (min-width: 1040px) {
  .feature__reason > em {
    font-size: 32px;
  }
}
.feature__crossoverBox {
  margin-top: -17.793594306vw;
  padding: 21.3523131673vw 0;
  background: url("../img/pic_bg_crossover.png") no-repeat center top;
  background-size: 100% 100%;
}
@media (min-width: 768px) {
  .feature__crossoverBox {
    margin-top: -23.0769230769vw;
    padding: 25vw 0;
  }
}
@media (min-width: 1040px) {
  .feature__crossoverBox {
    margin-top: -240px;
    padding: 260px 0;
  }
}
.feature__crossover {
  width: 83.4519572954vw;
  margin: 0 auto;
}
@media (min-width: 768px) {
  .feature__crossover {
    width: 86.5384615385vw;
  }
}
@media (min-width: 1040px) {
  .feature__crossover {
    width: 900px;
  }
}

.about {
  margin-bottom: 21.3523131673vw;
}
@media (min-width: 768px) {
  .about {
    margin-bottom: 13.4615384615vw;
  }
}
@media (min-width: 1040px) {
  .about {
    margin-bottom: 140px;
  }
}
.about__title {
  width: 74.4661921708vw;
}
@media (min-width: 768px) {
  .about__title {
    width: 60.1923076923vw;
  }
}
@media (min-width: 1040px) {
  .about__title {
    width: 626px;
  }
}
.about__content {
  padding: 0 3.5587188612vw;
}
@media (min-width: 768px) {
  .about__content {
    padding: 0 11.5384615385vw;
  }
}
@media (min-width: 1040px) {
  .about__content {
    padding: 0 120px;
  }
}

.whatIsCrossover {
  margin-bottom: 7.1174377224vw;
}
@media (min-width: 768px) {
  .whatIsCrossover {
    margin-bottom: 7.6923076923vw;
  }
}
@media (min-width: 1040px) {
  .whatIsCrossover {
    margin-bottom: 80px;
  }
}
.whatIsCrossover {
  text-align: center;
}
.whatIsCrossover__title {
  transform: translateY(50%);
  display: inline-block;
  padding: 2px;
  background: #1a2744;
  clip-path: polygon(0% 50%, 5% 0%, 95% 0%, 100% 50%, 95% 100%, 5% 100%);
  font-size: 3.5587188612vw;
}
@media (min-width: 768px) {
  .whatIsCrossover__title {
    padding: 3px;
    font-size: 2.6923076923vw;
  }
}
@media (min-width: 1040px) {
  .whatIsCrossover__title {
    font-size: 28px;
  }
}
.whatIsCrossover__titleInner {
  display: block;
  padding: 0.1em 1.8em;
  color: #1a2744;
  background-color: #fff;
  clip-path: polygon(0% 50%, 5% 0%, 95% 0%, 100% 50%, 95% 100%, 5% 100%);
}
.whatIsCrossover__content {
  padding: 8.896797153vw 5.3380782918vw;
  background: url("../img/pic_bg_about.png") left top repeat;
  background-size: 50px;
}
@media (min-width: 768px) {
  .whatIsCrossover__content {
    padding: 6.7307692308vw 3.8461538462vw 4.8076923077vw;
  }
}
@media (min-width: 1040px) {
  .whatIsCrossover__content {
    padding: 70px 40px 50px;
  }
}
.whatIsCrossover__copy {
  margin-bottom: 4.4483985765vw;
  padding-bottom: 4.4483985765vw;
  color: #fff600;
  font-weight: bold;
  font-size: 5.6939501779vw;
  border-bottom: 1px solid #fff;
}
@media (min-width: 768px) {
  .whatIsCrossover__copy {
    margin-bottom: 2.4038461538vw;
    padding-bottom: 2.4038461538vw;
    font-size: 4.4230769231vw;
  }
}
@media (min-width: 1040px) {
  .whatIsCrossover__copy {
    margin-bottom: 25px;
    padding-bottom: 25px;
    font-size: 46px;
  }
}
.whatIsCrossover__description {
  color: #fff;
  font-size: 3.2028469751vw;
  line-height: 1.8;
}
@media (min-width: 768px) {
  .whatIsCrossover__description {
    font-size: 2.5vw;
  }
}
@media (min-width: 1040px) {
  .whatIsCrossover__description {
    font-size: 26px;
  }
}

.vs {
  text-align: center;
  margin-bottom: 8.896797153vw;
}
@media (min-width: 768px) {
  .vs {
    margin-bottom: 7.6923076923vw;
  }
}
@media (min-width: 1040px) {
  .vs {
    margin-bottom: 80px;
  }
}
.vs__title {
  font-size: 4.9822064057vw;
  margin-bottom: 2.6690391459vw;
}
@media (min-width: 768px) {
  .vs__title {
    font-size: 3.0769230769vw;
    margin-bottom: 2.6923076923vw;
  }
}
@media (min-width: 1040px) {
  .vs__title {
    font-size: 32px;
    margin-bottom: 28px;
  }
}
.vs__content {
  position: relative;
  display: flex;
}
.vs__block {
  width: 50%;
}
.vs__block > dt {
  color: #fff;
  font-weight: bold;
  font-size: 3.2028469751vw;
  padding: 0.5em;
}
@media (min-width: 768px) {
  .vs__block > dt {
    padding: 0.8em;
    font-size: 1.9230769231vw;
  }
}
@media (min-width: 1040px) {
  .vs__block > dt {
    font-size: 20px;
  }
}
.vs__block > dd {
  padding: 4.4483985765vw;
}
@media (min-width: 768px) {
  .vs__block > dd {
    padding: 2.4038461538vw;
  }
}
@media (min-width: 1040px) {
  .vs__block > dd {
    padding: 25px;
  }
}
.vs__block > dd ol {
  display: flex;
  flex-direction: column;
  gap: 1.5em;
}
.vs__block > dd ol > li {
  display: flex;
  flex-direction: column;
  gap: 0.2em;
}
.vs__block > dd ol > li > em {
  font-weight: bold;
  font-size: 3.2028469751vw;
}
@media (min-width: 768px) {
  .vs__block > dd ol > li > em {
    font-size: 2.3076923077vw;
  }
}
@media (min-width: 1040px) {
  .vs__block > dd ol > li > em {
    font-size: 24px;
  }
}
@media (min-width: 768px) {
  .vs__block > dd ol > li > span {
    font-size: 1.7307692308vw;
  }
}
@media (min-width: 1040px) {
  .vs__block > dd ol > li > span {
    font-size: 18px;
  }
}
.vs__block.--normal {
  background-color: #eee;
}
.vs__block.--normal > dt {
  background-color: #757575;
}
.vs__block.--normal > dd {
  color: #222;
}
.vs__block.--crossover {
  background-color: #fff;
  border: 2px solid #293977;
  border-top: none;
}
.vs__block.--crossover > dt {
  background-color: #293977;
}
.vs__numbers {
  position: absolute;
  top: 13.3451957295vw;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  gap: 6.7615658363vw;
  color: #fff;
}
@media (min-width: 768px) {
  .vs__numbers {
    font-size: 3.0769230769vw;
    top: 8.6538461538vw;
    gap: 2.8846153846vw;
  }
}
@media (min-width: 1040px) {
  .vs__numbers {
    font-size: 32px;
    top: 90px;
    gap: 30px;
  }
}
.vs__numbers > div {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 7.1174377224vw;
  height: 7.1174377224vw;
  border-radius: 50%;
  background-color: #293977;
}
@media (min-width: 768px) {
  .vs__numbers > div {
    width: 5.7692307692vw;
    height: 5.7692307692vw;
  }
}
@media (min-width: 1040px) {
  .vs__numbers > div {
    width: 60px;
    height: 60px;
  }
}

.merit3 {
  margin-bottom: 8.896797153vw;
  padding: 0 3.5587188612vw;
}
@media (min-width: 768px) {
  .merit3 {
    margin-bottom: 8.6538461538vw;
    padding: 0;
  }
}
@media (min-width: 1040px) {
  .merit3 {
    margin-bottom: 90px;
  }
}
.merit3 > dt {
  position: relative;
  padding: 0.4em 0.8em 0.4em 3em;
  margin-bottom: 0.4em;
  color: #fff;
  font-weight: bold;
  font-size: 4.9822064057vw;
  background: url("../img/icon_merit_1.png") no-repeat left top;
  background-size: contain;
}
.merit3 > dt::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #1d295a;
  clip-path: polygon(0% 50%, 5% 0%, 95% 0%, 100% 50%, 95% 100%, 5% 100%);
}
@media (min-width: 768px) {
  .merit3 > dt::before {
    clip-path: polygon(0% 50%, 5% 0%, 97% 0%, 100% 50%, 97% 100%, 5% 100%);
  }
}
@media (min-width: 768px) {
  .merit3 > dt {
    font-size: 3.4615384615vw;
  }
}
@media (min-width: 1040px) {
  .merit3 > dt {
    font-size: 36px;
  }
}
.merit3 > dd {
  padding: 0 1em;
  color: #222;
  font-size: 2.846975089vw;
}
@media (min-width: 768px) {
  .merit3 > dd {
    font-size: 1.9230769231vw;
  }
}
@media (min-width: 1040px) {
  .merit3 > dd {
    font-size: 20px;
  }
}
.merit3 > dd + dt {
  margin-top: 5.3380782918vw;
}
@media (min-width: 768px) {
  .merit3 > dd + dt {
    margin-top: 3.8461538462vw;
  }
}
@media (min-width: 1040px) {
  .merit3 > dd + dt {
    margin-top: 40px;
  }
}

.structure {
  margin-bottom: 17.793594306vw;
  padding: 16.0142348754vw 0;
  color: #fff;
  background-color: #1c2857;
}
@media (min-width: 768px) {
  .structure {
    margin-bottom: 11.5384615385vw;
    padding: 9.6153846154vw 0 11.5384615385vw;
  }
}
@media (min-width: 1040px) {
  .structure {
    margin-bottom: 120px;
    padding: 100px 0 120px;
  }
}
.structure__title {
  width: 73.665480427vw;
}
@media (min-width: 768px) {
  .structure__title {
    width: 57.6923076923vw;
  }
}
@media (min-width: 1040px) {
  .structure__title {
    width: 600px;
  }
}
@media (min-width: 768px) {
  .structure__lead {
    margin-bottom: 0.9615384615vw;
  }
}
@media (min-width: 1040px) {
  .structure__lead {
    margin-bottom: 10px;
  }
}
.structure__content {
  padding: 0 3.5587188612vw;
}
@media (min-width: 768px) {
  .structure__content {
    padding: 0 3.8461538462vw;
  }
}
@media (min-width: 1040px) {
  .structure__content {
    padding: 0 40px;
  }
}

.step {
  margin-bottom: 12.4555160142vw;
}
@media (min-width: 768px) {
  .step {
    margin-bottom: 5.7692307692vw;
  }
}
@media (min-width: 1040px) {
  .step {
    margin-bottom: 60px;
  }
}
.step__title {
  line-height: 1;
  color: #081239;
  text-align: center;
  font-size: 19.5729537367vw;
}
@media (min-width: 768px) {
  .step__title {
    font-size: 16.3461538462vw;
  }
}
@media (min-width: 1040px) {
  .step__title {
    font-size: 170px;
  }
}
.step__list {
  margin-top: -4.4483985765vw;
}
@media (min-width: 768px) {
  .step__list {
    margin-top: -5.7692307692vw;
  }
}
@media (min-width: 1040px) {
  .step__list {
    margin-top: -60px;
  }
}
.step__item {
  position: relative;
  display: flex;
  gap: 3.5587188612vw;
}
.step__item::before {
  content: "";
  position: absolute;
  top: 10.6761565836vw;
  bottom: 1.7793594306vw;
  left: 4.4483985765vw;
  width: 1px;
  background-color: #868ca3;
}
.--third::before {
  content: none;
}

@media (min-width: 768px) {
  .step__item {
    gap: 1.9230769231vw;
  }
  .step__item::before {
    top: 5.3846153846vw;
    bottom: 0.9615384615vw;
    left: 2.2596153846vw;
  }
}
@media (min-width: 1040px) {
  .step__item {
    gap: 20px;
  }
}
.step__itemNumber {
  display: inline-flex;
  flex: 0 0 auto;
  color: #1d295a;
  background-color: #fff600;
  width: 8.896797153vw;
  height: 8.896797153vw;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  font-size: 5.3380782918vw;
}
@media (min-width: 768px) {
  .step__itemNumber {
    font-size: 2.6923076923vw;
    width: 4.5192307692vw;
    height: 4.5192307692vw;
  }
}
@media (min-width: 1040px) {
  .step__itemNumber {
    font-size: 28px;
    width: 47px;
    height: 47px;
  }
}
.step__itemContent > dt {
  margin-bottom: 0.2em;
  font-weight: bold;
  font-size: 5.3380782918vw;
}
@media (min-width: 768px) {
  .step__itemContent > dt {
    font-size: 2.6923076923vw;
  }
}
@media (min-width: 1040px) {
  .step__itemContent > dt {
    font-size: 28px;
  }
}
.step__itemContent > dd {
  padding-bottom: 7.1174377224vw;
  line-height: 1.8;
  font-size: 2.846975089vw;
}
@media (min-width: 768px) {
  .step__itemContent > dd {
    padding-bottom: 3.8461538462vw;
    font-size: 1.7307692308vw;
  }
}
@media (min-width: 1040px) {
  .step__itemContent > dd {
    padding-bottom: 40px;
    font-size: 18px;
  }
}
.--third .step__itemContent > dd {
  padding-bottom: 0;
}

.atc {
  background-color: #091239;
}
@media (min-width: 768px) {
  .atc {
    display: flex;
  }
}
@media (min-width: 768px) {
  .atc__image {
    flex: 0 0 28.9423076923vw;
  }
}
@media (min-width: 1040px) {
  .atc__image {
    flex-basis: 301px;
  }
}
.atc__content {
  padding: 3.2028469751vw 0 6.2277580071vw;
}
@media (min-width: 768px) {
  .atc__content {
    padding: 2.8846153846vw 2.4038461538vw 0 0;
  }
}
@media (min-width: 1040px) {
  .atc__content {
    padding: 30px 25px 0 0;
  }
}
.atc__title {
  font-size: 3.2028469751vw;
  margin-bottom: 2.6690391459vw;
  padding: 0.2em 1em;
  border-left: 8px solid #fff600;
}
@media (min-width: 768px) {
  .atc__title {
    border-left-width: 12px;
    font-size: 2.3076923077vw;
    margin-bottom: 1.7307692308vw;
  }
}
@media (min-width: 1040px) {
  .atc__title {
    font-size: 24px;
    margin-bottom: 18px;
  }
}
.atc__lead {
  margin-bottom: 4.4483985765vw;
  padding: 0 3.5587188612vw 0 4.4483985765vw;
  line-height: 1.8;
}
@media (min-width: 768px) {
  .atc__lead {
    margin-bottom: 2.4038461538vw;
    font-size: 1.5384615385vw;
  }
}
@media (min-width: 1040px) {
  .atc__lead {
    margin-bottom: 25px;
    padding: 0 20px 0 25px;
    font-size: 16px;
  }
}
.atc__details {
  display: flex;
  align-items: center;
  gap: 1em;
  padding: 0 3.5587188612vw;
}
@media (min-width: 768px) {
  .atc__details {
    padding: 0 3.8461538462vw;
  }
}
@media (min-width: 1040px) {
  .atc__details {
    padding: 0 40px;
  }
}
.atc__details > ul {
  display: flex;
  flex-direction: column;
  gap: 1em;
  font-size: 3.2028469751vw;
  font-weight: bold;
}
@media (min-width: 768px) {
  .atc__details > ul {
    font-size: 1.7307692308vw;
  }
}
@media (min-width: 1040px) {
  .atc__details > ul {
    font-size: 18px;
  }
}
.atc__details > ul > li {
  display: flex;
  align-items: center;
  gap: 0.3em;
}
.atc__details > ul > li .material-symbols-outlined {
  color: #fff600;
}
@media (min-width: 768px) {
  .atc__details {
    gap: 0.9615384615vw;
  }
}
@media (min-width: 1040px) {
  .atc__details {
    gap: 10px;
  }
}
.atc__90 {
  width: 29.2704626335vw;
}
@media (min-width: 768px) {
  .atc__90 {
    width: 16.4423076923vw;
  }
}
@media (min-width: 1040px) {
  .atc__90 {
    width: 171px;
  }
}

.value__title {
  width: 74.2882562278vw;
}
@media (min-width: 768px) {
  .value__title {
    width: 59.6153846154vw;
  }
}
@media (min-width: 1040px) {
  .value__title {
    width: 620px;
  }
}
.value__lead {
  text-align: center;
  font-weight: bold;
  margin-bottom: 7.1174377224vw;
  font-size: 4.2704626335vw;
}
@media (min-width: 768px) {
  .value__lead {
    margin-bottom: 3.8461538462vw;
    font-size: 2.3076923077vw;
  }
}
@media (min-width: 1040px) {
  .value__lead {
    margin-bottom: 40px;
    font-size: 24px;
  }
}
@media (max-width: 767px) {
  .value__tableBox {
    padding: 0 3.5587188612vw;
  }
}
.value__pr {
  background: url("../img/pic_bg_value.png") no-repeat center top;
  background-size: 100% 100%;
}
@media (min-width: 768px) {
  .value__pr {
    background-image: url("../img/pic_bg_value_pc.png");
  }
}
.value__pr ul {
  display: flex;
  flex-wrap: wrap;
  padding: 11.5658362989vw 4.0925266904vw;
}
@media (min-width: 768px) {
  .value__pr ul {
    margin: 0 auto;
    width: 96.1538461538vw;
    padding: 18.75vw 0.9615384615vw;
  }
}
@media (min-width: 1040px) {
  .value__pr ul {
    width: 1000px;
    padding: 195px 10px;
  }
}
.value__pr ul > li {
  width: 50%;
}
@media (min-width: 768px) {
  .value__pr ul > li {
    width: 25%;
  }
}

.valueTable {
  position: relative;
  z-index: 1;
  text-align: left;
  width: 100%;
  border-spacing: 1px;
  margin-bottom: 6.2277580071vw;
}
@media (min-width: 768px) {
  .valueTable {
    table-layout: fixed;
    margin-bottom: 0;
  }
}
@media (max-width: 767px) {
  .valueTable thead {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
  }
}
@media (min-width: 768px) {
  .valueTable thead th {
    text-align: center;
    color: #fff;
    background-color: #1f2a5a;
    font-size: 1.9230769231vw;
    padding: 0.8em;
  }
  .valueTable thead th.col-main {
    background-color: #0c8100;
  }
  .valueTable thead th.col-normal {
    background-color: #919191;
  }
}
@media (min-width: 1040px) {
  .valueTable thead th {
    font-size: 20px;
  }
}
@media (max-width: 767px) {
  .valueTable,
  .valueTable tbody,
  .valueTable tr,
  .valueTable th,
  .valueTable td {
    display: block;
    width: 100%;
  }
}
@media (max-width: 767px) {
  .valueTable tr {
    margin-bottom: 3.5587188612vw;
  }
}
.valueTable tbody th {
  background: #1f2a5a;
  color: #fff;
  font-size: 3.5587188612vw;
  padding: 0.3em 3.5587188612vw;
}
@media (min-width: 768px) {
  .valueTable tbody th {
    font-size: 1.9230769231vw;
    padding: 0.8em 1em;
  }
}
@media (min-width: 1040px) {
  .valueTable tbody th {
    font-size: 20px;
  }
}
.valueTable td {
  border: none;
  border-top: 1px solid #fff;
  background-color: #eee;
  color: #222;
}
@media (max-width: 767px) {
  .valueTable td {
    position: relative;
    padding: 3.2028469751vw 3.2028469751vw 3.2028469751vw 35.5871886121vw;
    font-size: 3.2028469751vw;
  }
  .valueTable td::before {
    content: attr(data-label);
    display: flex;
    align-items: center;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 32.0284697509vw;
    padding-left: 3.5587188612vw;
    font-weight: bold;
    color: #fff;
    background-color: #919191;
  }
}
@media (min-width: 768px) {
  .valueTable td {
    padding: 0.8em 1rem;
  }
}
.valueTable td.highlight {
  color: #0c8100;
  font-weight: bold;
  font-size: 3.5587188612vw;
  background-color: #ddf3de;
}
@media (max-width: 767px) {
  .valueTable td.highlight::before {
    background-color: #0c8100;
  }
}
@media (min-width: 768px) {
  .valueTable td.highlight {
    font-size: 1.9230769231vw;
  }
}
@media (min-width: 1040px) {
  .valueTable td.highlight {
    font-size: 20px;
  }
}

.change {
  text-align: center;
}
@media (min-width: 768px) {
  .change {
    margin-top: -5.7692307692vw;
  }
}
@media (min-width: 1040px) {
  .change {
    margin-top: -60px;
  }
}
.change__title {
  position: relative;
  z-index: 1;
  font-size: 7.1174377224vw;
  padding: 8.896797153vw 3.024911032vw 16.0142348754vw;
  background: url("../img/pic_bg_change_triangle.svg") no-repeat center center;
  background-size: 100% 100%;
}
@media (min-width: 768px) {
  .change__title {
    padding: 5.7692307692vw 2.4038461538vw 8.6538461538vw;
    font-size: 3.8461538462vw;
  }
}
@media (min-width: 1040px) {
  .change__title {
    padding: 60px 25px 90px;
    font-size: 40px;
  }
}
.change__content {
  margin-top: -11.5658362989vw;
  background: url("../img/pic_bg_change.jpg") no-repeat center top;
  background-size: cover;
}
@media (min-width: 768px) {
  .change__content {
    margin-top: -6.25vw;
    background-image: url("../img/pic_bg_change_pc.jpg");
  }
}
@media (min-width: 1040px) {
  .change__content {
    margin-top: -65px;
  }
}
.change__content dl {
  display: flex;
  flex-direction: column;
  gap: 3.5587188612vw;
  padding: 22.6868327402vw 7.4733096085vw;
}
@media (min-width: 768px) {
  .change__content dl {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 2.3076923077vw;
    width: 96.1538461538vw;
    margin: 0 auto;
    padding: 10.5769230769vw 0;
  }
}
@media (min-width: 1040px) {
  .change__content dl {
    gap: 24px;
    width: 1000px;
    padding: 110px 0;
  }
}
.change__content dl > div {
  padding: 4.9822064057vw 1.7793594306vw;
  background-color: rgba(255, 255, 255, 0.9);
}
@media (min-width: 768px) {
  .change__content dl > div {
    flex: 1 1 calc(50% - 1.1538461538vw);
    padding: 2.6923076923vw 0.9615384615vw;
  }
}
@media (min-width: 1040px) {
  .change__content dl > div {
    flex: 1 1 calc(50% - 12px);
    padding: 26px 10px;
  }
}
.change__content dl > div > dt {
  display: inline-block;
  padding: 0 0.3em;
  margin-bottom: 0.3em;
  font-size: 6.2277580071vw;
  font-weight: bold;
  background: linear-gradient(transparent 50%, #fff600 60%);
}
@media (min-width: 768px) {
  .change__content dl > div > dt {
    font-size: 3.4615384615vw;
  }
}
@media (min-width: 1040px) {
  .change__content dl > div > dt {
    font-size: 36px;
  }
}
.change__content dl > div > dd {
  font-size: 3.5587188612vw;
  color: #222;
}
@media (min-width: 768px) {
  .change__content dl > div > dd {
    font-size: 1.9230769231vw;
  }
}
@media (min-width: 1040px) {
  .change__content dl > div > dd {
    font-size: 20px;
  }
}

.voice {
  padding-bottom: 17.793594306vw;
  background-color: #eff1fb;
}
@media (min-width: 768px) {
  .voice {
    padding-bottom: 9.6153846154vw;
  }
}
@media (min-width: 1040px) {
  .voice {
    padding-bottom: 100px;
  }
}
.voice__title {
  width: 66.3701067616vw;
}
@media (min-width: 768px) {
  .voice__title {
    width: 52.6923076923vw;
  }
}
@media (min-width: 1040px) {
  .voice__title {
    width: 548px;
  }
}
.voice__list {
  display: flex;
  flex-direction: column;
  gap: 3.5587188612vw;
  padding: 0 3.5587188612vw;
}
@media (min-width: 768px) {
  .voice__list {
    gap: 1.9230769231vw;
    padding: 0 3.8461538462vw;
  }
}
@media (min-width: 1040px) {
  .voice__list {
    gap: 20px;
    padding: 0 40px;
  }
}
.voice__item {
  padding: 4.0925266904vw;
  color: #222;
  background-color: #fff;
}
@media (min-width: 768px) {
  .voice__item {
    padding: 3.8461538462vw;
  }
}
@media (min-width: 1040px) {
  .voice__item {
    padding: 40px;
  }
}
.voice__itemTitle {
  margin-bottom: 1.7793594306vw;
  padding-left: 1em;
  font-size: 4.2704626335vw;
  font-weight: bold;
  border-left: 5px solid #334694;
}
@media (min-width: 768px) {
  .voice__itemTitle {
    font-size: 2.3076923077vw;
    margin-bottom: 1.25vw;
    border-left-width: 7px;
  }
}
@media (min-width: 1040px) {
  .voice__itemTitle {
    font-size: 24px;
    margin-bottom: 13px;
  }
}
.voice__nameBox {
  display: flex;
  align-items: center;
  gap: 1.7793594306vw;
  margin-bottom: 2.6690391459vw;
  font-weight: bold;
}
@media (min-width: 768px) {
  .voice__nameBox {
    gap: 1.9230769231vw;
    margin-bottom: 1.4423076923vw;
  }
}
@media (min-width: 1040px) {
  .voice__nameBox {
    gap: 20px;
    margin-bottom: 15px;
  }
}
.voice__pic {
  width: 7.8291814947vw;
}
@media (min-width: 768px) {
  .voice__pic {
    width: 5.7692307692vw;
  }
}
@media (min-width: 1040px) {
  .voice__pic {
    width: 60px;
  }
}
.voice__name {
  display: flex;
  align-items: center;
  font-weight: bold;
}
@media (min-width: 768px) {
  .voice__name {
    font-size: 1.9230769231vw;
  }
}
@media (min-width: 1040px) {
  .voice__name {
    font-size: 20px;
  }
}
.voice__name::after {
  content: "★★★★★";
  color: #ffba00;
  margin-left: 0.5em;
  font-size: 3.5587188612vw;
}
@media (min-width: 768px) {
  .voice__name::after {
    font-size: 2.3076923077vw;
  }
}
@media (min-width: 1040px) {
  .voice__name::after {
    font-size: 24px;
  }
}
.voice__beforeAfter {
  display: flex;
  align-items: center;
  gap: 0.3558718861vw;
  text-align: center;
}
@media (min-width: 768px) {
  .voice__beforeAfter {
    gap: 1em;
  }
}
@media (min-width: 768px) {
  .voice__beforeAfter dl {
    display: flex;
    align-items: center;
    gap: 0.5em;
    font-size: 1.9230769231vw;
  }
}
@media (min-width: 1040px) {
  .voice__beforeAfter dl {
    font-size: 20px;
  }
}
.voice__beforeAfter dl > dt {
  color: #fff;
  padding: 0.3em 0.5em;
  margin-bottom: 0.3em;
}
@media (min-width: 768px) {
  .voice__beforeAfter dl > dt {
    padding: 0.1em 0.5em;
    margin-bottom: 0;
  }
}
.voice__beforeAfter dl > dd {
  color: #222;
}
.voice__beforeAfter dl.voice__before {
  flex: 0 0 35%;
  flex-grow: 0;
}
.voice__beforeAfter dl.voice__before > dt {
  background-color: #919191;
}
@media (min-width: 768px) {
  .voice__beforeAfter dl.voice__before {
    flex-basis: auto;
  }
  .voice__beforeAfter dl.voice__before > dt {
    flex: 1 0 11.5384615385vw;
  }
}
@media (min-width: 1040px) {
  .voice__beforeAfter dl.voice__before > dt {
    flex: 1 0 120px;
  }
}
.voice__beforeAfter dl.voice__after {
  flex: 1 1 auto;
  font-weight: bold;
}
.voice__beforeAfter dl.voice__after > dt {
  background-color: #2c8123;
}
.voice__beforeAfter dl.voice__after > dd {
  color: #0c8100;
}
@media (min-width: 768px) {
  .voice__beforeAfter dl.voice__after > dt {
    flex: 0 0 23.0769230769vw;
  }
}
@media (min-width: 1040px) {
  .voice__beforeAfter dl.voice__after > dt {
    flex: 0 0 240px;
  }
}
.voice__beforeAfter .material-symbols-outlined {
  color: #444;
}

.faq {
  padding: 8.0071174377vw 0 17.793594306vw;
}
@media (min-width: 768px) {
  .faq {
    padding: 4.3269230769vw 0 11.5384615385vw;
  }
}
@media (min-width: 1040px) {
  .faq {
    padding: 45px 0 120px;
  }
}
.faq hgroup {
  position: relative;
  margin-bottom: 8.896797153vw;
  padding-top: 21.3523131673vw;
}
@media (min-width: 768px) {
  .faq hgroup {
    margin-bottom: 4.8076923077vw;
    padding-top: 16.3461538462vw;
  }
}
@media (min-width: 1040px) {
  .faq hgroup {
    margin-bottom: 50px;
    padding-top: 170px;
  }
}
.faq hgroup::before {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  content: "Q&A";
  line-height: 1;
  color: #eff1fb;
  font-size: 35.5871886121vw;
}
@media (min-width: 768px) {
  .faq hgroup::before {
    font-size: 27.8846153846vw;
  }
}
@media (min-width: 1040px) {
  .faq hgroup::before {
    font-size: 290px;
  }
}
.faq__title {
  width: 52.846975089vw;
}
@media (min-width: 768px) {
  .faq__title {
    width: 42.0192307692vw;
  }
}
@media (min-width: 1040px) {
  .faq__title {
    width: 437px;
  }
}
.faq__content {
  display: flex;
  flex-direction: column;
  gap: 1px;
  padding: 0 3.5587188612vw;
}
@media (min-width: 768px) {
  .faq__content {
    padding: 0 10.5769230769vw;
  }
}
@media (min-width: 1040px) {
  .faq__content {
    padding: 0 110px;
  }
}

.faqItem__summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2.6690391459vw;
  padding: 2.1352313167vw 3.2028469751vw;
  color: #fff;
  background-color: #31438b;
  font-weight: bold;
  font-size: 3.2028469751vw;
  cursor: pointer;
}
.faqItem__summary:hover {
  background-color: #1d2856;
}
@media (min-width: 768px) {
  .faqItem__summary {
    gap: 2.8846153846vw;
    padding: 2.8846153846vw;
    font-size: 2.3076923077vw;
  }
}
@media (min-width: 1040px) {
  .faqItem__summary {
    gap: 30px;
    padding: 30px;
    font-size: 24px;
  }
}
.faqItem__summary::before {
  content: "Q";
  font-size: 5.3380782918vw;
}
@media (min-width: 768px) {
  .faqItem__summary::before {
    line-height: 1;
    font-size: 4.2307692308vw;
  }
}
@media (min-width: 1040px) {
  .faqItem__summary::before {
    font-size: 44px;
  }
}
.faqItem__summary::-webkit-details-marker {
  display: none;
}
.faqItem[open] .faqItem__summary {
  background-color: #112160;
}
.faqItem[open] .faqItem__summary .material-symbols-outlined {
  transform: rotate(180deg);
}

.faqItem__summaryTxt {
  flex-grow: 1;
}
.faqItem__content {
  overflow: hidden;
  background-color: #f5f5f5;
}
.faqItem__contentInner {
  position: relative;
  padding: 3.5587188612vw 3.2028469751vw 3.5587188612vw 9.7864768683vw;
  color: #222;
  line-height: 1.8;
}
@media (min-width: 768px) {
  .faqItem__contentInner {
    font-size: 1.7307692308vw;
    padding: 2.4038461538vw 2.4038461538vw 2.4038461538vw 9.1346153846vw;
  }
}
@media (min-width: 1040px) {
  .faqItem__contentInner {
    padding: 25px 25px 25px 95px;
    font-size: 18px;
  }
}
.faqItem__contentInner::before {
  position: absolute;
  top: 1.4234875445vw;
  left: 3.2028469751vw;
  content: "A";
  font-size: 5.3380782918vw;
  color: #1d295a;
}
@media (min-width: 768px) {
  .faqItem__contentInner::before {
    top: 0.1923076923vw;
    left: 2.8846153846vw;
    font-size: 4.2307692308vw;
  }
}
@media (min-width: 1040px) {
  .faqItem__contentInner::before {
    top: 2px;
    left: 30px;
    font-size: 44px;
  }
}

.only {
  padding: 11.5658362989vw 0 12.4555160142vw;
  color: #fff;
  background-color: #1c2857;
}
@media (min-width: 768px) {
  .only {
    padding: 11.5384615385vw 0 8.6538461538vw;
  }
}
@media (min-width: 1040px) {
  .only {
    padding: 120px 0 90px;
  }
}
.only__title {
  width: 81.5836298932vw;
}
@media (min-width: 768px) {
  .only__title {
    width: 72.6923076923vw;
  }
}
@media (min-width: 1040px) {
  .only__title {
    width: 756px;
  }
}
.only__lead {
  text-align: center;
  margin-bottom: 6.2277580071vw;
}
@media (min-width: 768px) {
  .only__lead {
    margin-bottom: 3.8461538462vw;
  }
}
@media (min-width: 1040px) {
  .only__lead {
    margin-bottom: 40px;
  }
}
.only__finish {
  display: flex;
  align-items: center;
  gap: 0.75em; /* 文字と線のあき */
  margin: 0 0 0.5em;
  padding: 0 3.5587188612vw;
  color: #ffe400; /* 例: 明るい黄 */
  font-weight: bold;
  font-size: 4.2704626335vw;
}
@media (min-width: 768px) {
  .only__finish {
    font-size: 2.6923076923vw;
    padding: 0 20.1923076923vw;
  }
}
@media (min-width: 1040px) {
  .only__finish {
    padding: 0 210px;
    font-size: 28px;
  }
}
.only__finish::before, .only__finish::after {
  content: "";
  flex: 1 1 auto;
  display: block;
  min-width: 0;
  height: 1px;
  background-color: currentColor;
}
.only__listBox {
  text-align: center;
}
.only__list {
  display: inline-grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.5em 1.5em;
  margin-top: 5.3380782918vw;
}
@media (min-width: 768px) {
  .only__list {
    margin-top: 2.8846153846vw;
    gap: 0.9615384615vw;
    padding: 0 20.1923076923vw;
  }
}
@media (min-width: 1040px) {
  .only__list {
    margin-top: 30px;
    gap: 10px;
    padding: 0 210px;
  }
}
.only__list > li {
  display: flex;
  align-items: center;
  gap: 0.5em;
}
.only__list > li .material-symbols-outlined {
  color: #fff600;
}

.career {
  padding: 12.4555160142vw 0 17.793594306vw;
  background: url("../img/pic_bg_only.jpg") no-repeat center top;
  background-size: cover;
}
@media (min-width: 768px) {
  .career {
    background-image: url("../img/pic_bg_only_pc.jpg");
    padding: 9.6153846154vw 0 11.5384615385vw;
  }
}
@media (min-width: 1040px) {
  .career {
    padding: 100px 0 120px;
  }
}
.career__content {
  color: #fff;
  padding: 0 3.5587188612vw;
}
@media (min-width: 768px) {
  .career__content {
    padding: 0 5.7692307692vw;
  }
}
@media (min-width: 1040px) {
  .career__content {
    padding: 0 60px;
  }
}
.career__lead {
  margin-bottom: 7.1174377224vw;
  font-weight: bold;
  font-size: 4.2704626335vw;
  line-height: 1.8;
  font-feature-settings: "palt";
  letter-spacing: 0.03em;
}
@media (min-width: 768px) {
  .career__lead {
    margin-bottom: 2.4038461538vw;
    font-size: 3.0769230769vw;
  }
}
@media (min-width: 1040px) {
  .career__lead {
    font-size: 32px;
    margin-bottom: 25px;
  }
}
.career__copy {
  width: 72.5978647687vw;
  padding-top: 0.5em;
  margin-bottom: 8.896797153vw;
}
@media (min-width: 768px) {
  .career__copy {
    width: 57.5961538462vw;
    padding-top: 1em;
    margin-bottom: 5.7692307692vw;
  }
}
@media (min-width: 1040px) {
  .career__copy {
    width: 599px;
    margin-bottom: 60px;
  }
}

.company {
  padding: 14.2348754448vw 0 21.3523131673vw;
}
@media (min-width: 768px) {
  .company {
    padding: 11.5384615385vw 0;
  }
}
@media (min-width: 1040px) {
  .company {
    padding: 120px 0;
  }
}
.company .company__head {
  color: #fff;
}
.company__title {
  width: 88.9679715302vw;
}
@media (min-width: 768px) {
  .company__title {
    width: 87.1153846154vw;
  }
}
@media (min-width: 1040px) {
  .company__title {
    width: 906px;
  }
}
.company__lead {
  margin-bottom: 7.1174377224vw;
}
@media (min-width: 768px) {
  .company__lead {
    margin-bottom: 4.8076923077vw;
  }
}
@media (min-width: 1040px) {
  .company__lead {
    margin-bottom: 50px;
  }
}
.company__content {
  margin-bottom: 13.3451957295vw;
  padding: 0 3.5587188612vw;
}
@media (min-width: 768px) {
  .company__content {
    margin-bottom: 7.6923076923vw;
    padding: 0;
  }
}
@media (min-width: 1040px) {
  .company__content {
    margin-bottom: 80px;
  }
}
.company__section {
  display: flex;
  flex-direction: column;
  gap: 7.1174377224vw;
}
@media (min-width: 768px) {
  .company__section {
    gap: 4.8076923077vw;
  }
}
@media (min-width: 1040px) {
  .company__section {
    gap: 50px;
  }
}
.company__strengthList {
  display: flex;
  flex-direction: column;
  gap: 1.7793594306vw;
  margin-bottom: 8.0071174377vw;
}
@media (min-width: 768px) {
  .company__strengthList {
    gap: 0.9615384615vw;
    margin-bottom: 5.7692307692vw;
  }
}
@media (min-width: 1040px) {
  .company__strengthList {
    gap: 10px;
    margin-bottom: 60px;
  }
}

.companyPhilosophy {
  margin-bottom: 5.3380782918vw;
  padding: 2em 2em 2.5em;
  border: 2px solid #18224c;
  text-align: center;
}
@media (min-width: 768px) {
  .companyPhilosophy {
    margin-bottom: 3.8461538462vw;
  }
}
@media (min-width: 1040px) {
  .companyPhilosophy {
    margin-bottom: 40px;
  }
}
.companyPhilosophy__hgroup {
  margin-bottom: 1.5em;
}
@media (min-width: 768px) {
  .companyPhilosophy__en {
    font-size: 2.3076923077vw;
  }
}
@media (min-width: 1040px) {
  .companyPhilosophy__en {
    font-size: 24px;
  }
}
.companyPhilosophy__title {
  display: flex;
  align-items: center;
  gap: 1em; /* 文字と線のあき */
  margin: 0.2em 0 0.5em;
  font-weight: bold;
}
@media (min-width: 768px) {
  .companyPhilosophy__title {
    font-size: 1.9230769231vw;
  }
}
@media (min-width: 1040px) {
  .companyPhilosophy__title {
    font-size: 20px;
  }
}
.companyPhilosophy__title::before, .companyPhilosophy__title::after {
  content: "";
  flex: 1 1 auto;
  display: block;
  min-width: 0;
  height: 1px;
  background-color: currentColor;
}
.companyPhilosophy__slogan {
  margin-bottom: 1em;
  font-weight: bold;
  font-size: 5.3380782918vw;
}
@media (min-width: 768px) {
  .companyPhilosophy__slogan {
    font-size: 3.4615384615vw;
  }
}
@media (min-width: 1040px) {
  .companyPhilosophy__slogan {
    font-size: 36px;
  }
}
.companyPhilosophy__mark {
  background: linear-gradient(transparent 50%, #fff600 60%);
}
.companyPhilosophy__text {
  text-align: left;
  font-size: 3.5587188612vw;
}
@media (min-width: 768px) {
  .companyPhilosophy__text {
    font-size: 1.9230769231vw;
  }
}
@media (min-width: 1040px) {
  .companyPhilosophy__text {
    font-size: 20px;
  }
}

.companyStrength {
  padding: 3.5587188612vw 5.3380782918vw 5.3380782918vw;
  background-color: #ebeef9;
}
@media (min-width: 768px) {
  .companyStrength {
    padding: 2.4038461538vw 3.8461538462vw 3.8461538462vw;
  }
}
@media (min-width: 1040px) {
  .companyStrength {
    padding: 25px 40px 40px;
  }
}
.companyStrength__title {
  display: flex;
  align-items: center;
  gap: 0.5em;
  padding-bottom: 0.5em;
  margin-bottom: 0.7em;
  border-bottom: 1px solid #abb0c5;
  font-size: 3.5587188612vw;
}
@media (min-width: 768px) {
  .companyStrength__title {
    font-size: 2.3076923077vw;
  }
}
@media (min-width: 1040px) {
  .companyStrength__title {
    font-size: 24px;
  }
}
.companyStrength__title::before {
  content: "";
  flex: 0 0 7.8291814947vw;
  height: 7.8291814947vw;
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 100%;
}
@media (min-width: 768px) {
  .companyStrength__title::before {
    flex: 0 0 6.3461538462vw;
    height: 6.3461538462vw;
  }
}
@media (min-width: 1040px) {
  .companyStrength__title::before {
    flex: 0 0 66px;
    height: 66px;
  }
}
.companyStrength__title.--badge::before {
  background-image: url("../img/icon_badge.png");
}
.companyStrength__title.--japan::before {
  background-image: url("../img/icon_japan.png");
}
.companyStrength__title.--shield::before {
  background-image: url("../img/icon_shield.png");
}
.companyStrength__text {
  color: #222;
}

.sectionBar {
  padding: 0.3em 3.5587188612vw;
  color: #fff;
  font-weight: bold;
  background-color: #1d295a;
  font-size: 3.5587188612vw;
}
@media (min-width: 768px) {
  .sectionBar {
    padding: 0.5em 1.9230769231vw;
    font-size: 1.9230769231vw;
  }
}
@media (min-width: 1040px) {
  .sectionBar {
    padding: 0.5em 20px;
    font-size: 20px;
  }
}

.companyTable {
  width: 100%;
  color: #222;
  border-collapse: collapse;
  border-spacing: 0;
  border: none;
}
.companyTable tr {
  border-bottom: 1px solid #eee;
}
.companyTable tr th {
  text-align: left;
  padding: 1em 3.5587188612vw;
  white-space: nowrap;
}
@media (min-width: 768px) {
  .companyTable tr th {
    padding: 1.5em 1.9230769231vw;
  }
}
@media (min-width: 1040px) {
  .companyTable tr th {
    padding: 1.5em 20px;
  }
}
.companyTable tr td {
  padding: 1em 3.5587188612vw;
}
@media (min-width: 768px) {
  .companyTable tr td {
    padding: 1.5em 1.9230769231vw;
  }
}
@media (min-width: 1040px) {
  .companyTable tr td {
    padding: 1.5em 20px;
  }
}

.companyLocation__lead {
  padding: 1em 3.5587188612vw;
}
@media (min-width: 768px) {
  .companyLocation__lead {
    padding: 1.5em 1.9230769231vw;
  }
}
@media (min-width: 1040px) {
  .companyLocation__lead {
    padding: 1.5em 20px;
  }
}
.companyLocation__content {
  display: flex;
  flex-direction: column;
  gap: 6.2277580071vw;
}
@media (min-width: 768px) {
  .companyLocation__content {
    gap: 3.8461538462vw;
  }
}
@media (min-width: 1040px) {
  .companyLocation__content {
    gap: 40px;
  }
}

.companyRegion {
  color: #222;
}
.companyRegion__bar {
  color: #1d295a;
  padding: 0.3em 2.4911032028vw;
  margin-bottom: 1em;
  background-color: #f1f1f1;
  border-left: 6px solid currentColor;
}
@media (min-width: 768px) {
  .companyRegion__bar {
    font-size: 1.9230769231vw;
    padding: 0.5em 1.9230769231vw;
  }
}
@media (min-width: 1040px) {
  .companyRegion__bar {
    padding: 0.5em 20px;
    font-size: 20px;
  }
}
.companyRegion > dl {
  display: flex;
  flex-direction: column;
  gap: 1.2em;
  padding-left: 3.5587188612vw;
}
@media (min-width: 768px) {
  .companyRegion > dl {
    padding-left: 1.9230769231vw;
  }
}
@media (min-width: 1040px) {
  .companyRegion > dl {
    padding-left: 20px;
  }
}
.companyRegion > dl > div > dt {
  font-weight: bold;
  margin-bottom: 0.3em;
}
.companyRegion > dl > div > dt em {
  display: inline-block;
  color: #fff;
  background-color: #1d295a;
  padding: 0.1em 0.6em;
  margin-right: 0.5em;
  font-size: 2.4911032028vw;
}
@media (min-width: 768px) {
  .companyRegion > dl > div > dt em {
    font-size: 1.3461538462vw;
  }
}
@media (min-width: 1040px) {
  .companyRegion > dl > div > dt em {
    font-size: 14px;
  }
}

.affiliation {
  color: #222;
}
.affiliation ul {
  padding: 1em 0 0 3.5587188612vw;
  line-height: 1.8;
}
@media (min-width: 768px) {
  .affiliation ul {
    padding: 1.5em 0 0 1.9230769231vw;
  }
}
@media (min-width: 1040px) {
  .affiliation ul {
    padding: 1.5em 0 0 20px;
  }
}
.affiliation ul > li {
  text-indent: -1em;
  padding-left: 1em;
}
.affiliation ul > li::before {
  content: "・";
}

.siteFooter {
  padding: 6.2277580071vw 3.5587188612vw 20.462633452vw;
  color: #fff;
  background-color: #1d295a;
}
@media (min-width: 768px) {
  .siteFooter {
    padding: 3.3653846154vw 5.7692307692vw 11.5384615385vw;
  }
}
@media (min-width: 1040px) {
  .siteFooter {
    padding: 35px 60px 120px;
  }
}
.siteFooter__content {
  display: flex;
  flex-direction: column;
  gap: 3.5587188612vw;
  padding-bottom: 4.9822064057vw;
  border-bottom: 1px solid #4a547b;
}
@media (min-width: 768px) {
  .siteFooter__content {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 1.9230769231vw;
    padding-bottom: 2.6923076923vw;
  }
}
@media (min-width: 1040px) {
  .siteFooter__content {
    gap: 20px;
    padding-bottom: 28px;
  }
}
.siteFooter__info {
  display: flex;
  align-items: center;
  gap: 7.1174377224vw;
  padding-left: 3.5587188612vw;
}
@media (min-width: 768px) {
  .siteFooter__info {
    gap: 3.8461538462vw;
    padding-left: 0;
  }
}
@media (min-width: 1040px) {
  .siteFooter__info {
    gap: 40px;
  }
}
.siteFooter__logo {
  width: 12.4555160142vw;
}
@media (min-width: 768px) {
  .siteFooter__logo {
    width: 10.7692307692vw;
  }
}
@media (min-width: 1040px) {
  .siteFooter__logo {
    width: 112px;
  }
}
.siteFooter address {
  font-style: normal;
  display: block;
}
.siteFooter address dl > dt {
  font-weight: bold;
}
@media (min-width: 768px) {
  .siteFooter address dl > dd {
    display: inline-block;
    margin-right: 1em;
  }
}
.siteFooter ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.5em 1.5em;
}
@media (min-width: 768px) {
  .siteFooter ul {
    justify-content: flex-end;
  }
  .siteFooter ul > li {
    white-space: nowrap;
  }
}
.siteFooter__copy {
  text-align: center;
  padding-top: 2em;
  font-size: 2.1352313167vw;
}
@media (min-width: 768px) {
  .siteFooter__copy {
    font-size: 1.1538461538vw;
  }
}
@media (min-width: 1040px) {
  .siteFooter__copy {
    font-size: 12px;
  }
}
/*# sourceMappingURL=common.css.map */
