@charset "UTF-8";
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i, em,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: none;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  list-style: none;
  font-style: normal;
}

article, aside, details, figcaption, figure,
footer, header, main, menu, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none;
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}

main {
  display: block;
}

picture {
  display: block;
}
picture source {
  display: block;
}

/*
button, input, select, textarea {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  border-style: none;
  border-radius: 0;
  background-color: transparent;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  appearance: none;
  &:focus{
    outline-style: auto;
  }
}

input, select {
  vertical-align: middle;
}
select{
  &::-ms-expand{
      display: none;
  }
}

button {
    cursor: pointer;
}
img {
  max-width: 100%;
  vertical-align: bottom;
}

sup{
    vertical-align: top;
    font-size: .8em;
}
sub{
    vertical-align: baseline;
    font-size: .8em;
}
*/
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

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

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

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

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

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

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

/**
 * 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: 1em; /* 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%;
  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;
}

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

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

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

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

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

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

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

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

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

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

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

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

/**
 * Remove the inner padding 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 */
}

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

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

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

figure {
  margin: 0;
}

dl {
  margin: 0;
  padding: 0;
}

dd {
  margin: 0;
  padding: 0;
}

:root {
  --root-font-size: 16;
  --font-size-pc: 16;
  --font-size-sp: 28;
  --font-ratio: 1;
  --body-font-size: calc(var(--font-size-pc) / var(--root-font-size) * var(--font-ratio) * 1rem);
  --body-bg: #FFF;
  --body-color: #202020;
  --focus: 0 0 0 4px rgba(var(--primary), .8);
}
@media screen and (max-width: 1500px) {
  :root {
    --font-ratio: 1;
  }
}
@media screen and (max-width: 1485px) {
  :root {
    --font-ratio: 0.99;
  }
}
@media screen and (max-width: 1470px) {
  :root {
    --font-ratio: 0.98;
  }
}
@media screen and (max-width: 1455px) {
  :root {
    --font-ratio: 0.97;
  }
}
@media screen and (max-width: 1440px) {
  :root {
    --font-ratio: 0.96;
  }
}
@media screen and (max-width: 1425px) {
  :root {
    --font-ratio: 0.95;
  }
}
@media screen and (max-width: 1410px) {
  :root {
    --font-ratio: 0.94;
  }
}
@media screen and (max-width: 1395px) {
  :root {
    --font-ratio: 0.93;
  }
}
@media screen and (max-width: 1380px) {
  :root {
    --font-ratio: 0.92;
  }
}
@media screen and (max-width: 1365px) {
  :root {
    --font-ratio: 0.91;
  }
}
@media screen and (max-width: 1350px) {
  :root {
    --font-ratio: 0.9;
  }
}
@media screen and (max-width: 1335px) {
  :root {
    --font-ratio: 0.89;
  }
}
@media screen and (max-width: 1320px) {
  :root {
    --font-ratio: 0.88;
  }
}
@media screen and (max-width: 1305px) {
  :root {
    --font-ratio: 0.87;
  }
}
@media screen and (max-width: 1290px) {
  :root {
    --font-ratio: 0.86;
  }
}
@media screen and (max-width: 1275px) {
  :root {
    --font-ratio: 0.85;
  }
}
@media screen and (max-width: 1260px) {
  :root {
    --font-ratio: 0.84;
  }
}
@media screen and (max-width: 1245px) {
  :root {
    --font-ratio: 0.83;
  }
}
@media screen and (max-width: 1230px) {
  :root {
    --font-ratio: 0.82;
  }
}
@media screen and (max-width: 1215px) {
  :root {
    --font-ratio: 0.81;
  }
}
@media screen and (max-width: 1200px) {
  :root {
    --font-ratio: 0.8;
  }
}
@media screen and (max-width: 1185px) {
  :root {
    --font-ratio: 0.79;
  }
}
@media screen and (max-width: 1170px) {
  :root {
    --font-ratio: 0.78;
  }
}
@media screen and (max-width: 1155px) {
  :root {
    --font-ratio: 0.77;
  }
}
@media screen and (max-width: 1140px) {
  :root {
    --font-ratio: 0.76;
  }
}
@media screen and (max-width: 1125px) {
  :root {
    --font-ratio: 0.75;
  }
}
@media screen and (max-width: 1110px) {
  :root {
    --font-ratio: 0.74;
  }
}
@media screen and (max-width: 1095px) {
  :root {
    --font-ratio: 0.73;
  }
}
@media screen and (max-width: 1080px) {
  :root {
    --font-ratio: 0.72;
  }
}
@media screen and (max-width: 1065px) {
  :root {
    --font-ratio: 0.71;
  }
}
@media screen and (max-width: 1050px) {
  :root {
    --font-ratio: 0.7;
  }
}
@media screen and (max-width: 1035px) {
  :root {
    --font-ratio: 0.69;
  }
}
@media screen and (max-width: 1020px) {
  :root {
    --font-ratio: 0.68;
  }
}
@media screen and (max-width: 1005px) {
  :root {
    --font-ratio: 0.67;
  }
}
@media screen and (max-width: 990px) {
  :root {
    --font-ratio: 0.66;
  }
}
@media screen and (max-width: 975px) {
  :root {
    --font-ratio: 0.65;
  }
}
@media screen and (max-width: 960px) {
  :root {
    --font-ratio: 0.64;
  }
}
@media screen and (max-width: 945px) {
  :root {
    --font-ratio: 0.63;
  }
}
@media screen and (max-width: 930px) {
  :root {
    --font-ratio: 0.62;
  }
}
@media screen and (max-width: 915px) {
  :root {
    --font-ratio: 0.61;
  }
}
@media screen and (max-width: 900px) {
  :root {
    --font-ratio: 0.6;
  }
}
@media screen and (max-width: 885px) {
  :root {
    --font-ratio: 0.59;
  }
}
@media screen and (max-width: 870px) {
  :root {
    --font-ratio: 0.58;
  }
}
@media screen and (max-width: 855px) {
  :root {
    --font-ratio: 0.57;
  }
}
@media screen and (max-width: 840px) {
  :root {
    --font-ratio: 0.56;
  }
}
@media screen and (max-width: 825px) {
  :root {
    --font-ratio: 0.55;
  }
}
@media screen and (max-width: 835px) {
  :root {
    --font-ratio: 2.227;
  }
}
@media screen and (max-width: 825px) {
  :root {
    --font-ratio: 2.2;
  }
}
@media screen and (max-width: 815px) {
  :root {
    --font-ratio: 2.173;
  }
}
@media screen and (max-width: 805px) {
  :root {
    --font-ratio: 2.147;
  }
}
@media screen and (max-width: 795px) {
  :root {
    --font-ratio: 2.12;
  }
}
@media screen and (max-width: 785px) {
  :root {
    --font-ratio: 2.093;
  }
}
@media screen and (max-width: 775px) {
  :root {
    --font-ratio: 2.067;
  }
}
@media screen and (max-width: 765px) {
  :root {
    --font-ratio: 2.04;
  }
}
@media screen and (max-width: 755px) {
  :root {
    --font-ratio: 2.013;
  }
}
@media screen and (max-width: 745px) {
  :root {
    --font-ratio: 1.987;
  }
}
@media screen and (max-width: 735px) {
  :root {
    --font-ratio: 1.96;
  }
}
@media screen and (max-width: 725px) {
  :root {
    --font-ratio: 1.933;
  }
}
@media screen and (max-width: 715px) {
  :root {
    --font-ratio: 1.907;
  }
}
@media screen and (max-width: 705px) {
  :root {
    --font-ratio: 1.88;
  }
}
@media screen and (max-width: 695px) {
  :root {
    --font-ratio: 1.853;
  }
}
@media screen and (max-width: 685px) {
  :root {
    --font-ratio: 1.827;
  }
}
@media screen and (max-width: 675px) {
  :root {
    --font-ratio: 1.8;
  }
}
@media screen and (max-width: 665px) {
  :root {
    --font-ratio: 1.773;
  }
}
@media screen and (max-width: 655px) {
  :root {
    --font-ratio: 1.747;
  }
}
@media screen and (max-width: 645px) {
  :root {
    --font-ratio: 1.72;
  }
}
@media screen and (max-width: 635px) {
  :root {
    --font-ratio: 1.693;
  }
}
@media screen and (max-width: 625px) {
  :root {
    --font-ratio: 1.667;
  }
}
@media screen and (max-width: 615px) {
  :root {
    --font-ratio: 1.64;
  }
}
@media screen and (max-width: 605px) {
  :root {
    --font-ratio: 1.613;
  }
}
@media screen and (max-width: 595px) {
  :root {
    --font-ratio: 1.587;
  }
}
@media screen and (max-width: 585px) {
  :root {
    --font-ratio: 1.56;
  }
}
@media screen and (max-width: 575px) {
  :root {
    --font-ratio: 1.533;
  }
}
@media screen and (max-width: 565px) {
  :root {
    --font-ratio: 1.507;
  }
}
@media screen and (max-width: 555px) {
  :root {
    --font-ratio: 1.48;
  }
}
@media screen and (max-width: 545px) {
  :root {
    --font-ratio: 1.453;
  }
}
@media screen and (max-width: 535px) {
  :root {
    --font-ratio: 1.427;
  }
}
@media screen and (max-width: 525px) {
  :root {
    --font-ratio: 1.4;
  }
}
@media screen and (max-width: 515px) {
  :root {
    --font-ratio: 1.373;
  }
}
@media screen and (max-width: 505px) {
  :root {
    --font-ratio: 1.347;
  }
}
@media screen and (max-width: 495px) {
  :root {
    --font-ratio: 1.32;
  }
}
@media screen and (max-width: 485px) {
  :root {
    --font-ratio: 1.293;
  }
}
@media screen and (max-width: 475px) {
  :root {
    --font-ratio: 1.267;
  }
}
@media screen and (max-width: 465px) {
  :root {
    --font-ratio: 1.24;
  }
}
@media screen and (max-width: 455px) {
  :root {
    --font-ratio: 1.213;
  }
}
@media screen and (max-width: 445px) {
  :root {
    --font-ratio: 1.187;
  }
}
@media screen and (max-width: 435px) {
  :root {
    --font-ratio: 1.16;
  }
}
@media screen and (max-width: 425px) {
  :root {
    --font-ratio: 1.133;
  }
}
@media screen and (max-width: 415px) {
  :root {
    --font-ratio: 1.107;
  }
}
@media screen and (max-width: 405px) {
  :root {
    --font-ratio: 1.08;
  }
}
@media screen and (max-width: 395px) {
  :root {
    --font-ratio: 1.053;
  }
}
@media screen and (max-width: 385px) {
  :root {
    --font-ratio: 1.027;
  }
}
@media screen and (max-width: 375px) {
  :root {
    --font-ratio: 1;
  }
}
@media screen and (max-width: 365px) {
  :root {
    --font-ratio: 0.973;
  }
}
@media screen and (max-width: 355px) {
  :root {
    --font-ratio: 0.947;
  }
}

html {
  font-kerning: normal;
  -webkit-text-size-adjust: none;
     -moz-text-size-adjust: none;
          text-size-adjust: none;
  word-wrap: break-word;
  overflow-wrap: break-word;
  -webkit-print-color-adjust: exact;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  font-size: 100%;
}

body {
  position: relative;
  width: 100%;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic Pro", "Yu Gothic", sans-serif;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.05em;
  background: var(--body-bg);
  color: var(--body-color);
  font-size: var(--body-font-size);
  -webkit-font-smoothing: antialiased;
}
@media screen and (max-width: 835px) {
  body {
    font-size: calc(18 / var(--root-font-size) * var(--font-ratio) * 1rem);
    line-height: 1.8;
  }
}
body > img {
  position: absolute;
  height: 0;
}

* {
  box-sizing: border-box;
  outline: none;
}

*::before, *::after {
  box-sizing: border-box;
  outline: none;
}

*:focus-visible {
  outline: -webkit-focus-ring-color auto 1px;
}

::-moz-selection {
  color: rgba(var(--primary));
  background-color: rgba(var(--secondary));
}

::selection {
  color: rgba(var(--primary));
  background-color: rgba(var(--secondary));
}

[data-whatintent=mouse] *:focus,
[data-whatintent=touch] *:focus {
  box-shadow: none !important;
  outline: none;
}

sup {
  vertical-align: top;
  font-size: 0.8em;
}

sub {
  vertical-align: baseline;
  font-size: 0.8em;
}

main {
  display: block;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 300;
}

picture {
  display: block;
  max-width: 100%;
  line-height: 1;
}
picture source {
  display: block;
}

img {
  width: 100%;
  max-width: 100%;
  height: auto;
  aspect-ratio: attr(width)/attr(height);
  line-height: 1;
  vertical-align: middle;
  pointer-events: none;
}

a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
  text-decoration: none;
  transition: color 0.2s;
  outline: none;
  color: inherit;
  cursor: pointer;
}
a:hover {
  -webkit-text-decoration: rgba(var(--link-hover-decoration));
          text-decoration: rgba(var(--link-hover-decoration));
}

button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  line-height: inherit;
}

hr {
  margin: 4rem 0;
  border: none;
  border-top: 1px solid #cccccc;
}

table {
  width: auto;
}
table th, table td {
  -moz-text-align-last: left;
       text-align-last: left;
}

figure {
  line-height: 1;
}

summary::-webkit-details-marker {
  display: none;
}

.fz30 {
  font-size: calc(30 / var(--root-font-size) * var(--font-ratio) * 1rem);
}

[data-color=yellow] {
  --custom-color: #EBFF00;
}

[data-color=orange] {
  --custom-color: #FF9D00;
}

[data-color=green] {
  --custom-color: #7EF859;
}

[data-color=pink] {
  --custom-color: #FF67D0;
}

[data-color=red] {
  --custom-color: #F25555;
}

[data-color=purple] {
  --custom-color: #CC6AFF;
}

.splide__container {
  box-sizing: border-box;
  position: relative;
}

.splide__list {
  backface-visibility: hidden;
  display: flex;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
}

.splide.is-initialized:not(.is-active) .splide__list {
  display: block;
}

.splide__pagination {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0;
  pointer-events: none;
}

.splide__pagination li {
  display: inline-block;
  line-height: 1;
  list-style-type: none;
  margin: 0;
  pointer-events: auto;
}

.splide:not(.is-overflow) .splide__pagination {
  display: none;
}

.splide__progress__bar {
  width: 0;
}

.splide {
  position: relative;
  visibility: hidden;
}

.splide.is-initialized, .splide.is-rendered {
  visibility: visible;
}

.splide__slide {
  backface-visibility: hidden;
  box-sizing: border-box;
  flex-shrink: 0;
  list-style-type: none !important;
  margin: 0;
  position: relative;
}

.splide__slide img {
  vertical-align: bottom;
}

.splide__spinner {
  animation: splide-loading 1s linear infinite;
  border: 2px solid #999;
  border-left-color: transparent;
  border-radius: 50%;
  bottom: 0;
  contain: strict;
  display: inline-block;
  height: 20px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 20px;
}

