:root {
  --txt-base: #000000;
  --border-base: #999999;
  --primary-blue: #001e60;
  --primary-white: #ffffff;
  --secondary-blue: #4c6c85;
  --secondary-green: #6ea200;
  --secondary-yellow: #dade1a;
}
@font-face {
  font-family: "Inter";
  src: url("/assets/fonts/Inter-VariableFont_opsz,wght.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url("/assets/fonts/Inter-Italic-VariableFont_opsz,wght.woff2")
    format("woff2");
  font-weight: 100 900;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans JP";
  src: url("/assets/fonts/NotoSansJP-VariableFont_wght.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
*,
::before,
::after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
}
html {
  line-height: 1.15;
  text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
body {
  margin: 0;
}
main {
  display: block;
}
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  font-size: inherit;
  font-weight: inherit;
}
ul,
ol {
  padding: 0;
  margin: 0;
  list-style: none;
}
dt {
  font-weight: bold;
}
dd {
  margin-left: 0;
}
hr {
  box-sizing: content-box;
  height: 0;
  margin: 0;
  overflow: visible;
  clear: both;
  color: inherit;
  border: 0;
  border-top: 1px solid;
}
pre {
  font-family: monospace, monospace;
}
address {
  font-style: inherit;
}
a {
  color: inherit;
  text-decoration: none;
  background-color: rgba(0, 0, 0, 0);
}
abbr[title] {
  text-decoration: underline dotted;
}
b,
strong {
  font-weight: bolder;
}
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: inherit;
}
small {
  font-size: 80%;
}
sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
svg,
img,
embed,
object,
iframe {
  vertical-align: bottom;
}
button,
input,
optgroup,
select,
textarea {
  padding: 0;
  margin: 0;
  font: inherit;
  color: inherit;
  text-align: inherit;
  text-transform: inherit;
  vertical-align: middle;
  background: rgba(0, 0, 0, 0);
  border: 0;
  border-radius: 0;
  outline: 0;
  -webkit-appearance: none;
  appearance: none;
}
button,
input {
  overflow: visible;
}
button,
select {
  text-transform: none;
}
button,
[type="button"],
[type="reset"],
[type="submit"] {
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
}
button[disabled],
[type="button"][disabled],
[type="reset"][disabled],
[type="submit"][disabled] {
  cursor: default;
}
:-moz-focusring {
  outline: auto;
}
select:disabled {
  opacity: inherit;
}
option {
  padding: 0;
}
fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
}
legend {
  padding: 0;
}
progress {
  vertical-align: baseline;
}
textarea {
  overflow: auto;
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
[type="search"] {
  outline-offset: -2px;
}
[type="search"]::-webkit-search-decoration {
  appearance: none;
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}
[type="number"] {
  -moz-appearance: textfield;
}
label[for] {
  cursor: pointer;
}
details {
  display: block;
}
summary {
  display: list-item;
}
[contenteditable]:focus {
  outline: auto;
}
table {
  border-spacing: 0;
  border-collapse: collapse;
}
caption {
  text-align: left;
}
td,
th {
  padding: 0;
}
:root {
  --spacing-0: 0;
  --spacing-3: 0.03em;
  --spacing-5: 0.05rem;
  --line-height-15: 1.5;
  --line-height-17: 1.7;
  --leading-trim: calc((1em - 1lh) / 2);
  --radius-9999: 9999px;
  --radius-2: 0.2rem;
  --radius-4: 0.4rem;
  --radius-8: 0.8rem;
  --radius-16: 1.6rem;
}
* {
  min-height: 0vw;
}
html {
  font-size: 2.6667vw;
}
@media screen and (min-width: 769px) {
  html {
    font-size: min(0.6944vw, 10px);
  }
}
body {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.4rem;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  line-height: var(--line-height-17);
  color: var(--txt-base);
  word-break: normal;
  line-break: strict;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
@media screen and (min-width: 769px) {
  body {
    font-size: 1.6rem;
  }
}
.l-page-sub {
  margin-top: 14rem;
}
@media screen and (min-width: 769px) {
  .l-page-sub {
    margin-top: 20rem;
  }
}
main {
  overflow-x: clip;
  background: rgba(255, 255, 255, 0.8);
}
img {
  max-width: 100%;
  height: auto;
}
a.--nolink {
  pointer-events: none;
  cursor: default;
  text-decoration: none;
  opacity: 0.6;
}
a span.icon,
button span.icon {
  display: block;
  width: 4rem;
  height: 4rem;
  border-radius: 9999px;
  position: absolute;
  top: 0;
  bottom: 0;
  margin-block: auto;
  right: 0.4rem;
  z-index: 1;
  transition: background-color 0.1s 0.1s ease;
}
a span.icon::before,
button span.icon::before {
  content: "";
  display: block;
  width: 1.2rem;
  height: auto;
  mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14"><polygon points="7.3606969 .3606969 6.6124317 1.1089621 11.9743098 6.4708401 0 6.4708401 0 7.5291599 11.9743098 7.5291599 6.6124317 12.8910379 7.3606969 13.6393031 14 7 7.3606969 .3606969" /></svg>')
    no-repeat center/contain;
  aspect-ratio: 1/1;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  transition: background-color 0.1s 0.1s ease;
}
a span.icon.--cart::before,
button span.icon.--cart::before {
  width: 1.6rem;
  mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 14"><path d="M14.5942194,8.6990687l1.3690242-5.2291182c.0873845-.3346187.0170751-.6834983-.1908398-.9569994-.2059061-.2714639-.5172762-.4268044-.8537568-.4268044H3.759041l-.2204701-.8311991c-.1928486-.7390134-.8567701-1.2549476-1.615107-1.2549476H.5142629C.2300121,0,0,.2643336,0,.5526048s.2300121.5215366.5142629.5215366h1.4092009c.2772199,0,.5212939.1889552.5936121.4588912l2.3036368,8.6858265c.0543014.2079271.1531112.3915345.2737044.5576979-.4312727.3248781-.7151469.8467331-.7151469,1.4388097,0,.983993.7754121,1.7846333,1.7286064,1.7846333s1.7291086-.8006403,1.7291086-1.7846333c0-.2652885-.0600769-.5150429-.1611466-.74156h3.6865345c-.101007.226517-.1610838.4762715-.1610838.74156,0,.983993.7754121,1.7846333,1.7286064,1.7846333s1.7286064-.8006403,1.7286064-1.7846333c0-.9367542-.7051027-1.698814-1.5949558-1.7706908-.0635296-.0284579-.1329601-.0455199-.2069733-.0455199h-6.4202512c-.2772199,0-.5217961-.1894645-.5936121-.4583818l-.1121184-.4227299h7.8190313c.4931701,0,.9230618-.3381839,1.0445966-.8189756ZM6.1078767,12.9569267c-.3861994,0-.7000806-.3330908-.7000806-.74156s.3138812-.74156.7000806-.74156.7005828.3330908.7005828.74156-.3143834.74156-.7005828.74156ZM13.6299764,12.2153667c0,.4084692-.3143834.74156-.7000806.74156s-.7000806-.3330908-.7000806-.74156.3143834-.74156.7000806-.74156.7000806.3330908.7000806.74156ZM4.036512,3.1320849l10.932356.0714948-1.4192451,5.2713912H5.4538738l-1.4173619-5.342886Z" /></svg>')
    no-repeat center/contain;
  aspect-ratio: 16/14;
}
a span.icon.--tpb,
button span.icon.--tpb {
  background-color: rgba(0, 0, 0, 0);
  border: 1px solid var(--primary-blue);
}
a span.icon.--tpb::before,
button span.icon.--tpb::before {
  background-color: var(--primary-blue);
}
a span.icon.--tpw,
button span.icon.--tpw {
  background-color: rgba(0, 0, 0, 0);
  border: 1px solid var(--primary-white);
}
a span.icon.--tpw::before,
button span.icon.--tpw::before {
  background-color: var(--primary-white);
}
a span.icon.--bgb,
button span.icon.--bgb {
  background-color: var(--primary-blue);
  border: 1px solid var(--primary-blue);
}
a span.icon.--bgb::before,
button span.icon.--bgb::before {
  background-color: var(--primary-white);
}
a span.icon.--bgw,
button span.icon.--bgw {
  background-color: var(--primary-white);
  border: 1px solid var(--primary-white);
}
a span.icon.--bgw::before,
button span.icon.--bgw::before {
  background-color: var(--primary-blue);
}
@media (hover: hover) and (pointer: fine) and (min-width: 1025px) {
  a:hover span.icon.--tpb,
  button:hover span.icon.--tpb {
    background-color: var(--primary-blue);
  }
  a:hover span.icon.--tpb::before,
  button:hover span.icon.--tpb::before {
    background-color: var(--primary-white);
  }
  a:hover span.icon.--tpw,
  button:hover span.icon.--tpw {
    background-color: var(--primary-white);
  }
  a:hover span.icon.--tpw::before,
  button:hover span.icon.--tpw::before {
    background-color: var(--primary-blue);
  }
  a:hover span.icon.--bgb,
  button:hover span.icon.--bgb {
    background-color: var(--primary-white);
    border: 1px solid var(--primary-white);
  }
  a:hover span.icon.--bgb::before,
  button:hover span.icon.--bgb::before {
    background-color: var(--primary-blue);
  }
  a:hover span.icon.--bgw,
  button:hover span.icon.--bgw {
    background-color: var(--primary-blue);
    border: 1px solid var(--primary-blue);
  }
  a:hover span.icon.--bgw::before,
  button:hover span.icon.--bgw::before {
    background-color: var(--primary-white);
  }
}
h2 span,
h3 span,
h4 span,
h5 span,
h6 span,
figcaption span,
p span {
  display: block;
  margin-block: var(--leading-trim);
}
@media screen and (min-width: 769px) {
  .-sp {
    display: none;
  }
}
@media screen and (min-width: 1025px) {
  .sp-tb {
    display: none;
  }
}
.-tb- {
  display: none;
}
@media screen and (min-width: 769px) {
  .-tb- {
    display: block;
  }
}
@media screen and (min-width: 1025px) {
  .-tb- {
    display: none;
  }
}
.tb-pc {
  display: none;
}
@media screen and (min-width: 769px) {
  .tb-pc {
    display: block;
  }
}
.pc- {
  display: none;
}
@media screen and (min-width: 1025px) {
  .pc- {
    display: block;
  }
}
@keyframes fadeToTop {
  0% {
    opacity: 0;
    transform: translate3d(0, 15px, 0);
  }
  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeToRight {
  0% {
    opacity: 0;
    transform: translate3d(0, 15px, 0);
  }
  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
.to-top {
  opacity: 0;
}
.is-top {
  animation: fadeToTop 1s 0.3s cubic-bezier(0.22, 0.6, 0.45, 0.98) forwards;
}
.to-right {
  opacity: 0;
}
.is-right {
  animation: fadeToRight 1s 0.3s cubic-bezier(0.22, 0.6, 0.45, 0.98) forwards;
}
.delay06 {
  animation-delay: 0.6s;
}
.delay07 {
  animation-delay: 0.7s;
}
.delay08 {
  animation-delay: 0.8s;
}
.delay09 {
  animation-delay: 0.9s;
}
.delay10 {
  animation-delay: 1s;
}
.delay11 {
  animation-delay: 1.1s;
}
.delay12 {
  animation-delay: 1.2s;
}
.delay13 {
  animation-delay: 1.3s;
}
.delay14 {
  animation-delay: 1.4s;
}
.delay15 {
  animation-delay: 1.5s;
}
.delay16 {
  animation-delay: 1.6s;
}
.delay17 {
  animation-delay: 1.7s;
}
.delay18 {
  animation-delay: 1.8s;
}
.delay19 {
  animation-delay: 1.9s;
}
.delay20 {
  animation-delay: 2s;
}
.delay21 {
  animation-delay: 2.1s;
}
.delay22 {
  animation-delay: 2.2s;
}
.delay23 {
  animation-delay: 2.3s;
}
.delay24 {
  animation-delay: 2.4s;
}
.delay25 {
  animation-delay: 2.5s;
}
.inview {
  position: relative;
  z-index: 1;
  opacity: 0;
  transition:
    opacity 0.6s ease-out 0.1s,
    transform 1s cubic-bezier(0.075, 0.82, 0.165, 1) 0.1s;
}
.inview.fade-up {
  transform: translate3d(0, 5rem, 0);
}
.inview.fade-up.js-animate {
  transform: translate3d(0, 0, 0);
}
.inview.fade-down {
  transform: translate3d(0, -5rem, 0);
}
.inview.fade-down.js-animate {
  transform: translate3d(0, 0, 0);
}
.inview.fade-left {
  transform: translate3d(2.5rem, 0, 0);
}
.inview.fade-left.js-animate {
  transform: translate3d(0, 0, 0);
}
.inview.fade-right {
  transform: translate3d(-2.5rem, 0, 0);
}
.inview.fade-right.js-animate {
  transform: translate3d(0, 0, 0);
}
.inview.js-animate {
  opacity: 1;
}
.inview.js-animate.section-ttl .en > span::after {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
.inview.js-animate.section-ttl .en > span > span {
  opacity: 0;
  transform: translate3d(0, -130%, 0);
}
.inview.js-animate .js-word-separate > span {
  opacity: 1;
}
.inview.js-animate .image-inner {
  transform: translate3d(0, 0, 0);
}
.inview .js-word-separate > span {
  opacity: 0;
  transition: opacity 2.5s;
}
.inview .js-word-separate > span:nth-of-type(1) {
  transition-delay: 0.6s;
}
.inview .js-word-separate > span:nth-of-type(2) {
  transition-delay: 0.675s;
}
.inview .js-word-separate > span:nth-of-type(3) {
  transition-delay: 0.75s;
}
.inview .js-word-separate > span:nth-of-type(4) {
  transition-delay: 0.825s;
}
.inview .js-word-separate > span:nth-of-type(5) {
  transition-delay: 0.9s;
}
.inview .js-word-separate > span:nth-of-type(6) {
  transition-delay: 0.975s;
}
.inview .js-word-separate > span:nth-of-type(7) {
  transition-delay: 1.05s;
}
.inview .js-word-separate > span:nth-of-type(8) {
  transition-delay: 1.125s;
}
.inview .js-word-separate > span:nth-of-type(9) {
  transition-delay: 1.2s;
}
.inview .js-word-separate > span:nth-of-type(10) {
  transition-delay: 1.275s;
}
.inview .js-word-separate > span:nth-of-type(11) {
  transition-delay: 1.35s;
}
.inview .js-word-separate > span:nth-of-type(12) {
  transition-delay: 1.425s;
}
.inview .js-word-separate > span:nth-of-type(13) {
  transition-delay: 1.5s;
}
.inview .js-word-separate > span:nth-of-type(14) {
  transition-delay: 1.575s;
}
.inview .js-word-separate > span:nth-of-type(15) {
  transition-delay: 1.65s;
}
.inview .js-word-separate > span:nth-of-type(16) {
  transition-delay: 1.725s;
}
.inview .js-word-separate > span:nth-of-type(17) {
  transition-delay: 1.8s;
}
.inview .js-word-separate > span:nth-of-type(18) {
  transition-delay: 1.875s;
}
.inview .js-word-separate > span:nth-of-type(19) {
  transition-delay: 1.95s;
}
.inview .js-word-separate > span:nth-of-type(20) {
  transition-delay: 2.025s;
}
.inview .js-word-separate > span:nth-of-type(21) {
  transition-delay: 2.1s;
}
.inview .js-word-separate > span:nth-of-type(22) {
  transition-delay: 2.175s;
}
.inview .js-word-separate > span:nth-of-type(23) {
  transition-delay: 2.25s;
}
.inview .js-word-separate > span:nth-of-type(24) {
  transition-delay: 2.325s;
}
.inview .js-word-separate > span:nth-of-type(25) {
  transition-delay: 2.4s;
}
.inview .js-word-separate > span:nth-of-type(26) {
  transition-delay: 2.475s;
}
.inview .js-word-separate > span:nth-of-type(27) {
  transition-delay: 2.55s;
}
.inview .js-word-separate > span:nth-of-type(28) {
  transition-delay: 2.625s;
}
.inview .js-word-separate > span:nth-of-type(29) {
  transition-delay: 2.7s;
}
.inview .js-word-separate > span:nth-of-type(30) {
  transition-delay: 2.775s;
}
.inview .js-word-separate > span:nth-of-type(31) {
  transition-delay: 2.85s;
}
.inview .js-word-separate > span:nth-of-type(32) {
  transition-delay: 2.925s;
}
.inview .js-word-separate > span:nth-of-type(33) {
  transition-delay: 3s;
}
.inview .js-word-separate > span:nth-of-type(34) {
  transition-delay: 3.075s;
}
.inview .js-word-separate > span:nth-of-type(35) {
  transition-delay: 3.15s;
}
.inview .js-word-separate > span:nth-of-type(36) {
  transition-delay: 3.225s;
}
.inview .js-word-separate > span:nth-of-type(37) {
  transition-delay: 3.3s;
}
.inview .js-word-separate > span:nth-of-type(38) {
  transition-delay: 3.375s;
}
.inview .js-word-separate > span:nth-of-type(39) {
  transition-delay: 3.45s;
}
.inview .js-word-separate > span:nth-of-type(40) {
  transition-delay: 3.525s;
}
.inview .js-word-separate > span:nth-of-type(41) {
  transition-delay: 3.6s;
}
.inview .js-word-separate > span:nth-of-type(42) {
  transition-delay: 3.675s;
}
.inview .js-word-separate > span:nth-of-type(43) {
  transition-delay: 3.75s;
}
.inview .js-word-separate > span:nth-of-type(44) {
  transition-delay: 3.825s;
}
.inview .js-word-separate > span:nth-of-type(45) {
  transition-delay: 3.9s;
}
.inview .js-word-separate > span:nth-of-type(46) {
  transition-delay: 3.975s;
}
.inview .js-word-separate > span:nth-of-type(47) {
  transition-delay: 4.05s;
}
.inview .js-word-separate > span:nth-of-type(48) {
  transition-delay: 4.125s;
}
.inview .js-word-separate > span:nth-of-type(49) {
  transition-delay: 4.2s;
}
.inview .js-word-separate > span:nth-of-type(50) {
  transition-delay: 4.275s;
}
.inview .js-word-separate > span:nth-of-type(51) {
  transition-delay: 4.35s;
}
.inview .js-word-separate > span:nth-of-type(52) {
  transition-delay: 4.425s;
}
.inview .js-word-separate > span:nth-of-type(53) {
  transition-delay: 4.5s;
}
.inview .js-word-separate > span:nth-of-type(54) {
  transition-delay: 4.575s;
}
.inview .js-word-separate > span:nth-of-type(55) {
  transition-delay: 4.65s;
}
.inview .js-word-separate > span:nth-of-type(56) {
  transition-delay: 4.725s;
}
@keyframes anim-diagonal {
  0% {
    top: 0;
    left: 0;
    opacity: 1;
  }
  25% {
    top: -0.3em;
    left: 0.3em;
    opacity: 0;
  }
  50% {
    top: 0.3em;
    left: -0.3em;
    opacity: 0;
  }
  100% {
    top: 0;
    left: 0;
    opacity: 1;
  }
}
@keyframes anim-vertical-tb {
  0% {
    top: 0;
    left: 0;
    opacity: 1;
  }
  25% {
    top: 0.3em;
    left: 0;
    opacity: 0;
  }
  50% {
    top: -0.3em;
    left: 0;
    opacity: 0;
  }
  100% {
    top: 0;
    left: 0;
    opacity: 1;
  }
}
@keyframes anim-vertical-bt {
  0% {
    top: 0;
    left: 0;
    opacity: 1;
  }
  25% {
    top: -0.3em;
    left: 0;
    opacity: 0;
  }
  50% {
    top: 0.3em;
    left: 0;
    opacity: 0;
  }
  100% {
    top: 0;
    left: 0;
    opacity: 1;
  }
}
@keyframes anim-horizontal-rl {
  0% {
    top: 0;
    left: 0;
    opacity: 1;
  }
  25% {
    top: 0;
    left: 0.3rem;
    opacity: 0;
  }
  50% {
    top: 0;
    left: -0.3em;
    opacity: 0;
  }
  100% {
    top: 0;
    left: 0;
    opacity: 1;
  }
}
@keyframes anim-horizontal-lr {
  0% {
    top: 0;
    left: 0;
    opacity: 1;
  }
  25% {
    top: 0;
    left: -0.3rem;
    opacity: 0;
  }
  50% {
    top: 0;
    left: 0.3em;
    opacity: 0;
  }
  100% {
    top: 0;
    left: 0;
    opacity: 1;
  }
}
.gnav-open body {
  overflow: hidden;
}
@media screen and (min-width: 1025px) {
  .gnav-open .l-header__logo {
    width: 32rem;
    position: absolute;
    top: 10rem;
    left: 4rem;
  }
}
.gnav-open .l-header__logo-link.--color {
  display: block;
}
.gnav-open .l-header__logo-link.--white {
  display: none;
}
.gnav-open .l-header__gnav {
  pointer-events: auto;
  opacity: 1;
}
.gnav-open .l-header__gnavInner {
  visibility: visible;
  opacity: 1;
}
.gnav-open .l-header__hamburger span {
  background-color: var(--primary-white) !important;
  transition: none !important;
}
.gnav-open .l-header__hamburger span.line-top {
  animation: lineTopOpen 0.4s ease-out forwards;
}
.gnav-open .l-header__hamburger span.line-mdl {
  animation: lineMdlOpen 0.4s ease-out forwards;
}
.gnav-open .l-header__hamburger span.line-btm {
  animation: lineBtmOpen 0.4s ease-out forwards;
}
@keyframes lineTopOpen {
  0% {
    top: 0.7rem;
    bottom: auto;
    width: 100%;
    margin-top: 0;
    margin-bottom: 0;
    transform: rotate(0deg);
  }
  50% {
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    width: 100%;
    transform: rotate(0deg);
  }
  60% {
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    width: 100%;
    transform: rotate(0deg);
  }
  100% {
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    width: 100%;
    transform: rotate(30deg);
  }
}
@keyframes lineMdlOpen {
  0% {
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    width: calc(100% - 0.9rem);
    opacity: 1;
  }
  50% {
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    width: 100%;
    opacity: 1;
  }
  60% {
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    width: 100%;
    opacity: 0;
  }
  100% {
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    width: 100%;
    opacity: 0;
  }
}
@keyframes lineBtmOpen {
  0% {
    top: auto;
    bottom: 0.7rem;
    width: calc(100% - 1.8rem);
    margin-top: 0;
    margin-bottom: 0;
    transform: rotate(0deg);
  }
  50% {
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    width: 100%;
    transform: rotate(0deg);
  }
  60% {
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    width: 100%;
    transform: rotate(0deg);
  }
  100% {
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    width: 100%;
    transform: rotate(-30deg);
  }
}
@keyframes lineTopClose {
  0% {
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    width: 100%;
    transform: rotate(30deg);
  }
  40% {
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    width: 100%;
    transform: rotate(0deg);
  }
  50% {
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    width: 100%;
    transform: rotate(0deg);
  }
  100% {
    top: 0.7rem;
    bottom: auto;
    margin-top: 0;
    margin-bottom: 0;
    width: 100%;
    transform: rotate(0deg);
  }
}
@keyframes lineMdlClose {
  0% {
    opacity: 0;
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    width: 100%;
  }
  40% {
    opacity: 0;
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    width: 100%;
  }
  50% {
    opacity: 1;
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    width: 100%;
  }
  100% {
    opacity: 1;
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    width: calc(100% - 0.9rem);
  }
}
@keyframes lineBtmClose {
  0% {
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    width: 100%;
    transform: rotate(-30deg);
  }
  40% {
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    width: 100%;
    transform: rotate(0deg);
  }
  50% {
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    width: 100%;
    transform: rotate(0deg);
  }
  100% {
    top: auto;
    bottom: 0.7rem;
    margin-top: 0;
    margin-bottom: 0;
    width: calc(100% - 1.8rem);
    transform: rotate(0deg);
  }
}
.l-header {
  position: fixed;
  width: 100vw;
  top: 0;
  left: 0;
  right: 0;
  margin-inline: auto;
  padding: 1.5rem 0;
  z-index: 100;
  transform: translateY(0);
  transition: all 0.3s ease-in-out;
}
@media screen and (min-width: 769px) {
  .l-header {
    padding: 2.5rem 0;
  }
}
.l-header::after {
  content: "";
  display: block;
  width: 96.6666666667vw;
  height: 100%;
  background-color: var(--bg-base);
  border-radius: 0 0 0.8rem 0.8rem;
  box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.05);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin-inline: auto;
  transition: opacity 0.3s ease-in-out;
  opacity: 0;
}
.l-header.is-scroll {
  background-color: var(--primary-blue);
}
.l-header.is-scroll::after {
  opacity: 1;
}
.l-header.is-hidden {
  transform: translateY(-100%);
}
.l-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.l-header__logo {
  position: relative;
  z-index: 111;
  width: 16.5rem;
  max-height: 4rem;
}
@media screen and (min-width: 769px) {
  .l-header__logo {
    width: 34rem;
  }
}
@media screen and (min-width: 769px) {
  .l-header__logo a {
    transition: all 0.4s cubic-bezier(0.43, 0.05, 0.2, 1);
  }
}
.l-header__logo-link.--color {
  display: none;
}
.l-header__logo-link.--white {
  display: block;
}
.l-header__logo-link img {
  max-height: 4rem;
}
.l-header__navwrap {
  display: flex;
  align-items: center;
  gap: 0 2rem;
}
.l-header__nav {
  display: none;
}
@media screen and (min-width: 1025px) {
  .l-header__nav {
    display: flex;
    align-items: center;
    gap: 0 2rem;
  }
}
.l-header__nav-list {
  display: flex;
  align-items: center;
}
.l-header__nav-item {
  position: relative;
}
.l-header__nav-item a {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 6rem;
  padding: 0 1.5rem;
}
.l-header__nav-item a p {
  font-family: "Inter", sans-serif;
  font-size: 1.5rem;
  text-align: center;
  color: rgba(0, 0, 0, 0);
  background: linear-gradient(
      to right,
      var(--secondary-yellow) 50%,
      var(--primary-white) 50%
    )
    100%;
  background-clip: text;
  background-size: 200% 100%;
  transition: background-position 0.3s ease;
}
.l-header__subnav-list {
  position: absolute;
  top: 100%;
  left: 0;
  width: fit-content;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-1rem);
  transition:
    opacity 0.3s ease,
    visibility 0.3s ease,
    transform 0.3s ease;
  z-index: 10;
  background-color: var(--primary-blue);
  padding: 1rem 0;
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
}
.l-header__subnav-list::before {
  content: "";
  display: block;
  width: 2rem;
  height: 1px;
  background-color: var(--primary-white);
  position: absolute;
  top: 0;
  left: 1.2rem;
}
.l-header__subnav-item {
  width: 100%;
}
.l-header__subnav-item a {
  display: block;
  padding: 0.2rem 1.2rem;
  width: 100%;
  height: auto;
}
.l-header__subnav-item a p {
  font-family: "Inter", sans-serif;
  font-size: 1.4rem;
  color: var(--primary-white);
  text-align: left;
  white-space: nowrap;
  background: none;
  background-clip: unset;
  transition: color 0.3s ease;
}
@media (hover: hover) and (pointer: fine) and (min-width: 1025px) {
  .l-header__nav-item a:hover p {
    background-position: 0 100%;
  }
  .l-header__nav-item:hover .l-header__subnav-list {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }
  .l-header__subnav-item a:hover p {
    color: var(--secondary-yellow);
  }
}
.l-header__navwrap .c-btn {
  position: relative;
  width: 13.7rem;
  min-width: unset;
  height: 4rem;
  min-height: unset;
  padding: 1.2rem 1.2rem 1.2rem 1.2rem;
}
@media screen and (max-width: 1024px) {
  .l-header__navwrap .c-btn {
    display: none;
  }
}
.l-header__hamburger {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 1.6rem;
  z-index: 111;
  margin-block: auto;
  width: 3.6rem;
  height: 3.6rem;
  cursor: pointer;
  transition: background-color 0.3s ease;
  backface-visibility: hidden;
}
@media screen and (min-width: 1025px) {
  .l-header__hamburger {
    display: none;
  }
}
.l-header__hamburger span {
  position: absolute;
  right: 0;
  left: auto;
  z-index: 10;
  height: 1px;
  background-color: var(--primary-white);
  transition: background-color 0.3s ease;
}
.l-header__hamburger span.line-top {
  width: 100%;
  top: 0.7rem;
}
.l-header__hamburger span.line-mdl {
  width: calc(100% - 0.9rem);
  top: 0;
  bottom: 0;
  margin-block: auto;
}
.l-header__hamburger span.line-btm {
  width: calc(100% - 1.8rem);
  bottom: 0.7rem;
}
html:not(.gnav-open) .l-header__hamburger span {
  transition: none !important;
}
html:not(.gnav-open) .l-header__hamburger span.line-top {
  animation: lineTopClose 0.4s ease-out forwards;
}
html:not(.gnav-open) .l-header__hamburger span.line-mdl {
  animation: lineMdlClose 0.4s ease-out forwards;
}
html:not(.gnav-open) .l-header__hamburger span.line-btm {
  animation: lineBtmClose 0.4s ease-out forwards;
}
.l-header__gnav {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 110;
  width: 100vw;
  height: 100vh;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.3s;
  background-color: var(--bg-section-light);
  border-radius: 0 0 0.8rem 0.8rem;
}
@media screen and (min-width: 1025px) {
  .l-header__gnav {
    display: none;
  }
}
.l-header__gnavInner {
  background-color: var(--primary-blue);
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 5;
  height: 100%;
  overflow: hidden;
  overflow-y: auto;
  visibility: hidden;
  opacity: 0;
  padding-top: 7rem;
}
.l-header-gnav-top .container {
  width: min(100%, 123rem);
  padding: 0 2rem;
}
.l-header-gnav-top__item {
  position: relative;
  border-bottom: 1px solid var(--primary-white);
}
.l-header-gnav-top__item .open-btn {
  display: block;
  aspect-ratio: 1/1;
  width: 5rem;
  height: auto;
  position: absolute;
  right: 0;
  top: 0.7rem;
}
.l-header-gnav-top__item .open-btn::before {
  content: "";
  display: block;
  width: 0.7rem;
  mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 7 13"><polygon points=".7090095 12.7734375 0 12.0664062 5.581981 6.5 0 .9335938 .7090095 .2265625 7 6.5 .7090095 12.7734375" /></svg>')
    no-repeat center/contain;
  aspect-ratio: 7/13;
  background-color: var(--primary-white);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  transform: rotate(90deg);
  transition: transform 0.3s ease;
}
.l-header-gnav-top__item.is-open .open-btn::before {
  transform: rotate(-90deg);
}
.l-header-gnav-top__item .arrow {
  display: block;
  aspect-ratio: 1/1;
  width: 5rem;
  height: auto;
  position: absolute;
  right: 0;
  top: 0.7rem;
}
.l-header-gnav-top__item .arrow::before {
  content: "";
  display: block;
  width: 0.7rem;
  mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 7 13"><polygon points=".7090095 12.7734375 0 12.0664062 5.581981 6.5 0 .9335938 .7090095 .2265625 7 6.5 .7090095 12.7734375" /></svg>')
    no-repeat center/contain;
  aspect-ratio: 7/13;
  background-color: var(--primary-white);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.l-header-gnav-top__link {
  display: block;
  width: calc(100% - 5rem);
  font-family: "Inter", sans-serif;
  font-size: 2.4rem;
  line-height: 1;
  white-space: nowrap;
  color: var(--primary-white);
  padding: 2rem 0;
}
.l-header-gnav-top__sublist {
  height: 0;
  overflow: hidden;
  transition: height 0.3s ease;
  padding-left: 3rem;
}
.l-header-gnav-top__item.is-open .l-header-gnav-top__sublist {
  height: auto;
  padding-bottom: 3rem;
}
.l-header-gnav-top__sublink {
  display: block;
  position: relative;
  font-family: "Inter", sans-serif;
  font-size: 1.4rem;
  color: var(--primary-white);
  padding: 0.5rem 0 0.5rem 1.5rem;
  white-space: nowrap;
}
.l-header-gnav-top__sublink::before {
  content: "-";
  display: block;
  line-height: 1;
  position: absolute;
  top: 1rem;
  left: 0;
}
.l-header-gnav-top__btns {
  display: grid;
  gap: 3.5rem 0;
  padding: 3.2rem 0 7rem;
}
.l-header-gnav-top__btns .c-btn {
  width: 13.7rem;
  min-width: unset;
  height: 4rem;
  min-height: unset;
  padding: 1.2rem 2.4rem 1.2rem 2.4rem;
}
.l-header-gnav-top__btns-sns {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 0 2.8rem;
  padding-left: 1rem;
}
.l-header-gnav-top__btns-sns .sns-ttl {
  font-family: "Inter", sans-serif;
  font-size: 1.5rem;
  color: var(--primary-white);
}
.l-header-gnav-top__btns-sns .sns-link {
  display: block;
  aspect-ratio: 1/1;
  width: 4.2rem;
  height: auto;
  background-color: var(--primary-white);
}
.l-header-gnav-top__btns-sns .sns-link.--xxx {
  mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 1227"><path d="M714.1630249,519.2839966L1160.8900146,0h-105.8599854l-387.8930054,450.8869934L357.3280029,0H0l468.4920044,681.8209839L0,1226.3699951h105.8659973l409.6250305-476.1519775,327.1809692,476.1519775h357.3280029l-485.8629761-707.0859985h.026001ZM569.164978,687.8280029l-47.4679565-67.8939819L144.0110016,79.694397h162.6039886l304.7969971,435.9906006,47.4680176,67.8939819,396.1999512,566.7210693h-162.6039429l-323.3110352-462.4460449v-.026001Z" /></svg>')
    no-repeat center/contain;
  aspect-ratio: 1200/1227;
}
.l-header-gnav-top__btns-sns .sns-link.--insta {
  mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 1000"><path d="M295.42,6c-53.2,2.51-89.53,11-121.29,23.48-32.87,12.81-60.73,30-88.45,57.82S40.89,143,28.17,175.92c-12.31,31.83-20.65,68.19-23,121.42S2.3,367.68,2.56,503.46,3.42,656.26,6,709.6c2.54,53.19,11,89.51,23.48,121.28,12.83,32.87,30,60.72,57.83,88.45S143,964.09,176,976.83c31.8,12.29,68.17,20.67,121.39,23s70.35,2.87,206.09,2.61,152.83-.86,206.16-3.39S799.1,988,830.88,975.58c32.87-12.86,60.74-30,88.45-57.84S964.1,862,976.81,829.06c12.32-31.8,20.69-68.17,23-121.35,2.33-53.37,2.88-70.41,2.62-206.17s-.87-152.78-3.4-206.1-11-89.53-23.47-121.32c-12.85-32.87-30-60.7-57.82-88.45S862,40.87,829.07,28.19c-31.82-12.31-68.17-20.7-121.39-23S637.33,2.3,501.54,2.56,348.75,3.4,295.42,6m5.84,903.88c-48.75-2.12-75.22-10.22-92.86-17-23.36-9-40-19.88-57.58-37.29s-28.38-34.11-37.5-57.42c-6.85-17.64-15.1-44.08-17.38-92.83-2.48-52.69-3-68.51-3.29-202s.22-149.29,2.53-202c2.08-48.71,10.23-75.21,17-92.84,9-23.39,19.84-40,37.29-57.57s34.1-28.39,57.43-37.51c17.62-6.88,44.06-15.06,92.79-17.38,52.73-2.5,68.53-3,202-3.29s149.31.21,202.06,2.53c48.71,2.12,75.22,10.19,92.83,17,23.37,9,40,19.81,57.57,37.29s28.4,34.07,37.52,57.45c6.89,17.57,15.07,44,17.37,92.76,2.51,52.73,3.08,68.54,3.32,202s-.23,149.31-2.54,202c-2.13,48.75-10.21,75.23-17,92.89-9,23.35-19.85,40-37.31,57.56s-34.09,28.38-57.43,37.5c-17.6,6.87-44.07,15.07-92.76,17.39-52.73,2.48-68.53,3-202.05,3.29s-149.27-.25-202-2.53m407.6-674.61a60,60,0,1,0,59.88-60.1,60,60,0,0,0-59.88,60.1M245.77,503c.28,141.8,115.44,256.49,257.21,256.22S759.52,643.8,759.25,502,643.79,245.48,502,245.76,245.5,361.22,245.77,503m90.06-.18a166.67,166.67,0,1,1,167,166.34,166.65,166.65,0,0,1-167-166.34" transform="translate(-2.5 -2.5)" /></svg>')
    no-repeat center/contain;
  aspect-ratio: 1/1;
}
.l-header-gnav-top__logo {
  position: relative;
  width: 100%;
  padding: 1.7rem 0;
}
.l-header-gnav-top__logo::before {
  content: "";
  display: block;
  width: 100vw;
  height: 1px;
  background-color: var(--primary-white);
  position: absolute;
  top: 0;
  left: calc(50% - 50vw);
}
.l-header-gnav-top__logo-img {
  width: 11rem;
  margin-inline: auto;
}
.l-header-gnav-mdl {
  background-color: var(--primary-white);
  display: grid;
  padding: 1rem;
}
.l-header-gnav-mdl__list {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 2rem;
}
.l-header-gnav-mdl__item {
  position: relative;
}
.l-header-gnav-mdl__item + .l-header-gnav-mdl__item::before {
  content: "";
  display: block;
  width: 1px;
  height: 1rem;
  background-color: var(--txt-base);
  position: absolute;
  top: 0;
  bottom: 0;
  left: -1rem;
  margin-block: auto;
}
.l-header-gnav-mdl__link {
  font-size: 1rem;
  line-height: 1;
}
.l-header-gnav-mdl__logo {
  width: 6.8rem;
  margin-inline: auto;
}
.l-loader {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99999999;
  display: block;
  width: 100%;
  height: 100%;
  background: #fff;
  background-repeat: no-repeat;
  background-position: left top;
  opacity: 1;
  transition: opacity 0.65s ease-out;
}
.l-loader.is-loaded {
  opacity: 0;
}
.bg-video {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: -1;
  overflow: hidden;
  pointer-events: none;
}
.p-top .p-top-history {
  position: relative;
  overflow: visible;
}
.p-top .p-top-history .bg-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  opacity: 0;
  visibility: hidden;
  transition:
    opacity 0.5s ease,
    visibility 0.5s ease;
  z-index: -1;
}
.p-top .p-top-history .bg-video.is-active {
  opacity: 1;
  visibility: visible;
}
.p-top .p-top-history .bg-video.is-fixed {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  z-index: -1 !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.bg-video__video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  transform: translate(-50%, -50%);
  object-fit: cover;
}
.l-section {
  padding: 5.5rem 0;
}
@media screen and (min-width: 769px) {
  .l-section {
    padding: 9rem 0;
  }
}
.p-top-mv + .l-section {
  padding-top: 9.5rem;
}
@media screen and (min-width: 769px) {
  .p-top-mv + .l-section {
    padding-top: 16rem;
  }
}
.container {
  width: min(100%, 144rem);
  padding: 0 2rem;
}
@media screen and (min-width: 769px) {
  .container {
    padding: 0 3rem;
    margin-inline: auto;
  }
}
.container.--s {
  width: min(100%, 120rem);
  padding: 0 2rem;
}
@media screen and (min-width: 769px) {
  .container.--s {
    padding: 0 6rem;
    margin-inline: auto;
  }
}
.container.--m {
  width: min(100%, 144rem);
  padding: 0 2rem;
}
@media screen and (min-width: 769px) {
  .container.--m {
    padding: 0 8rem;
    margin-inline: auto;
  }
}
.container.--l {
  width: min(100%, 144rem);
  padding: 0;
}
.l-footer-top {
  background-color: var(--primary-blue);
  padding: 1.5rem 0 0;
}
@media screen and (min-width: 769px) {
  .l-footer-top {
    padding: 2.5rem 0 0;
  }
}
@media screen and (min-width: 769px) {
  .l-footer-top .container {
    margin-inline: auto;
    display: grid;
    grid-template-columns: auto 13.7rem;
    gap: 0 3rem;
  }
}
@media screen and (min-width: 1025px) {
  .l-footer-top .container {
    gap: 0 6rem;
  }
}
@media screen and (min-width: 769px) {
  .l-footer-top__list {
    display: flex;
    gap: 0 3rem;
  }
}
@media screen and (min-width: 1025px) {
  .l-footer-top__list {
    gap: 0 6rem;
  }
}
.l-footer-top__item {
  position: relative;
  border-bottom: 1px solid var(--primary-white);
}
@media screen and (min-width: 769px) {
  .l-footer-top__item {
    border-bottom: none;
  }
}
.l-footer-top__item .open-btn {
  display: block;
  aspect-ratio: 1/1;
  width: 5rem;
  height: auto;
  position: absolute;
  right: 0;
  top: 0.7rem;
}
@media screen and (min-width: 769px) {
  .l-footer-top__item .open-btn {
    display: none;
  }
}
.l-footer-top__item .open-btn::before {
  content: "";
  display: block;
  width: 0.7rem;
  mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 7 13"><polygon points=".7090095 12.7734375 0 12.0664062 5.581981 6.5 0 .9335938 .7090095 .2265625 7 6.5 .7090095 12.7734375" /></svg>')
    no-repeat center/contain;
  aspect-ratio: 7/13;
  background-color: var(--primary-white);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  transform: rotate(90deg);
  transition: transform 0.3s ease;
}
.l-footer-top__item.is-open .open-btn::before {
  transform: rotate(-90deg);
}
.l-footer-top__item .arrow {
  display: block;
  aspect-ratio: 1/1;
  width: 5rem;
  height: auto;
  position: absolute;
  right: 0;
  top: 0.7rem;
}
@media screen and (min-width: 769px) {
  .l-footer-top__item .arrow {
    display: none;
  }
}
.l-footer-top__item .arrow::before {
  content: "";
  display: block;
  width: 0.7rem;
  mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 7 13"><polygon points=".7090095 12.7734375 0 12.0664062 5.581981 6.5 0 .9335938 .7090095 .2265625 7 6.5 .7090095 12.7734375" /></svg>')
    no-repeat center/contain;
  aspect-ratio: 7/13;
  background-color: var(--primary-white);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.l-footer-top__link {
  position: relative;
  display: block;
  width: calc(100% - 5rem);
  font-family: "Inter", sans-serif;
  padding: 2rem 0;
}
@media screen and (min-width: 769px) {
  .l-footer-top__link {
    width: 100%;
  }
}
.l-footer-top__link p {
  font-size: 2.4rem;
  line-height: 1.2;
  white-space: nowrap;
  color: rgba(0, 0, 0, 0);
  background: linear-gradient(
      to right,
      var(--secondary-yellow) 50%,
      var(--primary-white) 50%
    )
    100%;
  background-clip: text;
  background-size: 200% 100%;
  transition: background-position 0.3s ease;
}
@media screen and (min-width: 769px) {
  .l-footer-top__link p {
    font-size: 1.5rem;
    line-height: 1.7;
  }
}
@media (hover: hover) and (pointer: fine) and (min-width: 1025px) {
  .l-footer-top__link:hover p {
    background-position: 0 100%;
  }
}
.l-footer-top__sublist {
  height: 0;
  overflow: hidden;
  transition: height 0.3s ease;
  padding-left: 3rem;
}
@media screen and (min-width: 769px) {
  .l-footer-top__sublist {
    height: auto;
    overflow: visible;
    padding-left: 0;
    position: absolute;
    top: 5rem;
    left: 0;
  }
}
.l-footer-top__item.is-open .l-footer-top__sublist {
  height: auto;
  padding-bottom: 3rem;
}
.l-footer-top__sublink {
  display: block;
  position: relative;
  padding: 0.5rem 0 0.5rem 1.5rem;
}
@media screen and (min-width: 769px) {
  .l-footer-top__sublink {
    padding: 0.2rem 0 0.2rem 1.5rem;
  }
}
.l-footer-top__sublink::before {
  content: "-";
  color: var(--primary-white);
  display: block;
  line-height: 1;
  position: absolute;
  top: 0.7rem;
  left: 0;
}
@media screen and (min-width: 769px) {
  .l-footer-top__sublink::before {
    top: 0.5rem;
  }
}
.l-footer-top__sublink p {
  font-family: "Inter", sans-serif;
  font-size: 1.4rem;
  white-space: nowrap;
  color: rgba(0, 0, 0, 0);
  background: linear-gradient(
      to right,
      var(--secondary-yellow) 50%,
      var(--primary-white) 50%
    )
    100%;
  background-clip: text;
  background-size: 200% 100%;
  transition: background-position 0.3s ease;
}
@media (hover: hover) and (pointer: fine) and (min-width: 1025px) {
  .l-footer-top__sublink:hover p {
    background-position: 0 100%;
  }
}
.l-footer-top__btns {
  display: grid;
  gap: 3.5rem 0;
  padding: 3.2rem 0 7rem;
}
@media screen and (min-width: 769px) {
  .l-footer-top__btns {
    gap: 9.5rem 0;
    padding: 0.8rem 0 8.7rem;
  }
}
.l-footer-top__btns .c-btn {
  width: 13.7rem;
  min-width: unset;
  height: 4rem;
  min-height: unset;
  padding: 1.2rem 2.4rem 1.2rem 2.4rem;
}
.l-footer-top__btns-sns {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 0 2.8rem;
  padding-left: 1rem;
}
@media screen and (min-width: 769px) {
  .l-footer-top__btns-sns {
    flex-wrap: wrap;
    gap: 1.6rem 2.4rem;
    padding-left: 0;
  }
}
.l-footer-top__btns-sns .sns-ttl {
  font-family: "Inter", sans-serif;
  font-size: 1.5rem;
  color: var(--primary-white);
}
@media screen and (min-width: 769px) {
  .l-footer-top__btns-sns .sns-ttl {
    width: 100%;
  }
}
.l-footer-top__btns-sns .sns-link {
  display: block;
  aspect-ratio: 1/1;
  width: 4.2rem;
  height: auto;
  background-color: var(--primary-white);
}
.l-footer-top__btns-sns .sns-link.--xxx {
  mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 1227"><path d="M714.1630249,519.2839966L1160.8900146,0h-105.8599854l-387.8930054,450.8869934L357.3280029,0H0l468.4920044,681.8209839L0,1226.3699951h105.8659973l409.6250305-476.1519775,327.1809692,476.1519775h357.3280029l-485.8629761-707.0859985h.026001ZM569.164978,687.8280029l-47.4679565-67.8939819L144.0110016,79.694397h162.6039886l304.7969971,435.9906006,47.4680176,67.8939819,396.1999512,566.7210693h-162.6039429l-323.3110352-462.4460449v-.026001Z" /></svg>')
    no-repeat center/contain;
  aspect-ratio: 1200/1227;
}
.l-footer-top__btns-sns .sns-link.--insta {
  mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 1000"><path d="M295.42,6c-53.2,2.51-89.53,11-121.29,23.48-32.87,12.81-60.73,30-88.45,57.82S40.89,143,28.17,175.92c-12.31,31.83-20.65,68.19-23,121.42S2.3,367.68,2.56,503.46,3.42,656.26,6,709.6c2.54,53.19,11,89.51,23.48,121.28,12.83,32.87,30,60.72,57.83,88.45S143,964.09,176,976.83c31.8,12.29,68.17,20.67,121.39,23s70.35,2.87,206.09,2.61,152.83-.86,206.16-3.39S799.1,988,830.88,975.58c32.87-12.86,60.74-30,88.45-57.84S964.1,862,976.81,829.06c12.32-31.8,20.69-68.17,23-121.35,2.33-53.37,2.88-70.41,2.62-206.17s-.87-152.78-3.4-206.1-11-89.53-23.47-121.32c-12.85-32.87-30-60.7-57.82-88.45S862,40.87,829.07,28.19c-31.82-12.31-68.17-20.7-121.39-23S637.33,2.3,501.54,2.56,348.75,3.4,295.42,6m5.84,903.88c-48.75-2.12-75.22-10.22-92.86-17-23.36-9-40-19.88-57.58-37.29s-28.38-34.11-37.5-57.42c-6.85-17.64-15.1-44.08-17.38-92.83-2.48-52.69-3-68.51-3.29-202s.22-149.29,2.53-202c2.08-48.71,10.23-75.21,17-92.84,9-23.39,19.84-40,37.29-57.57s34.1-28.39,57.43-37.51c17.62-6.88,44.06-15.06,92.79-17.38,52.73-2.5,68.53-3,202-3.29s149.31.21,202.06,2.53c48.71,2.12,75.22,10.19,92.83,17,23.37,9,40,19.81,57.57,37.29s28.4,34.07,37.52,57.45c6.89,17.57,15.07,44,17.37,92.76,2.51,52.73,3.08,68.54,3.32,202s-.23,149.31-2.54,202c-2.13,48.75-10.21,75.23-17,92.89-9,23.35-19.85,40-37.31,57.56s-34.09,28.38-57.43,37.5c-17.6,6.87-44.07,15.07-92.76,17.39-52.73,2.48-68.53,3-202.05,3.29s-149.27-.25-202-2.53m407.6-674.61a60,60,0,1,0,59.88-60.1,60,60,0,0,0-59.88,60.1M245.77,503c.28,141.8,115.44,256.49,257.21,256.22S759.52,643.8,759.25,502,643.79,245.48,502,245.76,245.5,361.22,245.77,503m90.06-.18a166.67,166.67,0,1,1,167,166.34,166.65,166.65,0,0,1-167-166.34" transform="translate(-2.5 -2.5)" /></svg>')
    no-repeat center/contain;
  aspect-ratio: 1/1;
}
.l-footer-top__logo {
  position: relative;
  width: 100%;
  padding: 1.7rem 0;
}
@media screen and (min-width: 769px) {
  .l-footer-top__logo {
    grid-column: 1/3;
    padding: 3rem 0;
  }
}
.l-footer-top__logo::before {
  content: "";
  display: block;
  width: 100vw;
  height: 1px;
  background-color: var(--primary-white);
  position: absolute;
  top: 0;
  left: calc(50% - 50vw);
}
@media screen and (min-width: 769px) {
  .l-footer-top__logo::before {
    display: none;
  }
}
.l-footer-top__logo-img {
  width: 11rem;
  margin-inline: auto;
}
@media screen and (min-width: 769px) {
  .l-footer-top__logo-img {
    width: 20rem;
  }
}
.l-footer-mdl {
  background-color: var(--primary-white);
  display: grid;
  padding: 1rem;
}
@media screen and (min-width: 769px) {
  .l-footer-mdl {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 2.5rem;
  }
}
.l-footer-mdl__list {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 2rem;
}
@media screen and (min-width: 769px) {
  .l-footer-mdl__list {
    gap: 0 5rem;
  }
}
.l-footer-mdl__item {
  position: relative;
}
.l-footer-mdl__item + .l-footer-mdl__item::before {
  content: "";
  display: block;
  width: 1px;
  height: 1rem;
  background-color: var(--txt-base);
  position: absolute;
  top: 0;
  bottom: 0;
  left: -1rem;
  margin-block: auto;
}
@media screen and (min-width: 769px) {
  .l-footer-mdl__item + .l-footer-mdl__item::before {
    left: -2.5rem;
  }
}
.l-footer-mdl__link {
  font-size: 1rem;
  line-height: 1;
}
@media screen and (min-width: 769px) {
  .l-footer-mdl__link {
    font-size: 1.2rem;
  }
}
.l-footer-mdl__logo {
  width: 6.8rem;
  margin-inline: auto;
}
@media screen and (min-width: 769px) {
  .l-footer-mdl__logo {
    width: 14.6rem;
    margin-inline: unset;
  }
}
.l-footer-btm {
  background-color: #e5e5e5;
  padding: 1.5rem 0;
}
@media screen and (min-width: 769px) {
  .l-footer-btm {
    padding: 1.8rem 0;
  }
}
.l-footer__copyright {
  font-family: "Inter", sans-serif;
  font-size: 1rem;
  letter-spacing: 0.05em;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .l-footer__copyright {
    font-size: 1.3rem;
  }
}
.c-btn {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background-color: var(--primary-blue);
  border-radius: 9999px;
  border: 1px solid var(--primary-blue);
  padding: 0.5rem 6rem 0.5rem 2.4rem;
  width: fit-content;
  min-width: 23rem;
  max-width: 50rem;
  height: fit-content;
  min-height: 5rem;
  overflow: hidden;
  text-decoration: unset !important;
}
.c-btn::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: var(--primary-white);
  position: absolute;
  top: 0;
  left: 0;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: all 0.3s cubic-bezier(0.45, 0, 0.55, 1);
}
.c-btn p {
  position: relative;
  font-family: "Inter", sans-serif;
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--primary-white);
  line-height: var(--line-height-15);
  text-align: center;
  transition: color 0.3s ease;
  z-index: 1;
  display: flex;
  align-items: center;
}
.c-btn p span.small {
  font-size: 0.7em;
}
@media (hover: hover) and (pointer: fine) and (min-width: 1025px) {
  .c-btn:hover::after {
    transform: scale(1, 1);
  }
  .c-btn:hover p {
    color: var(--primary-blue);
  }
}
.c-btn.--white {
  background-color: var(--primary-white);
  border: 1px solid var(--primary-white);
}
.c-btn.--white::after {
  background-color: var(--primary-blue);
}
.c-btn.--white p {
  color: var(--primary-blue);
}
@media (hover: hover) and (pointer: fine) and (min-width: 1025px) {
  .c-btn.--white:hover p {
    color: var(--primary-white);
  }
}
.d-btn {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background-color: var(--primary-blue);
  border-radius: 9999px;
  border: 1px solid var(--primary-blue);
  padding: 0.5rem 6rem 0.5rem 2.4rem;
  width: fit-content;
  min-width: 23rem;
  max-width: 50rem;
  height: fit-content;
  min-height: 5rem;
  overflow: hidden;
  text-decoration: unset !important;
  margin-inline: auto;
}
.d-btn::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: var(--primary-white);
  position: absolute;
  top: 0;
  left: 0;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: all 0.3s cubic-bezier(0.45, 0, 0.55, 1);
}
.d-btn p {
  position: relative;
  font-family: "Inter", sans-serif;
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--primary-white);
  line-height: var(--line-height-15);
  text-align: center;
  transition: color 0.3s ease;
  z-index: 1;
  display: flex;
  align-items: center;
}
.d-btn p span.small {
  font-size: 0.7em;
}
.d-btn span.icon.--bgb {
    background-color: #fff;
    border: 1px solid var(--primary-blue);
}
.d-btn span.icon.--bgb::before {
        background-color: var(--primary-blue);
}
@media (hover: hover) and (pointer: fine) and (min-width: 1025px) {
  .d-btn:hover::after {
    transform: scale(1, 1);
  }
  .d-btn:hover p {
    color: var(--primary-blue);
  }
  .d-btn:hover span.icon.--bgb {
    background: var(--primary-blue);
  }
  .d-btn:hover span.icon.--bgb::before {
    background: var(--primary-white);
  }
}
.d-btn.--blue {
  background-color: var(--primary-blue);
  border: 1px solid var(--primary-blue);
}
.d-btn.--blue::after {
  background-color: var(--primary-white);
}
.d-btn.--blue p {
  color: var(--primary-white);
}
@media (hover: hover) and (pointer: fine) and (min-width: 1025px) {
  .d-btn.--blue:hover p {
    color: var(--primary-blue);
  }
}
.c-mainv {
  padding: 2.5rem 0 8rem;
}
@media screen and (min-width: 769px) {
  .c-mainv {
    padding: 10rem 0 11rem;
  }
}
.c-mainv__en span {
  font-family: "Inter", sans-serif;
  font-size: 5rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  display: inline-block;
  background-image: linear-gradient(
    50deg,
    #001e60 30%,
    #6ea200 45%,
    #dade1a 50%,
    #6ea200 55%,
    #001e60 70%
  );
  background-repeat: no-repeat;
  background-size: 400% 100%;
  background-clip: text;
  color: rgba(0, 0, 0, 0);
  animation: none;
}
@media screen and (min-width: 769px) {
  .c-mainv__en span {
    font-size: 10rem;
  }
}
.c-mainv__en.grad span {
  animation: txtColor 3s forwards;
}
.c-mainv__jp {
  font-size: 1.6rem;
  margin-top: 1.5rem;
  line-height: 1.6;
  font-weight: 600;
}
@media screen and (min-width: 769px) {
  .c-mainv__jp {
    font-size: 1.8rem;
    margin-top: 3.7rem;
    line-height: 2.2;
  }
}
.c-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition:
    opacity 0.3s ease,
    visibility 0.3s ease;
}
.c-modal.is-open {
  opacity: 1;
  visibility: visible;
}
.c-modal__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.9);
  cursor: pointer;
}
.c-modal__inner {
  position: relative;
  z-index: 1;
  width: min(95%, 84rem);
  max-height: calc(90vh - 3.5rem);
  padding-top: 3.5rem;
  overflow: hidden;
}
@media screen and (min-width: 769px) {
  .c-modal__inner {
    max-height: calc(90vh - 4.5rem);
    padding-top: 4.5rem;
  }
}
.c-modal__close {
  position: absolute;
  top: 0;
  right: 0;
  width: 3rem;
  height: 3rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0);
  border: none;
  cursor: pointer;
  transition: opacity 0.3s ease;
}
@media screen and (min-width: 769px) {
  .c-modal__close {
    width: 4rem;
    height: 4rem;
  }
}
.c-modal__close:hover {
  opacity: 0.7;
}
.c-modal__close::before,
.c-modal__close::after {
  content: "";
  display: block;
  width: 90%;
  height: 1px;
  background-color: var(--primary-white);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.c-modal__close::before {
  transform: rotate(45deg);
}
.c-modal__close::after {
  transform: rotate(-45deg);
}
.c-modal__content {
  width: 100%;
  max-height: calc(90vh - 3.5rem);
  padding: 0 1rem 3.5rem;
  overflow-y: auto;
}
@media screen and (min-width: 769px) {
  .c-modal__content {
    max-height: calc(90vh - 4.5rem);
    padding: 0 2rem 4.5rem;
  }
}
body.modal-open {
  overflow: hidden;
}
.c-modal__content figure,
.c-modal__content video {
  width: 100%;
  height: auto;
}
.c-modal__ttl {
  font-family: "Inter", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.3125;
  color: var(--primary-white);
  margin-top: 2.5rem;
}
@media screen and (min-width: 769px) {
  .c-modal__ttl {
    font-size: 3.2rem;
    margin-top: 5rem;
  }
}
.c-modal__sub_ttl {
  color: var(--primary-white);
  font-family: "Inter", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.3125;
  margin-top: 5.5rem;
}
.c-modal__sub_ttl + .c-modal__txt {
  margin-top: 0.5rem;
}
@media screen and (min-width: 769px) {
  .c-modal__sub_ttl {
    font-size: 2rem;
    margin-top: 7.5rem;
  }
}
.c-modal__ttl:first-child {
  margin-top: 0;
}
.c-modal__txt {
  font-size: 1.5rem;
  line-height: 1.6666666667;
  color: var(--primary-white);
  margin-top: 1.5rem;
}
@media screen and (min-width: 769px) {
  .c-modal__txt {
    font-size: 1.8rem;
    margin-top: 3.5rem;
  }
}
.c-modal__datebox {
  border-top: 1px solid var(--primary-white);
  border-bottom: 1px solid var(--primary-white);
  padding: 2rem 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 2rem;
  align-items: center;
  margin: 2.5rem 0;
}
@media screen and (min-width: 769px) {
  .c-modal__datebox {
    padding: 2.5rem 0;
    gap: 1rem 3rem;
    margin: 3rem 0;
  }
}
.c-modal__datebox .datebox-date {
  display: flex;
  align-items: center;
  gap: 0 3rem;
}
.c-modal__datebox .datebox-date p {
  position: relative;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1;
  color: var(--primary-white);
  display: flex;
  align-items: flex-end;
  gap: 0 0.7rem;
}
@media screen and (min-width: 769px) {
  .c-modal__datebox .datebox-date p {
    font-size: 2.8rem;
  }
}
.c-modal__datebox .datebox-date p + p::before {
  content: "-";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin-block: auto;
  left: -1.8rem;
}
.c-modal__datebox .datebox-date p span {
  font-size: 0.65em;
  line-height: 1;
}
.c-modal__datebox .datebox-time {
  position: relative;
  font-size: 1.4rem;
  color: var(--primary-white);
  padding-left: 2rem;
}
.c-modal__datebox .datebox-time::before {
  content: "";
  display: block;
  width: 1.4rem;
  height: auto;
  mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14"><path d="M10.0085427,10.1775039l.4741109-.4741119-3.1570846-3.1577626V2.1162809h-.6511651v4.7272467l3.3341388,3.3339763ZM7.0026284,14c-.9637125,0-1.8698461-.182065-2.718391-.546098-.8485449-.3641309-1.5925-.8654956-2.2318558-1.5041891-.6393658-.6386945-1.1412354-1.3829752-1.5056091-2.2327443-.3645203-.8496033-.5467725-1.7574401-.5467725-2.7234615,0-.9661681.182057-1.8748158.5461572-2.7259425.3641099-.8509903.8655108-1.5927704,1.5041831-2.2253503.6386819-.6325799,1.3829109-1.1310623,2.2326765-1.4954375.8496287-.3645217,1.757452-.5467767,2.7234793-.5467767.9661642,0,1.8748086.1836811,2.7259221.5510451.8512309.367364,1.5916987.8659147,2.2213067,1.4956426.629608.6297377,1.1280401,1.3702968,1.4953925,2.221697.3672555.8512539.5508827,1.7609174.5508827,2.7289802,0,.9637267-.1820652,1.8698635-.5461945,2.718431-.3641294.8484995-.8620725,1.5924877-1.494025,2.2318659-.6318538.6393773-1.3738856,1.1412301-2.2258971,1.5055566-.8521102.3645212-1.7625124.5467817-2.7312549.5467817ZM7.0097488,13.3489017c1.7563775,0,3.2519656-.6207222,4.486958-1.8619718,1.2346999-1.2412487,1.8520988-2.7401637,1.8520988-4.4966854,0-1.7563754-.6173989-3.252018-1.8520988-4.4869279-1.2349924-1.2347634-2.7305805-1.852155-4.486958-1.852155-1.7565047,0-3.255394.6173916-4.496677,1.852155-1.2412732,1.2349099-1.8619149,2.7305525-1.8619149,4.4869279,0,1.7565216.6206416,3.2554366,1.8619149,4.4966854,1.241283,1.2412497,2.7401723,1.8619718,4.496677,1.8619718Z" /></svg>')
    no-repeat center/contain;
  aspect-ratio: 1/1;
  background-color: var(--primary-white);
  position: absolute;
  top: 0.5rem;
  left: 0;
}
.c-modal__video {
  aspect-ratio: 16/9;
  width: 100%;
  height: auto;
}
.c-modal__video iframe {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.c-pankuzu {
  display: none;
}
@media screen and (min-width: 769px) {
  .c-pankuzu {
    display: block;
    padding: 3rem;
  }
}
.c-pankuzu__list {
  display: flex;
  gap: 0 1.6rem;
  align-items: center;
  width: fit-content;
  overflow: auto;
  overflow-y: hidden;
  margin-top: 0 !important;
}
.c-pankuzu__item {
  position: relative;
  display: grid;
}
.c-pankuzu__item:has(.c-pankuzu__link)::after {
  content: "";
  display: block;
  width: 0.6rem;
  height: auto;
  mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 7 13"><polygon points=".7090095 12.7734375 0 12.0664062 5.581981 6.5 0 .9335938 .7090095 .2265625 7 6.5 .7090095 12.7734375" /></svg>')
    no-repeat center/contain;
  aspect-ratio: 7/13;
  background-color: var(--txt-base);
  position: absolute;
  top: 0;
  bottom: 0;
  margin-block: auto;
  right: -1.1rem;
}
.c-pankuzu__link,
.c-pankuzu__current {
  white-space: nowrap;
  font-size: 1.4rem;
}
.c-pankuzu__link {
  position: relative;
  display: inline;
}
.c-pankuzu__current {
  position: relative;
  display: inline-block;
}
.c-title {
  width: fit-content;
}
.c-title__en span {
  font-family: "Inter", sans-serif;
  font-size: 5rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  display: inline-block;
  background-image: linear-gradient(
    50deg,
    #001e60 30%,
    #6ea200 45%,
    #dade1a 50%,
    #6ea200 55%,
    #001e60 70%
  );
  background-repeat: no-repeat;
  background-size: 400% 100%;
  background-clip: text;
  color: rgba(0, 0, 0, 0);
  animation: none;
}
@media screen and (min-width: 769px) {
  .c-title__en span {
    font-size: 10rem;
  }
}
.c-title__en.grad span {
  animation: txtColor 3s forwards;
}
@keyframes txtColor {
  0% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}
.c-title__jp {
  font-size: 1.6rem;
  font-weight: 700;
  margin-top: 2rem;
  line-height: 1.5;
}
@media screen and (min-width: 769px) {
  .c-title__jp {
    font-size: 2rem;
    margin-top: 1rem;
  }
}
.is-inline-xxs {
  display: inline;
}
@media screen and (min-width: 320px) {
  .is-inline-xxs {
    display: none;
  }
}
.is-inline-xs {
  display: inline;
}
@media screen and (min-width: 576px) {
  .is-inline-xs {
    display: none;
  }
}
.is-inline-s {
  display: inline;
}
@media screen and (min-width: 769px) {
  .is-inline-s {
    display: none;
  }
}
.is-inline-sm {
  display: inline;
}
@media screen and (min-width: 1025px) {
  .is-inline-sm {
    display: none;
  }
}
.is-inline-m {
  display: inline;
}
@media screen and (min-width: 1365px) {
  .is-inline-m {
    display: none;
  }
}
.is-inline-ml {
  display: inline;
}
@media screen and (min-width: 1440px) {
  .is-inline-ml {
    display: none;
  }
}
.is-inline-l {
  display: inline;
}
@media screen and (min-width: 1600px) {
  .is-inline-l {
    display: none;
  }
}
.is-inline-xl {
  display: inline;
}
@media screen and (min-width: 1760px) {
  .is-inline-xl {
    display: none;
  }
}
.is-inline-xxl {
  display: inline;
}
@media screen and (min-width: 1920px) {
  .is-inline-xxl {
    display: none;
  }
}
.is-none-xxs {
  display: none;
}
@media screen and (min-width: 320px) {
  .is-none-xxs {
    display: inline;
  }
}
.is-none-xs {
  display: none;
}
@media screen and (min-width: 576px) {
  .is-none-xs {
    display: inline;
  }
}
.is-none-s {
  display: none;
}
@media screen and (min-width: 769px) {
  .is-none-s {
    display: inline;
  }
}
.is-none-sm {
  display: none;
}
@media screen and (min-width: 1025px) {
  .is-none-sm {
    display: inline;
  }
}
.is-none-m {
  display: none;
}
@media screen and (min-width: 1365px) {
  .is-none-m {
    display: inline;
  }
}
.is-none-ml {
  display: none;
}
@media screen and (min-width: 1440px) {
  .is-none-ml {
    display: inline;
  }
}
.is-none-l {
  display: none;
}
@media screen and (min-width: 1600px) {
  .is-none-l {
    display: inline;
  }
}
.is-none-xl {
  display: none;
}
@media screen and (min-width: 1760px) {
  .is-none-xl {
    display: inline;
  }
}
.is-none-xxl {
  display: none;
}
@media screen and (min-width: 1920px) {
  .is-none-xxl {
    display: inline;
  }
}
.mt1em {
  margin-top: 1em !important;
}
.mt2em {
  margin-top: 2em !important;
}
.mt3em {
  margin-top: 3em !important;
}
.mt4em {
  margin-top: 4em !important;
}
.mt5em {
  margin-top: 5em !important;
}
.mb0 {
  margin-bottom: 0 !important;
}
.mb1em {
  margin-bottom: 1em !important;
}
.mb2em {
  margin-bottom: 2em !important;
}
.mb3em {
  margin-bottom: 3em !important;
}
.mb4em {
  margin-bottom: 4em !important;
}
.mb5em {
  margin-bottom: 5em !important;
}
.tal {
  text-align: left;
}
.tac {
  text-align: center;
}
.tar {
  text-align: right;
}
