/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
.mt100 {
  margin-top: 100px !important
}

.mb100 {
  margin-bottom: 100px !important
}

.pt100 {
  padding-top: 100px !important
}

.pb100 {
  padding-bottom: 100px !important
}

.mt90 {
  margin-top: 90px !important
}

.mb90 {
  margin-bottom: 90px !important
}

.pt90 {
  padding-top: 90px !important
}

.pb90 {
  padding-bottom: 90px !important
}

.mt80 {
  margin-top: 80px !important
}

.mb80 {
  margin-bottom: 80px !important
}

.pt80 {
  padding-top: 80px !important
}

.pb80 {
  padding-bottom: 80px !important
}

.mt70 {
  margin-top: 70px !important
}

.mb70 {
  margin-bottom: 70px !important
}

.pt70 {
  padding-top: 70px !important
}

.pb70 {
  padding-bottom: 70px !important
}

.mt60 {
  margin-top: 60px !important
}

.mb60 {
  margin-bottom: 60px !important
}

.pt60 {
  padding-top: 60px !important
}

.pb60 {
  padding-bottom: 60px !important
}

.mt50 {
  margin-top: 50px !important
}

.mb50 {
  margin-bottom: 50px !important
}

.pt50 {
  padding-top: 50px !important
}

.pb50 {
  padding-bottom: 50px !important
}

.mt40 {
  margin-top: 40px !important
}

.mb40 {
  margin-bottom: 40px !important
}

.pt40 {
  padding-top: 40px !important
}

.pb40 {
  padding-bottom: 40px !important
}

.mt30 {
  margin-top: 30px !important
}

.mb30 {
  margin-bottom: 30px !important
}

.pt30 {
  padding-top: 30px !important
}

.pb30 {
  padding-bottom: 30px !important
}

.mt20 {
  margin-top: 20px !important
}

.mb20 {
  margin-bottom: 20px !important
}

.pt20 {
  padding-top: 20px !important
}

.pb20 {
  padding-bottom: 20px !important
}

.mt10 {
  margin-top: 10px !important
}

.mb10 {
  margin-bottom: 10px !important
}

.pt10 {
  padding-top: 10px !important
}

.pb10 {
  padding-bottom: 10px !important
}

.mt0 {
  margin-top: 0px !important
}

.mb0 {
  margin-bottom: 0px !important
}

.pt0 {
  padding-top: 0px !important
}

.pb0 {
  padding-bottom: 0px !important
}

.ls01m { letter-spacing: -1px !important;}
.ls00  { letter-spacing: 0px !important;}
.ls01  { letter-spacing: 1px !important;}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%
}

body {
  margin: 0
}

main {
  display: block
}

h1 {
  font-size: 2em;
  margin: .67em 0
}

hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
  overflow: visible
}

pre {
  font-family: monospace;
  font-size: 1em
}

a {
  background-color: rgba(0, 0, 0, 0)
}

abbr[title] {
  border-bottom: 0;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted
}

b,
strong {
  font-weight: bolder
}

code,
kbd,
samp {
  font-family: monospace;
  font-size: 1em
}

small {
  font-size: 80%
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline
}

sub {
  bottom: -0.25em
}

sup {
  top: -0.5em
}

img {
  border-style: none
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0
}

button,
input {
  overflow: visible
}

button,
select {
  text-transform: none
}

[type=button],
[type=reset],
[type=submit],
button {
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button
}

[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
  border-style: none;
  padding: 0
}

[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring,
button:-moz-focusring {
  outline: 1px dotted ButtonText
}

fieldset {
  padding: .35em .75em .625em
}

legend {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal
}

progress {
  vertical-align: baseline
}

textarea {
  overflow: auto
}

[type=checkbox],
[type=radio] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto
}

[type=search] {
  -webkit-appearance: textfield;
  -moz-appearance: textfield;
  appearance: textfield;
  outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
  appearance: none
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  appearance: button;
  font: inherit
}

details {
  display: block
}

summary {
  display: list-item
}

[hidden],
template {
  display: none
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

html {
  font-size: 62.5%;
  background: #fff
}

body,
button,
input,
textarea,
select {
  color: #231815;
  line-height: 1.8;
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 1.6rem;
  font-weight: 500;
  scroll-behavior: smooth;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-text-size-adjust: 100%
}

::-moz-selection {
  background: #1c7dbf;
  color: #fff
}

::selection {
  background: #1c7dbf;
  color: #fff
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  margin: 0
}

h2+h3,
h3+h4,
h4+h5,
h5+h6 {
  margin-top: calc(5rem/3)
}

ol,
ul {
  list-style: none;
  margin: 0;
  padding: 0
}

li {
  margin: 0;
  padding: 0;
  position: relative
}

dl,
dt,
dd {
  margin: 0;
  padding: 0
}

p {
  margin: 2rem 0
}

a,
button,
img {
  -webkit-transition: .3s;
  transition: .3s
}

a {
  color: #2e98e0
}

a[nohref] {
  color: inherit
}

a[nohref]:hover {
  text-decoration: none
}

a[href^="tel:"] {
  color: inherit;
  text-decoration: none
}

@media all and (min-width: 769px) {
  a[href^="tel:"] {
    pointer-events: none
  }
}

*:focus {
  outline: none
}

strong {
  font-weight: bold
}

em {
  font-style: italic
}

u {
  border-bottom: 1px solid #231815
}

address {
  font-style: normal
}

label {
  cursor: pointer
}

img,
svg,
video {
  border: 0;
  vertical-align: middle
}

img {
  max-width: 100%;
  height: auto
}

figure {
  margin: 0
}

.caption,
figcaption {
  display: block;
  margin-top: 1rem;
  font-size: .88em
}

._nocss {
  margin: 0;
  position: relative;
  background: rgba(0, 0, 0, 0)
}

._nocss::before,
._nocss::after {
  display: none
}

input[type=text],
input[type=tel],
input[type=url],
input[type=email],
input[type=text],
textarea {
  padding: .5rem 1rem;
  width: 100%
}

input[type=submit],
label {
  cursor: pointer
}

iframe {
  border: 0
}

hr {
  margin: 4rem 0
}

._clearfix {
  zoom: 1
}

._clearfix:after {
  content: "";
  display: block;
  clear: both;
  overflow: auto
}

@media all and (min-width: 769px) {
  ._float-l {
    float: left
  }

  ._float-r {
    float: right
  }
}

._clear {
  clear: both
}

._hidden {
  display: none
}

._bold {
  font-weight: bold
}

._underline {
  text-decoration: underline
}

._small {
  font-size: 88% !important
}

._x-small {
  font-size: 75% !important
}

._large {
  font-size: 113% !important
}

._x-large {
  font-size: 140% !important
}

._valignt {
  vertical-align: top !important
}

._valignm {
  vertical-align: middle !important
}

._valignb {
  vertical-align: bottom !important
}

._textc,
._textc th,
._textc td {
  text-align: center !important
}

._textr,
._textr th,
._textr td {
  text-align: right !important
}

._textl,
._textl th,
._textl td {
  text-align: left !important
}

._wordbreak {
  word-break: break-all !important
}

._nowrap {
  white-space: nowrap !important
}

._image-text {
  overflow: hidden !important
}

._first {
  margin-top: 0 !important
}

._zero {
  margin-bottom: 0 !important
}

._half {
  margin-bottom: calc(2rem/2) !important
}

._default {
  margin-bottom: 2rem !important
}

._double {
  margin-bottom: calc(2rem*2) !important
}

@media all and (min-width: 769px) {
  .sp {
    display: none !important
  }
}

@media all and (max-width: 768px) {
  .pc {
    display: none !important
  }
}

.visuallyHidden {
  position: absolute;
  top: -1000em;
  -webkit-transition: .3s;
  transition: .3s
}

.visuallyHidden:focus {
  left: 6px;
  top: 6px;
  height: auto;
  width: auto;
  display: block;
  font-size: 14px;
  font-weight: 600;
  padding: 15px 23px 14px;
  background: #f0f0f1;
  color: #2271b1;
  z-index: 100000;
  line-height: normal;
  text-decoration: none;
  -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, .6);
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, .6)
}

.is-current {
  pointer-events: none;
  text-decoration: none
}

#adminBox {
  margin-bottom: 0 !important
}

.acms-entry .entry-container {
  margin-left: 10px;
  margin-right: 10px
}

.acms-entry .entry-container2 {
  padding-left: 10px;
  padding-right: 10px
}

.acms-entry .entry-container iframe {
  max-width: 100%;
  margin-top: 20px
}

.acms-entry blockquote {
  margin-top: 20px !important
}

[class*=column-gf-map-] {
  margin-bottom: 20px;
  margin-top: 20px;
  padding-left: 10px;
  padding-right: 10px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

.column-gf-file-left {
  text-align: left
}

.column-gf-file-right {
  text-align: right
}

.column-gf-file-center {
  text-align: center
}

.column-gf-map-auto {
  margin-bottom: 10px;
  overflow: hidden
}

.column-gf-map-left {
  float: left;
  margin-bottom: 10px;
  overflow: hidden
}

.column-gf-map-right {
  float: right;
  margin-bottom: 10px;
  overflow: hidden
}

.column-gf-map-center {
  display: block;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 10px;
  overflow: hidden
}

.column-gf-youtube-left,
.column-gf-video-left {
  display: inline;
  float: left
}

.column-gf-youtube-right,
.column-gf-video-right {
  display: inline;
  float: right
}

.column-gf-youtube-center,
.column-gf-video-center {
  margin-left: auto;
  margin-right: auto
}

.acms-entry [class*=column-gf-youtube-],
.acms-entry [class*=column-gf-video-] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 20px;
  padding-left: 10px;
  padding-right: 10px
}

div.a-table-editable:after {
  display: none
}

.entryFormColumnTable {
  table-layout: fixed
}

.social-icon ul {
  margin: 20px auto;
  text-align: center
}

.social-icon ul li {
  display: inline-block
}

.social-icon ul li a {
  display: block;
  width: 60px;
  height: 60px;
  text-indent: -99999px;
  font-size: 50%;
  border-radius: 50%
}

@media screen and (min-width: 750px) {
  .facebook:hover {
    background: url(../images/svg/facebook.svg) center center no-repeat;
    background-size: 100%;
    background-color: #3b5998 !important
  }
}

.facebook {
  background: url(../images/svg/facebookClick.svg) center center no-repeat;
  background-size: 100%;
  background-color: #fff !important;
  border: 1px solid #3b5998
}

@media screen and (min-width: 750px) {
  .twitter:hover {
    background: url(../images/svg/twitter.svg) center center no-repeat;
    background-size: 100%;
    background-color: #00aced !important
  }
}

.twitter {
  background: url(../images/svg/twitterClick.svg) center center no-repeat;
  background-size: 100%;
  background-color: #fff !important;
  border: 1px solid #00aced
}

@media screen and (min-width: 750px) {
  .line:hover {
    background: url(../images/svg/line.svg) center center no-repeat;
    background-size: 100%;
    background-color: #2cbf13 !important
  }
}

.line {
  background: url(../images/svg/lineClick.svg) center center no-repeat;
  background-size: 100%;
  background-color: #fff !important;
  border: 1px solid #2cbf13
}

.acms-entry .entry-container {
  clear: both
}

.entry-container iframe {
  width: 100%
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
blockquote p:first-of-type {
  margin-top: 0
}

blockquote cite {
  font-style: normal;
  display: block;
  text-align: right;
  font-size: 90%
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
button:hover {
  cursor: pointer
}

.btn-arrow {
  display: inline-block;
  min-width: 256px;
  color: #231815;
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  position: relative
}

.btn-arrow span {
  font-size: 1.9rem
}

.btn-arrow .icon-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  left: 0
}

.btn-arrow .icon-arrow * {
  -webkit-transition: .3s;
  transition: .3s
}

.btn-arrow:hover {
  opacity: .7
}

.btn-arrowM {
  padding: 0 35px;
  display: inline-block;
  min-width: 195px;
  color: #231815;
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  position: relative
}

.btn-arrowM span {
  font-size: 1.9rem
}

.btn-arrowM .icon-arrowM {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  left: 0
}

.btn-arrowM .icon-arrowM * {
  -webkit-transition: .3s;
  transition: .3s
}

.btn-arrowM:hover {
  color: #2e98e0
}

.btn-arrowM:hover .icon-arrowM__fill {
  fill: #2e98e0
}

.btn-arrowM:hover .icon-arrowM__stroke {
  stroke: #2e98e0
}

.btn-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  background-color: #2e98e0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  min-width: 375px;
  height: 78px;
  position: relative
}

@media all and (max-width: 768px) {
  .btn-box {
    width: 100%;
    min-width: unset;
    max-width: 287px;
    height: 50px
  }
}

.btn-box__en {
  width: 100px;
  color: #fff;
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 2.2rem;
  letter-spacing: -1px;
  line-height: 1
}

.btn-box__en span {
  font-size: 2.3rem
}

.btn-box__en.btn-box__jp {
  margin-top: 3px
}

@media all and (max-width: 768px) {
  .btn-box__en {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
  }
}

.btn-box__jp {
  color: #fff;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 2.1rem;
  letter-spacing: 3px;
  line-height: 1.2
}

@media all and (max-width: 768px) {
  .btn-box__jp {
    font-size: 1.34rem;
    letter-spacing: 1px
  }
}

.btn-box::after {
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  background-color: #f33762;
  position: absolute;
  bottom: 0;
  left: 0;
  -webkit-transition: .3s;
  transition: .3s
}

@media all and (max-width: 768px) {
  .btn-box::after {
    width: 7px;
    height: 7px
  }
}

@media all and (min-width: 769px) {

  .btn-box:hover::after,
  .btn-box:focus::after {
    width: 20px;
    height: 20px
  }
}

.btn-white {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 240px;
  height: 17px;
  color: #000;
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  position: relative
}

@media all and (max-width: 768px) {
  .btn-white {
    width: 170px;
    height: 12px
  }
}

.btn-white:hover {
  opacity: .7
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
svg {
  border: 0;
  vertical-align: middle;
  line-height: 1;
  -webkit-transition: .3s;
  transition: .3s
}

.icon {
  width: 3rem;
  height: 3rem
}

.icon-blank {
  max-height: 1.6rem;
  max-width: 1.6rem;
  margin-left: .3rem
}

.icon-file {
  max-height: 1.8rem;
  max-width: 1.8rem;
  margin-left: .5rem;
  vertical-align: text-top
}

.icon-pdf {
  fill: #ee2917
}

.icon-doc {
  fill: #274f90
}

.icon-xls {
  fill: #1f6e43
}

.icon-ppt {
  fill: #d45331
}

.icon-arrow {
  width: 256px;
  height: 18px
}

.icon-arrow__stroke {
  fill: none;
  stroke: #231815
}

.icon-arrow__fill {
  fill: #231815;
  stroke: none
}

.icon-arrowM {
  width: 195px;
  height: 17px
}

.icon-arrowM__stroke {
  fill: none;
  stroke: #000
}

.icon-arrowM__fill {
  fill: #000;
  stroke: none
}

.icon-arrowM2 {
  width: 241px;
  height: 17px
}

.icon-arrowM2__stroke {
  fill: none;
  stroke: #000;
  -webkit-transition: .3s;
  transition: .3s
}

.icon-arrowM2__fill {
  fill: #000;
  stroke: none;
  -webkit-transition: .3s;
  transition: .3s
}

.icon-arrowS {
  width: 74px;
  height: 59px
}

.icon-arrowS__square {
  fill: rgba(0, 0, 0, 0);
  stroke: #231815;
  -webkit-transition: .3s;
  transition: .3s
}

.icon-arrowS__border {
  fill: none;
  stroke: #231815
}

.icon-arrowN {
  width: 28px;
  height: 18px;
  fill: none;
  stroke: #231815;
  -webkit-transition: .3s;
  transition: .3s
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
a.zoomImg {
  cursor: -webkit-zoom-in;
  cursor: zoom-in;
  position: relative;
  display: inline-block
}

a.zoomImg::after {
  position: absolute;
  content: "";
  top: 0;
  right: 0;
  background: center/50% 50% no-repeat rgba(0, 0, 0, .3) url("images/common/icon_zoom.svg");
  width: 2.5rem;
  height: 2.5rem
}

.lum-lightbox.lum-open {
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  z-index: 10001
}

.lum-lightbox.lum-open:hover {
  cursor: -webkit-zoom-out;
  cursor: zoom-out
}

.lum-gallery-button::after {
  width: 2rem;
  height: 2rem;
  border-width: 2px
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
.list-bullet {
  margin: 2rem 0
}

.list-bullet li {
  margin-left: 2rem
}

.list-bullet li::before {
  content: "";
  position: absolute;
  top: 1rem;
  left: -1.5rem;
  width: 6px;
  height: 6px;
  background: #2e98e0;
  border-radius: 100%
}

.list-bullet ol,
.list-bullet ul {
  margin-top: 0;
  margin-bottom: 0
}

.list-number {
  margin: 2rem 0;
  counter-reset: num
}

.list-number li {
  padding-left: 2rem
}

.list-number li::before {
  position: absolute;
  counter-increment: num;
  content: counter(num);
  display: inline-block;
  font-weight: bold;
  top: 0;
  left: .5rem;
  color: #2e98e0
}

.list-number ol,
.list-number ul {
  margin-top: 0;
  margin-bottom: 0
}

.list-rice {
  margin: 2rem 0
}

.list-rice li {
  margin: 0 0 0 1.6rem;
  text-indent: -1.6rem
}

.list-rice li::before {
  display: none
}

.list-link {
  margin: 2rem 0
}

.list-link li {
  margin-left: 2rem
}

.list-link li::before {
  border-style: solid;
  border-width: 0 2px 2px 0;
  content: "";
  display: inline-block;
  position: absolute;
  height: 4px;
  width: 4px;
  border-color: #2e98e0;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  border-radius: 0;
  background: rgba(0, 0, 0, 0);
  left: -1.5rem;
  top: 1rem
}

.list-link ol,
.list-link ul {
  margin-top: 0;
  margin-bottom: 0
}

table ul,
table ol {
  margin: 0
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
.toc .current {
  font-weight: bold;
  background: rgba(46, 152, 224, .2)
}

.toc .chapter {
  margin-left: 1rem
}

.m-localNavi .link {
  display: block
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
.table-wrapper {
  margin: 2rem 0;
  overflow-x: auto
}

.table-wrapper table {
  width: 100%;
  border-collapse: collapse
}

.table-wrapper table tr:not(:first-child) {
  border-top: 1px solid #231815
}

.table-wrapper table tr th,
.table-wrapper table tr td {
  padding: 20px;
  min-width: 220px;
  background: rgba(0, 0, 0, 0);
  border: rgba(0, 0, 0, 0);
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 2.1rem;
  line-height: 1.55;
  vertical-align: middle
}

@media all and (max-width: 768px) {

  .table-wrapper table tr th,
  .table-wrapper table tr td {
    min-width: 110px;
    font-size: 1.4rem
  }
}

.table-wrapper table tr th._cellc,
.table-wrapper table tr td._cellc {
  text-align: center
}

.table-wrapper table tr th._cellcl,
.table-wrapper table tr td._cellcl {
  vertical-align: middle;
  text-align: left
}

.table-wrapper table tr th._cell01,
.table-wrapper table tr td._cell01 {
  min-width: 315px
}

@media all and (max-width: 768px) {

  .table-wrapper table tr th._cell01,
  .table-wrapper table tr td._cell01 {
    min-width: 255px
  }
}

@media all and (min-width: 769px) {

  .table-wrapper table tr th._cell02,
  .table-wrapper table tr td._cell02 {
    padding-top: 48px;
    padding-bottom: 48px
  }
}

.table-wrapper table tr th {
  font-size: 2.3rem;
  font-weight: bold
}

@media all and (max-width: 768px) {
  .table-wrapper table tr th {
    padding: 20px 5px;
    font-size: 1.5rem
  }
}

.table-wrapper table tbody th,
.table-wrapper table tbody td {
  font-weight: 400
}

.table-wrapper .table01 thead tr:last-child th,
.table-wrapper .table01 thead tr:last-child td {
  border-bottom: 1px solid #231815
}

.table-wrapper .table01 tbody th,
.table-wrapper .table01 tbody td {
  border-bottom: 1px solid #231815
}

@media all and (min-width: 769px) {

  .table-wrapper .table01 tbody th,
  .table-wrapper .table01 tbody td {
    padding: 16px 40px
  }
}

.table-wrapper .table01 tbody td {
  position: relative
}

.table-wrapper .table01 tbody td::before {
  content: "";
  display: inline-block;
  width: 1px;
  height: calc(100% - 30px);
  background-color: #231815;
  position: absolute;
  top: 15px;
  left: 0
}

@media all and (min-width: 769px) {
  .table-wrapper .table02 tr th {
    padding-left: 70px
  }
}

.table-wrapper .table02 th {
  font-size: 2.1rem;
  font-weight: normal
}

@media all and (max-width: 768px) {
  .table-wrapper .table02 th {
    font-size: 1.4rem
  }
}

@media all and (min-width: 769px) {
  .table-wrapper .table03 {
    margin-top: 2.2rem;
    border-top: 1px solid #231815
  }
}

@media all and (max-width: 768px) {

  .table-wrapper.verticalSP th,
  .table-wrapper.verticalSP td {
    display: block;
    width: 100%;
    border-bottom: none !important
  }

  .table-wrapper.verticalSP th {
    padding-left: 20px;
    padding-bottom: 0;
    font-weight: bold !important
  }

  .table-wrapper.verticalSP .table01 tbody td::before {
    content: none;
    display: none
  }
}

.table-wrapper.scrollSP::before {
  content: "※この表は横にスクロールできます";
  padding-bottom: 5px;
  display: inline-block;
  color: #231815;
  font-size: 1.4rem;
  text-align: left;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  left: 0
}

@media all and (min-width: 769px) {
  .table-wrapper.scrollSP::before {
    content: none
  }
}

.table-wrapper.scrollSP table {
  min-width: 800px
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
.heading2 {
  font-size: 180%;
  margin-top: 5rem
}

.heading3 {
  font-size: 160%;
  margin-top: 5rem
}

.heading4 {
  font-size: 150%;
  margin-top: 5rem
}

.heading5 {
  font-size: 120%;
  margin-top: 5rem
}

.heading6 {
  font-size: 100%;
  margin-top: 5rem
}

._en {
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif
}

._attention {
  color: #d00
}

._lead {
  font-size: 2rem
}

.box__fill {
  background: rgba(46, 152, 224, .1);
  padding: 2rem;
  margin: 2rem 0
}

.box__fill *:first-child {
  margin-top: 0
}

.box__fill *:last-child {
  margin-bottom: 0
}

.box__border {
  border: 2px solid #2e98e0;
  padding: 2rem;
  margin: 2rem 0
}

.box__border *:first-child {
  margin-top: 0
}

.box__border *:last-child {
  margin-bottom: 0
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
.header {
  width: 100vw;
  min-width: 1155px;
  height: 0;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99
}

.header>.inner {
  position: relative
}

@media all and (max-width: 768px) {
  .header .nav {
    display: none
  }
}

.header .logo {
  line-height: 1;
  width: 321px;
  height: 35px;
  position: absolute;
  top: 30px;
  left: 0
}

@media all and (max-width: 1595px) {
  .header .logo {
    left: 20px
  }
}

@media all and (max-width: 768px) {
  .header .logo {
    width: 160px;
    height: auto;
    top: 15px
  }
}

.header .logo img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center
}

.header__entryBtn {
  width: 95px;
  height: 95px;
  background-color: #fff;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 10000
}

@media all and (max-width: 768px) {
  .header__entryBtn {
    width: 50px;
    height: 50px
  }
}

.header__entryBtn__btn {
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 100%;
  height: 100%;
  background-color: #2e98e0
}

.header__entryBtn__btn img {
  width: 73px;
  height: 19px
}

@media all and (max-width: 768px) {
  .header__entryBtn__btn img {
    width: 38px;
    height: 14px
  }
}

.header__entryBtn__btn:hover {
  opacity: .7
}

.header__entryBtn__contents {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  display: none;
  padding: 28px 40px;
  width: 460px;
  position: absolute;
  top: 58px;
  right: 130px
}

@media all and (max-width: 768px) {
  .header__entryBtn__contents {
    padding: 20px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 240px;
    top: 40px;
    right: 80px
  }
}

.header__entryBtn__contents::before {
  content: "";
  display: inline-block;
  width: 30px;
  height: 20px;
  -webkit-clip-path: polygon(0 0, 100% 0%, 0 100%);
  clip-path: polygon(0 0, 100% 0%, 0 100%);
  background-color: #2e98e0;
  position: absolute;
  top: 0;
  right: -30px;
  opacity: .15
}

.header__entryBtn__contents::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 100%;
  background-color: #2e98e0;
  border-radius: 10px 0 10px 10px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  opacity: .15
}

.header__entryBtn__contents .entryBtn-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 176px
}

@media all and (max-width: 768px) {
  .header__entryBtn__contents .entryBtn-list {
    width: 100%
  }

  .header__entryBtn__contents .entryBtn-list:not(:first-child) {
    margin-top: 15px
  }
}

.header__entryBtn__contents .entryBtn-list__title {
  margin: 0 0 5px;
  display: inline-block;
  width: 100%;
  background-color: #127ce0;
  color: #fff;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 2.5rem;
  text-align: center;
  position: relative
}

@media all and (max-width: 768px) {
  .header__entryBtn__contents .entryBtn-list__title {
    margin-bottom: 0;
    font-size: 1.9rem
  }
}

.header__entryBtn__contents .entryBtn-list__title::before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  background-color: #f33762;
  position: absolute;
  top: 0;
  left: 0
}

.header__entryBtn__contents .entryBtn-list__btn {
  display: inline-block;
  width: 100%;
  background-color: #fff;
  border: 1px solid #127ce0;
  border-radius: 5px;
  color: #231815;
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 2.1rem;
  font-weight: bold;
  text-align: center;
  text-decoration: none
}

@media all and (max-width: 768px) {
  .header__entryBtn__contents .entryBtn-list__btn {
    font-size: 1.7rem
  }
}

.header__entryBtn__contents .entryBtn-list__btn:not(:first-child) {
  margin-top: 10px
}

.header__entryBtn__contents .entryBtn-list__btn:hover,
.header__entryBtn__contents .entryBtn-list__btn:focus {
  opacity: .6
}

.header__entryBtn__contents .entryBtn-list__btn span {
  display: inline-block;
  margin-left: 4px
}

.header__siteBtn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 95px;
  height: 72px;
  background-color: #84bdd4;
  text-decoration: none;
  position: fixed;
  top: 0px;
  right: 0;
  z-index: 10000
}

@media all and (max-width: 768px) {
  .header__siteBtn {
    width: 50px;
    height: 50px;
    font-size: 1rem;
    top: 50px
  }
}

.header__siteBtn img {
  width: 73px;
  height: 32px
}

@media all and (max-width: 768px) {
  .header__siteBtn img {
    width: 41px;
    height: 21px
  }
}

.header__siteBtn:hover {
  opacity: .7
}

.header__siteBtn.tablet {
  display: none;
}

@media screen and (min-width:768px) and ( max-width:1280px) {
  .tablet.sideBtn {
    display: block!important;
  }
  .header__siteBtn.tablet {
    display: block!important;
    border-top: 1px solid #fff;
    text-align: center;
    color: #fff;
    font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  }

  .header__siteBtn.graduate_menu {
    top: 72px;
    padding: 23px 0px;
  }

  .header__siteBtn.career__menu {
    top: 144px;
    line-height: 1.1;
    padding: 18px 0;
  }

  .custom-recruit-buttons__btn.custom-recruit-buttons__btn--new,
  .custom-recruit-buttons__btn.custom-recruit-buttons__btn--mid {
    display: none;
  }
}

@media all and (max-width: 768px) {
  .header__siteBtn.sp {
    display: block;
    border-top: 1px solid #fff;
    text-align: center;
    color: #fff;
    font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  }
  .header__siteBtn.graduate_menu {
    top: 50px;
    padding: 16px 0px;
  }

  .header__siteBtn.career__menu {
    top: 100px;
    line-height: 1.1;
    padding: 13px 0;
  }
}

.header__btn {
  width: 253px;
  height: 100px;
  position: absolute;
  top: 0;
  right: 150px
}

@media all and (max-width: 768px) {
  .header__btn {
    display: none !important
  }
}

.header__btn img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: top right;
  object-position: top right
}

.header__btn:hover {
  opacity: .8
}



.c-toggle {
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  position: fixed;
  top: 0;
  right: 0;
  width: 95px;
  height: 100vh;
  background: none;
  z-index: 9999;
  cursor: pointer;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

@media all and (max-width: 768px) {
  .c-toggle {
    width: 50px;
    height: 50px;
    top: 0px
  }
}

.c-toggle::before {
  content: "";
  display: inline-block;
  width: 100%;
  height: 100%;
  background-color: #2e98e0;
  position: absolute;
  top: 0;
  right: 0;
  opacity: .3
}

@media screen and (min-width:768px) and ( max-width:1280px) {
  .c-toggle::before {
    height: 150vh;
  }
}

@media all and (max-width: 768px) {
  .c-toggle::before {
    background-color: #fff;
    opacity: 1;
    z-index: -1
  }
}

.c-toggle-icon {
  margin: auto;
  width: 25px;
  height: 2px;
  background: #231815;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  -webkit-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  -webkit-transition: inherit;
  transition: inherit
}

@media all and (max-width: 768px) {
  .c-toggle-icon {
    width: 30px;
    height: 3px;
    border-radius: 2px;
    top: calc(50% - 8px)
  }
}

.c-toggle-icon::before,
.c-toggle-icon::after {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: inherit;
  -webkit-transition: inherit;
  transition: inherit
}

@media all and (max-width: 768px) {

  .c-toggle-icon::before,
  .c-toggle-icon::after {
    border-radius: 2px
  }
}

.c-toggle[aria-expanded=false] .c-toggle-icon::before {
  top: -6px
}

@media all and (max-width: 768px) {
  .c-toggle[aria-expanded=false] .c-toggle-icon::before {
    top: -8px
  }
}

.c-toggle[aria-expanded=false] .c-toggle-icon::after {
  top: 6px
}

@media all and (max-width: 768px) {
  .c-toggle[aria-expanded=false] .c-toggle-icon::after {
    top: 8px
  }
}

.c-toggle[aria-expanded=true] .c-toggle-icon {
  background: rgba(0, 0, 0, 0)
}

.c-toggle[aria-expanded=true] .c-toggle-icon::before,
.c-toggle[aria-expanded=true] .c-toggle-icon::after {
  background: #231815
}

.c-toggle[aria-expanded=true] .c-toggle-icon::before {
  -webkit-transform: rotate(38deg);
  transform: rotate(38deg)
}

.c-toggle[aria-expanded=true] .c-toggle-icon::after {
  -webkit-transform: rotate(-38deg);
  transform: rotate(-38deg)
}

.c-toggle-txt {
  padding-top: 18px;
  display: inline-block;
  width: 30px;
  height: 9px
}

@media all and (max-width: 768px) {
  .c-toggle-txt {
    padding-top: 4px;
    width: 28px;
    height: 8px
  }
}

#js-drawer {
  padding: 25px 95px 45px 40px;
  width: 365px;
  height: 100vh;
  max-height: 100vh;
  max-height: 100dvh;
  background: #fff;
  -webkit-transition: .3s;
  transition: .3s;
  position: fixed;
  top: 0;
  z-index: 90
}

@media all and (max-width: 768px) {
  #js-drawer {
    padding: 50px;
    width: 100%
  }
}

