@charset "UTF-8";
/* ベース */
:root {
  --color-white: #fff;
  --color-white-rgb: 255, 255, 255;
  --color-black: #000000;
  --color-black-rgb: 0, 0, 0;
  --color-black-0: #000;
  --color-black-0-rgb: 0, 0, 0;
  --color-btn: #000014;
  --color-btn-rgb: 0, 0, 20;
  --color-blue: #009ee2;
  --color-blue-rgb: 0, 158, 226;
  --color-blue-l: #66c5ee;
  --color-blue-l-rgb: 102, 197, 238;
  --color-blue-h: #8ff1ff;
  --color-blue-h-rgb: 143, 241, 255;
  --color-blue-d: #2e3192;
  --color-blue-d-rgb: 46, 49, 146;
  --color-red: #d74236;
  --color-red-rgb: 215, 66, 54;
  --color-gray: #f5f8fa;
  --color-gray-rgb: 245, 248, 250;
  --color-gray-d: #666666;
  --color-gray-d-rgb: 102, 102, 102;
  --color-bg: #f2f2f2;
  --color-bg-rgb: 242, 242, 242;
  --font-base: "Noto Sans JP", "游ゴシック体", "Yu Gothic", "游ゴシック", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;
  --font-min: "Noto Serif JP", "游明朝", "YuMincho", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "BIZUDMincho", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "seri";
  --font-corm: "Cormorant", sans-serif;
  --font-marc: "Marcellus", serif;
  --font-weight-light: 300;
  --font-weight-reg: 400;
  --font-weight-mid: 500;
  --font-weight-semi: 600;
  --font-weight-bold: 700;
  --font-spacing-0: 0em;
  --font-spacing-03: 0.03em;
  --font-spacing-04: 0.04em;
  --font-spacing-05: 0.05em;
  --font-spacing-06: 0.06em;
  --font-spacing-075: 0.075em;
  --font-spacing-08: 0.08em;
  --font-spacing-1: 0.1em;
  --font-spacing-2: 0.2em;
  --space-margin: 120px;
  --space-margin_sub: 60px;
  --space-padding: 40px;
  --space-padding_sub: 20px;
}
@media only screen and (max-width: 860px) {
  :root {
    --space-margin: 16vw;
    --space-margin_sub: 8vw;
    --space-padding: 4vw;
    --space-padding_sub: 2vw;
  }
}

.pc_none {
  display: none;
}
@media only screen and (max-width: 860px) {
  .pc_none {
    display: block;
  }
}

@media only screen and (max-width: 860px) {
  .sp_none {
    display: none;
  }
}

@media only screen and (max-width: 860px) {
  .pc_contents {
    display: none;
  }
}

.sp_contents {
  display: none;
}
@media only screen and (max-width: 860px) {
  .sp_contents {
    display: block;
  }
}

.no_link {
  display: none;
}

:root {
  font-size: 62.5%;
}
@media only screen and (max-width: 860px) {
  :root {
    font-size: 62.5%;
  }
}

* {
  box-sizing: border-box;
}

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

svg {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

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

button:hover {
  opacity: 0.6;
}

ul,
ol {
  list-style: none;
}

dt {
  font-weight: normal;
}

body {
  position: relative;
  font-feature-settings: "palt" 1;
  font-kerning: none;
  font-family: var(--font-base);
  font-weight: 400;
  color: var(--color-black);
  margin-left: auto;
  margin-right: auto;
  background-color: var(--color-white);
  letter-spacing: 0.06em;
  -webkit-text-size-adjust: 100%;
  font-optical-sizing: auto;
}
@media only screen and (max-width: 860px) {
  body {
    max-width: none;
    min-width: auto;
    letter-spacing: 0.04em;
  }
}
@media only screen and (max-width: 860px) {
  body.fixed {
    width: 100%;
    height: 100%;
    position: fixed;
  }
}

.el_preload {
  display: none;
}

/* layout */
.ly_body {
  background-color: var(--color-bg);
}

.ly_inner {
  max-width: 810px;
  margin: 0 auto;
  padding: 0 20px;
}

.bl_foot {
  padding: 150px 0;
  text-align: center;
}
@media only screen and (max-width: 860px) {
  .bl_foot {
    padding: 16% 4%;
  }
}
.bl_foot_copy {
  font-size: 1.2rem;
  margin-top: 6em;
}
@media only screen and (max-width: 860px) {
  .bl_foot_copy {
    margin-top: 3em;
  }
}

.bl_loading {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  filter: brightness(95%);
  transition: mix-blend-mode ease 0.3s;
  z-index: 500;
}
.bl_loading_img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
}

/* component */
.bl_heading {
  font-size: 8.4rem;
  text-align: center;
  color: var(--color-red);
  font-family: var(--font-corm);
  letter-spacing: 0.03em;
  line-height: 0.85;
  margin-bottom: 1em;
}
@media only screen and (max-width: 860px) {
  .bl_heading {
    font-size: 4.2rem;
  }
}
.bl_heading_sm {
  font-size: 1.7rem;
  font-family: var(--font-base);
  font-weight: var(--font-weight-mid);
  display: block;
  letter-spacing: 0.2em;
  line-height: 1;
  margin-top: 1em;
}
@media only screen and (max-width: 860px) {
  .bl_heading_sm {
    font-size: 1.4rem;
  }
}
/*# sourceMappingURL=maps/common.css.map */