@charset "UTF-8";
/* media quary */
/*
Bootstrap4の設定例）
xs (Extra Small): ~575px
sm (Small): 576px~767px
md (Medium): 768px〜991px
lg (Large): 992px~1199px
xl (Extra Large): 1200px〜
*/
/*
茶//40220F
うす茶色//C9A063
table-text/7F4F21
black//231815
blue-test//36318F
blue-haikei//DFF2FC
アクセント//D31377
yle//FFF100
 */
* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

:root {
  font-size: 62.5%;
}

/* Windows 用 Medium 指定の游ゴシック */
@font-face {
  font-family: "Yu Gothic M";
  src: local("Yu Gothic Medium");
}
/* font-weight: bold の時は通常どおり Bold 書体を使わせる */
@font-face {
  font-family: "Yu Gothic M";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}
body {
  padding: 0;
  margin: 0;
  font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, Hiragino Sans, "ヒラギノ角ゴシック", Hiragino Kaku Gothic ProN, "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 1.6rem;
  font-size: 16px;
  line-height: 2.1875;
  color: #000;
  font-weight: 400;
  -webkit-font-feature-settings: "pkna";
  font-feature-settings: "pkna";
  letter-spacing: 0.025em;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  -ms-font-smoothing: antialiased;
  -o-font-smoothing: antialiased;
  font-smoothing: antialiased;
}
h2, h3 {
  letter-spacing: 0.3em;
}

main {
  display: block;
}

address {
  font-style: normal;
}

a {
  color: #004AA1;
  text-decoration: none;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
a:link {
  color: #004AA1;
}

a:hover {
  text-decoration: none;
  opacity: 0.6;
}

figure {
  margin: 0;
}

img {
  max-width: 100%;
  vertical-align: bottom;
}
@media screen and (max-width: 767.98px) {
  img {
    max-width: 100%;
    height: auto;
  }
}

ul, ol {
  margin: 0;
  padding: 0;
}

ol {
  list-style-type: none;
}

hr {
  height: 0;
  border: 0;
  border-top: 1px solid #ccc;
  margin-top: 2em;
  margin-bottom: 2em;
}

h1,
h2,
h3,
h4,
h5,
h6,
a,
p,
span,
em,
small,
strong,
sub,
sup,
mark,
del,
ins,
strike,
abbr,
dfn,
blockquote,
q,
cite,
code,
pre,
ol,
ul,
li,
dl,
dt,
dd,
div,
section,
article,
main,
aside,
nav,
header,
hgroup,
footer,
img,
figure,
figcaption,
address,
time,
audio,
video,
canvas,
iframe,
details,
summary,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
  margin: 0;
  padding: 0;
  border: 0;
}

ul,
ol {
  list-style: none;
}

body button {
  border: none;
  padding: 0;
}
body button:focus {
  background: none;
}

.c-red {
  color: red !important;
  font-weight: bold;
}
.c-red .c-red-small {
  font-size: 12px;
}

:root {
  --color-second: #628fb4;
}

@media screen and (max-width: 997.98px) {
  .u-sp-hidden {
    display: none;
  }
}

.u-pc-hidden {
  display: none;
}
@media screen and (max-width: 997.98px) {
  .u-pc-hidden {
    display: block;
  }
}

.u-hidden {
  display: none !important;
}

.u-text-left {
  text-align: left;
}

.u-text-center {
  text-align: center;
}

.u-text-right {
  text-align: right;
}

.u-text-justify {
  text-align: justify;
  text-justify: inter-ideograph;
}

.u-japanease {
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  overflow: hidden;
}

.u-word-break {
  word-break: break-all;
}

.u-white-space {
  white-space: nowrap;
}