#js-drawer[aria-hidden=true] {
  visibility: hidden;
  right: -366px
}

@media all and (max-width: 768px) {
  #js-drawer[aria-hidden=true] {
    right: -100vw
  }
}

#js-drawer[aria-hidden=false] {
  visibility: visible;
  right: 0
}

#js-drawer .js-drawer__logo {
  width: 160px;
  height: auto;
  position: absolute;
  top: 10px;
  left: 20px
}

@media all and (min-width: 769px) {
  #js-drawer .js-drawer__logo {
    display: none
  }
}

#js-drawer .global-navigation ul li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-left: 20px;
  height: 45px;
  color: #231815;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 1.6rem;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  line-height: 1;
  text-align: left;
  position: relative
}

@media all and (max-width: 768px) {
  #js-drawer .global-navigation ul li {
    font-size: 1.5rem
  }
}

#js-drawer .global-navigation ul li::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  border-top: 2px solid #2e98e0;
  border-right: 2px solid #2e98e0;
  position: absolute;
  top: 21px;
  left: 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}

#js-drawer .global-navigation ul li a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  height: 100%;
  color: inherit;
  font-size: inherit;
  text-decoration: none
}

.is-drawerActive {
  position: fixed
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
.footer {
  margin-top: 200px;
  padding-top: 10px;
  padding-bottom: 160px;
  background-image: url(../images/common/bg_footer.png);
  background-position: top center;
  background-repeat: no-repeat;
  background-size: cover
}

@media all and (max-width: 768px) {
  .footer {
    margin-top: 40px;
    padding-bottom: 47px;
    background-image: url(../images/common/bg_footer_sp.jpg);
    position: relative
  }

  .footer::before {
    content: "";
    display: inline-block;
    width: 100%;
    height: 100%;
    background: -webkit-gradient(linear, left bottom, left top, color-stop(35%, transparent), color-stop(50%, #95b3dc));
    background: -webkit-linear-gradient(bottom, transparent 35%, #95b3dc 50%);
    background: linear-gradient(0, transparent 35%, #95b3dc 50%);
    position: absolute;
    top: 0;
    right: -1px;
    z-index: 1
  }
}

@media all and (max-width: 768px) {
  .footer .inner {
    position: relative;
    z-index: 2
  }
}

.footer-link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

@media all and (max-width: 768px) {
  .footer-link {
    padding: 0 16px
  }
}

@media all and (min-width: 769px) {
  .footer-link__item {
    width: calc(25% - 27px)
  }

  .footer-link__item:nth-child(n+2) {
    margin-left: 36px
  }
}

@media all and (max-width: 768px) {
  .footer-link__item {
    margin: 0 5px;
    width: calc(50% - 10px)
  }

  .footer-link__item:nth-child(n+3) {
    margin-top: 10px
  }
}

.footer-link__item.--img a {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center
}

.footer-link__item a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  width: 100%;
  height: 106px;
  background-color: #fff;
  text-decoration: none;
  position: relative
}

@media all and (max-width: 768px) {
  .footer-link__item a {
    height: 53px
  }
}

.footer-link__item a::before {
  content: "";
  display: inline-block;
  width: 76%;
  height: 1px;
  background-color: #2e98e0;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index: 1
}

@media all and (max-width: 768px) {
  .footer-link__item a::before {
    height: 2px
  }
}

.footer-link__item a::after {
  content: "";
  display: inline-block;
  width: calc(100% - 10px);
  height: calc(100% - 10px);
  background-color: #2e98e0;
  mix-blend-mode: multiply;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  -webkit-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  -webkit-transition: .3s;
  transition: .3s;
  opacity: 0;
  z-index: 1
}

.footer-link__item a:hover::after {
  opacity: .5
}

.footer-link__item a .item-txt {
  margin: 15px 0 18px;
  color: #000;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 1.6rem;
  line-height: 1;
  text-align: center
}

@media all and (max-width: 768px) {
  .footer-link__item a .item-txt {
    margin: 7px 0 3px;
    font-size: 1rem
  }
}

.footer-link__item a .item-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center
}

.footer-link__item a .item-img.logo {
  width: 185px;
  height: 33px
}

@media all and (max-width: 768px) {
  .footer-link__item a .item-img.logo {
    width: 93px;
    height: 23px
  }
}

.footer-link__item a .item-img.youtube {
  width: 136px;
  height: 30px
}

@media all and (max-width: 768px) {
  .footer-link__item a .item-img.youtube {
    width: 68px;
    height: 16px
  }
}

.footer-link__item a .item-img.recnavi {
  width: 166px;
  height: 48px
}

@media all and (max-width: 768px) {
  .footer-link__item a .item-img.recnavi {
    width: 83px;
    height: 29px
  }
}

.footer-link__item a .item-img.mynavi {
  width: 167px;
  height: 48px
}

@media all and (max-width: 768px) {
  .footer-link__item a .item-img.mynavi {
    width: 83px;
    height: 29px
  }
}

.footer-nav {
  margin-top: 50px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

@media all and (max-width: 768px) {
  .footer-nav {
    margin-top: 21px;
    padding: 0 20px
  }
}

.footer-nav__address {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.footer-nav__address__name {
  margin: 2px 20px 0 0;
  font-size: 1.9rem;
  font-weight: bold;
  line-height: 1.4
}

@media all and (max-width: 768px) {
  .footer-nav__address__name {
    font-size: 1.3rem
  }
}

.footer-nav__address__txt .item-block {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.footer-nav__address__txt .item-block p {
  margin: 0;
  font-size: 1.7rem
}

@media all and (max-width: 768px) {
  .footer-nav__address__txt .item-block p {
    font-size: 1rem
  }
}

@media all and (min-width: 769px) {
  .footer-nav__address__txt .item-block p:nth-child(1) {
    margin-right: 20px;
    min-width: 400px
  }
}

@media all and (max-width: 768px) {
  .footer-nav__address__txt .item-block p:nth-child(2) {
    margin-left: 3rem
  }
}

.footer-nav .snsList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 210px
}

@media all and (max-width: 768px) {
  .footer-nav .snsList {
    width: 102px
  }
}

.footer-nav .snsList__item a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.footer-nav .snsList__item a:hover {
  opacity: .7
}

.footer-nav .snsList__item a img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center
}

.footer-nav .snsList__item a.inst {
  width: 47px;
  height: 47px;
  position: relative;
  left: 5px
}

@media all and (max-width: 768px) {
  .footer-nav .snsList__item a.inst {
    width: 24px;
    height: 24px
  }
}

.footer-nav .snsList__item a.fb {
  width: 35.5px;
  height: 35.5px
}

@media all and (max-width: 768px) {
  .footer-nav .snsList__item a.fb {
    width: 14px;
    height: 14px
  }
}

.footer-nav .snsList__item a.youtube {
  width: 30px;
  height: 30px
}

@media all and (max-width: 768px) {
  .footer-nav .snsList__item a.youtube {
    width: 15px;
    height: 15px
  }
}

.footer-nav .snsList__item a.pin {
  width: 31.5px;
  height: 31.5px
}

@media all and (max-width: 768px) {
  .footer-nav .snsList__item a.pin {
    width: 16px;
    height: 16px
  }
}

.footer .copyright {
  margin: 30px 0 0;
  font-size: 1.3rem;
  line-height: 1;
  text-align: right
}

@media all and (max-width: 768px) {
  .footer .copyright {
    margin: 0;
    width: calc(100% - 145px);
    height: 8px;
    font-size: .8rem;
    text-align: left;
    position: absolute;
    bottom: 7px;
    left: 143px
  }
}

.js-pageTop {
  margin: 0;
  position: fixed;
  right: 10px;
  bottom: 5rem;
  z-index: 100
}

@media all and (max-width: 768px) {
  .js-pageTop {
    display: none
  }
}

.js-pageTop a {
  width: 70px;
  height: 104px
}

.js-pageTop a:hover {
  opacity: .7
}

.js-pageTop a img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
.body {
  overflow-x: hidden;
  position: relative;
  z-index: 1
}

@media all and (min-width: 769px) {
  .body {
    min-width: 1155px
  }

  .body:not(.page-home) {
    padding-right: 95px
  }
}

@media all and (max-width: 768px) {
  .content {
    overflow: hidden
  }
}

.inner {
  margin: 0 auto;
  width: 100%;
  max-width: 1500px
}

@media all and (max-width: 1595px) {
  .inner {
    padding-left: 20px
  }
}

@media all and (max-width: 768px) {
  .inner {
    padding-left: 13px;
    padding-right: 13px
  }
}

.inner-md {
  max-width: 1300px
}

.inner-nm {
  max-width: 1200px
}

.inner-sm {
  max-width: 1155px
}

.content__has-column {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap
}

@media all and (max-width: 1299px) {
  .content__has-column {
    display: block
  }
}

.content__main {
  width: calc(100% - 300px)
}

@media all and (max-width: 1299px) {
  .content__main {
    width: 100%
  }
}

.content__side {
  width: 300px
}

@media all and (max-width: 1299px) {
  .content__side {
    width: 100%
  }
}

.content__side--sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 0
}

.row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap
}

.row>.col {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -webkit-flex-basis: 0;
  -ms-flex-preferred-size: 0;
  flex-basis: 0;
  max-width: 100%
}

.row>.col-s {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -webkit-flex-basis: 33.33333%;
  -ms-flex-preferred-size: 33.33333%;
  flex-basis: 33.33333%;
  max-width: 33.33333%
}

.row>.col-m {
  -webkit-box-flex: 2;
  -webkit-flex-grow: 2;
  -ms-flex-positive: 2;
  flex-grow: 2;
  -webkit-flex-basis: 66.66666%;
  -ms-flex-preferred-size: 66.66666%;
  flex-basis: 66.66666%;
  max-width: 66.66666%
}

@media all and (max-width: 768px) {
  .row {
    display: block
  }

  .row._responsive {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
  }

  .row .col-m,
  .row .col-s {
    max-width: 100%;
    width: 100%
  }
}

.l-layer {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap
}

@media all and (max-width: 768px) {
  .l-layer {
    display: block
  }
}

.l-layer__text {
  width: 100%;
  position: relative;
  margin-right: -5vw;
  background: #fff;
  padding: 5rem 5rem 0
}

@media all and (max-width: 768px) {
  .l-layer__text {
    margin-left: 0;
    padding: 0
  }
}

.l-layer__img {
  width: 100%
}

.page-story .page-title__jp {
  margin-top: 6px
}

.page-story .page-title__en {
  width: 221px;
  height: 52px
}

@media all and (max-width: 768px) {
  .page-story .page-title__en {
    width: 111px;
    height: 26px
  }
}

@media all and (max-width: 768px) {
  .page-story .container .inner {
    min-height: 45vh
  }
}

.story-txt {
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-size: 2.7rem;
  letter-spacing: 3px;
  text-align: center
}

@media all and (max-width: 768px) {
  .story-txt {
    font-size: 1.6rem
  }
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
.page-title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 125px 0 85px 0;
  margin: 0 auto;
  width: 100%;
  max-width: 1500px
}

@media all and (max-width: 768px) {
  .page-title {
    padding: 70px 10px 35px 10px
  }
}

.page-title__en {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
  margin: 0;
  color: #9fa0a0;
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 5.6rem;
  font-weight: 500;
  letter-spacing: -1px;
  line-height: 1
}

@media all and (max-width: 768px) {
  .page-title__en {
    font-size: 4rem
  }
}

.page-title__en span {
  color: #2e98e0
}

.page-title__jp {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
  margin: 13px 0 0;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.2
}

@media all and (max-width: 768px) {
  .page-title__jp {
    margin-top: 10px;
    font-size: 1rem
  }
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
.topic-path {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-top: 5rem;
  padding-bottom: 5rem;
  display: none !important
}

.topic-path li {
  color: #231815;
  position: relative
}

.topic-path li:not(:first-child) {
  padding-left: 26px
}

.topic-path li:not(:first-child)::before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 1px;
  background-color: #9fa0a0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  left: 8px
}

.topic-path li a {
  color: inherit
}

.topic-path li a:hover {
  text-decoration: none
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
.faq__item--question button {
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  text-align: left
}

.faq__item--answer {
  display: none
}

.unit-faq {
  margin-top: 40px;
  padding-left: 40px
}

@media all and (max-width: 768px) {
  .unit-faq {
    margin-top: 24px;
    padding-right: 25px;
    padding-left: 30px
  }
}

.unit-faq+.unit-faq {
  margin-top: 90px;
  position: relative
}

@media all and (max-width: 768px) {
  .unit-faq+.unit-faq {
    margin-top: 45px
  }
}

.unit-faq+.unit-faq::before {
  content: "";
  display: inline-block;
  width: 123px;
  height: 1px;
  background-color: #2e98e0;
  position: absolute;
  top: -45px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%)
}

@media all and (max-width: 768px) {
  .unit-faq+.unit-faq::before {
    top: -25px
  }
}

.unit-faq__question {
  margin: 0;
  color: #2e98e0;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 2.4rem;
  position: relative
}

@media all and (max-width: 768px) {
  .unit-faq__question {
    font-size: 1.6rem;
    line-height: 1.4
  }
}

.unit-faq__question::before {
  content: "";
  display: inline-block;
  background-image: url(../top/images/img_q.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  width: 27px;
  height: 49px;
  position: absolute;
  top: -10px;
  left: -40px
}

@media all and (max-width: 768px) {
  .unit-faq__question::before {
    width: 15px;
    height: 27px;
    top: -2px;
    left: -22px
  }
}

.unit-faq__answer {
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-size: 1.7rem;
  line-height: 1.7;
  position: relative
}

@media all and (max-width: 768px) {
  .unit-faq__answer {
    margin: 1rem 0 0;
    font-size: 1.2rem
  }
}

.unit-faq__btn {
  margin-left: auto;
  margin-bottom: 2rem;
  padding-right: 50px;
  display: inline-block;
  width: 100%;
  color: #127ce0;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo;
  font-size: 1.7rem;
  text-align: right;
  text-decoration: none;
  line-height: 1;
  position: relative
}

@media all and (max-width: 768px) {
  .unit-faq__btn {
    margin-top: 15px;
    font-size: 1.6rem
  }
}

.unit-faq__btn::after {
  content: "";
  display: inline-block;
  background-image: url(../images/environment/img_linkArrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  width: 38px;
  height: 16px;
  position: absolute;
  top: 0;
  right: 0;
  -webkit-transition: .3s;
  transition: .3s
}

@media all and (min-width: 769px) {
  .unit-faq__btn:hover::after {
    -webkit-transform: translateX(5px);
    transform: translateX(5px)
  }
}

.faqList__block {
  padding: 40px 35px;
  background-color: #fff;
  border-left: 2px solid #2e98e0
}

@media all and (max-width: 768px) {
  .faqList__block {
    padding: 20px 15px;
    border-width: 1px
  }
}

.faqList__block:not(:first-child) {
  margin-top: 40px
}

@media all and (max-width: 768px) {
  .faqList__block:not(:first-child) {
    margin-top: 30px
  }
}

@media all and (min-width: 769px) {
  .faqList__block.--pbNone {
    padding-bottom: 0
  }
}

.faqList__block .faq-title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding-left: 36px;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 2.1rem;
  font-weight: bold;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  position: relative
}

@media all and (max-width: 768px) {
  .faqList__block .faq-title {
    padding-left: 26px;
    font-size: 1.7rem
  }
}

.faqList__block .faq-title::before {
  content: "";
  display: inline-block;
  background-image: url(../images/staff/img_staff_q.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  width: 26px;
  height: 49px;
  position: absolute;
  top: 0;
  left: 0
}

@media all and (max-width: 768px) {
  .faqList__block .faq-title::before {
    width: 15px;
    height: 27px;
    top: 3px;
    left: 5px
  }
}

.faqList__block .faq-title span {
  display: inline-block;
  padding-top: 5px
}

.faqList__block .faq-desc {
  margin-top: 35px;
  padding-left: 40px;
  position: relative
}

@media all and (max-width: 768px) {
  .faqList__block .faq-desc {
    margin-top: 13px;
    padding-right: 20px;
    padding-left: 26px
  }
}

.faqList__block .faq-desc p {
  margin: 1.8rem 0 2.2rem;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 1.9rem;
  line-height: 1.9;
  text-align: justify;
  letter-spacing: .5px
}

.faqList__block .faq-desc p .spa {
  display: inline-block;
  margin: 0 3px
}

@media all and (max-width: 768px) {
  .faqList__block .faq-desc p {
    margin-bottom: 0;
    font-size: 1.4rem;
    line-height: 1.4
  }

  .faqList__block .faq-desc p+p {
    margin-top: 1rem;
    line-height: 1.8
  }

  .faqList__block .faq-desc p:first-child {
    margin-top: 0
  }
}

.faqList__block .faq-desc p b {
  color: #2e98e0;
  font-size: 2.8rem;
  line-height: 1.4;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: 2px
}

@media all and (max-width: 768px) {
  .faqList__block .faq-desc p b {
    font-size: 1.8rem;
    line-height: 1.34
  }
}

.faqList__block .faq-desc .--floatLSpece {
  float: left;
  height: 175px
}

@media all and (max-width: 768px) {
  .faqList__block .faq-desc .--floatLSpece {
    display: none
  }
}

.faqList__block .faq-desc a:hover {
  opacity: .7
}

.faqList__block .faq-desc__img {
  width: 155px;
  height: 179px
}

@media all and (max-width: 768px) {
  .faqList__block .faq-desc__img {
    width: 155px;
    height: 179px
  }
}

.faqList__block .faq-desc__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center
}

.faqList__block .faq-desc__img.--floatL {
  margin: 10px 25px 0 0 !important;
  float: left;
  clear: both
}

@media all and (max-width: 768px) {
  .faqList__block .faq-desc__img.--floatL {
    margin: 18px auto 0 !important;
    float: none;
    text-align: center
  }
}

@media all and (max-width: 768px) {
  .faqList__block .faq-desc.--floatImg {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
  }

  .faqList__block .faq-desc.--floatImg .item-b {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1
  }

  .faqList__block .faq-desc.--floatImg .item-n {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    margin-top: 1rem;
    line-height: 1.8
  }

  .faqList__block .faq-desc.--floatImg .faq-desc__img {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
    -ms-flex-order: 3;
    order: 3
  }
}

.page-faq .page-title__en {
  margin-bottom: 8px;
  width: 66px;
  height: 40px
}

@media all and (max-width: 768px) {
  .page-faq .page-title__en {
    width: 33px;
    height: 22px
  }
}

.page-faq section+section {
  margin-top: 120px
}

@media all and (max-width: 768px) {
  .page-faq section+section {
    margin-top: 70px
  }
}

.faq-heading2 {
  margin: 0 auto;
  padding: 0 10px 20px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border-bottom: 1px solid #127ce0;
  color: #127ce0;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 4.2rem;
  font-weight: bold;
  letter-spacing: 5px;
  line-height: 1.4;
  text-align: center
}

@media all and (max-width: 768px) {
  .faq-heading2 {
    padding-bottom: 12px;
    font-size: 2.1rem
  }
}

.faq-list {
  margin-top: 50px
}

@media all and (min-width: 769px) {
  .faq-list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
  }
}

@media all and (max-width: 768px) {
  .faq-list {
    margin-top: 30px
  }
}

.faq-list__item {
  margin-bottom: 35px;
  padding-left: 38px
}

@media all and (min-width: 769px) {
  .faq-list__item {
    width: calc(50% - 45px)
  }
}

@media all and (max-width: 768px) {
  .faq-list__item {
    margin-bottom: 30px;
    padding-left: 28px;
    padding-right: 10px
  }
}

.faq-list__item__title {
  padding-top: 16px;
  color: #127ce0;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.4;
  position: relative
}

@media all and (max-width: 768px) {
  .faq-list__item__title {
    padding-top: 13px;
    font-size: 1.7rem
  }
}

.faq-list__item__title::before {
  content: "";
  display: inline-block;
  background-image: url(../top/images/img_q.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  width: 27px;
  height: 49px;
  position: absolute;
  top: 0;
  left: -37px
}

@media all and (max-width: 768px) {
  .faq-list__item__title::before {
    width: 20px;
    height: 36px;
    left: -27px
  }
}

.faq-list__item__txt {
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif
}

.faq-list__item__txt p {
  margin: 2rem 0 0;
  font-size: 1.7rem;
  line-height: 1.8
}

@media all and (max-width: 768px) {
  .faq-list__item__txt p {
    font-size: 1.4rem;
    line-height: 1.5
  }
}

.faq-list__item__txt .item-btn {
  margin-left: auto;
  padding-right: 50px;
  display: inline-block;
  width: 100%;
  color: #127ce0;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo;
  font-size: 1.9rem;
  text-align: right;
  text-decoration: none;
  line-height: 1;
  position: relative
}

@media all and (max-width: 768px) {
  .faq-list__item__txt .item-btn {
    margin-top: 15px;
    font-size: 1.6rem
  }
}

.faq-list__item__txt .item-btn::after {
  content: "";
  display: inline-block;
  background-image: url(../images/environment/img_linkArrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  width: 38px;
  height: 16px;
  position: absolute;
  top: 2px;
  right: 0;
  -webkit-transition: .3s;
  transition: .3s
}

.faq-list__item__txt .item-btn.--01 {
  margin-top: 10px
}

.faq-list__item__txt .item-btn .icon-blank {
  display: none
}

@media all and (min-width: 769px) {
  .faq-list__item__txt .item-btn:hover::after {
    -webkit-transform: translateX(5px);
    transform: translateX(5px)
  }
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
.pagination__nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap
}

.pagination__nav .is-current .icon {
  fill: rgba(35, 24, 21, .1)
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
.m-share {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  margin: 5rem 0;
  padding: 2rem 0;
  border-top: 1px solid rgba(35, 24, 21, .1);
  border-bottom: 1px solid rgba(35, 24, 21, .1)
}

@media all and (max-width: 768px) {
  .m-share {
    display: block
  }
}

.m-share .title {
  margin-top: 0;
  margin-right: 3rem;
  font-size: 1.6rem
}

@media all and (max-width: 768px) {
  .m-share .title {
    text-align: center;
    margin: 0 0 1rem;
    font-size: 1.8rem
  }
}

.m-share .nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap
}

.m-share .nav li {
  width: 5rem;
  height: 5rem;
  margin: 0 .5rem
}

.m-share .nav .link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  height: 100%;
  background: #eee;
  border-radius: 50%
}

.m-share .nav .link .icon {
  fill: currentColor;
  width: 2rem;
  height: 2rem
}

.m-share .nav .link:hover {
  opacity: 1;
  background: currentColor
}

.m-share .nav .link:hover .icon {
  fill: #fff
}

.m-share .nav .facebook a {
  color: #1877f2
}

.m-share .nav .twitter a {
  color: #000
}

.m-share .nav .line a {
  color: #00c300
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
.wpcf7-form table {
  width: 100%
}

.wpcf7-form th label {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center
}

.wpcf7-form th label span {
  background-color: #fff;
  font-size: 1rem;
  line-height: 1;
  padding: .5rem
}

.wpcf7-form th label .required {
  background-color: #d00;
  color: #fff
}

.wpcf7-form .wpcf7-checkbox {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column
}

.wpcf7-form .acceptance p {
  text-align: center
}

.wpcf7-form .acceptance .text {
  border: 1px solid #fff;
  max-height: 50vh;
  overflow-y: auto;
  padding: 2rem
}

.wpcf7-form .acceptance .text p {
  text-align: left
}

.wpcf7-form .acceptance .text h2:first-of-type {
  margin-top: 0
}

.wpcf7-form .acceptance .wpcf7-acceptance .wpcf7-list-item {
  margin: 0
}

.wpcf7-form .acceptance .wpcf7-acceptance label {
  display: inline-block;
  padding: .5rem 1rem;
  background-color: #fff
}

.wpcf7-form .m-btngroup p {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 1rem
}

.wpcf7-form .wpcf7-submit {
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: #2e98e0
}

.wpcf7-form .wpcf7-submit:disabled {
  background-color: #fff;
  color: #b48d83
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
.content__side__archive {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.content__side__archive li {
  width: 50%
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
.m-entry-card .link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
.wp-post .wp-block-image figure {
  margin-top: 2rem;
  margin-bottom: 2rem
}

.wp-post .wp-block-image figcaption {
  margin-bottom: 0
}

.wp-post .wp-block-gallery,
.wp-post .wp-block-file,
.wp-post .wp-block-button,
.wp-post .wp-block-embed {
  margin-top: 2rem;
  margin-bottom: 2rem
}

@media all and (min-width: 769px) {
  body.logged-in .header {
    top: 32px !important
  }
}

@media all and (max-width: 768px) {
  #wpadminbar {
    z-index: 1
  }
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
@media all and (max-width: 768px) {
  .page-home .content {
    margin-top: -35px;
    padding-top: 35px
  }
}

.page-home .staff-other.top-staff {
  margin-top: 25px !important
}

.page-home .staff-btn {
  display: none
}

.mainVisual {
  width: 100%;
  position: relative;
  overflow-x: hidden;
  max-width: 100vw;
  height: 100vh;
  min-height: 1200px
}

@media screen and (min-width:768px) and ( max-width:1280px) {
  .mainVisual {
    width: 105vmax;
    max-width: 100%;
  }
}


@media all and (max-width: 768px) {
  .mainVisual {
    max-height: 537px;
    min-height: unset
  }
}

.mainVisual__txt {
  width: 134px;
  height: 732px;
  position: absolute;
  top: -20px
}

@media all and (min-width: 769px) {
  .mainVisual__txt {
    left: calc(50% + 10px);
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%)
  }
}

@media all and (max-width: 768px) {
  .mainVisual__txt {
    width: 90px;
    height: 403px;
    right: 70px
  }
}

.mainVisual__txt img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center
}

.mvSlide__track {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1
}

.mvSlide__slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center
}

.top-heading2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.top-heading2__en {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
  margin-bottom: 7px;
  width: 175px;
  height: 60px
}

@media all and (max-width: 768px) {
  .top-heading2__en {
    width: 88px;
    height: 31px
  }
}

.top-heading2__en span {
  color: #2e98e0
}

.top-heading2__main {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
  padding-left: 40px;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 3.9rem;
  font-weight: bold;
  line-height: 1.1
}

@media all and (max-width: 768px) {
  .top-heading2__main {
    padding-left: 26px;
    font-size: 2.1rem
  }
}

.top-message {
  position: relative
}

@media all and (max-width: 768px) {
  .top-message::after {
    content: "";
    display: inline-block;
    width: 100%;
    height: calc(100% + 130px);
    background-color: #2e98e0;
    position: absolute;
    top: 0;
    left: 0;
    opacity: .2
  }
}

.top-message .inner-md {
  position: relative
}

.top-message .top-heading2__en {
  width: 175px;
  height: 60px
}

@media all and (max-width: 768px) {
  .top-message .top-heading2__en {
    width: 88px;
    height: 31px
  }
}

@media all and (max-width: 768px) {
  .top-message .top-heading2__main {
    padding-left: 24px
  }
}

.top-message__box {
  padding: 20px 30px 23px 20px;
  width: 100%;
  max-width: 815px;
  position: absolute;
  top: -195px;
  left: 0;
  z-index: 1
}

@media all and (max-width: 768px) {
  .top-message__box {
    padding: 20px 25px 12px 15px;
    position: relative;
    top: -35px
  }
}

.top-message__box::after {
  content: "";
  display: inline-block;
  width: calc(100% + 50vw);
  height: 100%;
  background-color: #fff;
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
  opacity: .85
}

@media all and (max-width: 768px) {
  .top-message__box::after {
    width: calc(100% + 20px);
    right: unset;
    left: -26px
  }
}

.top-message__txt {
  margin-top: 26px;
  margin-bottom: 0;
  padding-left: 94px;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 2.1rem;
  text-align: justify
}

@media all and (max-width: 768px) {
  .top-message__txt {
    margin-top: 15px;
    padding-left: 20px;
    font-size: 1.4rem
  }
}

.top-message__btn {
  margin-top: 14px;
  margin-left: 95px;
  margin-bottom: 0;
  text-align: right
}

@media all and (max-width: 768px) {
  .top-message__btn {
    margin: 0
  }
}

@media all and (max-width: 768px) {
  .top-message__btn .btn-arrow {
    margin-left: 50px;
    padding: 0;
    width: 150px;
    min-width: auto;
    height: 11px
  }
}

.top-ps {
  padding-top: 180px;
  padding-bottom: 30px;
  position: relative;
  overflow: hidden
}

@media all and (max-width: 768px) {
  .top-ps {
    margin-top: -35px;
    padding-top: 0;
    padding-bottom: 25px
  }
}

@media all and (min-width: 769px) {
  .top-ps::after {
    content: "";
    display: inline-block;
    width: 100%;
    height: 100%;
    background-color: #2e98e0;
    position: absolute;
    top: 0;
    left: 0;
    opacity: .2
  }
}

.top-ps__link {
  margin-left: auto;
  padding: 10px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
  max-width: 768px;
  height: 245px;
  background-image: url(../top/images/img_ps.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  text-decoration: none;
  position: relative;
  overflow: hidden
}

@media all and (max-width: 768px) {
  .top-ps__link {
    margin-top: 17px;
    height: 124px
  }
}

.top-ps__link .top-heading2 {
  padding-left: 10px;
  position: relative;
  z-index: 2
}

@media all and (max-width: 768px) {
  .top-ps__link .top-heading2 {
    padding-top: 3px
  }
}

.top-ps__link .top-heading2__en {
  margin: 10px 0 0 5px;
  width: 257px;
  height: 60px;
  opacity: 1
}

@media all and (max-width: 768px) {
  .top-ps__link .top-heading2__en {
    margin: 5px 0 0;
    width: 128px;
    height: 30px
  }
}

.top-ps__link .top-heading2__main {
  padding: 0;
  color: #fff;
  margin: 12px 0 0 70px;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 2.1rem;
  line-height: 1;
  position: relative;
  z-index: 2
}

@media all and (max-width: 768px) {
  .top-ps__link .top-heading2__main {
    margin-top: 8px;
    margin-left: 20px;
    font-size: 1.3rem
  }
}

.top-ps__link .top-heading2__main::after {
  border-style: solid;
  border-width: 0 3px 3px 0;
  content: "";
  display: inline-block;
  position: absolute;
  height: 12px;
  width: 12px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  position: relative;
  top: 0;
  left: 8px
}

@media all and (max-width: 768px) {
  .top-ps__link .top-heading2__main::after {
    height: 6px;
    width: 6px;
    border-width: 0 2px 2px 0;
    top: -1px;
    left: 7px
  }
}

.top-ps__link::after {
  content: "";
  display: inline-block;
  width: calc(100% - 20px);
  height: calc(100% - 20px);
  background-color: #2e98e0;
  mix-blend-mode: multiply;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  -webkit-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  z-index: 1;
  opacity: .7;
  -webkit-transition: .3s;
  transition: .3s
}

.top-ps__link:hover::after {
  width: 100%;
  height: 100%
}

.top-staff {
  margin-top: 90px
}

@media all and (max-width: 768px) {
  .top-staff {
    margin-top: 75px
  }
}

.top-staff .top-heading2 {
  padding-left: 60px
}

@media all and (max-width: 768px) {
  .top-data .top-heading2,
  .top-environment .top-heading2 {
    padding-left: 60px
  }
}

.top-staff .top-heading2__en {
  width: 345px;
  height: 47px
}

@media all and (max-width: 768px) {
  .top-staff .top-heading2__en {
    width: 173px;
    height: 24px
  }
}

.top-staff .top-heading2__main {
  margin-top: 10px
}

@media all and (max-width: 768px) {
  .top-staff .top-heading2__main {
    margin-top: 3px;
    padding-left: 18px
  }
}

@media all and (min-width: 769px) {
  .top-staff .inner.--slide {
    max-width: 1580px;
    position: relative;
    left: 80px
  }
}

.top-staff__slide {
  margin-top: 25px;
  margin-bottom: 55px
}

@media all and (max-width: 768px) {
  .top-staff__slide {
    margin-bottom: 20px
  }
}

.top-staff__btn .btn-box {
  margin: 0 auto
}

.top-staff__btn .btn-box__en {
  margin-bottom: 12px;
  width: 122px;
  height: 17px
}

@media all and (max-width: 768px) {
  .staffSlide__slides {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end
  }
}

.staffSlide__slide {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

@media all and (max-width: 768px) {
  .staffSlide__slide {
    width: 100%;
    height: 100%;
    text-decoration: none;
    -webkit-transition: .3s;
    transition: .3s
  }

  .staffSlide__slide.swiper-slide-prev .staffSlide__slide__title,
  .staffSlide__slide.swiper-slide-prev .staffSlide__slide__btn,
  .staffSlide__slide.swiper-slide-next .staffSlide__slide__title,
  .staffSlide__slide.swiper-slide-next .staffSlide__slide__btn {
    opacity: 0
  }

  .staffSlide__slide.swiper-slide-prev .staffSlide__slide__img,
  .staffSlide__slide.swiper-slide-next .staffSlide__slide__img {
    width: 36%
  }

  .staffSlide__slide.swiper-slide-prev .staffSlide__slide__link {
    position: relative
  }

  .staffSlide__slide.swiper-slide-prev .staffSlide__slide__img {
    position: absolute;
    bottom: 100%;
    right: 0
  }
}

.staffSlide__slide__link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  height: 100%;
  text-decoration: none;
  -webkit-transition: .3s;
  transition: .3s
}

.staffSlide__slide__link:hover .staffSlide__slide__img::after {
  opacity: .5
}

.staffSlide__slide__title {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
  padding-top: 30px;
  padding-left: 90px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  height: 90px;
  position: relative;
  top: -17px;
  z-index: 2
}

@media all and (max-width: 768px) {
  .staffSlide__slide__title {
    padding-top: 24px;
    padding-left: 50px;
    height: auto
  }
}

.staffSlide__slide__title::after {
  content: "";
  display: inline-block;
  background-image: url(../images/staff/img_staff_deco.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  width: 68px;
  height: 102px;
  position: absolute;
  top: 0;
  left: 0
}

@media all and (max-width: 768px) {
  .staffSlide__slide__title::after {
    width: 33px;
    height: 50px;
    top: 5px;
    left: 10px
  }
}

.staffSlide__slide__title .item-title {
  margin: 4px 0 0;
  color: #231815;
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-size: 3.4rem;
  font-weight: bold;
  letter-spacing: 1px;
  line-height: 1.2
}

@media all and (max-width: 768px) {
  .staffSlide__slide__title .item-title {
    font-size: 1.8rem
  }
}

.staffSlide__slide__title .item-name {
  margin: 0;
  color: #000;
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-size: 1.5rem;
  font-weight: bold;
  letter-spacing: 2px;
  line-height: 1
}

@media all and (max-width: 768px) {
  .staffSlide__slide__title .item-name {
    margin-top: 3px;
    font-size: 1rem
  }
}

.staffSlide__slide__title .item-deco {
  color: #fff;
  font-family: "M PLUS 1p", sans-serif;
  font-size: 2.1rem;
  position: absolute;
  top: 18px;
  left: 22px;
  z-index: 2
}

@media all and (max-width: 768px) {
  .staffSlide__slide__title .item-deco {
    font-size: 1.1rem;
    top: 13px;
    left: 19px
  }
}

.staffSlide__slide__img {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
  width: 100%;
  height: auto;
  aspect-ratio: 1/1.286;
  overflow: hidden;
  position: relative;
  z-index: 1
}

.staffSlide__slide__img::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 100%;
  background-color: #2e98e0;
  mix-blend-mode: multiply;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  opacity: 0;
  -webkit-transition: .3s;
  transition: .3s
}

.staffSlide__slide__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center
}
.staffSlide__slide__img.--opr img {
  object-position: 90% 100%;
}

.staffSlide__slide__btn {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
  -ms-flex-order: 3;
  order: 3;
  margin-left: auto;
  padding: 0;
  -webkit-transition: .3s;
  transition: .3s;
  pointer-events: none;
  position: relative;
  z-index: 3
}

@media all and (max-width: 768px) {
  .staffSlide__slide__btn {
    -webkit-transform: scale(0.59) translateX(50px) translateY(-16px);
    transform: scale(0.59) translateX(50px) translateY(-16px)
  }
}

.top-environment {
  margin-top: 150px
}

@media all and (max-width: 768px) {
  .top-environment {
    margin-top: 80px
  }
}

.top-environment .inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  max-width: 1100px
}

@media all and (max-width: 768px) {
  .top-environment .inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column
  }
}

.top-environment__block:nth-child(1) {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-right: 30px;
  width: 44%
}

@media all and (max-width: 768px) {
  .top-environment__block:nth-child(1) {
    width: 100%;
    padding: 0px;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
}

.top-environment__block .top-heading2__en {
  margin-right: 2rem;
  margin-bottom: 10px;
  width: 251px;
  height: 47px
}

@media all and (max-width: 768px) {
  .top-environment__block .top-heading2__en {
    width: 126px;
    height: 24px
  }
}

@media all and (max-width: 768px) {
  .top-environment__block .top-heading2 {
    margin-right: 25px
  }
}

.top-environment__block__txt {
  margin-left: auto;
  padding-right: 40px;
  display: inline-block;
  width: 100%;
  max-width: 275px;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 1.6rem;
  line-height: 2.2
}

   .top-environment__block__uniform p a:hover{ 
	  opacity: 0.5 !important;
  }

@media all and (max-width: 768px) {
  .top-environment__block__txt {
    /*padding-right: 15px;
    margin-bottom: 0;
    max-width: 46vw;*/
    max-width: 100%;
    padding-right: 0;
    font-size: 1.3rem;
    line-height: 1.8
  }
}

.top-environment__block__uniform {
  width: 100%;
  height: auto;
  aspect-ratio: 1/1.33;
  position: relative;
  top: -115px;
  right: 240px;
  z-index: 1
}

@media screen and (max-width: 1599px) {
  .top-environment__block__uniform {
    top: -40px;
    right: 180px
  }
}

@media screen and (max-width: 1459px) {
  .top-environment__block__uniform {
    position: relative;
    top: unset;
    right: unset
  }
}

@media all and (max-width: 768px) {
  .top-environment__block__uniform {
    height: 190px;
  /*  position: relative;
    top: -58px;
    right: 12px;
    margin-top: -75px;
    z-index: -1*/
    position: static;
    display: contents;
  }
  .top-environment__block__uniform p img {
    display: block;
    width: 75%;
    margin: 0 auto 2rem;
  }

}

/*
.top-environment__block__uniform::after {
  content: "";
  display: inline-block;
  background-image: url(../top/images/bg_environment.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  width: 417px;
  height: 555px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1
}
*/

@media all and (max-width: 768px) {
  .top-environment__block__uniform::after {
    width: 209px;
    height: 278px
  }
}

.top-environment__block__uniform .item-txt {
  margin: 0;
  display: inline-block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  color: #fff;
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 1.8rem;
  line-height: 1.8;
  position: relative
}

@media all and (max-width: 768px) {
  .top-environment__block__uniform .item-txt {
    font-size: 1.2rem;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    line-height: 1.4
  }
}

.top-environment__block__uniform .item-txt.txt-01 {
  text-align: center;
  top: 75px;
  left: 118px
}

@media all and (max-width: 768px) {
  .top-environment__block__uniform .item-txt.txt-01 {
    top: 49px;
    left: 45px
  }
}

.top-environment__block__uniform .item-txt.txt-02 {
  text-align: right;
  position: absolute;
  bottom: 120px;
  left: 75px
}

@media all and (max-width: 768px) {
  .top-environment__block__uniform .item-txt.txt-02 {
    top: 201px;
    bottom: unset;
    left: 35px
  }

  .top-environment__block__uniform .item-txt.txt-02 span {
    display: inline-block;
    width: 1em
  }
}

.top-environment__block__uniform .item-img {
  width: 436px;
  height: 290px;
  position: absolute;
  top: 138px;
  left: 140px;
  -webkit-animation: sway 3s infinite;
  animation: sway 3s infinite
}

@media screen and (max-width: 1459px) {
  .top-environment__block__uniform .item-img {
    width: 290px;
    height: 194px;
    top: 170px;
    left: 163px
  }
}

@media all and (max-width: 768px) {
  .top-environment__block__uniform .item-img {
    width: 183px;
    height: 115px;
    top: 81px;
    left: 91px
  }
}

@media screen and (max-width: 530px) {
  .top-environment__block__uniform .item-img {
    width: 139px;
    height: 87px;
    top: 95px;
    left: 55px
  }
}

@media screen and (max-width: 410px) {
  .top-environment__block__uniform .item-img {
    left: 33px
  }
}

@media screen and (max-width: 344px) {
  .top-environment__block__uniform .item-img {
    width: 110px;
    height: 69px;
    top: 102px;
    left: 42px
  }
}

.top-environment__block__uniform .item-img .icon-blank {
  display: none
}

.top-environment__block__uniform .item-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center
}

.top-environment__block:nth-child(2) {
  width: 56%
}

@media all and (max-width: 768px) {
  .top-environment__block:nth-child(2) {
    width: 100%
  }
}

@-webkit-keyframes sway {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0)
  }

  10% {
    -webkit-transform: rotate(0);
    transform: rotate(0)
  }

  14% {
    -webkit-transform: rotate(-6deg);
    transform: rotate(-6deg)
  }

  18% {
    -webkit-transform: rotate(6deg);
    transform: rotate(6deg)
  }

  22% {
    -webkit-transform: rotate(-6deg);
    transform: rotate(-6deg)
  }

  26% {
    -webkit-transform: rotate(6deg);
    transform: rotate(6deg)
  }

  30% {
    -webkit-transform: rotate(-6deg);
    transform: rotate(-6deg)
  }

  34% {
    -webkit-transform: rotate(6deg);
    transform: rotate(6deg)
  }

  37% {
    -webkit-transform: rotate(-2deg);
    transform: rotate(-2deg)
  }

  39% {
    -webkit-transform: rotate(0);
    transform: rotate(0)
  }

  100% {
    -webkit-transform: rotate(0);
    transform: rotate(0)
  }
}

