@charset "UTF-8";
/*! destyle.css v1.0.15 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model */
/* ============================================ */
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

::before,
::after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

/* Document */
/* ============================================ */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */
html {
  line-height: 1; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -webkit-tap-highlight-color: transparent; /* 3*/
}

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

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */
/* ============================================ */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  margin: 0;
}

/* Lists (enumeration) */
/* ============================================ */
ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Lists (definition) */
/* ============================================ */
dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
  border: 0;
  border-top: 1px solid;
  margin: 0;
  clear: both;
  color: inherit;
}

/**
 * 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: inherit; /* 2 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
  text-decoration: none;
  color: inherit;
}

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

/**
 * 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: inherit; /* 2 */
}

/**
 * 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 */
/* ============================================ */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
  vertical-align: bottom;
}

embed,
object,
iframe {
  border: 0;
  vertical-align: bottom;
}

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable
 */
button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  border: 0;
  background: transparent;
  padding: 0;
  margin: 0;
  outline: 0;
  border-radius: 0;
  text-align: inherit;
}

/**
 * Reset radio and checkbox appearance to preserve their look in iOS.
 */
[type=checkbox] {
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox;
  appearance: checkbox;
}

[type=radio] {
  -webkit-appearance: radio;
  -moz-appearance: radio;
  appearance: radio;
}

/**
 * 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;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

button[disabled],
[type=button][disabled],
[type=reset][disabled],
[type=submit][disabled] {
  cursor: default;
}

/**
 * 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;
}

/**
 * Remove arrow in IE10 & IE11
 */
select::-ms-expand {
  display: none;
}

/**
 * Remove padding
 */
option {
  padding: 0;
}

/**
 * Reset to invisible
 */
fieldset {
  margin: 0;
  padding: 0;
  border: 0;
  min-width: 0;
}

/**
 * 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 {
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

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

/**
 * 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 outline style in Safari.
 */