.js-animation.is-fadeInDown {
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
  visibility: visible !important;
}
@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-7px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-7px);
    transform: translateY(-7px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

.js-fade-up {
  opacity: 0;
  -webkit-transform: translateY(40px);
          transform: translateY(40px);
  -webkit-transition: opacity 1s, -webkit-transform 1s;
  transition: opacity 1s, -webkit-transform 1s;
  transition: opacity 1s, transform 1s;
  transition: opacity 1s, transform 1s, -webkit-transform 1s;
}
.js-fade-up.is-view {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.slide-up001 {
  -webkit-transform: translate(-100%, 100%);
          transform: translate(-100%, 100%);
  opacity: 0;
  will-change: auto;
}

.slide-up002 {
  -webkit-transform: translate(100%, 0%);
          transform: translate(100%, 0%);
  opacity: 0;
  will-change: auto;
}

.slide-up-base01 {
  -webkit-transform: translate(0%, 100%);
          transform: translate(0%, 100%);
  opacity: 0;
}

.slide-up-base02 {
  -webkit-transform: translate(0%, 100%);
          transform: translate(0%, 100%);
  opacity: 0;
}

.slide-up-base03 {
  -webkit-transform: translate(0%, 100%);
          transform: translate(0%, 100%);
  opacity: 0;
}

.slide-right01 {
  -webkit-transform: translate(100%, 0%);
          transform: translate(100%, 0%);
  opacity: 0;
}

.box-up {
  -webkit-transform: translate(0%, 40%);
          transform: translate(0%, 40%);
  opacity: 0;
}

.slide-up01 {
  left: -100%;
  opacity: 0;
  -webkit-transition: 1s;
  transition: 1s;
}
.slide-up01.-is-play {
  will-change: auto;
  opacity: 1;
  left: 0;
}

.slide-up02 {
  right: -100%;
  opacity: 0;
  -webkit-transition: 1s;
  transition: 1s;
}
.slide-up02.-is-play {
  will-change: auto;
  opacity: 1;
  left: 0;
}

.js-sub-bg {
  -webkit-transform: translate(-100%, 0%);
          transform: translate(-100%, 0%);
  opacity: 0;
}

.js-main-fade {
  display: none;
  top: -300px !important;
  -webkit-transition: 0.6s;
  transition: 0.6s;
}
.js-main-fade.is-open {
  top: -5px !important;
}
@media screen and (max-width: 767.98px) {
  .js-main-fade.is-open {
    top: calc((15 / 750) * 100vw) !important;
  }
}

.swiper-slide {
  cursor: pointer;
}

.p-event__slide {
  position: relative;
  width: 624px;
  margin-left: auto;
}
@media screen and (max-width: 997.98px) {
  .p-event__slide {
    margin-top: 40px;
    width: 100%;
  }
}
@media screen and (max-width: 997.98px) and (max-width: 767.98px) {
  .p-event__slide {
    margin-top: 0;
  }
}

.p-event__slide .swiper-button-prev {
  background-image: url(../../_assets/img/common/icon_slide_arrow_left.svg);
  left: -40px;
  width: 30px;
  height: 30px;
}
@media screen and (max-width: 767.98px) {
  .p-event__slide .swiper-button-prev {
    left: -15px;
  }
}

.p-event__slide .swiper-button-next {
  background-image: url(../../_assets/img/common/icon_slide_arrow_right.svg);
  right: -40px;
  width: 30px;
  height: 30px;
}
@media screen and (max-width: 767.98px) {
  .p-event__slide .swiper-button-next {
    right: -15px;
  }
}

.slide-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}
.slide-card .slide-card__title {
  position: relative;
  margin-top: 10px;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
  white-space: nowrap;
}
@media screen and (max-width: 767.98px) {
  .slide-card .slide-card__title {
    width: 80%;
    margin: 10px auto;
  }
}
.slide-card .slide-card__title:before {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 0;
  width: 13px;
  height: 14px;
  background-image: url(../../_assets/img/common/icon_arrow_down.svg);
  content: "";
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.slide-card .slide-card__sub img {
  width: 100%;
}
@media screen and (max-width: 767.98px) {
  .slide-card .slide-card__sub {
    width: 80%;
    margin: 0 auto;
  }
}

.c-scroll-box {
  overflow-x: auto;
  /* 横スクロールの指定 */
  overflow-scrolling: touch;
  /* スクロールを滑らかにする */
  -webkit-overflow-scrolling: touch;
  width: 100%;
}
@media screen and (max-width: 767.98px) {
  .c-scroll-box > img {
    width: auto;
    max-width: none;
    height: 463px;
    padding: 20px 0;
  }
}

/*スクロールバー全体の高さ*/
@media screen and (max-width: 767.98px) {
  .c-scroll-box::-webkit-scrollbar {
    height: 10px;
  }
}

/*スクロールバー全体の背景*/
@media screen and (max-width: 767.98px) {
  .c-scroll-box::-webkit-scrollbar-track {
    background: #eee;
  }
}

/*スクロールバーの動く部分*/
@media screen and (max-width: 767.98px) {
  .c-scroll-box::-webkit-scrollbar-thumb {
    background: #aaa;
    border: none;
  }
}

/*スクロールバーの動く部分のホバー（マウスオーバー）*/
@media screen and (max-width: 767.98px) {
  .c-scroll-box::-webkit-scrollbar-thumb:hover {
    background: #999;
  }
}

.js-slide-box {
  overflow: hidden;
}
.js-slide-box .js-slide-box-inner {
  width: inherit;
  height: inherit;
  line-height: 200px;
  font-size: 1.5em;
  text-align: center;
  color: #555;
  background-color: #fff;
  opacity: 0;
  visibility: hidden;
}
.js-slide-box .js-slide-box-inner.isPlay {
  -webkit-animation-name: play;
          animation-name: play;
  -webkit-animation-duration: 0.5s;
          animation-duration: 0.5s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-timing-function: cubic-bezier(0.8, 0, 0.5, 1);
          animation-timing-function: cubic-bezier(0.8, 0, 0.5, 1);
  position: relative;
  opacity: 1 !important;
  visibility: visible;
  display: block;
}

@-webkit-keyframes play {
  from {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  to {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}

@keyframes play {
  from {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  to {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@-webkit-keyframes maskOut {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
}
@keyframes maskOut {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
}
.isPlay:before {
  -webkit-animation-name: maskOut;
          animation-name: maskOut;
  -webkit-animation-duration: 0.5s;
          animation-duration: 0.5s;
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-timing-function: cubic-bezier(0.8, 0, 0.5, 1);
          animation-timing-function: cubic-bezier(0.8, 0, 0.5, 1);
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(109.6deg, #9cfcf8 11.2%, #196eb4 91.1%);
}

.l-header {
  width: 100%;
}

.l-header--fixed {
  position: fixed;
  top: 0;
  left: 0;
}

.l-wrapper {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  max-width: 1200px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
@media screen and (max-width: 997.98px) {
  .l-wrapper {
    max-width: none;
    padding: 0 4vw;
  }
}
.l-wrapper.-large {
  max-width: 1440px;
}
@media screen and (max-width: 997.98px) {
  .l-wrapper.-full-sp {
    padding: 0;
  }
}
.l-wrapper.-inner {
  max-width: 800px;
}

.l-inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  max-width: 1100px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding: 0 20px;
}
.l-inner.-w980 {
  max-width: 980px;
}
.l-inner.-w700 {
  max-width: 700px;
}

.l-body {
  width: 100%;
  overflow: hidden;
}

.l-section {
  width: 100%;
  padding: 2.8rem 0;
}

.line {
  position: fixed;
  top: 0;
  left: 0;
  width: 20px;
  height: 100%;
  background-color: #196EB4;
  content: "";
  z-index: 1000;
}
@media screen and (max-width: 997.98px) {
  .line {
    display: none;
  }
}

.p-header {
  position: fixed;
  width: 100%;
  height: 100px;
  z-index: 4000;
  background-color: #fff;
}
@media screen and (max-width: 997.98px) {
  .p-header {
    height: 60px;
    border-top: 5px solid #196EB4;
  }
}
.p-header .p-header__mid {
  margin-right: 32px;
}
.p-header .p-header__wrap {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-left: 48px;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media screen and (max-width: 997.98px) {
  .p-header .p-header__wrap {
    height: 60px;
    padding-left: 15px;
  }
}
.p-header .p-header__wrap .p-header__logo {
  position: absolute;
  top: 0;
  left: 48px;
  margin-top: -13px;
  width: 160px;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 160px;
          flex: 0 0 160px;
}
@media screen and (max-width: 1300px) {
  .p-header .p-header__wrap .p-header__logo {
    margin-top: -5px;
    left: 0;
    width: 100px;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100px;
            flex: 0 0 100px;
  }
}
.p-header .p-header__wrap .p-header__logo img {
  display: block;
}
.p-header .p-header__wrap .p-header__logo.-op img {
  opacity: 0.6;
}
body.home .p-header {
  background: none;
}
body.home.scrolled .p-header {
  background-color: #fff;
}
.p-header .p-header__contact {
  position: absolute;
  top: 0;
  right: 0;
  width: 200px;
  height: 100px;
}
@media screen and (max-width: 997.98px) {
  .p-header .p-header__contact {
    width: 80px;
    height: 60px;
  }
}
.p-header .p-header__contact a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 100%;
  font-size: 14px;
  line-height: 1;
  color: #fff;
  background-color: #333;
}
@media screen and (max-width: 997.98px) {
  .p-header .p-header__contact a {
    font-size: 13px;
    line-height: 1;
  }
}

.p-footer {
  padding-top: 55px;
  padding-left: 15px;
  padding-right: 15px;
}
@media screen and (max-width: 997.98px) {
  .p-footer {
    padding: 40px 0;
  }
}
.p-footer .p-footer-fixed {
  position: fixed;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 20;
}
@media screen and (max-width: 997.98px) {
  .p-footer .p-footer-fixed {
    top: auto;
    -webkit-transform: translateY(0%);
            transform: translateY(0%);
    bottom: 0;
    width: 100%;
  }
}
@media screen and (max-width: 997.98px) {
  .p-footer .p-footer-fixed .p-footer-fixed__list {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
  }
}
.p-footer .p-footer-fixed .p-footer-fixed__list li a.c-fixed-btn {
  display: block;
  color: #fff;
  background: #999;
  padding: 20px 10px;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  text-orientation: upright;
  font-size: 14px;
  line-height: 1;
}
@media screen and (max-width: 997.98px) {
  .p-footer .p-footer-fixed .p-footer-fixed__list li a.c-fixed-btn {
    padding-block: 14px;
    -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
            writing-mode: horizontal-tb;
    text-orientation: mixed;
    padding: 10px;
    text-align: center;
  }
}
.p-footer .p-footer-fixed .p-footer-fixed__list li a.c-fixed-btn.-type02 {
  background: -webkit-gradient(linear, left top, right top, from(#F69007), to(#FFC240));
  background: linear-gradient(90deg, #F69007, #FFC240);
}
.p-footer .p-footer__contents02 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr);
  margin-bottom: 20px;
}
@media screen and (max-width: 997.98px) {
  .p-footer .p-footer__contents02 {
    -ms-grid-columns: 100%;
    grid-template-columns: 100%;
    gap: 40px;
  }
}
.p-footer .p-footer__contents02 .p-icon-footer + .p-icon-footer {
  margin-top: 20px;
}
.p-footer .p-footer__contents02 .p-icon-footer {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 67px 20px auto;
  grid-template-columns: 67px auto;
  gap: 0 20px;
}
.p-footer .p-footer__contents02 .p-icon-footer .p-icon-footer__title {
  font-size: 16px;
  font-weight: bold;
}
.p-footer .p-footer__contents02 .p-icon-footer .p-icon-footer__text {
  font-size: 14px;
  line-height: 24px;
}
.p-footer .m-box + .m-box {
  margin-top: 12px;
}
.p-footer .m-box .m-box__title {
  font-weight: bold;
}
.p-footer .p-footer__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-bottom: 50px;
}
@media screen and (max-width: 997.98px) {
  .p-footer .p-footer__contents {
    padding-bottom: 30px;
  }
}
.p-footer .p-footer__contents .p-footer__main {
  width: 500px;
}
@media screen and (max-width: 997.98px) {
  .p-footer .p-footer__contents .p-footer__main {
    width: 100%;
    text-align: center;
  }
}
.p-footer .p-footer__contents .p-footer__main .p-footer__title {
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.006em;
}
.p-footer .p-footer__contents .p-footer__main .p-footer__address {
  margin-top: 16px;
  font-size: 12px;
  line-height: 1.75;
  letter-spacing: 0.006em;
}
@media screen and (max-width: 997.98px) {
  .p-footer .p-footer-nav {
    display: none;
  }
}
.p-footer .p-footer-nav .p-footer-nav__list, .p-footer .p-footer-nav .menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.p-footer .p-footer-nav .p-footer-nav__list .p-footer-nav__list-item + .p-footer-nav__list-item,
.p-footer .p-footer-nav .p-footer-nav__list .menu-item + .menu-item, .p-footer .p-footer-nav .menu .p-footer-nav__list-item + .p-footer-nav__list-item,
.p-footer .p-footer-nav .menu .menu-item + .menu-item {
  margin-left: 18px;
}
.p-footer .p-footer-nav .p-footer-nav__list .p-footer-nav__list-item a, .p-footer .p-footer-nav .p-footer-nav__list .menu-item a, .p-footer .p-footer-nav .menu .p-footer-nav__list-item a, .p-footer .p-footer-nav .menu .menu-item a {
  font-size: 14px;
  line-height: 1.3571428571;
  letter-spacing: 0.024rem;
  color: #000;
  white-space: nowrap;
}
.p-footer .p-footer-nav .p-footer-nav__contact {
  margin-top: 36px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.p-footer-banner {
  margin-top: 20px;
}
.p-footer-banner ul li + li {
  margin-top: 20px;
}

.company-logo {
  display: block;
  width: 270px;
  padding: 10px 0;
}
.company-logo img {
  width: 100%;
}

.p-footer__copy {
  padding: 20px 0;
  border-top: 1px solid #ccc;
  text-align: center;
  line-height: 1;
}
@media screen and (max-width: 997.98px) {
  .p-footer__copy {
    padding: 16px 0;
  }
}
.p-footer__copy small {
  color: #666;
  font-size: 14px;
  line-height: 1;
}

.p-sub-visual02 {
  position: relative;
  height: 520px;
  display: -ms-grid;
  display: grid;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-image: url(../../_assets/img/index-new/sub-bg.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
@media screen and (max-width: 997.98px) {
  .p-sub-visual02 {
    height: 100vh;
    min-height: 500px;
    background-image: url(../../_assets/img/index-new/sub-bg_sp.webp);
  }
}
.p-sub-visual02:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  background: rgba(255, 255, 255, 0.4);
}
.p-sub-visual02 .p-sub-visual02__title {
  position: relative;
  padding: 10px;
  z-index: 4;
  font-size: 30px;
  line-height: 1;
  font-weight: bold;
  background: rgba(25, 110, 180, 0.8);
  color: #fff;
  width: 50%;
  margin: auto;
  text-align: center;
}
@media screen and (max-width: 997.98px) {
  .p-sub-visual02 .p-sub-visual02__title {
    font-size: 20px;
    line-height: 1;
  }
}

.p-sub-visual {
  height: 520px;
  padding-left: 62px;
}
@media screen and (max-width: 997.98px) {
  .p-sub-visual {
    height: 360px;
    padding-left: calc((15/375)*100vw);
  }
}
.p-sub-visual .p-sub-visual__inner {
  position: relative;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.p-sub-visual .p-sub-visual__inner:before {
  position: absolute;
  top: 0;
  left: 110px;
  content: "";
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-image: url(../../_assets/img/page/p-sub-visual_bg.png);
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 997.98px) {
  .p-sub-visual .p-sub-visual__inner:before {
    left: calc((40/375)*100vw);
  }
}
.p-sub-visual .p-sub-visual__inner .p-sub-visual__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding-bottom: 60px;
}
@media screen and (max-width: 997.98px) {
  .p-sub-visual .p-sub-visual__inner .p-sub-visual__head {
    padding-bottom: 30px;
  }
}
.p-sub-visual .p-sub-visual__inner .p-sub-visual__head .p-sub-visual__title {
  font-size: 20px;
  line-height: 1;
  font-weight: normal;
}
@media screen and (max-width: 997.98px) {
  .p-sub-visual .p-sub-visual__inner .p-sub-visual__head .p-sub-visual__title {
    font-size: 16px;
    line-height: 1;
  }
}
.p-sub-visual .p-sub-visual__inner .p-sub-visual__head .p-sub-visual__title-en {
  font-size: 90px;
  line-height: 1.3333333333;
  font-family: "Josefin Sans", sans-serif;
  text-transform: capitalize;
}
@media screen and (max-width: 997.98px) {
  .p-sub-visual .p-sub-visual__inner .p-sub-visual__head .p-sub-visual__title-en {
    font-size: 60px;
    line-height: 1.5;
  }
}
.p-sub-visual .p-sub-visual__copy {
  margin-left: 44px;
  width: 587px;
}
@media screen and (max-width: 997.98px) {
  .p-sub-visual .p-sub-visual__copy {
    margin-left: calc((-14/375)*100vw);
    width: 187px;
  }
}
.p-sub-visual .p-sub-visual__copy img {
  display: block;
  width: 100%;
}

.sec-info {
  position: relative;
  z-index: 3;
  background-color: #333;
}
.sec-info:before {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
          transform: translateY(-50%) translateX(-50%);
  content: "Falco";
  color: #fff;
  font-size: 10.4166666667vw;
  line-height: 1;
  font-weight: 900;
}

.sec-dl {
  margin-top: 80px;
}
@media screen and (max-width: 997.98px) {
  .sec-dl {
    margin-top: 40px;
  }
}
.sec-dl textarea {
  width: 100%;
  height: 300px;
}
.sec-dl input[type=text]:not(.browser-default) {
  background-color: #F6F8F9;
  border: none;
  border-bottom: 1px solid #ccc;
  border-radius: 0;
  outline: none;
  height: auto;
  width: 100%;
  font-size: 15px;
  margin: 0 0 4px 0;
  padding: 0.8em 0.8em;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: border 0.3s, -webkit-box-shadow 0.3s;
  transition: border 0.3s, -webkit-box-shadow 0.3s;
  transition: box-shadow 0.3s, border 0.3s;
  transition: box-shadow 0.3s, border 0.3s, -webkit-box-shadow 0.3s;
}
.sec-dl input[type=text]:not(.browser-default):focus {
  border-bottom: 1px solid #196EB4;
  -webkit-box-shadow: 0 1px 0 0 #196EB4;
          box-shadow: 0 1px 0 0 #196EB4;
}
.sec-dl .p-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.sec-dl .p-flex .horizontal-item:nth-child(4) {
  margin-left: 0;
}
@media screen and (max-width: 997.98px) {
  .sec-dl .p-flex .horizontal-item {
    margin-left: 0;
  }
}
.sec-dl dl {
  border-top: 1px solid #ddd;
  padding: 28px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 997.98px) {
  .sec-dl dl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.sec-dl dl.-bottom {
  border-bottom: 1px solid #ddd;
}
.sec-dl dl dt {
  width: 260px;
  padding: 0 20px;
  font-size: 14px;
  line-height: 2;
}
@media screen and (max-width: 997.98px) {
  .sec-dl dl dt {
    padding: 0;
    width: 100%;
    font-weight: bold;
  }
}
.sec-dl dl dt .need {
  margin: 0 8px;
  background: red;
  color: #fff;
  font-size: 12px;
  line-height: 1;
  width: 36px;
  height: 20px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.sec-dl dl dd {
  margin: 0;
  width: auto;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 14px;
  line-height: 2;
}
@media screen and (max-width: 997.98px) {
  .sec-dl dl dd {
    margin-top: 14px;
  }
}
.sec-dl dl dd .dd-item + .dd-item {
  margin-top: 20px;
}
.sec-dl .link {
  margin-left: 8px;
}

.p-from-end {
  padding: 60px 0;
  text-align: center;
}
.p-from-end p + p {
  margin-top: 20px;
}

.p-from-input {
  margin-top: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.p-from-input input {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-width: 325px;
  width: 100%;
  padding: 28px 0;
  background: -webkit-gradient(linear, left top, right top, from(#F69007), to(#FFC240));
  background: linear-gradient(90deg, #F69007, #FFC240);
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  border: none;
  cursor: pointer;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
}
.p-from-input input:hover {
  opacity: 1;
  border: none;
  -webkit-box-shadow: 0 6px 6px 0 rgba(0, 0, 0, 0.14), 0 1px 7px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -1px rgba(0, 0, 0, 0.2);
          box-shadow: 0 6px 6px 0 rgba(0, 0, 0, 0.14), 0 1px 7px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -1px rgba(0, 0, 0, 0.2);
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}

.sec-map {
  margin-top: 238px;
  height: 482px;
}
.sec-map .video-container, .sec-map .video {
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 997.98px) {
  .sec-map {
    margin-top: 100px;
    height: 300px;
  }
}

.sec-under {
  padding: 80px 0 150px;
}
@media screen and (max-width: 997.98px) {
  .sec-under {
    padding: 80px 0;
  }
}

.p-sec-block {
  margin-top: 100px;
}
.p-sec-block .p-sec-block__meta {
  margin-top: 20px;
  text-align: right;
}
.p-sec-block .p-sec-block__text {
  margin-top: 28px;
}
.p-sec-block .p-sec-block__text h4 + p {
  margin-top: 12px;
}
.p-sec-block .p-sec-block__text p + h4 {
  margin-top: 40px;
}
.p-sec-block .p-sec-block__text p + p {
  margin-top: 24px;
}

.p-sec-name {
  margin-top: 30px;
  text-align: right;
}
.p-sec-name .p-sec-name__company {
  font-size: 16px;
  line-height: 1;
}
.p-sec-name .p-sec-name__name {
  margin-top: 14px;
  font-size: 20px;
  line-height: 1;
  font-weight: bold;
}

.p-image-text01 {
  margin-top: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}
.p-image-text01 .p-image-text01__main {
  margin-top: 20px;
}
.p-image-text01 .p-image-text01__main p + p {
  margin-top: 20px;
}

.c-blue-heading + .p-image-text01 {
  margin-top: 20px;
}

.p-image-text01 + .c-blue-heading {
  margin-top: 80px;
}
@media screen and (max-width: 997.98px) {
  .p-image-text01 + .c-blue-heading {
    margin-top: 60px;
  }
}

.p-bottom {
  margin-top: 150px;
}
@media screen and (max-width: 997.98px) {
  .p-bottom {
    margin-top: 100px;
  }
}

@media screen and (max-width: 997.98px) {
  .l-body .mw_wp_form .horizontal-item + .horizontal-item {
    margin-left: 0;
  }
}

@media screen and (max-width: 997.98px) {
  .l-body .mw_wp_form .p-flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.p-unit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
@media screen and (max-width: 767.98px) {
  .p-unit {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0 calc((30/750)*100vw);
  }
}
.p-unit .p-unit__main {
  width: auto;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding-left: calc((40/1550)*100vw);
  padding-left: 30px;
}
@media screen and (max-width: 767.98px) {
  .p-unit .p-unit__main {
    padding-left: 0;
    margin-top: 9.6vw;
  }
}
.p-unit .p-unit__main .p-unit__main-text {
  margin-top: 1.9444444444vw;
  margin-top: 28px;
  color: #231815;
  font-size: 18px;
  line-height: 1.5555555556;
  letter-spacing: 0.001em;
}
@media screen and (max-width: 767.98px) {
  .p-unit .p-unit__main .p-unit__main-text {
    margin-top: 6.9333333333vw;
    font-size: 8vw;
    line-height: 1.4;
    color: #040000;
  }
}
.p-unit .p-unit__image {
  width: 21.5277777778vw;
  width: 310px;
}
@media screen and (max-width: 767.98px) {
  .p-unit .p-unit__image {
    width: 85.3333333333vw;
  }
}

.js-toggle .js-toggle-contents {
  display: none;
}

@media screen and (max-width: 997.98px) {
  .pc-nav {
    display: none;
  }
}
.pc-nav .pc-nav__list, .pc-nav .menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.pc-nav .pc-nav__list .pc-nav__item + .pc-nav__item, .pc-nav .pc-nav__list .menu-item + .menu-item, .pc-nav .menu .pc-nav__item + .pc-nav__item, .pc-nav .menu .menu-item + .menu-item {
  margin-left: 32px;
}
.pc-nav .pc-nav__list .pc-nav__item a, .pc-nav .pc-nav__list .menu a, .pc-nav .menu .pc-nav__item a, .pc-nav .menu .menu a {
  position: relative;
  font-size: 16px;
  line-height: 1.25;
  color: #000;
  white-space: nowrap;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  padding: 32px 0;
  display: block;
}
.pc-nav .pc-nav__list .pc-nav__item a span, .pc-nav .pc-nav__list .menu a span, .pc-nav .menu .pc-nav__item a span, .pc-nav .menu .menu a span {
  position: relative;
}
.pc-nav .pc-nav__list .pc-nav__item a span:before, .pc-nav .pc-nav__list .menu a span:before, .pc-nav .menu .pc-nav__item a span:before, .pc-nav .menu .menu a span:before {
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 0;
  height: 1px;
  content: "";
  background: #000;
  -webkit-transition: width 0.4s;
  transition: width 0.4s;
}
.pc-nav .pc-nav__list .pc-nav__item a:hover, .pc-nav .pc-nav__list .menu a:hover, .pc-nav .menu .pc-nav__item a:hover, .pc-nav .menu .menu a:hover {
  opacity: 1;
  font-weight: bold;
}
.pc-nav .pc-nav__list .pc-nav__item a:hover span:before, .pc-nav .pc-nav__list .menu a:hover span:before, .pc-nav .menu .pc-nav__item a:hover span:before, .pc-nav .menu .menu a:hover span:before {
  width: 100%;
}

.p-info-nav {
  position: fixed;
  top: 0;
  right: 100px;
}
@media screen and (max-width: 997.98px) {
  .p-info-nav {
    top: auto;
    bottom: 0;
    right: 0;
    width: 100%;
  }
}
.p-info-nav .p-info-nav__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.p-info-nav .p-info-nav__list .p-info-nav__item {
  width: 100px;
}
@media screen and (max-width: 997.98px) {
  .p-info-nav .p-info-nav__list .p-info-nav__item {
    width: 50%;
  }
}

.p-gNavSP {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100px;
  height: 100px;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 1000;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
}
@media screen and (max-width: 997.98px) {
  .p-gNavSP {
    width: 62px;
    height: 62px;
  }
}
.p-gNavSP .p-gNavSP__box.-info {
  margin-left: 20px;
}
@media screen and (max-width: 997.98px) {
  .p-gNavSP .p-gNavSP__box.-info {
    display: none;
  }
}
.p-gNavSP .p-gNavSP__box.-info a.p-gNavSP__navInfo {
  width: 250px;
  height: 75px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1.6rem;
  color: #333;
  border-radius: 10px;
}
@media screen and (max-width: 1350px) {
  .p-gNavSP .p-gNavSP__box.-info a.p-gNavSP__navInfo {
    width: 200px;
  }
}
body.scrolled .p-gNavSP .p-gNavSP__box.-info a.p-gNavSP__navInfo {
  height: 60px;
}
.p-gNavSP .burger {
  z-index: 1020;
}
.p-gNavSP .burger__text {
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.p-gNavSP .p-gNavSP__list, .p-gNavSP .menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding: 30px 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #196EB4;
  display: block;
  position: absolute;
  z-index: 1010;
  top: 0;
  right: -250px;
  margin: 0;
  padding: 45px 0 100px;
  width: 250px;
  min-height: calc(100vh);
  list-style: none;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.p-gNavSP .p-gNavSP__item + .p-gNavSP__item,
.p-gNavSP .menu-item + .menu-item {
  margin-left: 32px;
  margin-left: 0;
}
.p-gNavSP .p-gNavSP__item, .p-gNavSP .menu-item {
  position: relative;
  margin: 0;
  padding: 0;
  line-height: 1;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  width: 100%;
  height: auto;
}
.p-gNavSP .p-gNavSP__item a, .p-gNavSP .menu-item a {
  position: relative;
  font-size: 16px;
  line-height: 1.25;
  color: #000;
  white-space: nowrap;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  display: block;
  line-height: 1;
  font-size: 1.4rem;
  font-weight: bold;
  height: auto;
  padding: 18.5px 0 18.5px 53px;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  background: none;
  color: #fff;
}
.p-gNavSP .p-gNavSP__item a:before, .p-gNavSP .menu-item a:before {
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 0;
  height: 1px;
  content: "";
  background: #000;
  -webkit-transition: width 0.4s;
  transition: width 0.4s;
}
.p-gNavSP .p-gNavSP__item a:hover, .p-gNavSP .menu-item a:hover {
  opacity: 1;
  font-weight: bold;
}
.p-gNavSP .p-gNavSP__item a span, .p-gNavSP .menu-item a span {
  position: relative;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
.p-gNavSP .p-gNavSP__item a:hover, .p-gNavSP .menu-item a:hover {
  text-decoration: none;
}
@media screen and (max-width: 997.98px) {
  .p-gNavSP .p-gNavSP__item a:hover, .p-gNavSP .menu-item a:hover {
    background: none;
    color: #fff;
  }
  .p-gNavSP .p-gNavSP__item a:hover:before, .p-gNavSP .menu-item a:hover:before {
    right: 5px;
  }
}
.p-gNavSP .p-gNavSP__item a:hover span:before, .p-gNavSP .menu-item a:hover span:before {
  background-image: url(../../_assets/img/common/icon_arrow_up_b.svg);
}
body.scrolled .p-gNavSP .p-gNavSP__item.-info a:before, body.scrolled .p-gNavSP .menu-item.-info a:before {
  background-image: url(../../_assets/img/common/icon_tel_red.svg);
}
.p-gNavSP.open {
  width: 100vw;
  height: 100vh;
  overflow: auto;
}
.p-gNavSP.open .p-gNavSP__langList {
  display: none;
}
.p-gNavSP.open .p-gNavSP__list, .p-gNavSP.open .menu {
  display: block;
  visibility: visible;
  right: 0;
}
.p-gNavSP.open .burger__text {
  position: absolute;
  right: -170px;
}

@media screen and (max-width: 997.98px) {
  .p-gNavSP {
    display: block;
  }
}
.burger {
  cursor: pointer;
  border: none;
  z-index: 1000;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 100px;
  height: 100px;
  background: #196EB4;
  display: none;
}
@media screen and (max-width: 997.98px) {
  .burger {
    display: block;
    background: none;
    width: 62px;
    height: 62px;
  }
}
.burger:focus {
  outline: none;
  background: #196EB4;
}
@media screen and (max-width: 997.98px) {
  .burger:focus {
    background: none;
  }
}
.burger .burger__text {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  top: 58%;
  font-family: Helvetica;
  font-size: 1rem;
  color: #142d43;
}
.burger.open {
  background: none;
  top: 0;
  right: 0;
}
.burger.open .burger__text {
  color: #fff;
}
.burger .x,
.burger .y,
.burger .z {
  position: absolute;
  top: 0px;
  left: 30px;
  margin: 0;
  height: 2px;
  width: 38px;
  background: #fff;
  -webkit-transition: all 200ms ease-out;
  transition: all 200ms ease-out;
}
@media screen and (max-width: 997.98px) {
  .burger .x,
.burger .y,
.burger .z {
    background: #CA8428;
    width: 20px;
    left: 23px;
  }
}
.burger .y {
  left: 36px;
}
@media screen and (max-width: 997.98px) {
  .burger .y {
    left: 23px;
  }
}
@media screen and (max-width: 997.98px) {
  .burger .z {
    width: 12px;
  }
}
.burger .x {
  top: 38px;
}
@media screen and (max-width: 767.98px) {
  .burger .x {
    top: 18px;
  }
}
.burger .y {
  top: 48px;
}
@media screen and (max-width: 767.98px) {
  .burger .y {
    top: 26px;
  }
}
.burger .z {
  top: 58px;
}
@media screen and (max-width: 767.98px) {
  .burger .z {
    top: 34px;
  }
}
.burger .collapse {
  top: 30px;
  left: 31%;
  -webkit-transition: all 70ms ease-out;
  transition: all 70ms ease-out;
  background: #fff;
}
@media screen and (max-width: 767.98px) {
  .burger .collapse {
    top: 20px;
    left: 26%;
  }
}
@media screen and (max-width: 997.98px) {
  .burger .collapse.z {
    width: 20px;
  }
}
.burger .rotate30 {
  -webkit-transform: rotate(30deg);
          transform: rotate(30deg);
  -webkit-transition: all 50ms ease-out;
  transition: all 50ms ease-out;
}
.burger .rotate150 {
  -webkit-transform: rotate(150deg);
          transform: rotate(150deg);
  -webkit-transition: all 50ms ease-out;
  transition: all 50ms ease-out;
}
.burger .rotate45 {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transition: all 100ms ease-out;
  transition: all 100ms ease-out;
}
.burger .rotate135 {
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
  -webkit-transition: all 100ms ease-out;
  transition: all 100ms ease-out;
}
.burger .navbar {
  height: 73px;
  background: #385e97;
}
.burger:hover .y {
  left: 42px;
}
@media screen and (max-width: 997.98px) {
  .burger:hover .y {
    left: 23px;
  }
}

.p-image-box .p-image-box__head {
  width: 100%;
}
.p-image-box .p-image-box__head img {
  width: 100%;
}
.p-image-box .p-image-box__half {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 16px -8px 0;
}
@media screen and (max-width: 767.98px) {
  .p-image-box .p-image-box__half {
    padding: calc((16/375)*100vw) calc((-8/375)*100vw) 0;
  }
}
.p-image-box .p-image-box__half .p-image-box__half-item {
  width: 50%;
  padding: 0 8px;
}
@media screen and (max-width: 767.98px) {
  .p-image-box .p-image-box__half .p-image-box__half-item {
    padding: 0 calc((8/375)*100vw);
  }
}
.p-image-box .p-image-box__half .p-image-box__half-item img {
  width: 100%;
}

.p-grid {
  margin-top: 47px;
}
@media screen and (max-width: 767.98px) {
  .p-grid {
    margin-top: 5.3333333333vw;
  }
}
.p-grid .p-grid__list-sub {
  display: block;
  text-align: center;
}
.p-grid.-half .p-grid__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 -20px;
}
@media screen and (max-width: 767.98px) {
  .p-grid.-half .p-grid__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.p-grid.-half .p-grid__list .p-grid__list-item {
  width: 50%;
  padding: 0 20px;
}
@media screen and (max-width: 767.98px) {
  .p-grid.-half .p-grid__list .p-grid__list-item {
    width: 100%;
  }
}
@media screen and (max-width: 767.98px) {
  .p-grid.-half .p-grid__list .p-grid__list-item:last-child {
    margin-top: 5.3333333333vw;
  }
}
.p-grid.-reverse .p-grid__list {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
@media screen and (max-width: 767.98px) {
  .p-grid.-reverse .p-grid__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
@media screen and (max-width: 767.98px) {
  .p-grid.-reverse .p-grid__list .p-grid__list-item:first-child {
    margin-top: 5.3333333333vw;
  }
}
.p-grid.-triple {
  margin-top: 10px;
}
@media screen and (max-width: 767.98px) {
  .p-grid.-triple {
    margin-top: 5.3333333333vw;
  }
}
.p-grid.-triple .p-grid__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 -14px;
}
@media screen and (max-width: 767.98px) {
  .p-grid.-triple .p-grid__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin: calc((-7/375)*100vw);
  }
}
@media screen and (max-width: 767.98px) {
  .p-grid.-triple .p-grid__list .p-grid__list-item + .p-grid__list-item {
    margin-top: 5.3333333333vw;
  }
}
.p-grid.-triple .p-grid__list .p-grid__list-item {
  width: 33.333%;
  padding: 0 14px;
}
@media screen and (max-width: 767.98px) {
  .p-grid.-triple .p-grid__list .p-grid__list-item {
    width: 100%;
    padding: 0 calc((7/375)*100vw);
    text-align: center;
  }
}
.p-grid .p-grid__text {
  color: #142d43;
  font-size: 14px;
  line-height: 1.8571428571;
}
@media screen and (max-width: 767.98px) {
  .p-grid .p-grid__text {
    font-size: 3.7333333333vw;
    line-height: 1.8571428571;
  }
}
.p-grid .p-grid__dl {
  color: #142d43;
  font-size: 14px;
  line-height: 1.8571428571;
}
@media screen and (max-width: 767.98px) {
  .p-grid .p-grid__dl {
    margin-top: 2.6666666667vw;
    font-size: 3.7333333333vw;
    line-height: 1.8571428571;
  }
}
@media screen and (max-width: 767.98px) {
  .p-grid .p-grid__dl dl + dl {
    margin-top: 2.6666666667vw;
  }
}
.p-grid .p-grid__dl dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.p-grid .p-grid__dl dl dt {
  width: 90px;
}
@media screen and (max-width: 767.98px) {
  .p-grid .p-grid__dl dl dt {
    width: 24vw;
  }
}
.p-grid .p-grid__dl dl dd {
  margin: 0;
  width: auto;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.p-grid .p-grid__image-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 10px;
}
@media screen and (max-width: 767.98px) {
  .p-grid .p-grid__image-wrap {
    margin-top: 5.3333333333vw;
  }
}
.p-grid .p-grid__image-wrap .p-grid__image-item {
  width: 50%;
}
@media screen and (max-width: 767.98px) {
  .p-grid .p-grid__image-wrap .p-grid__image-item {
    text-align: center;
  }
}
.p-grid .p-grid__image-wrap .p-grid__image-item:first-child {
  padding-right: 9px;
}
@media screen and (max-width: 767.98px) {
  .p-grid .p-grid__image-wrap .p-grid__image-item:first-child {
    padding-right: 0;
  }
}
.p-grid .p-grid__image-wrap .p-grid__image-item:last-child {
  padding-left: 9px;
}
@media screen and (max-width: 767.98px) {
  .p-grid .p-grid__image-wrap .p-grid__image-item:last-child {
    padding-left: 0;
  }
}

.p-dl {
  color: #142d43;
  font-size: 14px;
  line-height: 1.8571428571;
}
@media screen and (max-width: 767.98px) {
  .p-dl {
    margin-top: 2.6666666667vw;
    font-size: 3.7333333333vw;
    line-height: 1.8571428571;
  }
}
@media screen and (max-width: 767.98px) {
  .p-dl dl + dl {
    margin-top: 2.6666666667vw;
  }
}
.p-dl dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.p-dl dl dt {
  width: 90px;
}
@media screen and (max-width: 767.98px) {
  .p-dl dl dt {
    width: 24vw;
  }
}
.p-dl dl dd {
  margin: 0;
  width: auto;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.p-link-banner {
  margin-top: 28px;
  padding: 20px 120px 20px 138px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #e3eafe;
}
@media screen and (max-width: 767.98px) {
  .p-link-banner {
    padding: 20px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.p-link-banner .p-link-banner__main {
  width: 386px;
  text-align: center;
}
@media screen and (max-width: 767.98px) {
  .p-link-banner .p-link-banner__main {
    width: 100%;
  }
}
.p-link-banner .p-link-banner__main .p-link-banner__text {
  color: #142d43;
  font-size: 14px;
  line-height: 1.8571428571;
}
@media screen and (max-width: 767.98px) {
  .p-link-banner .p-link-banner__main .p-link-banner__text {
    font-size: 2.6666666667vw;
    line-height: 1;
  }
}
.p-link-banner .p-link-banner__main .p-link-banner__big-text {
  color: #142d43;
  font-size: 18px;
  line-height: 1.4444444444;
  white-space: nowrap;
}
@media screen and (max-width: 767.98px) {
  .p-link-banner .p-link-banner__main .p-link-banner__big-text {
    font-size: 3.2vw;
    line-height: 2.1666666667;
  }
}
.p-link-banner .p-link-banner__btn {
  margin-left: 40px;
  width: 220px;
}
@media screen and (max-width: 767.98px) {
  .p-link-banner .p-link-banner__btn {
    margin-left: 0;
    margin-top: 3.7333333333vw;
  }
}

.p-card01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.p-card01 .p-card01__title {
  margin-top: 12px;
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
  font-size: 15px;
  line-height: 1.6666666667;
  color: #196EB4;
}
@media screen and (max-width: 997.98px) {
  .p-card01 .p-card01__title {
    font-size: 12px;
    line-height: 1.6666666667;
    letter-spacing: 0.008em;
  }
}
.p-card01 .p-card01__meta {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.p-card01 .p-card01__meta .p-card01__data {
  font-size: 15px;
  line-height: 1.2;
  color: #000;
}
@media screen and (max-width: 997.98px) {
  .p-card01 .p-card01__meta .p-card01__data {
    font-size: 12px;
    line-height: 1;
  }
}
.p-card01 .p-card01__meta .p-card01__category {
  min-width: 105px;
  padding: 4px;
  background: #CA8428;
  color: #fff;
  font-size: 14px;
  line-height: 1;
  text-align: center;
  font-family: "Arial", "メイリオ";
}
@media screen and (max-width: 997.98px) {
  .p-card01 .p-card01__meta .p-card01__category {
    min-width: 74px;
    font-size: 12px;
    line-height: 1;
  }
}
.p-card01 .p-card01__image {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  margin-top: 14px;
  width: 100%;
  height: 160px;
}
.p-card01 .p-card01__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  font-family: "object-fit: cover;";
}
@media screen and (max-width: 997.98px) {
  .p-card01 .p-card01__image {
    margin-top: 8px;
  }
}

.p-postbox {
  padding-bottom: 123px;
}
@media screen and (max-width: 767.98px) {
  .p-postbox {
    padding-bottom: 60px;
  }
}
.p-postbox .p-postbox__top {
  padding: 20px;
  background: #5165a2;
}
.p-postbox .p-postbox__contents {
  padding-top: 120px;
}
@media screen and (max-width: 767.98px) {
  .p-postbox .p-postbox__contents {
    padding-top: 60px;
  }
}
.p-postbox .p-postbox__list {
  margin: 54px -23px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (max-width: 767.98px) {
  .p-postbox .p-postbox__list {
    margin: 30px -10px 0;
  }
}
@media screen and (max-width: 767.98px) {
  .p-postbox .p-postbox__list .p-postbox__list-item + .p-postbox__list-item {
    margin-top: 30px;
  }
}
.p-postbox .p-postbox__list .p-postbox__list-item {
  padding: 0 23px;
  width: 33.333%;
}
@media screen and (max-width: 767.98px) {
  .p-postbox .p-postbox__list .p-postbox__list-item {
    width: 100%;
    padding: 0 10px;
  }
}
.p-postbox .p-postbox__list .p-postbox__list-item:nth-child(n+4) {
  margin-top: 44px;
}
@media screen and (max-width: 767.98px) {
  .p-postbox .p-postbox__list .p-postbox__list-item:nth-child(n+4) {
    margin-top: 30px;
  }
}
@media screen and (max-width: 767.98px) {
  .p-postbox .p-postbox__list .p-postbox__list-item:nth-child(n+3) {
    margin-top: 30px;
  }
}
.p-postbox .p-card01__sub {
  width: 100%;
  height: 185px;
}
@media screen and (max-width: 767.98px) {
  .p-postbox .p-card01__sub {
    height: 48vw;
  }
}
.p-postbox .p-card01__sub img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  font-family: "object-fit: cover;";
}

.p-shop .food {
  display: none;
  visibility: hidden;
}

.p-food .shop {
  display: none;
  visibility: hidden;
}

.p-heading-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}
@media screen and (max-width: 997.98px) {
  .p-heading-box {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.p-heading-box.-center {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-heading-box.-center .c-heading01-en {
  color: rgba(238, 238, 238, 0.6);
}
@media screen and (max-width: 997.98px) {
  .p-heading-box.-center .c-heading01-en {
    color: #eeeeee;
  }
}
.p-heading-box.-center .c-heading01-ja {
  color: #fff;
}
@media screen and (max-width: 997.98px) {
  .p-heading-box.-center .c-heading01-ja {
    color: #333;
  }
}
.p-heading-box.-center .c-heading01-ja span:before {
  background-color: #fff;
}
@media screen and (max-width: 997.98px) {
  .p-heading-box.-center .c-heading01-ja span:before {
    background-color: #333;
  }
}
.p-heading-box.-right {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media screen and (max-width: 997.98px) {
  .p-heading-box.-right {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.p-heading-box.-right .c-heading01-en {
  color: #cccbcb;
}
.p-heading-box.-right .c-heading01-ja {
  color: #fff;
}
.p-heading-box.-right .c-heading01-ja span:before {
  background-color: #fff;
}
.p-heading-box.-under .c-heading01-en {
  font-size: 140px;
  line-height: 1.4285714286;
  color: #eee;
  font-weight: 900;
  letter-spacing: 0.01em;
}
.p-heading-box.-under .c-heading01-ja {
  margin-top: -60px;
  font-size: 40px;
  line-height: 1.5;
  letter-spacing: 0.01em;
  font-weight: bold;
}
.p-heading-box.-under .c-heading01-ja span {
  position: relative;
  padding-bottom: 50px;
}
.p-heading-box.-under .c-heading01-ja span:before {
  position: absolute;
  bottom: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 3px;
  background-color: #196EB4;
}
.p-heading-box.-under .c-heading01-ja.-no-gut {
  margin-top: 0;
}

.p-news-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 997.98px) {
  .p-news-block {
    display: block;
  }
}
.p-news-block .p-news-block__main {
  width: 1004px;
}
@media screen and (max-width: 997.98px) {
  .p-news-block .p-news-block__main {
    width: 100%;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
  }
  .p-news-block .p-news-block__main .p-post__list {
    width: 652px;
    padding: 20px 0;
  }
}
.p-news-block .p-news-block__link {
  margin-top: 38px;
  width: 140px;
  margin-left: 20px;
}
@media screen and (max-width: 997.98px) {
  .p-news-block .p-news-block__link {
    margin-top: 22px;
    width: 282px;
    margin-left: auto;
    margin-right: auto;
  }
}

.p-panel-set {
  position: relative;
}
@media screen and (max-width: 997.98px) {
  .p-panel-set {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
.p-panel-set .p-panel-set__main {
  position: absolute;
  top: 200px;
  left: 0;
  width: 760px;
  height: 365px;
  padding-top: 106px;
  padding-left: 120px;
  padding-right: 120px;
  background: #fff;
  z-index: 10;
}
@media screen and (max-width: 997.98px) {
  .p-panel-set .p-panel-set__main {
    position: static;
    width: calc(100% - 60px);
    height: auto;
    margin: -30px auto 0;
    background: #fff;
    z-index: 10;
    padding: 30px 40px;
  }
}
@media screen and (max-width: 997.98px) and (max-width: 767.98px) {
  .p-panel-set .p-panel-set__main {
    width: 315px;
  }
}
.p-panel-set .p-panel-set__main .c-blue-heading {
  white-space: nowrap;
}
.p-panel-set.-reverse .p-panel-set__main {
  left: auto;
  right: 0;
  width: 753px;
}
@media screen and (max-width: 997.98px) {
  .p-panel-set.-reverse .p-panel-set__main {
    width: calc(100% - 60px);
  }
}
@media screen and (max-width: 997.98px) and (max-width: 767.98px) {
  .p-panel-set.-reverse .p-panel-set__main {
    width: 315px;
  }
}
.p-panel-set.-reverse .p-panel-set__sub {
  text-align: left;
}
.p-panel-set .p-panel-set__sub {
  text-align: right;
}
.p-panel-set .p-panel-set__text {
  margin-top: 20px;
  font-size: 15px;
  line-height: 1.6;
  letter-spacing: 0.006em;
}
@media screen and (max-width: 997.98px) {
  .p-panel-set .p-panel-set__text {
    font-size: 14px;
    line-height: 1.7142857143;
  }
}

.p-panel-set + .p-panel-set {
  margin-top: 196px;
}
@media screen and (max-width: 997.98px) {
  .p-panel-set + .p-panel-set {
    margin-top: 60px;
  }
}

.p-panel-full {
  position: relative;
  margin-top: 190px;
  padding-top: 430px;
}
@media screen and (max-width: 997.98px) {
  .p-panel-full {
    margin-top: 80px;
    padding-top: 140px;
  }
}
.p-panel-full.-gut-light {
  margin-top: 100px;
}
.p-panel-full:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 652px;
  content: "";
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-image: url(../../_assets/img/index/p-panel-full_image.jpg);
}
@media screen and (max-width: 997.98px) {
  .p-panel-full:before {
    height: 105.3333333333vw;
  }
}
.p-panel-full .p-panel-full__contents {
  position: relative;
  padding: 84px 58px 0;
  z-index: 3;
}
@media screen and (max-width: 997.98px) {
  .p-panel-full .p-panel-full__contents {
    background: #fff;
    padding: 34px 27px;
  }
}
.p-panel-full .p-panel-full__contents:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 300px;
  content: "";
  background: #fff;
  z-index: -1;
}
@media screen and (max-width: 997.98px) {
  .p-panel-full .p-panel-full__contents:before {
    display: none;
  }
}
.p-panel-full .p-panel-full__contents .p-panel-full__image {
  position: absolute;
  top: -210px;
  left: -120px;
  width: 700px;
  height: 411px;
}
@media screen and (max-width: 997.98px) {
  .p-panel-full .p-panel-full__contents .p-panel-full__image {
    top: -100px;
    left: 0;
    width: 273px;
    height: 122px;
  }
}
.p-panel-full .p-panel-full__contents .p-panel-full__image img {
  display: block;
}
.p-panel-full .p-panel-full__contents .p-panel-full__grid {
  margin-top: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 997.98px) {
  .p-panel-full .p-panel-full__contents .p-panel-full__grid {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 0;
  }
}
.p-panel-full .p-panel-full__contents .p-panel-full__grid .p-panel-full__grid-item {
  width: 475px;
}
@media screen and (max-width: 997.98px) {
  .p-panel-full .p-panel-full__contents .p-panel-full__grid .p-panel-full__grid-item {
    width: 100%;
  }
}
.p-panel-full .p-panel-full__contents .p-panel-full__grid .p-panel-full__grid-item:first-child {
  padding-top: 37px;
}
@media screen and (max-width: 997.98px) {
  .p-panel-full .p-panel-full__contents .p-panel-full__grid .p-panel-full__grid-item:first-child {
    padding-top: 0;
  }
}
.p-panel-full .p-panel-full__contents .p-panel-full__grid .p-panel-full__grid-item:last-child {
  margin-left: 20px;
}
@media screen and (max-width: 997.98px) {
  .p-panel-full .p-panel-full__contents .p-panel-full__grid .p-panel-full__grid-item:last-child {
    margin-top: 60px;
    margin-left: 0;
  }
}
.p-panel-full .p-panel-full__contents .p-panel-full__grid .p-panel-full__grid-item p {
  margin-top: 30px;
  font-size: 16px;
  line-height: 1.875;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 997.98px) {
  .p-panel-full .p-panel-full__contents .p-panel-full__grid .p-panel-full__grid-item p {
    margin-top: 20px;
    font-size: 12px;
    line-height: 1.6666666667;
  }
}

.p-mark {
  margin-top: 32px;
  text-align: center;
}
@media screen and (max-width: 997.98px) {
  .p-mark img {
    width: 130px;
  }
}

.p-under-page {
  padding: 200px 0 0;
}
@media screen and (max-width: 997.98px) {
  .p-under-page {
    padding: 60px 0 0;
  }
}

.p-contact {
  position: relative;
  padding: 95px 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-image: url(../../_assets/img/index-new/top-career.webp);
  color: #fff;
  z-index: 1;
}
.p-contact:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  background: rgba(0, 0, 0, 0.5);
  z-index: -1;
}
@media screen and (max-width: 997.98px) {
  .p-contact {
    padding: 80px 0 68px;
    background-image: url(../../_assets/img/index/p-contact_bg_sp.jpg);
  }
}
.p-contact .p-contact__text {
  margin-top: 36px;
  text-align: center;
  font-size: 20px;
  line-height: 1.7;
  letter-spacing: 0.0012em;
}
@media screen and (max-width: 997.98px) {
  .p-contact .p-contact__text {
    font-size: 14px;
    line-height: 2.4285714286;
  }
}
.p-contact .p-contact__link {
  margin-top: 36px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 997.98px) {
  .p-contact .p-contact__link {
    margin-top: 50px;
  }
}

#goTop a {
  position: fixed;
  right: 20px;
  bottom: 20px;
  width: 70px;
  height: 70px;
  z-index: 5000;
}
@media screen and (max-width: 997.98px) {
  #goTop a {
    bottom: 50px;
    width: 40px;
    height: 40px;
  }
}

.p-single {
  padding: 100px 0;
}
.p-single .p-single__content h3 {
  font-size: 22px;
  line-height: 1.4545454545;
}
.p-single .p-single__content p + .wp-block-image {
  margin-top: 20px;
}

.pagelink {
  margin-top: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.pagelink li {
  margin-left: 20px;
}

.paging-box {
  margin-top: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.paging-box .wp-pagenavi a, .paging-box .wp-pagenavi span {
  border: 1px solid #196EB4;
  padding: 3px 10px;
}
.paging-box .wp-pagenavi span.current {
  background: #196EB4;
  color: #fff;
}
.paging-box .wp-pagenavi span.pages {
  border: none;
}
.paging-box .wp-pagenavi a.nextpostslink, .paging-box .wp-pagenavi a.previouspostslink {
  border: none;
}

.p-bg-blue {
  margin-top: 60px;
  background: #196EB4;
  padding: 100px 0;
  color: #fff;
}
.p-bg-blue .p-bg-blue__text {
  margin-top: 20px;
  font-size: 16px;
  line-height: 1.75;
  text-align: center;
}
body .js-slide-box .p-bg-blue {
  background: #196EB4;
  color: #fff;
}

.p-custom .wp-block-image {
  margin-top: 40px;
}
.p-custom h2, .p-custom h3 {
  padding: 10px 20px;
  font-size: 20px;
  line-height: 1.6;
  background: #196EB4;
  color: #fff;
}
.p-custom h2 + p,
.p-custom h3 + p,
.p-custom h4 + p,
.p-custom h5 + p,
.p-custom .wp-block-heading + .wp-block-embed,
.p-custom .wp-block-embed + p {
  margin-top: 20px;
}
.p-custom p + h2,
.p-custom p + h3,
.p-custom p + h4 {
  margin-top: 40px;
}
.p-custom p + p {
  margin-top: 24px;
}
.p-custom h4 {
  margin-top: 10px;
}
.p-custom .wp-block-image {
  margin-top: 40px;
}

.wp-block-image {
  margin-top: 40px;
}

.p-data-dl {
  margin: 40px 0;
}
.p-data-dl.type02 dl dt {
  background: var(--color-second);
}
.p-data-dl dl + dl {
  margin-top: 14px;
}
@media screen and (max-width: 997.98px) {
  .p-data-dl dl + dl {
    margin-top: 0;
  }
}
.p-data-dl dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 997.98px) {
  .p-data-dl dl {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.p-data-dl dl dt {
  width: 160px;
  background: #196EB4;
  color: #fff;
  text-align: center;
  padding: 16px;
}
@media screen and (max-width: 997.98px) {
  .p-data-dl dl dt {
    width: 100%;
    padding: 4px;
  }
}
.p-data-dl dl dd {
  width: auto;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding: 16px;
  margin: 0;
  background: rgba(25, 110, 180, 0.1);
}
@media screen and (max-width: 997.98px) {
  .p-data-dl dl dd {
    width: 100%;
    padding: 10px;
  }
}

.p-from-bottom {
  margin-top: 40px;
  text-align: center;
}
.p-from-bottom a .cRed {
  color: red;
}

.p-check-box {
  display: block;
}
.p-check-box .p-check-box__main {
  position: relative;
}
.p-check-box .p-check-box__main:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  opacity: 0.5;
  content: "";
}
.p-check-box.is-check .p-check-box__main:before {
  display: none;
}

.page-partner-form-to .p-check-box .p-check-box__head {
  display: none;
}
.page-partner-form-to .p-check-box .p-check-box__main:before {
  display: none;
}
.page-partner-form-to .p-from-bottom__text {
  display: none;
}

.p-banner-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.p-banner-box .p-banner-box__main {
  width: auto;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding-left: 14px;
}
.p-banner-box .p-banner-box__main .p-banner-box__title {
  font-size: 18px;
  line-height: 1.3333333333;
}
@media screen and (max-width: 997.98px) {
  .p-banner-box .p-banner-box__main .p-banner-box__title {
    font-size: 16px;
    line-height: 1.25;
    text-align: left;
  }
}
.p-banner-box .p-banner-box__main p {
  font-size: 12px;
  line-height: 1.8333333333;
  text-align: left;
  color: #000;
}
.p-banner-box .p-banner-box__sub {
  width: 90px;
}
@media screen and (max-width: 997.98px) {
  .p-banner-box .p-banner-box__sub {
    width: 40px;
  }
}

.top-news .top-news__area {
  padding-top: 126px;
}
@media screen and (max-width: 997.98px) {
  .top-news .top-news__area {
    padding-top: 45px;
  }
}
.top-news .top-news__title {
  position: absolute;
  top: 46px;
  left: 0;
  width: 270px;
  height: 81px;
}
@media screen and (max-width: 997.98px) {
  .top-news .top-news__title {
    position: static;
    width: 130px;
    height: auto;
  }
}
.top-news .top-news__title img {
  width: 100%;
  display: block;
}

@media screen and (max-width: 997.98px) {
  .p-post {
    margin-top: 22px;
  }
}
.p-post .p-post__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 -15px;
}
@media screen and (max-width: 997.98px) {
  .p-post .p-post__list {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
.p-post .p-post__list .p-post__list-item {
  width: 33.333%;
  padding: 0 15px;
}
@media screen and (max-width: 997.98px) {
  .p-post .p-post__list .p-post__list-item {
    width: 202px;
  }
}
@media screen and (max-width: 997.98px) {
  .p-post .p-post__list.-sp-100p {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .p-post .p-post__list.-sp-100p .p-post__list-item {
    width: 50%;
  }
  .p-post .p-post__list.-sp-100p .p-post__list-item:nth-child(n+3) {
    margin-top: 20px;
  }
}

.top-message {
  margin-top: 3.9583333333vw;
  padding-top: 8.75vw;
  padding-bottom: 8.75vw;
}
.top-message .top-message__inner {
  position: relative;
  background: #196EB4;
}
.top-message .top-message__inner:before {
  position: absolute;
  top: calc((-124/1440)*100vw);
  left: 0;
  content: "";
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-image: url(../../_assets/img/index/top-message_bg_before.svg);
  width: 100%;
  height: 8.75vw;
}
.top-message .top-message__inner:after {
  position: absolute;
  bottom: calc((-124/1440)*100vw);
  left: 0;
  content: "";
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-image: url(../../_assets/img/index/top-message_bg_after.svg);
  width: 100%;
  height: 8.75vw;
}
.top-message .top-message__contents {
  position: relative;
  padding-bottom: 100px;
  color: #fff;
  z-index: 3;
}
@media screen and (max-width: 997.98px) {
  .top-message .top-message__contents {
    padding-bottom: 0;
  }
}
.top-message .top-message__contents .top-message__main {
  width: 680px;
  padding-left: 26px;
  padding-top: 110px;
}
@media screen and (max-width: 997.98px) {
  .top-message .top-message__contents .top-message__main {
    width: 100%;
    padding-top: 20px;
  }
}
.top-message .top-message__contents .top-message__main .top-message__title {
  font-size: 37px;
  line-height: 1.6216216216;
  letter-spacing: 0.012em;
}
@media screen and (max-width: 997.98px) {
  .top-message .top-message__contents .top-message__main .top-message__title {
    font-size: 18px;
    line-height: 1.8888888889;
  }
}
.top-message .top-message__contents .top-message__main .top-message__text {
  position: relative;
  z-index: 4;
  margin-top: 50px;
  font-size: 20px;
  line-height: 2.15;
  letter-spacing: 0.006em;
}
@media screen and (max-width: 997.98px) {
  .top-message .top-message__contents .top-message__main .top-message__text {
    margin-top: 22px;
    font-size: 14px;
    line-height: 1.8571428571;
  }
}
.top-message .top-message__contents .top-message__image {
  position: absolute;
  top: -80px;
  right: 0;
  width: 565px;
  height: 597px;
  z-index: 100;
}
@media screen and (max-width: 997.98px) {
  .top-message .top-message__contents .top-message__image {
    position: static;
    width: 100%;
    height: auto;
    margin: -150px auto 0;
    z-index: -1;
  }
}
.top-message .top-message__contents .top-message__image img {
  display: block;
  width: 100%;
}

.top-business {
  position: relative;
  z-index: 10;
  padding-top: 70px;
}
@media screen and (max-width: 997.98px) {
  .top-business {
    padding-top: 30px;
  }
}
.top-business .top-business__contents {
  margin-top: 84px;
}
@media screen and (max-width: 997.98px) {
  .top-business .top-business__contents {
    margin-top: 47px;
  }
}

.top-engineer {
  position: relative;
  z-index: 3;
  margin-top: -5.5555555556vw;
  padding-top: 21.9444444444vw;
  color: #fff;
  height: 95.4861111111vw;
}
@media screen and (max-width: 997.98px) {
  .top-engineer {
    margin-top: 10.6666666667vw;
    padding-top: 40px;
    z-index: 10;
    height: auto;
    background: #196EB4;
  }
}
.top-engineer .c-center-heading {
  font-size: 1.875vw;
  line-height: 1.7407407407;
}
@media screen and (max-width: 997.98px) {
  .top-engineer .c-center-heading {
    font-size: 18px;
    line-height: 1.5555555556;
  }
}
.top-engineer .l-wrapper {
  max-width: calc((1200/1440)*100vw);
}
.top-engineer:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  width: 100%;
  height: 95.4861111111vw;
  background-image: url(../../_assets/img/index/top-engineer_bg_before.svg);
  z-index: -1;
}
@media screen and (max-width: 997.98px) {
  .top-engineer:before {
    top: calc((-51/375)*100vw);
    height: 13.8666666667vw;
    background-image: url(../../_assets/img/index/top-engineer_bg_before_sp.svg);
  }
}
.top-engineer:after {
  position: absolute;
  top: calc((-63/1440)*100vw);
  left: 0;
  content: "";
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  width: 100%;
  height: 94.4444444444vw;
  background-image: url(../../_assets/img/index/top-engineer_bg_after.svg);
  z-index: -2;
}
@media screen and (max-width: 997.98px) {
  .top-engineer:after {
    top: auto;
    bottom: calc((-53/375)*100vw);
    height: 14.6666666667vw;
    background-image: url(../../_assets/img/index/top-engineer_bg_after_sp.svg);
  }
}
.top-engineer .top-engineer__text {
  margin-top: 2.0833333333vw;
  text-align: center;
  font-size: 15px;
  line-height: 1.8666666667;
  font-size: 1.0416666667vw;
  line-height: 1.8666666667;
  letter-spacing: 0.022em;
}
@media screen and (max-width: 997.98px) {
  .top-engineer .top-engineer__text {
    font-size: 12px;
    line-height: 1.8333333333;
  }
}
.top-engineer .top-engineer__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 76px;
  margin-top: 5.2777777778vw;
}
@media screen and (max-width: 997.98px) {
  .top-engineer .top-engineer__list {
    margin-top: 40px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.top-engineer .top-engineer__list.-short {
  margin-top: 2.0833333333vw;
}
@media screen and (max-width: 997.98px) {
  .top-engineer .top-engineer__list.-short {
    margin-top: 40px;
  }
}
.top-engineer .top-engineer__list .top-engineer__list-item {
  width: 50%;
}
@media screen and (max-width: 997.98px) {
  .top-engineer .top-engineer__list .top-engineer__list-item {
    width: 100%;
  }
}
.top-engineer .top-engineer__list .top-engineer__list-item .top-engineer__link {
  display: block;
  position: relative;
}
.top-engineer .top-engineer__list .top-engineer__list-item .top-engineer__link img {
  width: 100%;
}
.top-engineer .top-engineer__list .top-engineer__list-item .top-engineer__link .center {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
          transform: translateY(-50%) translateX(-50%);
  font-size: 1.875vw;
  line-height: 1.1851851852;
  color: #fff;
  font-weight: bold;
}
@media screen and (max-width: 767.98px) {
  .top-engineer .top-engineer__list .top-engineer__list-item .top-engineer__link .center {
    font-size: 16px;
    line-height: 1.5;
  }
}
.top-engineer .top-engineer__list .top-engineer__list-item .top-engineer__link .title {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
          transform: translateY(-50%) translateX(-50%);
  width: 394px;
  height: 82px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 27px;
  line-height: 1;
  color: #fff;
  border: 2px solid #fff;
  width: 27.3611111111vw;
  height: 5.6944444444vw;
  font-size: 1.875vw;
  line-height: 1;
}
@media screen and (max-width: 767.98px) {
  .top-engineer .top-engineer__list .top-engineer__list-item .top-engineer__link .title {
    width: 227px;
    height: 46px;
    font-size: 16px;
    line-height: 1;
  }
}

.top-company {
  padding-top: 80px;
  padding-bottom: 224px;
}
@media screen and (max-width: 997.98px) {
  .top-company {
    padding-top: 21.3333333333vw;
    padding-bottom: 30px;
  }
}
.top-company .top-company__contents {
  position: relative;
  max-width: 1018px;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 997.98px) {
  .top-company .top-company__contents {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.top-company .top-company__contents .top-company__item + .top-company__item {
  margin-top: 160px;
}
@media screen and (max-width: 997.98px) {
  .top-company .top-company__contents .top-company__item + .top-company__item {
    margin-top: 40px;
  }
}
.top-company .top-company__contents .top-company__item {
  position: relative;
}
@media screen and (max-width: 997.98px) {
  .top-company .top-company__contents .top-company__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
.top-company .top-company__contents .top-company__place {
  position: absolute;
  bottom: -90px;
  right: -30px;
  z-index: 200;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 518px;
  height: 220px;
  padding: 40px;
  background: #fff;
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}
@media screen and (max-width: 997.98px) {
  .top-company .top-company__contents .top-company__place {
    position: static;
    width: 100%;
    height: auto;
    -webkit-box-shadow: none;
            box-shadow: none;
    padding: 15px;
  }
}
.top-company .top-company__contents .top-company__place .top-company__place-item {
  padding: 20px 0 20px 26px;
  border-left: 1px solid #000;
  font-size: 17px;
  line-height: 1.8235294118;
  letter-spacing: 0.0012em;
  font-weight: 500;
}
@media screen and (max-width: 997.98px) {
  .top-company .top-company__contents .top-company__place .top-company__place-item {
    padding: 0;
    border: none;
    font-size: 14px;
    line-height: 2.2142857143;
  }
}
.top-company .top-company__map {
  position: relative;
  width: 100%;
  margin-top: 57px;
  padding-top: 60%;
}
@media screen and (max-width: 997.98px) {
  .top-company .top-company__map {
    margin-top: 0;
  }
}
.top-company .top-company__map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

a.icon-map {
  background: #196EB4;
  color: #fff;
  padding: 0 8px;
}

#tokyo, #osaka, #hakata {
  margin-top: -100px;
  padding-top: 200px;
}

.p-recruitment-group .p-recruitment-group__title {
  font-size: 20px;
  line-height: 1;
}
.p-recruitment-group .p-recruitment-group__list {
  margin-top: 40px;
}
.p-recruitment-group .p-recruitment-group__item + .p-recruitment-group__item {
  margin-top: 14px;
}
.p-recruitment-group .p-recruitment-group__contents {
  margin-top: 60px;
}
.p-recruitment-group .p-recruitment-group__link {
  margin: 60px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.p-recruitment .p-recruitment__list {
  margin-top: 40px;
}
.p-recruitment .p-recruitment__list .p-recruitment__item + .p-recruitment__item {
  margin-top: 60px;
}
.p-recruitment .p-recruitment__link {
  margin: 60px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.c-no-post {
  padding: 0 10px;
}

#shutter-overlay {
  position: fixed;
  inset: 0;
  /* top:0; right:0; bottom:0; left:0; と同じ */
  z-index: 9999;
  pointer-events: auto;
}

#shutter-overlay .shutter {
  position: absolute;
  left: 0;
  width: 100%;
  background: #196EB4;
  /* シャッターの色。ブランドカラーに変更可 */
}

/* 上側のシャッター */
#shutter-overlay .shutter--top {
  top: 0;
  height: 50vh;
}

/* 下側のシャッター */
#shutter-overlay .shutter--bottom {
  bottom: 0;
  height: 50vh;
}

#shutter-overlay.is-hidden {
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
}

#shutter-overlay .shutter-logo {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 10;
  opacity: 0;
}
#shutter-overlay .shutter-logo img {
  display: block;
  width: 100px;
  height: auto;
}
@media screen and (max-width: 997.98px) {
  #shutter-overlay .shutter-logo img {
    width: 150px;
  }
}

.p-main-visual {
  /* fallback */
  min-height: 500px;
  height: 100vh;
  /* modern viewport units（対応ブラウザではこちらが優先される） */
  height: 100svh;
  /* アドレスバー込みで安定しやすい */
  height: 100dvh;
  /* 動的に変化するUIに追従（好みで） */
  /* 固定800pxだとSPで大きすぎるので可変に */
  min-height: clamp(520px, 80vh, 900px);
  position: relative;
  overflow: hidden;
  background: #000;
  /* 読み込み中や余白が出た時の保険（任意） */
}
.p-main-visual .p-main-visual__image {
  position: absolute;
  inset: 0;
}
.p-main-visual .p-main-visual__image img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  /* 重要：トリミングの基準点 */
}

.p-index {
  padding-block: 100px;
}
@media screen and (max-width: 997.98px) {
  .p-index {
    padding-block: 60px;
  }
}

.p-panel01a + .p-panel01a {
  margin-top: 120px;
}
@media screen and (max-width: 997.98px) {
  .p-panel01a + .p-panel01a {
    margin-top: 60px;
  }
}

.p-panel01a {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 60px 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 60px;
}
.p-panel01a .p-panel01a__main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 997.98px) {
  .p-panel01a {
    -ms-grid-columns: 100%;
    grid-template-columns: 100%;
    gap: 14px 0;
    -ms-grid-rows: auto 14px auto 14px auto 14px auto;
        grid-template-areas: "title" "image" "textarea" "link";
  }
  .p-panel01a .p-panel01a__main {
    display: contents;
  }
  .p-panel01a .p-set01a {
    display: contents;
  }
  .p-panel01a .p-set01a .c-heading001-en {
    grid-area: title;
  }
  .p-panel01a .p-set01a .p-text01a {
    grid-area: textarea;
  }
}
@media screen and (max-width: 997.98px) and (max-width: 997.98px) {
  .p-panel01a .p-set01a .p-text01a {
    margin-top: 0;
  }
}
@media screen and (max-width: 997.98px) {
  .p-panel01a .p-set01a .p-link01a {
    grid-area: link;
  }
}
@media screen and (max-width: 997.98px) and (max-width: 997.98px) {
  .p-panel01a .p-set01a .p-link01a {
    margin-top: 12px;
  }
}
@media screen and (max-width: 997.98px) {
  .p-panel01a .p-panel01a__sub {
    grid-area: image;
  }
}
.p-panel01a.-reverse {
      grid-template-areas: "image text";
}
@media screen and (max-width: 997.98px) {
  .p-panel01a.-reverse {
    -ms-grid-columns: 100%;
    grid-template-columns: 100%;
    gap: 14px 0;
    -ms-grid-rows: auto 14px auto 14px auto 14px auto;
        grid-template-areas: "title" "image" "textarea" "link";
  }
  .p-panel01a .p-set01a .c-heading001-en {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-panel01a .p-set01a .p-text01a {
    -ms-grid-row: 5;
    -ms-grid-column: 1;
  }
  .p-panel01a .p-set01a .p-link01a {
    -ms-grid-row: 7;
    -ms-grid-column: 1;
  }
  .p-panel01a.-reverse > .p-panel01a__sub {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
}
.p-panel01a.-reverse .p-panel01a__main {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
  grid-area: text;
}
.p-panel01a.-reverse .p-panel01a__sub {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: image;
}
@media screen and (max-width: 997.98px){
  .p-panel01a .p-set01a .c-heading001-en {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-panel01a .p-set01a .p-text01a {
    -ms-grid-row: 5;
    -ms-grid-column: 1;
  }
  .p-panel01a .p-set01a .p-link01a {
    -ms-grid-row: 7;
    -ms-grid-column: 1;
  }
  .p-panel01a .p-panel01a__sub {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
  .p-panel01a.-reverse .p-panel01a__sub {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
  .p-panel01a.-reverse > .p-panel01a__sub {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
}

.c-heading001-en {
  font-size: 50px;
  line-height: 1;
  letter-spacing: 0.01em;
  font-family: "Josefin Sans", sans-serif;
  font-weight: bold;
  color: #196EB4;
}
@media screen and (max-width: 997.98px) {
  .c-heading001-en {
    font-size: 32px;
  }
}
.c-heading001-en.-white {
  color: #fff;
}

.c-heading001-ja {
  font-size: 30px;
  line-height: 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  color: #196EB4;
}
@media screen and (max-width: 997.98px) {
  .c-heading001-ja {
    font-size: 24px;
  }
}
.c-heading001-ja.-white {
  color: #fff;
}

.p-text01a p {
  font-size: 16px;
  line-height: 1.75;
}

.c-heading001-en + .p-text01a,
.c-heading001-ja + .p-text01a {
  margin-top: 12px;
}

.p-text01a + .p-link01a {
  margin-top: 24px;
}

.p-link01a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

a.c-btn01a {
  position: relative;
  display: inline-block;
  padding: 4px 42px;
  background: #196EB4;
  color: #fff;
  font-size: 16px;
  line-height: 2;
  font-family: "Josefin Sans", sans-serif;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
a.c-btn01a:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 10px 0 0;
  border-color: #fff transparent transparent transparent;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
a.c-btn01a:after {
  position: absolute;
  bottom: 0;
  right: 0;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 10px 10px;
  border-color: transparent transparent #fff transparent;
}
a.c-btn01a:hover {
  opacity: 1;
  background: #2c9af4;
}
a.c-btn01a:hover span {
  -webkit-transform: rotateX(360deg);
          transform: rotateX(360deg);
}
a.c-btn01a span {
  display: inline-block;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.p-full-sec001a {
  margin-top: 200px;
  position: relative;
  padding-top: 100px;
  z-index: 1;
}
@media screen and (max-width: 997.98px) {
  .p-full-sec001a {
    margin-top: 60px;
    padding-top: 30px;
  }
}
.p-full-sec001a:before {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  content: "";
  width: 100%;
  height: 400px;
  background: #196EB4;
  z-index: -1;
}
@media screen and (max-width: 997.98px) {
  .p-full-sec001a:before {
    height: 53.3333333333vw;
  }
}
.p-full-sec001a .p-full-sec001a__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.p-full-sec001a .p-full-sec001a__contents {
  margin-top: 60px;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 60px 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: 60px;
}
@media screen and (max-width: 997.98px) {
  .p-full-sec001a .p-full-sec001a__contents {
    margin-top: 40px;
    -ms-grid-columns: 100%;
    grid-template-columns: 100%;
    gap: 60px;
  }
}

.p-card01a a.p-card01a__image {
  display: block;
  height: 333.333px;
  overflow: hidden;
}
.p-card01a a.p-card01a__image:hover img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}
.p-card01a a.p-card01a__image img {
  display: block;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
.p-card01a .p-card01a__main {
  margin-top: 24px;
}
@media screen and (max-width: 997.98px) {
  .p-card01a .p-card01a__main {
    margin-top: 12px;
  }
}
.p-card01a .p-card01a__main .p-card01a__title {
  text-align: center;
  font-size: 24px;
  line-height: 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  color: #196EB4;
}
.p-card01a .p-card01a__main .p-card01a__text {
  margin-top: 12px;
}
.p-card01a .p-card01a__main .p-card01a__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 20px;
}

.p-parallax {
  margin-top: 80px;
  margin-bottom: 60px;
  height: 300px;
  position: relative;
  background-image: url(../../_assets/img/index-new/parallax.webp);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
}
@media screen and (max-width: 997.98px) {
  .p-parallax {
    background-attachment: scroll;
    margin-bottom: 0;
  }
}
.p-parallax span {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  background: rgba(0, 0, 0, 0.5);
}

.index-info001 {
  margin-top: 140px;
  margin-bottom: 100px;
}
@media screen and (max-width: 997.98px) {
  .index-info001 {
    margin-top: 100px;
    margin-bottom: 60px;
  }
}
.index-info001 .index-info001__title {
  text-align: center;
}
.index-info001 .index-info001__contents {
  margin-top: 40px;
}
@media screen and (max-width: 997.98px) {
  .index-info001 .index-info001__contents {
    margin-top: 30px;
  }
}

.p-post001 .p-post001__list li {
  border-top: 1px solid #eee;
}
.p-post001 .p-post001__list li:last-child {
  border-bottom: 1px solid #eee;
}
.p-post001 .p-post001__list li a.p-post-card001 {
  display: -ms-grid;
  display: grid;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-grid-columns: 100px 20px auto;
  grid-template-columns: 100px auto;
  gap: 0 20px;
  padding: 14px 0;
}
@media screen and (max-width: 997.98px) {
  .p-post001 .p-post001__list li a.p-post-card001 {
    -ms-grid-columns: 100%;
    grid-template-columns: 100%;
    gap: 10px;
  }
}
.p-post001 .p-post001__list li a.p-post-card001 .p-post-card001__date {
  font-size: 14px;
  line-height: 1;
}
.p-post001 .p-post001__list li a.p-post-card001 .p-post-card001__title {
  font-size: 15px;
  line-height: 1.6;
}
.p-post001 .p-post001__link {
  margin-top: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 997.98px) {
  .p-post001 .p-post001__link {
    margin-top: 30px;
  }
}

.c-anchor {
  margin-top: -160px;
  padding-top: 160px;
}

[data-scroll-trigger=mask] {
  position: relative;
  overflow: hidden;
}

[data-scroll-trigger=mask] img {
  -webkit-mask-image: url(../../_assets/img/common/mask.webp);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: auto 200%;
  -webkit-mask-position: center bottom;
  z-index: 0;
  mask-image: url(../../_assets/img/common/mask.webp);
  mask-mode: alpha;
  mask-position: center bottom;
  mask-repeat: no-repeat;
  mask-size: auto 200%;
  opacity: 0;
}

[data-scroll-trigger=mask].is-visible img {
  -webkit-animation: 2.3s mask-animation cubic-bezier(0.115, 0.405, 0.24, 1) 0s forwards;
          animation: 2.3s mask-animation cubic-bezier(0.115, 0.405, 0.24, 1) 0s forwards;
}

@-webkit-keyframes mask-fade {
  80% {
    opacity: 1;
  }
  to {
    opacity: 1;
  }
}

@keyframes mask-fade {
  80% {
    opacity: 1;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes mask-animation {
  0% {
    -webkit-mask-position: center bottom;
    mask-position: center bottom;
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  to {
    -webkit-mask-position: center 0%;
    -webkit-mask-size: auto 500%;
    mask-position: center 0%;
    mask-size: auto 500%;
    opacity: 1;
  }
}
@keyframes mask-animation {
  0% {
    -webkit-mask-position: center bottom;
    mask-position: center bottom;
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  to {
    -webkit-mask-position: center 0%;
    -webkit-mask-size: auto 500%;
    mask-position: center 0%;
    mask-size: auto 500%;
    opacity: 1;
  }
}
.wp-block-button {
  width: 100%;
}
.wp-block-button .wp-block-button__link {
  border-radius: 0;
  background: none;
  border: 2px solid #196EB4;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  color: #196EB4;
  font-size: 16px;
  line-height: 1.5;
}
@media screen and (max-width: 997.98px) {
  .wp-block-button .wp-block-button__link {
    font-size: 15px;
    line-height: 1.3333333333;
  }
}
.wp-block-button .wp-block-button__link:hover {
  opacity: 1;
  background: #196EB4;
  color: #fff;
}

.wp-block-columns {
  -webkit-margin-before: 42px;
          margin-block-start: 42px;
}
@media screen and (max-width: 997.98px) {
  .wp-block-columns {
    -webkit-margin-before: 32px;
            margin-block-start: 32px;
  }
}

.l-body .p-custom h3.wp-block-heading:not(:first-of-type) {
  -webkit-margin-before: 100px;
          margin-block-start: 100px;
}
@media screen and (max-width: 997.98px) {
  .l-body .p-custom h3.wp-block-heading:not(:first-of-type) {
    -webkit-margin-before: 80px;
            margin-block-start: 80px;
  }
}
.l-body .p-custom h3.wp-block-heading {
  border-left: 8px solid #196EB4;
  padding-left: 18px;
  color: #555;
  background: none;
}
.l-body .p-custom h4.wp-block-heading {
  margin-top: 50px;
  padding: 5px 12px;
  color: #fff;
  background: #196EB4;
}
.l-body .p-custom h5.wp-block-heading {
  margin-top: 20px;
  color: #196EB4;
  font-size: 16px;
  line-height: 1.5;
}
.l-body .p-custom .wp-block-list {
  margin-top: 20px;
}
.l-body .p-custom .wp-block-embed iframe {
  width: 100%;
  height: 100%;
  aspect-ratio: 16/9;
}
.l-body .p-custom .wp-element-caption {
  text-align: center;
  font-size: 14px;
  line-height: 1.4285714286;
}
.l-body .p-custom .wp-block-image img {
  margin: auto;
  display: block;
}
.l-body .p-custom .wp-block-image + p {
  margin-top: 20px;
}
.l-body .p-custom p + .wp-block-buttons {
  margin-top: 40px;
}

.page-id-555 .wp-container-core-group-is-layout-9649a0d9 {
  -ms-grid-columns: (1fr)[4];
  grid-template-columns: repeat(4, 1fr);
}

.c-option-text {
  color: #ff0000;
  font-size: 13px;
}

.c-option-red {
  color: #ff0000;
}

.c-heading-block01 {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-bottom: 16px;
}
.c-heading-block01:before {
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 52px;
  height: 1px;
  content: "";
  background: #000;
}
.c-heading-block01 .en {
  font-size: 50px;
  line-height: 1;
  letter-spacing: 0.01em;
  font-family: "Josefin Sans", sans-serif;
  color: #999;
}
@media screen and (max-width: 997.98px) {
  .c-heading-block01 .en {
    font-size: 32px;
    line-height: 1;
  }
}
.c-heading-block01 .ja {
  margin-top: 10px;
  font-size: 20px;
  line-height: 1;
  font-weight: bold;
  color: #196EB4;
}
@media screen and (max-width: 997.98px) {
  .c-heading-block01 .ja {
    margin-top: 6px;
    font-size: 16px;
    line-height: 1;
  }
}
.c-heading-block01.-white .en {
  color: #fff;
}
.c-heading-block01.-white .ja {
  color: #fff;
}
.c-heading-block01.-white:before {
  display: none;
}

.c-blue-heading {
  color: #196EB4;
  font-weight: 700;
  font-size: 40px;
  line-height: 1.5;
  letter-spacing: 0.001em;
}
@media screen and (max-width: 997.98px) {
  .c-blue-heading {
    font-size: 24px;
    line-height: 1.2083333333;
    text-align: center;
  }
}
.c-blue-heading.-tac {
  text-align: center;
}
.c-blue-heading.-light-size {
  font-size: 26px;
  line-height: 1.6153846154;
}

.c-border-heading {
  padding-bottom: 12px;
  font-size: 20px;
  line-height: 1.2;
  color: #196EB4;
  text-align: center;
  border-bottom: 1px solid #196EB4;
}

.c-center-heading {
  font-size: 27px;
  line-height: 1.7407407407;
  letter-spacing: 0.0022em;
  text-align: center;
  font-weight: bold;
  color: #fff;
}
@media screen and (max-width: 997.98px) {
  .c-center-heading {
    font-size: 18px;
    line-height: 1.5555555556;
  }
}

a.c-more-btn {
  color: #fff;
}

.c-more-btn {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 140px;
  height: 140px;
  font-size: 1.4rem;
  background: #196EB4;
  color: #fff;
  font-family: "Arial", "メイリオ";
}
@media screen and (max-width: 997.98px) {
  .c-more-btn {
    width: 100%;
    height: 60px;
    padding: 15px;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
.c-more-btn:before {
  position: absolute;
  bottom: 14px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 112px;
  height: 8px;
  content: "";
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-image: url(../../_assets/img/common/icon_arrow_right.svg);
}
@media screen and (max-width: 997.98px) {
  .c-more-btn:before {
    bottom: 50%;
    right: 15px;
    left: auto;
    width: 58px;
    height: 5px;
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
    background-image: url(../../_assets/img/common/icon_arrow_right_sp.svg);
  }
}

a.c-info-btn {
  color: #fff;
}

.c-info-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-width: 610px;
  width: 100%;
  padding: 33px 0;
  background: -webkit-gradient(linear, left top, right top, from(#F69007), to(#FFC240));
  background: linear-gradient(90deg, #F69007, #FFC240);
  font-size: 24px;
  line-height: 1;
  color: #fff;
  letter-spacing: 0.0014em;
}
.c-info-btn.-blue {
  background: #196EB4;
}
@media screen and (max-width: 997.98px) {
  .c-info-btn {
    padding: 20px 0;
    font-size: 18px;
    line-height: 1;
  }
}
.c-info-btn:hover {
  opacity: 1;
  border: none;
  -webkit-box-shadow: 0 6px 6px 0 rgba(0, 0, 0, 0.14), 0 1px 7px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -1px rgba(0, 0, 0, 0.2);
          box-shadow: 0 6px 6px 0 rgba(0, 0, 0, 0.14), 0 1px 7px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -1px rgba(0, 0, 0, 0.2);
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}

a.c-info-btn-small {
  color: #fff;
}

.c-info-btn-small {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-width: 325px;
  width: 100%;
  padding: 28px 0;
  background: -webkit-gradient(linear, left top, right top, from(#F69007), to(#FFC240));
  background: linear-gradient(90deg, #F69007, #FFC240);
  font-size: 14px;
  line-height: 1;
  color: #fff;
  letter-spacing: 0.0014em;
}
.c-info-btn-small:hover {
  opacity: 1;
  border: none;
  -webkit-box-shadow: 0 6px 6px 0 rgba(0, 0, 0, 0.14), 0 1px 7px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -1px rgba(0, 0, 0, 0.2);
          box-shadow: 0 6px 6px 0 rgba(0, 0, 0, 0.14), 0 1px 7px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -1px rgba(0, 0, 0, 0.2);
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}

.p-gNavSP .p-gNavSP__item a.c-btn-head {
  position: fixed;
  top: 0;
  right: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-width: 258px;
  width: 100%;
  padding: 42px 0;
  background: -webkit-gradient(linear, left top, right top, from(#F69007), to(#FFC240));
  background: linear-gradient(90deg, #F69007, #FFC240);
  font-size: 18px;
  line-height: 1;
  color: #fff;
  letter-spacing: 0.0014em;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
.p-gNavSP .p-gNavSP__item a.c-btn-head:hover {
  font-weight: normal;
}

.p-gNavSP .menu-item.c-btn-head a {
  position: fixed;
  top: 0;
  right: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-width: 258px;
  width: 100%;
  padding: 42px 0;
  background: -webkit-gradient(linear, left top, right top, from(#F69007), to(#FFC240));
  background: linear-gradient(90deg, #F69007, #FFC240);
  font-size: 18px;
  line-height: 1;
  color: #fff;
  letter-spacing: 0.0014em;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
.p-gNavSP .menu-item.c-btn-head a:hover {
  font-weight: normal;
}

.c-toggle-btn {
  width: 100%;
  font-size: 20px;
  line-height: 1.6;
  background: #196EB4;
  color: #fff;
  cursor: pointer;
  text-align: left;
}
.c-toggle-btn:focus {
  background: #196EB4;
}
.c-toggle-btn span {
  position: relative;
  display: block;
  padding: 10px 20px;
  font-weight: bold;
  font-size: 20px;
  line-height: 1.6;
  letter-spacing: 0.34em;
}
.c-toggle-btn span:before {
  position: absolute;
  right: 20px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 4px;
  height: 24px;
  background: #fff;
  content: "";
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
.c-toggle-btn span:after {
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 24px;
  height: 4px;
  background: #fff;
  content: "";
}

.open .c-toggle-btn span:before {
  -webkit-transform: translateY(-50%) rotateZ(90deg);
          transform: translateY(-50%) rotateZ(90deg);
}

.c-block-btn {
  width: 100px;
  height: 100px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 12px;
  line-height: 1.6666666667;
  white-space: nowrap;
  text-align: center;
}
@media screen and (max-width: 997.98px) {
  .c-block-btn {
    width: 100%;
    height: 46px;
    font-size: 12px;
    line-height: 1;
  }
}
.c-block-btn.-contact {
  background: -webkit-gradient(linear, left top, right top, from(#F69007), to(#FFC240));
  background: linear-gradient(90deg, #F69007, #FFC240);
  color: #fff;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 997.98px) {
  .c-block-btn.-contact {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
.c-block-btn.-contact .icon {
  height: 30px;
  margin-bottom: 5px;
}
@media screen and (max-width: 997.98px) {
  .c-block-btn.-contact .icon {
    height: 20px;
    margin-bottom: 0;
    margin-right: 10px;
  }
}
.c-block-btn.-contact .icon img {
  display: block;
  height: 100%;
}
.c-block-btn.-partner {
  background: #999;
  color: #fff;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 997.98px) {
  .c-block-btn.-partner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
.c-block-btn.-partner .icon {
  width: 36px;
}
@media screen and (max-width: 997.98px) {
  .c-block-btn.-partner .icon {
    width: 26px;
    margin-bottom: 0;
    margin-right: 10px;
  }
}
.c-block-btn.-partner .icon img {
  display: block;
}

a.link-yel {
  color: #FFF100;
  text-decoration: underline;
}

.c-inner-arrow {
  position: relative;
}
.c-inner-arrow:before {
  position: absolute;
  top: 50%;
  right: -50px;
  right: calc((-50/1440)*100vw);
  display: inline-block;
  width: 13px;
  height: 13px;
  width: 0.9027777778vw;
  height: 0.9027777778vw;
  border-top: calc((2/1440)*100vw) solid #fff;
  border-right: calc((2/1440)*100vw) solid #fff;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
  content: "";
}
@media screen and (max-width: 767.98px) {
  .c-inner-arrow:before {
    right: -40px;
    width: 5px;
    height: 5px;
  }
}

.c-white-border {
  border: 4px solid #fff;
}

.c-white-box {
  padding: 45px 42px;
  border-radius: 14px;
  background-color: #fff;
  min-height: 483px;
}
@media screen and (max-width: 767.98px) {
  .c-white-box {
    min-height: auto;
    padding: calc((30/375)*100vw) calc((20/375)*100vw);
    border-radius: calc((14/375)*100vw);
  }
}
.c-white-box.-long-block {
  padding: 98px 42px;
}
@media screen and (max-width: 767.98px) {
  .c-white-box.-long-block {
    padding: calc((50/375)*100vw) calc((20/375)*100vw);
  }
}
.c-white-box.-coming {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #142d43;
  font-weight: bold;
  font-size: 50px;
}
@media screen and (max-width: 767.98px) {
  .c-white-box.-coming {
    font-size: 8vw;
    line-height: 1;
  }
}

.c-white-box + .c-white-box {
  margin-top: 64px;
}
@media screen and (max-width: 767.98px) {
  .c-white-box + .c-white-box {
    margin-top: 17.0666666667vw;
  }
}

.bg-gray {
  background-color: #142d43;
}

.bg-photos01 {
  position: relative;
  padding-top: 130px;
  padding-bottom: 220px;
}
@media screen and (max-width: 767.98px) {
  .bg-photos01 {
    min-height: auto;
    padding-top: 16vw;
    padding-bottom: 32vw;
  }
}
.bg-photos01:before {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100%;
  height: 100%;
  background-image: url(../../_assets/img/index/bg-photos02.png);
  content: "";
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.c-flex-card {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.c-flex-card .c-flex-card__bottom.-gut {
  margin-top: 14px;
}

.c-text-light {
  font-size: 12px;
  line-height: 2;
}

.c-recruitment-dl dl + dl {
  margin-top: 54px;
}
.c-recruitment-dl dl dt {
  padding: 16px 10px;
  background: #9ab6cd;
  font-size: 16px;
  line-height: 1;
}
.c-recruitment-dl dl dd {
  margin: 0;
  width: auto;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding: 14px;
  font-size: 16px;
  line-height: 2;
}
.c-recruitment-dl dl dd p + p {
  margin-top: 20px;
}
.c-recruitment-dl dl dd p {
  display: block;
}
.c-recruitment-dl dl dd p.bold {
  font-weight: bold;
}
.c-recruitment-dl dl dd ul {
  padding-left: 20px;
}
.c-recruitment-dl dl dd ul li {
  list-style: disc;
}