@keyframes sway {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0)
  }

  10% {
    -webkit-transform: rotate(0);
    transform: rotate(0)
  }

  14% {
    -webkit-transform: rotate(-6deg);
    transform: rotate(-6deg)
  }

  18% {
    -webkit-transform: rotate(6deg);
    transform: rotate(6deg)
  }

  22% {
    -webkit-transform: rotate(-6deg);
    transform: rotate(-6deg)
  }

  26% {
    -webkit-transform: rotate(6deg);
    transform: rotate(6deg)
  }

  30% {
    -webkit-transform: rotate(-6deg);
    transform: rotate(-6deg)
  }

  34% {
    -webkit-transform: rotate(6deg);
    transform: rotate(6deg)
  }

  37% {
    -webkit-transform: rotate(-2deg);
    transform: rotate(-2deg)
  }

  39% {
    -webkit-transform: rotate(0);
    transform: rotate(0)
  }

  100% {
    -webkit-transform: rotate(0);
    transform: rotate(0)
  }
}

.link-boxList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%
}

.link-boxList__item {
  margin-bottom: 35px;
  width: calc(50% - 18px)
}

@media all and (max-width: 768px) {
  .link-boxList__item {
    margin-bottom: 10px;
    width: calc(50% - 9px)
  }
}

.link-boxList__item:nth-child(even) {
  margin-left: 36px
}