.splide__sr {
  clip: rect(0 0 0 0);
  border: 0;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.splide__toggle.is-active .splide__toggle__play, .splide__toggle__pause {
  display: none;
}

.splide__toggle.is-active .splide__toggle__pause {
  display: inline;
}

.splide__track {
  overflow: hidden;
  position: relative;
  z-index: 0;
}

@keyframes splide-loading {
  0% {
    transform: rotate(0);
  }
  to {
    transform: rotate(1turn);
  }
}
.splide__track--draggable {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
       user-select: none;
}

.splide__track--fade > .splide__list > .splide__slide {
  margin: 0 !important;
  opacity: 0;
  z-index: 0;
}

.splide__track--fade > .splide__list > .splide__slide.is-active {
  opacity: 1;
  z-index: 1;
}

.splide--rtl {
  direction: rtl;
}

.splide__track--ttb > .splide__list {
  display: block;
}

.splide__arrow {
  align-items: center;
  background: #ccc;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  height: 2em;
  justify-content: center;
  opacity: 0.7;
  padding: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2em;
  z-index: 1;
}

.splide__arrow svg {
  fill: #000;
  height: 1.2em;
  width: 1.2em;
}

.splide__arrow:hover:not(:disabled) {
  opacity: 0.9;
}

.splide__arrow:disabled {
  opacity: 0.3;
}

.splide__arrow:focus-visible {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide__arrow--prev {
  left: 1em;
}

.splide__arrow--prev svg {
  transform: scaleX(-1);
}

.splide__arrow--next {
  right: 1em;
}

.splide.is-focus-in .splide__arrow:focus {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide__pagination {
  bottom: 0.5em;
  left: 0;
  padding: 0 1em;
  position: absolute;
  right: 0;
  z-index: 1;
}

.splide__pagination__page {
  background: #ccc;
  border: 0;
  border-radius: 50%;
  display: inline-block;
  height: 8px;
  margin: 3px;
  opacity: 0.7;
  padding: 0;
  position: relative;
  transition: transform 0.2s linear;
  width: 8px;
}

.splide__pagination__page.is-active {
  background: #fff;
  transform: scale(1.4);
  z-index: 1;
}

.splide__pagination__page:hover {
  cursor: pointer;
  opacity: 0.9;
}

.splide__pagination__page:focus-visible {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide.is-focus-in .splide__pagination__page:focus {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide__progress__bar {
  background: #ccc;
  height: 3px;
}

.splide__slide {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.splide__slide:focus {
  outline: 0;
}

@supports (outline-offset: -3px) {
  .splide__slide:focus-visible {
    outline: 3px solid #0bf;
    outline-offset: -3px;
  }
}
@media screen and (-ms-high-contrast: none) {
  .splide__slide:focus-visible {
    border: 3px solid #0bf;
  }
}
@supports (outline-offset: -3px) {
  .splide.is-focus-in .splide__slide:focus {
    outline: 3px solid #0bf;
    outline-offset: -3px;
  }
}
@media screen and (-ms-high-contrast: none) {
  .splide.is-focus-in .splide__slide:focus {
    border: 3px solid #0bf;
  }
  .splide.is-focus-in .splide__track > .splide__list > .splide__slide:focus {
    border-color: #0bf;
  }
}
.splide__toggle {
  cursor: pointer;
}

.splide__toggle:focus-visible {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide.is-focus-in .splide__toggle:focus {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide__track--nav > .splide__list > .splide__slide {
  border: 3px solid transparent;
  cursor: pointer;
}

.splide__track--nav > .splide__list > .splide__slide.is-active {
  border: 3px solid #000;
}

.splide__arrows--rtl .splide__arrow--prev {
  left: auto;
  right: 1em;
}

.splide__arrows--rtl .splide__arrow--prev svg {
  transform: scaleX(1);
}

.splide__arrows--rtl .splide__arrow--next {
  left: 1em;
  right: auto;
}

.splide__arrows--rtl .splide__arrow--next svg {
  transform: scaleX(-1);
}

.splide__arrows--ttb .splide__arrow {
  left: 50%;
  transform: translate(-50%);
}

.splide__arrows--ttb .splide__arrow--prev {
  top: 1em;
}

.splide__arrows--ttb .splide__arrow--prev svg {
  transform: rotate(-90deg);
}

.splide__arrows--ttb .splide__arrow--next {
  bottom: 1em;
  top: auto;
}

.splide__arrows--ttb .splide__arrow--next svg {
  transform: rotate(90deg);
}

.splide__pagination--ttb {
  bottom: 0;
  display: flex;
  flex-direction: column;
  left: auto;
  padding: 1em 0;
  right: 0.5em;
  top: 0;
}

.l-wrapper {
  overflow: hidden;
  position: relative;
}

.l-header {
  width: 100%;
  height: 90px;
  background-color: #FFFFFF;
  border-bottom: 10px solid #005EAC;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  transition: transform 0.3s ease-out;
}
.l-header.hide {
  transform: translateY(-100%);
}
.l-header.inactive {
  transform: translateY(-100%);
}
.l-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  max-width: 1500px;
  height: 80px;
  margin-inline: auto;
  padding: 0 calc(67px * var(--font-ratio));
}
.l-header__logo {
  width: 430px;
  height: 40px;
}
.l-header__logo img {
  vertical-align: baseline;
}
.l-header__button {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 54px;
  height: 50px;
  padding: 10px 0;
}
.l-header__button .line {
  display: block;
  width: 100%;
  height: 4px;
  background-color: #005EAC;
}

@media screen and (max-width: 835px) {
  .l-header {
    height: 85px;
    border-bottom: 5px solid #005EAC;
  }
  .l-header__inner {
    padding: 0 20px;
  }
  .l-header__logo {
    width: 83%;
    height: auto;
  }
  .l-header__button {
    width: 40px;
  }
}
.l-footer {
  position: relative;
  z-index: 5;
  display: grid;
  place-content: center;
  width: 100%;
  height: 100px;
  background-color: #FFFFFF;
  position: relative;
}
.l-footer .back-to-top {
  display: grid;
  place-content: center;
  width: 80px;
  height: 80px;
  font-size: 26px;
  font-weight: 700;
  color: #005EAC;
  border-radius: 50%;
  background-color: #FFFFFF;
  border: 4px solid #005EAC;
  position: absolute;
  top: -110px;
  right: 100px;
  z-index: 5;
  box-shadow: 3px 3px 0 #000000;
  transition: 0.3s;
}
.l-footer .back-to-top span {
  font-size: 0;
}
.l-footer .back-to-top::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 14px solid transparent;
  border-left: 14px solid transparent;
  border-bottom: 18px solid #005EAC;
  border-top: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: 0.3s;
}
@media (any-hover: hover) and (any-pointer: fine) {
  .l-footer .back-to-top:hover {
    transform: translate(3px, 3px);
    box-shadow: 0 0 0 transparent;
    color: #FFFFFF;
    background-color: #005EAC;
  }
  .l-footer .back-to-top:hover::after {
    content: "";
    border-bottom: 18px solid #FFFFFF;
  }
}
.l-footer p {
  font-size: 12px;
}

@media screen and (max-width: 835px) {
  .l-footer .back-to-top {
    width: 70px;
    height: 70px;
    font-size: 24px;
    top: -100px;
    right: 30px;
  }
}
.l-container {
  max-width: 1286px;
  width: 100%;
  margin: 0 auto;
}
.l-container--pd {
  padding-left: calc(132 / var(--root-font-size) * var(--font-ratio) * 1rem);
  padding-right: calc(52 / var(--root-font-size) * var(--font-ratio) * 1rem);
}
.l-container--pr {
  padding-right: calc(52 / var(--root-font-size) * var(--font-ratio) * 1rem);
}
.l-container--pl {
  padding-left: calc(132 / var(--root-font-size) * var(--font-ratio) * 1rem);
}

@media screen and (max-width: 835px) {
  .l-container--pd {
    padding-left: calc(16 / var(--root-font-size) * var(--font-ratio) * 1rem);
    padding-right: calc(16 / var(--root-font-size) * var(--font-ratio) * 1rem);
  }
  .l-container--pr {
    padding-left: calc(16 / var(--root-font-size) * var(--font-ratio) * 1rem);
    padding-right: calc(16 / var(--root-font-size) * var(--font-ratio) * 1rem);
  }
  .l-container--pl {
    padding-left: calc(16 / var(--root-font-size) * var(--font-ratio) * 1rem);
    padding-right: calc(16 / var(--root-font-size) * var(--font-ratio) * 1rem);
  }
}
.l-navigation {
  width: 375px;
  height: 100vh;
  background-color: #005EAC;
  background-size: 80px 80px;
  background-repeat: repeat;
  background-position: left top;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 101;
  transform: translateX(0%);
  visibility: visible;
  transition: 0.3s;
}
.l-navigation[aria-hidden=true] {
  transform: translateX(100%);
  visibility: hidden;
}
.l-navigation[aria-hidden=true] .l-navigation__menu-item {
  transform: translateX(20%);
  opacity: 0;
  transition: 0.3s;
}
.l-navigation[aria-hidden=true] .l-navigation__menu-item:nth-child(1) {
  transition-delay: 0s;
}
.l-navigation[aria-hidden=true] .l-navigation__menu-item:nth-child(2) {
  transition-delay: 0s;
}
.l-navigation[aria-hidden=true] .l-navigation__menu-item:nth-child(3) {
  transition-delay: 0s;
}
.l-navigation[aria-hidden=false] .l-navigation__menu-item {
  transform: translateX(0%);
  opacity: 1;
  transition: 0.3s;
  transition-timing-function: ease-in-out;
}
.l-navigation[aria-hidden=false] .l-navigation__menu-item:nth-child(1) {
  transition-delay: 0.1s;
}
.l-navigation[aria-hidden=false] .l-navigation__menu-item:nth-child(2) {
  transition-delay: 0.2s;
}
.l-navigation[aria-hidden=false] .l-navigation__menu-item:nth-child(3) {
  transition-delay: 0.3s;
}
.l-navigation__close-button {
  width: 40px;
  height: 40px;
  position: absolute;
  top: 20px;
  right: 20px;
}
.l-navigation__container {
  width: 100%;
  height: calc(100% - 90px);
  padding: 40px 20px 40px;
}
.l-navigation__title {
  font-size: 40px;
  font-weight: 700;
  font-family: "League Spartan", sans-serif;
  line-height: 1.3;
  color: #FFFFFF;
}
.l-navigation__title span {
  display: block;
  margin-top: 16px;
  font-size: 14px;
  font-weight: 700;
}
.l-navigation__menu-item:not(:first-child) {
  margin-top: 20px;
}
.l-navigation__menu-item .title {
  font-size: 38px;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  line-height: 1;
  color: #EBFF00;
  position: relative;
  top: 9px;
  left: 0;
}
.l-navigation__menu-item .accordion {
  background-color: #FFFFFF;
}
.l-navigation__menu-item .accordion[open] > .toggle-icon::before {
  transform: rotate(180deg);
}
.l-navigation__menu-item .accordion[open] > .toggle-icon::after {
  transform: rotate(180deg);
}
.l-navigation__menu-item .accordion.manga {
  background-color: transparent;
}
.l-navigation__menu-item .accordion.manga .accordion__list {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  padding: 6px 0 30px 22px;
}
.l-navigation__menu-item .accordion.innovation .accordion__list {
  row-gap: 20px;
  padding: 20px 30px 30px;
  border-top: 1px solid #202020;
}
.l-navigation__menu-item .accordion.innovation .accordion__list .accordion__item:nth-child(n+2) {
  margin-top: 10px;
}
.l-navigation__menu-item .accordion.innovation .accordion__list .accordion__item .accordion__link {
  display: flex;
  align-items: center;
  font-size: 16px;
  font-weight: 500;
}
.l-navigation__menu-item .accordion.innovation .accordion__list .accordion__item .accordion__link svg {
  width: 14px;
  height: 14px;
  margin-left: 5px;
  overflow: visible;
}
.l-navigation__menu-item .accordion.innovation .accordion__list .accordion__item .accordion__link svg path {
  transition: 0.3s;
  stroke: #202020;
}
.l-navigation__menu-item .accordion.innovation .accordion__list .accordion__item .accordion__link svg .arrow {
  transition: 0.3s;
}
@media (any-hover: hover) and (any-pointer: fine) {
  .l-navigation__menu-item .accordion.innovation .accordion__list .accordion__item .accordion__link:hover {
    color: #005EAC;
  }
  .l-navigation__menu-item .accordion.innovation .accordion__list .accordion__item .accordion__link:hover svg path {
    stroke: #005EAC;
  }
  .l-navigation__menu-item .accordion.innovation .accordion__list .accordion__item .accordion__link:hover svg .arrow {
    transform: translate(-2589.155px, 1769px);
  }
}
.l-navigation__menu-item .accordion__content {
  overflow: hidden;
}
.l-navigation__menu-item .accordion__title {
  display: flex;
  align-items: center;
  padding: 17px 0 17px 30px;
  font-size: 16px;
  font-weight: 700;
  background-color: #FFFFFF;
}
.l-navigation__menu-item .accordion__story-num {
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 10px;
  padding: 0 2px;
  font-size: 28px;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  line-height: 1;
  background-color: var(--custom-color);
}
.l-navigation__menu-item .accordion__sub {
  border: 6px solid var(--custom-color);
  background-color: #FFFFFF;
}
.l-navigation__menu-item .accordion__sub[open] > .toggle-icon::before {
  transform: rotate(180deg);
}
.l-navigation__menu-item .accordion__sub[open] > .toggle-icon::after {
  transform: rotate(180deg);
}
.l-navigation__menu-item .accordion__sub-title {
  padding: 11px 0 11px 30px;
  font-size: 16px;
  font-weight: 700;
  background-color: #FFFFFF;
}
.l-navigation__menu-item .accordion__btn {
  color: #000;
}
.l-navigation__menu-item .accordion .toggle-icon {
  position: relative;
  transition: 0.3s;
}
.l-navigation__menu-item .accordion .toggle-icon::before {
  content: "";
  width: 20px;
  height: 2px;
  background-color: #202020;
  position: absolute;
  top: 50%;
  right: 18px;
  transition: 0.3s;
}
.l-navigation__menu-item .accordion .toggle-icon::after {
  content: "";
  width: 20px;
  height: 2px;
  background-color: #202020;
  position: absolute;
  top: 50%;
  right: 18px;
  transform: rotate(90deg);
  transition: 0.3s;
}
@media (any-hover: hover) and (any-pointer: fine) {
  .l-navigation__menu-item .accordion .toggle-icon:hover {
    color: #005EAC;
  }
  .l-navigation__menu-item .accordion .toggle-icon:hover::before {
    background-color: #005EAC;
    transform: rotate(90deg);
  }
  .l-navigation__menu-item .accordion .toggle-icon:hover::after {
    background-color: #005EAC;
    transform: rotate(180deg);
  }
}
.l-navigation__menu-item .link {
  display: block;
  background-color: #FFFFFF;
  padding: 20px 0 20px 30px;
  font-size: 16px;
  font-weight: 700;
  background-color: #FFFFFF;
  position: relative;
  letter-spacing: -0.01em;
}
.l-navigation__menu-item .link svg {
  position: absolute;
  top: 50%;
  right: 18px;
  transform: translateY(-50%);
  width: 17px;
  height: 17px;
  margin-left: 5px;
  overflow: visible;
}
.l-navigation__menu-item .link svg path {
  transition: 0.3s;
  stroke: #202020;
}
.l-navigation__menu-item .link svg .arrow {
  transition: 0.3s;
}
@media (any-hover: hover) and (any-pointer: fine) {
  .l-navigation__menu-item .link:hover {
    color: #005EAC;
  }
  .l-navigation__menu-item .link:hover svg path {
    stroke: #005EAC;
  }
  .l-navigation__menu-item .link:hover svg .arrow {
    transform: translate(-2589.155px, 1769px);
  }
}
.l-navigation__footer {
  display: grid;
  place-content: center;
  height: 90px;
  background-color: #FFFFFF;
}

@media screen and (max-width: 835px) {
  .l-navigation {
    width: 100%;
    position: fixed;
    top: 0;
    right: 0;
    transform: translateX(0%);
    visibility: visible;
    transition: 0.3s;
  }
  .l-navigation[aria-hidden=true] {
    transform: translateX(100%);
    visibility: hidden;
  }
  .l-navigation__close-button {
    width: calc(40px * var(--font-ratio));
    height: calc(40px * var(--font-ratio));
    position: absolute;
    top: calc(20px * var(--font-ratio));
    right: calc(20px * var(--font-ratio));
  }
  .l-navigation__container {
    width: 100%;
    height: calc(100% - 90px);
    padding: calc(40px * var(--font-ratio)) calc(20px * var(--font-ratio)) calc(40px * var(--font-ratio));
    overflow-y: auto;
  }
  .l-navigation__title {
    font-size: calc(40 / var(--root-font-size) * var(--font-ratio) * 1rem);
    line-height: 1.2;
  }
  .l-navigation__title span {
    display: block;
    margin-top: calc(16px * var(--font-ratio));
    font-size: calc(16 / var(--root-font-size) * var(--font-ratio) * 1rem);
  }
  .l-navigation__footer {
    display: grid;
    place-content: center;
    height: 90px;
    background-color: #FFFFFF;
  }
}
.c-button {
  display: grid;
  place-content: center;
  line-height: 1;
  background-color: #FFFFFF;
  border: 1px solid #202020;
  box-shadow: 4px 5px 0 #202020;
  font-weight: 700;
  transition: box-shadow 0.2s, background-color 0.2s, transform 0.2s;
}
@media (any-hover: hover) and (any-pointer: fine) {
  .c-button:hover {
    box-shadow: 0 0 0 transparent;
    background-color: #EBFF00;
    transform: translate(4px, 5px);
  }
}
.c-button.--small {
  width: calc(183px * var(--font-ratio));
  height: calc(47px * var(--font-ratio));
  font-size: calc(18 / var(--root-font-size) * var(--font-ratio) * 1rem);
  border-radius: 40px;
}
.c-button.--small.--arrow {
  position: relative;
  display: flex;
  align-items: center;
}
.c-button.--small.--arrow span {
  transform: translateX(6px);
}
.c-button.--small.--arrow .arrow {
  width: 0;
  height: 0;
  border-style: solid;
  border-top: calc(8px * var(--font-ratio)) solid transparent;
  border-bottom: calc(8px * var(--font-ratio)) solid transparent;
  border-left: calc(10px * var(--font-ratio)) solid #202020;
  border-right: 0;
}
.c-button.--small.--arrow .window {
  width: calc(15px * var(--font-ratio));
  height: calc(15px * var(--font-ratio));
  position: relative;
}
.c-button.--small.--arrow .window svg {
  position: absolute;
  top: 0;
  left: 0;
}
.c-button.--small.--arrow .window svg .arrow {
  fill: #202020;
}
.c-button.--small.--arrow .window svg .path {
  stroke: #202020;
}
.c-button.--medium {
  width: calc(220px * var(--font-ratio));
  height: calc(52px * var(--font-ratio));
  font-size: calc(26 / var(--root-font-size) * var(--font-ratio) * 1rem);
  border-radius: 32px;
}
.c-button.--large {
  width: calc(404px * var(--font-ratio));
  height: calc(61px * var(--font-ratio));
  font-size: calc(20 / var(--root-font-size) * var(--font-ratio) * 1rem);
  border-radius: 32px;
}
.c-button.--header {
  width: 130px;
  height: 46px;
  font-size: 18px;
  border-radius: 40px;
}
.c-button.--header span {
  display: inline-block;
  margin-top: 8px;
}
.c-button.--coming-soon {
  pointer-events: none;
  background-color: gray;
}

@media screen and (max-width: 835px) {
  .c-button {
    box-shadow: 2px 3px 0 #202020;
  }
  .c-button.--small {
    width: calc(166px * var(--font-ratio));
    height: calc(41px * var(--font-ratio));
    font-size: calc(16 / var(--root-font-size) * var(--font-ratio) * 1rem);
    border-radius: 40px;
  }
  .c-button.--small.--arrow {
    position: relative;
    display: flex;
    align-items: center;
  }
  .c-button.--small.--arrow span {
    transform: translate(calc(8px * var(--font-ratio)), calc(1px * var(--font-ratio)));
  }
  .c-button.--small.--arrow .arrow {
    width: 0;
    height: 0;
    border-style: solid;
    border-top: calc(8px * var(--font-ratio)) solid transparent;
    border-bottom: calc(8px * var(--font-ratio)) solid transparent;
    border-left: calc(10px * var(--font-ratio)) solid #202020;
    border-right: 0;
  }
  .c-button.--small.--arrow .window {
    width: calc(15px * var(--font-ratio));
    height: calc(15px * var(--font-ratio));
    position: relative;
  }
  .c-button.--small.--arrow .window svg {
    position: absolute;
    top: 0;
    left: 0;
  }
  .c-button.--small.--arrow .window svg .path {
    stroke: #202020;
  }
  .c-button.--medium {
    width: calc(158px * var(--font-ratio));
    height: calc(49px * var(--font-ratio));
    font-size: calc(22 / var(--root-font-size) * var(--font-ratio) * 1rem);
    border-radius: 80px;
  }
  .c-button.--large {
    width: calc(275px * var(--font-ratio));
    height: calc(50px * var(--font-ratio));
    font-size: calc(16 / var(--root-font-size) * var(--font-ratio) * 1rem);
    border-radius: 80px;
  }
}
.c-banner--a {
  display: flex;
  width: calc(460px * var(--font-ratio));
  border: 1px solid #000000;
  box-shadow: 4px 4px 0px #000000;
  transition: 0.3s;
}
.c-banner--a img {
  width: 50%;
}
.c-banner--a p {
  display: grid;
  place-content: center;
  width: 50%;
  font-size: calc(18 / var(--root-font-size) * var(--font-ratio) * 1rem);
  font-weight: 700;
  line-height: 1.4;
  color: #005EAC;
  background-color: #FFFFFF;
  transition: 0.3s;
}
.c-banner--a p span {
  position: relative;
}
.c-banner--a p span::after {
  display: inline-block;
  height: calc(14 / var(--root-font-size) * var(--font-ratio) * 1rem);
  width: calc(14 / var(--root-font-size) * var(--font-ratio) * 1rem);
  margin-left: calc(4 / var(--root-font-size) * var(--font-ratio) * 1rem);
  -webkit-mask: url("https://www.shimz.co.jp/newborn/assets/img/common/icon_blank.svg") no-repeat center center/contain;
          mask: url("https://www.shimz.co.jp/newborn/assets/img/common/icon_blank.svg") no-repeat center center/contain;
  background-color: #005EAC;
  transition: 0.3s;
  content: "";
}
@media (any-hover: hover) and (any-pointer: fine) {
  .c-banner--a:hover {
    transform: translate(4px, 4px);
    box-shadow: 0 0 0 transparent;
  }
  .c-banner--a:hover p {
    color: #FFFFFF;
    background-color: #005EAC;
  }
  .c-banner--a:hover p span::after {
    background-color: #FFFFFF;
  }
}
.c-banner--b {
  display: flex;
  width: calc(800px * var(--font-ratio));
  border: 1px solid #000000;
  box-shadow: 4px 4px 0px #000000;
  transition: 0.3s;
  position: relative;
}
.c-banner--b .badge {
  display: grid;
  place-content: center;
  width: calc(132px * var(--font-ratio));
  height: calc(132px * var(--font-ratio));
  background: url(https://www.shimz.co.jp/newborn/assets/img/common/icon_badge.svg) no-repeat center center/contain;
  font-size: calc(16 / var(--root-font-size) * var(--font-ratio) * 1rem);
  font-weight: 700;
  text-align: center;
  line-height: 1.2;
  position: absolute;
  top: calc(-66px * var(--font-ratio));
  right: calc(-20px * var(--font-ratio));
}
.c-banner--b .img {
  width: 50%;
}
.c-banner--b .text {
  display: flex;
  align-items: center;
  width: 50%;
  padding-left: calc(50px * var(--font-ratio));
  background-color: #FFFFFF;
  transition: 0.3s;
}
.c-banner--b .text p {
  font-size: calc(26 / var(--root-font-size) * var(--font-ratio) * 1rem);
  font-weight: 700;
  line-height: 1.4;
  color: #005EAC;
  transition: 0.3s;
}
.c-banner--b .text p > span {
  display: grid;
  place-content: center;
  margin-top: calc(10px * var(--font-ratio));
  padding: calc(8px * var(--font-ratio)) calc(40px * var(--font-ratio));
  font-size: calc(18 / var(--root-font-size) * var(--font-ratio) * 1rem);
  font-weight: 700;
  color: #FFFFFF;
  border-radius: 40px;
  background-color: #005EAC;
  transition: 0.3s;
}
.c-banner--b .text p > span span {
  position: relative;
}
.c-banner--b .text p > span span::after {
  display: inline-block;
  height: calc(14 / var(--root-font-size) * var(--font-ratio) * 1rem);
  width: calc(14 / var(--root-font-size) * var(--font-ratio) * 1rem);
  margin-left: calc(4 / var(--root-font-size) * var(--font-ratio) * 1rem);
  -webkit-mask: url("https://www.shimz.co.jp/newborn/assets/img/common/icon_blank.svg") no-repeat center center/contain;
          mask: url("https://www.shimz.co.jp/newborn/assets/img/common/icon_blank.svg") no-repeat center center/contain;
  background-color: #FFFFFF;
  transition: 0.3s;
  content: "";
}
@media (any-hover: hover) and (any-pointer: fine) {
  .c-banner--b:hover {
    transform: translate(4px, 4px);
    box-shadow: 0 0 0 transparent;
  }
  .c-banner--b:hover .text {
    color: #FFFFFF;
    background-color: #005EAC;
  }
  .c-banner--b:hover .text p {
    color: #FFFFFF;
  }
  .c-banner--b:hover .text p > span {
    background-color: #FFFFFF;
    color: #005EAC;
  }
  .c-banner--b:hover .text p > span span::after {
    background-color: #005EAC;
  }
}

@media screen and (max-width: 835px) {
  .c-banner--a {
    width: calc(280px * var(--font-ratio));
  }
  .c-banner--a p {
    font-size: calc(14 / var(--root-font-size) * var(--font-ratio) * 1rem);
  }
  .c-banner--b {
    flex-direction: column;
    width: calc(335px * var(--font-ratio));
    border: none;
  }
  .c-banner--b .badge {
    display: grid;
    place-content: center;
    width: calc(114px * var(--font-ratio));
    height: calc(114px * var(--font-ratio));
    background: url(https://www.shimz.co.jp/newborn/assets/img/common/icon_badge.svg) no-repeat center center/contain;
    font-size: calc(13 / var(--root-font-size) * var(--font-ratio) * 1rem);
    font-weight: 700;
    line-height: 1.2;
    position: absolute;
    top: calc(-60px * var(--font-ratio));
    right: calc(-14px * var(--font-ratio));
  }
  .c-banner--b .img {
    width: 100%;
  }
  .c-banner--b .img img {
    width: 100%;
  }
  .c-banner--b .text {
    display: block;
    width: 100%;
    padding: calc(25px * var(--font-ratio));
  }
  .c-banner--b .text p > span {
    width: -moz-fit-content;
    width: fit-content;
    margin-top: calc(18px * var(--font-ratio));
    margin-left: auto;
    padding: calc(8px * var(--font-ratio)) calc(24px * var(--font-ratio));
    font-size: calc(16 / var(--root-font-size) * var(--font-ratio) * 1rem);
    border-radius: 40px;
  }
}
.c-label--a {
  width: calc(460px * var(--font-ratio));
}
.c-label--a .text {
  display: flex;
  align-items: flex-end;
}
.c-label--a .text .main {
  margin-right: auto;
  padding: 8px 8px 4px;
  font-size: calc(28 / var(--root-font-size) * var(--font-ratio) * 1rem);
  font-weight: 700;
  line-height: 1;
  background-color: var(--custom-color);
}
.c-label--a .text .sub {
  font-size: calc(24 / var(--root-font-size) * var(--font-ratio) * 1rem);
  font-weight: 700;
  line-height: 1;
}
.c-label--a .img {
  position: relative;
  box-shadow: 4px 4px 0 #000000;
}
.c-label--a .img::before {
  content: "";
  width: 100%;
  height: 100%;
  border: 10px solid var(--custom-color);
  position: absolute;
  top: 0;
  left: 0;
}
.c-label--b {
  width: -moz-fit-content;
  width: fit-content;
  padding: calc(18px * var(--font-ratio)) calc(68px * var(--font-ratio)) calc(8px * var(--font-ratio));
  font-size: calc(26 / var(--root-font-size) * var(--font-ratio) * 1rem);
  font-weight: 700;
  line-height: 1;
  border-radius: 8px;
  background-color: #EBFF00;
  box-shadow: 4px 4px 0 #000000;
}

@media screen and (max-width: 835px) {
  .c-label--a {
    width: calc(275px * var(--font-ratio));
  }
  .c-label--a .text .main {
    padding: 8px 6px 4px;
    font-size: calc(18 / var(--root-font-size) * var(--font-ratio) * 1rem);
  }
  .c-label--a .text .sub {
    font-size: calc(14 / var(--root-font-size) * var(--font-ratio) * 1rem);
  }
  .c-label--a .img::before {
    border: 8px solid var(--custom-color);
  }
  .c-label--b {
    width: -moz-fit-content;
    width: fit-content;
    padding: calc(12px * var(--font-ratio)) calc(40px * var(--font-ratio)) calc(7px * var(--font-ratio));
    font-size: calc(24 / var(--root-font-size) * var(--font-ratio) * 1rem);
    border-radius: 8px;
  }
}
.c-card--a {
  display: flex;
  align-items: center;
  width: calc(708px * var(--font-ratio));
  padding: calc(30px * var(--font-ratio)) calc(40px * var(--font-ratio));
  background-color: #FFFFFF;
  border: 1px solid #202020;
  box-shadow: 3px 3px 0 #000000;
}
.c-card--a .img {
  width: calc(240px * var(--font-ratio));
}
.c-card--a .img img {
  width: 100%;
}
.c-card--a .text {
  width: calc(100% - 240px * var(--font-ratio));
  padding-left: calc(50px * var(--font-ratio));
}
.c-card--a .text .name {
  font-size: calc(26 / var(--root-font-size) * var(--font-ratio) * 1rem);
  font-weight: 700;
}
.c-card--a .text .role {
  margin-top: calc(16px * var(--font-ratio));
  font-size: calc(14 / var(--root-font-size) * var(--font-ratio) * 1rem);
  font-weight: 700;
}
.c-card--a .text .description {
  margin-top: calc(16px * var(--font-ratio));
  font-size: calc(14 / var(--root-font-size) * var(--font-ratio) * 1rem);
}
.c-card--b {
  display: flex;
  flex-direction: column;
  width: calc(364px * var(--font-ratio));
  padding: calc(16px * var(--font-ratio));
  border: 1px solid #202020;
  border-radius: 20px;
  background-color: #FFFFFF;
  box-shadow: 3px 3px 0 #000000;
}
.c-card--b .img {
  border: 2px solid #202020;
  overflow: hidden;
  border-radius: 16px;
  position: relative;
}
.c-card--b .img img {
  width: 100%;
  transition: 0.3s;
}
.c-card--b .img .play {
  width: calc(70px * var(--font-ratio));
  height: calc(70px * var(--font-ratio));
  position: absolute;
  inset: 0;
  margin: auto;
}
.c-card--b .text {
  margin-top: calc(10px * var(--font-ratio));
  margin-bottom: auto;
}
.c-card--b .text .label {
  display: flex;
}
.c-card--b .text .label span {
  display: inline-block;
  padding: calc(2px * var(--font-ratio)) calc(8px * var(--font-ratio));
  font-size: calc(14 / var(--root-font-size) * var(--font-ratio) * 1rem);
  font-weight: 700;
  color: #FFFFFF;
  background-color: #202020;
}
.c-card--b .text .label time {
  margin-left: auto;
  font-size: calc(18 / var(--root-font-size) * var(--font-ratio) * 1rem);
  font-weight: 700;
}
.c-card--b .text .description {
  margin-top: calc(16px * var(--font-ratio));
  font-size: calc(16 / var(--root-font-size) * var(--font-ratio) * 1rem);
  font-weight: 700;
}
.c-card--b .button {
  margin-top: calc(16px * var(--font-ratio));
  margin-left: auto;
}
@media (any-hover: hover) and (any-pointer: fine) {
  .c-card--b:hover .img img:not(.play) {
    transform: scale(1.1);
  }
  .c-card--b:hover .button {
    background-color: #202020;
    color: #FFFFFF;
    transform: translate(4px, 4px);
    box-shadow: 0 0 0 transparent;
  }
  .c-card--b:hover .button .arrow {
    border-left: calc(10px * var(--font-ratio)) solid #FFFFFF;
  }
  .c-card--b:hover .button .window svg .arrow {
    fill: #FFFFFF;
  }
  .c-card--b:hover .button .window svg .path {
    stroke: #FFFFFF;
  }
}
.c-card--c {
  display: flex;
  width: calc(708px * var(--font-ratio));
  padding: calc(40px * var(--font-ratio));
  border: 10px solid var(--custom-color);
  background-color: #FFFFFF;
}
.c-card--c .img {
  width: calc(160px * var(--font-ratio));
  height: calc(160px * var(--font-ratio));
  overflow: hidden;
}
.c-card--c .text {
  width: calc(100% - 160px * var(--font-ratio));
  padding-left: calc(20px * var(--font-ratio));
}
.c-card--c .text .name {
  font-size: calc(20px * var(--font-ratio));
  font-weight: 700;
}
.c-card--c .text .description {
  margin-top: calc(10px * var(--font-ratio));
  font-size: calc(16px * var(--font-ratio));
}
.c-card--c .text .sns {
  display: flex;
  gap: calc(20px * var(--font-ratio));
  margin-top: calc(28px * var(--font-ratio));
}
.c-card--c .text .sns a {
  display: flex;
  align-items: center;
  gap: calc(15px * var(--font-ratio));
}
.c-card--c .text .sns a img {
  width: calc(30px * var(--font-ratio));
  height: calc(30px * var(--font-ratio));
}
.c-card--c .text .sns a.ico_homepage img {
  width: calc(40px * var(--font-ratio));
  height: calc(40px * var(--font-ratio));
}
.c-card--d {
  width: calc(708px * var(--font-ratio));
  padding: calc(30px * var(--font-ratio)) calc(40px * var(--font-ratio));
  background-color: #FFFFFF;
  border: 1px solid #202020;
  box-shadow: 3px 3px 0 #000000;
}
.c-card--d .top {
  display: flex;
  align-items: center;
}
.c-card--d .top .img {
  width: calc(240px * var(--font-ratio));
}
.c-card--d .top .img img {
  width: 100%;
}
.c-card--d .top .text {
  width: calc(100% - 240px * var(--font-ratio));
  padding-left: calc(50px * var(--font-ratio));
}
.c-card--d .top .text .name {
  font-size: calc(26 / var(--root-font-size) * var(--font-ratio) * 1rem);
  font-weight: 700;
}
.c-card--d .top .text .role {
  margin-top: calc(16px * var(--font-ratio));
  font-size: calc(14 / var(--root-font-size) * var(--font-ratio) * 1rem);
  font-weight: 700;
}
.c-card--d .top .text .description {
  margin-top: calc(16px * var(--font-ratio));
  font-size: calc(14 / var(--root-font-size) * var(--font-ratio) * 1rem);
}
.c-card--d .bottom {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -moz-column-gap: calc(26px * var(--font-ratio));
       column-gap: calc(26px * var(--font-ratio));
  margin-top: calc(24px * var(--font-ratio));
  align-items: center;
}
.c-card--d .bottom .description {
  font-size: calc(14 / var(--root-font-size) * var(--font-ratio) * 1rem);
}

@media screen and (max-width: 835px) {
  .c-card--a {
    align-items: flex-start;
    flex-direction: column;
    width: calc(335px * var(--font-ratio));
  }
  .c-card--a .img {
    width: 100%;
  }
  .c-card--a .text {
    width: 100%;
    padding-left: 0;
  }
  .c-card--a .text .name {
    margin-top: calc(16px * var(--font-ratio));
  }
  .c-card--a .text .role {
    margin-top: calc(16px * var(--font-ratio));
  }
  .c-card--a .text .description {
    margin-top: calc(16px * var(--font-ratio));
  }
  .c-card--b {
    width: calc(335px * var(--font-ratio));
    padding: calc(12px * var(--font-ratio));
  }
  .c-card--b .text {
    margin-top: calc(10px * var(--font-ratio));
    margin-bottom: auto;
  }
  .c-card--b .text .label {
    display: flex;
  }
  .c-card--b .text .label span {
    padding: calc(2px * var(--font-ratio)) calc(8px * var(--font-ratio));
    font-size: calc(12 / var(--root-font-size) * var(--font-ratio) * 1rem);
  }
  .c-card--b .text .label time {
    margin-left: auto;
    font-size: calc(16 / var(--root-font-size) * var(--font-ratio) * 1rem);
  }
  .c-card--b .text .description {
    margin-top: calc(12px * var(--font-ratio));
  }
  .c-card--b .button {
    margin-top: calc(10px * var(--font-ratio));
  }
  .c-card--c {
    flex-direction: column;
    width: calc(335px * var(--font-ratio));
    padding: calc(20px * var(--font-ratio)) calc(20px * var(--font-ratio)) calc(30px * var(--font-ratio));
    border: 10px solid var(--custom-color);
    background-color: #FFFFFF;
    position: relative;
  }
  .c-card--c .img {
    width: calc(105px * var(--font-ratio));
    height: calc(105px * var(--font-ratio));
  }
  .c-card--c .text {
    width: 100%;
    padding-left: 0;
  }
  .c-card--c .text .name {
    position: absolute;
    top: calc(57px * var(--font-ratio));
    left: calc(146px * var(--font-ratio));
    font-size: calc(24px * var(--font-ratio));
  }
  .c-card--c .text .description {
    margin-top: calc(20px * var(--font-ratio));
  }
  .c-card--c .text .sns {
    display: flex;
    gap: calc(20px * var(--font-ratio));
    justify-content: space-around;
    margin-top: calc(28px * var(--font-ratio));
  }
  .c-card--c .text .sns a {
    display: flex;
    align-items: flex-end;
    gap: calc(10px * var(--font-ratio));
  }
  .c-card--c .text .sns a img {
    width: calc(28px * var(--font-ratio));
    height: calc(28px * var(--font-ratio));
  }
  .c-card--c .text .sns a span {
    line-height: 1;
  }
  .c-card--d {
    width: calc(335px * var(--font-ratio));
  }
  .c-card--d .top {
    align-items: flex-start;
    flex-direction: column;
  }
  .c-card--d .top .img {
    width: 100%;
  }
  .c-card--d .top .text {
    width: 100%;
    padding-left: 0;
  }
  .c-card--d .top .text .name {
    margin-top: calc(16px * var(--font-ratio));
  }
  .c-card--d .top .text .role {
    margin-top: calc(16px * var(--font-ratio));
  }
  .c-card--d .top .text .description {
    margin-top: calc(16px * var(--font-ratio));
  }
  .c-card--d .bottom {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, auto);
    row-gap: calc(14px * var(--font-ratio));
    align-items: start;
  }
  .c-card--d .bottom .description {
    grid-column: 1/span 2;
  }
}
.c-dialog--yt {
  width: 80%;
  max-width: 800px;
  padding: 0;
  border: none;
  background-color: transparent;
  overflow: visible;
  transition-behavior: allow-discrete;
}
.c-dialog--yt[open] {
  animation: show-modal 0.6s ease normal;
}
.c-dialog--yt[open]::backdrop {
  animation: show-modal-backdrop 0.6s ease normal;
}
.c-dialog--yt.hide {
  animation: hide-modal 0.6s ease normal;
}
.c-dialog--yt.hide::backdrop {
  animation: hide-modal-backdrop 0.6s ease normal;
}
.c-dialog--yt::backdrop {
  background: #202020;
  opacity: 0.6;
  transition-behavior: allow-discrete;
}
.c-dialog--yt .c-dialog__main {
  width: 100%;
  aspect-ratio: 16/9;
}
.c-dialog--yt .c-dialog__main iframe {
  width: 100%;
  height: 100%;
}
.c-dialog--yt .c-dialog__close {
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background-color: #FFFFFF;
  box-shadow: 3px 3px 0 #000000;
  font-size: 0;
  color: transparent;
  position: absolute;
  top: -80px;
  right: -80px;
  transition: 0.3s;
  z-index: 1;
}
.c-dialog--yt .c-dialog__close::before {
  content: "";
  width: 30px;
  height: 3px;
  background-color: #000000;
  position: absolute;
  inset: 0;
  margin: auto;
  transform: rotate(45deg);
}
.c-dialog--yt .c-dialog__close::after {
  content: "";
  width: 30px;
  height: 3px;
  background-color: #000000;
  position: absolute;
  inset: 0;
  margin: auto;
  transform: rotate(-45deg);
}
@media (any-hover: hover) and (any-pointer: fine) {
  .c-dialog--yt .c-dialog__close:hover {
    background-color: #202020;
    color: #FFFFFF;
    transform: translate(3px, 3px);
    box-shadow: 0 0 0 transparent;
    cursor: pointer;
  }
}

@keyframes show-modal {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes show-modal-backdrop {
  from {
    opacity: 0;
  }
  to {
    opacity: 0.6;
  }
}
@keyframes hide-modal {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes hide-modal-backdrop {
  from {
    opacity: 0.6;
  }
  to {
    opacity: 0;
  }
}
@media screen and (max-width: 835px) {
  .c-dialog--yt {
    width: 100%;
    padding: 0 calc(10px * var(--font-ratio));
    border: none;
  }
  .c-dialog--yt .c-dialog__close {
    width: calc(42px * var(--font-ratio));
    height: calc(42px * var(--font-ratio));
    top: calc(-60px * var(--font-ratio));
    right: 0;
  }
  .c-dialog--yt .c-dialog__close::before {
    content: "";
    width: calc(18px * var(--font-ratio));
    height: 2px;
  }
  .c-dialog--yt .c-dialog__close::after {
    content: "";
    width: calc(18px * var(--font-ratio));
    height: 2px;
  }
}
.c-manga-slider--pc {
  width: 100%;
  padding: calc(50px * var(--font-ratio)) 0 40px;
  position: relative;
  z-index: 1;
}
.c-manga-slider--pc::after {
  content: "";
  width: 100vw;
  height: 100%;
  position: absolute;
  top: 0;
  left: calc(50% - 50vw);
  background-color: #F5FFFF;
  z-index: -1;
}
.c-manga-slider--pc .link {
  display: block;
  width: calc(190px * var(--font-ratio));
  padding: calc(15px * var(--font-ratio));
  background-color: #FFFFFF;
  text-align: center;
  color: #005EAC;
  border: 3px solid var(--custom-color);
  border-radius: 8px;
  box-shadow: 4px 4px 0 #005EAC;
  position: absolute;
  bottom: calc(100px * var(--font-ratio));
  right: calc(-100px * var(--font-ratio));
  z-index: 1;
  transition: 0.3s;
}
.c-manga-slider--pc .link::after {
  content: "";
  position: absolute;
}
.c-manga-slider--pc .link-01::after {
  width: calc(49px * var(--font-ratio));
  height: calc(104px * var(--font-ratio));
  background: url(https://www.shimz.co.jp/newborn/assets/img/story-01/ph_slider-link.png) no-repeat center center/contain;
  top: calc(-50px * var(--font-ratio));
  right: calc(-10px * var(--font-ratio));
}
.c-manga-slider--pc .link-02::after {
  width: calc(75px * var(--font-ratio));
  height: calc(88px * var(--font-ratio));
  background: url(https://www.shimz.co.jp/newborn/assets/img/story-02/ph_slider-link.png) no-repeat center center/contain;
  top: calc(-85px * var(--font-ratio));
  left: 50%;
  transform: translateX(-50%);
}
.c-manga-slider--pc .link-02 .link__text {
  display: inline-block;
  font-size: calc(16 / var(--root-font-size) * var(--font-ratio) * 1rem);
}
.c-manga-slider--pc .link span {
  font-weight: 700;
  line-height: 1.2;
}
.c-manga-slider--pc .link__text {
  font-size: calc(18 / var(--root-font-size) * var(--font-ratio) * 1rem);
}
.c-manga-slider--pc .link__text--arrow {
  display: block;
  position: relative;
}
.c-manga-slider--pc .link__text--arrow::after {
  content: "";
  display: block;
  width: calc(12 / var(--root-font-size) * var(--font-ratio) * 1rem);
  height: calc(12 / var(--root-font-size) * var(--font-ratio) * 1rem);
  -webkit-mask: url("https://www.shimz.co.jp/newborn/assets/img/common/icon_blank.svg") no-repeat center center/contain;
          mask: url("https://www.shimz.co.jp/newborn/assets/img/common/icon_blank.svg") no-repeat center center/contain;
  background-color: #005EAC;
  position: absolute;
  top: 50%;
  right: 2%;
  transform: translateY(-60%);
}
@media (any-hover: hover) and (any-pointer: fine) {
  .c-manga-slider--pc .link:hover {
    transform: translate(4px, 4px);
    box-shadow: 0 0 0 transparent;
  }
}
.c-manga-slider--pc .manga-slider__item {
  opacity: 0.3;
}
.c-manga-slider--pc .manga-slider__item.is-active {
  opacity: 1;
}
.c-manga-slider--pc .manga-slider-arrows {
  display: flex;
  justify-content: center;
  gap: 24px;
  margin-top: calc(24px * var(--font-ratio));
  position: relative;
}
.c-manga-slider--pc .manga-slider-arrows .manga-slider-arrow {
  display: flex;
  flex-direction: column;
  width: 64px;
  height: 44px;
  background-color: #FFFFFF;
  border: 1px solid #202020;
  box-shadow: 2px 2px 0 #000000;
  position: static;
  transform: translate(0);
  opacity: 1;
  transition: transform 0.3s, box-shadow 0.3s;
}
@media (any-hover: hover) and (any-pointer: fine) {
  .c-manga-slider--pc .manga-slider-arrows .manga-slider-arrow:hover {
    transform: translate(2px, 2px);
    box-shadow: 0 0 0 transparent;
  }
}
.c-manga-slider--pc .manga-slider-arrows .manga-slider-arrow:disabled {
  opacity: 0.5;
  pointer-events: none;
}
.c-manga-slider--pc .manga-slider-arrows .manga-slider-arrow svg {
  display: none;
}
.c-manga-slider--pc .manga-slider-arrows .manga-slider-arrow::before {
  content: "";
  width: 0;
  height: 0;
  position: absolute;
  top: 6px;
}
.c-manga-slider--pc .manga-slider-arrows .manga-slider-arrow::after {
  width: 100%;
  height: 1rem;
  font-size: 10px;
  text-align: center;
  color: #202020;
  position: absolute;
  top: 22px;
  left: 0;
}
.c-manga-slider--pc .manga-slider-arrows .manga-slider--prev {
  order: 1;
  border-radius: 8px 30px 30px 8px;
}
.c-manga-slider--pc .manga-slider-arrows .manga-slider--prev::before {
  border-style: solid;
  border-top: 9px solid transparent;
  border-bottom: 9px solid transparent;
  border-left: 10px solid #000000;
  border-right: 0;
}
.c-manga-slider--pc .manga-slider-arrows .manga-slider--prev::after {
  content: "前のページ";
}
.c-manga-slider--pc .manga-slider-arrows .manga-slider-button--first {
  display: grid;
  place-content: center;
  width: 114px;
  height: 44px;
  font-size: 18px;
  font-weight: 700;
  color: #202020;
  border: 1px solid #202020;
  border-radius: 8px;
  background-color: #FFFFFF;
  box-shadow: 2px 2px 0 #000000;
  order: 2;
  transition: transform 0.3s, box-shadow 0.3s;
}
@media (any-hover: hover) and (any-pointer: fine) {
  .c-manga-slider--pc .manga-slider-arrows .manga-slider-button--first:hover {
    transform: translate(2px, 2px);
    box-shadow: 0 0 0 transparent;
  }
}
.c-manga-slider--pc .manga-slider-arrows .manga-slider--next {
  border-radius: 30px 8px 8px 30px;
  order: 3;
}
.c-manga-slider--pc .manga-slider-arrows .manga-slider--next::before {
  border-style: solid;
  border-top: 9px solid transparent;
  border-bottom: 9px solid transparent;
  border-right: 10px solid #000000;
  border-left: 0;
}
.c-manga-slider--pc .manga-slider-arrows .manga-slider--next::after {
  content: "次のページ";
}
.c-manga-slider--sp {
  display: none;
}

@media screen and (max-width: 835px) {
  .c-manga-slider--pc {
    display: none;
  }
  .c-manga-slider--sp {
    display: block;
    width: 100%;
    padding: calc(34px * var(--font-ratio)) 0 calc(40px * var(--font-ratio));
    position: relative;
    z-index: 1;
  }
  .c-manga-slider--sp::after {
    content: "";
    width: 100vw;
    height: 100%;
    position: absolute;
    top: 0;
    left: calc(50% - 50vw);
    background-color: #F5FFFF;
    z-index: -1;
  }
  .c-manga-slider--sp .manga-slider-arrows {
    display: flex;
    justify-content: center;
    gap: calc(14px * var(--font-ratio));
    margin-top: calc(24px * var(--font-ratio));
    position: relative;
  }
  .c-manga-slider--sp .manga-slider-arrows .manga-slider-arrow {
    width: calc(64px * var(--font-ratio));
    height: calc(44px * var(--font-ratio));
    background-color: #FFFFFF;
    border: 1px solid #202020;
    box-shadow: 2px 2px 0 #000000;
    position: static;
    transform: translate(0);
    opacity: 1;
    transition: transform 0.3s, box-shadow 0.3s;
  }
  .c-manga-slider--sp .manga-slider-arrows .manga-slider-arrow:disabled {
    opacity: 0.5;
    pointer-events: none;
  }
  .c-manga-slider--sp .manga-slider-arrows .manga-slider-arrow svg {
    display: none;
  }
  .c-manga-slider--sp .manga-slider-arrows .manga-slider-arrow::before {
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    top: calc(6px * var(--font-ratio));
  }
  .c-manga-slider--sp .manga-slider-arrows .manga-slider-arrow::after {
    width: 100%;
    height: calc(10px * var(--font-ratio));
    font-size: calc(10px * var(--font-ratio));
    text-align: center;
    color: #202020;
    position: absolute;
    top: calc(22px * var(--font-ratio));
    left: 0;
  }
  .c-manga-slider--sp .manga-slider-arrows .manga-slider--prev {
    order: 1;
    border-radius: 8px 80px 80px 8px;
  }
  .c-manga-slider--sp .manga-slider-arrows .manga-slider--prev::before {
    border-style: solid;
    border-top: calc(9px * var(--font-ratio)) solid transparent;
    border-bottom: calc(9px * var(--font-ratio)) solid transparent;
    border-left: calc(10px * var(--font-ratio)) solid #000000;
    border-right: 0;
  }
  .c-manga-slider--sp .manga-slider-arrows .manga-slider--prev::after {
    content: "前のページ";
  }
  .c-manga-slider--sp .manga-slider-arrows .manga-slider-button--first {
    display: grid;
    place-content: center;
    width: calc(180px * var(--font-ratio));
    height: calc(44px * var(--font-ratio));
    font-size: calc(18 / var(--root-font-size) * var(--font-ratio) * 1rem);
    font-weight: 700;
    color: #202020;
    border: 1px solid #202020;
    border-radius: 8px;
    background-color: #FFFFFF;
    box-shadow: 2px 2px 0 #000000;
    order: 2;
    transition: transform 0.3s, box-shadow 0.3s;
  }
  .c-manga-slider--sp .manga-slider-arrows .manga-slider--next {
    border-radius: 80px 8px 8px 80px;
    order: 3;
  }
  .c-manga-slider--sp .manga-slider-arrows .manga-slider--next::before {
    border-style: solid;
    border-top: calc(9px * var(--font-ratio)) solid transparent;
    border-bottom: calc(9px * var(--font-ratio)) solid transparent;
    border-right: calc(10px * var(--font-ratio)) solid #000000;
    border-left: 0;
  }
  .c-manga-slider--sp .manga-slider-arrows .manga-slider--next::after {
    content: "次のページ";
  }
}
.u-color--blue {
  color: #005EAC !important;
}
.u-color--yellow {
  color: #EBFF00 !important;
}
.u-color--orange {
  color: #FF9D00 !important;
}
.u-color--green {
  color: #7EF859 !important;
}
.u-color--pink {
  color: #FF67D0 !important;
}
.u-color--purple {
  color: #CC6AFF !important;
}
.u-color--red {
  color: #F25555 !important;
}

.u-bgcolor--blue {
  background-color: #005EAC !important;
}
.u-bgcolor--yellow {
  background-color: #EBFF00 !important;
}
.u-bgcolor--orange {
  background-color: #FF9D00 !important;
}
.u-bgcolor--green {
  background-color: #7EF859 !important;
}
.u-bgcolor--pink {
  background-color: #FF67D0 !important;
}
.u-bgcolor--purple {
  background-color: #CC6AFF !important;
}
.u-bgcolor--red {
  background-color: #F25555 !important;
}

.u-text--lowercase {
  text-transform: lowercase !important;
}

.u-text--uppercase {
  text-transform: uppercase !important;
}

.u-text--capitalize {
  text-transform: capitalize !important;
}

.u-fw--regular {
  font-weight: 400 !important;
}

.u-fw--medium {
  font-weight: 500 !important;
}

.u-fw--bold {
  font-weight: 700 !important;
}

.u-font--italic {
  font-style: italic !important;
}

.u-ff--sans-serif {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic Pro", "Yu Gothic", sans-serif !important;
}

.u-ff--serif {
  font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif !important;
}

.u-ff--spartan {
  font-family: "League Spartan", sans-serif !important;
}

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

.u-d-inline {
  display: inline !important;
}

.u-d-inline-block {
  display: inline-block !important;
}

.u-d-block {
  display: block !important;
}

.u-d-table {
  display: table !important;
}

.u-d-table-row {
  display: table-row !important;
}

.u-d-table-cell {
  display: table-cell !important;
}

.u-d-flex {
  display: flex !important;
}

.u-d-inline-flex {
  display: inline-flex !important;
}

@media screen and (min-width: 835.02px) {
  .u-d-sm-none {
    display: none !important;
  }
  .u-d-sm-inline {
    display: inline !important;
  }
  .u-d-sm-inline-block {
    display: inline-block !important;
  }
  .u-d-sm-block {
    display: block !important;
  }
  .u-d-sm-table {
    display: table !important;
  }
  .u-d-sm-table-row {
    display: table-row !important;
  }
  .u-d-sm-table-cell {
    display: table-cell !important;
  }
  .u-d-sm-flex {
    display: flex !important;
  }
  .u-d-sm-inline-flex {
    display: inline-flex !important;
  }
}
@media screen and (min-width: 1024px) {
  .u-d-md-none {
    display: none !important;
  }
  .u-d-md-inline {
    display: inline !important;
  }
  .u-d-md-inline-block {
    display: inline-block !important;
  }
  .u-d-md-block {
    display: block !important;
  }
  .u-d-md-table {
    display: table !important;
  }
  .u-d-md-table-row {
    display: table-row !important;
  }
  .u-d-md-table-cell {
    display: table-cell !important;
  }
  .u-d-md-flex {
    display: flex !important;
  }
  .u-d-md-inline-flex {
    display: inline-flex !important;
  }
}
@media screen and (min-width: 1500px) {
  .u-d-lg-none {
    display: none !important;
  }
  .u-d-lg-inline {
    display: inline !important;
  }
  .u-d-lg-inline-block {
    display: inline-block !important;
  }
  .u-d-lg-block {
    display: block !important;
  }
  .u-d-lg-table {
    display: table !important;
  }
  .u-d-lg-table-row {
    display: table-row !important;
  }
  .u-d-lg-table-cell {
    display: table-cell !important;
  }
  .u-d-lg-flex {
    display: flex !important;
  }
  .u-d-lg-inline-flex {
    display: inline-flex !important;
  }
}
.u-only-pc {
  display: block !important;
}
@media screen and (max-width: 835px) {
  .u-only-pc {
    display: none !important;
  }
}
.u-only-sp {
  display: none !important;
}
@media screen and (max-width: 835px) {
  .u-only-sp {
    display: block !important;
  }
}
.u-only-tab {
  display: none !important;
}
@media screen and (max-width: 1023.98px) {
  .u-only-tab {
    display: block !important;
  }
}

.u-d-inline-block-pc {
  display: inline-block !important;
}
@media screen and (max-width: 1023.98px) {
  .u-d-inline-block-pc {
    display: block !important;
  }
}

.u-device-only {
  display: none !important;
}
.device .u-device-only {
  display: block !important;
}

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

.p-top .p-kv {
  min-height: 100vh;
  position: relative;
}
.p-top .p-kv-sky {
  width: 100%;
  height: 100%;
  min-height: 100vh;
  opacity: 1;
  transition: 0.5s;
  transition-delay: 0.1s;
}
.p-top .p-kv-sky picture {
  width: 100%;
  height: 100%;
}
.p-top .p-kv-sky picture img {
  width: 100%;
  height: 100%;
  min-height: 100vh;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-top .p-kv-city {
  width: 100%;
  height: 100%;
  background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_kv-city.webp) repeat-x bottom center/contain;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 1;
  transition: 0.6s;
  transition-delay: 0.5s;
  transition-timing-function: ease-out;
}
.p-top .p-kv-manga {
  height: 100%;
  position: absolute;
  inset: 0;
  margin-left: auto;
  opacity: 1;
  transition: 0.8s;
  transform: translate(6%, 0%);
  transition-delay: 0.7s;
  overflow: hidden;
}
.p-top .p-kv-manga__inner {
  height: auto;
}
.p-top .p-kv-manga__inner picture {
  width: 100%;
  height: 100%;
}
.p-top .p-kv-manga__inner picture img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-top .p-kv-dots {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.p-top .p-kv-dots picture {
  width: 100%;
  height: 100%;
}
.p-top .p-kv-dots picture img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-top .p-kv-title {
  width: 100%;
  padding-left: 12vw;
  line-height: 1;
  color: #FFFFFF;
  text-shadow: 3px 3px 6px #005EAC;
  position: absolute;
  inset: 0;
  margin: auto;
  top: 12.5333333333vw;
}
.p-top .p-kv-title__main-title .block {
  display: flex;
  overflow: hidden;
}
.p-top .p-kv-title__main-title .block span {
  font-size: 9.8666666667vw;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  transition: 0.3s;
  transform: translateY(0);
  transition-timing-function: ease-out;
}
.p-top .p-kv-title__main-title .block:nth-child(1) span:nth-child(1) {
  transition-delay: 1.1s;
}
.p-top .p-kv-title__main-title .block:nth-child(1) span:nth-child(2) {
  transition-delay: 1.15s;
}
.p-top .p-kv-title__main-title .block:nth-child(1) span:nth-child(3) {
  transition-delay: 1.2s;
}
.p-top .p-kv-title__main-title .block:nth-child(1) span:nth-child(4) {
  transition-delay: 1.25s;
}
.p-top .p-kv-title__main-title .block:nth-child(1) span:nth-child(5) {
  transition-delay: 1.3s;
}
.p-top .p-kv-title__main-title .block:nth-child(1) span:nth-child(6) {
  transition-delay: 1.35s;
}
.p-top .p-kv-title__main-title .block:nth-child(1) span:nth-child(7) {
  transition-delay: 1.4s;
}
.p-top .p-kv-title__main-title .block:nth-child(2) span:nth-child(1) {
  transition-delay: 1.45s;
}
.p-top .p-kv-title__main-title .block:nth-child(2) span:nth-child(2) {
  transition-delay: 1.5s;
}
.p-top .p-kv-title__main-title .block:nth-child(2) span:nth-child(3) {
  transition-delay: 1.55s;
}
.p-top .p-kv-title__main-title .block:nth-child(2) span:nth-child(4) {
  transition-delay: 1.6s;
}
.p-top .p-kv-title__main-title .block:nth-child(2) span:nth-child(5) {
  transition-delay: 1.65s;
}
.p-top .p-kv-title__main-title .block:nth-child(2) span:nth-child(6) {
  transition-delay: 1.7s;
}
.p-top .p-kv-title__main-title .block:nth-child(2) span:nth-child(7) {
  transition-delay: 1.75s;
}
.p-top .p-kv-title__main-title .block:nth-child(2) span:nth-child(8) {
  transition-delay: 1.8s;
}
.p-top .p-kv-title__main-title .block:nth-child(2) span:nth-child(9) {
  transition-delay: 1.85s;
}
.p-top .p-kv-title__main-title .block:nth-child(2) span:nth-child(10) {
  transition-delay: 1.9s;
}
.p-top .p-kv-title__main-title .block:nth-child(3) span:nth-child(1) {
  transition-delay: 1.95s;
}
.p-top .p-kv-title__main-title .block:nth-child(3) span:nth-child(2) {
  transition-delay: 2s;
}
.p-top .p-kv-title__main-title .block:nth-child(3) span:nth-child(3) {
  transition-delay: 2.05s;
}
.p-top .p-kv-title__main-title .block:nth-child(3) span:nth-child(4) {
  transition-delay: 2.1s;
}
.p-top .p-kv-title__main-title .block:nth-child(3) span:nth-child(5) {
  transition-delay: 2.15s;
}
.p-top .p-kv-title__main-title .block:nth-child(3) span:nth-child(6) {
  transition-delay: 2.2s;
}
.p-top .p-kv-title__main-title .block:nth-child(3) span:nth-child(7) {
  transition-delay: 2.25s;
}
.p-top .p-kv-title__sub-title {
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 1.0666666667vw;
  overflow: hidden;
}
.p-top .p-kv-title__sub-title .block {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  padding: 6px 4px 4px;
  font-size: 1.8666666667vw;
  font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif;
  font-weight: 500;
  background-color: #005EAC;
  transform: translate(0);
  transition: transform 0.4s;
  transition-delay: 2.9s;
}
.p-top .p-kv.inactive .p-kv-sky {
  opacity: 0;
}
.p-top .p-kv.inactive .p-kv-city {
  opacity: 0;
}
.p-top .p-kv.inactive .p-kv-manga {
  opacity: 0;
  transform: translate(100%, -100%);
}
.p-top .p-kv.inactive .p-kv-title__main-title .block span {
  transform: translateY(100%);
}
.p-top .p-kv.inactive .p-kv-title__sub-title .block {
  transform: translateX(-102%);
}
.p-top .p-lead {
  background-color: #005EAC;
}
.p-top .p-lead__inner {
  display: grid;
  place-content: center;
  width: 100%;
  height: min(624px, 41.6vw);
  max-width: 1500px;
  margin-inline: auto;
  position: relative;
}
.p-top .p-lead__list {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.p-top .p-lead__item:nth-child(1) {
  width: min(410px, 27.3333333333vw);
  height: min(390px, 26vw);
  position: absolute;
  top: min(10px, 0.6666666667vw);
  left: 0;
  overflow: hidden;
  clip-path: polygon(0 0, 100% 0, 65% 100%, 0% 100%);
}
.p-top .p-lead__item:nth-child(1)::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_01-1.png) no-repeat center center/cover;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  animation: fade 20s infinite;
}
.p-top .p-lead__item:nth-child(1)::after {
  content: "";
  width: 100%;
  height: 100%;
  background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_01-2.png) no-repeat center center/cover;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  animation: fade 20s infinite 10s;
}
.p-top .p-lead__item:nth-child(2) {
  width: min(440px, 29.3333333333vw);
  height: min(390px, 26vw);
  position: absolute;
  top: min(10px, 0.6666666667vw);
  left: min(288px, 19.2vw);
  overflow: hidden;
  clip-path: polygon(31% 0, 100% 0, 100% 100%, 0% 100%);
}
.p-top .p-lead__item:nth-child(2)::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_02-1.png) no-repeat center center/cover;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  animation: fade 20s infinite 5s;
}
.p-top .p-lead__item:nth-child(2)::after {
  content: "";
  width: 100%;
  height: 100%;
  background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_02-2.png) no-repeat center center/cover;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  animation: fade 20s infinite 17s;
}
.p-top .p-lead__item:nth-child(3) {
  width: min(307px, 20.4666666667vw);
  height: min(390px, 26vw);
  position: absolute;
  top: min(10px, 0.6666666667vw);
  left: min(738px, 49.2vw);
  overflow: hidden;
}
.p-top .p-lead__item:nth-child(3)::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_03-1.png) no-repeat center center/cover;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  animation: fade 20s infinite;
}
.p-top .p-lead__item:nth-child(3)::after {
  content: "";
  width: 100%;
  height: 100%;
  background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_03-2.png) no-repeat center center/cover;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  animation: fade 20s infinite 10s;
}
.p-top .p-lead__item:nth-child(4) {
  width: min(285px, 19vw);
  height: min(390px, 26vw);
  position: absolute;
  top: min(10px, 0.6666666667vw);
  left: min(1055px, 70.3333333333vw);
  overflow: hidden;
}
.p-top .p-lead__item:nth-child(4)::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_04-1.png) no-repeat center center/cover;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  animation: fade 20s infinite 2s;
}
.p-top .p-lead__item:nth-child(4)::after {
  content: "";
  width: 100%;
  height: 100%;
  background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_04-2.png) no-repeat center center/cover;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  animation: fade 20s infinite 12s;
}
.p-top .p-lead__item:nth-child(5) {
  width: min(150px, 10vw);
  height: min(390px, 26vw);
  position: absolute;
  top: min(10px, 0.6666666667vw);
  left: min(1350px, 90vw);
  overflow: hidden;
}
.p-top .p-lead__item:nth-child(5)::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_05-1.png) no-repeat center center/cover;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  animation: fade 20s infinite 3s;
}
.p-top .p-lead__item:nth-child(5)::after {
  content: "";
  width: 100%;
  height: 100%;
  background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_05-2.png) no-repeat center center/cover;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  animation: fade 20s infinite 13s;
}
.p-top .p-lead__item:nth-child(6) {
  width: min(286px, 19.0666666667vw);
  height: min(204px, 13.6vw);
  position: absolute;
  top: min(410px, 27.3333333333vw);
  left: 0;
  overflow: hidden;
}
.p-top .p-lead__item:nth-child(6)::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_06-1.png) no-repeat center center/cover;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  animation: fade 20s infinite 1.5s;
}
.p-top .p-lead__item:nth-child(6)::after {
  content: "";
  width: 100%;
  height: 100%;
  background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_06-2.png) no-repeat center center/cover;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  animation: fade 20s infinite 11.5s;
}
.p-top .p-lead__item:nth-child(7) {
  width: min(449px, 29.9333333333vw);
  height: min(204px, 13.6vw);
  position: absolute;
  top: min(410px, 27.3333333333vw);
  left: min(296px, 19.7333333333vw);
  overflow: hidden;
}
.p-top .p-lead__item:nth-child(7)::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_07-1.png) no-repeat center center/cover;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  animation: fade 20s infinite 1s;
}
.p-top .p-lead__item:nth-child(7)::after {
  content: "";
  width: 100%;
  height: 100%;
  background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_07-2.png) no-repeat center center/cover;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  animation: fade 20s infinite 11s;
}
.p-top .p-lead__item:nth-child(8) {
  width: min(360px, 24vw);
  height: min(204px, 13.6vw);
  position: absolute;
  top: min(410px, 27.3333333333vw);
  left: min(755px, 50.3333333333vw);
  overflow: hidden;
  clip-path: polygon(0 0, 100% 0, 80% 100%, 0% 100%);
}
.p-top .p-lead__item:nth-child(8)::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_08-1.png) no-repeat center center/cover;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  animation: fade 20s infinite 3s;
}
.p-top .p-lead__item:nth-child(8)::after {
  content: "";
  width: 100%;
  height: 100%;
  background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_08-2.png) no-repeat center center/cover;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  animation: fade 20s infinite 13s;
}
.p-top .p-lead__item:nth-child(9) {
  width: min(442px, 29.4666666667vw);
  height: min(204px, 13.6vw);
  position: absolute;
  top: min(410px, 27.3333333333vw);
  left: min(1058px, 70.5333333333vw);
  overflow: hidden;
  clip-path: polygon(15% 0, 100% 0, 100% 100%, 0 100%);
}
.p-top .p-lead__item:nth-child(9)::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_09-1.png) no-repeat center center/cover;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  animation: fade 20s infinite 0s;
}
.p-top .p-lead__item:nth-child(9)::after {
  content: "";
  width: 100%;
  height: 100%;
  background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_09-2.png) no-repeat center center/cover;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  animation: fade 20s infinite 10s;
}
.p-top .p-lead__text {
  width: calc(956px * var(--font-ratio));
  margin-inline: auto;
  padding: calc(55px * var(--font-ratio)) calc(90px * var(--font-ratio));
  background-color: #FFFFFF;
  border: 10px solid #005EAC;
  position: relative;
}
.p-top .p-lead__title {
  font-size: calc(26 / var(--root-font-size) * var(--font-ratio) * 1rem);
  font-weight: 700;
}
.p-top .p-lead__description {
  margin-top: calc(30px * var(--font-ratio));
  font-size: calc(16 / var(--root-font-size) * var(--font-ratio) * 1rem);
  line-height: 1.8;
}
.p-top .p-story {
  position: relative;
  padding: calc(117px * var(--font-ratio)) 0 calc(240px * var(--font-ratio));
  background: linear-gradient(to bottom, transparent calc(100% - 1px), rgba(255, 255, 255, 0.6) calc(100% - 1px)) left top/48px 48px repeat, linear-gradient(to right, transparent calc(100% - 1px), rgba(255, 255, 255, 0.6) calc(100% - 1px)) left top/48px 48px repeat, linear-gradient(to bottom, #5FA7E3 0%, #6B4CED 30%, #2E6CCE 60%, #5FA7E3 100%);
}
.p-top .p-story__inner {
  width: 100%;
  max-width: 1500px;
  margin-inline: auto;
  padding: 0 calc(180px * var(--font-ratio));
  position: relative;
  z-index: 5;
}
.p-top .p-story__title {
  font-size: calc(70 / var(--root-font-size) * var(--font-ratio) * 1rem);
  font-weight: 700;
  text-align: center;
  color: #EBFF00;
  position: relative;
}
.p-top .p-story__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  row-gap: calc(180px * var(--font-ratio));
  margin-top: calc(60px * var(--font-ratio));
  padding: 0 calc(20px * var(--font-ratio));
  position: relative;
  z-index: 0;
}
.p-top .p-story__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: calc(520px * var(--font-ratio));
  padding: calc(30px * var(--font-ratio));
  background-color: #FFFFFF;
  border: 10px solid var(--custom-color);
  position: relative;
}
.p-top .p-story__item.p-story__item--coming-soon {
  width: calc(520px * var(--font-ratio));
  position: relative;
  border: none;
  padding: 0;
}
.p-top .p-story__item.p-story__item--coming-soon img {
  width: 100%;
  height: 100%;
}
.p-top .p-story__item:nth-child(1)::before {
  content: "";
  width: calc(380px * var(--font-ratio));
  height: calc(120px * var(--font-ratio));
  background: url(https://www.shimz.co.jp/newborn/assets/img/top/ph_story-object_rocket.png) no-repeat center center/contain;
  position: absolute;
  bottom: calc(-160px * var(--font-ratio));
  left: -26%;
  z-index: -1;
  animation: upDown01 7s ease-in-out 0s infinite;
}
.p-top .p-story__item:nth-child(1)::after {
  content: "";
  width: calc(163px * var(--font-ratio));
  height: calc(170px * var(--font-ratio));
  background: url(https://www.shimz.co.jp/newborn/assets/img/top/ph_story-object_astronaut.png) no-repeat center center/contain;
  position: absolute;
  top: calc(-120px * var(--font-ratio));
  left: -25%;
  z-index: -1;
  animation: upDown02 8s ease-in-out 0s infinite;
}
.p-top .p-story__item:nth-child(2)::before {
  content: "";
  width: calc(246px * var(--font-ratio));
  height: calc(283px * var(--font-ratio));
  background: url(https://www.shimz.co.jp/newborn/assets/img/top/ph_story-object_kabuki_tower.png) no-repeat center center/contain;
  position: absolute;
  top: calc(-120px * var(--font-ratio));
  right: -45%;
  z-index: -1;
  animation: upDown01 7s ease-in-out 0s infinite;
}
.p-top .p-story__item:nth-child(3) {
  /*
  &::before {
    content: '';
    width: f.px(200);
    height: f.px(90);
    background: url(/newborn/assets/img/top/ph_story-obj_float-ring.png) no-repeat center center / contain;
    position: absolute;
    top: f.px(-88);
    right: 5%;
    z-index: -1;
    // animation: upDown01 7s ease-in-out 0s infinite ;
  }

  &::after {
    content: '';
    width: f.px(288);
    height: f.px(220);
    background: url(/newborn/assets/img/top/ph_story-obj_ship.png) no-repeat center center / contain;
    position: absolute;
    bottom: f.px(-200);
    left: -30%;
    z-index: -1;
    animation: upDown01 8s ease-in-out 0s infinite;
  }
    */
}
.p-top .p-story__item:nth-child(4)::before {
  content: "";
  width: calc(330px * var(--font-ratio));
  height: calc(248px * var(--font-ratio));
  background: url(https://www.shimz.co.jp/newborn/assets/img/top/ph_story-object_moon.png) no-repeat center center/contain;
  position: absolute;
  bottom: calc(-180px * var(--font-ratio));
  right: -48%;
  z-index: -1;
  animation: upDown01 10s ease-in-out 0s infinite;
}
.p-top .p-story__item-title {
  align-self: flex-start;
  margin-top: calc(24px * var(--font-ratio));
  font-weight: 700;
  font-size: calc(18 / var(--root-font-size) * var(--font-ratio) * 1rem);
}
.p-top .p-story__item-description {
  align-self: flex-start;
  margin-top: calc(16px * var(--font-ratio));
  margin-bottom: auto;
  font-size: calc(16 / var(--root-font-size) * var(--font-ratio) * 1rem);
}
.p-top .p-story__item-button, .p-top .p-story__item-banner {
  margin-top: calc(24px * var(--font-ratio));
}
.p-top .p-story::after {
  z-index: 1;
  content: "";
  position: absolute;
  top: calc(600px * var(--font-ratio));
  left: 50%;
  transform: translateX(-50%);
  display: inline-block;
  max-width: 1500px;
  width: 100%;
  height: 100%;
  background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_story.png) no-repeat center top/100%;
  transition: all 0.5s;
  transition-delay: 0.8s;
  opacity: 0;
}
.p-top .p-story.active::after {
  top: calc(560px * var(--font-ratio));
  opacity: 1;
}
.p-top .p-story--fade-item {
  opacity: 0;
  top: calc(100px * var(--font-ratio));
  left: 0;
  transition: 0.3s;
  transition-timing-function: ease-in-out;
}
.p-top .p-story--fade-item.active {
  opacity: 1;
  top: 0;
}

@keyframes fade {
  0% {
    opacity: 0;
    transform: scale(1);
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    transform: scale(1.15);
  }
}
@keyframes upDown01 {
  0% {
    transform: translate(0, 0%);
  }
  50% {
    transform: translate(0px, 20px);
  }
  100% {
    transform: translate(0, 0%);
  }
}
@keyframes upDown02 {
  0% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(5px, 24px);
  }
  100% {
    transform: translate(0, 0);
  }
}
@media screen and (min-width: 1500px) {
  .p-top .p-lead__inner {
    display: grid;
    place-content: center;
    width: 100%;
    height: min(624px, 41.6vw);
    max-width: 1500px;
    margin-inline: auto;
    position: relative;
    z-index: 1;
  }
  .p-top .p-lead__inner::before {
    content: "";
    width: calc(100vw - (50vw + 760px));
    height: 100%;
    background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga.png) repeat right center/auto 100%;
    position: absolute;
    top: 0;
    left: calc(50% - 50vw);
    z-index: -1;
  }
  .p-top .p-lead__inner::after {
    content: "";
    width: calc(100vw - (50vw + 760px));
    height: 100%;
    background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga.png) repeat left center/auto 100%;
    position: absolute;
    top: 0;
    right: calc(50% - 50vw);
    z-index: -1;
  }
}
@media screen and (max-width: 835px) {
  .p-top .p-kv-sky {
    width: 100%;
    height: 100%;
  }
  .p-top .p-kv-city {
    background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_kv-city_sp.webp) no-repeat bottom center/cover;
  }
  .p-top .p-kv-manga__inner {
    width: 100%;
  }
  .p-top .p-kv-dots picture {
    width: 100%;
    height: 100%;
  }
  .p-top .p-kv-dots picture img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .p-top .p-kv-title {
    padding-left: calc(20px * var(--font-ratio));
    top: calc(150px * var(--font-ratio));
  }
  .p-top .p-kv-title__main-title .block {
    display: flex;
  }
  .p-top .p-kv-title__main-title .block span {
    font-size: calc(67 / var(--root-font-size) * var(--font-ratio) * 1rem);
  }
  .p-top .p-kv-title__sub-title .block {
    width: -moz-fit-content;
    width: fit-content;
    margin-top: calc(28px * var(--font-ratio));
    padding: 0;
    font-size: calc(24 / var(--root-font-size) * var(--font-ratio) * 1rem);
    background-color: transparent;
  }
  .p-top .p-kv-title__sub-title .block span {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    padding: 4px 4px;
    background-color: #005EAC;
  }
  .p-top .p-lead__inner {
    height: auto;
    padding: calc(123px * var(--font-ratio)) calc(20px * var(--font-ratio));
  }
  .p-top .p-lead__list {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
  }
  .p-top .p-lead__item:nth-child(1) {
    width: 93.333%;
    height: 38.232%;
    position: absolute;
    top: 1.4%;
    left: -40%;
    overflow: hidden;
    clip-path: polygon(0 0, 100% 0, 65% 100%, 0% 100%);
  }
  .p-top .p-lead__item:nth-child(1)::before {
    content: "";
    width: 100%;
    height: 100%;
    background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_01-1_sp.png) no-repeat center center/cover;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    animation: fade 20s infinite;
  }
  .p-top .p-lead__item:nth-child(1)::after {
    content: "";
    width: 100%;
    height: 100%;
    background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_01-2_sp.png) no-repeat center center/cover;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    animation: fade 20s infinite 10s;
  }
  .p-top .p-lead__item:nth-child(2) {
    width: 100.533%;
    height: 38.232%;
    position: absolute;
    top: 1.4%;
    left: 26%;
    overflow: hidden;
    clip-path: polygon(31% 0, 100% 0, 100% 100%, 0% 100%);
  }
  .p-top .p-lead__item:nth-child(2)::before {
    content: "";
    width: 100%;
    height: 100%;
    background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_02-1_sp.png) no-repeat center center/cover;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    animation: fade 20s infinite 5s;
  }
  .p-top .p-lead__item:nth-child(2)::after {
    content: "";
    width: 100%;
    height: 100%;
    background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_02-2_sp.png) no-repeat center center/cover;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    animation: fade 20s infinite 17s;
  }
  .p-top .p-lead__item:nth-child(3) {
    width: 62.933%;
    height: 36.5%;
    position: absolute;
    top: 40.883%;
    left: -24%;
    overflow: hidden;
  }
  .p-top .p-lead__item:nth-child(3)::before {
    content: "";
    width: 100%;
    height: 100%;
    background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_03-1_sp.png) no-repeat center center/cover;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    animation: fade 20s infinite;
  }
  .p-top .p-lead__item:nth-child(3)::after {
    content: "";
    width: 100%;
    height: 100%;
    background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_03-2_sp.png) no-repeat center center/cover;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    animation: fade 20s infinite 10s;
  }
  .p-top .p-lead__item:nth-child(4) {
    width: 65.066%;
    height: 36.5%;
    position: absolute;
    top: 40.883%;
    left: 48%;
    overflow: hidden;
  }
  .p-top .p-lead__item:nth-child(4)::before {
    content: "";
    width: 100%;
    height: 100%;
    background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_04-1_sp.png) no-repeat center center/cover;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    animation: fade 20s infinite 2s;
  }
  .p-top .p-lead__item:nth-child(4)::after {
    content: "";
    width: 100%;
    height: 100%;
    background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_04-2_sp.png) no-repeat center center/cover;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    animation: fade 20s infinite 12s;
  }
  .p-top .p-lead__item:nth-child(5) {
    width: 65.333%;
    height: 19.889%;
    position: absolute;
    top: 79.005%;
    left: -8%;
    overflow: hidden;
  }
  .p-top .p-lead__item:nth-child(5)::before {
    content: "";
    width: 100%;
    height: 100%;
    background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_05-1_sp.png) no-repeat center center/cover;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    animation: fade 20s infinite 3s;
  }
  .p-top .p-lead__item:nth-child(5)::after {
    content: "";
    width: 100%;
    height: 100%;
    background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_05-2_sp.png) no-repeat center center/cover;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    animation: fade 20s infinite 13s;
  }
  .p-top .p-lead__item:nth-child(6) {
    width: 102.666%;
    height: 19.889%;
    position: absolute;
    top: 79.005%;
    left: 60.8%;
    overflow: hidden;
  }
  .p-top .p-lead__item:nth-child(6)::before {
    content: "";
    width: 100%;
    height: 100%;
    background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_06-1_sp.png) no-repeat center center/cover;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    animation: fade 20s infinite 1.5s;
  }
  .p-top .p-lead__item:nth-child(6)::after {
    content: "";
    width: 100%;
    height: 100%;
    background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_lead-manga_06-2_sp.png) no-repeat center center/cover;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    animation: fade 20s infinite 11.5s;
  }
  .p-top .p-lead__item:nth-child(7), .p-top .p-lead__item:nth-child(8), .p-top .p-lead__item:nth-child(9) {
    display: none;
  }
  .p-top .p-lead__text {
    width: 100%;
    padding: calc(30px * var(--font-ratio));
  }
  .p-top .p-lead__title {
    font-size: calc(19 / var(--root-font-size) * var(--font-ratio) * 1rem);
    font-weight: 700;
  }
  .p-top .p-lead__description {
    margin-top: calc(15px * var(--font-ratio));
    font-size: calc(14 / var(--root-font-size) * var(--font-ratio) * 1rem);
  }
  .p-top .p-story {
    padding: calc(50px * var(--font-ratio)) 0 calc(160px * var(--font-ratio));
    padding: calc(117px * var(--font-ratio)) 0 calc(240px * var(--font-ratio));
    background: linear-gradient(to bottom, transparent calc(100% - 1px), rgba(255, 255, 255, 0.6) calc(100% - 1px)) left top/48px 48px repeat, linear-gradient(to right, transparent calc(100% - 1px), rgba(255, 255, 255, 0.6) calc(100% - 1px)) left top/48px 48px repeat, linear-gradient(to bottom, #5FA7E3 0%, #6B4CED 30%, #2E6CCE 60%, #5FA7E3 100%);
  }
  .p-top .p-story__inner {
    padding: 0 calc(20px * var(--font-ratio));
  }
  .p-top .p-story__title {
    font-size: calc(60 / var(--root-font-size) * var(--font-ratio) * 1rem);
  }
  .p-top .p-story__list {
    flex-direction: column;
    align-items: center;
    padding: 0 calc(10px * var(--font-ratio));
    row-gap: calc(100px * var(--font-ratio));
  }
  .p-top .p-story__item {
    width: calc(315px * var(--font-ratio));
    padding: calc(20px * var(--font-ratio));
    border: 8px solid var(--custom-color);
  }
  .p-top .p-story__item.p-story__item--coming-soon {
    width: calc(315px * var(--font-ratio));
  }
  .p-top .p-story__item.p-story__item--coming-soon img {
    height: 100%;
  }
  .p-top .p-story__item:nth-child(1)::before {
    content: "";
    width: calc(160px * var(--font-ratio));
    height: calc(50px * var(--font-ratio));
    top: -11%;
    left: -26%;
  }
  .p-top .p-story__item:nth-child(1)::after {
    content: "";
    width: calc(98px * var(--font-ratio));
    height: calc(101px * var(--font-ratio));
    background: url(https://www.shimz.co.jp/newborn/assets/img/top/ph_story-object_astronaut.png) no-repeat center center/contain;
    top: -15%;
    left: auto;
    right: -12%;
  }
  .p-top .p-story__item:nth-child(2)::before {
    content: "";
    width: calc(137px * var(--font-ratio));
    height: calc(158px * var(--font-ratio));
    background: url(https://www.shimz.co.jp/newborn/assets/img/top/ph_story-object_kabuki_tower_sp.png) no-repeat center center/contain;
    top: auto;
    bottom: calc(-105px * var(--font-ratio));
    right: -20%;
  }
  .p-top .p-story__item:nth-child(3) {
    /*
    &::before {
      content: '';
      width: f.px(122);
      height: f.px(54);
      top: f.px(-50);
      right: 5%;
    }
    &::after {
      content: '';
      width: f.px(148);
      height: f.px(112);
      bottom: f.px(-86);
      left: -20%;
    }
      */
  }
  .p-top .p-story__item:nth-child(3)::before, .p-top .p-story__item:nth-child(3)::after {
    content: none;
  }
  .p-top .p-story__item:nth-child(4)::before {
    content: "";
    width: calc(172px * var(--font-ratio));
    height: calc(96px * var(--font-ratio));
    bottom: calc(-96px * var(--font-ratio));
    right: -10%;
  }
  .p-top .p-story__item-title {
    margin-top: calc(20px * var(--font-ratio));
    font-size: calc(16 / var(--root-font-size) * var(--font-ratio) * 1rem);
  }
  .p-top .p-story__item-description {
    margin-top: calc(12px * var(--font-ratio));
    font-size: calc(14 / var(--root-font-size) * var(--font-ratio) * 1rem);
  }
  .p-top .p-story__item-button, .p-top .p-story__item-banner {
    margin-top: calc(20px * var(--font-ratio));
  }
  .p-top .p-story::after {
    top: 5%;
    background: url(https://www.shimz.co.jp/newborn/assets/img/top/bg_story_sp.png) no-repeat center top/100%;
  }
  .p-top .p-story.active::after {
    top: 8.6%;
  }
}
.timing-0-00 {
  transition-delay: 0.5s;
}

.timing-0-05 {
  transition-delay: 0.55s;
}

.timing-0-10 {
  transition-delay: 0.6s;
}

.timing-0-15 {
  transition-delay: 0.65s;
}

.timing-0-20 {
  transition-delay: 0.7s;
}

.timing-0-25 {
  transition-delay: 0.75s;
}

.timing-0-30 {
  transition-delay: 0.8s;
}

.timing-0-35 {
  transition-delay: 0.85s;
}

.timing-0-40 {
  transition-delay: 0.9s;
}

.timing-0-45 {
  transition-delay: 0.95s;
}

.timing-0-50 {
  transition-delay: 1s;
}

.timing-0-55 {
  transition-delay: 1.05s;
}

.timing-0-60 {
  transition-delay: 1.1s;
}

.timing-0-65 {
  transition-delay: 1.15s;
}

.timing-0-70 {
  transition-delay: 1.2s;
}

.timing-0-75 {
  transition-delay: 1.25s;
}

.timing-0-80 {
  transition-delay: 1.3s;
}

.timing-0-85 {
  transition-delay: 1.35s;
}

.timing-0-90 {
  transition-delay: 1.4s;
}

.timing-0-95 {
  transition-delay: 1.45s;
}

.timing-1-00 {
  transition-delay: 1.5s;
}

.timing-1-05 {
  transition-delay: 1.55s;
}

.timing-1-10 {
  transition-delay: 1.6s;
}

.timing-1-15 {
  transition-delay: 1.65s;
}

.timing-1-20 {
  transition-delay: 1.7s;
}

.timing-1-25 {
  transition-delay: 1.75s;
}

.timing-1-30 {
  transition-delay: 1.8s;
}

.timing-1-35 {
  transition-delay: 1.85s;
}

.timing-1-40 {
  transition-delay: 1.9s;
}

.timing-1-45 {
  transition-delay: 1.95s;
}

.timing-1-50 {
  transition-delay: 2s;
}

.timing-1-55 {
  transition-delay: 2.05s;
}

.timing-1-60 {
  transition-delay: 2.1s;
}

.timing-1-65 {
  transition-delay: 2.15s;
}

.timing-1-70 {
  transition-delay: 2.2s;
}

.timing-1-75 {
  transition-delay: 2.25s;
}

.timing-1-80 {
  transition-delay: 2.3s;
}

.timing-1-85 {
  transition-delay: 2.35s;
}

.timing-1-90 {
  transition-delay: 2.4s;
}

.timing-1-95 {
  transition-delay: 2.45s;
}

.p-story .p-kv {
  height: calc(410px * var(--font-ratio));
}
.p-story .p-kv.inactive .p-kv-title__main-title .sub {
  transform: translateY(100%);
  opacity: 0;
}
.p-story .p-kv.inactive .p-kv-title__main-title .main span {
  transform: translateY(100%);
  opacity: 0;
}
.p-story .p-kv.story01 {
  background: url(https://www.shimz.co.jp/newborn/assets/img/story-01/bg_kv.jpg) no-repeat bottom center/cover;
}
.p-story .p-kv.story02 {
  background: url(https://www.shimz.co.jp/newborn/assets/img/story-02/bg_kv.jpg) no-repeat bottom center/cover;
}
.p-story .p-kv-title {
  width: 100%;
  max-width: 1500px;
  margin-inline: auto;
  padding: calc(200px * var(--font-ratio)) 0 0 calc(200px * var(--font-ratio));
  color: #005EAC;
}
.p-story .p-kv-title__main-title .main {
  display: block;
  margin-top: calc(10px * var(--font-ratio));
  font-size: calc(48 / var(--root-font-size) * var(--font-ratio) * 1rem);
  font-weight: 700;
  text-shadow: 3px 3px 0 #FFFFFF;
  overflow-y: hidden;
}
.p-story .p-kv-title__main-title .main span {
  display: inline-block;
  opacity: 1;
  transform: translateY(0%);
  transition-duration: 0.3s;
  transition-timing-function: ease-out;
}
.p-story .p-kv-title__main-title .sub {
  display: inline-block;
  font-size: calc(26 / var(--root-font-size) * var(--font-ratio) * 1rem);
  font-weight: 700;
  text-shadow: 3px 3px 0 #FFFFFF;
  opacity: 1;
  transform: translateY(0%);
  transition: 0.3s;
  transition-timing-function: ease-out;
}
.p-story .p-main {
  background: linear-gradient(to bottom, transparent calc(100% - 1px), rgba(255, 255, 255, 0.6) calc(100% - 1px)) left top/48px 48px repeat, linear-gradient(to right, transparent calc(100% - 1px), rgba(255, 255, 255, 0.6) calc(100% - 1px)) left top/48px 48px repeat, linear-gradient(to bottom, #5FA7E3 0%, #6B4CED 30%, #2E6CCE 60%, #5FA7E3 100%);
}
.p-story .p-lead {
  padding-top: calc(40px * var(--font-ratio));
}
.p-story .p-lead__inner {
  width: 100%;
  max-width: 1500px;
  margin-inline: auto;
  padding: 0 calc(200px * var(--font-ratio));
}
.p-story .p-lead__title {
  font-size: calc(70 / var(--root-font-size) * var(--font-ratio) * 1rem);
  font-weight: 700;
  color: var(--custom-color);
  line-height: 1;
  position: relative;
  top: calc(16px * var(--font-ratio));
}
.p-story .p-lead__text {
  padding: calc(40px * var(--font-ratio));
  border: 1px solid #202020;
  background-color: #FFFFFF;
  box-shadow: 4px 4px 0 #000000;
  position: relative;
}
.p-story .p-lead__text::before {
  content: "";
  height: 100%;
  position: absolute;
  top: 0;
}
.p-story .p-lead__text.story01::before {
  width: calc(350px * var(--font-ratio));
  background: url(https://www.shimz.co.jp/newborn/assets/img/story-01/ph_lead.png) no-repeat center center/cover;
  right: calc(-78px * var(--font-ratio));
}
.p-story .p-lead__text.story02 {
  min-height: calc(224px * var(--font-ratio));
  display: flex;
  align-items: center;
}
.p-story .p-lead__text.story02::before {
  width: calc(284px * var(--font-ratio));
  background: url(https://www.shimz.co.jp/newborn/assets/img/story-02/ph_lead.png) no-repeat center center/cover;
  right: 0;
}
.p-story .p-lead__description {
  width: calc(736px * var(--font-ratio));
  font-size: calc(16 / var(--root-font-size) * var(--font-ratio) * 1rem);
  line-height: 1.8;
}
.p-story .p-manga {
  padding-top: calc(80px * var(--font-ratio));
}
.p-story .p-manga__inner {
  width: 100%;
  max-width: 800px;
  margin-inline: auto;
  padding: 0 calc(67px * var(--font-ratio));
}
.p-story .p-manga-tab__button {
  display: flex;
  justify-content: center;
  gap: calc(36px * var(--font-ratio));
  margin-inline: auto;
}
.p-story .p-manga-tab__button button {
  color: #202020;
}
.p-story .p-manga-tab__button button span {
  display: inline-block;
  margin-top: 6px;
}
.p-story .p-manga-tab__button button[aria-selected=true] {
  pointer-events: none;
  background-color: #EBFF00;
  transform: translate(4px, 4px);
  box-shadow: 0 0 0 transparent;
}
.p-story .p-manga-tab__content {
  margin-top: calc(70px * var(--font-ratio));
}
.p-story .p-manga-tab__content-container[aria-hidden=false] {
  display: block;
}
.p-story .p-manga-tab__content-container[aria-hidden=true] {
  display: none;
}
.p-story .p-manga-tab__content-title {
  font-size: calc(70 / var(--root-font-size) * var(--font-ratio) * 1rem);
  font-weight: 700;
  text-align: center;
  color: var(--custom-color);
}
.p-story .p-manga-tab__content-title--02 {
  font-size: calc(40 / var(--root-font-size) * var(--font-ratio) * 1rem);
  margin-bottom: calc(40px * var(--font-ratio));
}
.p-story .p-manga-tab__content-sub-title {
  margin: calc(40px * var(--font-ratio)) 0;
  font-size: calc(26 / var(--root-font-size) * var(--font-ratio) * 1rem);
  font-weight: 700;
  text-align: center;
  line-height: 1.3;
  color: var(--custom-color);
}
.p-story .p-related {
  padding-top: calc(110px * var(--font-ratio));
}
.p-story .p-related__item {
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
.p-story .p-related__item:nth-child(2) {
  margin-top: calc(84px * var(--font-ratio));
}
.p-story .p-related__item:nth-child(2) .p-related__item-flex {
  margin-top: calc(54px * var(--font-ratio));
}
.p-story .p-related__item:nth-child(3) {
  margin-top: calc(100px * var(--font-ratio));
}
.p-story .p-related__item-label {
  margin-bottom: calc(30px * var(--font-ratio));
}
.p-story .p-related__item-flex {
  display: flex;
  justify-content: center;
  gap: calc(70px * var(--font-ratio));
}
.p-story .p-special-site {
  padding: calc(100px * var(--font-ratio)) 0 calc(140px * var(--font-ratio));
}
.p-story .p-special-site__button {
  display: grid;
  place-content: center;
  width: calc(400px * var(--font-ratio));
  height: calc(80px * var(--font-ratio));
  margin-inline: auto;
  padding-top: calc(6px * var(--font-ratio));
  font-size: calc(26 / var(--root-font-size) * var(--font-ratio) * 1rem);
  font-weight: 700;
  line-height: 1;
  color: #005EAC;
  border: 5px solid #005EAC;
  border-radius: 50px;
  position: relative;
}
@media (any-hover: hover) and (any-pointer: fine) {
  .p-story .p-special-site__button:hover {
    background-color: #005EAC;
    color: #FFFFFF;
  }
}
.p-story--fade-item-manga {
  transform: translateY(100px);
  opacity: 0;
  transition: 0.4s;
  transition-timing-function: ease-in-out;
}
.p-story--fade-item-manga.active {
  transform: translateY(0);
  opacity: 1;
}

.p-others {
  margin-top: calc(100px * var(--font-ratio));
}
.p-others__inner {
  padding: calc(40px * var(--font-ratio)) calc(20px * var(--font-ratio));
  background: url(https://www.shimz.co.jp/newborn/assets/img/common/bg_other.png);
}
.p-others__item {
  position: relative;
  padding-bottom: calc(20px * var(--font-ratio));
}
.p-others__item-title {
  align-self: flex-start;
  margin-top: calc(24px * var(--font-ratio));
  font-weight: 700;
  font-size: calc(20 / var(--root-font-size) * var(--font-ratio) * 1rem);
}
.p-others__item-description {
  align-self: flex-start;
  margin-top: calc(16px * var(--font-ratio));
  margin-bottom: auto;
  font-size: calc(16 / var(--root-font-size) * var(--font-ratio) * 1rem);
}
.p-others__item-label {
  width: 100%;
}
.p-others__item-button {
  width: 90% !important;
  margin-left: auto;
  margin-right: auto;
  margin-top: calc(32px * var(--font-ratio));
}

@media screen and (max-width: 835px) {
  .p-story .p-kv {
    height: calc(405px * var(--font-ratio));
  }
  .p-story .p-kv.story01 {
    background: url(https://www.shimz.co.jp/newborn/assets/img/story-01/bg_kv_sp.jpg) no-repeat bottom center/cover;
  }
  .p-story .p-kv.story02 {
    background: url(https://www.shimz.co.jp/newborn/assets/img/story-02/bg_kv_sp.jpg) no-repeat bottom center/cover;
  }
  .p-story .p-kv.story02 .main {
    font-size: calc(32 / var(--root-font-size) * var(--font-ratio) * 1rem);
  }
  .p-story .p-kv-title {
    width: 100%;
    padding: calc(200px * var(--font-ratio)) 0 0 calc(20px * var(--font-ratio));
  }
  .p-story .p-kv-title__main-title .main {
    display: block;
    margin-top: calc(0px * var(--font-ratio));
    font-size: calc(36 / var(--root-font-size) * var(--font-ratio) * 1rem);
  }
  .p-story .p-kv-title__main-title .sub {
    font-size: calc(26 / var(--root-font-size) * var(--font-ratio) * 1rem);
  }
  .p-story .p-lead {
    padding-top: calc(70px * var(--font-ratio));
  }
  .p-story .p-lead__inner {
    width: 100%;
    padding: 0 calc(20px * var(--font-ratio));
  }
  .p-story .p-lead__title {
    font-size: calc(44 / var(--root-font-size) * var(--font-ratio) * 1rem);
    top: calc(10px * var(--font-ratio));
  }
  .p-story .p-lead__text {
    padding: calc(40px * var(--font-ratio)) calc(30px * var(--font-ratio));
    border: 1px solid #202020;
    background-color: #FFFFFF;
    box-shadow: 4px 4px 0 #000000;
    position: relative;
  }
  .p-story .p-lead__text.story01::before {
    width: calc(172px * var(--font-ratio));
    height: calc(114px * var(--font-ratio));
    background: url(https://www.shimz.co.jp/newborn/assets/img/story-01/ph_lead_sp.png) no-repeat center center/cover;
    top: auto;
    bottom: calc(-80px * var(--font-ratio));
    right: calc(-20px * var(--font-ratio));
  }
  .p-story .p-lead__text.story02::before {
    width: calc(165px * var(--font-ratio));
    height: calc(130px * var(--font-ratio));
    top: auto;
    bottom: calc(-100px * var(--font-ratio));
    right: calc(-20px * var(--font-ratio));
  }
  .p-story .p-lead__description {
    width: 100%;
  }
  .p-story .p-manga {
    padding-top: calc(140px * var(--font-ratio));
  }
  .p-story .p-manga__inner {
    padding: 0 calc(20px * var(--font-ratio));
  }
  .p-story .p-manga-tab__button {
    justify-content: space-between;
    gap: 0;
    flex-wrap: wrap;
    row-gap: calc(20px * var(--font-ratio));
    width: 100%;
  }
  .p-story .p-manga-tab__content {
    margin-top: calc(70px * var(--font-ratio));
  }
  .p-story .p-manga-tab__content-title {
    font-size: calc(44 / var(--root-font-size) * var(--font-ratio) * 1rem);
  }
  .p-story .p-manga-tab__content-title--02 {
    font-size: calc(32 / var(--root-font-size) * var(--font-ratio) * 1rem);
  }
  .p-story .p-manga-tab__content-sub-title {
    margin-top: calc(30px * var(--font-ratio));
    margin-bottom: calc(20px * var(--font-ratio));
    font-size: calc(23 / var(--root-font-size) * var(--font-ratio) * 1rem);
    white-space: nowrap;
  }
  .p-story .p-related {
    padding-top: calc(100px * var(--font-ratio));
  }
  .p-story .p-related__item {
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
  }
  .p-story .p-related__item:nth-child(2) {
    margin-top: calc(80px * var(--font-ratio));
  }
  .p-story .p-related__item:nth-child(2) .p-related__item-label {
    margin-bottom: calc(74px * var(--font-ratio));
  }
  .p-story .p-related__item:nth-child(2) .p-related__item-flex {
    margin-top: calc(50px * var(--font-ratio));
  }
  .p-story .p-related__item:nth-child(3) {
    margin-top: calc(80px * var(--font-ratio));
  }
  .p-story .p-related__item-label {
    margin-bottom: calc(24px * var(--font-ratio));
  }
  .p-story .p-related__item-flex {
    display: flex;
    justify-content: center;
    flex-direction: column;
    row-gap: calc(40px * var(--font-ratio));
  }
  .p-story .p-special-site {
    padding: calc(100px * var(--font-ratio)) 0 calc(140px * var(--font-ratio));
  }
  .p-story .p-special-site__button {
    width: calc(335px * var(--font-ratio));
    height: calc(62px * var(--font-ratio));
    padding-top: calc(6px * var(--font-ratio));
    font-size: calc(20 / var(--root-font-size) * var(--font-ratio) * 1rem);
    border-radius: 80px;
  }
  .p-story .p-special-site__button::after {
    border-top: calc(9px * var(--font-ratio)) solid transparent;
    border-bottom: calc(9px * var(--font-ratio)) solid transparent;
    border-left: calc(12px * var(--font-ratio)) solid #005EAC;
    top: 50%;
    right: 8%;
    transform: translateY(-50%);
  }
  .p-others__inner {
    padding: calc(40px * var(--font-ratio)) 0;
  }
  .p-others__item {
    padding-bottom: calc(10px * var(--font-ratio));
  }
  .p-others__item-title {
    font-size: calc(16 / var(--root-font-size) * var(--font-ratio) * 1rem);
  }
  .p-others__item-description {
    font-size: calc(14 / var(--root-font-size) * var(--font-ratio) * 1rem);
  }
  .p-others__item-label {
    width: 100%;
  }
  .p-others__item-button {
    width: 100% !important;
    margin-top: calc(10px * var(--font-ratio));
  }
}