@charset "UTF-8";
/* ==========================================================================
   Foundation
** ========================================================================== */
/** ===============================================
 *
 * Font
 *
 * =============================================== */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap&subset=japanese");
@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@500&display=swap");
/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */
html {
  line-height: 1.15; /* 1 */
  font-feature-settings: "palt" 1;
  -ms-text-size-adjust: 100%; /* 2 */
  -webkit-text-size-adjust: 100%; /* 2 */
  text-size-adjust: 100%;
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0;
}

/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */
figcaption,
figure,
main { /* 1 */
  display: block;
}

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent; /* 1 */
  -webkit-text-decoration-skip: objects; /* 2 */
}

/**
 * 1. Remove the bottom border in Chrome 57- and Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic;
}

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none;
}

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
  text-transform: none;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button; /* 2 */
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block; /* 1 */
  vertical-align: baseline; /* 2 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */
details,
menu {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Scripting
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block;
}

/**
 * Add the correct display in IE.
 */
template {
  display: none;
}

/* Hidden
   ========================================================================== */
/**
 * Add the correct display in IE 10-.
 */
[hidden] {
  display: none;
}

@font-face {
  font-family: "Original Yu Gothic";
  src: local("Yu Gothic");
  font-weight: 300;
}
@font-face {
  font-family: "Original Yu Gothic";
  src: local("Yu Gothic");
  font-weight: 500;
}
@font-face {
  font-family: "Original Yu Gothic";
  src: local("Yu Gothic");
  font-weight: bold;
}
@font-face {
  font-family: "Helvetica Neue";
  src: local("Helvetica Neue Regular");
  font-weight: 100;
}
@font-face {
  font-family: "Helvetica Neue";
  src: local("Helvetica Neue Regular");
  font-weight: 200;
}
@font-face {
  font-family: "Poppins";
  src: local("Poppins Medium");
  font-weight: 500;
}
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/* Slider */
.slick-loading .slick-list {
  background: #fff url("../images/../../assets/images/ajax-loader.gif") center center no-repeat;
}

/* Icons */
@font-face {
  font-family: "slick";
  src: url("../fonts/slick.eot");
  src: url("../fonts/slick.eot?#iefix") format("embedded-opentype"), url("../fonts/slick.woff") format("woff"), url("../fonts/slick.ttf") format("truetype"), url("../fonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal;
}
/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  top: 44%;
  width: calc(100vw * 62 / 750);
  height: calc(100vw * 62 / 750);
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  border: 2px solid #fff;
  border-radius: 50% 50%;
  background: #008cff;
  color: transparent;
  transform: translateY(-50%);
  z-index: 10;
}
@media (min-width: 600px) {
  .slick-prev,
  .slick-next {
    width: calc(100vw * 60 / 1400);
    height: calc(100vw * 60 / 1400);
  }
}
@media (min-width: 1100px) {
  .slick-prev,
  .slick-next {
    width: 60px;
    height: 60px;
  }
}
.slick-prev:before,
.slick-next:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: calc(100vw * 20 / 750);
  height: calc(100vw * 20 / 750);
  background-image: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><polygon fill="%23fff" points="7.04 23.33 5.63 21.92 15.55 12 5.63 2.08 7.04 .67 18.37 12 7.04 23.33"/></svg>');
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: contain;
  transform: translate(-50%, -50%);
  transform-origin: center;
}
@media (min-width: 600px) {
  .slick-prev:before,
  .slick-next:before {
    width: calc(100vw * 24 / 1400);
    height: calc(100vw * 14 / 1400);
  }
}
@media (min-width: 1100px) {
  .slick-prev:before,
  .slick-next:before {
    width: 24px;
    height: 14px;
  }
}
.slick-prev {
  left: calc(100vw * 42 / 750);
}
@media (min-width: 600px) {
  .slick-prev {
    left: calc(100vw * 15 / 1400);
  }
}
@media (min-width: 1100px) {
  .slick-prev {
    left: 15px;
  }
}
.slick-prev:before {
  transform: translate(-50%, -50%) rotate(-180deg);
}

.slick-next {
  right: calc(100vw * 42 / 750);
}
@media (min-width: 600px) {
  .slick-next {
    right: calc(100vw * 15 / 1400);
  }
}
@media (min-width: 1100px) {
  .slick-next {
    right: 15px;
  }
}

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: calc(100vw * 110 / 750);
}

.slick-dots {
  position: absolute;
  right: 0;
  bottom: calc(-100vw * 70 / 750);
  list-style: none;
  display: block;
  text-align: center;
  padding: 0 calc(100vw * 220 / 750) 0 0;
  margin: 0;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0;
  padding: 0;
  cursor: pointer;
}
@media (min-width: 600px) {
  .slick-dots li {
    width: calc(100vw * 20 / 1400);
    height: calc(100vw * 20 / 1400);
  }
}
@media (min-width: 1100px) {
  .slick-dots li {
    width: 20px;
    height: 20px;
  }
}
.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}
@media (min-width: 600px) {
  .slick-dots li button {
    width: calc(100vw * 20 / 1400);
    height: calc(100vw * 20 / 1400);
  }
}
@media (min-width: 1100px) {
  .slick-dots li button {
    width: 20px;
    height: 20px;
  }
}
.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}
.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
}
.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "•";
  width: 20px;
  height: 20px;
  font-family: "slick";
  font-size: calc(100vw * 13 / 750);
  line-height: 20px;
  text-align: center;
  color: black;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
@media (min-width: 600px) {
  .slick-dots li button:before {
    width: calc(100vw * 20 / 1400);
    height: calc(100vw * 20 / 1400);
    font-size: calc(100vw * 13 / 1400);
  }
}
@media (min-width: 1100px) {
  .slick-dots li button:before {
    width: 20px;
    height: 20px;
    font-size: 13px;
  }
}
.slick-dots li.slick-active button:before {
  color: #008cff;
  opacity: 0.75;
}

/* ==========================================================================
   Layout
** ========================================================================== */
html {
  color: #000;
  font-family: -apple-system, BlinkMacSystemFont, "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", sans-serif;
  font-size: 10px;
}
@media screen and (min-width: 375px) {
  html {
    font-size: calc(10px + calc(14px / (14px * 0 + 1)) * (100vw - 375px) / calc(525px / (525px * 0 + 1)));
  }
}
@media screen and (min-width: 900px) {
  html {
    font-size: 24px;
  }
}
@media (min-width: 600px) {
  html {
    font-size: 10px;
  }
}

a:link, a:visited {
  color: #008cff;
}
a:hover, a:active {
  text-decoration: none;
}

img {
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
}