@media all and (max-width: 768px) {
  .link-boxList__item:nth-child(even) {
    margin-left: 18px
  }
}

.link-boxList__item__link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  height: 100%;
  text-decoration: none;
  position: relative;
  -webkit-transition: .3s;
  transition: .3s
}

.link-boxList__item__link .item-img {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
  width: 100%;
  height: auto;
  aspect-ratio: 1.2/1;
  overflow: hidden;
  background-color: #fff;
  -webkit-transition: .3s;
  transition: .3s
}

.link-boxList__item__link .item-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
  -webkit-transition: .3s;
  transition: .3s
}

.link-boxList__item__link .item-title {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
  margin-top: 12px;
  padding-left: 18px;
  padding-bottom: 15px;
  color: #2e98e0;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 2.3rem;
  font-weight: bold;
  line-height: 1
}

@media all and (max-width: 768px) {
  .link-boxList__item__link .item-title {
    margin-top: 7px;
    padding-left: 10px;
    padding-bottom: 9px;
    font-size: 1.5rem
  }
}

.link-boxList__item__link .item-icon {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
  -ms-flex-order: 3;
  order: 3;
  position: absolute;
  bottom: 0;
  right: -4px;
  z-index: 3;
  -webkit-transition: .3s;
  transition: .3s
}

@media all and (max-width: 768px) {
  .link-boxList__item__link .item-icon {
    bottom: -10px;
    right: -19px;
    -webkit-transform: scale(0.55);
    transform: scale(0.55)
  }
}

.link-boxList__item__link .item-en {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
  -ms-flex-order: 3;
  order: 3;
  margin-top: -4px;
  padding-left: 18px;
  width: 217px;
  height: 16px;
  position: relative;
  bottom: 5px;
  -webkit-transition: .3s;
  transition: .3s
}

@media all and (max-width: 768px) {
  .link-boxList__item__link .item-en {
    margin-top: 0;
    padding-left: 12px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 122px;
    height: 9px
  }
}

.link-boxList__item__link .item-en+.item-icon {
  bottom: 14px
}

@media all and (max-width: 768px) {
  .link-boxList__item__link .item-en+.item-icon {
    bottom: -1px
  }
}

.link-boxList__item__link:hover .item-img {
  background-color: #2e98e0
}

.link-boxList__item__link:hover .item-img img {
  opacity: .83
}

.link-boxList__item__link:hover .item-icon .icon-arrowS__square {
  fill: #2e98e0;
  stroke: #2e98e0
}

.link-boxList__item__link:hover .item-en {
  color: #2e98e0
}

.link-boxList__item__link:hover .item-en .icon-arrowN {
  stroke: #2e98e0
}

.link-boxList__item__link .icon-blank {
  display: none
}

@media all and (max-width: 768px) {
  .top-data {
    margin-top: 65px
  }
}

@media all and (min-width: 769px) {
  .top-data .top-heading2 {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
  }

  .top-data .top-heading2__en {
    width: 266px;
    height: 60px
  }

  .top-data .top-heading2__main {
    padding-left: 118px;
    font-size: 3.6rem
  }
}

@media all and (max-width: 768px) {
  .top-data .top-heading2__en {
    width: 133px;
    height: 30px
  }
}

.top-data .data-block {
  margin-top: 50px
}

.top-data .list-data {
  margin-top: 70px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.top-data .list-data__block {
  margin-bottom: 80px;
  padding-top: 28px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: calc(50% - 35px);
  min-height: 300px;
  position: relative
}

.top-data .list-data__block:nth-child(even) {
  margin-left: 70px
}

.top-data .list-data__block::before {
  content: "";
  display: inline-block;
  width: 100%;
  height: 53px;
  border-top: 2px solid #2e98e0;
  border-left: 2px solid #2e98e0;
  border-right: 2px solid #2e98e0;
  border-radius: 30px 30px 0 0;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1
}

.top-data .list-data__block::after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  background-color: #2e98e0;
  position: absolute;
  top: -3px;
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
  -webkit-transform: translateX(-50%) rotate(45deg);
  -ms-transform: translateX(-50%) rotate(45deg)
}

.top-data .list-data__block__title {
  padding-bottom: 8px;
  display: inline-block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  color: #2e98e0;
  font-size: 2.7rem;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
  border-bottom: 3px solid #2e98e0
}

.top-data .list-data__block__txt p {
  text-align: center
}

.top-data .list-data__block__txt .txt-main {
  margin: 14px 0 0;
  font-size: 1.7rem;
  font-weight: 600;
  line-height: 1.4
}

.top-data .list-data__block__txt .txt-rice {
  margin: 4px 0 0;
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: -1px;
  line-height: 1.2
}

.top-data .list-data__block__graph {
  position: relative
}

.top-data .list-data__block__graph .item-txt {
  margin: 0;
  color: #2e98e0;
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 11rem;
  line-height: 1;
  letter-spacing: -1px
}

.top-data .list-data__block__graph .item-speech {
  position: absolute
}

.top-data .list-data__block__graph .item-speech img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center
}

.top-data .list-data__block__sub {
  margin: 0 auto;
  width: 100%;
  max-width: 325px
}

.top-data .list-data__block__sub p {
  text-align: left
}

.top-data .list-data__block__sub .txt-main {
  margin: 14px 0 0;
  font-size: 1.7rem;
  font-weight: 600;
  line-height: 1.6
}

.top-data .list-data__block__sub .txt-rice {
  margin: 4px 0 0;
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: -1px;
  line-height: 1.2;
  text-align: center
}

.top-data .list-data .data-01__graph {
  margin-top: 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row
}

.top-data .list-data .data-01__txt01 {
  position: absolute;
  top: 0;
  left: -55px
}

.top-data .list-data .data-01__img {
  width: 330px;
  height: 59px
}

.top-data .list-data .data-01__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center
}

.top-data .list-data .data-01__txt02 {
  color: #000;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 3.5rem;
  position: absolute;
  bottom: -45px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%)
}

.top-data .list-data .data-01__txt03 {
  color: #f33762;
  position: absolute;
  top: 0;
  right: -55px
}

.top-data .list-data .data-01__speech {
  width: 153px;
  height: 103px;
  bottom: -145px;
  right: -5px
}

.top-data .list-data .data-02__graph {
  margin-top: 30px;
  margin-bottom: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row
}

.top-data .list-data .data-02__txt01 {
  position: absolute;
  top: 65px;
  right: -60px
}

.top-data .list-data .data-02__txt01 span:nth-child(1) {
  color: #fff
}

.top-data .list-data .data-02__txt01 span:nth-child(2) {
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 4.5rem;
  font-weight: 600;
  position: relative;
  left: -18px
}

.top-data .list-data .data-02__img {
  width: 236px;
  height: 237px
}

.top-data .list-data .data-02__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center
}

.top-data .list-data .data-02__speech {
  margin: 0;
  width: 193px;
  height: 116px;
  bottom: -50px;
  right: -184px
}

.top-data .list-data .data-03__graph {
  margin-top: 20px;
  margin-bottom: 10px
}

.top-data .list-data .data-03__txt01 span:nth-child(1) {
  font-size: 10.8rem;
  font-weight: 600
}

.top-data .list-data .data-03__txt01 span:nth-child(2) {
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 4.5rem;
  font-weight: 600;
  position: relative;
  left: -10px
}

.top-data .list-data .data-03__speech {
  margin: 0;
  width: 208px;
  height: 119px;
  bottom: -65px;
  left: -232px
}

.top-data .list-data .data-04__graph {
  margin-top: 16px;
  margin-bottom: 10px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row
}

.top-data .list-data .data-04__txt01 {
  position: absolute;
  top: 65px;
  right: -60px
}

.top-data .list-data .data-04__txt01 span:nth-child(1) {
  color: #fff
}

.top-data .list-data .data-04__txt01 span:nth-child(2) {
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 4.5rem;
  font-weight: 600;
  position: relative;
  left: -18px
}

.top-data .list-data .data-04__img {
  width: 236px;
  height: 236px
}

.top-data .list-data .data-04__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center
}

.top-data .list-data .data-04__speech {
  margin: 0;
  width: 161px;
  height: 104px;
  bottom: 10px;
  left: -165px
}

.top-data__btn a {
  margin: 0 auto
}

.top-data__btn .btn-box__en {
  margin-bottom: 6px;
  width: 94px;
  height: 21px
}

@media all and (max-width: 768px) {
  .top-data__btn .btn-box__en {
    width: 85px;
    height: 20px
  }
}

.top-requirements {
  margin-top: 180px;
  padding-top: 85px;
  position: relative
}

@media all and (max-width: 768px) {
  .top-requirements {
    margin-top: 60px;
    padding-top: 58px
  }
}

.top-requirements .top-heading2 {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  position: absolute;
  top: 33px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index: 3
}

.top-requirements .top-heading2__en {
  width: 277px;
  height: 60px
}

@media all and (max-width: 768px) {
  .top-requirements .top-heading2__en {
    width: 138px;
    height: 30px
  }
}

.top-requirements .top-heading2__main {
  margin-top: 0;
  padding-left: 0;
  color: #fff;
  letter-spacing: 3px
}

@media all and (min-width: 769px) {
  .top-requirements .top-heading2__main {
    font-size: 3.6rem
  }
}

.top-requirements__btnList {
  padding-top: 130px;
  width: 100vw;
  min-height: 380px;
  background-image: url(../top/images/bg_requirements.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover
}

@media screen and (min-width:768px) and ( max-width:1280px) {
  .top-requirements__btnList {
    width: 105vmax;
    max-width: 100%;
  }
}




@media all and (max-width: 768px) {
  .top-requirements__btnList {
    padding-top: 52px;
    padding-bottom: 18px;
    min-height: auto
  }
}

.top-requirements__btnList .inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

@media screen and (max-width: 1225px) {
  .top-requirements__btnList .inner {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column
  }
}

@media all and (max-width: 768px) {
  .top-requirements__btnList .inner {
    padding: 0 30px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column
  }
}

.top-requirements__btnList__item {
  margin-top: 0;
  margin-bottom: 0;
  display: inline-block;
  width: 100%
}

@media all and (min-width: 769px) {
  .top-requirements__btnList__item {
    margin: 0 30px;
    width: 480px;
    min-width: 480px
  }
}

@media screen and (max-width: 1245px) {
  .top-requirements__btnList__item {
    margin-bottom: 20px
  }
}

@media all and (max-width: 768px) {
  .top-requirements__btnList__item {
    margin-bottom: 15px
  }
}

.top-requirements__btnList__item .btn-border {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 0 95px 0 60px;
  width: 100%;
  height: 100%;
  min-height: 148px;
  border: 2px solid #f0f6fb;
  color: #000;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 2.9rem;
  letter-spacing: 2px;
  line-height: 1.2;
  text-decoration: none;
  position: relative;
  z-index: 1
}

@media all and (max-width: 768px) {
  .top-requirements__btnList__item .btn-border {
    padding-right: 50px;
    padding-left: 28px;
    min-height: 75px;
    font-size: 1.8rem
  }
}

.top-requirements__btnList__item .btn-border::before {
  content: "";
  display: inline-block;
  width: calc(100% - 8px);
  height: calc(100% - 8px);
  background-color: #f0f6fb;
  position: absolute;
  top: 4px;
  left: 4px;
  z-index: -1;
  opacity: .6;
  -webkit-transition: .3s;
  transition: .3s
}

@media all and (max-width: 768px) {
  .top-requirements__btnList__item .btn-border::before {
    width: calc(100% - 6px);
    height: calc(100% - 6px);
    top: 3px;
    left: 3px
  }
}

.top-requirements__btnList__item .btn-border::after {
  content: "";
  display: inline-block;
  background-image: url(../images/common/img_arrow_min.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  width: 41px;
  height: 19px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  right: 55px;
  z-index: 1
}

@media all and (max-width: 768px) {
  .top-requirements__btnList__item .btn-border::after {
    width: 23px;
    height: 11px;
    right: 27px
  }
}

@media all and (min-width: 769px) {
  .top-requirements__btnList__item .btn-border:hover::before {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 1
  }
}

.top-requirements__btnList__item .btn-border span {
  margin: 0 auto;
}


.top-requirements__contents {
  margin-top: 100px;
  max-width: 1090px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

@media all and (max-width: 768px) {
  .top-requirements__contents {
    margin-top: 26px;
    padding: 0 25px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column
  }
}

.top-requirements__contents__block {
  width: calc(50% - 20px)
}

@media all and (max-width: 768px) {
  .top-requirements__contents__block {
    width: 100%
  }
}

.top-requirements__contents__block .top-requirements__contents__block__area {
  display: flex;
}

.top-requirements__contents__block .top-requirements__contents__block__area .item-flow {
  margin-right: 20px;
  width: 50%;
}

.top-requirements__contents__block .item-title {
  margin-bottom: 15px;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 2.9rem;
  text-align: center
}

@media all and (max-width: 768px) {
  .top-requirements__contents__block .item-title {
    margin-bottom: 6px;
    font-size: 1.9rem
  }
}

.top-requirements__contents__block .item-flow__item {
  padding: 20px;
  background-color: #daebf2;
  border-radius: 30px
}

@media all and (max-width: 768px) {
  .top-requirements__contents__block .item-flow__item {
  /*  padding: 14px 30px 11px*/
    padding: 14px 15px 11px;
  }
}

.top-requirements__contents__block .item-flow__item.--single {
  border-radius: 100px
}

@media all and (max-width: 768px) {
  .top-requirements__contents__block .item-flow__item.--single {
    padding: 13px 5px;
    line-height: 1
  }
}

.top-requirements__contents__block .item-flow__item.--single.flowtitle {
  border-radius: 30px 30px 0 0;
  padding: 5px;
  background-color: #2E98E0;
  color: #fff;
}

.top-requirements__contents__block .item-flow__item+.item-flow__item {
  margin-top: 34px;
  position: relative
}

.top-requirements__contents__block .item-flow__item:first-child.item-flow__item+.item-flow__item {
  margin-top: 10px;
}

@media all and (max-width: 768px) {
  .top-requirements__contents__block .item-flow__item+.item-flow__item {
    margin-top: 20px
  }
}

.top-requirements__contents__block .item-flow__item+.item-flow__item::before {
  content: "";
  display: inline-block;
  background-image: url(../images/common/img_arrow_down.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  width: 21px;
  height: 12px;
  position: absolute;
  top: -21px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%)
}

@media all and (max-width: 768px) {
  .top-requirements__contents__block .item-flow__item+.item-flow__item::before {
    width: 12px;
    height: 9px;
    top: -14px
  }
}

.top-requirements__contents__block .item-flow__item__title {
  margin: 0;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 1.7rem;
  font-weight: 600;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: 2px;
  text-align: center
}

.top-requirements__contents__block .item-flow__item:first-child.item-flow__item+.item-flow__item::before {
  display: none;
}

@media all and (max-width: 768px) {
  .top-requirements__contents__block .item-flow__item__title {
    font-size: 1.2rem;
    line-height: 1.2;
  }
}

.top-requirements__contents__block .item-flow__item__sub {
  margin-top: 23px;
  padding-top: 20px;
  position: relative
}

@media all and (max-width: 768px) {
  .top-requirements__contents__block .item-flow__item__sub {
    margin-top: 12px;
    padding-top: 15px
  }
}

.top-requirements__contents__block .item-flow__item__sub::before {
  content: "";
  display: inline-block;
  background-image: url(../top/images/img_dot.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  width: 464px;
  height: 2px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%)
}

@media all and (max-width: 768px) {
  .top-requirements__contents__block .item-flow__item__sub::before {
    width: calc(100% + 36px)
  }
}

.top-requirements__contents__block .item-flow__item__sub .sub-title {
  margin: 0;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 1.7rem;
  font-weight: 600;
  text-align: center
}

@media all and (max-width: 768px) {
  .top-requirements__contents__block .item-flow__item__sub .sub-title {
    font-size: 1.2rem;
    line-height: 1.2;
  }
}

.top-requirements__contents__block .item-flow__item__sub .btnList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%
}

.top-requirements__contents__block .item-flow__item__sub .btnList:hover .btnList__item__block {
  border-color: #2e98e0
}

.top-requirements__contents__block .item-flow__item__sub .btnList__item {
  margin: 1rem 0 0;
  /*width: calc(50% - 10px);*/
  width: 100%;
}

.top-requirements__contents__block .item-flow__item__sub .btnList__item:nth-child(even) {
  margin-left: 20px
}

.top-requirements__contents__block .item-flow__item__sub .btnList__item__block {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  height: 53px;
  background-color: #fff;
  border: 2px solid #fff;
  border-radius: 20px;
  -webkit-transition: .3s;
  transition: .3s
}

@media all and (max-width: 768px) {
  .top-requirements__contents__block .item-flow__item__sub .btnList__item__block {
    height: 49px;
    border-radius: 12px
  }
}

.top-requirements__contents__block .item-flow__item__sub .btnList__item__block .icon-blank {
  display: none
}

.top-requirements__contents__block .item-flow__item__sub .btnList__item__block.recruit_navi .img {
  width: 148px;
  height: 44px;
  position: relative;
  top: 3px
}

@media all and (max-width: 768px) {
  .top-requirements__contents__block .item-flow__item__sub .btnList__item__block.recruit_navi .img {
    width: 86px;
    height: 25px
  }
}

.top-requirements__contents__block .item-flow__item__sub .btnList__item__block.my_navi .img {
  width: 154px;
  height: 45px
}

@media all and (max-width: 768px) {
  .top-requirements__contents__block .item-flow__item__sub .btnList__item__block.my_navi .img {
    width: 90px;
    height: 28px
  }
}

.top-requirements__contents__block .item-flow__item__sub .btnList__item__block .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center
}

@media all and (max-width: 768px) {
  .top-requirements__contents__block .item-btn {
    margin-top: 23px
  }
}

.top-requirements__contents__block .item-btn a {
  margin: 0 auto
}

.top-requirements__contents__block:nth-child(2) .item-title {
  margin: 0 auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  position: relative
}

@media all and (max-width: 768px) {
  .top-requirements__contents__block:nth-child(2) .item-title {
    margin-top: 80px
  }
}

.top-requirements__contents__block:nth-child(2) .item-title::before {
  content: "";
  display: inline-block;
  background-image: url(../top/images/img_faq_q.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  width: 107px;
  height: 68px;
  position: absolute;
  top: -45px;
  right: -115px
}

@media all and (max-width: 768px) {
  .top-requirements__contents__block:nth-child(2) .item-title::before {
    width: 69px;
    height: 44px;
    top: -27px;
    right: -68px
  }
}

.top-requirements__btn {
  margin-top: 100px
}

@media all and (max-width: 768px) {
  .top-requirements__btn {
    margin-top: 45px;
    padding: 0 11px
  }
}

.top-requirements__btn .btn-box {
  margin: 0 auto
}

@media all and (max-width: 768px) {
  .top-requirements__btn .btn-box__jp {
    font-size: 2rem
  }
}

@media all and (max-width: 768px) {
  .top-requirements .recr-btnList__btn {
    margin: 0 25px
  }
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
.page-staff-index .staffSlide__track {
  margin: 0 auto;
  width: 100%;
  max-width: 1250px
}

.page-staff-index .staffSlide__slides {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

@media all and (min-width: 769px) {
  .page-staff-index .staffSlide__slide {
    margin-bottom: 100px;
    width: calc(33.3333333333% - 43px)
  }

  .page-staff-index .staffSlide__slide:not(:nth-child(3n+1)) {
    margin-left: 64px
  }
}

@media all and (max-width: 768px) {
  .page-staff-index .staffSlide__slide {
    margin-bottom: 25px;
    width: calc(50% - 5px)
  }

  .page-staff-index .staffSlide__slide:nth-child(even) {
    margin-left: 10px
  }
}

.page-staff-index .staffSlide__slide__title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-top: 36px;
  padding-left: 100px;
  height: auto;
  position: relative
}

@media all and (max-width: 768px) {
  .page-staff-index .staffSlide__slide__title {
    padding-left: 40px
  }
}

.page-staff-index .staffSlide__slide__title::after {
  background-image: url(../images/staff/img_staff_deco2.png);
  width: 86px;
  height: 129px;
  left: 0
}

@media all and (max-width: 768px) {
  .page-staff-index .staffSlide__slide__title::after {
    width: 36px;
    height: 54px
  }
}

.page-staff-index .staffSlide__slide__title .item-type {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
  margin: 0;
  color: #000;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 2px;
  line-height: 1
}

@media all and (max-width: 768px) {
  .page-staff-index .staffSlide__slide__title .item-type {
    font-size: 1.2rem;
    letter-spacing: 1px
  }
}

.page-staff-index .staffSlide__slide__title .item-sub {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
  margin: 0;
  color: #231815;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 2px
}

@media all and (max-width: 768px) {
  .page-staff-index .staffSlide__slide__title .item-sub {
    font-size: 1.2rem;
    letter-spacing: 1px
  }
}

.page-staff-index .staffSlide__slide__title .item-title {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
  -ms-flex-order: 3;
  order: 3;
  margin: 4px 0 0;
  color: #231815;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 3.4rem;
  font-weight: bold;
  letter-spacing: 1px;
  line-height: 1.2
}

@media all and (max-width: 768px) {
  .page-staff-index .staffSlide__slide__title .item-title {
    font-size: 1.8rem
  }
}

.page-staff-index .staffSlide__slide__title .item-name {
  -webkit-box-ordinal-group: 5;
  -webkit-order: 4;
  -ms-flex-order: 4;
  order: 4
}

@media all and (max-width: 768px) {
  .page-staff-index .staffSlide__slide__title .item-name {
    margin-top: 3px;
    font-size: 1rem
  }
}

.page-staff-index .staffSlide__slide__title .item-deco {
  color: #fff;
  font-family: "M PLUS 1p", sans-serif;
  font-size: 2.1rem;
  position: absolute;
  top: 26px;
  left: 32px;
  z-index: 2
}

@media all and (max-width: 768px) {
  .page-staff-index .staffSlide__slide__title .item-deco {
    font-size: 1.2rem;
    top: 14px;
    left: 10px
  }
}

.page-staff-index .staffSlide__slide .btn-arrowM {
  margin-top: 10px;
  margin-left: auto;
  font-weight: bold
}

@media all and (max-width: 768px) {
  .page-staff-index .staffSlide__slide .btn-arrowM {
    -webkit-transform: scale(0.59) translateX(0) translateY(-16px);
    transform: scale(0.59) translateX(0) translateY(-16px)
  }
}

@media all and (max-width: 768px) {
  .page-staff .page-title {
    padding-bottom: 18px
  }
}

.page-staff .page-title__en {
  margin-bottom: 8px;
  width: 297px;
  height: 40px
}

@media all and (max-width: 768px) {
  .page-staff .page-title__en {
    width: 150px;
    height: 22px
  }
}

.staff-title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 auto;
  width: 100%;
  max-width: 1258px;
  height: 665px;
  position: relative;
  z-index: 3
}

@media all and (max-width: 768px) {
  .staff-title {
    height: auto;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
  }
}

.staff-title__img {
  width: calc(50vw + 188px);
  min-width: 600px;
  height: 600px;
  position: absolute;
  bottom: 60px;
  left: calc(-50vw + 629px);
  z-index: -1
}

@media screen and (max-width: 1298px) {
  .staff-title__img {
    left: -20px
  }
}

@media all and (max-width: 768px) {
  .staff-title__img {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    width: calc(100% + 26px);
    min-width: unset;
    height: auto;
    position: relative;
    bottom: unset;
    left: 13px
  }
}

.staff-title__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center
}

.staff-title__txt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: auto;
  position: relative
}