[type=search] {
  outline-offset: -2px; /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[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 */
}

/**
 * Clickable labels
 */
label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

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

/*
 * Remove outline for editable content.
 */
[contenteditable] {
  outline: none;
}

/* Table */
/* ============================================ */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption {
  text-align: left;
}

td,
th {
  vertical-align: top;
  padding: 0;
}

th {
  text-align: left;
  font-weight: bold;
}

/* Misc */
/* ============================================ */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

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

body {
  min-width: 320px;
  color: #ffffff;
  font-family: "BIZ UDPGothic", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-weight: 400;
  background: #000000 url("../images/common/bg_pattern.jpg") repeat top left;
  -webkit-font-smoothing: antialiased;
}
@media screen and (min-width: 769px) {
  body::-webkit-scrollbar {
    width: max(8px, 0.4166666667vw);
    height: max(8px, 0.4166666667vw);
  }
}
@media screen and (max-width: 768px) {
  body::-webkit-scrollbar {
    width: 1.0416666667vw;
    height: 1.0416666667vw;
  }
}
body::-webkit-scrollbar-track {
  background-color: #333333;
}
body::-webkit-scrollbar-thumb {
  background-color: #999999;
}
@media screen and (min-width: 769px) {
  body::-webkit-scrollbar-thumb {
    border-radius: max(8px, 0.4166666667vw);
  }
}
@media screen and (max-width: 768px) {
  body::-webkit-scrollbar-thumb {
    border-radius: 1.0416666667vw;
  }
}
@media screen and (min-width: 769px) {
  body {
    background-size: max(400px, 20.8333333333vw) max(400px, 20.8333333333vw);
  }
}
@media screen and (max-width: 768px) {
  body {
    background-size: 52.0833333333vw 52.0833333333vw;
    -webkit-text-size-adjust: 100%;
    -webkit-overflow-scrolling: touch;
  }
}
body.is-loading {
  overflow: hidden;
}
body.is-loading::before {
  position: fixed;
  inset: 0;
  content: "";
}
@media screen and (min-width: 769px) {
  body.is-loading::before {
    background: url("../webp/pc/common/bg_common.webp") no-repeat top center/cover;
  }
}
@media screen and (max-width: 768px) {
  body.is-loading::before {
    background: url("../webp/sp/common/bg_common.webp") no-repeat top center/cover;
  }
}
body.is-loaded .l-wrapper {
  opacity: 1;
}
body.is-fixed {
  position: fixed;
  inset: 0;
}

a {
  text-decoration: none;
  outline: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

img {
  width: 100%;
  height: auto;
  pointer-events: none;
}

figure, button {
  font-size: 0;
}

input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px white inset;
  box-shadow: 0 0 0 1000px white inset;
}

@-webkit-keyframes rotate {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes rotate {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-webkit-keyframes loading {
  0%, 100% {
    -webkit-box-shadow: 0 -3em 0 0.2em, 2.1em -2.1em 0 0, 3em 0 0 -1em, 2.1em 2.1em 0 -1em, 0 3em 0 -1em, -2.1em 2.1em 0 -1em, -3em 0 0 -1em, -2.1em -2.1em 0 0;
    box-shadow: 0 -3em 0 0.2em, 2.1em -2.1em 0 0, 3em 0 0 -1em, 2.1em 2.1em 0 -1em, 0 3em 0 -1em, -2.1em 2.1em 0 -1em, -3em 0 0 -1em, -2.1em -2.1em 0 0;
  }
  12.5% {
    -webkit-box-shadow: 0 -3em 0 0, 2.1em -2.1em 0 0.2em, 3em 0 0 0, 2.1em 2.1em 0 -1em, 0 3em 0 -1em, -2.1em 2.1em 0 -1em, -3em 0 0 -1em, -2.1em -2.1em 0 -1em;
    box-shadow: 0 -3em 0 0, 2.1em -2.1em 0 0.2em, 3em 0 0 0, 2.1em 2.1em 0 -1em, 0 3em 0 -1em, -2.1em 2.1em 0 -1em, -3em 0 0 -1em, -2.1em -2.1em 0 -1em;
  }
  25% {
    -webkit-box-shadow: 0 -3em 0 -1em, 2.1em -2.1em 0 0, 3em 0 0 0.2em, 2.1em 2.1em 0 0, 0 3em 0 -1em, -2.1em 2.1em 0 -1em, -3em 0 0 -1em, -2.1em -2.1em 0 -1em;
    box-shadow: 0 -3em 0 -1em, 2.1em -2.1em 0 0, 3em 0 0 0.2em, 2.1em 2.1em 0 0, 0 3em 0 -1em, -2.1em 2.1em 0 -1em, -3em 0 0 -1em, -2.1em -2.1em 0 -1em;
  }
  37.5% {
    -webkit-box-shadow: 0 -3em 0 -1em, 2.1em -2.1em 0 -1em, 3em 0 0 0, 2.1em 2.1em 0 0.2em, 0 3em 0 0, -2.1em 2.1em 0 -1em, -3em 0 0 -1em, -2.1em -2.1em 0 -1em;
    box-shadow: 0 -3em 0 -1em, 2.1em -2.1em 0 -1em, 3em 0 0 0, 2.1em 2.1em 0 0.2em, 0 3em 0 0, -2.1em 2.1em 0 -1em, -3em 0 0 -1em, -2.1em -2.1em 0 -1em;
  }
  50% {
    -webkit-box-shadow: 0 -3em 0 -1em, 2.1em -2.1em 0 -1em, 3em 0 0 -1em, 2.1em 2.1em 0 0, 0 3em 0 0.2em, -2.1em 2.1em 0 0, -3em 0 0 -1em, -2.1em -2.1em 0 -1em;
    box-shadow: 0 -3em 0 -1em, 2.1em -2.1em 0 -1em, 3em 0 0 -1em, 2.1em 2.1em 0 0, 0 3em 0 0.2em, -2.1em 2.1em 0 0, -3em 0 0 -1em, -2.1em -2.1em 0 -1em;
  }
  62.5% {
    -webkit-box-shadow: 0 -3em 0 -1em, 2.1em -2.1em 0 -1em, 3em 0 0 -1em, 2.1em 2.1em 0 -1em, 0 3em 0 0, -2.1em 2.1em 0 0.2em, -3em 0 0 0, -2.1em -2.1em 0 -1em;
    box-shadow: 0 -3em 0 -1em, 2.1em -2.1em 0 -1em, 3em 0 0 -1em, 2.1em 2.1em 0 -1em, 0 3em 0 0, -2.1em 2.1em 0 0.2em, -3em 0 0 0, -2.1em -2.1em 0 -1em;
  }
  75% {
    -webkit-box-shadow: 0 -3em 0 -1em, 2.1em -2.1em 0 -1em, 3em 0 0 -1em, 2.1em 2.1em 0 -1em, 0 3em 0 -1em, -2.1em 2.1em 0 0, -3em 0 0 0.2em, -2.1em -2.1em 0 0;
    box-shadow: 0 -3em 0 -1em, 2.1em -2.1em 0 -1em, 3em 0 0 -1em, 2.1em 2.1em 0 -1em, 0 3em 0 -1em, -2.1em 2.1em 0 0, -3em 0 0 0.2em, -2.1em -2.1em 0 0;
  }
  87.5% {
    -webkit-box-shadow: 0 -3em 0 0, 2.1em -2.1em 0 -1em, 3em 0 0 -1em, 2.1em 2.1em 0 -1em, 0 3em 0 -1em, -2.1em 2.1em 0 -1em, -3em 0 0 0, -2.1em -2.1em 0 0.2em;
    box-shadow: 0 -3em 0 0, 2.1em -2.1em 0 -1em, 3em 0 0 -1em, 2.1em 2.1em 0 -1em, 0 3em 0 -1em, -2.1em 2.1em 0 -1em, -3em 0 0 0, -2.1em -2.1em 0 0.2em;
  }
}
@keyframes loading {
  0%, 100% {
    -webkit-box-shadow: 0 -3em 0 0.2em, 2.1em -2.1em 0 0, 3em 0 0 -1em, 2.1em 2.1em 0 -1em, 0 3em 0 -1em, -2.1em 2.1em 0 -1em, -3em 0 0 -1em, -2.1em -2.1em 0 0;
    box-shadow: 0 -3em 0 0.2em, 2.1em -2.1em 0 0, 3em 0 0 -1em, 2.1em 2.1em 0 -1em, 0 3em 0 -1em, -2.1em 2.1em 0 -1em, -3em 0 0 -1em, -2.1em -2.1em 0 0;
  }
  12.5% {
    -webkit-box-shadow: 0 -3em 0 0, 2.1em -2.1em 0 0.2em, 3em 0 0 0, 2.1em 2.1em 0 -1em, 0 3em 0 -1em, -2.1em 2.1em 0 -1em, -3em 0 0 -1em, -2.1em -2.1em 0 -1em;
    box-shadow: 0 -3em 0 0, 2.1em -2.1em 0 0.2em, 3em 0 0 0, 2.1em 2.1em 0 -1em, 0 3em 0 -1em, -2.1em 2.1em 0 -1em, -3em 0 0 -1em, -2.1em -2.1em 0 -1em;
  }
  25% {
    -webkit-box-shadow: 0 -3em 0 -1em, 2.1em -2.1em 0 0, 3em 0 0 0.2em, 2.1em 2.1em 0 0, 0 3em 0 -1em, -2.1em 2.1em 0 -1em, -3em 0 0 -1em, -2.1em -2.1em 0 -1em;
    box-shadow: 0 -3em 0 -1em, 2.1em -2.1em 0 0, 3em 0 0 0.2em, 2.1em 2.1em 0 0, 0 3em 0 -1em, -2.1em 2.1em 0 -1em, -3em 0 0 -1em, -2.1em -2.1em 0 -1em;
  }
  37.5% {
    -webkit-box-shadow: 0 -3em 0 -1em, 2.1em -2.1em 0 -1em, 3em 0 0 0, 2.1em 2.1em 0 0.2em, 0 3em 0 0, -2.1em 2.1em 0 -1em, -3em 0 0 -1em, -2.1em -2.1em 0 -1em;
    box-shadow: 0 -3em 0 -1em, 2.1em -2.1em 0 -1em, 3em 0 0 0, 2.1em 2.1em 0 0.2em, 0 3em 0 0, -2.1em 2.1em 0 -1em, -3em 0 0 -1em, -2.1em -2.1em 0 -1em;
  }
  50% {
    -webkit-box-shadow: 0 -3em 0 -1em, 2.1em -2.1em 0 -1em, 3em 0 0 -1em, 2.1em 2.1em 0 0, 0 3em 0 0.2em, -2.1em 2.1em 0 0, -3em 0 0 -1em, -2.1em -2.1em 0 -1em;
    box-shadow: 0 -3em 0 -1em, 2.1em -2.1em 0 -1em, 3em 0 0 -1em, 2.1em 2.1em 0 0, 0 3em 0 0.2em, -2.1em 2.1em 0 0, -3em 0 0 -1em, -2.1em -2.1em 0 -1em;
  }
  62.5% {
    -webkit-box-shadow: 0 -3em 0 -1em, 2.1em -2.1em 0 -1em, 3em 0 0 -1em, 2.1em 2.1em 0 -1em, 0 3em 0 0, -2.1em 2.1em 0 0.2em, -3em 0 0 0, -2.1em -2.1em 0 -1em;
    box-shadow: 0 -3em 0 -1em, 2.1em -2.1em 0 -1em, 3em 0 0 -1em, 2.1em 2.1em 0 -1em, 0 3em 0 0, -2.1em 2.1em 0 0.2em, -3em 0 0 0, -2.1em -2.1em 0 -1em;
  }
  75% {
    -webkit-box-shadow: 0 -3em 0 -1em, 2.1em -2.1em 0 -1em, 3em 0 0 -1em, 2.1em 2.1em 0 -1em, 0 3em 0 -1em, -2.1em 2.1em 0 0, -3em 0 0 0.2em, -2.1em -2.1em 0 0;
    box-shadow: 0 -3em 0 -1em, 2.1em -2.1em 0 -1em, 3em 0 0 -1em, 2.1em 2.1em 0 -1em, 0 3em 0 -1em, -2.1em 2.1em 0 0, -3em 0 0 0.2em, -2.1em -2.1em 0 0;
  }
  87.5% {
    -webkit-box-shadow: 0 -3em 0 0, 2.1em -2.1em 0 -1em, 3em 0 0 -1em, 2.1em 2.1em 0 -1em, 0 3em 0 -1em, -2.1em 2.1em 0 -1em, -3em 0 0 0, -2.1em -2.1em 0 0.2em;
    box-shadow: 0 -3em 0 0, 2.1em -2.1em 0 -1em, 3em 0 0 -1em, 2.1em 2.1em 0 -1em, 0 3em 0 -1em, -2.1em 2.1em 0 -1em, -3em 0 0 0, -2.1em -2.1em 0 0.2em;
  }
}
@-webkit-keyframes background-noise {
  from {
    background-position: 0 0;
  }
  to {
    background-position: 100px 0;
  }
}
@keyframes background-noise {
  from {
    background-position: 0 0;
  }
  to {
    background-position: 100px 0;
  }
}
@-webkit-keyframes sometimes-appear {
  0%, 29%, 34%, 100% {
    opacity: 0;
  }
  30%, 33% {
    opacity: 1;
  }
}
@keyframes sometimes-appear {
  0%, 29%, 34%, 100% {
    opacity: 0;
  }
  30%, 33% {
    opacity: 1;
  }
}
@media screen and (min-width: 769px) {
  .l-header {
    border-bottom: max(1px, 0.0520833333vw) solid #4f4f4f;
  }
}
@media screen and (max-width: 768px) {
  .l-header {
    border-bottom: 0.2604166667vw solid #4f4f4f;
  }
}

@media screen and (min-width: 769px) {
  .l-header-container {
    height: max(60px, 3.125vw);
    padding: 0 max(14px, 0.7291666667vw);
    background: url("../images/pc/common/bg_text_header.svg") no-repeat center right max(17px, 0.8854166667vw)/max(144px, 7.5vw) max(28px, 1.4583333333vw);
  }
}
@media screen and (max-width: 768px) {
  .l-header-container {
    height: 13.0208333333vw;
    padding: 0 2.6041666667vw;
  }
}

.l-header-welcome {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  height: 100%;
}
@media screen and (min-width: 769px) {
  .l-header-welcome__icon {
    width: max(34px, 1.7708333333vw);
    margin-right: max(14px, 0.7291666667vw);
  }
}
@media screen and (max-width: 768px) {
  .l-header-welcome__icon {
    width: 7.8125vw;
    margin-right: 2.6041666667vw;
  }
}
.l-header-welcome__text {
  font-family: "Rubik", sans-serif;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .l-header-welcome__text {
    font-size: max(16px, 0.8333333333vw);
  }
}
@media screen and (max-width: 768px) {
  .l-header-welcome__text {
    font-size: 3.3854166667vw;
  }
}

@media screen and (min-width: 769px) {
  .l-footer {
    padding: 0 max(60px, 3.125vw);
    border-top: max(1px, 0.0520833333vw) solid #4f4f4f;
  }
}
@media screen and (max-width: 768px) {
  .l-footer {
    border-top: 0.2604166667vw solid #4f4f4f;
  }
}

@media screen and (min-width: 769px) {
  .l-footer-container {
    max-width: max(960px, 50vw);
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) {
  .l-wrapper--auth .l-footer-container {
    padding: max(60px, 3.125vw) 0;
  }
}
@media screen and (max-width: 768px) {
  .l-wrapper--auth .l-footer-container {
    padding: 7.8125vw 0;
  }
}
.l-wrapper--auth .l-footer-copyright__text {
  text-align: center;
}

@media screen and (min-width: 769px) {
  .l-wrapper--main .l-footer-container {
    padding: max(60px, 3.125vw) 0;
  }
}
@media screen and (max-width: 768px) {
  .l-wrapper--main .l-footer-container {
    padding: 7.8125vw 0 23.6979166667vw;
  }
}
.l-wrapper--main .l-footer-copyright__text {
  text-align: center;
}

@media screen and (min-width: 1101px) {
  .l-footer-links {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
  }
}
@media screen and (min-width: 769px) {
  .l-footer-links {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 768px) {
  .l-footer-links {
    margin-bottom: 6.25vw;
  }
}
@media screen and (max-width: 1100px) {
  .l-footer-links__item {
    text-align: center;
  }
}
@media screen and (min-width: 1101px) {
  .l-footer-links__item + .l-footer-links__item {
    margin-left: max(60px, 3.125vw);
  }
}
@media screen and (min-width: 769px) and (max-width: 1100px) {
  .l-footer-links__item + .l-footer-links__item {
    margin-top: 15px;
  }
}
@media screen and (max-width: 768px) {
  .l-footer-links__item + .l-footer-links__item {
    margin-top: 3.125vw;
  }
}
.l-footer-links__link {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  line-height: 1.4;
}
@media (any-hover: hover) {
  .l-footer-links__link {
    -webkit-transition: color 0.35s;
    transition: color 0.35s;
  }
  .l-footer-links__link:hover {
    color: #21C8B4;
  }
}
.l-footer-links__text {
  letter-spacing: 0.06em;
}
@media screen and (min-width: 769px) {
  .l-footer-links__text {
    margin-right: max(10px, 0.5208333333vw);
    font-size: max(16px, 0.8333333333vw);
  }
}
@media screen and (max-width: 768px) {
  .l-footer-links__text {
    margin-right: 1.3020833333vw;
    font-size: 3.125vw;
  }
}
@media screen and (min-width: 769px) {
  .l-footer-links__icon {
    width: max(12px, 0.625vw);
  }
}
@media screen and (max-width: 768px) {
  .l-footer-links__icon {
    width: 2.8645833333vw;
  }
}
.l-footer-links__icon .c-svg {
  width: 100%;
}

.l-footer-copyright__text {
  color: #4f4f4f;
  line-height: 1.4;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 769px) {
  .l-footer-copyright__text {
    font-size: max(12px, 0.625vw);
  }
}
@media screen and (max-width: 768px) {
  .l-footer-copyright__text {
    font-size: 2.8645833333vw;
  }
}

.l-wrapper {
  --sidebar-width: 0;
  opacity: 0;
  -webkit-transition: opacity 0.35s ease-out;
  transition: opacity 0.35s ease-out;
}
@media screen and (min-width: 1281px) {
  .l-wrapper--auth .l-main-container--fixed-bg::after {
    background: url("../webp/pc/common/bg_common.webp") no-repeat top center/max(1920px, 100vw) max(1080px, 56.25vw);
  }
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .l-wrapper--auth .l-main-container--fixed-bg::after {
    background: url("../webp/pc/common/bg_common.webp") no-repeat top min( 80px, calc( 1px + ( (1280px - 100vw) * 0.156555773 ) ) ) center/max( 1060px, calc( 1920px - ( (1280px - 100vw) * 1.6829745597 ) ) ) max( 596px, calc( 1080px - ( (1280px - 100vw) * 0.9471624266 ) ) );
  }
}
@media screen and (max-width: 768px) {
  .l-wrapper--auth .l-main-container--fixed-bg::after {
    background: url("../webp/sp/common/bg_common.webp") no-repeat top center/100vw 217.4479166667vw;
  }
}
@media screen and (min-width: 769px) {
  .l-wrapper--main {
    --sidebar-width: max(200px, 10.4166666667vw);
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
  }
}
@media screen and (max-width: 768px) {
  .l-wrapper--main {
    padding-bottom: env(safe-area-inset-bottom);
  }
}
@media screen and (min-width: 769px) {
  .l-wrapper--main .l-main-container {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    flex: 1;
  }
}
@media screen and (min-width: 769px) {
  .l-wrapper--main .l-main-container::before {
    position: absolute;
    inset: 0;
    z-index: 9000;
    border-left: max(1px, 0.0520833333vw) solid #4f4f4f;
    content: "";
    pointer-events: none;
  }
}
@media screen and (min-width: 1501px) {
  .l-wrapper--main .l-main-container--fixed-bg::after {
    background: url("../webp/pc/common/bg_common.webp") no-repeat top center/max(1720px, 89.5833333333vw) max(968px, 50.4166666667vw);
  }
}
@media screen and (min-width: 1101px) and (max-width: 1500px) {
  .l-wrapper--main .l-main-container--fixed-bg::after {
    background: url("../webp/pc/common/bg_common.webp") no-repeat top min( 60px, calc( 1px + ( (1500px - 100vw) * 0.1503759398 ) ) ) center/max( 1240px, calc( 1720px - ( (1500px - 100vw) * 1.2 ) ) ) max( 698px, calc( 968px - ( (1500px - 100vw) * 0.675 ) ) );
  }
}
@media screen and (min-width: 769px) and (max-width: 1100px) {
  .l-wrapper--main .l-main-container--fixed-bg::after {
    background: url("../webp/sp/common/bg_common.webp") no-repeat top min( -180px, calc( -400px + ( (1100px - 100vw) * 0.664652568 ) ) ) center/max( 610px, calc( 948px - ( (1100px - 100vw) * 1.0211480363 ) ) ) max( 1326px, calc( 2061px - ( (1100px - 100vw) * 2.2205438066 ) ) );
  }
}
@media screen and (max-width: 768px) {
  .l-wrapper--main .l-main-container--fixed-bg::after {
    background: url("../webp/sp/common/bg_common.webp") no-repeat top center/100vw 217.4479166667vw;
  }
}

.l-main-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  flex-direction: column;
  position: relative;
  z-index: 0;
  overflow: hidden;
  min-height: 100vh;
  min-height: calc(var(--vh, 1vh) * 100);
}
.l-main-container--fixed-bg::after {
  position: fixed;
  inset: 0 0 0 var(--sidebar-width);
  z-index: -1;
  content: "";
}

.l-main {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
}

@media screen and (min-width: 769px) {
  .l-bottom-navigation {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .l-bottom-navigation {
    position: fixed;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 1000;
    padding-bottom: env(safe-area-inset-bottom);
    background-color: #000000;
  }
}

.c-svg {
  display: inline-block;
  font-size: 0;
}
.c-svg svg {
  overflow: visible;
  width: 100%;
  fill: currentColor;
}

.c-button {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  position: relative;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  background-color: #ffffff;
}
.c-button::before, .c-button::after {
  position: absolute;
  background-color: #000000;
  content: "";
}
@media screen and (min-width: 769px) {
  .c-button::before, .c-button::after {
    width: max(6px, 0.3125vw);
    height: max(6px, 0.3125vw);
  }
}
@media screen and (max-width: 768px) {
  .c-button::before, .c-button::after {
    width: 1.0416666667vw;
    height: 1.0416666667vw;
  }
}
@media screen and (min-width: 769px) {
  .c-button::before {
    bottom: max(6px, 0.3125vw);
    left: max(6px, 0.3125vw);
  }
}
@media screen and (max-width: 768px) {
  .c-button::before {
    bottom: 1.0416666667vw;
    left: 1.0416666667vw;
  }
}
@media screen and (min-width: 769px) {
  .c-button::after {
    top: max(6px, 0.3125vw);
    right: max(6px, 0.3125vw);
  }
}
@media screen and (max-width: 768px) {
  .c-button::after {
    top: 1.0416666667vw;
    right: 1.0416666667vw;
  }
}
.c-button:disabled {
  background-color: #4f4f4f;
  pointer-events: none;
}
.c-button:disabled .c-button__text {
  color: #000000;
}
.c-button__content {
  width: 100%;
}
.c-button__text {
  color: #000000;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .c-button--primary {
    width: max(394px, 20.5208333333vw);
    height: max(80px, 4.1666666667vw);
    -webkit-clip-path: polygon(0 max(10px, 0.5208333333vw), max(10px, 0.5208333333vw) 0, 100% 0, 100% calc(100% - max(10px, 0.5208333333vw)), calc(100% - max(10px, 0.5208333333vw)) 100%, 0 100%);
    clip-path: polygon(0 max(10px, 0.5208333333vw), max(10px, 0.5208333333vw) 0, 100% 0, 100% calc(100% - max(10px, 0.5208333333vw)), calc(100% - max(10px, 0.5208333333vw)) 100%, 0 100%);
  }
}
@media screen and (max-width: 768px) {
  .c-button--primary {
    max-width: 84.375vw;
    width: 100%;
    height: 18.2291666667vw;
    -webkit-clip-path: polygon(0 3.125vw, 3.125vw 0, 100% 0, 100% calc(100% - 3.125vw), calc(100% - 3.125vw) 100%, 0 100%);
    clip-path: polygon(0 3.125vw, 3.125vw 0, 100% 0, 100% calc(100% - 3.125vw), calc(100% - 3.125vw) 100%, 0 100%);
  }
}
@media (any-hover: hover) {
  .c-button--primary {
    -webkit-transition: background-color 0.25s;
    transition: background-color 0.25s;
  }
  .c-button--primary:hover {
    background-color: #21C8B4;
  }
}
.c-button--primary .c-button__content {
  text-align: center;
}
@media screen and (min-width: 769px) {
  .c-button--primary .c-button__text {
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (max-width: 768px) {
  .c-button--primary .c-button__text {
    font-size: 3.90625vw;
  }
}
.c-button--google .c-button__content {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
}
@media screen and (min-width: 769px) {
  .c-button--google .c-button__icon {
    width: max(24px, 1.25vw);
    height: max(24px, 1.25vw);
    margin-right: max(12px, 0.625vw);
  }
}
@media screen and (max-width: 768px) {
  .c-button--google .c-button__icon {
    width: 5.2083333333vw;
    height: 5.2083333333vw;
    margin-right: 2.6041666667vw;
  }
}
@media screen and (min-width: 769px) {
  .c-button--small {
    width: max(248px, 12.9166666667vw);
    height: max(56px, 2.9166666667vw);
    -webkit-clip-path: polygon(0 max(12px, 0.625vw), max(12px, 0.625vw) 0, 100% 0, 100% calc(100% - max(12px, 0.625vw)), calc(100% - max(12px, 0.625vw)) 100%, 0 100%);
    clip-path: polygon(0 max(12px, 0.625vw), max(12px, 0.625vw) 0, 100% 0, 100% calc(100% - max(12px, 0.625vw)), calc(100% - max(12px, 0.625vw)) 100%, 0 100%);
  }
}
@media screen and (max-width: 768px) {
  .c-button--small {
    width: 63.5416666667vw;
    height: 13.0208333333vw;
    -webkit-clip-path: polygon(0 3.125vw, 3.125vw 0, 100% 0, 100% calc(100% - 3.125vw), calc(100% - 3.125vw) 100%, 0 100%);
    clip-path: polygon(0 3.125vw, 3.125vw 0, 100% 0, 100% calc(100% - 3.125vw), calc(100% - 3.125vw) 100%, 0 100%);
  }
}
@media (any-hover: hover) {
  .c-button--small {
    -webkit-transition: background-color 0.25s;
    transition: background-color 0.25s;
  }
  .c-button--small:hover {
    background-color: #21C8B4;
  }
}
.c-button--small .c-button__content {
  text-align: center;
}
@media screen and (min-width: 769px) {
  .c-button--small .c-button__text {
    font-size: max(16px, 0.8333333333vw);
  }
}
@media screen and (max-width: 768px) {
  .c-button--small .c-button__text {
    font-size: 3.3854166667vw;
  }
}
@media screen and (min-width: 769px) {
  .c-button--case {
    height: max(56px, 2.9166666667vw);
    -webkit-clip-path: polygon(0 max(6px, 0.3125vw), max(6px, 0.3125vw) 0, 100% 0, 100% calc(100% - max(6px, 0.3125vw)), calc(100% - max(6px, 0.3125vw)) 100%, 0 100%);
    clip-path: polygon(0 max(6px, 0.3125vw), max(6px, 0.3125vw) 0, 100% 0, 100% calc(100% - max(6px, 0.3125vw)), calc(100% - max(6px, 0.3125vw)) 100%, 0 100%);
  }
}
@media screen and (max-width: 768px) {
  .c-button--case {
    height: 10.4166666667vw;
    -webkit-clip-path: polygon(0 1.5625vw, 1.5625vw 0, 100% 0, 100% calc(100% - 1.5625vw), calc(100% - 1.5625vw) 100%, 0 100%);
    clip-path: polygon(0 1.5625vw, 1.5625vw 0, 100% 0, 100% calc(100% - 1.5625vw), calc(100% - 1.5625vw) 100%, 0 100%);
  }
}
@media (any-hover: hover) {
  .c-button--case {
    -webkit-transition: background-color 0.25s;
    transition: background-color 0.25s;
  }
  .c-button--case:hover {
    background-color: #21C8B4;
  }
}
.c-button--case .c-button__content {
  text-align: center;
}
@media screen and (min-width: 769px) {
  .c-button--case .c-button__text {
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (max-width: 768px) {
  .c-button--case .c-button__text {
    font-size: 3.125vw;
  }
}

.c-copy-button {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  position: relative;
}
@media screen and (min-width: 769px) {
  .c-copy-button {
    width: max(38px, 1.9791666667vw);
    height: max(38px, 1.9791666667vw);
  }
}
@media screen and (max-width: 768px) {
  .c-copy-button {
    width: 7.03125vw;
    height: 7.03125vw;
  }
}
@media (any-hover: hover) {
  .c-copy-button .c-copy-button__icon::before {
    position: absolute;
    inset: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
    border-radius: 100%;
    background-color: #21C8B4;
    content: "";
    -webkit-transition: -webkit-transform 0.25s ease-in-out;
    transition: -webkit-transform 0.25s ease-in-out;
    transition: transform 0.25s ease-in-out;
    transition: transform 0.25s ease-in-out, -webkit-transform 0.25s ease-in-out;
  }
  .c-copy-button .c-copy-button__icon .c-svg--copy {
    -webkit-transition: color 0.25s ease-in-out;
    transition: color 0.25s ease-in-out;
  }
  .c-copy-button:hover .c-copy-button__icon::before {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  .c-copy-button:hover .c-copy-button__icon .c-svg--copy {
    color: #ffffff;
  }
}
.c-copy-button__icon {
  display: grid;
  place-items: center;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}
.c-copy-button__icon .c-svg--copy {
  position: relative;
  color: #000000;
}
@media screen and (min-width: 769px) {
  .c-copy-button__icon .c-svg--copy {
    width: max(18px, 0.9375vw);
  }
}
@media screen and (max-width: 768px) {
  .c-copy-button__icon .c-svg--copy {
    width: 3.3854166667vw;
  }
}
.c-copy-button__toast {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  position: absolute;
  left: 0;
  -webkit-transform: translateX(0);
  transform: translateX(0);
  opacity: 0;
  color: #21C8B4;
  font-weight: 700;
  letter-spacing: 0.04em;
  white-space: nowrap;
  background-color: rgba(255, 255, 255, 0.8);
  pointer-events: none;
  -webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
  transition: opacity 0.35s, -webkit-transform 0.35s;
  transition: transform 0.35s, opacity 0.35s;
  transition: transform 0.35s, opacity 0.35s, -webkit-transform 0.35s;
}
@media screen and (min-width: 769px) {
  .c-copy-button__toast {
    height: max(34px, 1.7708333333vw);
    padding: 0 max(12px, 0.625vw);
    border-radius: max(34px, 1.7708333333vw);
    font-size: max(16px, 0.8333333333vw);
    -webkit-backdrop-filter: blur(max(1px, 0.0520833333vw));
    backdrop-filter: blur(max(1px, 0.0520833333vw));
  }
}
@media screen and (max-width: 768px) {
  .c-copy-button__toast {
    height: 5.9895833333vw;
    padding: 0 2.0833333333vw;
    border-radius: 5.9895833333vw;
    font-size: 3.3854166667vw;
    -webkit-backdrop-filter: blur(0.1302083333vw);
    backdrop-filter: blur(0.1302083333vw);
  }
}
.c-copy-button__toast.is-visible {
  opacity: 1;
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
}
.c-copy-button__toast.is-hidden {
  opacity: 0;
}

.c-input-text {
  position: relative;
  width: 100%;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  background-color: #ffffff;
}
@media screen and (min-width: 769px) {
  .c-input-text {
    height: max(60px, 3.125vw);
    padding: max(1px, 0.0520833333vw);
    -webkit-clip-path: polygon(0 max(12px, 0.625vw), max(12px, 0.625vw) 0, 100% 0, 100% calc(100% - max(12px, 0.625vw)), calc(100% - max(12px, 0.625vw)) 100%, 0 100%);
    clip-path: polygon(0 max(12px, 0.625vw), max(12px, 0.625vw) 0, 100% 0, 100% calc(100% - max(12px, 0.625vw)), calc(100% - max(12px, 0.625vw)) 100%, 0 100%);
  }
}
@media screen and (max-width: 768px) {
  .c-input-text {
    height: 13.0208333333vw;
    padding: 0.2604166667vw;
    -webkit-clip-path: polygon(0 2.6041666667vw, 2.6041666667vw 0, 100% 0, 100% calc(100% - 2.6041666667vw), calc(100% - 2.6041666667vw) 100%, 0 100%);
    clip-path: polygon(0 2.6041666667vw, 2.6041666667vw 0, 100% 0, 100% calc(100% - 2.6041666667vw), calc(100% - 2.6041666667vw) 100%, 0 100%);
  }
}
.c-input-text__input {
  width: 100%;
  height: 100%;
  color: #000000;
  font-family: "Rubik", sans-serif;
  letter-spacing: 0.04em;
  background-color: #ffffff;
}
@media screen and (min-width: 769px) {
  .c-input-text__input {
    padding: max(10px, 0.5208333333vw) max(30px, 1.5625vw);
    font-size: max(18px, 0.9375vw);
    -webkit-clip-path: polygon(0 max(11.4px, 0.59375vw), max(11.4px, 0.59375vw) 0, 100% 0, 100% calc(100% - max(11.4px, 0.59375vw)), calc(100% - max(11.4px, 0.59375vw)) 100%, 0 100%);
    clip-path: polygon(0 max(11.4px, 0.59375vw), max(11.4px, 0.59375vw) 0, 100% 0, 100% calc(100% - max(11.4px, 0.59375vw)), calc(100% - max(11.4px, 0.59375vw)) 100%, 0 100%);
  }
}
@media screen and (max-width: 768px) {
  .c-input-text__input {
    padding: 1.3020833333vw 3.90625vw;
    font-size: 3.3854166667vw;
    -webkit-clip-path: polygon(0 2.4505208333vw, 2.4505208333vw 0, 100% 0, 100% calc(100% - 2.4505208333vw), calc(100% - 2.4505208333vw) 100%, 0 100%);
    clip-path: polygon(0 2.4505208333vw, 2.4505208333vw 0, 100% 0, 100% calc(100% - 2.4505208333vw), calc(100% - 2.4505208333vw) 100%, 0 100%);
  }
}
.c-input-text__input--ja {
  font-family: "BIZ UDPGothic", sans-serif;
}
.c-input-text__input::-webkit-input-placeholder {
  color: #9e9e9e;
}
.c-input-text__input::-moz-placeholder {
  color: #9e9e9e;
}
.c-input-text__input::placeholder {
  color: #9e9e9e;
}

.c-dropdown {
  position: relative;
}
.c-dropdown__button {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  position: relative;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  width: 100%;
  background-color: #ffffff;
}
@media screen and (min-width: 769px) {
  .c-dropdown__button {
    height: max(60px, 3.125vw);
    padding: max(10px, 0.5208333333vw) max(52px, 2.7083333333vw) max(10px, 0.5208333333vw) max(30px, 1.5625vw);
    -webkit-clip-path: polygon(0 max(12px, 0.625vw), max(12px, 0.625vw) 0, 100% 0, 100% calc(100% - max(12px, 0.625vw)), calc(100% - max(12px, 0.625vw)) 100%, 0 100%);
    clip-path: polygon(0 max(12px, 0.625vw), max(12px, 0.625vw) 0, 100% 0, 100% calc(100% - max(12px, 0.625vw)), calc(100% - max(12px, 0.625vw)) 100%, 0 100%);
  }
}
@media screen and (max-width: 768px) {
  .c-dropdown__button {
    height: 10.4166666667vw;
    padding: 1.3020833333vw 6.7708333333vw 1.3020833333vw 3.90625vw;
    -webkit-clip-path: polygon(0 2.6041666667vw, 2.6041666667vw 0, 100% 0, 100% calc(100% - 2.6041666667vw), calc(100% - 2.6041666667vw) 100%, 0 100%);
    clip-path: polygon(0 2.6041666667vw, 2.6041666667vw 0, 100% 0, 100% calc(100% - 2.6041666667vw), calc(100% - 2.6041666667vw) 100%, 0 100%);
  }
}
.c-dropdown__button.is-open .c-dropdown__icon .c-svg--dropdown {
  -webkit-transform: scaleY(-1);
  transform: scaleY(-1);
}
.c-dropdown__button.is-selected .c-dropdown__value {
  color: #000000;
}
.c-dropdown__value {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  color: #cccccc;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .c-dropdown__value {
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (max-width: 768px) {
  .c-dropdown__value {
    font-size: 3.3854166667vw;
  }
}
.c-dropdown__icon {
  position: absolute;
}
@media screen and (min-width: 769px) {
  .c-dropdown__icon {
    top: max(25px, 1.3020833333vw);
    right: max(30px, 1.5625vw);
    width: max(12px, 0.625vw);
  }
}
@media screen and (max-width: 768px) {
  .c-dropdown__icon {
    top: 4.5572916667vw;
    right: 5.2083333333vw;
    width: 1.5625vw;
  }
}
.c-dropdown__icon .c-svg--dropdown {
  color: #212121;
  -webkit-transition: -webkit-transform 0.35s;
  transition: -webkit-transform 0.35s;
  transition: transform 0.35s;
  transition: transform 0.35s, -webkit-transform 0.35s;
}
.c-dropdown__collapse {
  display: none;
  position: absolute;
  z-index: 1;
  overflow: hidden;
  width: 100%;
  background-color: #ffffff;
}
@media screen and (min-width: 769px) {
  .c-dropdown__collapse {
    top: max(64px, 3.3333333333vw);
  }
}
@media screen and (max-width: 768px) {
  .c-dropdown__collapse {
    top: 10.9375vw;
  }
}
.c-dropdown__list {
  overflow-y: auto;
}
@media screen and (min-width: 769px) {
  .c-dropdown__list::-webkit-scrollbar {
    width: max(8px, 0.4166666667vw);
    height: max(8px, 0.4166666667vw);
  }
}
@media screen and (max-width: 768px) {
  .c-dropdown__list::-webkit-scrollbar {
    width: 1.0416666667vw;
    height: 1.0416666667vw;
  }
}
.c-dropdown__list::-webkit-scrollbar-track {
  background-color: #ffffff;
}
.c-dropdown__list::-webkit-scrollbar-thumb {
  background-color: #999999;
}
@media screen and (min-width: 769px) {
  .c-dropdown__list::-webkit-scrollbar-thumb {
    border-radius: max(8px, 0.4166666667vw);
  }
}
@media screen and (max-width: 768px) {
  .c-dropdown__list::-webkit-scrollbar-thumb {
    border-radius: 1.0416666667vw;
  }
}
@media screen and (min-width: 769px) {
  .c-dropdown__list {
    max-height: max(240px, 12.5vw);
  }
}
@media screen and (max-width: 768px) {
  .c-dropdown__list {
    max-height: 46.875vw;
  }
}
@media screen and (min-width: 769px) {
  .c-dropdown__item + .c-dropdown__item {
    border-top: max(1px, 0.0520833333vw) solid #cccccc;
  }
}
@media screen and (max-width: 768px) {
  .c-dropdown__item + .c-dropdown__item {
    border-top: 0.2604166667vw solid #cccccc;
  }
}
.c-dropdown__radio {
  position: absolute;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.c-dropdown__radio:checked + .c-dropdown__title {
  background-color: #21C8B4;
}
@media (any-hover: hover) {
  .c-dropdown__radio:not(:checked) + .c-dropdown__title .c-dropdown__title-text {
    -webkit-transition: color 0.25s;
    transition: color 0.25s;
  }
  .c-dropdown__radio:not(:checked) + .c-dropdown__title:hover .c-dropdown__title-text {
    color: #21C8B4;
  }
}
.c-dropdown__title {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-transition: background-color 0.25s;
  transition: background-color 0.25s;
  cursor: pointer;
}
@media screen and (min-width: 769px) {
  .c-dropdown__title {
    height: max(60px, 3.125vw);
    padding: max(10px, 0.5208333333vw) max(30px, 1.5625vw);
  }
}
@media screen and (max-width: 768px) {
  .c-dropdown__title {
    height: 10.4166666667vw;
    padding: 1.3020833333vw 3.90625vw;
  }
}
.c-dropdown__title-text {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  color: #000000;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .c-dropdown__title-text {
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (max-width: 768px) {
  .c-dropdown__title-text {
    font-size: 3.3854166667vw;
  }
}
.c-dropdown__announce-text {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  color: #000000;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .c-dropdown__announce-text {
    height: max(60px, 3.125vw);
    padding: max(10px, 0.5208333333vw) max(30px, 1.5625vw);
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (max-width: 768px) {
  .c-dropdown__announce-text {
    height: 10.4166666667vw;
    padding: 1.3020833333vw 3.90625vw;
    font-size: 3.3854166667vw;
  }
}

.c-toggle__label {
  display: block;
}
.c-toggle__checkbox {
  position: absolute;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.c-toggle__checkbox:checked + .c-toggle__wrapper {
  border-color: #39da60;
  background-color: #39da60;
}
@media screen and (min-width: 769px) {
  .c-toggle__checkbox:checked + .c-toggle__wrapper .c-toggle__slider {
    left: max(20px, 1.0416666667vw);
  }
}
@media screen and (max-width: 768px) {
  .c-toggle__checkbox:checked + .c-toggle__wrapper .c-toggle__slider {
    left: 7.8125vw;
  }
}
.c-toggle__checkbox:disabled + .c-toggle__wrapper {
  border-color: #9e9e9e;
  background-color: #9e9e9e;
  cursor: not-allowed;
}
.c-toggle__checkbox:disabled + .c-toggle__wrapper .c-toggle__slider {
  opacity: 0.5;
}
.c-toggle__wrapper {
  position: relative;
  background-color: #4f4f4f;
  cursor: pointer;
  -webkit-transition: border-color 0.35s, background-color 0.35s;
  transition: border-color 0.35s, background-color 0.35s;
}
@media screen and (min-width: 769px) {
  .c-toggle__wrapper {
    width: max(40px, 2.0833333333vw);
    height: max(20px, 1.0416666667vw);
    border: max(2px, 0.1041666667vw) solid #4f4f4f;
    border-radius: max(20px, 1.0416666667vw);
  }
}
@media screen and (max-width: 768px) {
  .c-toggle__wrapper {
    width: 14.3229166667vw;
    height: 6.5104166667vw;
    border: 0.6510416667vw solid #4f4f4f;
    border-radius: 6.5104166667vw;
  }
}
.c-toggle__slider {
  position: absolute;
  left: 0;
  border-radius: 100%;
  background-color: #ffffff;
  -webkit-transition: left 0.35s;
  transition: left 0.35s;
}
@media screen and (min-width: 769px) {
  .c-toggle__slider {
    width: max(16px, 0.8333333333vw);
    height: max(16px, 0.8333333333vw);
  }
}
@media screen and (max-width: 768px) {
  .c-toggle__slider {
    width: 5.2083333333vw;
    height: 5.2083333333vw;
  }
}

.c-title-primary {
  font-family: "Rubik", sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .c-title-primary {
    font-size: max(80px, 4.1666666667vw);
  }
}
@media screen and (max-width: 768px) {
  .c-title-primary {
    font-size: 9.375vw;
  }
}

.c-title-secondary {
  font-weight: 700;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .c-title-secondary {
    font-size: max(30px, 1.5625vw);
  }
}
@media screen and (max-width: 768px) {
  .c-title-secondary {
    font-size: 5.2083333333vw;
  }
}

.c-label--unreleased {
  background-color: #000000;
}
.c-label--unpurchased {
  background-color: #4f4f4f;
}
.c-label--unconnected {
  background-color: rgba(0, 0, 0, 0.8);
}
.c-label--investigating {
  background-color: rgba(151, 30, 76, 0.8);
}
.c-label--complete {
  background-color: rgba(30, 112, 139, 0.8);
}

.c-form__error-text {
  color: #ff0000;
  line-height: 1.8;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .c-form__error-text {
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (max-width: 768px) {
  .c-form__error-text {
    font-size: 3.125vw;
  }
}
.c-form__announce-text {
  line-height: 1.8;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .c-form__announce-text {
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (max-width: 768px) {
  .c-form__announce-text {
    font-size: 3.3854166667vw;
  }
}
.c-form__data {
  display: none;
}

@media screen and (min-width: 769px) {
  .c-form-field + .c-form-field {
    margin-top: max(30px, 1.5625vw);
  }
}
@media screen and (max-width: 768px) {
  .c-form-field + .c-form-field {
    margin-top: 6.5104166667vw;
  }
}
@media screen and (min-width: 961px) {
  .c-form-field__content {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
  }
}
.c-form-field__label {
  font-family: "Rubik", sans-serif;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 961px) {
  .c-form-field__label {
    width: max(180px, 9.375vw);
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (min-width: 769px) and (max-width: 960px) {
  .c-form-field__label {
    display: block;
    margin-bottom: 20px;
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  .c-form-field__label {
    display: block;
    margin-bottom: 2.6041666667vw;
    font-size: 3.3854166667vw;
  }
}
@media screen and (min-width: 961px) {
  .c-form-field__field {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    flex: 1;
    max-width: max(580px, 30.2083333333vw);
  }
}
@media screen and (max-width: 960px) {
  .c-form-field__field {
    max-width: 84.375vw;
  }
}
@media screen and (min-width: 961px) {
  .c-form-field__error {
    margin-top: max(12px, 0.625vw);
    padding-left: max(180px, 9.375vw);
  }
}
@media screen and (min-width: 769px) and (max-width: 960px) {
  .c-form-field__error {
    margin-top: 12px;
  }
}
@media screen and (max-width: 768px) {
  .c-form-field__error {
    margin-top: 2.6041666667vw;
  }
}
@media screen and (max-width: 768px) {
  .c-form-field__error + .c-form-field__link {
    margin-top: 2.6041666667vw;
  }
}
.c-form-field__error-text {
  color: #ff0000;
  line-height: 1.8;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .c-form-field__error-text {
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (max-width: 768px) {
  .c-form-field__error-text {
    font-size: 3.125vw;
  }
}
@media screen and (min-width: 961px) {
  .c-form-field__link {
    padding-left: max(180px, 9.375vw);
  }
}
@media screen and (min-width: 769px) {
  .c-form-field__link {
    margin-top: max(16px, 0.8333333333vw);
  }
}
@media screen and (max-width: 768px) {
  .c-form-field__link {
    margin-top: 6.5104166667vw;
  }
}
.c-form-field__link-text {
  color: #21C8B4;
  line-height: 1.8;
  letter-spacing: 0.04em;
  text-decoration: underline;
}
@media (any-hover: hover) {
  .c-form-field__link-text {
    opacity: 1;
    -webkit-transition: opacity 0.35s ease;
    transition: opacity 0.35s ease;
    will-change: opacity;
  }
  .c-form-field__link-text:hover {
    opacity: 0.7;
  }
}
@media screen and (min-width: 769px) {
  .c-form-field__link-text {
    font-size: max(18px, 0.9375vw);
    text-decoration-thickness: max(1px, 0.0520833333vw);
    text-underline-offset: max(3px, 0.15625vw);
  }
}
@media screen and (max-width: 768px) {
  .c-form-field__link-text {
    font-size: 3.125vw;
    text-decoration-thickness: 0.1302083333vw;
    text-underline-offset: 0.5208333333vw;
  }
}
.c-form-field.is-error .c-input-text {
  background-color: #ff0000;
}
.c-form-field.is-error .c-input-text .c-input-text__input {
  background-color: #ffd3d3;
}
.c-form-field.is-disabled .c-form-field__label {
  color: #4f4f4f;
  pointer-events: none;
}
.c-form-field.is-disabled .c-input-text {
  background-color: #4f4f4f;
}
.c-form-field.is-disabled .c-input-text__input {
  background-color: #4f4f4f;
  pointer-events: none;
}
.c-form-field.is-disabled .c-input-text__input::-webkit-input-placeholder {
  color: #212121;
}
.c-form-field.is-disabled .c-input-text__input::-moz-placeholder {
  color: #212121;
}
.c-form-field.is-disabled .c-input-text__input::placeholder {
  color: #212121;
}

@media screen and (min-width: 769px) {
  .c-sidebar {
    width: var(--sidebar-width);
  }
}
@media screen and (max-width: 768px) {
  .c-sidebar {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  .c-sidebar__container {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    overflow-y: auto;
    width: max(200px, 10.4166666667vw);
  }
}
@media screen and (min-width: 769px) and (min-width: 769px) {
  .c-sidebar__container::-webkit-scrollbar {
    width: max(6px, 0.3125vw);
    height: max(6px, 0.3125vw);
  }
}
@media screen and (min-width: 769px) and (max-width: 768px) {
  .c-sidebar__container::-webkit-scrollbar {
    width: 0.78125vw;
    height: 0.78125vw;
  }
}
@media screen and (min-width: 769px) {
  .c-sidebar__container::-webkit-scrollbar-track {
    background-color: #333333;
  }
}
@media screen and (min-width: 769px) {
  .c-sidebar__container::-webkit-scrollbar-thumb {
    background-color: #999999;
  }
}
@media screen and (min-width: 769px) and (min-width: 769px) {
  .c-sidebar__container::-webkit-scrollbar-thumb {
    border-radius: max(6px, 0.3125vw);
  }
}
@media screen and (min-width: 769px) and (max-width: 768px) {
  .c-sidebar__container::-webkit-scrollbar-thumb {
    border-radius: 0.78125vw;
  }
}
@media screen and (min-width: 769px) {
  .c-sidebar__header {
    background-color: #ffffff;
    padding: max(20px, 1.0416666667vw) max(16px, 0.8333333333vw);
    border-bottom: max(1px, 0.0520833333vw) solid #4f4f4f;
  }
}
@media screen and (min-width: 769px) {
  .c-sidebar__logo {
    display: block;
  }
}
@media screen and (min-width: 769px) and (any-hover: hover) {
  .c-sidebar__logo {
    opacity: 1;
    -webkit-transition: opacity 0.35s ease;
    transition: opacity 0.35s ease;
    will-change: opacity;
  }
  .c-sidebar__logo:hover {
    opacity: 0.7;
  }
}
@media screen and (min-width: 769px) {
  .c-sidebar__dual-strider {
    padding: max(12px, 0.625vw) max(24px, 1.25vw) max(12px, 0.625vw) max(16px, 0.8333333333vw);
    border-bottom: max(1px, 0.0520833333vw) solid #4f4f4f;
  }
}
@media screen and (min-width: 769px) {
  .c-sidebar__dual-strider-title {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
    margin-bottom: max(6px, 0.3125vw);
    font-family: "Rubik", sans-serif;
    font-size: max(12px, 0.625vw);
    font-weight: 600;
    letter-spacing: 0.04em;
  }
}
@media screen and (min-width: 769px) {
  .c-sidebar__dual-strider-title::after {
    width: max(2px, 0.1041666667vw);
    height: max(6px, 0.3125vw);
    margin-left: max(12px, 0.625vw);
    background: url("../images/common/txt_colon.svg") no-repeat center/contain;
    content: "";
  }
}
@media screen and (min-width: 769px) {
  .c-sidebar__dual-strider-name {
    font-size: max(14px, 0.7291666667vw);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.04em;
  }
}
@media screen and (min-width: 769px) {
  .c-sidebar__dual-strider-name:empty::before {
    display: block;
    height: calc(max(14px, 0.7291666667vw) * 1.2);
    content: "";
  }
}
@media screen and (min-width: 769px) {
  .c-sidebar__nav-header {
    padding: max(8px, 0.4166666667vw) max(10px, 0.5208333333vw);
    border-bottom: max(1px, 0.0520833333vw) solid #4f4f4f;
  }
}
@media screen and (min-width: 769px) {
  .c-sidebar__nav-title {
    color: #4f4f4f;
    font-family: "Rubik", sans-serif;
    font-size: max(24px, 1.25vw);
    font-weight: 600;
    letter-spacing: 0.04em;
  }
}
@media screen and (min-width: 769px) {
  .c-sidebar-menu__item {
    border-bottom: max(1px, 0.0520833333vw) solid #4f4f4f;
  }
}
.c-sidebar-menu__item--home .c-sidebar-menu__prepend {
  background-color: #db062c;
}
.c-sidebar-menu__item--case .c-sidebar-menu__prepend {
  background-color: #ef7a00;
}
.c-sidebar-menu__item--profile .c-sidebar-menu__prepend {
  background-color: #f3eb1c;
}
.c-sidebar-menu__item--serial-code .c-sidebar-menu__prepend {
  background-color: #009c4d;
}
.c-sidebar-menu__item--settings .c-sidebar-menu__prepend {
  background-color: #4fc2f1;
}
.c-sidebar-menu__item--manual .c-sidebar-menu__prepend {
  background-color: #0065b2;
}
.c-sidebar-menu__item--logout .c-sidebar-menu__prepend {
  background-color: #643791;
}
@media screen and (min-width: 769px) {
  .c-sidebar-menu__link {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    height: max(60px, 3.125vw);
    padding: max(10px, 0.5208333333vw);
  }
}
@media (any-hover: hover) {
  .c-sidebar-menu__link {
    -webkit-transition: color 0.35s;
    transition: color 0.35s;
  }
  .c-sidebar-menu__link:hover {
    color: #21C8B4;
  }
}
@media screen and (min-width: 769px) {
  .c-sidebar-menu__prepend {
    display: grid;
    place-items: center;
    width: max(30px, 1.5625vw);
    height: max(30px, 1.5625vw);
    border-radius: 100%;
  }
}
@media screen and (min-width: 769px) {
  .c-sidebar-menu__icon {
    width: max(24px, 1.25vw);
  }
}
@media screen and (min-width: 769px) {
  .c-sidebar-menu__content {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    flex: 1;
    padding-left: max(15px, 0.78125vw);
  }
}
@media screen and (min-width: 769px) {
  .c-sidebar-menu__text {
    font-family: "Rubik", sans-serif;
    font-size: max(18px, 0.9375vw);
    font-weight: 600;
    letter-spacing: 0.04em;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-nav {
    position: relative;
    z-index: 1;
    border-top: 0.2604166667vw solid #4f4f4f;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-nav__list {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 0 0.2604166667vw;
    height: 16.9270833333vw;
    background-color: #4f4f4f;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-nav__item {
    background-color: #000000;
  }
}
.c-bottom-nav__item--home .c-bottom-nav__prepend {
  background-color: #db062c;
}
.c-bottom-nav__item--case .c-bottom-nav__prepend {
  background-color: #ef7a00;
}
.c-bottom-nav__item--serial-code .c-bottom-nav__prepend {
  background-color: #009c4d;
}
.c-bottom-nav__item--manual .c-bottom-nav__prepend {
  background-color: #0065b2;
}
@media screen and (max-width: 768px) {
  .c-bottom-nav__item--menu .c-bottom-nav__link.is-open .c-bottom-nav__menu-line:nth-child(1) {
    top: 1.953125vw;
    left: 2.2135416667vw;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-nav__item--menu .c-bottom-nav__link.is-open .c-bottom-nav__menu-line:nth-child(2) {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-nav__item--menu .c-bottom-nav__link.is-open .c-bottom-nav__menu-line:nth-child(3) {
    top: 5.46875vw;
    left: 2.2135416667vw;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
}
.c-bottom-nav__item--menu .c-bottom-nav__prepend {
  background-color: #ffffff;
}
@media screen and (max-width: 768px) {
  .c-bottom-nav__item--menu .c-bottom-nav__icon {
    position: relative;
    width: 100%;
    height: 100%;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-nav__item--menu .c-bottom-nav__menu-line {
    position: absolute;
    left: 1.3020833333vw;
    width: 5.2083333333vw;
    height: 0.390625vw;
    background-color: #000000;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-nav__item--menu .c-bottom-nav__menu-line:nth-child(1) {
    top: 2.6041666667vw;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transition: top 0.35s, left 0.35s, -webkit-transform 0.35s;
    transition: top 0.35s, left 0.35s, -webkit-transform 0.35s;
    transition: top 0.35s, left 0.35s, transform 0.35s;
    transition: top 0.35s, left 0.35s, transform 0.35s, -webkit-transform 0.35s;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-nav__item--menu .c-bottom-nav__menu-line:nth-child(2) {
    top: 3.7760416667vw;
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transition: -webkit-transform 0.35s;
    transition: -webkit-transform 0.35s;
    transition: transform 0.35s;
    transition: transform 0.35s, -webkit-transform 0.35s;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-nav__item--menu .c-bottom-nav__menu-line:nth-child(3) {
    top: 4.9479166667vw;
    -webkit-transform-origin: bottom left;
    transform-origin: bottom left;
    -webkit-transition: top 0.35s, left 0.35s, -webkit-transform 0.35s;
    transition: top 0.35s, left 0.35s, -webkit-transform 0.35s;
    transition: top 0.35s, left 0.35s, transform 0.35s;
    transition: top 0.35s, left 0.35s, transform 0.35s, -webkit-transform 0.35s;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-nav__link {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    width: 100%;
    height: 100%;
    padding-top: 2.8645833333vw;
  }
}
@media (any-hover: hover) {
  .c-bottom-nav__link {
    -webkit-transition: color 0.35s;
    transition: color 0.35s;
  }
  .c-bottom-nav__link:hover {
    color: #21C8B4;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-nav__prepend {
    display: grid;
    place-items: center;
    width: 7.8125vw;
    height: 7.8125vw;
    margin: 0 auto 1.3020833333vw;
    border-radius: 100%;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-nav__icon {
    width: 6.7708333333vw;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-nav__text {
    display: block;
    font-family: "Rubik", sans-serif;
    font-size: 2.34375vw;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-align: center;
  }
}

@media screen and (max-width: 768px) {
  .c-bottom-menu {
    display: none;
    position: fixed;
    inset: 0 0 env(safe-area-inset-bottom);
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-menu.is-active {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-menu.is-opening .c-bottom-menu__overlay {
    -webkit-transition: opacity 0.15s ease-in;
    transition: opacity 0.15s ease-in;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-menu.is-opening .c-bottom-menu__list {
    -webkit-transition: -webkit-clip-path 0.35s ease-in-out 0.08s;
    transition: -webkit-clip-path 0.35s ease-in-out 0.08s;
    transition: clip-path 0.35s ease-in-out 0.08s;
    transition: clip-path 0.35s ease-in-out 0.08s, -webkit-clip-path 0.35s ease-in-out 0.08s;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-menu.is-open .c-bottom-menu__overlay {
    opacity: 1;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-menu.is-open .c-bottom-menu__list {
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-menu.is-closing .c-bottom-menu__overlay {
    -webkit-transition: opacity 0.15s ease-in 0.2s;
    transition: opacity 0.15s ease-in 0.2s;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-menu.is-closing .c-bottom-menu__list {
    -webkit-transition: -webkit-clip-path 0.35s ease-in;
    transition: -webkit-clip-path 0.35s ease-in;
    transition: clip-path 0.35s ease-in;
    transition: clip-path 0.35s ease-in, -webkit-clip-path 0.35s ease-in;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-menu__overlay {
    position: absolute;
    inset: 0;
    opacity: 0;
    background-color: rgba(79, 79, 79, 0.8);
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-menu__drawer {
    position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
    padding-bottom: 17.1875vw;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-menu__list {
    overflow-y: auto;
    max-height: calc(100vh - 17.1875vw);
    background-color: #000000;
    -webkit-clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0 100%);
    clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0 100%);
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  .c-bottom-menu__list::-webkit-scrollbar {
    width: max(6px, 0.3125vw);
    height: max(6px, 0.3125vw);
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .c-bottom-menu__list::-webkit-scrollbar {
    width: 0.78125vw;
    height: 0.78125vw;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-menu__list::-webkit-scrollbar-track {
    background-color: #333333;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-menu__list::-webkit-scrollbar-thumb {
    background-color: #999999;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  .c-bottom-menu__list::-webkit-scrollbar-thumb {
    border-radius: max(6px, 0.3125vw);
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .c-bottom-menu__list::-webkit-scrollbar-thumb {
    border-radius: 0.78125vw;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-menu__item {
    border-top: 0.2604166667vw solid #4f4f4f;
  }
}
.c-bottom-menu__item--profile .c-bottom-menu__prepend {
  background-color: #f3eb1c;
}
.c-bottom-menu__item--settings .c-bottom-menu__prepend {
  background-color: #4fc2f1;
}
.c-bottom-menu__item--logout .c-bottom-menu__prepend {
  background-color: #643791;
}
@media screen and (max-width: 768px) {
  .c-bottom-menu__link {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    width: 100%;
    height: 20.8333333333vw;
    padding-left: 3.90625vw;
  }
}
@media (any-hover: hover) {
  .c-bottom-menu__link {
    -webkit-transition: color 0.35s;
    transition: color 0.35s;
  }
  .c-bottom-menu__link:hover {
    color: #21C8B4;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-menu__prepend {
    display: grid;
    place-items: center;
    width: 10.4166666667vw;
    height: 10.4166666667vw;
    border-radius: 100%;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-menu__icon {
    width: 6.7708333333vw;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-menu__content {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    flex: 1;
    padding-left: 2.6041666667vw;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-menu__text {
    font-family: "Rubik", sans-serif;
    font-size: 5.7291666667vw;
    font-weight: 600;
    letter-spacing: 0.04em;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-menu__append {
    display: grid;
    place-items: center;
    width: 19.2708333333vw;
  }
}
@media screen and (max-width: 768px) {
  .c-bottom-menu__append .c-svg--arrow {
    width: 3.6458333333vw;
  }
}

.c-page-header {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
}
@media screen and (min-width: 769px) {
  .c-page-header {
    height: max(180px, 9.375vw);
    border-bottom: max(1px, 0.0520833333vw) solid #4f4f4f;
  }
}
@media screen and (max-width: 768px) {
  .c-page-header {
    height: 20.8333333333vw;
    border-bottom: 0.2604166667vw solid #4f4f4f;
  }
}

@media screen and (min-width: 769px) {
  .c-page-navigation {
    padding: 0 max(60px, 3.125vw);
    border-bottom: max(1px, 0.0520833333vw) solid #4f4f4f;
  }
}
@media screen and (max-width: 768px) {
  .c-page-navigation {
    border-bottom: 0.2604166667vw solid #4f4f4f;
  }
}
.c-page-navigation__container {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
}
@media screen and (min-width: 769px) {
  .c-page-navigation__container {
    max-width: max(960px, 50vw);
    height: max(60px, 3.125vw);
    margin: 0 auto;
  }
}
@media screen and (max-width: 768px) {
  .c-page-navigation__container {
    height: 15.625vw;
  }
}
.c-page-navigation__back-link {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
}
@media screen and (min-width: 769px) {
  .c-page-navigation__back-link {
    width: max(60px, 3.125vw);
    height: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .c-page-navigation__back-link {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    width: 11.4583333333vw;
    height: 11.4583333333vw;
  }
}
@media (any-hover: hover) {
  .c-page-navigation__back-link {
    -webkit-transition: color 0.35s;
    transition: color 0.35s;
  }
  .c-page-navigation__back-link:hover {
    color: #21C8B4;
  }
}
@media screen and (min-width: 769px) {
  .c-page-navigation__back-link .c-svg--arrow {
    width: max(20px, 1.0416666667vw);
  }
}
@media screen and (max-width: 768px) {
  .c-page-navigation__back-link .c-svg--arrow {
    width: 3.6458333333vw;
  }
}
.c-page-navigation__title {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  font-family: "Rubik", sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .c-page-navigation__title {
    padding-right: max(60px, 3.125vw);
    font-size: max(24px, 1.25vw);
  }
}
@media screen and (max-width: 768px) {
  .c-page-navigation__title {
    padding-right: 11.4583333333vw;
    font-size: 5.7291666667vw;
  }
}

@media screen and (min-width: 769px) {
  .c-case-list.is-loading {
    min-height: max(300px, 15.625vw);
  }
}
@media screen and (max-width: 768px) {
  .c-case-list.is-loading {
    min-height: 62.5vw;
  }
}
.c-case-list__list {
  display: grid;
  opacity: 0;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
@media screen and (min-width: 1025px) {
  .c-case-list__list {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (max-width: 1024px) {
  .c-case-list__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (min-width: 769px) {
  .c-case-list__list {
    gap: max(60px, 3.125vw) max(30px, 1.5625vw);
  }
}
@media screen and (min-width: 1025px) and (max-width: 1280px) {
  .c-case-list__list {
    gap: max(60px, 3.125vw) 2.34375vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 960px) {
  .c-case-list__list {
    gap: max(60px, 3.125vw) 3.125vw;
  }
}
@media screen and (max-width: 768px) {
  .c-case-list__list {
    gap: 10.4166666667vw 2.6041666667vw;
  }
}
.c-case-list__list.is-loaded {
  opacity: 1;
}
.c-case-list__item {
  display: none;
}
.c-case-list__item.is-visible {
  display: block;
}
.c-case-list__item.is-unpurchased .c-case-list__link::before {
  position: absolute;
  inset: 0;
  z-index: 1;
  background-image: url("../images/common/icon_lock.svg"), url("../webp/common/case/bg_case_filter.webp");
  background-repeat: no-repeat;
  background-position: center;
  content: "";
}
@media screen and (min-width: 769px) {
  .c-case-list__item.is-unpurchased .c-case-list__link::before {
    background-size: max(42px, 2.1875vw) max(52px, 2.7083333333vw), cover;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1280px) {
  .c-case-list__item.is-unpurchased .c-case-list__link::before {
    background-size: 3.28125vw 4.0625vw, cover;
  }
}
@media screen and (min-width: 769px) and (max-width: 960px) {
  .c-case-list__item.is-unpurchased .c-case-list__link::before {
    background-size: 4.375vw 5.4166666667vw, cover;
  }
}
@media screen and (max-width: 768px) {
  .c-case-list__item.is-unpurchased .c-case-list__link::before {
    background-size: 6.25vw 7.8125vw, cover;
  }
}
.c-case-list__content {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  flex-direction: column;
  height: 100%;
}
.c-case-list__thumb {
  position: relative;
  overflow: hidden;
  width: 100%;
}
@media screen and (min-width: 769px) {
  .c-case-list__thumb {
    aspect-ratio: 300/168;
    margin-bottom: max(30px, 1.5625vw);
    border: max(1px, 0.0520833333vw) solid #4f4f4f;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1280px) {
  .c-case-list__thumb {
    margin-bottom: 2.34375vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 960px) {
  .c-case-list__thumb {
    margin-bottom: 3.125vw;
  }
}
@media screen and (max-width: 768px) {
  .c-case-list__thumb {
    aspect-ratio: 344/194;
    margin-bottom: 2.6041666667vw;
    border: 0.2604166667vw solid #4f4f4f;
  }
}
.c-case-list__thumb figure {
  height: 100%;
  background-color: #000000;
}
.c-case-list__thumb img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.c-case-list__link {
  display: block;
  position: relative;
}
@media (any-hover: hover) {
  .c-case-list a.c-case-list__link img {
    -webkit-transition: -webkit-transform 0.8s;
    transition: -webkit-transform 0.8s;
    transition: transform 0.8s;
    transition: transform 0.8s, -webkit-transform 0.8s;
  }
  .c-case-list a.c-case-list__link:hover img {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
}
.c-case-list__label {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  position: absolute;
  z-index: 1;
  text-align: center;
  pointer-events: none;
}
@media screen and (min-width: 769px) {
  .c-case-list__label {
    top: max(3px, 0.15625vw);
    right: max(3px, 0.15625vw);
    min-width: max(60px, 3.125vw);
    height: max(24px, 1.25vw);
    padding: 0 max(15px, 0.78125vw);
  }
}
@media screen and (min-width: 1025px) and (max-width: 1280px) {
  .c-case-list__label {
    top: 0.234375vw;
    right: 0.234375vw;
    min-width: 4.6875vw;
    height: 1.875vw;
    padding: 0 1.171875vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 960px) {
  .c-case-list__label {
    top: 0.3125vw;
    right: 0.3125vw;
    min-width: 6.25vw;
    height: 2.5vw;
    padding: 0 1.5625vw;
  }
}
@media screen and (max-width: 768px) {
  .c-case-list__label {
    top: 0.5208333333vw;
    right: 0.5208333333vw;
    min-width: 13.0208333333vw;
    height: 4.6875vw;
    padding: 0 2.6041666667vw;
  }
}
.c-case-list__label::before {
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .c-case-list__label::before {
    font-size: max(14px, 0.7291666667vw);
  }
}
@media screen and (min-width: 1025px) and (max-width: 1280px) {
  .c-case-list__label::before {
    font-size: 1.09375vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 960px) {
  .c-case-list__label::before {
    font-size: 1.4583333333vw;
  }
}
@media screen and (max-width: 768px) {
  .c-case-list__label::before {
    font-size: 2.8645833333vw;
  }
}
.c-case-list__label.c-label--unreleased::before {
  content: "鎺ョ続荳榊庄";
}
.c-case-list__label.c-label--unpurchased::before {
  content: "未購入";
}
.c-case-list__label.c-label--unconnected::before {
  content: "未接続";
}
.c-case-list__label.c-label--investigating::before {
  content: "調査中";
}
.c-case-list__label.c-label--complete::before {
  content: "完了";
}
.c-case-list__title {
  line-height: 1.4;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .c-case-list__title {
    margin-bottom: max(30px, 1.5625vw);
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (min-width: 1025px) and (max-width: 1280px) {
  .c-case-list__title {
    margin-bottom: 2.34375vw;
    font-size: 1.40625vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 960px) {
  .c-case-list__title {
    margin-bottom: 3.125vw;
    font-size: 1.875vw;
  }
}
@media screen and (max-width: 768px) {
  .c-case-list__title {
    margin-bottom: 5.2083333333vw;
    font-size: 3.3854166667vw;
  }
}
.c-case-list__action {
  margin-top: auto;
}
@media screen and (min-width: 1025px) and (max-width: 1280px) {
  .c-case-list__action .c-button--case {
    height: 4.375vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 960px) {
  .c-case-list__action .c-button--case {
    height: 5.8333333333vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1280px) {
  .c-case-list__action .c-button--case .c-button__text {
    font-size: 1.40625vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 960px) {
  .c-case-list__action .c-button--case .c-button__text {
    font-size: 1.875vw;
  }
}
.c-case-list__announce-text {
  line-height: 1.8;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .c-case-list__announce-text {
    font-size: max(16px, 0.8333333333vw);
  }
}
@media screen and (max-width: 768px) {
  .c-case-list__announce-text {
    font-size: 3.125vw;
  }
}
.c-case-list__data {
  display: none;
}

.c-loading {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 9999;
  opacity: 1;
  -webkit-transition: opacity 0.35s ease-out;
  transition: opacity 0.35s ease-out;
}
.c-loading.is-visible {
  display: block;
}
.c-loading.is-hidden {
  opacity: 0;
}
.c-loading__overlay {
  position: absolute;
  inset: 0;
  opacity: 0;
  background-color: rgba(0, 0, 0, 0.6);
  -webkit-transition: opacity 0.35s ease-out;
  transition: opacity 0.35s ease-out;
}
.c-loading__overlay.is-visible {
  opacity: 1;
}
.c-loading__spinner {
  display: block;
  position: absolute;
  inset: 0;
  margin: auto;
  border-radius: 100%;
  color: #ffffff;
}
@media screen and (min-width: 769px) {
  .c-loading__spinner {
    width: max(10px, 0.5208333333vw);
    height: max(10px, 0.5208333333vw);
  }
}
@media screen and (max-width: 768px) {
  .c-loading__spinner {
    width: 1.3020833333vw;
    height: 1.3020833333vw;
  }
}
.c-loading.is-loading .c-loading__spinner {
  -webkit-animation: loading 1.2s linear infinite;
  animation: loading 1.2s linear infinite;
}

.c-list-loading {
  position: absolute;
  top: var(--loading-top, 0);
  bottom: var(--loading-bottom, 0);
  right: 0;
  left: 0;
  z-index: 1000;
  opacity: 1;
  -webkit-transition: opacity 0.35s ease-out;
  transition: opacity 0.35s ease-out;
}
.c-list-loading.is-hidden {
  opacity: 0;
}
.c-list-loading__overlay {
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.2);
  -webkit-transition: opacity 0.35s ease-out;
  transition: opacity 0.35s ease-out;
}
.c-list-loading__spinner {
  display: block;
  position: absolute;
  inset: 0;
  margin: auto;
  border-radius: 100%;
  color: #ffffff;
  -webkit-animation: loading 1.2s linear infinite;
  animation: loading 1.2s linear infinite;
}
@media screen and (min-width: 769px) {
  .c-list-loading__spinner {
    width: max(10px, 0.5208333333vw);
    height: max(10px, 0.5208333333vw);
  }
}
@media screen and (max-width: 768px) {
  .c-list-loading__spinner {
    width: 1.3020833333vw;
    height: 1.3020833333vw;
  }
}

@media screen and (min-width: 769px) {
  .c-hint-accordion {
    border: max(1px, 0.0520833333vw) solid #4f4f4f;
  }
}
@media screen and (max-width: 768px) {
  .c-hint-accordion {
    border: 0.1302083333vw solid #4f4f4f;
  }
}
@media screen and (min-width: 769px) {
  .c-hint-accordion + .c-hint-accordion {
    margin-top: max(30px, 1.5625vw);
  }
}
@media screen and (max-width: 768px) {
  .c-hint-accordion + .c-hint-accordion {
    margin-top: 3.90625vw;
  }
}
.c-hint-accordion__button {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  position: relative;
  width: 100%;
}
@media screen and (min-width: 769px) {
  .c-hint-accordion__button {
    min-height: max(92px, 4.7916666667vw);
    padding: max(30px, 1.5625vw) max(60px, 3.125vw) max(29px, 1.5104166667vw) max(30px, 1.5625vw);
  }
}
@media screen and (max-width: 768px) {
  .c-hint-accordion__button {
    min-height: 14.3229166667vw;
    padding: 4.1666666667vw 7.8125vw 4.0364583333vw 3.90625vw;
  }
}
.c-hint-accordion__button.is-open .c-hint-accordion__icon .c-svg--dropdown {
  -webkit-transform: scaleY(-1);
  transform: scaleY(-1);
}
.c-hint-accordion__text {
  line-height: 1.8;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .c-hint-accordion__text {
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (max-width: 768px) {
  .c-hint-accordion__text {
    font-size: 3.3854166667vw;
  }
}
.c-hint-accordion__icon {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media screen and (min-width: 769px) {
  .c-hint-accordion__icon {
    right: max(30px, 1.5625vw);
    width: max(12px, 0.625vw);
  }
}
@media screen and (max-width: 768px) {
  .c-hint-accordion__icon {
    right: 3.90625vw;
    width: 1.5625vw;
  }
}
.c-hint-accordion__icon .c-svg--dropdown {
  color: #ffffff;
  -webkit-transition: -webkit-transform 0.35s;
  transition: -webkit-transform 0.35s;
  transition: transform 0.35s;
  transition: transform 0.35s, -webkit-transform 0.35s;
}
.c-hint-accordion__collapse {
  display: none;
  overflow: hidden;
}
.c-hint-accordion__content {
  position: relative;
}
@media screen and (min-width: 769px) {
  .c-hint-accordion__content {
    padding: max(30px, 1.5625vw);
  }
}
@media screen and (max-width: 768px) {
  .c-hint-accordion__content {
    padding: 3.90625vw;
  }
}
.c-hint-accordion__content::before {
  position: absolute;
  top: 0;
  content: "";
}
@media screen and (min-width: 769px) {
  .c-hint-accordion__content::before {
    right: max(30px, 1.5625vw);
    left: max(30px, 1.5625vw);
    border-top: max(1px, 0.0520833333vw) solid #4f4f4f;
  }
}
@media screen and (max-width: 768px) {
  .c-hint-accordion__content::before {
    right: 3.90625vw;
    left: 3.90625vw;
    border-top: 0.1302083333vw solid #4f4f4f;
  }
}
.c-hint-accordion__content p {
  line-height: 1.8;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .c-hint-accordion__content p {
    margin-bottom: max(30px, 1.5625vw);
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (max-width: 768px) {
  .c-hint-accordion__content p {
    margin-bottom: 5.2083333333vw;
    font-size: 3.3854166667vw;
  }
}
.c-hint-accordion__content > *:last-child {
  margin-bottom: 0;
}

.p-home-hero {
  position: relative;
}
@media screen and (min-width: 769px) {
  .p-home-hero {
    display: grid;
    place-content: center;
    height: max(640px, 33.3333333333vw);
    padding: 0 max(30px, 1.5625vw);
    border-bottom: max(1px, 0.0520833333vw) solid #4f4f4f;
  }
}
@media screen and (max-width: 768px) {
  .p-home-hero {
    height: 140.625vw;
    padding-top: 15.625vw;
    border-bottom: 0.2604166667vw solid #4f4f4f;
  }
}
.p-home-hero::before {
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  z-index: -1;
  content: "";
}
@media screen and (min-width: 769px) {
  .p-home-hero::before {
    top: min(-61px, -3.1770833333vw);
    background: url("../webp/pc/common/bg_common.webp") no-repeat top min(-39px, -2.03125vw) center/max(1720px, 89.5833333333vw) max(968px, 50.4166666667vw);
  }
}
@media screen and (min-width: 1101px) and (max-width: 1500px) {
  .p-home-hero::before {
    background-position: top min( 60px, calc( -39px + ( (1500px - 100vw) * 0.2481203008 ) ) ) center;
    background-size: max( 1240px, calc( 1720px - ( (1500px - 100vw) * 1.2 ) ) ) max( 698px, calc( 968px - ( (1500px - 100vw) * 0.675 ) ) );
  }
}
@media screen and (min-width: 769px) and (max-width: 1100px) {
  .p-home-hero::before {
    background: url("../webp/sp/common/bg_common.webp") no-repeat top min( -240px, calc( -400px + ( (1100px - 100vw) * 0.4833836858 ) ) ) center/max( 610px, calc( 948px - ( (1100px - 100vw) * 1.0211480363 ) ) ) max( 1326px, calc( 2061px - ( (1100px - 100vw) * 2.2205438066 ) ) );
  }
}
@media screen and (max-width: 768px) {
  .p-home-hero::before {
    top: 0;
    background: url("../webp/sp/common/bg_common.webp") no-repeat top 18.2291666667vw center/cover;
  }
}
.p-home-hero__logo {
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .p-home-hero__logo {
    max-width: max(580px, 30.2083333333vw);
    margin-bottom: max(80px, 4.1666666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-home-hero__logo {
    width: 70.3125vw;
    margin-bottom: 13.0208333333vw;
  }
}
.p-home-hero__nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
}
@media screen and (min-width: 769px) {
  .p-home-hero__nav-button {
    max-width: max(248px, 12.9166666667vw);
    width: 100%;
    height: max(56px, 2.9166666667vw);
    margin: 0 max(15px, 0.78125vw);
    -webkit-clip-path: polygon(0 max(12px, 0.625vw), max(12px, 0.625vw) 0, 100% 0, 100% calc(100% - max(12px, 0.625vw)), calc(100% - max(12px, 0.625vw)) 100%, 0 100%);
    clip-path: polygon(0 max(12px, 0.625vw), max(12px, 0.625vw) 0, 100% 0, 100% calc(100% - max(12px, 0.625vw)), calc(100% - max(12px, 0.625vw)) 100%, 0 100%);
  }
}
@media screen and (max-width: 768px) {
  .p-home-hero__nav-button {
    width: 44.7916666667vw;
    height: 13.0208333333vw;
    margin: 0 1.3020833333vw;
    -webkit-clip-path: polygon(0 1.5625vw, 1.5625vw 0, 100% 0, 100% calc(100% - 1.5625vw), calc(100% - 1.5625vw) 100%, 0 100%);
    clip-path: polygon(0 1.5625vw, 1.5625vw 0, 100% 0, 100% calc(100% - 1.5625vw), calc(100% - 1.5625vw) 100%, 0 100%);
  }
}
@media (any-hover: hover) {
  .p-home-hero__nav-button {
    -webkit-transition: background-color 0.35s;
    transition: background-color 0.35s;
  }
  .p-home-hero__nav-button:hover {
    background-color: #21C8B4;
  }
}
.p-home-hero__nav-button .c-button__content {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
}
@media screen and (min-width: 769px) {
  .p-home-hero__nav-button .c-button__icon {
    width: max(30px, 1.5625vw);
    margin-right: max(10px, 0.5208333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-home-hero__nav-button .c-button__icon {
    width: 5.2083333333vw;
    margin-right: 2.0833333333vw;
  }
}
.p-home-hero__nav-button .c-button__text {
  font-family: "Rubik", sans-serif;
  font-weight: 600;
}
@media screen and (min-width: 769px) {
  .p-home-hero__nav-button .c-button__text {
    font-size: max(20px, 1.0416666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-home-hero__nav-button .c-button__text {
    font-size: 3.6458333333vw;
  }
}

.p-home-section__header {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
}
@media screen and (min-width: 769px) {
  .p-home-section__header {
    height: max(100px, 5.2083333333vw);
    padding: 0 max(60px, 3.125vw);
    border-bottom: max(1px, 0.0520833333vw) solid #4f4f4f;
    background: url("../images/pc/common/bg_title_barcode_vert.svg") no-repeat center right max(5px, 0.2604166667vw)/max(28px, 1.4583333333vw) max(94px, 4.8958333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-home-section__header {
    height: 15.625vw;
    padding: 0 3.90625vw;
    border-bottom: 0.2604166667vw solid #4f4f4f;
    background: url("../images/sp/common/bg_title_barcode_vert.svg") no-repeat center right 1.3020833333vw/2.6041666667vw 13.5416666667vw;
  }
}
.p-home-section__title {
  font-family: "Rubik", sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .p-home-section__title {
    font-size: max(54px, 2.8125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-home-section__title {
    font-size: 7.8125vw;
  }
}
.p-home-view-all {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  position: relative;
}
@media screen and (min-width: 769px) {
  .p-home-view-all {
    height: max(60px, 3.125vw);
    border-bottom: max(1px, 0.0520833333vw) solid #4f4f4f;
  }
}
@media screen and (max-width: 768px) {
  .p-home-view-all {
    height: 13.0208333333vw;
    border-bottom: 0.2604166667vw solid #4f4f4f;
  }
}
@media (any-hover: hover) {
  .p-home-view-all {
    -webkit-transition: color 0.35s;
    transition: color 0.35s;
  }
  .p-home-view-all:hover {
    color: #21C8B4;
  }
}
.p-home-view-all__text {
  width: 100%;
  font-family: "Rubik", sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .p-home-view-all__text {
    font-size: max(24px, 1.25vw);
  }
}
@media screen and (max-width: 768px) {
  .p-home-view-all__text {
    font-size: 3.90625vw;
  }
}
.p-home-view-all__arrow {
  position: absolute;
}
@media screen and (min-width: 769px) {
  .p-home-view-all__arrow {
    right: max(60px, 3.125vw);
    width: max(20px, 1.0416666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-home-view-all__arrow {
    right: 3.90625vw;
    width: 3.6458333333vw;
  }
}
.p-home-view-all__arrow .c-svg {
  width: 100%;
}

.p-index-case__item {
  position: relative;
}
@media screen and (min-width: 1281px) {
  .p-index-case__item {
    border-width: 0 max(1px, 0.0520833333vw) max(1px, 0.0520833333vw) 0;
    border-style: solid;
    border-color: #4f4f4f;
  }
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .p-index-case__item {
    border-bottom: 1px solid #4f4f4f;
  }
}
@media screen and (max-width: 768px) {
  .p-index-case__item {
    border-bottom: 0.2604166667vw solid #4f4f4f;
  }
}
.p-index-case__item.is-loading .p-index-case__character, .p-index-case__item.is-loading .p-index-case__content {
  opacity: 0;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
.p-index-case__item.is-loaded .p-index-case__character, .p-index-case__item.is-loaded .p-index-case__content {
  opacity: 1;
}
@media screen and (min-width: 961px) {
  .p-index-case__item--coming-soon .p-index-case__image {
    background: url("../webp/pc/home/bg_coming-soon.webp") no-repeat top right/cover;
  }
}
@media screen and (min-width: 961px) and (max-width: 1280px) {
  .p-index-case__item--coming-soon .p-index-case__image {
    background-position: top center;
  }
}
@media screen and (max-width: 960px) {
  .p-index-case__item--coming-soon .p-index-case__image {
    background: url("../webp/sp/home/bg_coming-soon.webp") no-repeat top center/cover;
  }
}
@media screen and (min-width: 1281px) {
  .p-index-case__item--coming-soon .p-index-case__sub-title {
    margin-bottom: 1.3020833333vw;
  }
}
@media screen and (min-width: 1281px) {
  .p-index-case__item--coming-soon .p-index-case__title-image {
    display: block;
    position: relative;
    left: -0.2604166667vw;
    width: 22.2916666667vw;
  }
}
@media screen and (max-width: 1280px) {
  .p-index-case__item--coming-soon .p-index-case__title-image {
    display: none;
  }
}
@media screen and (min-width: 1281px) {
  .p-index-case__item--coming-soon .p-index-case__title-text {
    display: none;
  }
}
@media screen and (max-width: 1280px) {
  .p-index-case__item--coming-soon .p-index-case__title-text {
    font-family: "Rubik", sans-serif;
    font-weight: 600;
  }
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .p-index-case__item--coming-soon .p-index-case__title-text {
    font-size: 44px;
  }
}
@media screen and (max-width: 768px) {
  .p-index-case__item--coming-soon .p-index-case__title-text {
    font-size: 7.03125vw;
  }
}
@media screen and (min-width: 961px) {
  .p-index-case__item--summer .p-index-case__image {
    background: url("../webp/pc/home/bg_case_summer.webp") no-repeat top right/cover;
  }
}
@media screen and (min-width: 961px) and (max-width: 1280px) {
  .p-index-case__item--summer .p-index-case__image {
    background-position: top center;
  }
}
@media screen and (max-width: 960px) {
  .p-index-case__item--summer .p-index-case__image {
    background: url("../webp/sp/home/bg_case_summer.webp") no-repeat top center/cover;
  }
}
@media screen and (min-width: 1281px) {
  .p-index-case__container {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
    padding-right: 4.1666666667vw;
    height: 26.0416666667vw;
  }
}
@media (any-hover: hover) {
  .p-index-case__container:hover .p-index-case__image::before {
    opacity: 0.15;
    -webkit-animation-play-state: running;
    animation-play-state: running;
  }
  .p-index-case__container:hover .p-index-case__coming-soon-noise {
    opacity: 0.15;
    -webkit-animation-play-state: running;
    animation-play-state: running;
  }
  .p-index-case__container:hover .p-index-case__image-noise {
    -webkit-animation-play-state: running;
    animation-play-state: running;
  }
  .p-index-case__container:hover .p-index-case__image-noise::before {
    opacity: 1;
    -webkit-animation-play-state: running;
    animation-play-state: running;
  }
}
.p-index-case__image {
  overflow: hidden;
}
@media screen and (min-width: 1281px) {
  .p-index-case__image {
    position: absolute;
    inset: 0;
  }
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .p-index-case__image {
    position: relative;
    height: 360px;
  }
}
@media screen and (max-width: 768px) {
  .p-index-case__image {
    position: relative;
    height: 56.25vw;
  }
}
.p-index-case__image::before {
  position: absolute;
  inset: 0;
  opacity: 0;
  background: url("../webp/common/bg_noise.webp") repeat top left;
  animation: background-noise 0.5s reverse infinite steps(5);
  -webkit-animation-play-state: paused;
  animation-play-state: paused;
  content: "";
}
@media screen and (min-width: 769px) {
  .p-index-case__image::before {
    background-size: max(200px, 10.4166666667vw) max(200px, 10.4166666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-index-case__image::before {
    background-size: 26.0416666667vw 26.0416666667vw;
  }
}
.p-index-case__character {
  position: relative;
  aspect-ratio: 1040/500;
}
@media screen and (min-width: 1281px) {
  .p-index-case__character {
    left: -4.1666666667vw;
    width: 54.1666666667vw;
  }
}
@media screen and (max-width: 1280px) {
  .p-index-case__character {
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .p-index-case__character {
    width: 750px;
  }
}
@media screen and (max-width: 768px) {
  .p-index-case__character {
    width: 117.1875vw;
  }
}
@media screen and (min-width: 1281px) {
  .p-index-case__image-shadow {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 56.25vw;
    background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0)), color-stop(50%, rgba(0, 0, 0, 0.6)), to(rgba(0, 0, 0, 0.9)));
    background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 50%, rgba(0, 0, 0, 0.9) 100%);
    background-image: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 50%, rgba(0, 0, 0, 0.9) 100%);
  }
}
.p-index-case__coming-soon-noise {
  position: absolute;
  inset: 0;
  opacity: 0;
  background: url("../webp/common/bg_noise.webp") repeat top left;
  -webkit-animation: background-noise 0.5s infinite steps(5);
  animation: background-noise 0.5s infinite steps(5);
  -webkit-animation-play-state: paused;
  animation-play-state: paused;
}
@media screen and (min-width: 769px) {
  .p-index-case__coming-soon-noise {
    background-size: max(200px, 10.4166666667vw) max(200px, 10.4166666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-index-case__coming-soon-noise {
    background-size: 26.0416666667vw 26.0416666667vw;
  }
}
.p-index-case__image-noise {
  position: absolute;
  top: 0;
  aspect-ratio: 1040/500;
  opacity: 0;
  -webkit-animation: sometimes-appear 6s linear infinite alternate;
  animation: sometimes-appear 6s linear infinite alternate;
  mix-blend-mode: hard-light;
}
@media screen and (min-width: 1281px) {
  .p-index-case__image-noise {
    left: -4.1666666667vw;
    width: 54.1666666667vw;
  }
}
@media screen and (max-width: 1280px) {
  .p-index-case__image-noise {
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .p-index-case__image-noise {
    width: 750px;
  }
}
@media screen and (max-width: 768px) {
  .p-index-case__image-noise {
    width: 117.1875vw;
  }
}
.p-index-case__image-noise::before {
  position: absolute;
  inset: 0;
  opacity: 0;
  background: url("../webp/common/bg_noise.webp") repeat top left;
  -webkit-mask: url("../webp/common/home/img_case_summer.webp") no-repeat top center/contain;
  mask: url("../webp/common/home/img_case_summer.webp") no-repeat top center/contain;
  -webkit-animation: background-noise 0.5s infinite steps(5);
  animation: background-noise 0.5s infinite steps(5);
  -webkit-animation-play-state: paused;
  animation-play-state: paused;
  content: "";
}
@media screen and (min-width: 769px) {
  .p-index-case__image-noise::before {
    background-size: max(200px, 10.4166666667vw) max(200px, 10.4166666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-index-case__image-noise::before {
    background-size: 26.0416666667vw 26.0416666667vw;
  }
}
.p-index-case__body {
  position: relative;
}
@media screen and (min-width: 1281px) {
  .p-index-case__body {
    position: relative;
    width: 37.5vw;
    margin-left: auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .p-index-case__body {
    padding: 40px 30px 60px;
  }
}
@media screen and (max-width: 768px) {
  .p-index-case__body {
    padding: 7.8125vw 3.90625vw 13.0208333333vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .p-index-case__content {
    max-width: 720px;
    margin: 0 auto;
  }
}
.p-index-case__sub-title {
  font-family: "Rubik", sans-serif;
  line-height: 1.4;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 1281px) {
  .p-index-case__sub-title {
    margin-bottom: 0.5208333333vw;
    font-size: 0.7291666667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .p-index-case__sub-title {
    margin-bottom: 10px;
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  .p-index-case__sub-title {
    margin-bottom: 1.3020833333vw;
    font-size: 3.125vw;
    font-weight: 600;
  }
}
@media screen and (min-width: 1281px) {
  .p-index-case__title {
    margin-bottom: 0.625vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .p-index-case__title {
    margin-bottom: 12px;
  }
}
@media screen and (max-width: 768px) {
  .p-index-case__title {
    margin-bottom: 2.6041666667vw;
  }
}
.p-index-case__title-text {
  line-height: 1.4;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 1281px) {
  .p-index-case__title-text {
    font-size: 1.875vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .p-index-case__title-text {
    font-size: 36px;
  }
}
@media screen and (max-width: 768px) {
  .p-index-case__title-text {
    font-size: 5.7291666667vw;
  }
}
.p-index-case__cast {
  line-height: 1.4;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 1281px) {
  .p-index-case__cast {
    font-size: 1.0416666667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .p-index-case__cast {
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  .p-index-case__cast {
    font-size: 3.3854166667vw;
  }
}
.p-index-case__episodes {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
@media screen and (min-width: 1281px) {
  .p-index-case__episodes {
    gap: 1.5625vw;
    width: 32.8125vw;
    margin-top: 2.6041666667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .p-index-case__episodes {
    gap: 30px;
    max-width: 630px;
    margin: 50px auto 0;
  }
}
@media screen and (max-width: 768px) {
  .p-index-case__episodes {
    gap: 2.6041666667vw;
    margin-top: 7.8125vw;
  }
}
.p-index-case__episode-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  flex-direction: column;
}
@media screen and (min-width: 1281px) {
  .p-index-case__status {
    margin-bottom: 0.5208333333vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .p-index-case__status {
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 768px) {
  .p-index-case__status {
    margin-bottom: 2.6041666667vw;
  }
}
.p-index-case__label {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
}
@media screen and (min-width: 1281px) {
  .p-index-case__label {
    width: 4.6875vw;
    height: 1.7708333333vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .p-index-case__label {
    width: 90px;
    height: 34px;
  }
}
@media screen and (max-width: 768px) {
  .p-index-case__label {
    width: 20.8333333333vw;
    height: 7.8125vw;
  }
}
.p-index-case__label::before {
  letter-spacing: 0.04em;
}
@media screen and (min-width: 1281px) {
  .p-index-case__label::before {
    font-size: 0.9375vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .p-index-case__label::before {
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  .p-index-case__label::before {
    font-size: 4.1666666667vw;
  }
}
@media screen and (min-width: 1281px) {
  .p-index-case__label.c-label--unpurchased {
    width: 5.2083333333vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .p-index-case__label.c-label--unpurchased {
    width: 100px;
  }
}
@media screen and (max-width: 768px) {
  .p-index-case__label.c-label--unpurchased {
    width: 24.7395833333vw;
  }
}
.p-index-case__label.c-label--unpurchased::before {
  content: "未購入";
}
.p-index-case__label.c-label--unpurchased::after {
  -webkit-box-ordinal-group: 0;
  -webkit-order: -1;
  order: -1;
  background: url("../images/common/icon_lock.svg") no-repeat center/contain;
  content: "";
}
@media screen and (min-width: 1281px) {
  .p-index-case__label.c-label--unpurchased::after {
    width: 0.7291666667vw;
    height: 0.8333333333vw;
    margin-right: 0.3125vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .p-index-case__label.c-label--unpurchased::after {
    width: 14px;
    height: 16px;
    margin-right: 6px;
  }
}
@media screen and (max-width: 768px) {
  .p-index-case__label.c-label--unpurchased::after {
    width: 2.8645833333vw;
    height: 3.3854166667vw;
    margin-right: 1.3020833333vw;
  }
}
.p-index-case__label.c-label--unconnected::before {
  content: "未接続";
}
.p-index-case__label.c-label--investigating::before {
  content: "調査中";
}
.p-index-case__label.c-label--complete::before {
  content: "完了";
}
.p-index-case__episode-title {
  line-height: 1.4;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 1281px) {
  .p-index-case__episode-title {
    margin-bottom: 1.0416666667vw;
    font-size: 1.1458333333vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .p-index-case__episode-title {
    margin-bottom: 20px;
    font-size: 22px;
  }
}
@media screen and (max-width: 768px) {
  .p-index-case__episode-title {
    margin-bottom: 3.90625vw;
    font-size: 3.90625vw;
  }
}
.p-index-case__action {
  margin-top: auto;
}
@media screen and (min-width: 1281px) {
  .p-index-case__action .c-button--case {
    height: 2.9166666667vw;
  }
}
@media screen and (min-width: 1281px) {
  .p-index-case__action .c-button--case .c-button__text {
    font-size: 0.9375vw;
  }
}
.p-index-case__data {
  display: none;
}

@media screen and (max-width: 768px) {
  .p-home-section--options {
    margin-bottom: -0.2604166667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-home-section--options .p-home-section__header {
    margin-bottom: min(-1px, -0.0520833333vw);
  }
}
@media screen and (min-width: 1101px) {
  .p-home-option__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    overflow: hidden;
  }
}
.p-home-option__item {
  position: relative;
}
@media screen and (min-width: 769px) and (max-width: 1100px) {
  .p-home-option__item {
    border-bottom: 1px solid #4f4f4f;
  }
}
@media screen and (max-width: 768px) {
  .p-home-option__item {
    border-bottom: 0.2604166667vw solid #4f4f4f;
  }
}
@media screen and (min-width: 1101px) {
  .p-home-option__item::before {
    position: absolute;
    inset: min(-0.5px, -0.0260416667vw);
    border: max(1px, 0.0520833333vw) solid #4f4f4f;
    content: "";
    pointer-events: none;
  }
}
@media screen and (min-width: 769px) {
  .p-home-option__item--serial-code .p-home-option__prepend {
    padding-top: max(5px, 0.2604166667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-home-option__item--serial-code .p-home-option__prepend {
    padding-top: 1.5625vw;
  }
}
@media screen and (min-width: 769px) {
  .p-home-option__item--serial-code .p-home-option__icon {
    margin-bottom: min(-5px, -0.2604166667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-home-option__item--serial-code .p-home-option__icon {
    margin-bottom: -0.78125vw;
  }
}
.p-home-option__link {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
}
@media screen and (min-width: 769px) {
  .p-home-option__link {
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    height: max(160px, 8.3333333333vw);
    padding-left: max(30px, 1.5625vw);
  }
}
@media screen and (max-width: 768px) {
  .p-home-option__link {
    padding: 3.90625vw 0 3.90625vw 3.90625vw;
  }
}
@media (any-hover: hover) {
  .p-home-option__link {
    -webkit-transition: color 0.35s;
    transition: color 0.35s;
  }
  .p-home-option__link:hover {
    color: #21C8B4;
  }
}
.p-home-option__prepend {
  background-color: #ffffff;
}
@media screen and (min-width: 769px) {
  .p-home-option__prepend {
    width: max(100px, 5.2083333333vw);
    height: max(100px, 5.2083333333vw);
    padding-top: max(10px, 0.5208333333vw);
    border-radius: max(6px, 0.3125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-home-option__prepend {
    width: 20.8333333333vw;
    height: 20.8333333333vw;
    padding-top: 2.0833333333vw;
    border-radius: 1.3020833333vw;
  }
}
.p-home-option__icon {
  display: block;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .p-home-option__icon {
    width: max(50px, 2.6041666667vw);
    margin-bottom: max(8px, 0.4166666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-home-option__icon {
    width: 10.4166666667vw;
    margin-bottom: 1.3020833333vw;
  }
}
.p-home-option__label {
  display: block;
  color: #000000;
  font-family: "Rubik", sans-serif;
  font-weight: 600;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .p-home-option__label {
    font-size: max(20px, 1.0416666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-home-option__label {
    font-size: 4.1666666667vw;
  }
}
.p-home-option__content {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
}
@media screen and (min-width: 769px) {
  .p-home-option__content {
    padding-left: max(30px, 1.5625vw);
  }
}
@media screen and (max-width: 768px) {
  .p-home-option__content {
    padding-left: 3.90625vw;
  }
}
.p-home-option__text {
  line-height: 1.8;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .p-home-option__text {
    font-size: max(16px, 0.8333333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-home-option__text {
    font-size: 3.3854166667vw;
  }
}
.p-home-option__append {
  display: grid;
  place-items: center;
}
@media screen and (min-width: 769px) {
  .p-home-option__append {
    width: max(148px, 7.7083333333vw);
  }
}
@media screen and (min-width: 1101px) and (max-width: 1500px) {
  .p-home-option__append {
    width: max( 88px, calc( 148px - ( (1500px - 100vw) * 0.1503759398 ) ) );
  }
}
@media screen and (max-width: 768px) {
  .p-home-option__append {
    width: 11.4583333333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-home-option__append .c-svg--arrow {
    width: max(28px, 1.4583333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-home-option__append .c-svg--arrow {
    width: 3.6458333333vw;
  }
}

@media screen and (min-width: 769px) {
  .p-login {
    padding: max(96px, 5vw) max(60px, 3.125vw) max(140px, 7.2916666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-login {
    padding: 15.625vw 3.90625vw 20.8333333333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-login__header {
    margin-bottom: max(40px, 2.0833333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-login__header {
    margin-bottom: max(80px, 4.1666666667vw);
  }
}
.p-login__logo {
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .p-login__logo {
    width: max(320px, 16.6666666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-login__logo {
    width: 57.2916666667vw;
  }
}
.p-login__title {
  letter-spacing: 0.04em;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .p-login__title {
    margin-bottom: max(46px, 2.3958333333vw);
    font-size: max(22px, 1.1458333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-login__title {
    margin-bottom: 7.8125vw;
    font-size: 4.6875vw;
    line-height: 1.4;
  }
}
.p-login__text {
  line-height: 1.8;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .p-login__text {
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (max-width: 768px) {
  .p-login__text {
    font-size: 3.125vw;
  }
}
@media screen and (min-width: 769px) {
  .p-login__form {
    width: max(760px, 39.5833333333vw);
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 960px) {
  .p-login__form {
    max-width: 580px;
  }
}
@media screen and (max-width: 768px) {
  .p-login__form {
    padding: 0 3.90625vw;
  }
}
@media screen and (min-width: 769px) {
  .p-login__form--email {
    margin-bottom: max(50px, 2.6041666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-login__form--email {
    margin-bottom: 6.5104166667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-login__form--email .p-login__error {
    margin-top: max(50px, 2.6041666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-login__form--email .p-login__error {
    margin-top: 10.4166666667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-login__form--email .p-login__action {
    margin-top: max(50px, 2.6041666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-login__form--email .p-login__action {
    margin-top: 10.4166666667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-login__form--google {
    margin-bottom: max(50px, 2.6041666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-login__form--google {
    margin-bottom: 9.1145833333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-login__form--google .p-login__error {
    margin-bottom: max(50px, 2.6041666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-login__form--google .p-login__error {
    margin-bottom: 10.4166666667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-login__divider {
    max-width: max(646px, 33.6458333333vw);
    margin: 0 auto max(50px, 2.6041666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-login__divider {
    margin-bottom: 6.5104166667vw;
    padding: 0 3.90625vw;
  }
}
.p-login__divider-text {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  font-family: "Rubik", sans-serif;
  letter-spacing: -0.01em;
}
@media screen and (min-width: 769px) {
  .p-login__divider-text {
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (max-width: 768px) {
  .p-login__divider-text {
    font-size: 2.8645833333vw;
  }
}
.p-login__divider-text::before, .p-login__divider-text::after {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  background-color: #4f4f4f;
  content: "";
}
@media screen and (min-width: 769px) {
  .p-login__divider-text::before, .p-login__divider-text::after {
    height: max(1px, 0.0520833333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-login__divider-text::before, .p-login__divider-text::after {
    height: 0.1302083333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-login__divider-text::before {
    margin-right: max(20px, 1.0416666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-login__divider-text::before {
    margin-right: 2.6041666667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-login__divider-text::after {
    margin-left: max(20px, 1.0416666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-login__divider-text::after {
    margin-left: 2.6041666667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-login__notice {
    margin-bottom: max(50px, 2.6041666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-login__notice {
    margin-bottom: 6.5104166667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-login__guide {
    margin-bottom: max(50px, 2.6041666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-login__guide {
    margin-bottom: 10.4166666667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-login__guide .p-login__text {
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .p-login__guide .p-login__text + .p-login__text {
    margin-top: 2.6041666667vw;
  }
}
.p-login__config {
  display: none;
}

@media screen and (min-width: 769px) {
  .p-signup {
    padding: max(96px, 5vw) max(60px, 3.125vw) max(140px, 7.2916666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-signup {
    padding: 15.625vw 3.90625vw 20.8333333333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-signup__header {
    margin-bottom: max(54px, 2.8125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-signup__header {
    margin-bottom: 10.4166666667vw;
  }
}
.p-signup__logo {
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .p-signup__logo {
    width: max(320px, 16.6666666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-signup__logo {
    width: 57.2916666667vw;
  }
}
.p-signup__title {
  letter-spacing: 0.04em;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .p-signup__title {
    margin-bottom: max(40px, 2.0833333333vw);
    font-size: max(32px, 1.6666666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-signup__title {
    margin-bottom: 5.2083333333vw;
    font-size: 4.6875vw;
  }
}
.p-signup__text {
  line-height: 1.8;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .p-signup__text {
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (max-width: 768px) {
  .p-signup__text {
    font-size: 3.125vw;
  }
}
@media screen and (min-width: 769px) {
  .p-signup__text + .p-signup__text {
    margin-top: max(20px, 1.0416666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-signup__text + .p-signup__text {
    margin-top: 2.6041666667vw;
  }
}
.p-signup__block {
  display: none;
}
.p-signup__block.is-active {
  display: block;
}
@media screen and (min-width: 769px) {
  .p-signup__block--form .p-signup__guide {
    margin-bottom: max(80px, 4.1666666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-signup__block--form .p-signup__guide {
    margin-bottom: 13.0208333333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-signup__block--form .p-signup__text {
    text-align: center;
  }
}
@media screen and (min-width: 769px) {
  .p-signup__block--form .p-signup__form {
    width: max(760px, 39.5833333333vw);
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 960px) {
  .p-signup__block--form .p-signup__form {
    max-width: 580px;
  }
}
@media screen and (max-width: 768px) {
  .p-signup__block--form .p-signup__form {
    padding: 0 3.90625vw;
  }
}
@media screen and (min-width: 769px) {
  .p-signup__block--form .p-signup__form--email {
    margin-bottom: max(50px, 2.6041666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-signup__block--form .p-signup__form--email {
    margin-bottom: 6.5104166667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-signup__block--form .p-signup__form--google {
    margin-bottom: max(80px, 4.1666666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-signup__block--form .p-signup__form--google {
    margin-bottom: 13.0208333333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-signup__block--form .p-signup__notice {
    margin: max(90px, 4.6875vw) 0 max(40px, 2.0833333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-signup__block--form .p-signup__notice {
    margin: 13.0208333333vw 0 6.5104166667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-signup__block--form .p-signup__error {
    margin-bottom: max(50px, 2.6041666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-signup__block--form .p-signup__error {
    margin-bottom: 10.4166666667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-signup__block--email-sent .p-signup__announce {
    margin-bottom: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-signup__block--email-sent .p-signup__announce {
    margin-bottom: 13.0208333333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-signup__block--email-sent .p-signup__text {
    text-align: center;
  }
}
@media screen and (min-width: 769px) {
  .p-signup__block--email-sent .p-signup__action--verify {
    margin-bottom: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-signup__block--email-sent .p-signup__action--verify {
    margin-bottom: 13.0208333333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-signup__block--email-sent .p-signup__error {
    margin-top: max(20px, 1.0416666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-signup__block--email-sent .p-signup__error {
    margin-top: 7.8125vw;
  }
}
@media screen and (min-width: 769px) {
  .p-signup__block--email-verified .p-signup__announce {
    margin-bottom: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-signup__block--email-verified .p-signup__announce {
    margin-bottom: 13.0208333333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-signup__block--email-verified .p-signup__action .c-button + .c-button {
    margin-top: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-signup__block--email-verified .p-signup__action .c-button + .c-button {
    margin-top: 13.0208333333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-signup__divider {
    max-width: max(646px, 33.6458333333vw);
    margin: 0 auto max(50px, 2.6041666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-signup__divider {
    margin-bottom: 6.5104166667vw;
    padding: 0 3.90625vw;
  }
}
.p-signup__divider-text {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  font-family: "Rubik", sans-serif;
  letter-spacing: -0.01em;
}
@media screen and (min-width: 769px) {
  .p-signup__divider-text {
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (max-width: 768px) {
  .p-signup__divider-text {
    font-size: 2.8645833333vw;
  }
}
.p-signup__divider-text::before, .p-signup__divider-text::after {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  background-color: #4f4f4f;
  content: "";
}
@media screen and (min-width: 769px) {
  .p-signup__divider-text::before, .p-signup__divider-text::after {
    height: max(1px, 0.0520833333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-signup__divider-text::before, .p-signup__divider-text::after {
    height: 0.1302083333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-signup__divider-text::before {
    margin-right: max(20px, 1.0416666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-signup__divider-text::before {
    margin-right: 2.6041666667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-signup__divider-text::after {
    margin-left: max(20px, 1.0416666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-signup__divider-text::after {
    margin-left: 2.6041666667vw;
  }
}
.p-signup__config {
  display: none;
}

.p-signup-agree {
  text-align: center;
}
.p-signup-agree__input {
  position: absolute;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.p-signup-agree__input:checked + .p-signup-agree__text::before {
  border-color: #21C8B4;
  background-color: #21C8B4;
}
.p-signup-agree__input:checked + .p-signup-agree__text::after {
  opacity: 1;
}
.p-signup-agree__text {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  position: relative;
  line-height: 1.8;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .p-signup-agree__text {
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (max-width: 768px) {
  .p-signup-agree__text {
    font-size: 3.125vw;
  }
}
.p-signup-agree__text::before, .p-signup-agree__text::after {
  content: "";
  cursor: pointer;
}
@media screen and (min-width: 769px) {
  .p-signup-agree__text::before, .p-signup-agree__text::after {
    width: max(24px, 1.25vw);
    height: max(24px, 1.25vw);
  }
}
@media screen and (max-width: 768px) {
  .p-signup-agree__text::before, .p-signup-agree__text::after {
    width: 4.6875vw;
    height: 4.6875vw;
  }
}
.p-signup-agree__text::before {
  background-color: #ffffff;
  -webkit-transition: border-color 0.15s, background-color 0.15s;
  transition: border-color 0.15s, background-color 0.15s;
}
@media screen and (min-width: 769px) {
  .p-signup-agree__text::before {
    margin-right: max(16px, 0.8333333333vw);
    border: max(1px, 0.0520833333vw) solid #4f4f4f;
  }
}
@media screen and (max-width: 768px) {
  .p-signup-agree__text::before {
    margin-right: 2.6041666667vw;
    border: 0.2604166667vw solid #4f4f4f;
  }
}
.p-signup-agree__text::after {
  position: absolute;
  left: 0;
  opacity: 0;
  background: url("../images/common/icon_check.svg") no-repeat center/contain;
  -webkit-transition: opacity 0.15s;
  transition: opacity 0.15s;
}

@media screen and (min-width: 769px) {
  .p-reset-password {
    padding: max(96px, 5vw) max(60px, 3.125vw) max(140px, 7.2916666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-reset-password {
    padding: 15.625vw 3.90625vw 20.8333333333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-reset-password__header {
    margin-bottom: max(54px, 2.8125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-reset-password__header {
    margin-bottom: 10.4166666667vw;
  }
}
.p-reset-password__logo {
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .p-reset-password__logo {
    width: max(320px, 16.6666666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-reset-password__logo {
    width: 57.2916666667vw;
  }
}
.p-reset-password__title {
  letter-spacing: 0.04em;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .p-reset-password__title {
    margin-bottom: max(40px, 2.0833333333vw);
    font-size: max(32px, 1.6666666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-reset-password__title {
    margin-bottom: 5.2083333333vw;
    font-size: 4.6875vw;
  }
}
.p-reset-password__text {
  line-height: 1.8;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .p-reset-password__text {
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (max-width: 768px) {
  .p-reset-password__text {
    font-size: 3.125vw;
  }
}
@media screen and (min-width: 769px) {
  .p-reset-password__guide {
    margin-bottom: max(80px, 4.1666666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-reset-password__guide {
    margin-bottom: 13.0208333333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-reset-password__form {
    width: max(760px, 39.5833333333vw);
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 960px) {
  .p-reset-password__form {
    max-width: 580px;
  }
}
@media screen and (max-width: 768px) {
  .p-reset-password__form {
    padding: 0 3.90625vw;
  }
}
@media screen and (min-width: 769px) {
  .p-reset-password__error {
    margin-top: max(50px, 2.6041666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-reset-password__error {
    margin-top: 10.4166666667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-reset-password__action--submit {
    margin-top: max(50px, 2.6041666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-reset-password__action--submit {
    margin-top: 10.4166666667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-reset-password__announce {
    margin-top: max(50px, 2.6041666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-reset-password__announce {
    margin-top: 13.0208333333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-reset-password__announce .c-form__announce-text {
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .p-reset-password__announce .c-form__announce-text {
    font-size: 3.125vw;
  }
}
@media screen and (min-width: 769px) {
  .p-reset-password__announce .c-form__announce-text + .c-form__announce-text {
    margin-top: max(20px, 1.0416666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-reset-password__announce .c-form__announce-text + .c-form__announce-text {
    margin-top: 2.6041666667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-reset-password__action--login {
    margin-top: max(80px, 4.1666666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-reset-password__action--login {
    margin-top: 13.0208333333vw;
  }
}

.p-case__body {
  position: relative;
}
@media screen and (min-width: 769px) {
  .p-case__body {
    padding: max(60px, 3.125vw) max(30px, 1.5625vw) max(120px, 6.25vw);
  }
}
@media screen and (max-width: 768px) {
  .p-case__body {
    padding: 7.8125vw 3.90625vw 20.8333333333vw;
  }
}

@media screen and (min-width: 769px) {
  .p-case-tab {
    max-width: max(960px, 50vw);
    margin: 0 auto max(58px, 3.0208333333vw);
  }
}
@media screen and (min-width: 769px) and (max-width: 1100px) {
  .p-case-tab {
    max-width: 480px;
  }
}
@media screen and (max-width: 768px) {
  .p-case-tab {
    margin-bottom: 10.4166666667vw;
  }
}
.p-case-tab__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
}
@media screen and (min-width: 769px) {
  .p-case-tab__list {
    margin: 0 min(-5px, -0.2604166667vw) min(-10px, -0.5208333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-case-tab__list {
    margin: 0 -0.78125vw -2.6041666667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-case-tab__item {
    margin: 0 max(5px, 0.2604166667vw) max(10px, 0.5208333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-case-tab__item {
    width: 33.3333333333%;
    padding: 0 0.78125vw 2.6041666667vw;
  }
}
.p-case-tab__input {
  position: absolute;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.p-case-tab__input:checked + .p-case-tab__label {
  color: #000000;
  border-color: #ffffff;
  background-color: #ffffff;
}
@media (any-hover: hover) {
  .p-case-tab__input:hover:not(:checked) + .p-case-tab__label .p-case-tab__text {
    color: #21C8B4;
  }
}
.p-case-tab__label {
  display: grid;
  place-items: center;
  -webkit-transition: border 0.25s, background-color 0.25s;
  transition: border 0.25s, background-color 0.25s;
}
@media screen and (min-width: 769px) {
  .p-case-tab__label {
    height: max(42px, 2.1875vw);
    padding: 0 max(40px, 2.0833333333vw);
    border: max(1px, 0.0520833333vw) solid #4f4f4f;
  }
}
@media screen and (max-width: 768px) {
  .p-case-tab__label {
    height: 10.4166666667vw;
    border: 0.2604166667vw solid #4f4f4f;
  }
}
.p-case-tab__text {
  font-family: "Rubik", sans-serif;
  letter-spacing: 0.04em;
  -webkit-transition: color 0.25s;
  transition: color 0.25s;
}
@media screen and (min-width: 769px) {
  .p-case-tab__text {
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (max-width: 768px) {
  .p-case-tab__text {
    font-size: 3.3854166667vw;
  }
}
.p-case-tab__content {
  opacity: 1;
  -webkit-transition: opacity 0.15s ease-in-out;
  transition: opacity 0.15s ease-in-out;
}
@media screen and (min-width: 769px) {
  .p-case-tab__content {
    max-width: max(960px, 50vw);
    margin: 0 auto;
  }
}
.p-case-tab__content.is-hidden {
  opacity: 0;
}

@media screen and (min-width: 769px) {
  .p-profile__container {
    padding: max(140px, 7.2916666667vw) max(60px, 3.125vw);
    border-bottom: max(1px, 0.0520833333vw) solid #4f4f4f;
  }
}
@media screen and (max-width: 768px) {
  .p-profile__container {
    padding: 10.4166666667vw 7.8125vw 15.625vw;
    border-bottom: 0.2604166667vw solid #4f4f4f;
  }
}
.p-profile__connected-header {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
}
@media screen and (min-width: 769px) {
  .p-profile__connected-header {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    height: max(100px, 5.2083333333vw);
    border-bottom: max(1px, 0.0520833333vw) solid #4f4f4f;
    background: url("../images/pc/common/bg_title_barcode_vert.svg") no-repeat center right max(5px, 0.2604166667vw)/max(28px, 1.4583333333vw) max(94px, 4.8958333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-profile__connected-header {
    height: 15.625vw;
    padding: 0 3.90625vw;
    border-bottom: 0.2604166667vw solid #4f4f4f;
    background: url("../images/sp/common/bg_title_barcode_vert.svg") no-repeat center right 1.3020833333vw/2.6041666667vw 13.5416666667vw;
  }
}
.p-profile__connected-title {
  font-family: "Rubik", sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .p-profile__connected-title {
    font-size: max(54px, 2.8125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-profile__connected-title {
    font-size: 7.8125vw;
  }
}
.p-profile__connected-body {
  position: relative;
}
@media screen and (min-width: 769px) {
  .p-profile__connected-body .c-case-list {
    max-width: max(960px, 50vw);
    margin: 0 auto;
    padding: max(60px, 3.125vw) max(30px, 1.5625vw) max(120px, 6.25vw);
  }
}
@media screen and (max-width: 768px) {
  .p-profile__connected-body .c-case-list {
    padding: 5.2083333333vw 3.90625vw 20.8333333333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-profile__connected-body .c-case-list__announce-text {
    text-align: center;
  }
}
@media screen and (min-width: 769px) {
  .p-profile-card {
    max-width: max(800px, 41.6666666667vw);
    margin: 0 auto;
  }
}
.p-profile-card__container {
  background-image: url("../images/common/profile/bg_profile_barcode.svg"), url("../images/common/profile/bg_profile_text.svg"), url("../images/common/logo_symbol_gray.svg");
  background-repeat: no-repeat;
}
@media screen and (min-width: 769px) {
  .p-profile-card__container {
    max-width: max(780px, 40.625vw);
    padding-bottom: max(120px, 6.25vw);
    background-position: bottom max(3px, 0.15625vw) left, bottom max(8px, 0.4166666667vw) right max(70px, 3.6458333333vw), bottom right;
    background-size: max(245px, 12.7604166667vw) max(24px, 1.25vw), max(164px, 8.5416666667vw) max(16px, 0.8333333333vw), max(50px, 2.6041666667vw) max(50px, 2.6041666667vw);
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .p-profile-card__container {
    max-width: max(580px, 30.2083333333vw);
    margin: 0 auto;
  }
}
@media screen and (max-width: 768px) {
  .p-profile-card__container {
    padding-bottom: 12.5vw;
    background-position: bottom left, bottom 0.6510416667vw right 10.15625vw, bottom right;
    background-size: 39.9739583333vw 3.90625vw, 25.78125vw 2.4739583333vw, 7.8125vw 7.8125vw;
  }
}
@media screen and (min-width: 1025px) {
  .p-profile-card__content {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
  }
}
@media screen and (min-width: 769px) {
  .p-profile-card__content + .p-profile-card__content {
    margin-top: max(50px, 2.6041666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-profile-card__content + .p-profile-card__content {
    margin-top: 6.5104166667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-profile-card__content--id .p-profile-card__field {
    padding-right: max(58px, 3.0208333333vw);
  }
}
.p-profile-card__label {
  font-family: "Rubik", sans-serif;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 1025px) {
  .p-profile-card__label {
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    width: max(200px, 10.4166666667vw);
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .p-profile-card__label {
    display: block;
    margin-bottom: 20px;
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  .p-profile-card__label {
    display: block;
    margin-bottom: 2.6041666667vw;
    font-size: 3.3854166667vw;
  }
}
.p-profile-card__field {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  position: relative;
  background-color: #ffffff;
}
@media screen and (min-width: 1025px) {
  .p-profile-card__field {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    flex: 1;
    min-width: 0;
  }
}
@media screen and (min-width: 769px) {
  .p-profile-card__field {
    height: max(60px, 3.125vw);
    padding: max(10px, 0.5208333333vw) max(30px, 1.5625vw);
    -webkit-clip-path: polygon(0 max(12px, 0.625vw), max(12px, 0.625vw) 0, 100% 0, 100% calc(100% - max(12px, 0.625vw)), calc(100% - max(12px, 0.625vw)) 100%, 0 100%);
    clip-path: polygon(0 max(12px, 0.625vw), max(12px, 0.625vw) 0, 100% 0, 100% calc(100% - max(12px, 0.625vw)), calc(100% - max(12px, 0.625vw)) 100%, 0 100%);
  }
}
@media screen and (max-width: 768px) {
  .p-profile-card__field {
    height: 13.0208333333vw;
    padding: 1.3020833333vw 3.90625vw;
    -webkit-clip-path: polygon(0 2.6041666667vw, 2.6041666667vw 0, 100% 0, 100% calc(100% - 2.6041666667vw), calc(100% - 2.6041666667vw) 100%, 0 100%);
    clip-path: polygon(0 2.6041666667vw, 2.6041666667vw 0, 100% 0, 100% calc(100% - 2.6041666667vw), calc(100% - 2.6041666667vw) 100%, 0 100%);
  }
}
.p-profile-card__value {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  color: #000000;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 1025px) {
  .p-profile-card__value {
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (max-width: 768px) {
  .p-profile-card__value {
    font-size: 3.3854166667vw;
  }
}
.p-profile-card__copy-button {
  position: absolute;
}
@media screen and (min-width: 769px) {
  .p-profile-card__copy-button {
    right: max(10px, 0.5208333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-profile-card__copy-button {
    right: 2.0833333333vw;
  }
}

@media screen and (min-width: 769px) and (max-width: 1024px) {
  .p-serial-code__title {
    font-size: max( 72px, calc( 80px - ( (1024px - 100vw) * 0.031372549 ) ) );
  }
}
@media screen and (min-width: 769px) {
  .p-serial-code__body {
    padding: max(100px, 5.2083333333vw) max(60px, 3.125vw) max(120px, 6.25vw);
  }
}
@media screen and (max-width: 768px) {
  .p-serial-code__body {
    padding: 10.4166666667vw 7.8125vw 20.8333333333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-serial-code__container {
    max-width: max(760px, 39.5833333333vw);
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 960px) {
  .p-serial-code__container {
    max-width: 580px;
  }
}
@media screen and (min-width: 769px) {
  .p-serial-code__sub-title {
    margin-bottom: max(30px, 1.5625vw);
  }
}
@media screen and (max-width: 768px) {
  .p-serial-code__sub-title {
    margin-bottom: 5.2083333333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-serial-code__guide {
    margin-bottom: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-serial-code__guide {
    margin-bottom: 7.8125vw;
  }
}
@media screen and (max-width: 768px) {
  .p-serial-code__guide .u-text-primary + .u-text-primary {
    margin-top: 1.3020833333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-serial-code__caution {
    margin-top: max(40px, 2.0833333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-serial-code__caution {
    margin-top: 5.2083333333vw;
  }
}
.p-serial-code__caution-text {
  line-height: 1.8;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .p-serial-code__caution-text {
    font-size: max(16px, 0.8333333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-serial-code__caution-text {
    font-size: 3.125vw;
  }
}
.p-serial-code__caution-text + .p-serial-code__caution-text {
  margin-top: 1em;
}
@media screen and (min-width: 769px) {
  .p-serial-code__error {
    margin-top: max(40px, 2.0833333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-serial-code__error {
    margin-top: 7.8125vw;
  }
}
@media screen and (min-width: 769px) {
  .p-serial-code__error + .p-serial-code__action {
    margin-top: max(50px, 2.6041666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-serial-code__error + .p-serial-code__action {
    margin-top: 10.4166666667vw;
  }
}
@media screen and (min-width: 961px) {
  .p-serial-code__action {
    padding-left: max(180px, 9.375vw);
  }
}
@media screen and (min-width: 769px) {
  .p-serial-code__action {
    margin-top: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-serial-code__action {
    margin-top: 10.4166666667vw;
  }
}
@media screen and (max-width: 960px) {
  .p-serial-code__action .c-button {
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) {
  .p-serial-code__announce {
    margin-top: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-serial-code__announce {
    margin-top: 10.4166666667vw;
  }
}
@media screen and (max-width: 768px) {
  .p-serial-code__announce .c-form__announce-text + .c-form__announce-text {
    margin-top: 1.3020833333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-serial-code__announce .c-button {
    margin-top: max(40px, 2.0833333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-serial-code__announce .c-button {
    margin-top: 10.4166666667vw;
  }
}

@media screen and (min-width: 769px) {
  .p-settings__body {
    padding: max(30px, 1.5625vw) max(60px, 3.125vw) max(120px, 6.25vw);
  }
}
@media screen and (max-width: 768px) {
  .p-settings__body {
    padding: 2.6041666667vw 7.8125vw 20.8333333333vw;
  }
}

@media screen and (min-width: 769px) {
  .p-setting-list {
    max-width: max(960px, 50vw);
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 960px) {
  .p-setting-list {
    max-width: 460px;
  }
}
@media screen and (min-width: 961px) {
  .p-setting-list__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 max(40px, 2.0833333333vw);
  }
}
.p-setting-list__item {
  position: relative;
}
@media screen and (min-width: 769px) {
  .p-setting-list__item {
    border-bottom: max(1px, 0.0520833333vw) solid #4f4f4f;
  }
}
@media screen and (max-width: 768px) {
  .p-setting-list__item {
    border-bottom: 0.2604166667vw solid #4f4f4f;
  }
}
.p-setting-list__link {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  width: 100%;
}
@media screen and (min-width: 769px) {
  .p-setting-list__link {
    height: max(95px, 4.9479166667vw);
    padding: 0 max(30px, 1.5625vw);
  }
}
@media screen and (max-width: 768px) {
  .p-setting-list__link {
    height: 19.53125vw;
  }
}
@media (any-hover: hover) {
  .p-setting-list__link {
    -webkit-transition: color 0.35s;
    transition: color 0.35s;
  }
  .p-setting-list__link:hover {
    color: #21C8B4;
  }
}
.p-setting-list__link.is-disabled {
  opacity: 0.3;
  pointer-events: none;
}
.p-setting-list__text {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .p-setting-list__text {
    font-size: max(20px, 1.0416666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-setting-list__text {
    font-size: 3.90625vw;
  }
}
.p-setting-list__append {
  display: grid;
  place-items: center;
}
@media screen and (min-width: 769px) {
  .p-setting-list__append {
    width: max(16px, 0.8333333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-setting-list__append {
    width: 3.6458333333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-setting-list__append .c-svg--arrow {
    width: max(16px, 0.8333333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-setting-list__append .c-svg--arrow {
    width: 3.6458333333vw;
  }
}

@media screen and (min-width: 769px) {
  .p-change-email {
    padding: max(100px, 5.2083333333vw) max(60px, 3.125vw) max(120px, 6.25vw);
  }
}
@media screen and (max-width: 768px) {
  .p-change-email {
    padding: 7.8125vw 7.8125vw 15.625vw;
  }
}
@media screen and (min-width: 769px) {
  .p-change-email__container {
    max-width: max(760px, 39.5833333333vw);
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 960px) {
  .p-change-email__container {
    max-width: 580px;
  }
}
@media screen and (min-width: 769px) {
  .p-change-email__header {
    margin-bottom: max(30px, 1.5625vw);
  }
}
@media screen and (max-width: 768px) {
  .p-change-email__header {
    margin-bottom: 4.1666666667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-change-email__guide {
    margin-bottom: max(50px, 2.6041666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-change-email__guide {
    margin-bottom: 9.1145833333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-change-email__error {
    margin-top: max(40px, 2.0833333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-change-email__error {
    margin-top: 7.8125vw;
  }
}
@media screen and (min-width: 769px) {
  .p-change-email__error + .p-change-email__action {
    margin-top: max(50px, 2.6041666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-change-email__error + .p-change-email__action {
    margin-top: 10.4166666667vw;
  }
}
@media screen and (min-width: 961px) {
  .p-change-email__action {
    padding-left: max(180px, 9.375vw);
  }
}
@media screen and (min-width: 769px) {
  .p-change-email__action {
    margin-top: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-change-email__action {
    margin-top: 13.0208333333vw;
  }
}
@media screen and (max-width: 960px) {
  .p-change-email__action .c-button {
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) {
  .p-change-email__announce {
    margin-top: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-change-email__announce {
    margin-top: 10.4166666667vw;
  }
}
.p-change-email__announce .c-form__announce-text + .c-form__announce-text {
  margin-top: 1em;
}

@media screen and (min-width: 769px) {
  .p-current-email {
    margin-bottom: max(50px, 2.6041666667vw);
    padding: max(30px, 1.5625vw);
    border: max(1px, 0.0520833333vw) solid #4f4f4f;
  }
}
@media screen and (max-width: 768px) {
  .p-current-email {
    margin-bottom: 9.1145833333vw;
    padding: 5.2083333333vw 3.90625vw;
    border: 0.2604166667vw solid #4f4f4f;
  }
}
@media screen and (min-width: 961px) {
  .p-current-email__content {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
  }
}
.p-current-email__label {
  letter-spacing: 0.04em;
}
@media screen and (min-width: 961px) {
  .p-current-email__label {
    width: max(200px, 10.4166666667vw);
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (min-width: 769px) and (max-width: 960px) {
  .p-current-email__label {
    display: block;
    margin-bottom: 20px;
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  .p-current-email__label {
    display: block;
    margin-bottom: 2.6041666667vw;
    font-size: 3.3854166667vw;
  }
}
.p-current-email__field {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  position: relative;
  background-color: #ffffff;
}
@media screen and (min-width: 769px) {
  .p-current-email__field {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    flex: 1;
    height: max(60px, 3.125vw);
    padding: max(10px, 0.5208333333vw) max(30px, 1.5625vw);
    -webkit-clip-path: polygon(0 max(12px, 0.625vw), max(12px, 0.625vw) 0, 100% 0, 100% calc(100% - max(12px, 0.625vw)), calc(100% - max(12px, 0.625vw)) 100%, 0 100%);
    clip-path: polygon(0 max(12px, 0.625vw), max(12px, 0.625vw) 0, 100% 0, 100% calc(100% - max(12px, 0.625vw)), calc(100% - max(12px, 0.625vw)) 100%, 0 100%);
  }
}
@media screen and (max-width: 768px) {
  .p-current-email__field {
    height: 13.0208333333vw;
    padding: 1.3020833333vw 3.90625vw;
    -webkit-clip-path: polygon(0 2.6041666667vw, 2.6041666667vw 0, 100% 0, 100% calc(100% - 2.6041666667vw), calc(100% - 2.6041666667vw) 100%, 0 100%);
    clip-path: polygon(0 2.6041666667vw, 2.6041666667vw 0, 100% 0, 100% calc(100% - 2.6041666667vw), calc(100% - 2.6041666667vw) 100%, 0 100%);
  }
}
.p-current-email__value {
  color: #000000;
  font-family: "Rubik", sans-serif;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .p-current-email__value {
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (max-width: 768px) {
  .p-current-email__value {
    font-size: 3.3854166667vw;
  }
}

@media screen and (min-width: 769px) {
  .p-change-password {
    padding: max(100px, 5.2083333333vw) max(60px, 3.125vw) max(120px, 6.25vw);
  }
}
@media screen and (max-width: 768px) {
  .p-change-password {
    padding: 7.8125vw 7.8125vw 15.625vw;
  }
}
@media screen and (min-width: 769px) {
  .p-change-password__container {
    max-width: max(760px, 39.5833333333vw);
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 960px) {
  .p-change-password__container {
    max-width: 580px;
  }
}
@media screen and (min-width: 769px) {
  .p-change-password__header {
    margin-bottom: max(30px, 1.5625vw);
  }
}
@media screen and (max-width: 768px) {
  .p-change-password__header {
    padding-bottom: 4.1666666667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-change-password__guide {
    margin-bottom: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-change-password__guide {
    margin-bottom: 9.1145833333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-change-password__error {
    margin-top: max(40px, 2.0833333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-change-password__error {
    margin-top: 7.8125vw;
  }
}
@media screen and (min-width: 769px) {
  .p-change-password__error + .p-change-password__action {
    margin-top: max(50px, 2.6041666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-change-password__error + .p-change-password__action {
    margin-top: 10.4166666667vw;
  }
}
@media screen and (min-width: 961px) {
  .p-change-password__action {
    padding-left: max(180px, 9.375vw);
  }
}
@media screen and (min-width: 769px) {
  .p-change-password__action {
    margin-top: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-change-password__action {
    margin-top: 13.0208333333vw;
  }
}
@media screen and (max-width: 960px) {
  .p-change-password__action .c-button {
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) {
  .p-change-password__announce {
    margin-top: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-change-password__announce {
    margin-top: 10.4166666667vw;
  }
}
.p-change-password__announce .c-form__announce-text + .c-form__announce-text {
  margin-top: 1em;
}

@media screen and (min-width: 769px) {
  .p-change-name {
    padding: max(100px, 5.2083333333vw) max(60px, 3.125vw) max(120px, 6.25vw);
  }
}
@media screen and (max-width: 768px) {
  .p-change-name {
    padding: 7.8125vw 7.8125vw 15.625vw;
  }
}
@media screen and (min-width: 769px) {
  .p-change-name__container {
    max-width: max(760px, 39.5833333333vw);
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 960px) {
  .p-change-name__container {
    max-width: 580px;
  }
}
@media screen and (min-width: 769px) {
  .p-change-name__header {
    margin-bottom: max(30px, 1.5625vw);
  }
}
@media screen and (max-width: 768px) {
  .p-change-name__header {
    margin-bottom: 4.1666666667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-change-name__guide {
    margin-bottom: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-change-name__guide {
    margin-bottom: 10.4166666667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-change-name__error {
    margin-top: max(40px, 2.0833333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-change-name__error {
    margin-top: 7.8125vw;
  }
}
@media screen and (min-width: 769px) {
  .p-change-name__error + .p-change-name__action {
    margin-top: max(50px, 2.6041666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-change-name__error + .p-change-name__action {
    margin-top: 10.4166666667vw;
  }
}
@media screen and (min-width: 961px) {
  .p-change-name__action {
    padding-left: max(180px, 9.375vw);
  }
}
@media screen and (min-width: 769px) {
  .p-change-name__action {
    margin-top: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-change-name__action {
    margin-top: 13.0208333333vw;
  }
}
@media screen and (max-width: 960px) {
  .p-change-name__action .c-button {
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) {
  .p-change-name__announce {
    margin-top: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-change-name__announce {
    margin-top: 10.4166666667vw;
  }
}
.p-change-name__announce .c-form__announce-text + .c-form__announce-text {
  margin-top: 1em;
}

@media screen and (min-width: 769px) {
  .p-game-mode {
    padding: max(100px, 5.2083333333vw) max(60px, 3.125vw) max(120px, 6.25vw);
  }
}
@media screen and (max-width: 768px) {
  .p-game-mode {
    padding: 7.8125vw 7.8125vw 15.625vw;
  }
}
@media screen and (min-width: 769px) {
  .p-game-mode__container {
    max-width: max(760px, 39.5833333333vw);
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 960px) {
  .p-game-mode__container {
    max-width: 580px;
  }
}
@media screen and (min-width: 769px) {
  .p-game-mode__header {
    margin-bottom: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-game-mode__header {
    margin-bottom: 7.8125vw;
  }
}
@media screen and (min-width: 769px) {
  .p-game-mode__case {
    margin-bottom: max(40px, 2.0833333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-game-mode__case {
    margin-bottom: 7.03125vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 960px) {
  .p-game-mode__play-mode .c-form-field__label {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 768px) {
  .p-game-mode__play-mode .c-form-field__label {
    margin-bottom: 6.5104166667vw;
  }
}
.p-game-mode .p-play-mode {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .p-game-mode .p-play-mode {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
}
.p-game-mode .p-play-mode__label {
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .p-game-mode .p-play-mode__label {
    margin-right: max(30px, 1.5625vw);
    font-size: max(20px, 1.0416666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-game-mode .p-play-mode__label {
    font-size: 4.1666666667vw;
  }
}
@media screen and (min-width: 961px) {
  .p-game-mode__description {
    padding-left: max(180px, 9.375vw);
  }
}
@media screen and (min-width: 769px) {
  .p-game-mode__description {
    margin-top: max(30px, 1.5625vw);
  }
}
@media screen and (max-width: 768px) {
  .p-game-mode__description {
    margin-top: 7.8125vw;
  }
}
.p-game-mode__description-title {
  color: #9e9e9e;
  line-height: 1.8;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .p-game-mode__description-title {
    margin-bottom: max(6px, 0.3125vw);
    font-size: max(16px, 0.8333333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-game-mode__description-title {
    margin-bottom: 0.78125vw;
    font-size: 3.3854166667vw;
  }
}
.p-game-mode__description-text {
  color: #9e9e9e;
  line-height: 1.8;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .p-game-mode__description-text {
    font-size: max(14px, 0.7291666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-game-mode__description-text {
    font-size: 3.125vw;
  }
}

@media screen and (min-width: 769px) {
  .p-notification {
    padding: max(100px, 5.2083333333vw) max(60px, 3.125vw) max(120px, 6.25vw);
  }
}
@media screen and (max-width: 768px) {
  .p-notification {
    padding: 7.8125vw 7.8125vw 15.625vw;
  }
}
@media screen and (min-width: 769px) {
  .p-notification__container {
    max-width: max(760px, 39.5833333333vw);
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 960px) {
  .p-notification__container {
    max-width: 580px;
  }
}
@media screen and (min-width: 769px) {
  .p-notification__header {
    margin-bottom: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-notification__header {
    padding-bottom: 10.4166666667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-notification__error {
    margin-top: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-notification__error {
    margin-top: 10.4166666667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-notification__announce {
    margin-top: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-notification__announce {
    margin-top: 10.4166666667vw;
  }
}

.p-notification-setting {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .p-notification-setting {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
}
.p-notification-setting__label {
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .p-notification-setting__label {
    margin-right: max(40px, 2.0833333333vw);
    font-size: max(20px, 1.0416666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-notification-setting__label {
    font-size: 4.1666666667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-delete-account {
    padding: max(100px, 5.2083333333vw) max(60px, 3.125vw) max(120px, 6.25vw);
  }
}
@media screen and (max-width: 768px) {
  .p-delete-account {
    padding: 7.8125vw 7.8125vw 15.625vw;
  }
}
@media screen and (min-width: 769px) {
  .p-delete-account__container {
    max-width: max(760px, 39.5833333333vw);
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 960px) {
  .p-delete-account__container {
    max-width: 580px;
  }
}
@media screen and (min-width: 769px) {
  .p-delete-account__header {
    margin-bottom: max(30px, 1.5625vw);
  }
}
@media screen and (max-width: 768px) {
  .p-delete-account__header {
    margin-bottom: 4.1666666667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-delete-account__guide {
    margin-bottom: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-delete-account__guide {
    margin-bottom: 7.8125vw;
  }
}
@media screen and (min-width: 769px) {
  .p-delete-account__error {
    margin-top: max(40px, 2.0833333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-delete-account__error {
    margin-top: 7.8125vw;
  }
}
@media screen and (min-width: 769px) {
  .p-delete-account__error + .p-delete-account__action {
    margin-top: max(50px, 2.6041666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-delete-account__error + .p-delete-account__action {
    margin-top: 10.4166666667vw;
  }
}
@media screen and (min-width: 961px) {
  .p-delete-account__action {
    padding-left: max(180px, 9.375vw);
  }
}
@media screen and (min-width: 769px) {
  .p-delete-account__action {
    margin-top: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-delete-account__action {
    margin-top: 13.0208333333vw;
  }
}
@media screen and (max-width: 960px) {
  .p-delete-account__action .c-button {
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) {
  .p-delete-account__announce {
    margin-top: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-delete-account__announce {
    margin-top: 10.4166666667vw;
  }
}
.p-delete-account__announce .c-form__announce-text + .c-form__announce-text {
  margin-top: 1em;
}

@media screen and (min-width: 769px) {
  .p-delete-account-complete {
    padding: max(100px, 5.2083333333vw) max(60px, 3.125vw) max(200px, 10.4166666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-delete-account-complete {
    padding: 15.625vw 3.90625vw 26.0416666667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-delete-account-complete__header {
    margin-bottom: max(54px, 2.8125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-delete-account-complete__header {
    margin-bottom: 10.4166666667vw;
  }
}
.p-delete-account-complete__logo {
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .p-delete-account-complete__logo {
    width: max(320px, 16.6666666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-delete-account-complete__logo {
    width: 57.2916666667vw;
  }
}
.p-delete-account-complete__title {
  letter-spacing: 0.04em;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .p-delete-account-complete__title {
    margin-bottom: max(40px, 2.0833333333vw);
    font-size: max(32px, 1.6666666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-delete-account-complete__title {
    margin-bottom: 5.2083333333vw;
    font-size: 4.6875vw;
  }
}
.p-delete-account-complete__text {
  line-height: 1.8;
  letter-spacing: 0.04em;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .p-delete-account-complete__text {
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (max-width: 768px) {
  .p-delete-account-complete__text {
    font-size: 3.125vw;
  }
}
@media screen and (min-width: 769px) {
  .p-delete-account-complete__guide {
    margin-bottom: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-delete-account-complete__guide {
    margin-bottom: 10.4166666667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-manual__body {
    padding: max(100px, 5.2083333333vw) max(60px, 3.125vw) max(140px, 7.2916666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-manual__body {
    padding: 7.8125vw 3.90625vw 20.8333333333vw;
  }
}

@media screen and (min-width: 769px) {
  .p-manual-article {
    max-width: max(960px, 50vw);
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) {
  .p-manual-article__header {
    margin-bottom: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-manual-article__header {
    margin-bottom: 7.8125vw;
  }
}
.p-manual-article__title {
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .p-manual-article__title {
    font-size: max(30px, 1.5625vw);
  }
}
@media screen and (max-width: 768px) {
  .p-manual-article__title {
    font-size: 5.2083333333vw;
  }
}
.p-manual-article__content h3 {
  position: relative;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.04em;
  word-break: break-word;
}
@media screen and (min-width: 769px) {
  .p-manual-article__content h3 {
    margin: max(88px, 4.5833333333vw) 0 max(30px, 1.5625vw);
    padding-left: max(22px, 1.1458333333vw);
    font-size: max(26px, 1.3541666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-manual-article__content h3 {
    margin: 13.0208333333vw 0 7.8125vw;
    padding-left: 5.2083333333vw;
    font-size: 4.6875vw;
  }
}
.p-manual-article__content h3::before {
  position: absolute;
  left: 0;
  background-color: #ffffff;
  content: "";
}
@media screen and (min-width: 769px) {
  .p-manual-article__content h3::before {
    top: max(13px, 0.6770833333vw);
    width: max(10px, 0.5208333333vw);
    height: max(10px, 0.5208333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-manual-article__content h3::before {
    top: 2.0833333333vw;
    width: 2.6041666667vw;
    height: 2.6041666667vw;
  }
}
.p-manual-article__content h4 {
  position: relative;
  font-weight: 700;
  letter-spacing: 0.04em;
  word-break: break-word;
}
@media screen and (min-width: 769px) {
  .p-manual-article__content h4 {
    margin: max(60px, 3.125vw) 0 max(30px, 1.5625vw);
    padding-bottom: max(17px, 0.8854166667vw);
    font-size: max(20px, 1.0416666667vw);
    line-height: 1.4;
  }
}
@media screen and (max-width: 768px) {
  .p-manual-article__content h4 {
    margin: 7.8125vw 0 3.90625vw;
    padding-bottom: 3.3854166667vw;
    font-size: 3.90625vw;
    line-height: 1.8;
  }
}
.p-manual-article__content h4::before, .p-manual-article__content h4::after {
  position: absolute;
  bottom: 0;
  left: 0;
  content: "";
}
@media screen and (min-width: 769px) {
  .p-manual-article__content h4::before, .p-manual-article__content h4::after {
    height: max(1px, 0.0520833333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-manual-article__content h4::before, .p-manual-article__content h4::after {
    height: 0.2604166667vw;
  }
}
.p-manual-article__content h4::before {
  right: 0;
  background-color: #4f4f4f;
}
.p-manual-article__content h4::after {
  background-color: #ffffff;
}
@media screen and (min-width: 769px) {
  .p-manual-article__content h4::after {
    width: max(80px, 4.1666666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-manual-article__content h4::after {
    width: 13.0208333333vw;
  }
}
.p-manual-article__content p {
  line-height: 1.8;
  letter-spacing: 0.04em;
  word-break: break-word;
}
@media screen and (min-width: 769px) {
  .p-manual-article__content p {
    margin-bottom: max(16px, 0.8333333333vw);
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (max-width: 768px) {
  .p-manual-article__content p {
    margin-bottom: 3.125vw;
    font-size: 3.3854166667vw;
  }
}
.p-manual-article__content p img {
  max-width: 100%;
  width: auto;
  height: auto;
}
@media screen and (min-width: 769px) {
  .p-manual-article__content p img {
    margin: max(32px, 1.6666666667vw) 0;
  }
}
@media screen and (max-width: 768px) {
  .p-manual-article__content p img {
    margin: 4.1666666667vw 0;
  }
}
@media screen and (min-width: 769px) {
  .p-manual-article__content ul, .p-manual-article__content ol {
    margin-bottom: max(16px, 0.8333333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-manual-article__content ul, .p-manual-article__content ol {
    margin-bottom: 3.125vw;
  }
}
.p-manual-article__content ul li, .p-manual-article__content ol li {
  line-height: 1.8;
  letter-spacing: 0.04em;
  word-break: break-word;
}
@media screen and (min-width: 769px) {
  .p-manual-article__content ul li, .p-manual-article__content ol li {
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (max-width: 768px) {
  .p-manual-article__content ul li, .p-manual-article__content ol li {
    font-size: 3.3854166667vw;
  }
}
.p-manual-article__content ul li {
  position: relative;
  padding-left: 1em;
}
.p-manual-article__content ul li::before {
  position: absolute;
  left: 0;
  content: "・";
}
.p-manual-article__content ul.attention li::before {
  content: "※";
}
.p-manual-article__content ol {
  counter-reset: item;
}
.p-manual-article__content ol li {
  position: relative;
  padding-left: 1.5em;
}
.p-manual-article__content ol li::before {
  position: absolute;
  left: 0;
  counter-increment: item;
  content: counter(item) ".";
}
.p-manual-article__content a:not(:has(img)) {
  color: #21C8B4;
  font-weight: 700;
}
@media (any-hover: hover) {
  .p-manual-article__content a:not(:has(img)) {
    opacity: 1;
    -webkit-transition: opacity 0.35s ease;
    transition: opacity 0.35s ease;
    will-change: opacity;
  }
  .p-manual-article__content a:not(:has(img)):hover {
    opacity: 0.7;
  }
}
.p-manual-article__content a:not(:has(img)).is-arrow-link {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M8.08901%2016L6.59251%2014.4862L12.3515%208.66063L0.00700019%208.66115L0%207.34106L12.324%207.33363L6.58402%201.52722L8.09381%200L16%207.99763L8.08901%2016Z%22%20fill%3D%22%2321C8B4%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: center right;
}
@media screen and (min-width: 769px) {
  .p-manual-article__content a:not(:has(img)).is-arrow-link {
    padding-right: max(32px, 1.6666666667vw);
    background-size: max(16px, 0.8333333333vw) max(16px, 0.8333333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-manual-article__content a:not(:has(img)).is-arrow-link {
    padding-right: 5.2083333333vw;
    background-size: 3.125vw 3.125vw;
  }
}
.p-manual-article__content .youtube-block {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
}
@media screen and (min-width: 769px) {
  .p-manual-article__content .youtube-block {
    margin: max(32px, 1.6666666667vw) 0;
  }
}
@media screen and (max-width: 768px) {
  .p-manual-article__content .youtube-block {
    margin: 4.1666666667vw 0;
  }
}
.p-manual-article__content .youtube-block iframe {
  width: 100%;
  height: 100%;
}
.p-manual-article__content .is-small-text {
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .p-manual-article__content .is-small-text {
    font-size: max(14px, 0.7291666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-manual-article__content .is-small-text {
    font-size: 3.125vw;
  }
}
.p-manual-article__content strong {
  font-weight: 700;
}
.p-manual-article__content em {
  font-style: italic;
}
@media screen and (min-width: 769px) {
  .p-manual-article__content .u-mb-lg {
    margin-bottom: max(32px, 1.6666666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-manual-article__content .u-mb-lg {
    margin-bottom: 6.25vw;
  }
}
.p-manual-article__content .u-mt-0 {
  margin-top: 0;
}
.p-manual-article__content .u-mb-0 {
  margin-bottom: 0;
}
.p-manual-article__content > *:first-child {
  margin-top: 0;
}
.p-manual-article__content > *:last-child {
  margin-bottom: 0;
}

@media screen and (min-width: 769px) {
  .p-hint__body {
    padding: max(30px, 1.5625vw) max(60px, 3.125vw) max(120px, 6.25vw);
  }
}
@media screen and (max-width: 768px) {
  .p-hint__body {
    padding: 2.6041666667vw 7.8125vw 20.8333333333vw;
  }
}

@media screen and (min-width: 769px) {
  .p-hint-list {
    max-width: max(960px, 50vw);
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 1100px) {
  .p-hint-list {
    max-width: 460px;
  }
}
@media screen and (min-width: 1101px) {
  .p-hint-list__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 max(40px, 2.0833333333vw);
  }
}
.p-hint-list__item {
  position: relative;
}
@media screen and (min-width: 769px) {
  .p-hint-list__item {
    border-bottom: max(1px, 0.0520833333vw) solid #4f4f4f;
  }
}
@media screen and (max-width: 768px) {
  .p-hint-list__item {
    border-bottom: 0.2604166667vw solid #4f4f4f;
  }
}
.p-hint-list__link {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 769px) {
  .p-hint-list__link {
    min-height: max(95px, 4.9479166667vw);
    padding: max(10px, 0.5208333333vw) 0 max(10px, 0.5208333333vw) max(30px, 1.5625vw);
  }
}
@media screen and (max-width: 768px) {
  .p-hint-list__link {
    min-height: 19.53125vw;
  }
}
@media (any-hover: hover) {
  .p-hint-list__link {
    -webkit-transition: color 0.35s;
    transition: color 0.35s;
  }
  .p-hint-list__link:hover {
    color: #21C8B4;
  }
}
.p-hint-list__link.is-disabled {
  opacity: 0.3;
  pointer-events: none;
}
.p-hint-list__text {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .p-hint-list__text {
    font-size: max(20px, 1.0416666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-hint-list__text {
    font-size: 3.90625vw;
  }
}
.p-hint-list__append {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  height: 100%;
}
@media screen and (min-width: 769px) {
  .p-hint-list__append {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    width: max(76px, 3.9583333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-hint-list__append {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    width: 7.5520833333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-hint-list__append .c-svg--arrow {
    width: max(16px, 0.8333333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-hint-list__append .c-svg--arrow {
    width: 3.6458333333vw;
  }
}

@media screen and (min-width: 769px) {
  .p-hint-detail {
    padding: max(100px, 5.2083333333vw) max(60px, 3.125vw) max(120px, 6.25vw);
  }
}
@media screen and (max-width: 768px) {
  .p-hint-detail {
    padding: 7.8125vw 7.8125vw 15.625vw;
  }
}
@media screen and (min-width: 769px) {
  .p-hint-detail__container {
    max-width: max(960px, 50vw);
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) {
  .p-hint-detail__header {
    margin-bottom: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-hint-detail__header {
    margin-bottom: 7.8125vw;
  }
}
.p-hint-detail__title {
  line-height: 1.4;
}
@media screen and (min-width: 769px) {
  .p-hint-article + .p-hint-article {
    margin-top: max(60px, 3.125vw);
  }
}
@media screen and (max-width: 768px) {
  .p-hint-article + .p-hint-article {
    margin-top: 7.8125vw;
  }
}
.p-hint-article__title {
  position: relative;
  font-weight: 700;
  letter-spacing: 0.04em;
  word-break: break-word;
}
@media screen and (min-width: 769px) {
  .p-hint-article__title {
    margin: max(60px, 3.125vw) 0 max(30px, 1.5625vw);
    padding-bottom: max(17px, 0.8854166667vw);
    font-size: max(20px, 1.0416666667vw);
    line-height: 1.4;
  }
}
@media screen and (max-width: 768px) {
  .p-hint-article__title {
    margin: 7.8125vw 0 3.90625vw;
    padding-bottom: 3.3854166667vw;
    font-size: 3.90625vw;
    line-height: 1.8;
  }
}
.p-hint-article__title::before, .p-hint-article__title::after {
  position: absolute;
  bottom: 0;
  left: 0;
  content: "";
}
@media screen and (min-width: 769px) {
  .p-hint-article__title::before, .p-hint-article__title::after {
    height: max(1px, 0.0520833333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-hint-article__title::before, .p-hint-article__title::after {
    height: 0.2604166667vw;
  }
}
.p-hint-article__title::before {
  right: 0;
  background-color: #4f4f4f;
}
.p-hint-article__title::after {
  background-color: #ffffff;
}
@media screen and (min-width: 769px) {
  .p-hint-article__title::after {
    width: max(80px, 4.1666666667vw);
  }
}
@media screen and (max-width: 768px) {
  .p-hint-article__title::after {
    width: 13.0208333333vw;
  }
}
.p-hint-article__text {
  line-height: 1.8;
  letter-spacing: 0.04em;
  word-break: break-word;
}
@media screen and (min-width: 769px) {
  .p-hint-article__text {
    margin-bottom: max(30px, 1.5625vw);
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (max-width: 768px) {
  .p-hint-article__text {
    margin-bottom: 3.90625vw;
    font-size: 3.3854166667vw;
  }
}
.p-hint-article > *:first-child {
  margin-top: 0;
}
.p-hint-article > *:last-child {
  margin-bottom: 0;
}

@media screen and (min-width: 769px) and (max-width: 1024px) {
  .p-error__title {
    font-size: max( 62px, calc( 80px - ( (1024px - 100vw) * 0.0705882353 ) ) );
  }
}
@media screen and (min-width: 769px) {
  .p-error__body {
    padding: max(100px, 5.2083333333vw) max(60px, 3.125vw) max(120px, 6.25vw);
  }
}
@media screen and (max-width: 768px) {
  .p-error__body {
    padding: 7.8125vw 7.8125vw 20.8333333333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-error__guide {
    margin-bottom: max(40px, 2.0833333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-error__guide {
    margin-bottom: 10.4166666667vw;
  }
}
.p-error__guide .u-text-primary + .u-text-primary {
  margin-top: 1em;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .p-404__title {
    font-size: max( 62px, calc( 80px - ( (1024px - 100vw) * 0.0705882353 ) ) );
  }
}
@media screen and (min-width: 769px) {
  .p-404__body {
    padding: max(100px, 5.2083333333vw) max(60px, 3.125vw) max(120px, 6.25vw);
  }
}
@media screen and (max-width: 768px) {
  .p-404__body {
    padding: 7.8125vw 7.8125vw 20.8333333333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-404__guide {
    margin-bottom: max(40px, 2.0833333333vw);
  }
}
@media screen and (max-width: 768px) {
  .p-404__guide {
    margin-bottom: 10.4166666667vw;
  }
}
.u-d-ib {
  display: inline-block;
}

@media screen and (min-width: 1025px) {
  .u-d-n--lg-min {
    display: none;
  }
}

@media screen and (min-width: 769px) {
  .u-d-n--md-min {
    display: none;
  }
}

@media screen and (max-width: 1024px) {
  .u-d-n--lg-max {
    display: none;
  }
}

@media screen and (max-width: 768px) {
  .u-d-n--md-max {
    display: none;
  }
}

.u-mx-auto {
  margin-right: auto;
  margin-left: auto;
}

.u-mt-0 {
  margin-top: 0;
}

.u-mb-0 {
  margin-bottom: 0;
}

.u-text-primary {
  line-height: 1.8;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .u-text-primary {
    font-size: max(18px, 0.9375vw);
  }
}
@media screen and (max-width: 768px) {
  .u-text-primary {
    font-size: 3.3854166667vw;
  }
}

.u-text-secondary {
  line-height: 1.8;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 769px) {
  .u-text-secondary {
    font-size: max(16px, 0.8333333333vw);
  }
}
@media screen and (max-width: 768px) {
  .u-text-secondary {
    font-size: 3.125vw;
  }
}

.u-text-red {
  color: #ff0000;
}

.u-text-teal {
  color: #21C8B4;
}

.u-text-green {
  color: #39da60;
}

.u-text-bold {
  font-weight: 700;
}

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

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

.u-text-underline {
  text-decoration: underline;
}
@media screen and (min-width: 769px) {
  .u-text-underline {
    text-decoration-thickness: max(1px, 0.0520833333vw);
    text-underline-offset: max(3px, 0.15625vw);
  }
}
@media screen and (max-width: 768px) {
  .u-text-underline {
    text-decoration-thickness: 0.1302083333vw;
    text-underline-offset: 0.5208333333vw;
  }
}

@media (any-hover: hover) {
  .u-text-link {
    opacity: 1;
    -webkit-transition: opacity 0.35s ease;
    transition: opacity 0.35s ease;
    will-change: opacity;
  }
  .u-text-link:hover {
    opacity: 0.7;
  }
}

.u-text-en {
  font-family: "Rubik", sans-serif;
}