address {
  font-style: normal;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

p {
  font-size: 1.1rem;
  line-height: 1.5;
}
@media (min-width: 600px) {
  p {
    font-size: 1.6rem;
  }
}

.for-screen-reader {
  display: none;
}

.pc-only-ib {
  display: none;
}
@media (min-width: 600px) {
  .pc-only-ib {
    display: inline-block;
  }
}

.pc-only {
  display: none;
}
@media (min-width: 600px) {
  .pc-only {
    display: block;
  }
}

@media (min-width: 600px) {
  .sp-only {
    display: none;
  }
}

.site-header__inner {
  box-sizing: border-box;
  position: absolute;
  top: 0;
  left: 0;
  padding: calc(100vw * 110 / 750) calc(100vw * 40 / 750) calc(100vw * 90 / 750);
  width: 100%;
  padding: calc(100vw * 110 / 750) calc(100vw * 40 / 750) calc(100vw * 90 / 750);
  min-height: calc(100vw * 622 / 750);
}
@media (min-width: 600px) {
  .site-header__inner {
    padding: calc(100vw * 170 / 1400) calc(100vw * 140 / 1400) 0;
    min-height: calc(100vw * 854 / 1400);
  }
}
@media (min-width: 1400px) {
  .site-header__inner {
    padding: 170px 140px 0;
    min-height: 854px;
  }
}
.site-header .site-id {
  margin: 0 0 calc(100vw * 70 / 750) 0;
  width: calc(100vw * 320 / 750);
  text-align: center;
  white-space: nowrap;
}
@media (min-width: 600px) {
  .site-header .site-id {
    margin: 0 0 calc(100vw * 70 / 1400) calc(100vw * 1 / 1400);
    width: calc(100vw * 420 / 1400);
    text-align: left;
  }
}
@media (min-width: 1400px) {
  .site-header .site-id {
    margin: 0 0 70px 1px;
    width: 420px;
  }
}
.site-header .site-id__name {
  font-size: calc(100vw * 61 / 750);
  font-weight: bold;
}
@media (min-width: 600px) {
  .site-header .site-id__name {
    font-size: calc(100vw * 80 / 1400);
  }
}
@media (min-width: 1400px) {
  .site-header .site-id__name {
    font-size: 80px;
  }
}
.site-header .site-id__name rt {
  margin-bottom: calc(100vw * 5 / 750);
  font-size: calc(100vw * 20 / 750);
  text-align: center;
  font-weight: 500;
  letter-spacing: 0.1em;
}
@media (min-width: 600px) {
  .site-header .site-id__name rt {
    margin-bottom: calc(100vw * 5 / 1400);
    font-size: calc(100vw * 26 / 1400);
  }
}
@media (min-width: 1400px) {
  .site-header .site-id__name rt {
    margin-bottom: 5px;
    font-size: 26px;
  }
}
.site-header .site-id__name:first-child {
  margin-right: calc(100vw * 10 / 750);
}
@media (min-width: 600px) {
  .site-header .site-id__name:first-child {
    margin-right: calc(100vw * 20 / 1400);
  }
}
@media (min-width: 1400px) {
  .site-header .site-id__name:first-child {
    margin-right: 20px;
  }
}
.site-header .site-id__text {
  display: block;
  margin-top: calc(100vw * 10 / 750);
  padding-left: calc(100vw * 5 / 750);
  font-size: calc(100vw * 25 / 750);
  font-weight: 600;
  text-align: left;
}
@media (min-width: 600px) {
  .site-header .site-id__text {
    margin-top: calc(100vw * 10 / 1400);
    padding-left: calc(100vw * 7 / 1400);
    font-size: calc(100vw * 33 / 1400);
  }
}
@media (min-width: 1400px) {
  .site-header .site-id__text {
    margin-top: 10px;
    padding-left: 7px;
    font-size: 33px;
  }
}
.site-header__copy {
  margin: 0;
  width: calc(100vw * 446 / 750);
}
@media (min-width: 600px) {
  .site-header__copy {
    width: calc(100vw * 700 / 1400);
  }
}
@media (min-width: 1400px) {
  .site-header__copy {
    width: 700px;
  }
}
.site-header__visual {
  margin: 0;
  width: 100%;
}
.site-header__visual img {
  display: block;
  max-width: none;
  width: 100%;
}

.global-navigation {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 30;
}
@media (min-width: 600px) {
  .global-navigation {
    width: 100%;
  }
}
.global-navigation__container {
  position: fixed;
  right: 0;
  top: 0;
  display: flex;
  align-items: center;
  width: calc(100vw * 103 / 750);
  height: calc(100vw * 94 / 750);
  transition: all 0.5s ease;
  overflow: hidden;
}
@media (min-width: 600px) {
  .global-navigation__container {
    position: relative;
    top: auto;
    right: auto;
    display: block;
    width: auto;
    height: auto;
    overflow: auto;
  }
}
.global-navigation__container:before {
  content: "";
  position: fixed;
  top: 0;
  right: 0;
  width: calc(100vw * 103 / 750);
  height: calc(100vw * 94 / 750);
  background: linear-gradient(90deg, #008cff, #00b4ff);
  transition: all 0.5s ease;
  z-index: 1;
}
@media (min-width: 600px) {
  .global-navigation__container:before {
    display: none;
  }
}
.global-navigation__inner {
  box-sizing: border-box;
  position: relative;
  width: 100%;
  opacity: 0;
  z-index: 2;
  transition: all 0s ease;
  transition-delay: 0s;
  z-index: 2;
}
@media (min-width: 600px) {
  .global-navigation__inner {
    display: block;
    padding: 0;
    width: auto;
    opacity: 1;
  }
}
.global-navigation__box {
  box-sizing: border-box;
  padding: calc(100vw * 110 / 750) calc(100vw * 40 / 750);
  width: 100%;
  transform: translateY(calc(-100vw * 40 / 750));
  z-index: 2;
}
@media (min-width: 600px) {
  .global-navigation__box {
    display: block;
    padding: calc(100vw * 15 / 1400) 0 0 0;
    width: auto;
    transform: translateY(0);
  }
}
@media (min-width: 1400px) {
  .global-navigation__box {
    padding-top: 15px;
  }
}
.global-navigation__header {
  padding-bottom: calc(100vw * 16 / 750);
  border-bottom: 1px solid #fff;
  text-align: center;
}
@media (min-width: 600px) {
  .global-navigation__header {
    display: none;
  }
}
.global-navigation__heading {
  color: #fff;
  text-align: center;
  white-space: nowrap;
}
.global-navigation__heading__name {
  font-size: calc(100vw * 61 / 750);
  font-weight: bold;
}
.global-navigation__heading__name rt {
  margin-bottom: calc(100vw * 5 / 750);
  font-size: calc(100vw * 20 / 750);
  text-align: center;
  font-weight: 500;
  letter-spacing: 0.1em;
}
.global-navigation__heading__name:first-child {
  margin-right: calc(100vw * 20 / 750);
}
.global-navigation__heading__text {
  display: block;
  margin-top: calc(100vw * 10 / 750);
  padding-left: calc(100vw * 5 / 750);
  font-size: calc(100vw * 25 / 750);
  font-weight: 600;
}
.global-navigation__heading__link:link, .global-navigation__heading__link:visited {
  color: #fff;
  text-decoration: none;
}
.global-navigation__list {
  list-style: none;
  margin: 0;
  padding: calc(100vw * 55 / 750) 0;
}
@media (min-width: 600px) {
  .global-navigation__list {
    display: flex;
    justify-content: flex-end;
    padding: 0;
  }
}
.global-navigation__item {
  position: relative;
}
@media (min-width: 600px) {
  .global-navigation__item:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 2px;
    height: calc(100vw * 34 / 1400);
    transform: translateY(-50%);
    background-color: #000;
  }
}
@media (min-width: 1100px) {
  .global-navigation__item:before {
    height: 34px;
  }
}
.global-navigation__item--not-sp {
  display: none;
}
@media (min-width: 600px) {
  .global-navigation__item--not-sp {
    display: block;
  }
}
.global-navigation__link {
  box-sizing: border-box;
  display: block;
  padding: calc(100vw * 16 / 750) calc(100vw * 40 / 750);
  color: #fff;
  font-size: calc(100vw * 53 / 750);
  font-weight: 700;
  text-align: center;
  text-decoration: none;
  transition: all 0.5s ease;
}
@media (min-width: 600px) {
  .global-navigation__link {
    padding: 10px 50px;
    min-width: 170px;
    color: #000;
    font-size: 18px;
    font-weight: 500;
  }
}
@media (min-width: 1100px) {
  .global-navigation__link {
    padding: 10px 50px;
    min-width: 170px;
    font-size: 18px;
  }
}
.global-navigation__link:link, .global-navigation__link:visited {
  color: #fff;
  text-decoration: none;
}
@media (min-width: 600px) {
  .global-navigation__link:link, .global-navigation__link:visited {
    color: #000;
  }
}
@media (min-width: 600px) {
  .global-navigation__link:hover {
    opacity: 0.7;
  }
}
.global-navigation__sns {
  padding-top: calc(100vw * 30 / 750);
  text-align: center;
  border-top: 1px solid #fff;
}
@media (min-width: 600px) {
  .global-navigation__sns {
    display: none;
    margin-top: 0;
  }
}
.global-navigation__sns__text {
  margin-top: 0;
  margin-bottom: calc(100vw * 40 / 750);
  color: #fff;
  font-size: calc(100vw * 36 / 750);
  font-weight: 500;
  letter-spacing: 0.05em;
}
.global-navigation__youtube {
  position: fixed;
  top: calc(100vw * 16 / 750);
  left: calc(100vw * 40 / 750);
}
@media (min-width: 600px) {
  .global-navigation__youtube {
    position: absolute;
    top: calc(100vw * 15 / 1400);
    left: calc(100vw * 140 / 1400);
    z-index: 3;
  }
}
@media (min-width: 1400px) {
  .global-navigation__youtube {
    top: 15px;
    left: 140px;
  }
}
.global-navigation__youtube__link {
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  padding: calc(100vw * 15 / 750) calc(100vw * 22 / 750) calc(100vw * 11 / 750);
  width: calc(100vw * 280 / 750);
  box-shadow: calc(100vw * 2 / 750) calc(100vw * 2 / 750) calc(100vw * 4 / 750) rgba(0, 0, 0, 0.5);
  border-radius: calc(100vw * 27 / 750) calc(100vw * 27 / 750)/50% 50%;
  color: #000;
  font-size: calc(100vw * 30 / 750);
  font-weight: 700;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  background-color: #fff;
  transition: all 0.5s ease;
}
@media (min-width: 600px) {
  .global-navigation__youtube__link {
    padding: calc(100vw * 11 / 1400) calc(100vw * 15 / 1400) calc(100vw * 7 / 1400);
    width: calc(100vw * 200 / 1400);
    box-shadow: calc(100vw * 2 / 1400) calc(100vw * 2 / 1400) calc(100vw * 4 / 1400) rgba(0, 0, 0, 0.5);
    border-radius: calc(100vw * 18 / 1400) calc(100vw * 18 / 1400)/50% 50%;
    font-size: calc(100vw * 20 / 1400);
  }
}
@media (min-width: 1400px) {
  .global-navigation__youtube__link {
    padding: 11px 15px 7px;
    width: 200px;
    box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
    border-radius: 20px 20px/50% 50%;
    font-size: 20px;
  }
}
.global-navigation__youtube__link:link, .global-navigation__youtube__link:visited {
  color: #000;
}
.global-navigation__youtube__link:hover {
  opacity: 0.7;
}
.global-navigation__youtube__link .c-icon {
  margin-left: calc(100vw * 12 / 750);
  transform: translateY(calc(-100vw * 2 / 750));
}
@media (min-width: 600px) {
  .global-navigation__youtube__link .c-icon {
    margin-left: calc(100vw * 8 / 1400);
    transform: translateY(calc(-100vw * 1 / 1400));
  }
}
@media (min-width: 1400px) {
  .global-navigation__youtube__link .c-icon {
    margin-left: 8px;
    transform: translateY(-1px);
  }
}
.global-navigation.is-open .toggle-nav span:nth-child(1) {
  top: calc(100vw * 32 / 750);
  -moz-transform: rotate(145deg);
  -o-transform: rotate(145deg);
  -ms-transform: rotate(145deg);
  -webkit-transform: rotate(145deg);
  transform: rotate(145deg);
}
.global-navigation.is-open .toggle-nav span:nth-child(2) {
  opacity: 0;
  left: calc(-100vw * 60 / 750);
}
.global-navigation.is-open .toggle-nav span:nth-child(3) {
  top: calc(100vw * 32 / 750);
  -moz-transform: rotate(-145deg);
  -o-transform: rotate(-145deg);
  -ms-transform: rotate(-145deg);
  -webkit-transform: rotate(-145deg);
  transform: rotate(-145deg);
}
.global-navigation.is-open .toggle-nav b:before {
  content: "";
}
.global-navigation.is-open .global-navigation__container {
  width: 100vw;
  height: 100vh;
  overflow-y: scroll;
}
@media (min-width: 600px) {
  .global-navigation.is-open .global-navigation__container {
    width: auto;
    height: auto;
    overflow: auto;
  }
}
.global-navigation.is-open .global-navigation__container:before {
  width: 100%;
  height: 100%;
}
.global-navigation.is-open .global-navigation__inner {
  display: block;
  opacity: 1;
  transition: all 0.5s ease;
  transition-delay: 0.5s;
}
.global-navigation.is-open .global-navigation__youtube__link {
  box-shadow: none;
}

.toggle-nav {
  box-sizing: border-box;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 200;
  padding-top: calc(100vw * 55 / 750);
  width: calc(100vw * 103 / 750);
  height: calc(100vw * 94 / 750);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  cursor: pointer;
  z-index: 2;
}
@media (min-width: 600px) {
  .toggle-nav {
    display: none;
  }
}
.toggle-nav span {
  display: block;
  position: absolute;
  left: calc(100vw * 30 / 750);
  height: 2px;
  width: calc(100vw * 43 / 750);
  background: #fff;
  border-radius: 9px;
  opacity: 1;
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  -moz-transition: 0.25s ease-in-out;
  -o-transition: 0.25s ease-in-out;
  -ms-transition: 0.25s ease-in-out;
  -webkit-transition: 0.25s ease-in-out;
  transition: 0.25s ease-in-out;
}
.toggle-nav span:nth-child(1) {
  top: calc(100vw * 19 / 750);
}
.toggle-nav span:nth-child(2) {
  top: calc(100vw * 32 / 750);
}
.toggle-nav span:nth-child(3) {
  top: calc(100vw * 43 / 750);
}
.toggle-nav b {
  display: block;
  width: 100%;
  color: #fff;
  font-size: calc(100vw * 23 / 750);
  font-weight: 500;
  text-align: center;
}
.toggle-nav b:before {
  content: "MENU";
}

.site-footer {
  padding-bottom: calc(100vw * 174 / 750);
}
@media (min-width: 600px) {
  .site-footer {
    padding-bottom: 0;
  }
}
.site-footer__image {
  display: none;
}
@media (min-width: 600px) {
  .site-footer__image {
    display: block;
    margin: 0;
    height: calc(100vw * 514 / 1400);
  }
}
@media (min-width: 1100px) {
  .site-footer__image {
    height: 514px;
  }
}
.site-footer__image img {
  display: block;
  object-fit: cover;
}
@media (min-width: 600px) {
  .site-footer__image img {
    width: 100%;
    height: calc(100vw * 514 / 1400);
  }
}
@media (min-width: 1100px) {
  .site-footer__image img {
    height: 514px;
  }
}
.site-footer__inner {
  padding: calc(100vw * 25 / 750) 0;
  background-color: #d3d3d4;
}
@media (min-width: 600px) {
  .site-footer__inner {
    padding: calc(100vw * 35 / 1400) calc(100vw * 80 / 1400) calc(100vw * 20 / 1400) calc(100vw * 160 / 1400);
    background: linear-gradient(90deg, #008cff, #00b4ff);
  }
}
@media (min-width: 1100px) {
  .site-footer__inner {
    padding: 35px 80px 20px 160px;
  }
}
.site-footer__sns {
  display: none;
}
@media (min-width: 600px) {
  .site-footer__sns {
    display: flex;
    align-items: center;
    margin-bottom: calc(100vw * 120 / 1400);
  }
}
@media (min-width: 1100px) {
  .site-footer__sns {
    margin-bottom: 120px;
  }
}
.site-footer__sns__text {
  margin: 0;
  color: #fff;
  font-size: calc(100vw * 36 / 1400);
}
@media (min-width: 600px) {
  .site-footer__sns__text {
    margin-right: 25px;
    font-size: 18px;
  }
}
@media (min-width: 1100px) {
  .site-footer__sns__text {
    margin-right: 25px;
    font-size: 18px;
  }
}

.copyright {
  margin: 0;
  font-size: calc(100vw * 24 / 750);
  text-align: center;
}
@media (min-width: 600px) {
  .copyright {
    font-size: 14px;
    color: #fff;
  }
}
@media (min-width: 1100px) {
  .copyright {
    font-size: 14px;
  }
}

.l-footer-nav {
  box-sizing: border-box;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100vw;
  padding: calc(100vw * 22 / 750) calc(100vw * 40 / 750) calc(100vw * 30 / 750);
  background: linear-gradient(90deg, #008cff, #00b4ff);
  z-index: 20;
}
@media (min-width: 600px) {
  .l-footer-nav {
    display: none;
  }
}
.l-footer-nav__text {
  margin: 0;
  color: #fff;
  font-size: calc(100vw * 36 / 750);
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.03em;
  margin-bottom: calc(100vw * 25 / 750);
}
.l-footer-nav__box {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
@media (min-width: 600px) {
  .l-footer-visual {
    height: calc(100vw * 517 / 1400);
    background-position: center center;
    background-repeat: no-repeat;
    background-image: url("../images/bg-footer-pc.jpg");
    background-size: cover;
  }
}
@media (min-width: 1100px) {
  .l-footer-visual {
    height: 517px;
  }
}

.fixed-width {
  margin-right: auto;
  margin-left: auto;
  max-width: 1400px;
}

.col {
  zoom: 1;
}
.col:after {
  content: "";
  display: block;
  clear: both;
  overflow: hidden;
}
.col .col-item {
  float: left;
}
.col .col-item-last {
  float: right;
}
.col.col--2 .col-item {
  width: 49%;
}
.col.col--2 .col-item:nth-child(2n) {
  float: right;
}
.col.col--3 .col-item {
  margin-right: 2%;
  width: 32%;
}
.col.col--3 .col-item:nth-child(3n) {
  float: right;
  margin-right: 0;
}

.flex {
  -js-display: flex;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.flex.flex--col-2 .flex-item {
  width: 48%;
}

/* ==========================================================================
   Component
** ========================================================================== */
.c-heading-a {
  color: #008cff;
  font-size: calc(100vw * 55 / 750);
  font-weight: bold;
  text-align: center;
}
@media (min-width: 600px) {
  .c-heading-a {
    font-size: 48px;
  }
}
@media (min-width: 1100px) {
  .c-heading-a {
    font-size: 48px;
  }
}
.c-heading-a--white {
  color: #fff;
}

.c-heading-b {
  color: #008cff;
  font-size: calc(100vw * 38 / 750);
  font-weight: 700;
  text-align: center;
}
@media (min-width: 600px) {
  .c-heading-b {
    font-size: 48px;
  }
}
@media (min-width: 1100px) {
  .c-heading-b {
    font-size: 48px;
  }
}
.c-heading-b--white {
  color: #fff;
}

.c-list-inlie li {
  display: inline-block;
  margin-right: 10px;
  vertical-align: top;
}

.c-list-has-thumb li {
  position: relative;
  display: table;
  width: 100%;
  border-bottom: 1px solid #ccc;
}
.c-list-has-thumb a {
  display: table-row;
  text-decoration: none;
}
.c-list-has-thumb .thumb,
.c-list-has-thumb .desc {
  display: table-cell;
  vertical-align: middle;
}
.c-list-has-thumb .thumb {
  width: 100px;
}

.c-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.c-list__item {
  position: relative;
  padding-left: calc(100vw * 40 / 750);
  font-size: calc(100vw * 30 / 750);
  font-weight: 500;
  line-height: 2;
}
@media (min-width: 600px) {
  .c-list__item {
    padding-left: calc(100vw * 20 / 1400);
    font-size: 15px;
  }
}
@media (min-width: 1100px) {
  .c-list__item {
    padding-left: 20px;
  }
}
.c-list__item:before {
  content: "";
  display: block;
  position: absolute;
  top: calc(100vw * 20 / 750);
  left: calc(100vw * 16 / 750);
  width: calc(100vw * 8 / 750);
  height: calc(100vw * 8 / 750);
  border-radius: 50% 50%;
  background-color: #000;
}
@media (min-width: 600px) {
  .c-list__item:before {
    top: calc(100vw * 12 / 1400);
    left: calc(100vw * 8 / 1400);
    width: calc(100vw * 4 / 1400);
    height: calc(100vw * 4 / 1400);
  }
}
@media (min-width: 1100px) {
  .c-list__item:before {
    top: 12px;
    left: 8px;
    width: 4px;
    height: 4px;
  }
}

.wrap-table {
  overflow: auto;
}

.table-default {
  width: 100%;
}
.table-default tr th,
.table-default tr td {
  padding: 10px;
  border: 1px solid #CCC;
}
.table-default tr th {
  background: #DEDEDE;
}
.table-responsive {
  width: 100%;
}
.table-responsive tr, .table-responsive th, .table-responsive td {
  display: block;
  padding-right: 0;
  padding-left: 0;
}
@media (min-width: 1100px) {
  .table-responsive tr {
    display: table-row;
  }
}
@media (min-width: 1100px) {
  .table-responsive th, .table-responsive td {
    display: table-cell;
  }
}
.table-responsive th {
  padding-top: 5px;
  padding-bottom: 5px;
  width: auto;
  text-align: left;
}
.table-responsive td {
  padding-top: 5px;
  padding-bottom: 10px;
}

.c-button {
  cursor: pointer;
  position: relative;
  display: inline-block;
  padding: 10px;
  vertical-align: top;
  line-height: 1.1;
  text-decoration: none;
  user-select: none;
}
.c-icon {
  position: relative;
  display: inline-block;
  background: 0 0 no-repeat;
  background-size: 100% auto;
  vertical-align: top;
  line-height: 1;
}
.c-icon.c-icon--arrow {
  top: 8px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #999;
  border-right: 2px solid #999;
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.c-icon.c-icon--circle-arrow {
  background: #333;
  border-radius: 100px;
  width: 16px;
  height: 16px;
}
.c-icon.c-icon--circle-arrow:after {
  display: block;
  content: "";
  position: absolute;
  left: 4px;
  top: 5px;
  width: 4px;
  height: 4px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.c-icon.c-icon--circle-arrow.v-top:after {
  left: 5px;
  top: 6px;
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.c-icon.c-icon--circle-arrow.v-bottom:after {
  left: 5px;
  top: 4px;
  -moz-transform: rotate(-225deg);
  -o-transform: rotate(-225deg);
  -ms-transform: rotate(-225deg);
  -webkit-transform: rotate(-225deg);
  transform: rotate(-225deg);
}
.c-icon.c-icon--circle-arrow.h-left:after {
  left: 6px;
  -moz-transform: rotate(-130deg);
  -o-transform: rotate(-130deg);
  -ms-transform: rotate(-130deg);
  -webkit-transform: rotate(-130deg);
  transform: rotate(-130deg);
}

.c-icon-arrow {
  width: calc(100vw * 24 / 750);
  height: calc(100vw * 24 / 750);
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><polygon fill="%23008cff" points="7.04 23.33 5.63 21.92 15.55 12 5.63 2.08 7.04 .67 18.37 12 7.04 23.33"/></svg>');
  background-size: contain;
}
@media (min-width: 600px) {
  .c-icon-arrow {
    width: calc(100vw * 20 / 1400);
    height: calc(100vw * 20 / 1400);
  }
}
@media (min-width: 1100px) {
  .c-icon-arrow {
    width: 20px;
    height: 20px;
  }
}

.c-icon-sns {
  width: calc(100vw * 46 / 750);
  height: calc(100vw * 46 / 750);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}
@media (min-width: 600px) {
  .c-icon-sns {
    width: calc(100vw * 30 / 1400);
    height: calc(100vw * 30 / 1400);
  }
}
@media (min-width: 1100px) {
  .c-icon-sns {
    width: 30px;
    height: 30px;
  }
}
.c-icon-sns--x {
  background-image: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 50 50"><path fill="%23fff" d="M33.79,45.53c-3.68-4.99-7.96-10.83-11.72-15.92-4.98,5.31-9.96,10.61-14.94,15.92H3.02l17.24-18.38C14.69,19.59,9.12,12.03,3.56,4.47h12.62c3.76,5.01,7.51,10.02,11.27,15.03,4.7-5.01,9.4-10.02,14.1-15.03h4.14c-5.46,5.82-10.93,11.65-16.39,17.47,5.81,7.76,12.52,16.71,17.7,23.6h-13.19ZM25.42,21.65c-3.3-4.4-7.37-9.83-10.7-14.27h-5.38l12.96,17.6,1.82,2.46,11.16,15.16h5.87c-4.63-6.17-9.26-12.34-13.89-18.52-.61-.81-1.22-1.63-1.83-2.45Z"/>></svg>');
}
.c-icon-sns--fb {
  background-image: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 50 50"><path fill="%23fff" d="M33.3,1.77C21.03-2.27,8.49,2.94,2.68,14.48c-.35.69-.64,1.4-.89,2.13-3.16,9.5-.77,19.18,5.82,25.77,4.48,4.48,10.39,7.02,16.7,7.19-.65-.02-1.3-.06-1.94-.14,0-2.51,0-14.78,0-17.31h-5.66v-6.64s5.69,0,5.69,0c.03-2.35-.15-4.73.21-7.05,1.15-6.77,7.83-7,13.36-6.24v5.94c-8-.41-6.55,1.04-6.74,7.34.31,0,4.96,0,6.55,0-.3,2.28-.58,4.46-.87,6.67h-5.64c0,2.45,0,14.75,0,17.04-1.21.22-2.45.36-3.72.39,9.1-.2,17.37-5.32,21.77-14.1.35-.69.64-1.41.88-2.14,4.06-12.27-1.13-24.82-12.67-30.64-.72-.37-1.48-.68-2.25-.93Z"/><path fill="%23fff" d="M24.34,49.58c.22,0,.44,0,.66,0,0,0,0,0,.01,0,0,0,0,0-.01,0-.22,0-.44,0-.66,0Z"/><path fill="%23fff" d="M24.34,49.58s-.01,0-.02,0c0,0,.01,0,.02,0Z"/><path fill="%23fff" d="M25.56,49.58c-.18,0-.37,0-.55,0,.18,0,.37,0,.55,0Z"/></svg>');
}
.c-icon-sns--ig {
  background-image: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 50 50"><path fill="%23fff" d="M19.17,30.72c-6.36-8.49,3.27-17.94,11.64-11.45,6.35,8.49-3.27,17.94-11.64,11.45ZM48.38,13.16c-.32-3.13-1.52-5.89-3.84-8.11-2.44-2.33-5.44-3.36-8.71-3.54-5.59-.3-18.85-.5-23.51.27C6.99,2.65,3.5,5.75,2.03,11.01c-1.13,4.04-.91,22.68-.24,26.68.9,5.47,4.13,8.97,9.55,10.36,3.75.97,22.17.84,26.31.17,5.47-.88,8.99-4.1,10.41-9.5,1.09-4.15.7-21.81.32-25.56ZM44.1,13.57c.42,3.9.55,19.14-.09,23.34-.64,4.15-3.39,6.72-7.56,7.18-3.83.42-20.95.65-24.51-.34-3.4-.95-5.35-3.29-5.91-6.71-.54-3.27-.68-19.61,0-23.98.63-4.12,3.38-6.68,7.53-7.15,4.21-.47,19.36-.53,23.39.09,4.14.64,6.71,3.4,7.17,7.58ZM34.37,33.32c8.89-12.68-5-26.57-17.68-17.7-.41.28-.77.65-1.06,1.06-8.9,12.68,4.99,26.58,17.68,17.7.41-.28.77-.65,1.06-1.06ZM40.52,12.36c0-1.58-1.27-2.86-2.85-2.86-1.58,0-2.86,1.27-2.86,2.85,0,1.58,1.27,2.86,2.85,2.86,1.58,0,2.86-1.27,2.86-2.85Z"/></svg>');
}
.c-icon-sns--yt {
  background-image: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 52 52"><path fill="%23fff" d="M26,.65C12,.65.65,12,.65,26s11.35,25.35,25.35,25.35,25.35-11.35,25.35-25.35S40,.65,26,.65ZM41.06,33.07c-.16,3.19-1.77,4.55-4.96,4.58-6.74.06-13.48.07-20.23,0-3.81-.04-5.27-1.21-5.52-5.01-.26-4.01-.2-8.07.06-12.09.21-3.13,1.75-4.39,4.83-4.47,3.52-.09,7.04-.02,10.56-.02,3.45,0,6.89-.06,10.34.02,3.06.07,4.71,1.44,4.87,4.45.21,4.17.24,8.37.03,12.55Z"/><path fill="%23fff" d="M22.59,30.88c2.88-1.5,5.47-2.86,8.37-4.37-2.95-1.52-5.56-2.87-8.37-4.32v8.69Z"/></svg>');
}
.c-icon-sns--line {
  background-image: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 52 52"><path fill="%23fff" d="M26,.68C12.01.68.68,12.01.68,26s11.34,25.32,25.32,25.32,25.32-11.34,25.32-25.32S39.99.68,26,.68ZM39.27,32.97c-3.55,4.08-11.48,9.05-13.28,9.81-1.8.76-1.54-.48-1.46-.91.04-.25.24-1.45.24-1.45.06-.43.12-1.1-.05-1.53-.19-.47-.94-.71-1.49-.83-8.12-1.07-14.14-6.75-14.14-13.54,0-7.56,7.58-13.72,16.91-13.72s16.91,6.15,16.91,13.72c0,3.03-1.17,5.75-3.62,8.44h0Z"/><path fill="%23fff" d="M37.26,20.87h-4.75c-.18,0-.32.14-.32.32h0v7.37h0c0,.18.14.33.32.33h4.75c.18,0,.32-.14.32-.32v-1.2c0-.18-.15-.32-.32-.32h-3.23v-1.24h3.23c.18,0,.32-.14.32-.32v-1.2c0-.18-.15-.32-.32-.32h-3.23v-1.24h3.23c.18,0,.32-.14.32-.32v-1.2c0-.18-.15-.32-.32-.32Z"/><path fill="%23fff" d="M19.7,27.05h-3.23v-5.86c0-.18-.15-.32-.32-.32h-1.2c-.18,0-.32.14-.32.32v7.37h0c0,.18.14.33.32.33h4.75c.18,0,.32-.14.32-.32v-1.2c0-.18-.15-.32-.32-.32Z"/><rect fill="%23fff" x="21.03" y="20.87" width="1.84" height="8.02" rx=".32" ry=".32"/><path fill="%23fff" d="M30.72,20.87h-1.2c-.18,0-.32.14-.32.32v4.38l-3.38-4.56s-.02-.02-.03-.03c0,0,0,0,0,0,0,0-.01-.01-.02-.02,0,0,0,0,0,0,0,0-.01-.01-.02-.01h0s-.01-.01-.02-.02c0,0,0,0,0,0,0,0-.01,0-.02-.01,0,0,0,0-.01,0,0,0-.01,0-.02,0,0,0,0,0-.01,0,0,0-.01,0-.02,0,0,0,0,0-.01,0,0,0-.01,0-.02,0,0,0,0,0-.01,0,0,0-.01,0-.02,0s-.01,0-.02,0c0,0,0,0-.01,0h-1.19c-.18,0-.32.14-.32.32v7.38c0,.18.14.32.32.32h1.2c.18,0,.32-.14.32-.32v-4.38l3.38,4.56s.05.06.08.08c0,0,0,0,0,0,0,0,.01,0,.02.01,0,0,0,0,0,0,0,0,.01,0,.02,0s.01,0,.02,0c0,0,0,0,0,0,0,0,.01,0,.02,0,0,0,0,0,0,0,.03,0,.05.01.08.01h1.19c.18,0,.32-.14.32-.32v-7.38c0-.18-.14-.32-.32-.32Z"/></svg>');
}

.c-icon-youtube {
  width: calc(100vw * 42 / 750);
  height: calc(100vw * 30 / 750);
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 42 30"><path fill="%23ff0000" d="M21.16.9c4.5,0,8.99-.08,13.49.02,4,.09,6.15,1.88,6.35,5.8.28,5.44.31,10.92.04,16.37-.2,4.16-2.31,5.93-6.47,5.97-8.79.08-17.59.09-26.38,0-4.97-.05-6.87-1.58-7.19-6.53-.34-5.24-.26-10.53.08-15.77C1.35,2.68,3.36,1.03,7.38.93c4.59-.12,9.19-.03,13.78-.03ZM16.94,20.24c3.76-1.96,7.14-3.73,10.92-5.7-3.85-1.99-7.25-3.74-10.92-5.64v11.34Z"/></svg>');
  background-size: contain;
}
@media (min-width: 600px) {
  .c-icon-youtube {
    width: calc(100vw * 26 / 1400);
    height: calc(100vw * 18 / 1400);
  }
}
@media (min-width: 1100px) {
  .c-icon-youtube {
    width: 26px;
    height: 18px;
  }
}

.c-linear-gradient {
  background: linear-gradient(#fff 0, #000 100%);
}
.c-wrap-resposive-iframe {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.c-wrap-resposive-iframe iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

@media (min-width: 600px) {
  .c-sns-box__item:hover {
    transition: all 0.5s ease;
    opacity: 0.7;
  }
}
.c-sns-box__item:not(:first-child) {
  margin-left: calc(100vw * 44 / 750);
}
@media (min-width: 600px) {
  .c-sns-box__item:not(:first-child) {
    margin-left: calc(100vw * 20 / 1400);
  }
}
@media (min-width: 1100px) {
  .c-sns-box__item:not(:first-child) {
    margin-left: 20px;
  }
}
@media (min-width: 600px) {
  .c-sns-box--big .c-icon-sns {
    width: calc(100vw * 50 / 1400);
    height: calc(100vw * 50 / 1400);
  }
}
@media (min-width: 1100px) {
  .c-sns-box--big .c-icon-sns {
    width: 50px;
    height: 50px;
  }
}
@media (min-width: 600px) {
  .c-sns-box--big .c-icon-sns:not(:first-of-type) {
    margin-left: calc(100vw * 67 / 1400);
  }
}
@media (min-width: 1100px) {
  .c-sns-box--big .c-icon-sns:not(:first-of-type) {
    margin-left: 67px;
  }
}
.c-sns-box--wide .c-icon-sns {
  width: calc(100vw * 80 / 750);
  height: calc(100vw * 80 / 750);
}
@media (min-width: 600px) {
  .c-sns-box--wide .c-icon-sns {
    width: calc(100vw * 50 / 1400);
    height: calc(100vw * 50 / 1400);
  }
}
@media (min-width: 1100px) {
  .c-sns-box--wide .c-icon-sns {
    width: 50px;
    height: 50px;
  }
}
.c-sns-box--wide .c-sns-box__item:not(:first-child) {
  margin-left: calc(100vw * 50 / 750);
}
@media (min-width: 600px) {
  .c-sns-box--wide .c-sns-box__item:not(:first-child) {
    margin-left: calc(100vw * 20 / 1400);
  }
}
@media (min-width: 1100px) {
  .c-sns-box--wide .c-sns-box__item:not(:first-child) {
    margin-left: 20px;
  }
}
.c-sns-box--wide:not(:first-of-type) {
  margin-top: calc(100vw * 60 / 750);
}
@media (min-width: 600px) {
  .c-sns-box--wide:not(:first-of-type) {
    margin-top: calc(100vw * 30 / 1400);
  }
}
@media (min-width: 1100px) {
  .c-sns-box--wide:not(:first-of-type) {
    margin-top: 30px;
  }
}

.c-section-link {
  background: linear-gradient(90deg, #008cff, #00b4ff);
}
.c-section-link__inner {
  padding: calc(100vw * 40 / 750) calc(100vw * 45 / 750);
}
@media (min-width: 600px) {
  .c-section-link__inner {
    padding: calc(100vw * 55 / 1400) calc(100vw * 40 / 1400);
  }
}
@media (min-width: 1100px) {
  .c-section-link__inner {
    padding: 55px 40px;
  }
}
.c-section-link__list {
  display: flex;
  justify-content: center;
  list-style: none;
  margin: 0;
  padding: 0;
}
.c-section-link__item:not(:first-of-type) {
  margin-left: calc(100vw * 19 / 750);
}
@media (min-width: 600px) {
  .c-section-link__item:not(:first-of-type) {
    margin-left: calc(100vw * 38 / 1400);
  }
}
@media (min-width: 1100px) {
  .c-section-link__item:not(:first-of-type) {
    margin-left: 38px;
  }
}
.c-section-link__item > a {
  box-sizing: border-box;
  position: relative;
  display: inline-block;
  padding: calc(100vw * 25 / 750) calc(100vw * 10 / 750) calc(100vw * 24 / 750);
  min-width: calc(100vw * 206 / 750);
  border-radius: calc(100vw * 46 / 750) calc(100vw * 46 / 750)/50% 50%;
  color: #008cff;
  font-size: calc(100vw * 36 / 750);
  font-weight: 700;
  text-decoration: none;
  text-align: center;
  background-color: #fff;
  box-shadow: calc(100vw * 2 / 750) calc(100vw * 2 / 750) calc(100vw * 4 / 750) rgba(0, 0, 0, 0.5);
}
@media (min-width: 600px) {
  .c-section-link__item > a {
    padding: 15px 30px;
    min-width: calc(100vw * 250 / 1400);
    border-radius: 30px 30px/50% 50%;
    box-shadow: calc(100vw * 2 / 1400) calc(100vw * 2 / 1400) calc(100vw * 4 / 1400) rgba(0, 0, 0, 0.5);
    font-size: 26px;
  }
}
@media (min-width: 1400px) {
  .c-section-link__item > a {
    min-width: 250px;
    box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
    font-size: 26px;
  }
}
.c-section-link__item > a .c-icon-arrow {
  display: none;
}
@media (min-width: 600px) {
  .c-section-link__item > a .c-icon-arrow {
    display: block;
    position: absolute;
    top: 50%;
    right: calc(100vw * 24 / 1400);
    transform: translateY(-50%);
    margin: 0;
  }
}
@media (min-width: 1100px) {
  .c-section-link__item > a .c-icon-arrow {
    right: 24px;
  }
}

.c-policy__heading-en {
  display: none;
}
@media (min-width: 600px) {
  .c-policy__heading-en {
    display: block;
    margin-top: 0;
    margin-bottom: 30px;
    font-size: 48px;
    font-weight: 700;
    line-height: 1;
  }
}
@media (min-width: 1100px) {
  .c-policy__heading-en {
    margin-bottom: 30px;
    font-size: 48px;
  }
}
.c-policy__heading-ja {
  margin-top: 0;
  margin-bottom: calc(100vw * 70 / 750);
  color: #008cff;
  font-size: calc(100vw * 55 / 750);
  font-weight: 800;
  text-align: center;
}
@media (min-width: 600px) {
  .c-policy__heading-ja {
    margin-bottom: 55px;
    color: #000;
    font-size: 34px;
  }
}
@media (min-width: 1100px) {
  .c-policy__heading-ja {
    margin-bottom: 55px;
    font-size: 34px;
  }
}
.c-policy__list__item {
  margin: 0;
}
.c-policy__list__item:not(:first-of-type) {
  margin-top: calc(100vw * 80 / 750);
}
@media (min-width: 600px) {
  .c-policy__list__item:not(:first-of-type) {
    margin-top: calc(100vw * 45 / 1400);
  }
}
@media (min-width: 1400px) {
  .c-policy__list__item:not(:first-of-type) {
    margin-top: 45px;
  }
}
.c-policy__list__heading {
  margin-bottom: calc(100vw * 30 / 750);
  padding-left: calc(100vw * 85 / 750);
  text-indent: calc(-100vw * 85 / 750);
  color: #008cff;
  font-size: calc(100vw * 45 / 750);
  font-weight: 800;
  line-height: 1.4;
}
@media (min-width: 600px) {
  .c-policy__list__heading {
    margin-bottom: 25px;
    padding-left: 82px;
    text-indent: -82px;
    font-size: 33px;
    border-bottom: 1px solid #000;
  }
}
@media (min-width: 1100px) {
  .c-policy__list__heading {
    margin-bottom: 25px;
    font-size: 33px;
  }
}
@media (min-width: 600px) {
  .c-policy__list__heading__num {
    margin-right: calc(100vw * 10 / 1400);
    font-family: "Poppins", sans-serif;
    font-size: calc(100vw * 78 / 1400);
    font-weight: 500;
    line-height: 1;
  }
}
@media (min-width: 1100px) {
  .c-policy__list__heading__num {
    margin-right: 10px;
    font-size: 78px;
  }
}
.c-policy__list__content {
  margin-left: 0;
  text-align: justify;
}
@media (min-width: 600px) {
  .c-policy__list__content {
    display: flex;
    justify-content: space-between;
  }
}
.c-policy__list__content p {
  margin-top: 0;
  margin-bottom: 0;
  font-size: calc(100vw * 32 / 750);
  font-weight: 500;
  line-height: 1.78;
}
@media (min-width: 600px) {
  .c-policy__list__content p {
    font-size: 15px;
    font-weight: 500;
  }
}
@media (min-width: 1100px) {
  .c-policy__list__content p {
    font-size: 15px;
  }
}
@media (min-width: 600px) {
  .c-policy__list__textarea {
    width: calc(100vw * 550 / 1400);
  }
}
@media (min-width: 1100px) {
  .c-policy__list__textarea {
    width: 550px;
  }
}
.c-policy__list__image {
  margin: calc(100vw * 40 / 750) auto 0;
  width: calc(100vw * 356 / 750);
}
@media (min-width: 600px) {
  .c-policy__list__image {
    margin: 0 0 0 calc(100vw * 20 / 1400);
    width: calc(100vw * 148 / 1400);
  }
}
@media (min-width: 1100px) {
  .c-policy__list__image {
    margin-left: 20px;
    width: 148px;
  }
}
.c-policy__list__image--wide {
  width: calc(100vw * 500 / 750);
}
@media (min-width: 600px) {
  .c-policy__list__image--wide {
    width: calc(100vw * 148 / 1400);
  }
}
@media (min-width: 1400px) {
  .c-policy__list__image--wide {
    width: 148px;
  }
}

.c-career-list__item {
  display: flex;
  margin-top: 0;
  margin-bottom: 0;
  padding-top: calc(100vw * 10 / 750);
  padding-bottom: calc(100vw * 10 / 750);
  border-bottom: 1px solid #000;
}
@media (min-width: 600px) {
  .c-career-list__item {
    padding-top: calc(100vw * 10 / 1400);
    padding-bottom: calc(100vw * 10 / 1400);
  }
}
@media (min-width: 1100px) {
  .c-career-list__item {
    padding-top: 10px;
    padding-bottom: 10px;
  }
}
@media (min-width: 600px) {
  .c-career-list__item:first-of-type {
    padding-top: 0;
  }
}
@media (min-width: 1100px) {
  .c-career-list__item:first-of-type {
    padding-top: 0;
  }
}
.c-career-list__year {
  width: calc(100vw * 120 / 750);
  color: #008cff;
  font-size: calc(100vw * 30 / 750);
  font-weight: 500;
  line-height: 1.5;
}
@media (min-width: 600px) {
  .c-career-list__year {
    width: 60px;
    font-size: 15px;
  }
}
.c-career-list__text {
  margin-left: calc(100vw * 20 / 750);
  width: calc(100% - 100vw * 140 / 750);
  font-size: calc(100vw * 30 / 750);
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.1em;
}
@media (min-width: 600px) {
  .c-career-list__text {
    margin-left: 20px;
    width: calc(100% - 80px);
    font-size: 15px;
  }
}
.c-textbox__heading {
  margin-top: 0;
  margin-bottom: calc(100vw * 10 / 750);
  font-size: calc(100vw * 34 / 750);
  font-weight: 700;
}
@media (min-width: 600px) {
  .c-textbox__heading {
    margin-bottom: 15px;
    font-size: 15px;
  }
}
@media (min-width: 1100px) {
  .c-textbox__heading {
    margin-bottom: 15px;
    font-size: 15px;
  }
}
.c-textbox__text p {
  font-size: calc(100vw * 28 / 750);
  font-weight: 500;
  line-height: 1.75;
}
@media (min-width: 600px) {
  .c-textbox__text p {
    font-size: 15px;
  }
}
@media (min-width: 1100px) {
  .c-textbox__text p {
    font-size: 15px;
  }
}

/* ==========================================================================
   Project
** ========================================================================== */
.p-home__main-copy__inner {
  padding: calc(100vw * 80 / 750) calc(100vw * 40 / 750) 0;
}
@media (min-width: 600px) {
  .p-home__main-copy__inner {
    margin-left: auto;
    margin-right: auto;
    padding: calc(100vw * 90 / 1400) calc(100vw * 40 / 1400) calc(100vw * 120 / 1400);
    width: calc(100vw * 895 / 1400);
  }
}
@media (min-width: 1100px) {
  .p-home__main-copy__inner {
    padding: 90px 40px 120px;
    width: 895px;
  }
}
.p-home__main-copy__heading {
  margin-top: 0;
  margin-bottom: calc(100vw * 65 / 750);
}
@media (min-width: 600px) {
  .p-home__main-copy__heading {
    margin-bottom: calc(100vw * 45 / 1400);
  }
}
@media (min-width: 1100px) {
  .p-home__main-copy__heading {
    margin-bottom: 45px;
  }
}
.p-home__main-copy__text {
  text-align: center;
}
@media (min-width: 600px) {
  .p-home__main-copy__text {
    text-align: center;
  }
}
.p-home__main-copy__text p {
  margin-top: 0;
  font-size: calc(100vw * 30 / 750);
  margin-bottom: 1em;
  font-weight: 500;
}
@media (min-width: 600px) {
  .p-home__main-copy__text p {
    font-size: 19px;
  }
}
@media (min-width: 1100px) {
  .p-home__main-copy__text p {
    font-size: 19px;
  }
}
.p-home__main-copy__text p:last-of-type {
  margin-bottom: 0;
}
.p-home__main-copy__visual {
  display: none;
}
@media (min-width: 600px) {
  .p-home__main-copy__visual {
    display: block;
    margin: 0;
  }
}
.p-home__main-copy__visual__item {
  margin: 0;
}
@media (min-width: 600px) {
  .p-home__main-copy__visual__item {
    width: 360px;
  }
}
@media (min-width: 600px) {
  .p-home__main-copy__visual__pc .slick-dots {
    left: 50%;
    right: auto;
    bottom: calc(-100vw * 50 / 1400);
    padding: 0;
    transform: translateX(-50%);
  }
}
@media (min-width: 1400px) {
  .p-home__main-copy__visual__pc .slick-dots {
    bottom: -50px;
  }
}
@media (min-width: 600px) {
  .p-home__main-copy__visual__pc.slick-dotted.slick-slider {
    margin-bottom: calc(100vw * 50 / 1400);
  }
}
@media (min-width: 1400px) {
  .p-home__main-copy__visual__pc.slick-dotted.slick-slider {
    margin-bottom: 50px;
  }
}
.p-home__policy {
  padding-top: calc(100vw * 80 / 750);
}
@media (min-width: 600px) {
  .p-home__policy {
    padding-top: calc(100vw * 120 / 1400);
    padding-bottom: calc(100vw * 190 / 1400);
  }
}
@media (min-width: 1100px) {
  .p-home__policy {
    padding-top: 120px;
    padding-bottom: 190px;
  }
}
.p-home__policy__inner {
  padding-bottom: calc(100vw * 120 / 750);
}
@media (min-width: 600px) {
  .p-home__policy__inner {
    padding-bottom: 0;
  }
}
@media (min-width: 600px) {
  .p-home__policy__sp {
    display: none;
    padding-bottom: 0;
  }
}
.p-home__policy__pc {
  display: none;
}
@media (min-width: 600px) {
  .p-home__policy__pc {
    display: block;
  }
}
.p-home__policy__linkbox {
  margin-top: calc(100vw * 125 / 750);
}
.p-home__policy__link {
  box-sizing: border-box;
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  padding: calc(100vw * 25 / 750) calc(100vw * 120 / 750) calc(100vw * 35 / 750);
  width: calc(100vw * 552 / 750);
  text-align: center;
  text-decoration: none;
  border-radius: calc(100vw * 15 / 750) calc(100vw * 15 / 750);
  box-shadow: calc(100vw * 2 / 750) calc(100vw * 2 / 750) calc(100vw * 4 / 750) rgba(0, 0, 0, 0.5);
}
@media (min-width: 600px) {
  .p-home__policy__link {
    box-shadow: calc(100vw * 2 / 1400) calc(100vw * 2 / 1400) calc(100vw * 4 / 1400) rgba(0, 0, 0, 0.5);
  }
}
@media (min-width: 1100px) {
  .p-home__policy__link {
    box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
  }
}
.p-home__policy__link__heading-en {
  display: block;
  margin-bottom: calc(100vw * 15 / 750);
  color: #008cff;
  font-size: calc(100vw * 42 / 750);
  font-weight: 700;
}
.p-home__policy__link__text {
  display: block;
  color: #000;
  font-size: calc(100vw * 45 / 750);
  font-weight: 500;
}
.p-home__policy__link .c-icon-arrow {
  position: absolute;
  top: 50%;
  right: calc(100vw * 80 / 750);
  width: calc(100vw * 42 / 750);
  height: calc(100vw * 42 / 750);
  transform: translateY(-50%);
}
.p-home__policy__visual__item {
  margin: 0;
  width: calc(100vw * 498 / 750);
}
.p-home__policy__box {
  box-sizing: border-box;
}
@media (min-width: 600px) {
  .p-home__policy__box {
    margin-left: auto;
    margin-right: auto;
    padding: calc(100vw * 90 / 1400) calc(100vw * 164 / 1400) calc(100vw * 125 / 1400);
    width: calc(100vw * 1100 / 1400);
    border-radius: calc(100vw * 25 / 1400) calc(100vw * 25 / 1400);
    background-color: #fff;
    box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
  }
}
@media (min-width: 1400px) {
  .p-home__policy__box {
    padding: 90px 164px 125px;
    width: 1100px;
    border-radius: 25px 25px;
  }
}
.p-home__news {
  display: none;
}
@media (min-width: 600px) {
  .p-home__news {
    display: block;
  }
}
.p-home__news__inner {
  background: linear-gradient(90deg, #008cff, #00b4ff);
  text-align: center;
}
@media (min-width: 600px) {
  .p-home__news__inner {
    padding: calc(100vw * 65 / 1400) calc(100vw * 80 / 1400) calc(100vw * 85 / 1400);
  }
}
@media (min-width: 600px) {
  .p-home__news__header {
    margin-bottom: calc(100vw * 25 / 1400);
  }
}
@media (min-width: 1100px) {
  .p-home__news__header {
    margin-bottom: 25px;
  }
}
.p-home__news__heading {
  margin-top: 0;
  margin-bottom: 0;
  line-height: 1;
}
.p-home__news__text {
  margin-top: 0;
  margin-bottom: 0;
  color: #fff;
  font-weight: 500;
}
@media (min-width: 600px) {
  .p-home__news__text {
    margin-bottom: 40px;
    font-size: 30px;
    letter-spacing: 0.05em;
  }
}
@media (min-width: 1100px) {
  .p-home__news__text {
    margin-bottom: 40px;
    font-size: 30px;
  }
}
@media (min-width: 600px) {
  .p-home__profile__inner {
    padding: calc(100vw * 167 / 1400) calc(100vw * 80 / 1400) calc(100vw * 170 / 1400);
    background-color: #d9eeff;
  }
}
@media (min-width: 1400px) {
  .p-home__profile__inner {
    padding: 167px 80px 150px;
  }
}
.p-home__profile__block {
  display: flex;
  flex-wrap: wrap;
}
@media (min-width: 600px) {
  .p-home__profile__block {
    position: relative;
    flex-direction: row-reverse;
    flex-wrap: nowrap;
    align-items: stretch;
    margin-left: auto;
    margin-right: auto;
    width: calc(100vw * 1100 / 1400);
  }
}
@media (min-width: 1400px) {
  .p-home__profile__block {
    width: 1100px;
  }
}
.p-home__profile__header {
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 41.6%;
  text-align: center;
  background: linear-gradient(90deg, #008cff, #00b4ff);
}
@media (min-width: 600px) {
  .p-home__profile__header {
    position: absolute;
    top: 50%;
    left: calc(-100vw * 22 / 1400);
    display: block;
    width: auto;
    background: transparent;
    transform: translateY(-50%);
  }
}
@media (min-width: 1400px) {
  .p-home__profile__header {
    left: -22px;
  }
}
.p-home__profile__heading {
  margin: 0;
  color: #fff;
  font-size: calc(100vw * 40 / 750);
  font-weight: 700;
  letter-spacing: 0.03em;
}
@media (min-width: 600px) {
  .p-home__profile__heading {
    color: #008cff;
    font-size: 48px;
    line-height: 1;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
  }
}
@media (min-width: 1100px) {
  .p-home__profile__heading {
    font-size: 48px;
  }
}
.p-home__profile__image {
  margin: 0;
  width: 58.4%;
  height: calc(100vw * 332 / 750);
}
@media (min-width: 600px) {
  .p-home__profile__image {
    width: 50%;
    height: auto;
  }
}
@media (min-width: 600px) {
  .p-home__profile__image > .pc-only {
    height: 100%;
  }
}
.p-home__profile__image img {
  display: block;
  object-fit: cover;
  height: calc(100vw * 332 / 750);
}
@media (min-width: 600px) {
  .p-home__profile__image img {
    height: 100%;
  }
}
.p-home__profile__box {
  box-sizing: border-box;
  padding: calc(100vw * 40 / 750) calc(100vw * 45 / 750);
  width: 100%;
  background-color: #d9eeff;
}
@media (min-width: 600px) {
  .p-home__profile__box {
    padding: calc(100vw * 55 / 1400) calc(100vw * 70 / 1400);
    width: 50%;
    background-color: #fff;
  }
}
@media (min-width: 1400px) {
  .p-home__profile__box {
    padding: 55px 70px;
  }
}
.p-home__profile__name {
  margin-top: 0;
  margin-bottom: 0;
}
.p-home__profile__name__kanji {
  font-size: calc(100vw * 40 / 750);
  font-weight: 700;
}
@media (min-width: 600px) {
  .p-home__profile__name__kanji {
    font-size: 42px;
  }
}
@media (min-width: 1100px) {
  .p-home__profile__name__kanji {
    font-size: 42px;
  }
}
.p-home__profile__name__kanji rt {
  margin-bottom: calc(100vw * 20 / 750);
  font-size: calc(100vw * 26 / 750);
  font-weight: 500;
  text-align: center;
}
@media (min-width: 600px) {
  .p-home__profile__name__kanji rt {
    margin-bottom: 10px;
    font-size: 24px;
  }
}
@media (min-width: 1100px) {
  .p-home__profile__name__kanji rt {
    margin-bottom: 10px;
    font-size: 24px;
  }
}
.p-home__profile__name__kanji:not(:first-of-type) {
  margin-left: calc(100vw * 20 / 750);
}
@media (min-width: 600px) {
  .p-home__profile__name__kanji:not(:first-of-type) {
    margin-left: calc(100vw * 45 / 1400);
  }
}
@media (min-width: 1100px) {
  .p-home__profile__name__kanji:not(:first-of-type) {
    margin-left: 45px;
  }
}
.p-home__profile__listbox {
  margin-top: calc(100vw * 35 / 750);
  padding-top: calc(100vw * 35 / 750);
  border-top: 1px solid #008cff;
}
@media (min-width: 600px) {
  .p-home__profile__listbox {
    margin-top: calc(100vw * 30 / 1400);
    padding-top: calc(100vw * 30 / 1400);
  }
}
@media (min-width: 1100px) {
  .p-home__profile__listbox {
    margin-top: 30px;
    padding-top: 30px;
  }
}
.p-home__profile__list {
  display: flex;
  margin-bottom: calc(100vw * 15 / 750);
}
@media (min-width: 600px) {
  .p-home__profile__list {
    margin-bottom: calc(100vw * 10 / 1400);
  }
}
@media (min-width: 1100px) {
  .p-home__profile__list {
    margin-bottom: 10px;
  }
}
.p-home__profile__list__title {
  margin-right: calc(100vw * 50 / 750);
  width: calc(100vw * 150 / 750);
  color: #008cff;
  font-size: calc(100vw * 30 / 750);
  font-weight: 500;
  white-space: nowrap;
}
@media (min-width: 600px) {
  .p-home__profile__list__title {
    margin-right: 20px;
    width: 90px;
    font-size: 17px;
  }
}
@media (min-width: 1100px) {
  .p-home__profile__list__title {
    margin-right: 20px;
    width: 90px;
    font-size: 17px;
  }
}
.p-home__profile__list__content {
  margin-left: 0;
  width: calc(100% - 100vw * 140 / 750);
  font-size: calc(100vw * 30 / 750);
  font-weight: 500;
}
@media (min-width: 600px) {
  .p-home__profile__list__content {
    width: calc(100% - 110px);
    font-size: 17px;
  }
}
@media (min-width: 1100px) {
  .p-home__profile__list__content {
    font-size: 17px;
  }
}
.p-home__profile__text {
  box-sizing: border-box;
  padding: calc(100vw * 70 / 750) calc(100vw * 45 / 750) calc(100vw * 115 / 750);
  text-align: justify;
}
@media (min-width: 600px) {
  .p-home__profile__text {
    margin-left: auto;
    margin-right: auto;
    padding: calc(100vw * 70 / 1400) calc(100vw * 100 / 1400) 0;
    width: calc(100vw * 1100 / 1400);
  }
}
@media (min-width: 1400px) {
  .p-home__profile__text {
    padding: 70px 100px 0;
    width: 1100px;
  }
}
.p-home__profile__text p {
  margin-top: 0;
  margin-bottom: 1.5rem;
  font-size: calc(100vw * 30 / 750);
  font-weight: 500;
  line-height: 2;
}
@media (min-width: 600px) {
  .p-home__profile__text p {
    font-size: 15px;
    line-height: 2;
  }
}
@media (min-width: 1100px) {
  .p-home__profile__text p {
    font-size: 15px;
  }
}
.p-home__profile__text p:last-of-type {
  margin-bottom: 0;
}
@media (min-width: 600px) {
  .p-home__career__inner {
    position: relative;
    padding-left: calc(100vw * 150 / 1400);
    padding-right: calc(100vw * 150 / 1400);
    padding-bottom: calc(100vw * 120 / 1400);
  }
}
@media (min-width: 1400px) {
  .p-home__career__inner {
    padding-left: 150px;
    padding-right: 150px;
    padding-bottom: 120px;
  }
}
.p-home__career__header {
  padding: calc(100vw * 35 / 750) calc(100vw * 45 / 750);
  text-align: center;
  background: linear-gradient(90deg, #008cff, #00b4ff);
}
@media (min-width: 600px) {
  .p-home__career__header {
    position: relative;
    background: transparent;
  }
}
.p-home__career__heading-en {
  margin-top: 0;
  margin-bottom: calc(100vw * 10 / 750);
  color: #fff;
  font-size: calc(100vw * 40 / 750);
  font-weight: 700;
}
@media (min-width: 600px) {
  .p-home__career__heading-en {
    position: absolute;
    top: calc(100% + 100vw * 20 / 1400);
    left: 0;
    margin: 0;
    color: #008cff;
    font-size: calc(100vw * 48 / 1400);
    line-height: 1;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    z-index: 2;
  }
}
@media (min-width: 1400px) {
  .p-home__career__heading-en {
    top: calc(100% + 20px);
    font-size: 48px;
  }
}
.p-home__career__heading {
  margin-top: 0;
  margin-bottom: 0;
  color: #fff;
  font-size: calc(100vw * 55 / 750);
  font-weight: bold;
}
@media (min-width: 600px) {
  .p-home__career__heading {
    color: #008cff;
    font-size: 34px;
  }
}
@media (min-width: 1100px) {
  .p-home__career__heading {
    font-size: 34px;
  }
}
@media (min-width: 600px) {
  .p-home__career__content {
    position: relative;
    display: flex;
    justify-content: space-between;
    margin-left: auto;
    margin-right: auto;
    width: calc(100vw * 1100 / 1400);
  }
}
@media (min-width: 1400px) {
  .p-home__career__content {
    display: flex;
    width: 1100px;
  }
}
@media (min-width: 600px) {
  .p-home__career__content:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: calc(100vw * 20 / 1400);
    width: calc(100vw * 48 / 1400);
    height: 100%;
    background-color: #d9eeff;
    z-index: 1;
  }
}
@media (min-width: 1400px) {
  .p-home__career__content:before {
    width: 48px;
  }
}
.p-home__career__content .c-textbox {
  margin-top: calc(100vw * 60 / 750);
}
@media (min-width: 600px) {
  .p-home__career__content .c-textbox {
    margin-top: calc(100vw * 45 / 1400);
  }
}
@media (min-width: 1400px) {
  .p-home__career__content .c-textbox {
    margin-top: 45px;
  }
}
.p-home__career__history {
  padding: calc(100vw * 60 / 750) calc(100vw * 43 / 750);
}
@media (min-width: 600px) {
  .p-home__career__history {
    padding: 0 0 0 calc(100vw * 100 / 1400);
    width: calc(100vw * 560 / 1400);
  }
}
@media (min-width: 1400px) {
  .p-home__career__history {
    padding-left: 100px;
    width: 560px;
  }
}
.p-home__career__visual {
  position: relative;
  overflow: hidden;
}
@media (min-width: 600px) {
  .p-home__career__visual {
    width: calc(100vw * 316 / 1400);
  }
}
@media (min-width: 1400px) {
  .p-home__career__visual {
    width: 316px;
  }
}
.p-home__career__slide__item {
  margin: 0;
}
.p-home__career__slide__item img {
  width: calc(100vw * 676 / 750);
}
.p-home__career__slide__item figcaption {
  margin-top: calc(100vw * 15 / 750);
  font-size: calc(100vw * 28 / 750);
  text-align: center;
}
@media (min-width: 600px) {
  .p-home__career__slide__item figcaption {
    margin-top: 8px;
    font-size: 15px;
    text-align: left;
  }
}
@media (min-width: 1100px) {
  .p-home__career__slide__item figcaption {
    margin-top: 8px;
    font-size: 15px;
  }
}
@media (min-width: 600px) {
  .p-home__career__slide__item:not(:first-of-type) {
    margin-top: calc(100vw * 35 / 1400);
  }
}
@media (min-width: 1100px) {
  .p-home__career__slide__item:not(:first-of-type) {
    margin-top: 35px;
  }
}
@media (min-width: 600px) {
  .p-home__career__slide__item:nth-of-type(2) {
    margin-top: 0;
  }
}
@media (min-width: 600px) {
  .p-home__career__slide__item--pc-none {
    display: none;
  }
}
.p-home__career__slide__toggle {
  position: absolute;
  bottom: calc(100vw * 108 / 750);
  right: calc(100vw * 180 / 750);
  width: calc(100vw * 24 / 750);
  height: calc(100vw * 24 / 750);
}
@media (min-width: 600px) {
  .p-home__career__slide__toggle {
    display: none;
  }
}
.p-home__career__slide__toggle:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: calc(100vw * 24 / 750);
  height: calc(100vw * 24 / 750);
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><rect fill="%23898989" x="4.95" y="2.17" width="4.93" height="19.66"/><rect fill="%23898989" x="14.12" y="2.17" width="4.93" height="19.66"/></svg>');
  background-size: contain;
}
.p-home__career__slide__toggle.is-pause:before {
  background-image: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><polygon fill="%23898989" points="19 12 19 12 5 21.83 5 2.17 19 12"/></svg>');
}
.p-home__career__slide.slick-dotted.slick-slider {
  margin-bottom: calc(100vw * 170 / 750);
}
.p-home__application__inner {
  background: linear-gradient(90deg, #008cff, #00b4ff);
  text-align: center;
}
.p-home__application__box {
  box-sizing: border-box;
  margin-left: auto;
  margin-right: auto;
  padding: calc(100vw * 75 / 750) calc(100vw * 75 / 750);
}
@media (min-width: 600px) {
  .p-home__application__box {
    padding: calc(100vw * 70 / 1400) calc(100vw * 80 / 1400);
    width: calc(100vw * 610 / 1400);
  }
}
@media (min-width: 1100px) {
  .p-home__application__box {
    padding: 70px 80px;
    width: 610px;
  }
}
.p-home__application__heading {
  margin: 0;
  color: #fff;
  font-size: calc(100vw * 38 / 750);
  font-weight: 700;
  text-align: center;
  line-height: 1.4;
}
@media (min-width: 600px) {
  .p-home__application__heading {
    font-size: calc(100vw * 34 / 1400);
  }
}
@media (min-width: 1100px) {
  .p-home__application__heading {
    font-size: 34px;
  }
}
.p-home__application__heading__name {
  display: block;
  font-size: calc(100vw * 55 / 750);
}
@media (min-width: 600px) {
  .p-home__application__heading__name {
    display: inline;
    margin-right: calc(100vw * 10 / 1400);
    font-size: calc(100vw * 49 / 1400);
  }
}
@media (min-width: 1100px) {
  .p-home__application__heading__name {
    margin-right: 10px;
    font-size: 49px;
  }
}
.p-home__application__link {
  display: block;
  margin-top: calc(100vw * 28 / 750);
  padding: calc(100vw * 16 / 750) calc(100vw * 45 / 750) calc(100vw * 14 / 750);
  border-radius: calc(100vw * 32 / 750) calc(100vw * 32 / 750)/50% 50%;
  color: #008cff;
  font-size: calc(100vw * 30 / 750);
  font-weight: 700;
  text-align: center;
  text-decoration: none;
  background-color: #fff;
}
@media (min-width: 600px) {
  .p-home__application__link {
    margin-top: calc(100vw * 25 / 1400);
    padding: calc(100vw * 10 / 1400) calc(100vw * 25 / 1400) calc(100vw * 10 / 1400);
    border-radius: calc(100vw * 25 / 1400) calc(100vw * 25 / 1400)/50% 50%;
    font-size: calc(100vw * 25 / 1400);
  }
}
@media (min-width: 1100px) {
  .p-home__application__link {
    margin-top: 25px;
    padding: 10px 25px 10px;
    border-radius: 25px 25px/50% 50%;
    font-size: 25px;
  }
}
.p-home__application__link:link, .p-home__application__link:visited {
  color: #008cff;
}
.p-home__support__inner {
  padding: calc(100vw * 50 / 750) calc(100vw * 45 / 750) calc(100vw * 75 / 750);
}
@media (min-width: 600px) {
  .p-home__support__inner {
    margin-left: auto;
    margin-right: auto;
    padding: calc(100vw * 110 / 1400) 0 calc(100vw * 120 / 1400);
  }
}
@media (min-width: 1100px) {
  .p-home__support__inner {
    padding: 110px 0 120px;
  }
}
.p-home__support__heading {
  margin-top: 0;
  margin-bottom: calc(100vw * 30 / 750);
  font-size: calc(100vw * 45 / 750);
  font-weight: 700;
  text-align: center;
  line-height: 1.5;
}
@media (min-width: 600px) {
  .p-home__support__heading {
    margin-bottom: calc(100vw * 20 / 1400);
    font-size: calc(100vw * 34 / 1400);
  }
}
@media (min-width: 1100px) {
  .p-home__support__heading {
    margin-bottom: 20px;
    font-size: 34px;
  }
}
.p-home__support__heading__name {
  color: #008cff;
  font-size: calc(100vw * 60 / 750);
}
@media (min-width: 600px) {
  .p-home__support__heading__name {
    font-size: calc(100vw * 49 / 1400);
  }
}
@media (min-width: 1100px) {
  .p-home__support__heading__name {
    font-size: 49px;
  }
}
.p-home__support__account {
  margin-bottom: calc(100vw * 45 / 750);
}
@media (min-width: 600px) {
  .p-home__support__account {
    display: flex;
    justify-content: space-between;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: calc(100vw * 44 / 1400);
    width: calc(100vw * 992 / 1400);
  }
}
@media (min-width: 1400px) {
  .p-home__support__account {
    margin-bottom: 44px;
    width: 992px;
  }
}
.p-home__support__account__link {
  display: block;
}
@media (min-width: 600px) {
  .p-home__support__account__link {
    width: calc(100vw * 468 / 1400);
  }
}
@media (min-width: 1400px) {
  .p-home__support__account__link {
    width: 468px;
  }
}
.p-home__support__account__link img {
  display: block;
}
.p-home__support__account__link:not(:first-of-type) {
  margin-top: calc(100vw * 38 / 750);
}
@media (min-width: 600px) {
  .p-home__support__account__link:not(:first-of-type) {
    margin-top: 0;
  }
}
@media (min-width: 600px) {
  .p-home__support__sns {
    display: flex;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
    width: calc(100vw * 1100 / 1400);
  }
}
@media (min-width: 1400px) {
  .p-home__support__sns {
    width: 1100px;
  }
}
.p-home__support__sns__link {
  box-sizing: border-box;
  display: block;
  padding: calc(100vw * 20 / 750) calc(100vw * 34 / 750);
  border-radius: calc(100vw * 34 / 750) calc(100vw * 34 / 750)/50% 50%;
  font-size: calc(100vw * 28 / 750);
  font-weight: 500;
  text-align: center;
  text-decoration: none;
}
@media (min-width: 600px) {
  .p-home__support__sns__link {
    padding: calc(100vw * 15 / 1400) calc(100vw * 30 / 1400);
    width: calc(100vw * 290 / 1400);
    border-radius: calc(100vw * 30 / 1400) calc(100vw * 30 / 1400)/50% 50%;
    font-size: calc(100vw * 27 / 1400);
  }
}
@media (min-width: 1400px) {
  .p-home__support__sns__link {
    padding: 15px 30px;
    width: 290px;
    border-radius: 30px 30px/50% 50%;
    font-size: 27px;
  }
}
.p-home__support__sns__link:link, .p-home__support__sns__link:visited {
  color: #fff;
}
.p-home__support__sns__link:not(:first-of-type) {
  margin-top: calc(100vw * 34 / 750);
}
@media (min-width: 600px) {
  .p-home__support__sns__link:not(:first-of-type) {
    margin-top: 0;
    margin-left: calc(100vw * 32 / 1400);
  }
}
@media (min-width: 1400px) {
  .p-home__support__sns__link:not(:first-of-type) {
    margin-left: 32px;
  }
}
.p-home__support__sns__link--ig {
  background: linear-gradient(90deg, #fa6d00 0%, #fb2e59 50%, #86368f 100%);
}
.p-home__support__sns__link--fb {
  background-color: #008cff;
}
.p-home__support__sns__link--x {
  background-color: #000;
}
.p-policy__inner {
  padding: calc(100vw * 160 / 750) calc(100vw * 45 / 750) calc(100vw * 145 / 750);
}
@media (min-width: 600px) {
  .p-policy__inner {
    position: relative;
    flex-direction: row-reverse;
    flex-wrap: nowrap;
    margin-left: auto;
    margin-right: auto;
    width: calc(100vw * 1100 / 1400);
  }
}
@media (min-width: 1400px) {
  .p-policy__inner {
    width: 1100px;
  }
}

/* ==========================================================================
   Utility
** ========================================================================== */
.animation {
  -moz-transition: background 0.5s ease;
  -o-transition: background 0.5s ease;
  -ms-transition: background 0.5s ease;
  -webkit-transition: background 0.5s ease;
  transition: background 0.5s ease;
}
.animation:hover {
  background-color: #F00;
}

.animset {
  -webkit-animation: anim 1.5s ease-in-out infinite alternate;
  -o-animation: anim 1.5s ease-in-out infinite alternate;
  -ms-animation: anim 1.5s ease-in-out infinite alternate;
  -moz-animation: anim 1.5s ease-in-out infinite alternate;
  animation: anim 1.5s ease-in-out infinite alternate;
}

@-webkit-keyframes anim {
  0% {
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -moz-transform: rotate(-130deg);
    -o-transform: rotate(-130deg);
    -ms-transform: rotate(-130deg);
    -webkit-transform: rotate(-130deg);
    transform: rotate(-130deg);
  }
}
@-moz-keyframes anim {
  0% {
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -moz-transform: rotate(-130deg);
    -o-transform: rotate(-130deg);
    -ms-transform: rotate(-130deg);
    -webkit-transform: rotate(-130deg);
    transform: rotate(-130deg);
  }
}
@keyframes anim {
  0% {
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -moz-transform: rotate(-130deg);
    -o-transform: rotate(-130deg);
    -ms-transform: rotate(-130deg);
    -webkit-transform: rotate(-130deg);
    transform: rotate(-130deg);
  }
}
/************************************************

 Single property

************************************************/
.set-nowrap {
  white-space: nowrap;
}

.set-pos-rel {
  position: relative;
}

.set-pos-abs {
  position: absolute;
}

.set-hide {
  display: none;
}

.set-disp-cell {
  display: table-cell;
}

.set-disp-ib {
  display: inline-block;
}

.set-valign-m {
  vertical-align: middle;
}

.set-float-l {
  float: left;
}

.set-float-r {
  float: right;
}

.set-valign-m {
  vertical-align: middle;
}

.set-valign-t {
  vertical-align: top;
}

.set-valign-b {
  vertical-align: bottom;
}

.set-align-c {
  text-align: center;
}

.set-align-r {
  text-align: right;
}

.set-align-l {
  text-align: left;
}

.bold {
  font-weight: bold;
}
/*# sourceMappingURL=sourcemaps/style.css.map */