@media all and (max-width: 768px) {
  .staff-title__txt {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    margin: 0 auto;
    width: 100%
  }
}

@media all and (min-width: 769px) {
  .staff-title__txt::after {
    content: "";
    display: inline-block;
    width: 460px;
    height: 200px;
    background-color: #127ce0;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 1;
    mix-blend-mode: multiply
  }
}

.staff-title__txt__copy {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center
}

@media all and (min-width: 769px) {
  .staff-title__txt__copy {
    padding-top: 50px;
    height: 460px;
    max-height: 460px
  }
}

@media all and (max-width: 768px) {
  .staff-title__txt__copy {
    padding: 57px 0 15px;
    position: relative
  }
}

.staff-title__txt__copy .item-title {
  margin: 0;
  width: 162px;
  height: 63px;
  position: absolute;
  top: -50px;
  right: 26px
}

@media all and (max-width: 768px) {
  .staff-title__txt__copy .item-title {
    width: 81px;
    height: auto;
    top: 12px;
    left: calc(50% + 58px);
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%)
  }
}

.staff-title__txt__copy .item-title img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center
}

.staff-title__txt__copy .item-txt {
  margin: 0;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 3.6rem;
  font-weight: bold;
  line-height: 1.8;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  letter-spacing: 4px
}

@media all and (max-width: 768px) {
  .staff-title__txt__copy .item-txt {
    font-size: 1.65rem
  }
}

.staff-title__txt__copy .item-txt .num {
  text-combine-upright: all
}

.staff-title__txt__copy .item-txt .spacing {
  letter-spacing: 2px
}

.staff-title__txt__copy .item-txt .spacing-up .num {
  padding-bottom: 4px
}

.staff-title__txt__box {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: auto;
  padding: 48px 10px 10px 65px;
  width: 100%;
  max-width: 460px;
  height: 201px;
  color: #fff;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  position: relative;
  z-index: 2
}

@media all and (max-width: 768px) {
  .staff-title__txt__box {
    padding: 16px 0 12px 45px;
    height: auto;
    background-color: #127ce0
  }
}

.staff-title__txt__box .sub {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
  margin: 0;
  font-size: 1.8rem;
  letter-spacing: 2px;
  line-height: 1.2
}

@media all and (max-width: 768px) {
  .staff-title__txt__box .sub {
    font-size: 1.3rem
  }
}

.staff-title__txt__box .title {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 12px
}

.staff-title__txt__box .title__jp {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
  margin-right: 24px;
  font-size: 3.4rem;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 3px
}

@media all and (max-width: 768px) {
  .staff-title__txt__box .title__jp {
    font-size: 2.5rem
  }
}

.staff-title__txt__box .title__en {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 2px
}

@media all and (max-width: 768px) {
  .staff-title__txt__box .title__en {
    font-size: 1rem
  }
}

.staff-title__txt__box .title__type {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
  -ms-flex-order: 3;
  order: 3;
  margin-top: 8px;
  display: inline-block;
  width: 100%;
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: 1px
}

@media all and (max-width: 768px) {
  .staff-title__txt__box .title__type {
    font-size: 1.3rem
  }
}

.staff-contents {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 auto;
  padding-top: 40px;
  width: 100%;
  max-width: 1343px;
  min-height: 1475px;
  position: relative;
  z-index: 1
}

@media all and (max-width: 768px) {
  .staff-contents {
    padding-top: 13px;
    min-height: unset
  }
}

.staff-contents::before {
  content: "";
  display: inline-block;
  width: 200vw;
  height: 400px;
  background-color: #f2f7fa;
  position: absolute;
  top: -90px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index: -1
}

@media all and (max-width: 768px) {
  .staff-contents::before {
    height: 110vh;
    top: -50px
  }
}

.staff-contents__block {
  width: 100%
}

@media all and (min-width: 769px) {
  .staff-contents__block {
    width: calc(50% - 10px)
  }

  .staff-contents__block.staff-faq {
    max-width: 590px
  }

  .staff-contents__block.staff-schedule {
    max-width: 650px
  }
}

.staff-faq {
  position: relative;
  z-index: 2
}

@media all and (min-width: 769px) {
  .staff-faq::after {
    content: "";
    display: inline-block;
    background-image: url(../images/staff/img_staff_deco_01.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: top;
    width: 283px;
    height: 423px;
    position: absolute;
    top: 568px;
    left: -180px;
    z-index: -1
  }
}

.staff-schedule {
  margin-top: 170px;
  padding: 30px 18px 200px 16px;
  background-color: #fff;
  position: relative
}

@media all and (max-width: 768px) {
  .staff-schedule {
    margin-top: 50px;
    padding-bottom: 42px
  }
}

@media all and (min-width: 769px) {
  .staff-schedule::after {
    content: "";
    display: inline-block;
    background-image: url(../images/staff/img_staff_deco_02.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: top;
    width: 282px;
    height: 423px;
    position: absolute;
    top: 794px;
    left: -210px;
    z-index: -1
  }
}

.staff-schedule .title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-left: 35px;
  padding-bottom: 14px;
  border-bottom: 1px solid #2e98e0;
  position: relative
}

@media all and (max-width: 768px) {
  .staff-schedule .title {
    padding-left: 26px
  }
}

.staff-schedule .title::after {
  content: "";
  display: inline-block;
  background-image: url(../top/images/img_staff_deco.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  width: 45px;
  height: 67px;
  position: absolute;
  top: -6px;
  left: -34px
}

@media all and (max-width: 768px) {
  .staff-schedule .title::after {
    top: -1px;
    left: -18px;
    width: 30px;
    height: 46px
  }
}

.staff-schedule .title-en {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
  margin-right: 30px;
  width: 297px;
  height: 27px;
  color: #2e98e0;
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 2.8rem;
  font-weight: 500;
  line-height: 1;
  text-transform: uppercase
}

@media all and (max-width: 768px) {
  .staff-schedule .title-en {
    margin-right: 20px;
    width: 149px;
    height: 14px;
    font-size: 2.3rem
  }
}

.staff-schedule .title-en span {
  font-size: 3.3rem
}

@media all and (max-width: 768px) {
  .staff-schedule .title-en span {
    font-size: 2.8rem
  }
}

.staff-schedule .title-jp {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
  padding-top: 2px;
  font-family: "M PLUS 1p", sans-serif;
  font-size: 2rem;
  font-weight: bold
}

@media all and (max-width: 768px) {
  .staff-schedule .title-jp {
    padding-top: 0;
    font-size: 1.4rem
  }
}

.staff-schedule .rice {
  margin-top: 2.4rem
}

.staff-schedule .rice li {
  margin-left: calc(1em + 42px);
  text-indent: -1em;
  line-height: 1.4
}

@media all and (max-width: 768px) {
  .staff-schedule .rice li {
    margin-left: calc(1em + 5px);
    font-size: 1.3rem
  }
}

.list-schedule {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 48px;
  position: relative
}

@media all and (max-width: 768px) {
  .list-schedule {
    margin-top: 16px
  }
}

.list-schedule::before {
  content: "";
  display: inline-block;
  width: 1px;
  height: calc(100% - 10px);
  background-color: #231815;
  position: absolute;
  bottom: 0;
  left: 120px
}

@media all and (max-width: 768px) {
  .list-schedule::before {
    left: 60px
  }
}

.list-schedule__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  font-family: "M PLUS 1p", sans-serif
}

.list-schedule__item+.list-schedule__item {
  margin-top: 20px;
  min-height: 42px
}

@media all and (max-width: 768px) {
  .list-schedule__item+.list-schedule__item {
    margin-top: 20px
  }
}

.list-schedule__item+.list-schedule__item.--notTime {
  margin-top: 8px
}

.list-schedule__item:last-child {
  min-height: unset
}

.list-schedule__item.--notTime {
  padding-left: 120px
}

@media all and (max-width: 768px) {
  .list-schedule__item.--notTime {
    padding-left: 60px
  }
}

.list-schedule__item.--notTime+.list-schedule__item {
  margin-top: 0
}

.list-schedule__item.--notTime .item-txt {
  width: 100%
}

.list-schedule__item.--notTxt {
  margin-top: 10px
}

.list-schedule__item.--titleShift .item-txt {
  padding-top: 30px
}

.list-schedule__item.--mt10 {
  margin-top: 10px !important
}

.list-schedule__item.--mb0 {
  margin-bottom: 6px !important
}

@media all and (max-width: 768px) {
  .list-schedule__item.--mb0 {
    margin-bottom: 4px !important
  }
}

.list-schedule__item.--mb1 {
  margin-bottom: 10px !important
}

@media all and (max-width: 768px) {
  .list-schedule__item.--mb1 {
    margin-bottom: 6px !important
  }
}

.list-schedule__item.--mb2 {
  margin-bottom: 14px !important
}

@media all and (max-width: 768px) {
  .list-schedule__item.--mb2 {
    margin-bottom: 6px !important
  }
}

.list-schedule__item.--mb3 {
  margin-bottom: 16px !important
}

.list-schedule__item.--mb4 {
  margin-bottom: 18px !important
}

.list-schedule__item.--mb20 {
  margin-bottom: 20px !important
}

@media all and (max-width: 768px) {
  .list-schedule__item.--mb20 {
    margin-bottom: 15px !important
  }
}

.list-schedule__item.--mb55 {
  margin-bottom: 55px !important
}

@media all and (max-width: 768px) {
  .list-schedule__item.--mb55 {
    margin-bottom: 39px !important
  }
}

.list-schedule__item .item-time {
  margin: 0;
  padding-right: 14px;
  width: 120px;
  color: #2e98e0;
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 1.4;
  text-align: right;
  position: relative
}

@media all and (max-width: 768px) {
  .list-schedule__item .item-time {
    font-size: 1.5rem;
    width: 60px
  }
}

.list-schedule__item .item-time::after {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  background-color: #231815;
  position: absolute;
  top: 10px;
  right: -4px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}

@media all and (max-width: 768px) {
  .list-schedule__item .item-time::after {
    top: 5px
  }
}

.list-schedule__item .item-txt {
  padding-left: 18px;
  width: calc(100% - 120px);
  line-height: 1.4
}

@media all and (max-width: 768px) {
  .list-schedule__item .item-txt {
    width: calc(100% - 60px)
  }
}

.list-schedule__item .item-txt__title {
  margin: 0;
  color: #2e98e0;
  font-size: 2.2rem;
  font-weight: bold
}

@media all and (max-width: 768px) {
  .list-schedule__item .item-txt__title {
    font-size: 1.5rem
  }
}

.list-schedule__item .item-txt__sub {
  margin: 0 0 2px;
  padding-left: 10px;
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 1.9rem
}

@media all and (max-width: 768px) {
  .list-schedule__item .item-txt__sub {
    font-size: 1.3rem
  }
}

.staff-message {
  margin: 0 auto;
  max-width: 1160px;
  position: relative;
  z-index: 1
}

@media all and (min-width: 769px) {
  .staff-message {
    height: 475px;
    min-height: 475px
  }
}

.staff-message::after {
  content: "";
  display: inline-block;
  width: calc(100vw + 100px);
  height: 100%;
  background-color: #2e98e0;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index: -1
}

.staff-message__txt {
  padding: 35px 66px 20px;
  width: 508px;
  max-width: 100%;
  height: 100%;
  position: relative;
  z-index: 2
}

@media all and (min-width: 769px) {
  .staff-message__txt.--01 {
    width: 510px
  }
}

@media all and (max-width: 768px) {
  .staff-message__txt {
    padding: 32px 22px 20px;
    height: auto;
    top: 20px
  }
}

.staff-message__txt::before {
  content: "";
  display: inline-block;
  background-image: url(../images/staff/img_title_message.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  width: 220px;
  height: 63px;
  position: absolute;
  top: -32px;
  left: 52px;
  z-index: 3
}

@media all and (max-width: 768px) {
  .staff-message__txt::before {
    width: 110px;
    height: 32px;
    top: 7px;
    left: 8px
  }
}

.staff-message__txt::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 100%;
  background-color: #fff;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  opacity: .8
}

@media all and (max-width: 768px) {
  .staff-message__txt::after {
    opacity: .85
  }
}

.staff-message__txt .title {
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 2.2rem;
  text-align: center
}

@media all and (max-width: 768px) {
  .staff-message__txt .title {
    font-size: 1.7rem
  }
}

.staff-message__txt .txt {
  margin-top: 32px;
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-size: 1.9rem;
  text-align: justify
}

@media all and (max-width: 768px) {
  .staff-message__txt .txt {
    margin-top: 9px;
    margin-bottom: 0;
    font-size: 1.4rem
  }
}

.staff-message__img {
  width: 807px;
  max-width: 90%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
  overflow: hidden
}

@media all and (max-width: 768px) {
  .staff-message__img {
    margin: 40px auto 0;
    width: calc(100vw - 5px);
    max-width: unset;
    height: auto;
    aspect-ratio: 3.27/2;
    position: relative;
    left: -18px
  }

  .staff-message__img img {
    -webkit-transform: scale(1.176) translateX(-6px) translateY(3px);
    transform: scale(1.176) translateX(-6px) translateY(3px)
  }
}

.staff-message__img::before,
.staff-message__img::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  z-index: 1
}

.staff-message__img::before {
  left: -1px;
  background: -webkit-gradient(linear, left top, right top, from(#2e98e0), color-stop(18%, transparent));
  background: -webkit-linear-gradient(left, #2e98e0 0%, transparent 18%);
  background: linear-gradient(90deg, #2e98e0 0%, transparent 18%)
}

@media all and (max-width: 768px) {
  .staff-message__img::before {
    background: -webkit-gradient(linear, left top, right top, from(#2e98e0), color-stop(14%, transparent));
    background: -webkit-linear-gradient(left, #2e98e0 0%, transparent 14%);
    background: linear-gradient(90deg, #2e98e0 0%, transparent 14%)
  }
}

.staff-message__img::after {
  right: -1px;
  background: -webkit-gradient(linear, left top, right top, color-stop(82%, transparent), to(#2e98e0));
  background: -webkit-linear-gradient(left, transparent 82%, #2e98e0 100%);
  background: linear-gradient(90deg, transparent 82%, #2e98e0 100%)
}

@media all and (max-width: 768px) {
  .staff-message__img::after {
    background: -webkit-gradient(linear, left top, right top, color-stop(87%, transparent), to(#2e98e0));
    background: -webkit-linear-gradient(left, transparent 87%, #2e98e0 100%);
    background: linear-gradient(90deg, transparent 87%, #2e98e0 100%)
  }
}

.staff-message__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center
}

.staff-other {
  margin-top: 100px
}

@media all and (max-width: 768px) {
  .staff-other {
    margin-top: 38px
  }
}

.staff-other__title {
  color: #2e98e0;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 2.2rem;
  font-weight: bold;
  text-align: center;
  letter-spacing: 2px
}

@media all and (max-width: 768px) {
  .staff-other__title {
    font-size: 1.35rem
  }
}

.staff-other__contents {
  margin: 30px auto 0;
  width: 100%;
  max-width: 100%;
  height: auto;
  aspect-ratio: 1/.208;
  overflow: hidden
}

.staff-other__contents .list-staff__item {
  width: 100%;
  height: auto;
  aspect-ratio: 2/2.35;
  overflow: hidden;
  -webkit-transform: scale(0.54);
  transform: scale(0.54)
}

.staff-other__contents .list-staff__item.swiper-slide-active {
  -webkit-transform: scale(1);
  transform: scale(1)
}

.staff-other__contents .list-staff__item.swiper-slide-prev {
  -webkit-transform: scale(0.71) translateX(-21px);
  transform: scale(0.71) translateX(-21px)
}

.staff-other__contents .list-staff__item.swiper-slide-next {
  -webkit-transform: scale(0.71) translateX(21px);
  transform: scale(0.71) translateX(21px)
}

.staff-other__contents .list-staff__item__link {
  display: inline-block;
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 1
}

.staff-other__contents .list-staff__item__link::before {
  content: "";
  display: inline-block;
  width: 100%;
  height: 100%;
  background-color: #2e98e0;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  -webkit-transition: .3s;
  transition: .3s;
  opacity: 0;
  mix-blend-mode: multiply
}

.staff-other__contents .list-staff__item__link:hover::before {
  opacity: .5
}

.staff-other__contents .list-staff__item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center
}

.staff-btn {
  margin-top: 60px
}

@media all and (max-width: 768px) {
  .staff-btn {
    margin-top: 30px
  }
}

.staff-btn .btn-box {
  margin: 0 auto
}

.staff-btn .btn-box__en {
  margin-bottom: 7px;
  width: 122px;
  height: 17px
}

@media all and (max-width: 768px) {
  .staff-btn .btn-box__en {
    width: 61px;
    height: 12px
  }
}

@media all and (min-width: 769px) {
  .staff01-faq_block .txt-palt {
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    letter-spacing: 1px
  }
}

@media all and (min-width: 769px) {
  .--staff02 .staff-title {
    height: 696px
  }

  .--staff02 .staff-title__txt::after {
    width: 445px;
    right: 20px
  }

  .--staff02 .staff-title__txt__copy {
    height: 492px;
    max-height: 492px
  }
}

@media all and (min-width: 769px) {
  .--staff02 .staff-title__img {
    bottom: 92px
  }
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
@media all and (min-width: 769px) {
  .page-message .page-title {
    padding-bottom: 40px
  }
}

.page-message .page-title__jp {
  margin-top: 8px
}

@media all and (max-width: 768px) {
  .page-message .page-title__jp {
    margin-top: 12px
  }
}

.page-message .page-title__en {
  margin-bottom: 0;
  width: 151px;
  height: 52px
}

@media all and (max-width: 768px) {
  .page-message .page-title__en {
    width: 76px;
    height: 26px
  }
}

.message-top {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  height: 575px;
  position: relative;
  z-index: 1
}

@media all and (max-width: 768px) {
  .message-top {
    padding: 30px 0;
    height: auto
  }
}

.message-top::after {
  content: "";
  display: inline-block;
  width: 200vw;
  height: 100%;
  background-color: #f8feff;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index: -1
}

.message-top__txt {
  margin: 0;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 3.9rem;
  letter-spacing: 2px;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl
}

@media all and (max-width: 768px) {
  .message-top__txt {
    font-size: 2.2rem
  }
}

.message-contents {
  margin: 0 auto;
  padding: 60px 475px;
  width: 100%;
  position: relative;
  z-index: 1
}

@media screen and (max-width: 1623px) {
  .message-contents {
    padding-left: 495px;
    padding-right: 495px
  }
}

@media all and (max-width: 1595px) {
  .message-contents {
    padding-left: 300px;
    padding-right: 300px
  }
}

@media all and (max-width: 768px) {
  .message-contents {
    padding: 30px 10px 0
  }
}

.message-contents__txt {
  margin-top: 0;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 2.1rem;
  font-weight: bold;
  line-height: 1.95
}

.message-contents__txt:not(:first-child) {
  margin-bottom: 3rem
}

@media all and (max-width: 768px) {
  .message-contents__txt {
    font-size: 1.3rem
  }
}

.message-contents__img {
  margin-top: 65px
}

@media all and (max-width: 768px) {
  .message-contents__img {
    margin-top: 2rem
  }
}

.message-contents__img.--side {
  margin: 0;
  width: 476px;
  height: auto;
  aspect-ratio: 1/.786;
  position: absolute;
  z-index: -1
}

@media all and (max-width: 1595px) {
  .message-contents__img.--side {
    width: 280px
  }
}

@media all and (max-width: 768px) {
  .message-contents__img.--side {
    margin: 2rem 0 3.5rem;
    width: 100%;
    position: relative;
    top: unset !important;
    left: unset !important;
    right: unset !important
  }
}

.message-contents__img.--side::after {
  content: "";
  display: inline-block;
  width: 90px;
  height: 126px;
  background-color: #2e98e0;
  position: absolute;
  bottom: -10px;
  z-index: -2
}

.message-contents__img.--side img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center
}

.message-contents__img.--001 {
  top: -166px;
  left: calc(-50vw + 805px)
}

@media screen and (max-width: 1593px) {
  .message-contents__img.--001 {
    left: 0
  }
}

@media all and (max-width: 1595px) {
  .message-contents__img.--001 {
    left: -20px
  }
}

.message-contents__img.--001::after {
  right: -10px
}

.message-contents__img.--002 {
  height: auto;
  aspect-ratio: 1/.67;
  top: 445px;
  right: calc(-50vw + 806px + 10px)
}

@media screen and (min-width: 1594px) {
  .message-contents__img.--002 {
    width: 448px
  }
}

@media screen and (max-width: 1593px) {
  .message-contents__img.--002 {
    right: 10px
  }
}

.message-contents__img.--002::after {
  left: -10px;
  bottom: -13px
}

.message-contents__img.--003 {
  aspect-ratio: 1/.685;
  top: 705px;
  left: calc(-50vw + 805px)
}

@media screen and (max-width: 1593px) {
  .message-contents__img.--003 {
    left: 0
  }
}

@media all and (max-width: 1595px) {
  .message-contents__img.--003 {
    left: -20px
  }
}

.message-contents__img.--003::after {
  right: -10px
}

.message-contents__name {
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 3.7rem;
  font-weight: bold;
  text-align: right
}

@media all and (max-width: 768px) {
  .message-contents__name {
    font-size: 2.8rem
  }
}

.message-contents__name .name-post {
  display: block;
  font-size: 2.3rem
}

@media all and (max-width: 768px) {
  .message-contents__name .name-post {
    font-size: 1.6rem
  }
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
.page-data .page-title__jp {
  margin-top: 7px
}

@media all and (max-width: 768px) {
  .page-data .page-title__jp {
    margin-top: 12px
  }
}

.page-data .page-title__en {
  margin-bottom: 0;
  width: 230px;
  height: 52px
}

@media all and (max-width: 768px) {
  .page-data .page-title__en {
    width: 115px;
    height: 26px
  }
}

@media all and (min-width: 769px) {
  .page-data .footer {
    margin-top: 360px
  }
}

.data-heading2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-bottom: 56px;
  color: #2e98e0;
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 5.5rem;
  line-height: 1.2;
  position: relative
}

@media all and (max-width: 768px) {
  .data-heading2 {
    padding-bottom: 30px;
    font-size: 2rem
  }
}

.data-heading2::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  background-color: #2e98e0;
  position: absolute;
  bottom: 43px;
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
  -webkit-transform: translateX(-50%) rotate(45deg);
  -ms-transform: translateX(-50%) rotate(45deg)
}

@media all and (max-width: 768px) {
  .data-heading2::before {
    bottom: 19px
  }
}

.data-heading2::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 52px;
  border-top: 1px solid #2e98e0;
  border-right: 1px solid #2e98e0;
  border-left: 1px solid #2e98e0;
  border-radius: 26px 26px 0 0;
  position: absolute;
  bottom: -30px
}

.data-block {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 0 15px
}

@media all and (max-width: 768px) {
  .data-block {
    padding: 0 8px;
    margin-top: 15px;
  }
}

.data-block+.data-heading2 {
  margin-top: 130px
}

@media all and (max-width: 768px) {
  .data-block+.data-heading2 {
    margin-top: 20px
  }
}

.data-block__item {
  margin-bottom: 28px;
  padding: 48px 18px 20px;
  width: 100%;
  background-color: #efefef;
  font-family: "M PLUS 1p", sans-serif;
  font-weight: bold
}

@media all and (max-width: 768px) {
  .data-block__item {
    margin-bottom: 20px;
    padding: 30px 15px 35px
  }
}

.data-block__item.--col1 {
  width: 100%
}

@media all and (min-width: 769px) {
  .data-block__item.--col2 {
    width: calc(50% - 11px)
  }

  .data-block__item.--col2 .data-block__item__head .title {
    font-size: 4.5rem
  }
}

@media all and (min-width: 769px) {
  .data-block__item.--col3 {
    width: calc(33.3333333333% - 13.4px)
  }

  .data-block__item.--col3 .data-block__item__head .title {
    font-size: 4.1rem
  }
}

.data-block__item__head .title {
  padding-bottom: 16px;
  color: #2e98e0;
  font-size: 4.8rem;
  line-height: 1;
  text-align: center;
  position: relative
}

@media all and (max-width: 768px) {
  .data-block__item__head .title {
    font-size: 2rem
  }
}

.data-block__item__head .title::after {
  content: "";
  display: inline-block;
  width: 80px;
  height: 3px;
  background-color: #2e98e0;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%)
}

.data-block__item__head .txt {
  margin: 12px 0 0;
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 1.9rem;
  line-height: 1;
  text-align: center
}

@media all and (max-width: 768px) {
  .data-block__item__head .txt {
    font-size: 1.2rem
  }
}

.data-block .data-01 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-top: 55px
}

@media all and (min-width: 769px) {
  .data-block .data-01 {
    padding: 34px 36px 32px 10px
  }
}

.data-block .data-01__block:nth-child(1) {
  width: 47%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  position: relative
}

@media all and (max-width: 768px) {
  .data-block .data-01__block:nth-child(1) {
    width: 100%
  }
}

.data-block .data-01__block__img {
  width: 124px;
  height: 158px;
  position: absolute;
  top: -58px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%)
}

@media all and (max-width: 768px) {
  .data-block .data-01__block__img {
    width: 62px;
    height: 79px;
    top: -67px
  }
}

.data-block .data-01__block__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center
}

.data-block .data-01__block .data-block__item__head {
  padding-top: 120px
}

@media all and (max-width: 768px) {
  .data-block .data-01__block .data-block__item__head {
    padding-top: 30px
  }
}

.data-block .data-01__block__txt {
  margin: 20px 0 0;
  color: #2e98e0;
  font-size: 4rem;
  line-height: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center
}

@media all and (max-width: 768px) {
  .data-block .data-01__block__txt {
    font-size: 2rem
  }
}

.data-block .data-01__block__txt .num {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 190px;
  height: 97px
}

@media all and (max-width: 768px) {
  .data-block .data-01__block__txt .num {
    font-size: 9rem;
    width: 95px;
    height: 48px
  }
}

.data-block .data-01__block:nth-child(2) {
  width: 53%;
  padding: 25px 30px;
  background-color: #fff;
  border-radius: 20px
}

@media all and (max-width: 768px) {
  .data-block .data-01__block:nth-child(2) {
    margin-top: 20px;
    padding: 20px 10px;
    width: 100%
  }
}

.data-block .data-01__block:nth-child(2) .title {
  margin-bottom: 30px;
  color: #2e98e0;
  font-size: 2.9rem;
  font-weight: bold;
  line-height: 1;
  text-align: center
}

@media all and (max-width: 768px) {
  .data-block .data-01__block:nth-child(2) .title {
    margin-bottom: 20px;
    font-size: 1.6rem
  }
}

.data-block .data-01__block:nth-child(2) .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.data-block .data-01__block:nth-child(2) .list__item {
  width: calc(50% - 5px)
}

.data-block .data-01__block:nth-child(2) .list__item__title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 6px;
  background-color: #2e98e0;
  color: #fff;
  font-size: 2.5rem;
  line-height: 1
}

@media all and (max-width: 768px) {
  .data-block .data-01__block:nth-child(2) .list__item__title {
    padding: 5px 0;
    font-size: 1.5rem
  }
}

.data-block .data-01__block:nth-child(2) .list__item__txt {
  margin-top: 10px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: #2e98e0;
  font-size: 2.5rem;
  line-height: 1;
  text-align: center
}

@media all and (max-width: 768px) {
  .data-block .data-01__block:nth-child(2) .list__item__txt {
    font-size: 1.2rem
  }
}

.data-block .data-01__block:nth-child(2) .list__item__txt .num {
  margin-right: 6px;
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 7rem;
  line-height: 1;
  font-weight: 500;
  letter-spacing: -5px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex
}

@media all and (max-width: 768px) {
  .data-block .data-01__block:nth-child(2) .list__item__txt .num {
    margin-right: 2px;
    font-size: 5rem
  }
}

.data-block .data-01__block:nth-child(2) .list__item__txt .num.--02 {
  width: 86px;
  height: 50px
}

@media all and (max-width: 768px) {
  .data-block .data-01__block:nth-child(2) .list__item__txt .num.--02 {
    width: 43px;
    height: 25px
  }
}

.data-block .data-01__block:nth-child(2) .list__item__txt .num.--03 {
  width: 65px;
  height: 50px
}

@media all and (max-width: 768px) {
  .data-block .data-01__block:nth-child(2) .list__item__txt .num.--03 {
    width: 33px;
    height: 25px
  }
}

.data-block .data-01__block:nth-child(2) .list__item__txt .num.--04 {
  width: 51px;
  height: 50px
}

@media all and (max-width: 768px) {
  .data-block .data-01__block:nth-child(2) .list__item__txt .num.--04 {
    width: 26px;
    height: 25px
  }
}

.data-block .data-01__block:nth-child(2) .list__item__txt .num.--05 {
  margin-right: 0;
  width: 67px;
  height: 50px
}

@media all and (max-width: 768px) {
  .data-block .data-01__block:nth-child(2) .list__item__txt .num.--05 {
    width: 32px;
    height: 25px
  }
}

.data-block .data-01__block:nth-child(2) .list__item:nth-child(2) .list__item__title,
.data-block .data-01__block:nth-child(2) .list__item:nth-child(3) .list__item__title {
  background-color: #5bc0af
}

.data-block .data-01__block:nth-child(2) .list__item:nth-child(n+3) {
  margin-top: 35px
}

@media all and (max-width: 768px) {
  .data-block .data-01__block:nth-child(2) .list__item:nth-child(n+3) {
    margin-top: 15px
  }
}

.data-block .data-02__img {
  margin: 15px auto 0;
  width: 459px;
  height: 293px
}

@media all and (max-width: 768px) {
  .data-block .data-02__img {
    width: 100%;
    max-width: 230px;
    height: auto
  }
}

.data-block .data-02__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center
}

.data-block .data-03 {
  padding-bottom: 35px
}

.data-block .data-03__img {
  margin: 15px auto 0;
  padding-right: 90px;
  width: 482px;
  height: 353px
}

@media all and (max-width: 768px) {
  .data-block .data-03__img {
    padding: 0;
    width: 100%;
    max-width: 294px;
    height: auto;
    aspect-ratio: 1/.9
  }
}

.data-block .data-03__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center
}

.data-block .data-04 {
  padding-right: 13px;
  padding-bottom: 38px;
  position: relative
}

.data-block .data-04__img {
  margin: 35px auto 0;
  width: auto;
  max-width: 100%;
  height: 140px
}

@media all and (max-width: 768px) {
  .data-block .data-04__img {
    width: 100%;
    max-width: 289px;
    height: auto
  }
}

.data-block .data-04__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center
}

.data-block .data-04__balloon {
  width: 145px;
  height: 95px;
  position: absolute;
  top: 73px;
  right: 18px
}

@media all and (max-width: 768px) {
  .data-block .data-04__balloon {
    width: 70px;
    height: 46px;
    top: 70px;
    left: calc(50% + 105px);
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%)
  }
}

.data-block .data-05__txt {
  margin: 35px 0 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: #2e98e0;
  font-size: 4rem;
  text-align: center;
  line-height: 1
}

@media all and (max-width: 768px) {
  .data-block .data-05__txt {
    margin-top: 20px;
    font-size: 2rem
  }
}

.data-block .data-05__img {
  margin: 15px auto 0;
  width: 459px;
  height: 293px;
}
@media all and (max-width: 768px) {
  .data-block .data-05__img {
        width: 100%;
        max-width: 230px;
        height: auto;
    }
}

.data-block .data-05__txt .num {
  margin-right: 7px;
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 13.3rem;
  line-height: 1;
  font-weight: 500;
  letter-spacing: -6px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 180px;
  height: 100px
}

@media all and (max-width: 768px) {
  .data-block .data-05__txt .num {
    width: 90px;
    height: 50px
  }
}

.data-block .data-06 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

@media all and (min-width: 769px) {
  .data-block .data-06 {
    padding: 45px 61px 25px 0
  }
}

.data-block .data-06__block:nth-child(1) {
  padding-right: 10px;
  width: 47%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  position: relative
}

@media all and (max-width: 768px) {
  .data-block .data-06__block:nth-child(1) {
    width: 100%
  }
}

.data-block .data-06__block__txt {
  margin: 20px 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: #2e98e0;
  font-size: 4rem;
  line-height: 1
}

@media all and (max-width: 768px) {
  .data-block .data-06__block__txt {
    font-size: 2rem
  }
}

.data-block .data-06__block__txt .num {
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 13.3rem;
  line-height: 1;
  font-weight: 500;
  letter-spacing: -6px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 200px;
  height: 101px
}

@media all and (max-width: 768px) {
  .data-block .data-06__block__txt .num {
    width: 95px;
    height: 51px
  }
}

@media all and (max-width: 768px) {
  .data-block .data-06__block__txt .txt {
    padding-left: 8px
  }
}

.data-block .data-06__block__img {
  width: 406px;
  height: 149px
}

@media all and (max-width: 768px) {
  .data-block .data-06__block__img {
    margin: 0 0 25px;
    width: 100%;
    max-width: 162.4px;
    height: auto
  }
}

.data-block .data-06__block__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center
}

.data-block .data-06__block:nth-child(2) {
  width: 53%
}

@media all and (max-width: 768px) {
  .data-block .data-06__block:nth-child(2) {
    width: 100%
  }
}

.data-block .data-06__block:nth-child(2) .title {
  margin: 6px 0 20px;
  padding: 11px;
  background-color: #fff;
  border-radius: 6px;
  color: #2e98e0;
  font-size: 2.9rem;
  font-weight: bold;
  line-height: 1;
  text-align: center
}

@media all and (max-width: 768px) {
  .data-block .data-06__block:nth-child(2) .title {
    padding: 8px;
    font-size: 1.6rem
  }
}

.data-block .data-06__block:nth-child(2) .img {
  margin: 0 auto;
  width: 509px;
  height: 316px
}

@media all and (max-width: 768px) {
  .data-block .data-06__block:nth-child(2) .img {
    padding: 0 20px;
    width: 100%;
    max-width: 396.3px;
    height: auto
  }
}

.data-block .data-06__block:nth-child(2) .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center
}

.data-block .data-07__img {
  margin: 38px auto 0;
  width: 536px;
  max-width: 100%;
  height: 311px
}

@media all and (max-width: 768px) {
  .data-block .data-07__img {
    width: 100%;
    max-width: 300.16px;
    height: auto
  }
}

.data-block .data-07__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center
}

@media all and (min-width: 769px) {
  .data-block .data-08 {
    padding-bottom: 68px
  }
}

.data-block .data-08__main {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 8px
}

@media all and (max-width: 768px) {
  .data-block .data-08__main {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
  }
}

.data-block .data-08__main__txt {
  margin: 25px 0 0;
  color: #2e98e0;
  font-size: 4rem;
  text-align: center
}

@media all and (max-width: 768px) {
  .data-block .data-08__main__txt {
    font-size: 2rem
  }
}

.data-block .data-08__main__txt .item-value {
  margin: 0 0 14px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  line-height: 1
}

.data-block .data-08__main__txt .item-value .num {
  margin-right: 8px;
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 13.3rem;
  line-height: 1;
  font-weight: 500;
  letter-spacing: -6px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: auto;
  height: 90px
}

@media all and (max-width: 768px) {
  .data-block .data-08__main__txt .item-value .num {
    width: auto;
    height: 45px
  }
}

.data-block .data-08__main__txt .item-txt {
  margin: 0;
  font-size: 2.7rem;
  line-height: 1
}

@media all and (max-width: 768px) {
  .data-block .data-08__main__txt .item-txt {
    margin-top: 8px;
    font-size: 1.4rem
  }
}

.data-block .data-08__main__img {
  margin-left: 26px;
  width: 116px;
  height: 130px
}

@media all and (max-width: 768px) {
  .data-block .data-08__main__img {
    margin: 20px auto 0;
    width: 100%;
    max-width: 84px;
    height: auto
  }
}

.data-block .data-08__main__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center
}

.data-block .data-08__sub {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 40px;
  padding: 20px;
  background-color: #fff;
  border-radius: 20px
}

@media all and (max-width: 768px) {
  .data-block .data-08__sub {
    padding: 5px 20px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
  }
}

.data-block .data-08__sub__box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 30px 0 20px;
  color: #2e98e0;
  text-align: center
}

@media all and (min-width: 769px) {
  .data-block .data-08__sub__box {
    width: 33.3333333333%
  }

  .data-block .data-08__sub__box:nth-child(n+2) {
    border-left: 2px solid #2e98e0
  }
}

@media all and (max-width: 768px) {
  .data-block .data-08__sub__box {
    padding: 10px 0 7px;
    width: 100%;
    max-width: 200px
  }

  .data-block .data-08__sub__box:nth-child(n+2) {
    border-top: 1px solid #2e98e0
  }
}

.data-block .data-08__sub__box .item-value {
  margin: 0;
  font-size: 2.8rem;
  line-height: 1
}

@media all and (max-width: 768px) {
  .data-block .data-08__sub__box .item-value {
    font-size: 1.7rem
  }
}

.data-block .data-08__sub__box .item-value .num {
  font-size: 4.1rem;
  letter-spacing: 3px
}

@media all and (max-width: 768px) {
  .data-block .data-08__sub__box .item-value .num {
    font-size: 1.7rem
  }
}

.data-block .data-08__sub__box .item-value .num span {
  font-weight: 200
}

.data-block .data-08__sub__box .item-txt {
  margin: 5px 0 0;
  font-size: 2.2rem
}

@media all and (max-width: 768px) {
  .data-block .data-08__sub__box .item-txt {
    font-size: 1.3rem
  }
}

.data-block .data-09__txt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 28px 0 0;
  color: #2e98e0;
  font-size: 3.1rem;
  line-height: 1
}

@media all and (max-width: 768px) {
  .data-block .data-09__txt {
    margin-top: 20px;
    font-size: 1.6rem
  }
}

.data-block .data-09__txt .num {
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 9.9rem;
  line-height: 1;
  font-weight: 500;
  letter-spacing: -6px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 115px;
  height: 72px
}

@media all and (max-width: 768px) {
  .data-block .data-09__txt .num {
    width: 65px;
    height: 41px
  }
}

.data-block .data-09__txt .txt {
  padding: 0 80px 0 10px;
  position: relative
}

@media all and (max-width: 768px) {
  .data-block .data-09__txt .txt {
    padding-right: 55px
  }
}

.data-block .data-09__txt .img {
  width: 57px;
  height: 88px;
  position: absolute;
  bottom: 18px;
  right: 0
}

@media all and (max-width: 768px) {
  .data-block .data-09__txt .img {
    width: 43px;
    height: auto;
    bottom: 16px
  }
}

.data-block .data-09__txt .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center
}

.data-block .data-09__sub {
  margin: 20px 0 0;
  color: #2e98e0;
  font-size: 2.8rem;
  text-align: center
}

@media all and (max-width: 768px) {
  .data-block .data-09__sub {
    margin-top: 10px;
    font-size: 1.4rem
  }
}

.data-block .data-10 {
  padding-bottom: 34px
}

@media all and (max-width: 768px) {
  .data-block .data-10 {
    padding-bottom: 30px
  }
}

.data-block .data-10__txt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 28px 0 0;
  color: #2e98e0;
  font-size: 3.1rem;
  line-height: 1
}

@media all and (max-width: 768px) {
  .data-block .data-10__txt {
    margin-top: 20px;
    font-size: 1.6rem
  }
}

.data-block .data-10__txt .num {
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 9.9rem;
  font-weight: 500;
  letter-spacing: -6px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 95px;
  height: 72px
}

@media all and (max-width: 768px) {
  .data-block .data-10__txt .num {
    width: 54px;
    height: 42px
  }
}

.data-block .data-10__txt .txt {
  padding-left: 10px
}

.data-block .data-10__sub {
  margin: 20px 0 0;
  color: #2e98e0;
  font-size: 2.8rem;
  line-height: 1.4;
  text-align: center
}

@media all and (max-width: 768px) {
  .data-block .data-10__sub {
    margin-top: 12px;
    font-size: 1.4rem
  }
}

.data-block .data-11__txt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 55px 0 0;
  color: #2e98e0;
  font-size: 3rem;
  line-height: 1
}

@media screen and (max-width: 1182px) {
  .data-block .data-11__txt {
    font-size: 1.6rem
  }
}

@media all and (max-width: 768px) {
  .data-block .data-11__txt {
    margin-top: 28px;
    margin-bottom: 10px
  }
}

.data-block .data-11__txt .num {
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 9.9rem;
  line-height: 1;
  font-weight: 500;
  letter-spacing: -6px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 113px;
  height: 72px
}

@media all and (max-width: 768px) {
  .data-block .data-11__txt .num {
    width: 68px;
    height: 44px
  }
}

.data-block .data-11__txt .txt {
  padding: 0 142px 0 10px;
  position: relative
}

@media screen and (max-width: 1182px) {
  .data-block .data-11__txt .txt {
    padding-right: 90px
  }
}

.data-block .data-11__txt .img {
  width: 129px;
  height: 114px;
  position: absolute;
  bottom: -6px;
  right: 0
}

@media screen and (max-width: 1182px) {
  .data-block .data-11__txt .img {
    width: 70px;
    height: auto;
    bottom: 2px
  }
}

.data-block .data-11__txt .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center
}

.data-block .data-11__sub {
  margin: 20px 0 0;
  color: #2e98e0;
  font-size: 2.8rem;
  text-align: center
}

@media all and (max-width: 768px) {
  .data-block .data-11__sub {
    margin-top: 2px;
    font-size: 1.4rem
  }
}

@media all and (min-width: 769px) {
  .data-block .data-12 {
    padding: 54px 53px 37px
  }
}

.data-block .data-12 .data-block__item__head {
  margin-bottom: 18px
}

.data-block .data-12__box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 12px 20px 18px;
  background-color: #fff;
  border-radius: 20px
}

@media all and (max-width: 768px) {
  .data-block .data-12__box {
    padding: 15px 5px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
  }
}

.data-block .data-12__box.--women {
  margin-top: 11px;
  padding-bottom: 22px
}

.data-block .data-12__box.--women .data-12__box__title {
  background-color: #f33762
}

.data-block .data-12__box.--women .data-12__box__main {
  color: #f33762
}

@media all and (min-width: 769px) {
  .data-block .data-12__box.--women .data-12__box__main .img {
    width: 37px;
    height: 70px
  }
}

@media all and (max-width: 768px) {
  .data-block .data-12__box.--women .data-12__box__main .img {
    margin-right: 5px
  }
}

.data-block .data-12__box.--women .data-12__box__main .num {
  width: 104px;
  height: 73px
}

@media all and (max-width: 768px) {
  .data-block .data-12__box.--women .data-12__box__main .num {
    width: 52px;
    height: 37px
  }
}

.data-block .data-12__box__title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0;
  width: 101px;
  height: 101px;
  background-color: #2e98e0;
  border-radius: 50%;
  color: #fff;
  font-size: 3.3rem;
  letter-spacing: 1px
}

@media all and (max-width: 768px) {
  .data-block .data-12__box__title {
    width: 55px;
    height: 55px;
    font-size: 1.6rem
  }
}

.data-block .data-12__box__main {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0;
  color: #2e98e0;
  font-size: 3.7rem;
  line-height: 1
}

@media all and (max-width: 768px) {
  .data-block .data-12__box__main {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 2.2rem
  }
}

.data-block .data-12__box__main .img {
  margin: 0 12px 0 11px;
  display: block;
  width: 42px;
  height: 87px
}

@media all and (max-width: 768px) {
  .data-block .data-12__box__main .img {
    width: 22px;
    height: auto
  }
}

.data-block .data-12__box__main .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center
}

.data-block .data-12__box__main .num {
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 10.1rem;
  line-height: 1;
  font-weight: 500;
  letter-spacing: -6px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 68px;
  height: 73px
}

@media all and (max-width: 768px) {
  .data-block .data-12__box__main .num {
    width: 34px;
    height: 37px
  }
}

.data-block .data-12__box__main .txt {
  padding-left: 7px
}

.data-block .data-12__box__main .txt2 {
  padding-left: 16px;
  padding-bottom: 6px;
  font-size: 4.5rem
}

@media all and (max-width: 768px) {
  .data-block .data-12__box__main .txt2 {
    padding-left: 9px;
    padding-bottom: 0;
    font-size: 1.4rem
  }
}

.data-block .data-12__box__sub {
  margin-left: 28px;
  color: #2e98e0;
  line-height: 1
}

.data-12__box.--women .data-12__box__sub {
   color: #F33762;
}


@media all and (max-width: 768px) {
  .data-block .data-12__box__sub {
    margin: 12px 0 0;
    width: 100%;
    text-align: center
  }
}

.data-block .data-12__box__sub .item-contents {
  margin: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 3.5rem
}

@media all and (max-width: 768px) {
  .data-block .data-12__box__sub .item-contents {
    margin: 0 auto;
    max-width: 215px;
    font-size: 1.6rem
  }
}

.data-block .data-12__box__sub .item-contents:nth-child(1) {
  padding-bottom: 10px
}

.data-block .data-12__box__sub .item-contents:nth-child(2) {
  padding-top: 12px;
  border-top: 2px solid #2e98e0
}

.data-12__box.--women .data-12__box__sub .item-contents:nth-child(2) {
  border-top: 2px solid #F33762;
}

@media all and (min-width: 769px) {
  .data-block .data-12__box__sub .item-contents .txt {
    padding-bottom: 4px
  }
}

.data-block .data-12__box__sub .item-contents .num {
  margin: 0 11px;
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 7.1rem;
  font-weight: 500;
  letter-spacing: -2px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 21px;
  height: 52px
}

@media all and (max-width: 768px) {
  .data-block .data-12__box__sub .item-contents .num {
    width: 11px;
    height: 26px
  }
}

.data-block .data-12__box__sub .item-contents .num.--03 {
  width: 25px;
  height: 51px
}

@media all and (max-width: 768px) {
  .data-block .data-12__box__sub .item-contents .num.--03 {
    width: 13px;
    height: 26px
  }
}

.data-block .data-12__box__txt {
  margin: 5px 0 0;
  display: block;
  width: 100%;
  font-family: "M PLUS 1p", sans-serif;
  font-size: 2.5rem;
  letter-spacing: 1px;
  line-height: 1.4;
  text-align: center
}

@media all and (max-width: 768px) {
  .data-block .data-12__box__txt {
    font-size: 1.2rem
  }
}

.data-block .data-12__box__txt span {
  margin: 0 4px
}

@media all and (min-width: 769px) {
  .data-block .data-13 {
    padding-bottom: 40px
  }
}

.data-block .data-13__box {
  margin: 20px auto 0;
  max-width: 450px
}

@media all and (min-width: 769px) {
  .data-block .data-13__box+.data-13__box {
    margin-top: 60px
  }
}

.data-block .data-13__box__title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 9px;
  background-color: #fff;
  border-radius: 5px;
  color: #2e98e0;
  font-size: 3.1rem;
  line-height: 1;
  position: relative
}

@media all and (max-width: 768px) {
  .data-block .data-13__box__title {
    padding: 8px;
    font-size: 1.6rem
  }
}

.data-block .data-13__box__title .img {
  width: 73px;
  height: 106px;
  position: absolute;
  top: -32px;
  right: -35px
}

@media all and (max-width: 768px) {
  .data-block .data-13__box__title .img {
    width: 45px;
    height: auto;
    top: -22px;
    right: 0
  }
}

.data-block .data-13__box__sub {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 14px
}

.data-block .data-13__box__sub .item-contents {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0;
  width: 50%;
  max-height: 80px;
  color: #2e98e0;
  line-height: 1;
  text-align: center
}

.data-block .data-13__box__sub .item-contents+.item-contents {
  border-left: 2px solid #2e98e0
}

.data-block .data-13__box__sub .item-contents .txt {
  font-size: 3.9rem
}

@media all and (max-width: 768px) {
  .data-block .data-13__box__sub .item-contents .txt {
    font-size: 2rem
  }
}

.data-block .data-13__box__sub .item-contents .txt span {
  display: inline-block;
  -webkit-transform: translateY(-1px);
  transform: translateY(-1px);
  font-size: 3.1rem
}

@media all and (max-width: 768px) {
  .data-block .data-13__box__sub .item-contents .txt span {
    font-size: 1.4rem
  }
}

.data-block .data-13__box__sub .item-contents .num {
  margin: 0 3px 1px 13px;
  font-family: "MS ゴシック", "Meiryo", "メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 10.1rem;
  font-weight: 500;
  letter-spacing: -6px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start
}

@media all and (max-width: 768px) {
  .data-block .data-13__box__sub .item-contents .num {
    margin-left: 8px;
    font-size: 7rem;
    letter-spacing: -4px
  }
}

.data-block .data-13__box__sub .item-contents .num.--01 {
  width: 61px;
  height: 65px
}

@media all and (max-width: 768px) {
  .data-block .data-13__box__sub .item-contents .num.--01 {
    width: 31px;
    height: 33px
  }
}

.data-block .data-13__box__sub .item-contents .num.--02 {
  width: 61px;
  height: 65px
}

@media all and (max-width: 768px) {
  .data-block .data-13__box__sub .item-contents .num.--02 {
    width: 31px;
    height: 33px
  }
}

.data-block .data-13__box__sub .item-contents .num.--03 {
  width: 61px;
  height: 65px
}

@media all and (max-width: 768px) {
  .data-block .data-13__box__sub .item-contents .num.--03 {
    width: 32px;
    height: 33px
  }
}

.data-block .data-13__box__sub .item-contents .num.--04 {
  width: 28px;
  height: 65px
}

@media all and (max-width: 768px) {
  .data-block .data-13__box__sub .item-contents .num.--04 {
    width: 14px;
    height: 33px
  }
}

.data-block .data-13__box__sub .item-contents .txt2 {
  padding-left: 2px;
  font-size: 3.3rem
}

@media all and (max-width: 768px) {
  .data-block .data-13__box__sub .item-contents .txt2 {
    padding-left: 3px;
    font-size: 2rem
  }
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
.page-environment .page-title__en {
  margin-bottom: 8px;
  width: 216px;
  height: 40px
}

@media all and (max-width: 768px) {
  .page-environment .page-title__en {
    width: 108px;
    height: 20px
  }
}

.page-environment .footer {
  margin-top: 100px
}

.environment-top {
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif
}

.environment-top__copy {
  margin: 0 auto;
  color: #2e98e0;
  font-size: 4.4rem;
  font-weight: normal;
  letter-spacing: 3px;
  text-align: center
}

@media all and (max-width: 768px) {
  .environment-top__copy {
    font-size: 2.1rem;
    letter-spacing: 1px
  }
}

.environment-top__txt {
  margin: 16px auto 0;
  font-size: 2.1rem;
  line-height: 1.66;
  text-align: center
}

@media all and (max-width: 768px) {
  .environment-top__txt {
    font-size: 1.3rem;
    text-align: justify
  }
}

.environment-links {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 70px;
  margin-bottom: 70px
}

@media all and (max-width: 768px) {
  .environment-links {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
  }
}

.environment-links__item {
  width: 25%
}

@media screen and (max-width: 1200px) {
  .environment-links__item {
    width: 50%
  }
}

.environment-links__item__link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-bottom: 70px;
  color: #231815;
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-size: 2.5rem;
  font-weight: normal;
  line-height: 1.4;
  text-align: center;
  text-decoration: none;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  position: relative
}

@media all and (max-width: 768px) {
  .environment-links__item__link {
    padding-bottom: 35px;
    font-size: 1.8rem
  }
}

@media screen and (max-width: 409px) {
  .environment-links__item__link {
    font-size: 1.5rem
  }
}

.environment-links__item__link::after {
  content: "";
  display: inline-block;
  width: 11px;
  height: 11px;
  border-right: 1px solid #231815;
  border-bottom: 1px solid #231815;
  position: absolute;
  bottom: 56px;
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
  -webkit-transform: translateX(-50%) rotate(45deg);
  -ms-transform: translateX(-50%) rotate(45deg);
  -webkit-transition: .3s;
  transition: .3s
}

@media all and (max-width: 768px) {
  .environment-links__item__link::after {
    width: 10px;
    height: 10px;
    bottom: 24px
  }
}

.environment-links__item__link .set span {
  margin-left: 5px
}

.environment-links__item__link .icon-arrowS {
  -webkit-transition: .3s;
  transition: .3s;
  opacity: 0;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%) translateY(-10px) rotate(90deg);
  -webkit-transform: translateX(-50%) translateY(-10px) rotate(90deg);
  -ms-transform: translateX(-50%) translateY(-10px) rotate(90deg)
}

@media all and (max-width: 768px) {
  .environment-links__item__link .icon-arrowS {
    display: none
  }
}

.environment-links__item__link .icon-arrowS__square {
  fill: #2e98e0;
  stroke: rgba(0, 0, 0, 0)
}

@media all and (min-width: 769px) {
  .environment-links__item__link:hover::after {
    opacity: 0;
    transform: translateX(-50%) translateY(35px) rotate(45deg);
    -webkit-transform: translateX(-50%) translateY(35px) rotate(45deg);
    -ms-transform: translateX(-50%) translateY(35px) rotate(45deg)
  }

  .environment-links__item__link:hover .icon-arrowS {
    opacity: 1;
    transform: translateX(-50%) rotate(90deg);
    -webkit-transform: translateX(-50%) rotate(90deg);
    -ms-transform: translateX(-50%) rotate(90deg)
  }
}

.environment-sec {
  position: relative
}

.environment-sec+.environment-sec {
  margin-top: 62px
}

.environment-sec::after {
  content: "";
  display: inline-block;
  width: calc(100vw + 180px);
  height: calc(100% - 230px);
  background-color: #f2f7fa;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%)
}

.environment-secM {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  position: relative;
  z-index: 2
}

@media all and (min-width: 769px) {
  .environment-secM {
    min-height: 541px
  }
}

.environment-secM__main {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 70px 10px 65px;
  width: 80%;
  max-width: 480px;
  color: #fff;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  position: relative;
  z-index: 1
}

@media all and (max-width: 768px) {
  .environment-secM__main {
    padding: 30px 10px 40px;
    width: 100%
  }
}

.environment-secM__main::after {
  content: "";
  display: inline-block;
  width: 100vw;
  height: 100%;
  background-color: #127ce0;
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1
}

@media all and (max-width: 768px) {
  .environment-secM__main::after {
    width: calc(100vw + 30px);
    right: unset;
    left: -13px
  }
}

.environment-secM__main__title {
  padding-top: 60px;
  padding-bottom: 5px;
  font-size: 4rem;
  letter-spacing: 3px;
  line-height: 1.4;
  text-align: center;
  position: relative
}

@media all and (max-width: 768px) {
  .environment-secM__main__title {
    padding-bottom: 10px !important;
    font-size: 2rem
  }
}

.environment-secM__main__title::before {
  content: "";
  display: inline-block;
  background-image: url(../images/environment/img_environment_deco.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  width: 28px;
  height: 40px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%)
}

.environment-secM__main__title::after {
  content: "";
  display: inline-block;
  width: 285px;
  height: 1px;
  background-color: #fff;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%)
}

@media all and (max-width: 768px) {
  .environment-secM__main__title::after {
    width: 70%
  }
}

.environment-secM__main__title span {
  margin-left: 6px
}

.environment-secM__main__txt {
  margin: 22px auto 0;
  font-size: 2.4rem;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: 2px;
  line-height: 1.8;
  text-align: center
}

@media all and (max-width: 768px) {
  .environment-secM__main__txt {
    font-size: 1.4rem
  }
}

.environment-secM__sub {
  width: 890px;
  height: 541px
}

@media all and (min-width: 769px) {
  .environment-secM__sub {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    right: -50px;
    z-index: -1
  }
}

@media all and (max-width: 768px) {
  .environment-secM__sub {
    width: calc(100% + 26px);
    height: auto;
    aspect-ratio: 1/.638;
    position: relative;
    top: -1px;
    left: -13px
  }
}

.environment-secM__sub img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center
}

.environment-secS1 {
  position: relative;
  z-index: 1
}

.environment-secS1::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: calc(100% + 270px);
  background-color: #fff;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1
}

.environment-secS1__title {
  margin-top: 40px;
  color: #127ce0;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 3.3rem;
  line-height: 1.4;
  text-align: center;
  position: relative;
  z-index: 1
}

@media all and (max-width: 768px) {
  .environment-secS1__title {
    margin-left: auto;
    margin-right: auto;
    width: calc(100% - 10px);
    font-size: 1.7rem
  }
}

.environment-secS1__title::after {
  content: "";
  display: inline-block;
  background-image: url(../images/environment/img_border01.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  width: 555px;
  height: 7px;
  position: absolute;
  top: 21px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%)
}

@media all and (max-width: 768px) {
  .environment-secS1__title::after {
    width: 100%;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%)
  }
}

.environment-secS1__txt {
  margin: 8px auto 0;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 2.4rem;
  letter-spacing: 1px;
  text-align: center
}

@media all and (max-width: 768px) {
  .environment-secS1__txt {
    font-size: 1.3rem
  }
}

.environment-secS1__index {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 40px
}

@media all and (max-width: 768px) {
  .environment-secS1__index {
    padding: 0 25px
  }
}

.environment-secS1__index__item {
  position: relative
}

@media all and (min-width: 769px) {
  .environment-secS1__index__item {
    padding: 0 45px 45px 60px;
    width: 33.3333333333%
  }

  .environment-secS1__index__item:not(:nth-child(3n))::after {
    content: "";
    display: inline-block;
    width: 1px;
    height: calc(100% - 28px);
    background-color: #2e98e0;
    position: absolute;
    top: 0;
    right: 0
  }

  .environment-secS1__index__item:nth-child(n+4) {
    padding-top: 20px
  }

  .environment-secS1__index__item:nth-child(n+4)::before {
    content: "";
    display: inline-block;
    width: calc(100% - 50px);
    height: 1px;
    background-color: #2e98e0;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%)
  }

  .environment-secS1__index__item:nth-child(n+4)::after {
    height: calc(100% - 75px);
    top: 25px
  }

  .environment-secS1__index__item:nth-child(3n) {
    padding-right: 40px;
    padding-left: 54px
  }

  .environment-secS1__index__item:nth-child(3n) .item-title {
    white-space: nowrap
  }

  .environment-secS1__index__item:nth-child(3n) .item-img {
    margin: 52px auto 0px;
  }

}

@media all and (max-width: 768px) {
  .environment-secS1__index__item {
    margin-bottom: 30px;
    width: 100%
  }

  .environment-secS1__index__item:not(:first-child)::before {
    content: "";
    display: inline-block;
    width: calc(100% - 10px);
    height: 1px;
    background-color: #2e98e0;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%)
  }
}

.environment-secS1__index__item .item-title {
  color: #127ce0;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 2.7rem;
  letter-spacing: 1px;
  line-height: 1.4;
  position: relative
}

@media all and (max-width: 768px) {
  .environment-secS1__index__item .item-title {
    margin-top: 20px;
    margin-left: 20px;
    font-size: 1.6rem
  }
}

.environment-secS1__index__item .item-title::before {
  content: "";
  display: inline-block;
  width: 11px;
  height: 11px;
  background-color: #127ce0;
  position: absolute;
  top: 17px;
  left: -28px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}

@media all and (max-width: 768px) {
  .environment-secS1__index__item .item-title::before {
    width: 9px;
    height: 9px;
    top: 6px;
    left: -15px
  }
}

.environment-secS1__index__item .item-txt {
  margin: 12px auto 0;
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-size: 1.9rem;
  line-height: 1.5;
  text-align: justify
}

@media all and (max-width: 768px) {
  .environment-secS1__index__item .item-txt {
    font-size: 1.3rem
  }
}

.environment-secS1__index__item .item-img {
  margin: 14px auto 0;
  max-width: 315px;
  width: 100%;
  height: auto;
  aspect-ratio: 1/.641;
  overflow: hidden
}

.environment-secS1__index__item .item-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center
}

.environment-secS2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 50px;
  position: relative;
  z-index: 1
}

@media all and (min-width: 769px) {
  .environment-secS2 {
    padding-bottom: 30px
  }
}

.environment-secS2__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 0 21px
}

@media all and (min-width: 769px) {
  .environment-secS2__item {
    width: calc(50% - 48px)
  }

  .environment-secS2__item:nth-child(n+3) {
    margin-top: 50px
  }

  .environment-secS2__item:nth-child(10) {
    margin-top: -80px;
  }
}

@media all and (max-width: 768px) {
  .environment-secS2__item {
    margin-bottom: 40px;
    padding: 0 10px
  }
}

@media all and (min-width: 769px) {
  .environment-secS2__item.--02_07 {
    padding-bottom: 170px
  }
}

.environment-secS2__item .item-title {
  display: inline-block;
  color: #127ce0;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 3.3rem;
  line-height: 1.3;
  text-align: center;
  position: relative;
  z-index: 1
}

@media all and (max-width: 768px) {
  .environment-secS2__item .item-title {
    font-size: 1.7rem
  }
}

.environment-secS2__item .item-title::before {
  content: "";
  display: inline-block;
  width: calc(100% + 40px);
  height: 100%;
  background-color: #f2f7fa;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index: -1
}

@media all and (max-width: 768px) {
  .environment-secS2__item .item-title::before {
    width: calc(100% + 10px)
  }
}

.environment-secS2__item .item-title::after {
  content: "";
  display: inline-block;
  background-image: url(../images/environment/img_border02.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  width: 555px;
  height: 7px;
  position: absolute;
  top: 21px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index: -2
}

@media all and (max-width: 768px) {
  .environment-secS2__item .item-title::after {
    width: calc(100vw - 18px);
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%)
  }
}

.environment-secS2__item .item-txt {
  margin: 18px auto 0;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 1.9rem;
  line-height: 1.5;
  text-align: justify
}

@media all and (max-width: 768px) {
  .environment-secS2__item .item-txt {
    font-size: 1.3rem
  }
}

.environment-secS2__item .item-btn {
  margin-top: 5px;
  margin-left: auto;
  padding-right: 50px;
  color: #127ce0;
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-size: 1.9rem;
  text-align: right;
  text-decoration: none;
  line-height: 1;
  position: relative
}

@media all and (max-width: 768px) {
  .environment-secS2__item .item-btn {
    margin-top: 15px;
    font-size: 1.3rem
  }
}

.environment-secS2__item .item-btn::after {
  content: "";
  display: inline-block;
  background-image: url(../images/environment/img_linkArrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  width: 38px;
  height: 16px;
  position: absolute;
  top: 1px;
  right: 0;
  -webkit-transition: .3s;
  transition: .3s
}

.environment-secS2__item .item-btn .icon-blank {
  display: none
}

@media all and (min-width: 769px) {
  .environment-secS2__item .item-btn:hover::after {
    -webkit-transform: translateX(5px);
    transform: translateX(5px)
  }
}

.environment-secS2__item .item-txtBox {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 12px
}

.environment-secS2__item .item-txtBox__txt {
  margin: 0;
  padding-right: 18px;
  width: 72%;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 1.9rem;
  line-height: 1.5;
  text-align: justify
}

@media all and (max-width: 768px) {
  .environment-secS2__item .item-txtBox__txt {
    font-size: 1.3rem
  }
}

.environment-secS2__item .item-txtBox__img {
  padding: 6px 12px 0 0;
  width: 28%
}

.environment-secS2__item .item-txtBox.--col1 {
  position: relative
}

.environment-secS2__item .item-txtBox.--col1 .item-txtBox__txt {
  width: 100%
}

.environment-secS2__item .item-txtBox.--col1 .item-txtBox__img {
  width: 100%
}

.environment-secS2__item .item-txtBox.--col1 .item-txtBox__img.--02_02 {
  width: 499px;
  height: 303px
}

@media all and (min-width: 769px) {
  .environment-secS2__item .item-txtBox.--col1 .item-txtBox__img.--02_02 {
    position: absolute;
    bottom: -302px;
    left: 20px
  }
}

@media all and (max-width: 768px) {
  .environment-secS2__item .item-txtBox.--col1 .item-txtBox__img.--02_02 {
    margin: 10px auto;
    width: 80%;
    height: auto
  }
}

.environment-secS2__item .item-txtBox.--col2_1 .item-txtBox__txt {
  width: 45%
}

@media all and (max-width: 768px) {
  .environment-secS2__item .item-txtBox.--col2_1 .item-txtBox__txt {
    width: 100%
  }
}

.environment-secS2__item .item-txtBox.--col2_1 .item-txtBox__img {
  padding: 6px 0 0 0;
  width: 55%
}

@media all and (max-width: 768px) {
  .environment-secS2__item .item-txtBox.--col2_1 .item-txtBox__img {
    padding: 15px 0 0;
    width: 100%
  }
}

.environment-secS2__item .item-imgBox {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 12px
}

@media all and (min-width: 769px) {
  .environment-secS2__item .item-imgBox__img {
    width: calc(50% - 5px)
  }

  .environment-secS2__item .item-imgBox__img:nth-child(even) {
    margin-left: 10px
  }
}

@media all and (max-width: 768px) {
  .environment-secS2__item .item-imgBox__img {
    margin-bottom: 20px
  }
}

.environment-secS3 {
  margin-left: auto;
  margin-right: auto;
  padding: 22px 0 26px;
  width: 100%;
  max-width: 1240px;
  background-color: #fff;
  position: relative;
  z-index: 1
}

@media all and (min-width: 769px) {
  .environment-secS3 {
    border-right: 2px solid #2e98e0
  }
}

@media all and (max-width: 768px) {
  .environment-secS3 {
    padding: 30px 0 20px !important;
    border-left: 2px solid #2e98e0
  }
}

.environment-secS3__main {
  margin-left: auto;
  padding: 0 60px 0 90px;
  width: 80%;
  max-width: 523px
}

@media all and (max-width: 768px) {
  .environment-secS3__main {
    padding: 0 40px 20px !important;
    width: 100% !important;
    max-width: unset !important
  }
}

.environment-secS3__main__title {
  color: #127ce0;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 3rem;
  letter-spacing: 1px;
  line-height: 1.4;
  position: relative
}

@media all and (max-width: 768px) {
  .environment-secS3__main__title {
    font-size: 1.7rem
  }
}

.environment-secS3__main__title::before {
  content: "";
  display: inline-block;
  width: 11px;
  height: 11px;
  background-color: #127ce0;
  position: absolute;
  top: 17px;
  left: -28px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}

@media all and (max-width: 768px) {
  .environment-secS3__main__title::before {
    top: 7px;
    left: -22px
  }
}

.environment-secS3__main__txt {
  margin: 2rem 0 0;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 2.1rem;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: 1px;
  text-align: justify
}

@media all and (max-width: 768px) {
  .environment-secS3__main__txt {
    font-size: 1.3rem
  }
}

.environment-secS3__main__btn {
  margin: 8px 0 10px auto;
  padding-right: 50px;
  display: block;
  color: #127ce0;
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-size: 1.9rem;
  text-align: right;
  text-decoration: none;
  line-height: 1.4;
  position: relative
}

@media all and (max-width: 768px) {
  .environment-secS3__main__btn {
    margin-top: 15px;
    font-size: 1.3rem
  }
}

.environment-secS3__main__btn::after {
  content: "";
  display: inline-block;
  background-image: url(../images/environment/img_linkArrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  width: 38px;
  height: 16px;
  position: absolute;
  top: 5px;
  right: 0;
  -webkit-transition: .3s;
  transition: .3s
}

@media all and (max-width: 768px) {
  .environment-secS3__main__btn::after {
    top: 1px
  }
}

.environment-secS3__main__btn .icon-blank {
  display: none
}

@media all and (min-width: 769px) {
  .environment-secS3__main__btn:hover::after {
    -webkit-transform: translateX(5px);
    transform: translateX(5px)
  }
}

.environment-secS3__images {
  position: absolute
}

@media all and (max-width: 768px) {
  .environment-secS3__images {
    margin: 0 auto 0 10px !important;
    width: calc(100% - 20px) !important;
    position: relative !important;
    top: unset !important;
    right: unset !important;
    bottom: unset !important;
    left: unset !important
  }
}

@media all and (max-width: 768px) {
  .environment-secS3__images__img {
    padding: 0 !important;
    width: 100% !important
  }

  .environment-secS3__images__img:not(:first-child) {
    margin-top: 20px
  }
}

.environment-secS3__images.--col2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.environment-secS3+.environment-secS3 {
  margin-top: 47px
}

@media all and (max-width: 768px) {
  .environment-secS3+.environment-secS3 {
    margin-top: 40px !important
  }
}

.environment-secS3.--reverse {
  border-right: none;
  border-left: 2px solid #2e98e0
}

.environment-secS3.--reverse .environment-secS3__main {
  margin-left: 0;
  margin-right: auto
}

.environment-secS3.--01 {
  margin-top: 37px
}

@media all and (min-width: 769px) {
  .environment-secS3.--01 {
    min-height: 350px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
  }
}

.environment-secS3.--01 .environment-secS3__images {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 887px;
  right: 523px
}

.environment-secS3.--01 .environment-secS3__images__img:nth-child(1) {
  width: calc(45.2% - 9px);
  height: auto;
  aspect-ratio: 1/.765
}

.environment-secS3.--01 .environment-secS3__images__img:nth-child(2) {
  width: calc(54.8% - 9px);
  height: auto;
  aspect-ratio: 1/.63
}

.environment-secS3.--02 {
  padding-top: 40px
}

@media all and (min-width: 769px) {
  .environment-secS3.--02 {
    margin-top: -30px
  }
}

.environment-secS3.--02 .environment-secS3__main {
  padding-top: 38px;
  max-width: 813px
}

.environment-secS3.--02 .environment-secS3__images {
  bottom: 0;
  right: 813px
}

.environment-secS3.--02 .environment-secS3__images__img {
  width: 534px;
  height: auto;
  aspect-ratio: 1/.622
}

.environment-secS3.--03 {
  padding-top: 19px;
  padding-bottom: 28px
}

.environment-secS3.--03 .environment-secS3__main {
  padding-top: 36px;
  max-width: 707px
}

.environment-secS3.--03 .environment-secS3__images {
  bottom: 0;
  left: 707px
}

.environment-secS3.--03 .environment-secS3__images__img {
  width: 534px;
  height: auto;
  aspect-ratio: 1/.554
}

@media all and (min-width: 769px) {
  .environment-secS3.--04 {
    margin-top: 57px;
    min-height: 274px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
  }
}

.environment-secS3.--04 .environment-secS3__main {
  max-width: 548px
}

.environment-secS3.--04 .environment-secS3__main__title {
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt"
}

.environment-secS3.--04 .environment-secS3__images {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 800px;
  right: 548px;
  bottom: 20px
}

.environment-secS3.--04 .environment-secS3__images__img:nth-child(1) {
  width: 48.3%;
  height: auto;
  aspect-ratio: 1/.727
}

.environment-secS3.--04 .environment-secS3__images__img:nth-child(2) {
  width: calc(51.7% - 17px);
  height: auto;
  aspect-ratio: 1/.709
}

.environment-secS3.--04 .environment-secS3__images__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center
}

.environment-secS3.--05 {
  padding-top: 44px;
  padding-bottom: 33px
}

.environment-secS3.--05 .environment-secS3__main {
  padding-right: 0;
  max-width: 617px
}

@media all and (min-width: 769px) {
  .environment-secS3.--05 .environment-secS3__main__txt {
    padding-right: 173px
  }
}

@media all and (min-width: 769px) {
  .environment-secS3.--05 .environment-secS3__main__btn {
    white-space: nowrap
  }
}

.environment-secS3.--05 .environment-secS3__images {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 921px;
  top: 54px;
  left: 475px
}

.environment-secS3.--05 .environment-secS3__images__img:nth-child(1) {
  width: 45.5%;
  height: auto;
  aspect-ratio: 1/.728
}

.environment-secS3.--05 .environment-secS3__images__img:nth-child(2) {
  padding-left: 9px;
  width: calc(54.5% - 9px);
  height: auto;
  aspect-ratio: 1/.62
}

.environment-secS3.--05 .environment-secS3__images__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center
}


.environment-secS3.--06 {
  padding-top: 44px;
  padding-bottom: 33px
}

.environment-secS3.--06 .environment-secS3__main {
  padding-right: 0;
  max-width: 617px
}

@media all and (min-width: 769px) {
  .environment-secS3.--06 .environment-secS3__main__txt {
    padding-right: 100px
  }
}

@media all and (min-width: 769px) {
  .environment-secS3.--06 .environment-secS3__main__btn {
    white-space: nowrap
  }
}

.environment-secS3.--06 .environment-secS3__images {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  /*width: 820px;*/
  width: 645px;
  top: 25px;
  left: 560px
}

.environment-secS3.--06 .environment-secS3__images__img:nth-child(1) {
  /*
  width: 49%;
  height: auto;
  aspect-ratio: 1/.728
  */
  width: 30%;
  height: auto;
  aspect-ratio: 1/1.5
}

.environment-secS3.--06 .environment-secS3__images__img:nth-child(2) {
  /*
  width: 49%;
  height: auto;
  aspect-ratio: 1/.728
  */
  width: 67.5%;
  height: auto;
  aspect-ratio: 1/.667;
}

.environment-secS3.--06 .environment-secS3__images__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center
}

.environment-secS3.--07 .environment-secS3__main {
  padding-top: 21px;
  max-width: 590px
}

.environment-secS3.--07 .environment-secS3__images {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 800px;
  right: 548px;
  bottom: 80px
}

.environment-secS3.--07 .environment-secS3__images__img:nth-child(1) {
  width: 48.3%;
  height: auto;
  aspect-ratio: 1/.727
}

.environment-secS3.--07 .environment-secS3__images__img:nth-child(2) {
  width: calc(51.7% - 17px);
  height: auto;
  aspect-ratio: 1/.709
}

.environment-secS3.--07 .environment-secS3__images__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center
}

.environment01 .environment-secS1 {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  max-width: 1260px
}

@media all and (min-width: 769px) {
  .environment02 {
    margin-bottom: 142px
  }
}

.environment02 .environment-secM {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end
}

@media all and (min-width: 769px) {
  .environment02 .environment-secM__main {
    padding-top: 82px
  }
}

.environment02 .environment-secM__main__title {
  padding-top: 52px;
  padding-bottom: 35px
}

.environment02 .environment-secS2 {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  max-width: 1260px
}

@media all and (min-width: 769px) {
  .environment02 .environment-secS2 {
    padding-right: 20px
  }
}

@media all and (min-width: 769px) {
  .environment02 .environment-secS2__item {
    width: calc(50% - 36px)
  }
}

@media all and (min-width: 769px) {
  .environment03 .environment-secM__main {
    max-width: 590px;
    left: -40px
  }
}

.environment03 .environment-secM__main__title {
  padding-bottom: 35px
}

.environment03 .environment-secS2 {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  max-width: 1270px
}

@media all and (min-width: 769px) {
  .environment03 .environment-secS2 {
    padding-right: 20px
  }
}

@media all and (min-width: 769px) {
  .environment03 .environment-secS2__item {
    width: calc(50% - 20px)
  }
}

@media all and (min-width: 769px) {
  .environment03 .environment-secS2__item .item-title::after {
    background-image: url(../images/environment/img_border03.svg);
    width: 610px;
    height: 8px
  }
}

.environment04 {
  padding-bottom: 55px
}

.environment04 .environment-secM {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start
}

@media all and (max-width: 768px) {
  .environment04 .environment-secM {
    margin-bottom: 40px
  }
}

@media all and (min-width: 769px) {
  .environment04 .environment-secM__main {
    margin-top: 68px
  }
}

/*! ---------------------------------
Theme Name: Main
Version: 3.0.0
---------------------------------- */
.page-recruitment .item-txt {
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 2.1rem;
  line-height: 1.55;
  font-weight: initial;
}

@media all and (max-width: 768px) {
  .page-recruitment .item-txt {
    font-size: 1.4rem;
  }
}

.page-recruitment .page-title__en {
  margin-bottom: 8px;
  width: 440px;
  height: 40px
}

@media all and (max-width: 768px) {
  .page-recruitment .page-title__en {
    width: 195px;
    height: 20px
  }
}
.page-recruitment.page-career .page-title__en {
  margin-bottom: 8px;
  width: 415px;
  height: 40px
}
@media all and (max-width: 768px) {
  .page-recruitment.page-career .page-title__en {
    width: 196px;
    height: 20px
  }
}

.page-recruitment section+section {
  margin-top: 120px
}

@media all and (max-width: 768px) {
  .page-recruitment section+section {
    margin-top: 60px
  }
}

.page-recruitment .dl-01>div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.page-recruitment .dl-01>div dt {
  min-width: 225px
}

.page-recruitment .txt-01 {
  margin: 0
}

.page-recruitment .dl-02 {
  line-height: 1.55
}

.page-recruitment .dl-02 dt,
.page-recruitment .dl-02 dd {
  padding-left: 25px;
  font-size: 2.1rem
}

@media all and (max-width: 768px) {

  .page-recruitment .dl-02 dt,
  .page-recruitment .dl-02 dd {
    font-size: 1.4rem
  }
}

.page-recruitment .dl-02 dt+dt,
.page-recruitment .dl-02 dd+dt {
  margin-top: 36px
}

@media all and (max-width: 768px) {

  .page-recruitment .dl-02 dt+dt,
  .page-recruitment .dl-02 dd+dt {
    margin-top: 25px
  }
}

.page-recruitment .dl-02 dt {
  position: relative
}

.page-recruitment .dl-02 dt::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  background-color: #898989;
  position: absolute;
  top: 9px;
  left: 0
}

@media all and (max-width: 768px) {
  .page-recruitment .dl-02 dt::before {
    top: 3px
  }
}

@media all and (min-width: 769px) {
  .page-recruitment .cell-01 {
    padding-bottom: 40px !important
  }
}

.page-recruitment .btn-01 {
  margin-left: auto;
  display: block;
  width: 194px;
  height: 17px
}

@media all and (max-width: 768px) {
  .page-recruitment .btn-01 {
    margin-bottom: 30px;
    width: 153px
  }
}

.page-recruitment .btn-01:hover {
  opacity: .7
}

.page-recruitment .btn-02 {
  margin-left: 50px;
  padding-right: 50px;
  color: #127ce0;
  font-size: 1.9rem;
  text-decoration: none;
  line-height: 1;
  position: relative
}

@media all and (max-width: 768px) {
  .page-recruitment .btn-02 {
    margin-top: 15px;
    margin-left: auto;
    display: block;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    font-size: 1.4rem;
    text-align: left
  }
}

.page-recruitment .btn-02::after {
  content: "";
  display: inline-block;
  background-image: url(../images/environment/img_linkArrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  width: 38px;
  height: 16px;
  position: absolute;
  top: 6px;
  right: 0;
  -webkit-transition: .3s;
  transition: .3s
}

@media all and (max-width: 768px) {
  .page-recruitment .btn-02::after {
    top: -2px
  }
}

.page-recruitment .btn-02 .icon-blank {
  display: none
}

@media all and (min-width: 769px) {
  .page-recruitment .btn-02:hover::after {
    -webkit-transform: translateX(5px);
    transform: translateX(5px)
  }
}

.page-recruitment .item-flow {
  margin: 55px auto 0;
  max-width: 1130px
}

@media all and (max-width: 768px) {
  .page-recruitment .item-flow {
    margin-top: 35px
  }
}

.page-recruitment .item-flow__item {
  padding: 20px 30px 40px;
  background-color: #daebf2;
  border-radius: 25px
}

@media all and (max-width: 768px) {
  .page-recruitment .item-flow__item {
    padding: 14px 24px 11px
  }
}

.page-recruitment .item-flow__item.--single {
  padding: 22px 20px;
  border-radius: 100px
}

@media all and (max-width: 768px) {
  .page-recruitment .item-flow__item.--single {
    padding: 13px 5px;
    line-height: 1
  }
}

.page-recruitment .item-flow__item.--single .item-flow__item__title::before {
  content: none;
  display: none
}

.page-recruitment .item-flow__item+.item-flow__item {
  margin-top: 44px;
  position: relative
}

@media all and (max-width: 768px) {
  .page-recruitment .item-flow__item+.item-flow__item {
    margin-top: 20px
  }
}

.page-recruitment .item-flow__item+.item-flow__item::before {
  content: "";
  display: inline-block;
  background-image: url(../images/common/img_arrow_down.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  width: 21px;
  height: 12px;
  position: absolute;
  top: -28px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%)
}

@media all and (max-width: 768px) {
  .page-recruitment .item-flow__item+.item-flow__item::before {
    width: 12px;
    height: 9px;
    top: -14px
  }
}

.page-recruitment .item-flow__item__title {
  margin: 0;
  padding-bottom: 2px;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 2.4rem;
  font-weight: 600;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: 2px;
  text-align: center;
  position: relative
}

@media all and (max-width: 768px) {
  .page-recruitment .item-flow__item__title {
    font-size: 1.4rem
  }
}

.page-recruitment .item-flow__item__title::before {
  content: "";
  display: inline-block;
  background-image: url(../top/images/img_dot.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  width: 464px;
  height: 2px;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%)
}

@media all and (max-width: 768px) {
  .page-recruitment .item-flow__item__title::before {
    width: 80%
  }
}

.page-recruitment .item-flow__item__txt {
  margin: 23px 0;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 2.3rem;
  font-weight: bold;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: 3px;
  text-align: center
}

@media all and (max-width: 768px) {
  .page-recruitment .item-flow__item__txt {
    font-size: 1.4rem
  }
}

.page-recruitment .item-flow__item__nv {
  display: flex;
  justify-content: space-evenly;
}
@media all and (max-width: 768px) {
  .page-recruitment .item-flow__item__nv {
    flex-wrap: wrap;
  }
}

.page-recruitment .item-flow__item__sub {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 20px;
  padding: 20px 20px 20px 45px;
  background-color: #fff;
  border-radius: 12px;
  position: relative
}

@media all and (max-width: 768px) {
  .page-recruitment .item-flow__item__sub {
    margin-top: 12px;
    padding: 10px 10px 10px
  }
}

.page-recruitment .item-flow__item__sub .item-txt {
  width: 100%;
  max-width: 365px;
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-size: 2.4rem;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: 2px;
  line-height: 1.4;
  text-align: left;
  position: relative
}

@media all and (min-width: 769px) {
  .page-recruitment .item-flow__item__sub .item-txt {
    margin: 0 35px 0 0;
    padding-right: 22px
  }
}

@media all and (max-width: 768px) {
  .page-recruitment .item-flow__item__sub .item-txt {
    margin: 0;
    padding-bottom: 25px;
    font-size: 1.5rem;
    text-align: center
  }
}

.page-recruitment .item-flow__item__sub .item-txt::after {
  content: "";
  display: inline-block;
  width: 30px;
  height: 30px;
  border-top: 3px solid #127ce0;
  border-right: 3px solid #127ce0;
  position: absolute
}

@media all and (min-width: 769px) {
  .page-recruitment .item-flow__item__sub .item-txt::after {
    width: 30px;
    height: 30px;
    top: calc(50% - 17px);
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    right: 2px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
  }
}

@media all and (max-width: 768px) {
  .page-recruitment .item-flow__item__sub .item-txt::after {
    width: 13px;
    height: 13px;
    bottom: 0;
    left: calc(50% - 10px);
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: rotate(135deg)
  }
}

.page-recruitment .item-flow__item__sub .item-txt__01 {
  font-weight: 500
}

.page-recruitment .item-flow__item__sub .item-txt__02 {
  display: inline-block;
  font-weight: 400
}

@media all and (min-width: 769px) {
  .page-recruitment .item-flow__item__sub .item-txt__02 {
    margin-left: 1em
  }
}

.page-recruitment .item-flow__item__sub .item-btnList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  min-height: 63px
}

@media all and (max-width: 768px) {
  .page-recruitment .item-flow__item__sub .item-btnList {
    margin: 0px auto 0;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center
  }
}

@media all and (max-width: 768px) {
  .page-recruitment .item-flow__item__sub .item-btnList__btn {
    margin-bottom: 0px
  }
}

.page-recruitment .item-flow__item__sub .item-btnList__btn.--renv {
  display: inline-block;
  width: 280px;
  height: 80px;
  text-align: center;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 2.1rem;
  line-height: 1.55;
  /* font-weight: initial; */
  color: #000;
  text-decoration: none;
}

@media all and (max-width: 768px) {
  .page-recruitment .item-flow__item__sub .item-btnList__btn.--renv {
    width: 100%;
    max-width: 280px;
    height: auto;
    font-size: 1.5rem;
  }
}

.page-recruitment .item-flow__item__sub .item-btnList__btn.--mynv {
  display: inline-block;
  width: 314px;
  height: 80px;
  text-align: center;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 2.1rem;
  line-height: 1.55;
  color: #000;
  text-decoration: none;
}

@media all and (min-width: 769px) {
  .page-recruitment .item-flow__item__sub .item-btnList__btn.--mynv {
    margin-left: 45px
  }
}

@media all and (max-width: 768px) {
  .page-recruitment .item-flow__item__sub .item-btnList__btn.--mynv {
    width: 100%;
    max-width: 157px;
    height: auto
  }
}

.page-recruitment .item-flow__item__sub .item-btnList__btn .icon-blank {
  display: none
}

@media all and (min-width: 769px) {
  .page-recruitment .item-flow__item__sub .item-btnList__btn:hover {
    opacity: .7
  }
}

.recr-heading2 {
  padding: 8px 20px;
  width: 100%;
  background-color: #127ce0;
  color: #fff;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 3.6rem;
  letter-spacing: 4px;
  line-height: 1.2;
  text-align: center;
  position: relative
}

@media all and (max-width: 768px) {
  .recr-heading2 {
    font-size: 2.2rem;
    letter-spacing: 2px
  }
}

.recr-heading3 {
  width: 100%;
  color: #2E98E0;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 2.6rem;
  letter-spacing: 4px;
  line-height: 1.2;
  text-align: center;
  position: relative;
  margin-top: 60px;
}
@media all and (max-width: 768px) {
  .recr-heading3 {
    letter-spacing: 0px;
  }
}

.recr-heading2::before {
  content: "";
  display: inline-block;
  background-image: url(../images/environment/img_environment_deco.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  width: 26px;
  height: 39px;
  position: absolute;
  top: 0;
  left: 0
}

.recr-heading2B {
  margin-top: 65px;
  color: #127ce0;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 3.3rem;
  letter-spacing: 3px;
  line-height: 1.4;
  text-align: center
}

@media all and (max-width: 768px) {
  .recr-heading2B {
    margin-top: 50px;
    font-size: 2.2rem;
    letter-spacing: 2px
  }
}

.recr-btnList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 50px auto 0;
  width: 100%;
  max-width: 1130px;
  justify-content: space-between;
}

@media all and (max-width: 768px) {
  .recr-btnList {
    margin-bottom: 55px
  }
}

.recr-btnList__btn {
  padding: 20px 0;
  background-color: #2e98e0;
  width: calc(50% - 15px);
  color: #fff !important;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 2.5rem;
  font-weight: bold;
  letter-spacing: 3px;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  position: relative;
  margin: 0 auto;
}

@media all and (max-width: 768px) {
  .recr-btnList__btn {
    width: 100%;
    margin-bottom: 15px;
    font-size: 1.5rem
  }
}

.recr-btnList__btn::after {
  content: "";
  display: inline-block;
  width: 11px;
  height: 11px;
  background-color: #f33762;
  position: absolute;
  bottom: 0;
  left: 0;
  -webkit-transition: .3s;
  transition: .3s
}

.recr-btnList__btn:hover::after {
  width: 15px;
  height: 15px
}

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

/* ---------------------------------------------
recruit　追加　20250110
------------------------------------------------ */
/* 基本スタイル */
.entryBtn-list {
  position: relative;
  padding: 10px;
}

.entryBtn-list__title--toggle {
  cursor: pointer;
}

.entryBtn-list__hidden {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  width: auto;
  /* 横幅を内容に合わせる */
  background: #fff;
  padding: 10px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  z-index: 10;
  border-radius: 4px;
}

.entryBtn-list__btn {
  display: inline-block;
  /* 横幅をテキストにフィット */
  text-decoration: none;
  color: #0073e6;
  padding: 8px 12px;
  background: #f9f9f9;
  border-radius: 4px;
  border: 1px solid #ddd;
  /* 境界線を追加 */
  transition: background 0.3s, box-shadow 0.3s;
  text-align: left;
  /* 文字を左寄せ */
}

.entryBtn-list__btn:hover {
  background: #0073e6;
  color: #fff;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
  /* ホバー時の影を強調 */
}

/* ホバー時の表示 */
.entryBtn-list--hoverable:hover .entryBtn-list__hidden {
  display: block;
}

/* クリック時の表示（CSSのみで実現） */
.entryBtn-list--hoverable input[type="checkbox"] {
  display: none;
}

.entryBtn-list--hoverable input[type="checkbox"]:checked~.entryBtn-list__hidden {
  display: block;
}

/* スマホ対応（オプション: コンテンツ幅いっぱいに表示） */
@media screen and (max-width: 760px) {
  .entryBtn-list__hidden {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    /* スマホでは幅を全体に */
    box-shadow: none;
    border-radius: 0;
  }

  .entryBtn-list__btn {
    width: 100%;
    /* ボタンを画面幅にフィット */
    box-sizing: border-box;
  }
}

/* カスタム採用ボタンコンテナ */
.custom-recruit-buttons {
  display: flex;
  gap: 10px;
  /* ボタン間のスペース */
  justify-content: flex-end;
  /* ボタンを右寄せ */
  margin-top: 20px;
  /* 上部マージン */
  width: auto;
  /* 必要に応じて幅を自動調整 */
  margin-left: auto;
  /* 右寄せを補助 */
}
@media screen and (max-width: 1366px) {
  .custom-recruit-buttons {
    padding-right: 130px;
  }
  
}

/* 新卒採用ボタン専用スタイル */
.custom-recruit-buttons__btn--new {
  margin-right: 15px;
  /* 新卒採用ボタンの右側に余白を設定 */
}

/* 新卒採用ボタン専用スタイルの画像調整 */
.custom-recruit-buttons__btn--new img {
  display: block;
  /* ブロック要素として扱う */
  object-fit: contain;
  /* 画像を適切に収める */
  width: auto;
  /* 幅を画像のサイズにフィット */
  height: auto;
  /* 高さを縦横比に応じて維持 */
}

/* 中途採用ボタン専用スタイル */
.custom-recruit-buttons__btn--mid {
  margin-left: 10px;
  /* 中途採用ボタンの左側に余白を設定 */
}

/* 中途採用ボタン専用スタイルの画像調整 */
.custom-recruit-buttons__btn--mid img {
  display: block;
  /* ブロック要素として扱う */
  object-fit: contain;
  /* 画像を適切に収める */
  width: auto;
  /* 幅を画像のサイズにフィット */
  height: auto;
  /* 高さを縦横比に応じて維持 */
}

/* ボタン共通スタイル */
.custom-recruit-buttons__btn {
  color: #fff;
  font-size: 1.3em;
  font-weight: bold;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif!important;
  line-height: 1.2;
  background: #2E98E0;
  padding: 0px 35px 7px;
  outline: 1px solid;
  outline-color: #2E98E0;
  outline-offset: 0px;
  display: inline-block;
  transition: .3s;
  text-align: center;
  text-decoration: none;
  position: relative;
}
.custom-recruit-buttons__btn::after {
  content: "";
  display: inline-block;
  background-image: url(/themes/recruit/images/common/img_menu_arrow.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  width: 68px;
  height: 40px;
  position: absolute;
  top: 40px;
  left: 130px;
}
.custom-recruit-buttons__btn span {
  font-size: 0.5em;
  font-weight: initial;
}

/* ボタンホバー時のスタイル */
.custom-recruit-buttons__btn:hover {
  animation: light .8s infinite;
}

@keyframes light {
  100% { 
    outline-color: transparent;
    outline-offset: 12px;
  }
}

/* スマホ対応（760px以下） */
@media screen and (max-width: 760px) {
  .custom-recruit-buttons {
    flex-direction: column;
    /* ボタンを縦並びに */
    gap: 10px;
    /* 縦方向のスペース */
    align-items: flex-end;
    /* ボタンを右寄せ */
    width: 100%;
    /* スマホでは全幅に */
  }

  .custom-recruit-buttons__btn img {
    width: 100%;
    /* スマホでは画像を全幅に */
    height: auto;
    /* 縦横比を維持 */
  }
}

.entryBtn-list__btn {
  display: inline-block;
  /* 横幅をテキストにフィット */
  text-decoration: none;
  color: #0073e6;
  padding: 8px 12px;
  background: #f9f9f9;
  border-radius: 4px;
  border: 1px solid #ddd;
  /* 境界線を追加 */
  transition: background 0.3s, box-shadow 0.3s;
  text-align: left;
  /* 文字を左寄せ */
  white-space: nowrap;
  /* テキストを折り返さず1行にする */
  overflow: hidden;
  /* テキストが溢れた場合に隠す */
  text-overflow: ellipsis;
  /* 溢れた部分を省略記号で表示 */
}

/* ---------------------------------------------
recruit　追加　20250120
------------------------------------------------ */

.faq-list__item__title__NO {
  padding-top: 16px;
  color: #127ce0;
  font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.4;
  position: relative
}

@media all and (max-width: 768px) {
  .faq-list__item__title__NO {
    padding-top: 13px;
    font-size: 1.7rem
  }
}


.faq-list__item__title__NO::before {
  content: "";
  display: inline-block;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  width: 27px;
  height: 49px;
  position: absolute;
  top: 0;
  left: -37px
}

@media all and (max-width: 768px) {
  .faq-list__item__title__NO::before {
    width: 20px;
    height: 36px;
    left: -27px
  }
}

.container_R {

  padding: 10px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.item_R {

  padding: 10px;
  margin-bottom: 10px;
  box-sizing: border-box;
  width: 30%;

}


.container_R {
  flex-wrap: wrap;
  /* 画面幅に合わせてカラム落ちさせる */
  display: flex;
  justify-content: space-between;
  align-items: top
}

.container_R .item_R {
  width: 48.5%;
  /* お好みの幅で指定 */
  padding: 16px 0px 16px 25px;
  /* お好みの幅で指定 */
  /* paddingと合わせてbox-sizingも指定 */
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  justify-content: space-between;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box
}

/* 最後のコンテンツを左寄せにする指定 */
.container_R:after {
  content: "";
  display: block;
  width: 40%;
  /* .boxに指定したwidthと同じ幅を指定する */
  height: 0;
}

@media (min-width: 769px) {
  .faq-list__item_R {
    width: calc(110% - 45px);
  }
}

.faq-list__item_R {
  margin-bottom: 35px;
  padding-left: 38px;
}

@media (max-width: 768px) {
  .container_R {
    flex-wrap: wrap;
    /* 画面幅に合わせてカラム落ちさせる */
    display: flex;
    justify-content: space-between;
    align-items: top
  }

  .faq-list__item_R {
    margin-bottom: 35px;
    padding-left: 28px;
  }

  /* 最後のコンテンツを左寄せにする指定 */
  .container_R:after {
    content: "";
    display: block;
    width: 40%;
    /* .boxに指定したwidthと同じ幅を指定する */
    height: 0;
  }

  .container_R {
    flex-wrap: wrap;
    /* 画面幅に合わせてカラム落ちさせる */
    display: flex;
    flex-direction: column-reverse;
    /* 縦段替え */
    align-items: top
  }

  .container_R .item_R {
    width: 100%;
    /* お好みの幅で指定 */
    padding: 16px 0px 16px 0px;
    /* お好みの幅で指定 */
    /* paddingと合わせてbox-sizingも指定 */
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    justify-content: space-between;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box
  }

  .container_R {

    padding: 0px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .item_R {

    padding: 10px;
    margin-bottom: 10px;
    box-sizing: border-box;
    width: 30%;

  }

}