@charset "UTF-8";
/*
Reset
*/
*,
*::before,
*::after {
  box-sizing: border-box;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    -webkit-animation-delay: -1ms;
            animation-delay: -1ms;
    -webkit-animation-duration: 1ms;
            animation-duration: 1ms;
    -webkit-animation-iteration-count: 1;
            animation-iteration-count: 1;
    background-attachment: initial;
    scroll-behavior: auto;
    transition-delay: 0s;
    transition-duration: 0s;
  }
}
html {
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
   -ms-text-size-adjust: 100%;
       text-size-adjust: 100%;
}

a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, dialog, div, dl, dt, em, embed, fieldset, figcaption, figure, font, footer, form, header, hgroup, hr, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, meter, nav, object, ol, output, p, pre, progress, q, rp, rt, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video, xmp {
  border: 0;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
}

audio, embed, img, object {
  height: auto;
  max-width: 100%;
  vertical-align: middle;
  width: auto;
}

img, picture {
  display: block;
  max-width: 100%;
}

button {
  -webkit-appearance: none;
          appearance: none;
  background-color: transparent;
  border: none;
  border-radius: 0;
  padding: 0;
  text-transform: none;
}

button, input, select, textarea {
  -webkit-appearance: none;
          appearance: none;
  font-family: inherit;
  font-size: 100%;
  margin: 0;
}

button, [type=button], [type=reset], [type=submit], label[for], select,
summary, [role=tab], [role=button] {
  cursor: pointer;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
  margin: 0;
  padding: 0;
}

iframe {
  border: 0;
  display: block;
  height: auto;
  max-width: 100%;
}

ol, ul {
  list-style-type: "";
}

sub,
sup {
  font-size: 0.75em;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

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

svg {
  vertical-align: bottom;
}

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

td, th {
  padding: 0;
  text-align: left;
}

textarea {
  field-sizing: content;
}

a, area, button, input, label, select, summary, textarea, [tabindex] {
  touch-action: manipulation;
}

a {
  cursor: pointer;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

*:focus:not(:focus-visible),
*:before:focus:not(:focus-visible),
*:after:focus:not(:focus-visible) {
  outline: none;
}

button::-moz-focus-inner {
  border: 0;
}

* {
  -webkit-touch-callout: none;
}

input, select, textarea {
  font-size: 1rem;
}

input[type=text], input[type=tel], input[type=email], textarea {
  -webkit-appearance: none;
  -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
}

input[type=submit] {
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0;
}

.fb_iframe_widget > span {
  vertical-align: baseline !important;
}

#map-canvas img {
  max-width: none;
}

#map-canvas label {
  display: inline;
  width: auto;
}

/*
Typography
*/
/*
Basic style
*/
:root {
  --c-primary: #f6e500;
  --c-secondary: #f9f7e8;
  --c-black: #000;
  --c-white: #fff;
  --c-gray: #e6e6e6;
  --c-user: #fdd000;
  --c-dr: #d68599;
  --c-nishikawa: #31a9af;
  --c-hover: #fdd000;
  --leading-trim: calc((1em - 1lh) / 2);
  --leading-trim-en: calc((1cap - 1lh) / 2);
}

html {
  overflow-x: hidden;
}

body {
  background-color: var(--c-white);
  color: var(--c-black);
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, YakuHanJPs, "Noto Sans JP", "BIZ UDPGothic", Meiryo, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  min-height: 100dvh;
  overflow-x: hidden;
  overscroll-behavior-y: none;
}

a {
  text-decoration: none;
}
a:focus {
  text-decoration: none;
}
@media (hover: hover) and (pointer: fine) {
  a:hover {
    text-decoration: none;
  }
}

b,
strong,
.-bold {
  font-weight: 700;
}

sup {
  display: inline-block;
  -webkit-transform: scale(0.8) translateX(-0.2em);
  margin-right: -0.2em;
          transform: scale(0.8) translateX(-0.2em);
}

.svg-spacer {
  fill: transparent;
}

@media (1024px <= width) {
  .-sm {
    display: none !important;
  }
}

@media (width < 768px) {
  .-md {
    display: none !important;
  }
}
@media (1024px <= width) {
  .-md {
    display: none !important;
  }
}

@media (width < 1024px) {
  .-lg {
    display: none !important;
  }
}

@media (width < 1280px) {
  .-xl {
    display: none !important;
  }
}

/*
Header
*/
.header__logo {
  left: 3.0769230769vw;
  position: fixed;
  top: 3.0769230769vw;
  width: 20.7692307692vw;
  z-index: 7;
}
@media (1024px <= width) {
  .header__logo {
    left: 42px;
    top: 42px;
    width: 135px;
  }
}

/*
Nav
*/
.nav {
  bottom: 0;
  height: 21.7948717949vw;
  left: 0;
  position: fixed;
  width: 100vw;
  z-index: 8;
}
@media (1024px <= width) {
  .nav {
    display: grid;
    grid-template-columns: 1fr 780px 1fr;
    height: 80px;
  }
  .nav::before, .nav::after {
    background-color: var(--c-primary);
    content: "";
    display: block;
    height: 60px;
    position: relative;
    translate: 0 20px;
    width: 100%;
  }
}
.nav__list {
  background: url(../img/nav_base_sm.png) top no-repeat;
  background-size: cover;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  grid-template-rows: 21.7948717949vw;
}
@media (1024px <= width) {
  .nav__list {
    background: url(../img/nav_base_lg.png) top no-repeat;
    background-size: contain;
    grid-template-rows: 85px;
    width: 780px;
  }
}
.nav__item {
  display: flex;
  justify-content: center;
}
.nav__item:nth-child(1) img {
  translate: 0 3.0769230769vw;
  width: 8.7179487179vw;
}
@media (1024px <= width) {
  .nav__item:nth-child(1) img {
    translate: 0 14px;
    width: 79px;
  }
}
.nav__item:nth-child(2) img {
  translate: 0 2.5641025641vw;
  width: 5.8974358974vw;
}
@media (1024px <= width) {
  .nav__item:nth-child(2) img {
    translate: 0 12px;
    width: 28px;
  }
}
.nav__item:nth-child(3) img {
  translate: 0 3.5897435897vw;
  width: 11.7307692308vw;
}
@media (1024px <= width) {
  .nav__item:nth-child(3) img {
    translate: 0 17px;
    width: 53px;
  }
}
.nav__item:nth-child(4) img {
  translate: 0 2.3076923077vw;
  width: 10.2564102564vw;
}
@media (1024px <= width) {
  .nav__item:nth-child(4) img {
    translate: 0 10px;
    width: 89px;
  }
}
.nav__item:nth-child(5) img {
  translate: 0 2.3076923077vw;
  width: 13.7820512821vw;
}
@media (1024px <= width) {
  .nav__item:nth-child(5) img {
    translate: 0 10px;
    width: 67px;
  }
}
.nav__item:nth-child(6) img {
  translate: 0 3.3333333333vw;
  width: 13.3974358974vw;
}
@media (1024px <= width) {
  .nav__item:nth-child(6) img {
    translate: 0 15px;
    width: 117px;
  }
}
.nav__item.is-current a {
  -webkit-filter: brightness(0);
          filter: brightness(0);
}
.nav__item.is-current::after {
  background-color: var(--c-black);
  border-radius: 50%;
  bottom: 2.5641025641vw;
  content: "";
  height: 1.5384615385vw;
  position: absolute;
  width: 1.5384615385vw;
}
@media (1024px <= width) {
  .nav__item.is-current::after {
    bottom: 5px;
    height: 6px;
    width: 6px;
  }
}
.nav a {
  transition: -webkit-filter 0.2s ease-out;
  transition: filter 0.2s ease-out;
  transition: filter 0.2s ease-out, -webkit-filter 0.2s ease-out;
}
.nav a:focus {
  -webkit-filter: brightness(0);
          filter: brightness(0);
}
@media (hover: hover) and (pointer: fine) {
  .nav a:hover {
    -webkit-filter: brightness(0);
            filter: brightness(0);
  }
}

/*
パンくず
*/
.breadcrumbs {
  display: none;
}
@media (1024px <= width) {
  .breadcrumbs {
    align-items: center;
    display: flex;
    font-size: 11px;
    margin-inline: auto;
    margin-top: 24px;
    width: 1024px;
  }
}
.breadcrumbs li:has(a)::after {
  content: "＞";
  margin: 0 4px;
}
.breadcrumbs a {
  color: var(--c-black);
  text-decoration: underline;
}
.breadcrumbs a::hover {
  text-decoration: none;
}

/*
Btn
*/
.btn {
  align-items: center;
  background-color: var(--c-primary);
  border-radius: 6.6666666667vw;
  color: var(--c-black);
  cursor: pointer;
  display: flex;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-size: 4.1025641026vw;
  font-weight: 700;
  height: 13.3333333333vw;
  justify-content: center;
  letter-spacing: 0.1em;
  position: relative;
  transition: background-color 0.2s ease-out;
}
@media (1024px <= width) {
  .btn {
    border-radius: 32px;
    font-size: 20px;
    height: 64px;
  }
}
.btn:focus {
  background-color: var(--c-hover);
}
@media (hover: hover) and (pointer: fine) {
  .btn:hover {
    background-color: var(--c-hover);
  }
}
.btn.-cart {
  width: 71.7948717949vw;
}
@media (1024px <= width) {
  .btn.-cart {
    padding-left: 46px;
    width: 274px;
  }
}
.btn.-cart::before {
  background: url(../img/icon_cart.svg) no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 5.1282051282vw;
  left: 6.1538461538vw;
  position: absolute;
  width: 5.641025641vw;
}
@media (1024px <= width) {
  .btn.-cart::before {
    height: 25px;
    left: 36px;
    translate: 0 2px;
    width: 28px;
  }
}
.btn.-shop {
  padding-left: 0.5128205128vw;
  width: 71.7948717949vw;
}
@media (1024px <= width) {
  .btn.-shop {
    padding-left: 32px;
    width: 324px;
  }
}
.btn.-shop::before {
  background: url(../img/icon_shop.svg) no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 6.1538461538vw;
  left: 6.1538461538vw;
  position: absolute;
  width: 4.8717948718vw;
}
@media (1024px <= width) {
  .btn.-shop::before {
    height: 31px;
    left: 36px;
    width: 24px;
  }
}
.btn.-more {
  background-color: var(--c-white);
  border: 0.5128205128vw solid;
  margin-inline: auto;
  width: 71.7948717949vw;
}
@media (1024px <= width) {
  .btn.-more {
    border-width: 3px;
    width: 324px;
  }
}
.btn.-more::after {
  background: url(../img/icon_plus.svg) no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 3.8461538462vw;
  position: absolute;
  right: 8.7179487179vw;
  width: 3.8461538462vw;
}
@media (1024px <= width) {
  .btn.-more::after {
    height: 14px;
    right: 36px;
    width: 14px;
  }
}
.btn.-more:focus {
  background-color: var(--c-black);
  border-color: var(--c-black);
  color: var(--c-white);
}
.btn.-more:focus::after {
  -webkit-filter: brightness(0) invert(1);
          filter: brightness(0) invert(1);
}
@media (hover: hover) and (pointer: fine) {
  .btn.-more:hover {
    background-color: var(--c-black);
    border-color: var(--c-black);
    color: var(--c-white);
  }
  .btn.-more:hover::after {
    -webkit-filter: brightness(0) invert(1);
            filter: brightness(0) invert(1);
  }
}

/*
Footer
*/
.pagetop {
  align-items: center;
  background-color: var(--c-primary);
  border-radius: 3.5897435897vw;
  bottom: 30.7692307692vw;
  display: flex;
  height: 7.1794871795vw;
  justify-content: center;
  opacity: 0;
  position: fixed;
  right: 5.1282051282vw;
  transition: background-color 0.2s ease-out, opacity 0.2s ease-out;
  width: 7.1794871795vw;
  z-index: 6;
}
@media (1024px <= width) {
  .pagetop {
    bottom: 80px;
    height: 48px;
    right: 20px;
    width: 48px;
  }
}
.pagetop::before {
  border-left: 0.5128205128vw solid var(--c-black);
  border-top: 0.5128205128vw solid var(--c-black);
  content: "";
  display: block;
  height: 2.0512820513vw;
  rotate: 45deg;
  translate: 0 0.5128205128vw;
  width: 2.0512820513vw;
}
@media (1024px <= width) {
  .pagetop::before {
    border-width: 4px;
    height: 16px;
    translate: 0 3px;
    width: 16px;
  }
}
.pagetop:focus {
  background-color: var(--c-hover);
}
@media (hover: hover) and (pointer: fine) {
  .pagetop:hover {
    background-color: var(--c-hover);
  }
}
.pagetop.is-show {
  opacity: 1;
}

.footer {
  background-color: var(--c-white);
  padding-bottom: 34.6153846154vw;
  padding-top: 14.358974359vw;
  position: relative;
}
@media (1024px <= width) {
  .footer {
    padding-bottom: 165px;
    padding-top: 75px;
  }
}
.footer::before {
  background: url(../img/bg_top_04.png) repeat-x;
  background-size: contain;
  content: "";
  height: 4.1025641026vw;
  position: absolute;
  top: -4.1025641026vw;
  width: 100vw;
}
@media (1024px <= width) {
  .footer::before {
    height: 16px;
    top: -16px;
  }
}
.footer .btn {
  margin-bottom: 11.7948717949vw;
  margin-inline: auto;
}
@media (1024px <= width) {
  .footer .btn {
    margin-bottom: 116px;
    width: 324px;
  }
}
.footer__text {
  display: block;
  font-size: 3.0769230769vw;
  letter-spacing: 0.01em;
  line-height: 1.83;
  margin-bottom: 19.2307692308vw;
  margin-inline: auto;
  text-align: justify;
  width: 89.7435897436vw;
}
@media (1024px <= width) {
  .footer__text {
    font-size: 10px;
    margin-bottom: 66px;
    text-align: center;
  }
}
.footer__wrap {
  display: grid;
  gap: 8.7179487179vw;
  grid-template-columns: 15.8974358974vw 1fr;
  grid-template-rows: 1fr 7.6282051282vw;
  margin-bottom: 5.641025641vw;
  margin-inline: auto;
  width: 89.7435897436vw;
}
@media (1024px <= width) {
  .footer__wrap {
    display: grid;
    gap: 0;
    grid-template-columns: 180px 120px 1fr;
    grid-template-rows: 1fr;
    margin-bottom: 55px;
    width: 900px;
  }
}
.footer__wrap .-home {
  grid-area: 1/1/2/2;
}
@media (1024px <= width) {
  .footer__wrap .-home {
    grid-area: 1/2/2/3;
  }
}
.footer__wrap .-mattress {
  grid-area: 1/2/2/3;
}
@media (1024px <= width) {
  .footer__wrap .-mattress {
    grid-area: 1/3/2/4;
  }
}
.footer__wrap .-logo {
  grid-area: 2/1/3/3;
  margin-inline: auto;
  width: 35.8974358974vw;
}
@media (1024px <= width) {
  .footer__wrap .-logo {
    grid-area: 1/1/2/2;
    margin: 0;
    width: 96px;
  }
}
.footer__link {
  color: var(--c-black);
  letter-spacing: 0.1em;
}
.footer__link.-bold {
  font-size: 3.5897435897vw;
  font-weight: 700;
  margin-bottom: 1.5384615385vw;
}
@media (1024px <= width) {
  .footer__link.-bold {
    font-size: 12px;
    margin-bottom: 6px;
  }
}
.footer__link.-link {
  font-size: 3.5897435897vw;
  text-decoration: underline;
}
@media (1024px <= width) {
  .footer__link.-link {
    font-size: 10px;
  }
}
.footer__links li {
  margin-bottom: 1.5384615385vw;
}
@media (1024px <= width) {
  .footer__links li {
    margin-bottom: 2px;
  }
}
.footer__links li::before {
  content: "・";
}
.footer .copyright {
  font-size: 2.5641025641vw;
  letter-spacing: 0.1em;
  text-align: center;
}
@media (1024px <= width) {
  .footer .copyright {
    font-size: 10px;
  }
}

/*
Modal
*/
.modal {
  border: 0.7692307692vw solid;
  border-radius: 3.0769230769vw;
  margin-inline: auto;
  position: relative;
  width: 93.8461538462vw;
}
@media (1024px <= width) {
  .modal {
    border-radius: 19px;
    border-width: 5px;
  }
}
.modal__header {
  align-items: center;
  display: grid;
}
.modal__tags {
  display: flex;
  flex-direction: column;
  gap: 2.0512820513vw;
}
@media (1024px <= width) {
  .modal__tags {
    gap: 16px;
  }
}
.modal__tag {
  align-items: center;
  border-radius: 2.6923076923vw;
  display: inline-flex;
  font-size: 2.5641025641vw;
  font-weight: 700;
  height: 5.3846153846vw;
  justify-content: center;
  line-height: 1;
  width: 17.9487179487vw;
}
@media (1024px <= width) {
  .modal__tag {
    border-radius: 16px;
    font-size: 16px;
    height: 32px;
    width: 108px;
  }
}
.modal__tag.-dots {
  background-color: var(--c-primary);
  color: var(--c-black);
}
.modal__tag.-plus {
  background-color: var(--c-black);
  color: var(--c-primary);
}
.modal__title2 {
  border-bottom: 0.5128205128vw solid var(--c-primary);
  display: inline-block;
  font-size: 4.1025641026vw;
  font-weight: 700;
  padding-bottom: 1.0256410256vw;
  text-align: center;
}
@media (1024px <= width) {
  .modal__title2 {
    font-size: 32px;
    padding-bottom: 4px;
  }
}
.modal__btns {
  display: flex;
  gap: 4.1025641026vw;
  justify-content: center;
  left: 0;
  position: sticky;
  top: calc(100dvh - 11.2820512821vw - 5.641025641vw - 5.641025641vw);
  width: 100%;
  z-index: 5;
}
@media (1024px <= width) {
  .modal__btns {
    flex-direction: column;
    gap: 16px;
    top: calc(100dvh - 48px - 60px - 60px);
    width: auto;
  }
}
.modal__btns .-cart,
.modal__btns .-shop {
  border: 0.2564102564vw solid var(--c-black);
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-size: 3.3333333333vw;
  height: 11.2820512821vw;
  padding-left: 4.1025641026vw;
  width: 35.8974358974vw;
}
@media (1024px <= width) {
  .modal__btns .-cart,
  .modal__btns .-shop {
    border-width: 1px;
    font-size: 16px;
    height: 48px;
    padding-left: 32px;
    width: 150px;
  }
}
.modal__btns .-cart::before,
.modal__btns .-shop::before {
  left: 2.3076923077vw;
}
@media (1024px <= width) {
  .modal__btns .-cart::before,
  .modal__btns .-shop::before {
    left: 16px;
  }
}

.modal.-user {
  background-color: #fefce5;
  border-color: var(--c-user);
  display: grid;
  gap: 7.4358974359vw;
  grid-template-rows: auto 1fr;
  padding: 3.5897435897vw 3.5897435897vw 8.2051282051vw;
}
@media (1024px <= width) {
  .modal.-user {
    gap: 40px;
    padding: 30px 60px 50px;
    width: 928px;
  }
}
.modal.-user .modal__header {
  gap: 0 4.1025641026vw;
  grid-template-columns: 19.2307692308vw 1fr;
  grid-template-rows: repeat(2 auto);
}
@media (1024px <= width) {
  .modal.-user .modal__header {
    gap: 20px;
    grid-template-columns: 114px 1fr;
    grid-template-rows: auto 1fr;
  }
}
.modal.-user .modal__num {
  grid-area: 1/1/2/2;
}
.modal.-user .modal__tags {
  grid-area: 1/2/2/3;
}
.modal.-user .modal__title {
  grid-area: 2/1/3/3;
}
@media (1024px <= width) {
  .modal.-user .modal__num {
    grid-area: 1/1/2/2;
  }
  .modal.-user .modal__tags {
    grid-area: 2/1/3/2;
  }
  .modal.-user .modal__title {
    grid-area: 1/2/3/3;
  }
}
.modal.-user .modal__num img {
  width: 19.2307692308vw;
}
@media (1024px <= width) {
  .modal.-user .modal__num img {
    width: 114px;
  }
}
.modal.-user .modal__title {
  font-size: 4.1025641026vw;
  font-weight: 700;
  line-height: 1.43;
  text-align: center;
}
@media (1024px <= width) {
  .modal.-user .modal__title {
    font-size: 24px;
    translate: -57px;
  }
}
.modal.-user .modal__body {
  background-color: var(--c-white);
  border-radius: 2.0512820513vw;
  margin-inline: auto;
  padding: 5.641025641vw 6.1538461538vw;
  width: 75.3846153846vw;
}
@media (1024px <= width) {
  .modal.-user .modal__body {
    border-radius: 22px;
    padding: 40px 64px;
    width: 800px;
  }
}
.modal.-user .modal__icon {
  align-items: center;
  display: flex;
  gap: 0 2.5641025641vw;
  margin-bottom: 4.6153846154vw;
  translate: 0.5128205128vw;
}
@media (1024px <= width) {
  .modal.-user .modal__icon {
    gap: 0 20px;
    margin-bottom: 40px;
    translate: 0;
  }
}
.modal.-user .modal__icon dt {
  width: 8.2051282051vw;
}
@media (1024px <= width) {
  .modal.-user .modal__icon dt {
    width: 64px;
  }
}
.modal.-user .modal__icon dd {
  font-size: 3.0769230769vw;
  line-height: 1.25;
}
@media (1024px <= width) {
  .modal.-user .modal__icon dd {
    font-size: 16px;
    line-height: 2;
  }
}
.modal.-user .modal__text {
  font-size: 3.5897435897vw;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  line-height: 1.5;
  text-align: justify;
}
@media (1024px <= width) {
  .modal.-user .modal__text {
    font-size: 16px;
  }
}

.modal.-nishikawa {
  background-color: #eaf6f7;
  border-color: var(--c-nishikawa);
  padding: 2.5641025641vw 3.5897435897vw 8.2051282051vw;
}
@media (1024px <= width) {
  .modal.-nishikawa {
    padding: 36px 40px 50px;
    width: 1120px;
  }
}
.modal.-nishikawa .modal__header {
  gap: 2.0512820513vw 4.1025641026vw;
  grid-template-columns: 19.2307692308vw 1fr;
  grid-template-rows: auto 1fr;
  margin-bottom: 6.1538461538vw;
}
@media (1024px <= width) {
  .modal.-nishikawa .modal__header {
    gap: 14px 20px;
    grid-template-columns: 160px 1fr;
    margin-bottom: 42px;
  }
}
.modal.-nishikawa .modal__num {
  grid-area: 1/1/2/2;
}
.modal.-nishikawa .modal__tags {
  grid-area: 2/1/3/2;
}
.modal.-nishikawa .modal__title {
  grid-area: 1/2/3/3;
}
.modal.-nishikawa .modal__num img {
  width: 19.2307692308vw;
}
@media (1024px <= width) {
  .modal.-nishikawa .modal__num img {
    width: 160px;
  }
}
.modal.-nishikawa .modal__tag {
  margin-inline: auto;
}
.modal.-nishikawa .modal__title {
  font-size: 4.1025641026vw;
  font-weight: 700;
  line-height: 1.43;
  text-align: center;
  translate: -9.6153846154vw 2.5641025641vw;
}
@media (1024px <= width) {
  .modal.-nishikawa .modal__title {
    font-size: 24px;
    translate: -80px 10px;
  }
}
.modal.-nishikawa .modal__title span {
  display: block;
  font-size: 5.1282051282vw;
  margin-bottom: 3.5897435897vw;
}
@media (1024px <= width) {
  .modal.-nishikawa .modal__title span {
    font-size: 40px;
    margin-bottom: 28px;
  }
}

.modalLine {
  display: block;
  margin-bottom: 6.1538461538vw;
  padding: 5.641025641vw 6.4102564103vw;
}
@media (1024px <= width) {
  .modalLine {
    margin-bottom: 48px;
    padding: 20px 69px;
  }
}

.modalShop {
  padding-bottom: 10.2564102564vw;
  text-align: center;
}
@media (1024px <= width) {
  .modalShop {
    padding-bottom: 80px;
  }
}
.modalShop img {
  margin-bottom: 5.1282051282vw;
  margin-left: auto;
  width: 71.7948717949vw;
}
@media (1024px <= width) {
  .modalShop img {
    margin-bottom: 0;
    width: 731px;
  }
}
.modalShop .btn {
  margin-inline: auto;
  width: 63.5897435897vw;
}
@media (1024px <= width) {
  .modalShop .btn {
    margin: 0;
    width: 274px;
  }
}
@media (1024px <= width) {
  .modalShop .btn.-cart {
    translate: 69px;
  }
}
.modalShop .btn.-shop {
  margin-top: 10.2564102564vw;
}
@media (1024px <= width) {
  .modalShop .btn.-shop {
    margin-inline: auto;
    margin-top: 80px;
    width: 324px;
  }
}

.js-close {
  box-shadow: 0 0.5rem 0.75rem -0.5rem rgba(0, 0, 0, 0.5);
  position: absolute;
  right: -2.0512820513vw;
  top: -3.0769230769vw;
}
@media (1024px <= width) {
  .js-close {
    right: -30px;
    top: -24px;
  }
}

/*
Video
*/
.video video {
  max-height: 90dvh;
  width: 100%;
}

.yt {
  padding-top: 56.25%;
  position: relative;
  width: 100%;
}
.yt iframe {
  height: 100% !important;
  position: absolute;
  right: 0;
  top: 0;
  width: 100% !important;
}

.yts {
  height: 90dvh;
  margin-inline: auto;
  padding-top: 50.625%;
  position: relative;
  width: 50.625dvh;
}
.yts iframe {
  height: 100% !important;
  position: absolute;
  right: 0;
  top: 0;
  width: 100% !important;
}

.-video {
  width: 100vw;
}
@media (1024px <= width) {
  .-video {
    width: 100%;
  }
}
.-video .js-close {
  position: fixed;
  right: 12px;
  top: 20px;
}

/*
Modal001
*/
.modal001__main {
  margin-bottom: 6.1538461538vw;
  margin-inline: auto;
  width: 74.358974359vw;
}
@media (1024px <= width) {
  .modal001__main {
    margin-bottom: 42px;
    width: 800px;
  }
}
.modal001__main img {
  display: block;
  margin-bottom: 4.358974359vw;
}
@media (1024px <= width) {
  .modal001__main img {
    margin-bottom: 39px;
  }
}
.modal001__main p {
  font-size: 3.5897435897vw;
  line-height: 1.35;
  text-align: center;
}
@media (1024px <= width) {
  .modal001__main p {
    font-size: 24px;
    line-height: 1.4;
  }
}
.modal001__body {
  background-color: var(--c-white);
  border-radius: 2.0512820513vw;
  margin-inline: auto;
  width: 74.358974359vw;
}
@media (1024px <= width) {
  .modal001__body {
    border-radius: 22px;
    width: 800px;
  }
}
.modal001__detail {
  margin-inline: auto;
  padding: 5.641025641vw 6.4102564103vw;
}
@media (1024px <= width) {
  .modal001__detail {
    padding: 60px 69px;
  }
}
.modal001__title {
  font-size: 5.1282051282vw;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 4.1025641026vw;
  text-align: center;
}
@media (1024px <= width) {
  .modal001__title {
    font-size: 40px;
    margin-bottom: 32px;
  }
}
.modal001__text {
  font-size: 3.5897435897vw;
  line-height: 1.35;
  margin-bottom: 4.1025641026vw;
  text-align: center;
}
@media (1024px <= width) {
  .modal001__text {
    font-size: 20px;
    margin-bottom: 32px;
  }
}
.modal001__title2 {
  font-size: 4.1025641026vw;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 8.2051282051vw;
  margin-top: 8.2051282051vw;
  text-align: center;
}
@media (1024px <= width) {
  .modal001__title2 {
    font-size: 32px;
    margin-bottom: 60px;
    margin-top: 60px;
  }
}
.modal001__item1 {
  background-color: #ccc;
  border: 0.5128205128vw solid #ccc;
  margin-bottom: 12.3076923077vw;
  margin-inline: auto;
  position: relative;
  width: 61.5384615385vw;
}
@media (1024px <= width) {
  .modal001__item1 {
    border-width: 2px;
    margin-bottom: 96px;
    width: 662px;
  }
}
.modal001__item1::before {
  align-items: center;
  background-color: #ccc;
  border-radius: 3.5897435897vw;
  content: "一般的な敷ふとん";
  display: flex;
  font-size: 3.5897435897vw;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-weight: 700;
  height: 7.1794871795vw;
  justify-content: center;
  left: 12.8205128205vw;
  position: absolute;
  top: -3.5897435897vw;
  width: 35.8974358974vw;
}
@media (1024px <= width) {
  .modal001__item1::before {
    border-radius: 32px;
    font-size: 24px;
    height: 64px;
    left: 191px;
    top: -32px;
    width: 280px;
  }
}
.modal001__item1 dd {
  font-size: 3.5897435897vw;
  font-weight: 700;
  padding: 1.0256410256vw;
  text-align: center;
}
@media (1024px <= width) {
  .modal001__item1 dd {
    font-size: 20px;
    padding: 16px;
  }
}
.modal001__item2 {
  background-color: var(--c-primary);
  border: 0.5128205128vw solid var(--c-primary);
  margin-bottom: 16.4102564103vw;
  margin-inline: auto;
  position: relative;
  width: 61.5384615385vw;
}
@media (1024px <= width) {
  .modal001__item2 {
    border-width: 2px;
    margin-bottom: 140px;
    width: 662px;
  }
}
.modal001__item2::before {
  align-items: center;
  background-color: var(--c-primary);
  border-radius: 3.5897435897vw;
  content: "ヘルシーマットレス";
  display: flex;
  font-size: 3.5897435897vw;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-weight: 700;
  height: 7.1794871795vw;
  justify-content: center;
  left: 12.8205128205vw;
  position: absolute;
  top: -3.5897435897vw;
  width: 35.8974358974vw;
}
@media (1024px <= width) {
  .modal001__item2::before {
    border-radius: 32px;
    font-size: 24px;
    height: 64px;
    left: 191px;
    top: -32px;
    width: 280px;
  }
}
.modal001__item2 dd {
  font-size: 3.5897435897vw;
  font-weight: 700;
  padding: 3.0769230769vw;
  text-align: justify;
}
@media (1024px <= width) {
  .modal001__item2 dd {
    font-size: 16px;
    padding: 30px 40px;
  }
}
.modal001__item2 dd span {
  display: block;
  font-size: 4.1025641026vw;
  margin-bottom: 2.0512820513vw;
  text-align: center;
}
@media (1024px <= width) {
  .modal001__item2 dd span {
    font-size: 24px;
    margin-bottom: 16px;
  }
}

/*
Fv
*/
.fv {
  height: 216.4vw;
  width: 100vw;
}
@media (1024px <= width) {
  .fv {
    margin-inline: auto;
    max-height: 650px;
    max-width: 1280px;
  }
}

/*
About
*/
.about {
  padding-bottom: 21.7948717949vw;
  padding-top: 20.5128205128vw;
}
@media (1024px <= width) {
  .about {
    padding-bottom: 124px;
    padding-top: 84px;
  }
}
.about__title {
  font-size: 5.1282051282vw;
  letter-spacing: 0.06em;
  margin-bottom: 15.3846153846vw;
  text-align: center;
}
@media (1024px <= width) {
  .about__title {
    font-size: 40px;
    margin-bottom: 64px;
  }
}
.about__title::after {
  border-bottom: 3px solid var(--c-primary);
  content: "";
  display: block;
  margin-inline: auto;
  width: 28.4615384615vw;
}
@media (1024px <= width) {
  .about__title::after {
    border-width: 6px;
    width: 200px;
  }
}
.about__text {
  font-size: 4.1025641026vw;
  line-height: 2.25;
  text-align: center;
}
@media (1024px <= width) {
  .about__text {
    font-size: 20px;
    letter-spacing: 0.012em;
    line-height: 2.2;
  }
}

/*
Trouble
*/
.trouble {
  background-color: var(--c-gray);
  padding-bottom: 34.6153846154vw;
  padding-top: 16.4102564103vw;
  position: relative;
}
@media (1024px <= width) {
  .trouble {
    padding-bottom: 165px;
    padding-top: 75px;
  }
}
.trouble::before {
  background: url(../img/bg_top_02.png) repeat-x;
  background-size: contain;
  content: "";
  height: 4.1025641026vw;
  position: absolute;
  top: -4.1025641026vw;
  width: 100vw;
}
@media (1024px <= width) {
  .trouble::before {
    height: 16px;
    top: -16px;
  }
}
.trouble__title {
  font-size: 5.1282051282vw;
  letter-spacing: 0.05em;
  margin-bottom: 13.3333333333vw;
  text-align: center;
}
@media (1024px <= width) {
  .trouble__title {
    font-size: 24px;
    margin-bottom: 76px;
  }
}
.trouble__catch {
  font-size: 7.1794871795vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 2.2;
  margin-bottom: 8.7179487179vw;
  text-align: center;
}
@media (1024px <= width) {
  .trouble__catch {
    font-size: 40px;
    margin-bottom: 64px;
  }
}
.trouble__catch span {
  background: url(../img/wave.svg) repeat-x bottom left/auto 12px;
  margin: 0;
  padding-bottom: 14px;
}
.trouble__imgs {
  display: grid;
  grid-template-rows: repeat(3, 70vw);
  row-gap: 14.8717948718vw;
}
@media (1024px <= width) {
  .trouble__imgs {
    gap: 0 74px;
    grid-template-columns: repeat(3, 244px);
    grid-template-rows: auto;
    margin-inline: auto;
    width: 880px;
  }
}
.trouble__imgs img {
  margin-inline: auto;
  width: 64.8717948718vw;
}
@media (1024px <= width) {
  .trouble__imgs img {
    width: 244px;
  }
}
.trouble__imgs .-img2 img {
  width: 53.9102564103vw;
}
@media (1024px <= width) {
  .trouble__imgs .-img2 img {
    width: 220px;
  }
}

/*
Dots
*/
.dots {
  background-color: var(--c-secondary);
  padding-bottom: 25.641025641vw;
  padding-top: 38.4615384615vw;
  position: relative;
}
@media (1024px <= width) {
  .dots {
    padding-bottom: 136px;
    padding-top: 188px;
  }
}
.dots::before {
  background: url(../img/bg_top_03.png) repeat-x;
  background-size: contain;
  content: "";
  height: 4.1025641026vw;
  position: absolute;
  top: -4.1025641026vw;
  width: 100vw;
}
@media (1024px <= width) {
  .dots::before {
    height: 16px;
    top: -16px;
  }
}
.dots__catch {
  background-color: var(--c-primary);
  border-radius: 3.0769230769vw;
  font-size: 5.1282051282vw;
  font-weight: 700;
  left: 12.8205128205vw;
  line-height: 1.4;
  padding: 2.5641025641vw 0;
  position: absolute;
  text-align: center;
  top: -15.3846153846vw;
  width: 74.358974359vw;
}
@media (1024px <= width) {
  .dots__catch {
    border-radius: 24px;
    font-size: 24px;
    left: calc(50% - 240px);
    line-height: 1.6;
    padding: 20px 0;
    top: -65px;
    width: 480px;
  }
}
.dots__catch::after {
  background: url(../img/arrow.png) no-repeat;
  background-size: contain;
  bottom: -17.9487179487vw;
  content: "";
  display: block;
  height: 9.8717948718vw;
  left: 29.2948717949vw;
  position: absolute;
  width: 15.7692307692vw;
}
@media (1024px <= width) {
  .dots__catch::after {
    bottom: -90px;
    height: 58px;
    left: 191px;
    width: 98px;
  }
}
.dots__title {
  font-size: 5.1282051282vw;
  letter-spacing: 0.06em;
  margin-bottom: 10.2564102564vw;
  text-align: center;
}
@media (1024px <= width) {
  .dots__title {
    font-size: 40px;
    margin-bottom: 64px;
  }
}
.dots__title::after {
  border-bottom: 3px solid var(--c-primary);
  content: "";
  display: block;
  margin-inline: auto;
  width: 59.2307692308vw;
}
@media (1024px <= width) {
  .dots__title::after {
    border-width: 6px;
    width: 470px;
  }
}
.dots__dots {
  margin-bottom: 10.2564102564vw;
  overflow: hidden;
  position: relative;
}
@media (1024px <= width) {
  .dots__dots {
    margin-bottom: -45px;
    margin-inline: auto;
    width: 1280px;
  }
}
.dots__dots .-name {
  left: 5.1282051282vw;
  position: absolute;
  width: 94.8717948718vw;
}
@media (1024px <= width) {
  .dots__dots .-name {
    left: 152px;
    top: 5px;
    width: 360px;
  }
}
.dots__dots .-mattress {
  margin-left: auto;
  width: 51.2820512821vw;
}
@media (1024px <= width) {
  .dots__dots .-mattress {
    width: 1280px;
  }
}
.dots__dots .btn.-cart {
  margin-inline: auto;
  translate: 0 -2.5641025641vw;
}
@media (1024px <= width) {
  .dots__dots .btn.-cart {
    left: 152px;
    margin-inline: 0;
    position: relative;
    top: -145px;
    translate: 0 -32px;
  }
}
.dots__plus {
  overflow: hidden;
  padding-bottom: 23.0769230769vw;
  position: relative;
}
@media (1024px <= width) {
  .dots__plus {
    margin-bottom: -60px;
    margin-inline: auto;
    padding-bottom: 0;
    width: 1280px;
  }
}
.dots__plus .-name {
  left: 5.1282051282vw;
  position: absolute;
  top: 8.2051282051vw;
  width: 94.8717948718vw;
}
@media (1024px <= width) {
  .dots__plus .-name {
    left: 152px;
    top: 10px;
    width: 360px;
  }
}
.dots__plus .-mattress {
  margin-left: auto;
  width: 51.2820512821vw;
}
@media (1024px <= width) {
  .dots__plus .-mattress {
    width: 1280px;
  }
}
.dots__plus .btn.-cart {
  margin-inline: auto;
  translate: 0 7.6923076923vw;
}
@media (1024px <= width) {
  .dots__plus .btn.-cart {
    left: 152px;
    margin-inline: 0;
    position: relative;
    top: -235px;
    translate: 0 96px;
  }
}
.dots .btn.-shop {
  margin-inline: auto;
}
.dots__box {
  margin-bottom: 20.5128205128vw;
  margin-inline: auto;
  position: relative;
}
@media (1024px <= width) {
  .dots__box {
    margin-bottom: 137px;
    translate: 24px;
    width: 1024px;
  }
}
.dots__box .-box {
  margin-bottom: 6.1538461538vw;
}
@media (1024px <= width) {
  .dots__box .-box {
    margin-bottom: 0;
  }
}
.dots__box .btn.-cart {
  margin-inline: auto;
}
@media (1024px <= width) {
  .dots__box .btn.-cart {
    bottom: 40px;
    margin-inline: 0;
    position: absolute;
  }
}

/*
Point
*/
.point {
  background-color: var(--c-white);
  margin-bottom: 8.2051282051vw;
  margin-inline: auto;
  padding-bottom: 2.5641025641vw;
  padding-top: 14.1025641026vw;
  position: relative;
  width: 94.4vw;
}
@media (1024px <= width) {
  .point {
    margin-bottom: 40px;
    padding-bottom: 64px;
    padding-top: 55px;
    width: 960px;
  }
}
.point::before {
  background: url(../img/bg_top_04.png) repeat-x;
  background-size: contain;
  content: "";
  height: 3.8461538462vw;
  position: absolute;
  top: -3.8461538462vw;
  width: 94.4vw;
}
@media (1024px <= width) {
  .point::before {
    height: 15px;
    top: -15px;
    width: 960px;
  }
}
.point::after {
  background: url(../img/bg_top_03.png) repeat-x;
  background-size: contain;
  bottom: 0;
  content: "";
  height: 3.8461538462vw;
  position: absolute;
  width: 94.4vw;
}
@media (1024px <= width) {
  .point::after {
    height: 15px;
    width: 960px;
  }
}
.point__title {
  font-size: 5.1282051282vw;
  letter-spacing: 0.05em;
  margin-bottom: 12.3076923077vw;
  text-align: center;
}
@media (1024px <= width) {
  .point__title {
    font-size: 24px;
    margin-bottom: 40px;
  }
}
.point__title::after {
  border-bottom: 3px solid var(--c-primary);
  content: "";
  display: block;
  margin-inline: auto;
}
@media (1024px <= width) {
  .point__title::after {
    border-width: 4px;
  }
}
.point__title.-point1::after {
  width: 43.8461538462vw;
}
@media (1024px <= width) {
  .point__title.-point1::after {
    width: 214px;
  }
}
.point__title.-point2::after {
  width: 53.5897435897vw;
}
@media (1024px <= width) {
  .point__title.-point2::after {
    width: 264px;
  }
}
.point__title.-point3::after {
  width: 48.4615384615vw;
}
@media (1024px <= width) {
  .point__title.-point3::after {
    width: 240px;
  }
}
.point__text {
  font-size: 3.5897435897vw;
  letter-spacing: 0.06em;
  line-height: 1.7;
  margin-bottom: 9.7435897436vw;
  text-align: center;
}
@media (1024px <= width) {
  .point__text {
    font-size: 16px;
    margin-bottom: 49px;
  }
}
@media (1024px <= width) {
  .point__wrap {
    display: flex;
    justify-content: space-between;
    margin-inline: auto;
    width: 800px;
  }
}
.point__item {
  margin-inline: auto;
  width: 82.0512820513vw;
}
@media (1024px <= width) {
  .point__item {
    width: 360px;
  }
}
.point__item .-dots {
  margin-bottom: 5.1282051282vw;
  margin-inline: auto;
  width: 24.8717948718vw;
}
@media (1024px <= width) {
  .point__item .-dots {
    margin-bottom: 24px;
    width: 109px;
  }
}
.point__item .-plus {
  margin-bottom: 5.1282051282vw;
  margin-inline: auto;
  width: 32.8205128205vw;
}
@media (1024px <= width) {
  .point__item .-plus {
    margin-bottom: 24px;
    width: 144px;
  }
}
.point__item .-img {
  margin-bottom: 4.1025641026vw;
}
@media (1024px <= width) {
  .point__item .-img {
    margin-bottom: 24px;
  }
}
.point__cap {
  font-size: 3.5897435897vw;
  line-height: 2;
  margin-bottom: 13.0769230769vw;
  text-align: center;
}
@media (1024px <= width) {
  .point__cap {
    font-size: 14px;
    line-height: 1.4;
    margin-bottom: 0;
  }
}

/*
Movie
*/
.movie {
  background-color: var(--c-white);
  padding-bottom: 28.2051282051vw;
  padding-top: 14.1025641026vw;
  position: relative;
}
@media (1024px <= width) {
  .movie {
    padding-bottom: 160px;
    padding-top: 78px;
  }
}
.movie::before {
  background: url(../img/bg_top_04.png) repeat-x;
  background-size: contain;
  content: "";
  height: 4.1025641026vw;
  position: absolute;
  top: -4.1025641026vw;
  width: 100vw;
}
@media (1024px <= width) {
  .movie::before {
    height: 16px;
    top: -16px;
  }
}
.movie__title {
  font-size: 5.1282051282vw;
  letter-spacing: 0.06em;
  margin-bottom: 15.3846153846vw;
  text-align: center;
}
@media (1024px <= width) {
  .movie__title {
    font-size: 24px;
    margin-bottom: 64px;
  }
}
.movie__title::after {
  border-bottom: 3px solid var(--c-primary);
  content: "";
  display: block;
  margin-inline: auto;
  width: 52.8205128205vw;
}
@media (1024px <= width) {
  .movie__title::after {
    border-width: 4px;
    width: 248px;
  }
}
.movie__item {
  align-items: center;
  border-radius: 1.4102564103vw;
  cursor: pointer;
  display: flex;
  justify-content: center;
  margin-inline: auto;
  overflow: hidden;
  position: relative;
  width: 71.7948717949vw;
}
@media (1024px <= width) {
  .movie__item {
    border-radius: 6px;
    width: 300px;
  }
}
.movie__item img {
  transition: scale 0.2s ease-out;
}
.movie__item img:focus {
  scale: 1.05;
}
@media (hover: hover) and (pointer: fine) {
  .movie__item img:hover {
    scale: 1.05;
  }
}
.movie__item::before {
  background: url(../img/icon_play.svg) center no-repeat;
  background-size: contain;
  content: "";
  display: inline-block;
  height: 20.5128205128vw;
  position: absolute;
  vertical-align: middle;
  width: 20.5128205128vw;
  z-index: 2;
}
@media (1024px <= width) {
  .movie__item::before {
    height: 64px;
    width: 64px;
  }
}
.movie__item.-new::after {
  background: url(../img/icon_new.svg) center no-repeat;
  background-size: contain;
  content: "";
  display: inline-block;
  height: 14.8717948718vw;
  left: 3.0769230769vw;
  position: absolute;
  top: 3.0769230769vw;
  vertical-align: middle;
  width: 17.9487179487vw;
}
@media (1024px <= width) {
  .movie__item.-new::after {
    height: 45px;
    left: 12px;
    top: 12px;
    width: 54px;
  }
}

/*
Voice
*/
.voice {
  background-color: var(--c-primary);
  padding-bottom: 24.6153846154vw;
  padding-top: 14.6153846154vw;
  position: relative;
}
@media (1024px <= width) {
  .voice {
    padding-bottom: 135px;
    padding-top: 78px;
  }
}
.voice::before {
  background: url(../img/bg_top_01.png) repeat-x;
  background-size: contain;
  content: "";
  height: 4.1025641026vw;
  position: absolute;
  top: -4.1025641026vw;
  width: 100vw;
}
@media (1024px <= width) {
  .voice::before {
    height: 16px;
    top: -16px;
  }
}
.voice__title {
  margin-bottom: 3.5897435897vw;
  margin-inline: auto;
  width: 57.9487179487vw;
}
@media (1024px <= width) {
  .voice__title {
    margin-bottom: 30px;
    width: 348px;
  }
}
.voice__text {
  font-size: 4.1025641026vw;
  line-height: 1.5;
  text-align: center;
}
@media (1024px <= width) {
  .voice__text {
    font-size: 20px;
  }
}

/*
USP
*/
.uspNav {
  display: flex;
  justify-content: space-between;
  margin-bottom: 8.2051282051vw;
  margin-inline: auto;
  width: 89.7435897436vw;
}
@media (1024px <= width) {
  .uspNav {
    margin-bottom: 42px;
    width: 545px;
  }
}
.uspNav__item {
  background-color: var(--c-white);
  border: 0.5128205128vw solid;
  border-radius: 4.1025641026vw;
  color: var(--c-black);
  cursor: pointer;
  font-size: 2.5641025641vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1;
  padding: 2.3076923077vw 2.0512820513vw;
  transition: background-color 0.2s ease-out;
}
@media (1024px <= width) {
  .uspNav__item {
    border-radius: 20px;
    border-width: 2px;
    font-size: 14px;
    padding: 12px 16px;
  }
}
.uspNav__item.-all {
  border-color: var(--c-black);
}
.uspNav__item.-all:focus {
  background-color: var(--c-black);
  color: var(--c-white);
}
@media (hover: hover) and (pointer: fine) {
  .uspNav__item.-all:hover {
    background-color: var(--c-black);
    color: var(--c-white);
  }
}
.uspNav__item.-user {
  border-color: var(--c-user);
}
.uspNav__item.-user:focus {
  background-color: var(--c-user);
}
@media (hover: hover) and (pointer: fine) {
  .uspNav__item.-user:hover {
    background-color: var(--c-user);
  }
}
.uspNav__item.-dr {
  border-color: var(--c-dr);
}
.uspNav__item.-dr:focus {
  background-color: var(--c-dr);
}
@media (hover: hover) and (pointer: fine) {
  .uspNav__item.-dr:hover {
    background-color: var(--c-dr);
  }
}
.uspNav__item.-nishikawa {
  border-color: var(--c-nishikawa);
}
.uspNav__item.-nishikawa:focus {
  background-color: var(--c-nishikawa);
}
@media (hover: hover) and (pointer: fine) {
  .uspNav__item.-nishikawa:hover {
    background-color: var(--c-nishikawa);
  }
}

.uspItems {
  margin-bottom: 12.8205128205vw;
  margin-inline: auto;
  position: relative;
  width: 91.7948717949vw;
}
@media (1024px <= width) {
  .uspItems {
    margin-bottom: 65px;
    translate: 8px;
    width: 561px;
  }
}
.uspItems.-default {
  translate: 0;
  width: 545px;
}

.uspItems.-default {
  display: grid;
  gap: 2.0512820513vw;
  grid-template-columns: repeat(2, 43.8461538462vw);
  grid-template-rows: repeat(6, 31.0256410256vw);
}
@media (1024px <= width) {
  .uspItems.-default {
    gap: 16px;
    grid-template-columns: repeat(3, 171px);
    grid-template-rows: repeat(4, 121px);
  }
}
.uspItems.-default .voice001 {
  grid-area: 1/1/3/2;
}
.uspItems.-default .voice002 {
  grid-area: 1/2/2/3;
}
.uspItems.-default .voice006 {
  grid-area: 2/2/3/3;
}
.uspItems.-default .voice008 {
  grid-area: 3/1/4/3;
}
.uspItems.-default .voice004 {
  grid-area: 4/1/5/3;
}
.uspItems.-default .voice007 {
  grid-area: 5/1/7/2;
}
.uspItems.-default .voice010 {
  grid-area: 5/2/6/3;
}
@media (1024px <= width) {
  .uspItems.-default .voice001 {
    grid-area: 1/1/3/2;
  }
  .uspItems.-default .voice002 {
    grid-area: 1/2/2/3;
  }
  .uspItems.-default .voice006 {
    grid-area: 1/3/2/4;
  }
  .uspItems.-default .voice008 {
    grid-area: 2/2/3/4;
  }
  .uspItems.-default .voice004 {
    grid-area: 3/1/4/3;
  }
  .uspItems.-default .voice007 {
    grid-area: 3/3/5/4;
  }
  .uspItems.-default .voice010 {
    grid-area: 4/1/5/2;
  }
}

.uspItem {
  border: 0.7692307692vw solid;
  border-radius: 3.0769230769vw;
  margin: 1.0256410256vw;
  overflow: hidden;
  position: absolute;
}
@media (1024px <= width) {
  .uspItem {
    border-radius: 12px;
    border-width: 3px;
    margin: 8px;
  }
}
.uspItem.-user {
  background-color: #fefce5;
  border-color: var(--c-user);
}
.uspItem.-user.-modal::after {
  background-color: var(--c-user);
}
.uspItem.-dr {
  background-color: #fbf3f5;
  border-color: var(--c-dr);
}
.uspItem.-dr.-modal::after {
  background-color: var(--c-dr);
}
.uspItem.-nishikawa {
  background-color: #eaf6f7;
  border-color: var(--c-nishikawa);
}
.uspItem.-nishikawa.-modal::after {
  background-color: var(--c-nishikawa);
}
.uspItem.-s, .uspItem.-v, .uspItem.-v2 {
  width: 43.8461538462vw;
}
@media (1024px <= width) {
  .uspItem.-s, .uspItem.-v, .uspItem.-v2 {
    width: 171px;
  }
}
.uspItem.-w, .uspItem.-w2 {
  width: 89.4871794872vw;
}
@media (1024px <= width) {
  .uspItem.-w, .uspItem.-w2 {
    width: 358px;
  }
}
.uspItem.-s, .uspItem.-w, .uspItem.-w2 {
  height: 31.0256410256vw;
}
@media (1024px <= width) {
  .uspItem.-s, .uspItem.-w, .uspItem.-w2 {
    height: 121px;
  }
}
.uspItem.-v, .uspItem.-v2 {
  height: 64.1025641026vw;
}
@media (1024px <= width) {
  .uspItem.-v, .uspItem.-v2 {
    height: 258px;
  }
}
.uspItem .uspItem__inner {
  display: grid;
  height: 100%;
  position: relative;
}
.uspItem .-num {
  height: 12.8205128205vw;
  position: absolute;
  width: 13.9743589744vw;
}
@media (1024px <= width) {
  .uspItem .-num {
    height: 51px;
    width: 54px;
  }
}
.uspItem .-icon {
  align-items: center;
  display: flex;
  gap: 1.2820512821vw;
  margin-left: auto;
  position: relative;
  translate: -2.5641025641vw -0.5128205128vw;
  z-index: 4;
}
@media (1024px <= width) {
  .uspItem .-icon {
    gap: 5px;
    translate: -10px -2px;
  }
}
.uspItem .-icon dt {
  width: 7.1794871795vw;
}
@media (1024px <= width) {
  .uspItem .-icon dt {
    width: 32px;
  }
}
.uspItem .-icon dd {
  font-size: 2.5641025641vw;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  line-height: 1.2;
}
@media (1024px <= width) {
  .uspItem .-icon dd {
    font-size: 10px;
  }
}
.uspItem.-s .uspItem__inner {
  grid-template-rows: repeat(2, 1fr);
  padding-top: 4.6153846154vw;
}
@media (1024px <= width) {
  .uspItem.-s .uspItem__inner {
    padding-top: 18px;
  }
}
.uspItem.-s .uspItem__inner:has(> .-labo) {
  padding-top: 6.9230769231vw;
}
@media (1024px <= width) {
  .uspItem.-s .uspItem__inner:has(> .-labo) {
    padding-top: 27px;
  }
}
.uspItem.-s .-num {
  bottom: 0;
  left: 0.7692307692vw;
}
@media (1024px <= width) {
  .uspItem.-s .-num {
    left: 3px;
  }
}
.uspItem.-s .-text {
  text-align: center;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-size: 3.0769230769vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.4;
}
@media (1024px <= width) {
  .uspItem.-s .-text {
    font-size: 12px;
  }
}
.uspItem.-s .-text.-l {
  font-size: 3.5897435897vw;
}
@media (1024px <= width) {
  .uspItem.-s .-text.-l {
    font-size: 14px;
  }
}
.uspItem.-w .uspItem__inner {
  grid-template-rows: repeat(2, 1fr);
  padding-top: 7.4358974359vw;
}
@media (1024px <= width) {
  .uspItem.-w .uspItem__inner {
    padding-top: 29px;
  }
}
.uspItem.-w .-num {
  left: 1.0256410256vw;
  top: 1.2820512821vw;
}
@media (1024px <= width) {
  .uspItem.-w .-num {
    left: 4px;
    top: 5px;
  }
}
.uspItem.-w .-text {
  text-align: center;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-size: 3.5897435897vw;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.4;
}
@media (1024px <= width) {
  .uspItem.-w .-text {
    font-size: 14px;
  }
}
.uspItem.-w2 .uspItem__inner {
  grid-template-columns: 41.7948717949vw 1fr;
}
@media (1024px <= width) {
  .uspItem.-w2 .uspItem__inner {
    grid-template-columns: 163px 1fr;
  }
}
.uspItem.-w2 .-num {
  left: 42.3076923077vw;
  top: 1.7948717949vw;
}
@media (1024px <= width) {
  .uspItem.-w2 .-num {
    left: 165px;
    top: 7px;
  }
}
.uspItem.-w2 .-text {
  text-align: center;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-size: 4.1025641026vw;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.4;
  padding-top: 4.6153846154vw;
}
@media (1024px <= width) {
  .uspItem.-w2 .-text {
    font-size: 16px;
    padding-top: 18px;
  }
}
.uspItem.-w2 .-text span {
  display: block;
  font-size: 4.8717948718vw;
  margin-bottom: 3.3333333333vw;
  text-align: left;
  translate: 15.8974358974vw;
}
@media (1024px <= width) {
  .uspItem.-w2 .-text span {
    font-size: 20px;
    margin-bottom: 13px;
    translate: 62px;
  }
}
.uspItem.-v .uspItem__inner {
  gap: 6.1538461538vw;
  grid-template-rows: 29.4871794872vw 1fr;
}
@media (1024px <= width) {
  .uspItem.-v .uspItem__inner {
    gap: 24px;
    grid-template-rows: 115px 1fr;
  }
}
.uspItem.-v .-num {
  left: 1.0256410256vw;
  top: 24.358974359vw;
}
@media (1024px <= width) {
  .uspItem.-v .-num {
    left: 4px;
    top: 95px;
  }
}
.uspItem.-v .-text {
  text-align: center;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-size: 3.5897435897vw;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.4;
}
@media (1024px <= width) {
  .uspItem.-v .-text {
    font-size: 14px;
  }
}
.uspItem.-v .-text span {
  display: block;
  font-size: 5.1282051282vw;
  margin-bottom: 1.5384615385vw;
}
@media (1024px <= width) {
  .uspItem.-v .-text span {
    font-size: 20px;
    margin-bottom: 6px;
  }
}
.uspItem.-v2 .uspItem__inner {
  gap: 8.4615384615vw;
  grid-template-rows: 29.4871794872vw 1fr;
}
@media (1024px <= width) {
  .uspItem.-v2 .uspItem__inner {
    gap: 33px;
    grid-template-rows: 115px 1fr;
  }
}
.uspItem.-v2 .-num {
  left: 1.0256410256vw;
  top: 26.4102564103vw;
}
@media (1024px <= width) {
  .uspItem.-v2 .-num {
    left: 4px;
    top: 103px;
  }
}
.uspItem.-v2 .-text {
  text-align: center;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-size: 2.8205128205vw;
  letter-spacing: 0.1em;
  line-height: 1.2;
}
@media (1024px <= width) {
  .uspItem.-v2 .-text {
    font-size: 11px;
  }
}
.uspItem.-v2 .-text span {
  display: block;
  font-size: 4.1025641026vw;
  font-weight: 700;
  line-height: 1.25;
  margin-bottom: 4.358974359vw;
}
@media (1024px <= width) {
  .uspItem.-v2 .-text span {
    font-size: 16px;
    margin-bottom: 17px;
  }
}
.uspItem.-modal {
  cursor: pointer;
}
.uspItem.-modal::before {
  border-right: 0.5128205128vw solid var(--c-white);
  border-top: 0.5128205128vw solid var(--c-white);
  bottom: 1.0256410256vw;
  content: "";
  display: block;
  height: 1.7948717949vw;
  position: absolute;
  right: 1.0256410256vw;
  rotate: 45deg;
  width: 1.7948717949vw;
  z-index: 3;
}
@media (1024px <= width) {
  .uspItem.-modal::before {
    border-width: 2px;
    bottom: 5px;
    height: 7px;
    right: 5px;
    width: 7px;
  }
}
.uspItem.-modal::after {
  -webkit-clip-path: polygon(100% 0, 100% 100%, 0 100%);
  bottom: 0;
          clip-path: polygon(100% 0, 100% 100%, 0 100%);
  content: "";
  height: 6.6666666667vw;
  position: absolute;
  right: 0;
  translate: 1px 1px;
  width: 6.6666666667vw;
}
@media (1024px <= width) {
  .uspItem.-modal::after {
    height: 32px;
    width: 32px;
  }
}
.uspItem.-modal .uspItem__inner {
  transition: scale 0.2s ease-out;
}
.uspItem.-modal .uspItem__inner:focus {
  scale: 1.05 !important;
}
@media (hover: hover) and (pointer: fine) {
  .uspItem.-modal .uspItem__inner:hover {
    scale: 1.05 !important;
  }
}
.uspItem .-labo {
  background-color: var(--c-dr);
  border-bottom-right-radius: 3.0769230769vw;
  height: 5.8974358974vw;
  left: 0;
  position: absolute;
  top: 0;
  translate: -1px -1px;
  width: 13.3333333333vw;
}
@media (1024px <= width) {
  .uspItem .-labo {
    border-bottom-right-radius: 12px;
    height: 24px;
    width: 60px;
  }
}
.uspItem .-labo::before {
  background: url(../img/voice/labo.png) no-repeat;
  background-size: contain;
  content: "";
  height: 3.2051282051vw;
  left: 1.0256410256vw;
  position: absolute;
  top: 1.2820512821vw;
  width: 10.7692307692vw;
}
@media (1024px <= width) {
  .uspItem .-labo::before {
    height: 15px;
    left: 2px;
    top: 3px;
    width: 50px;
  }
}

.voice010 .-icon {
  translate: -3.8461538462vw -0.5128205128vw !important;
}
@media (1024px <= width) {
  .voice010 .-icon {
    translate: -18px -2px !important;
  }
}

.mfp-bg {
  background-color: var(--c-black);
  opacity: 0.9 !important;
  transition: opacity 0.2s ease-out;
}

@media (1024px <= width) {
  .mfp-wrap {
    opacity: 0;
    transition: opacity 0.2s ease-out;
    translate: 0 -16px;
  }
}

.mfp-container {
  overflow-y: auto;
  padding: 5dvh 0 !important;
}

.mfp-content {
  max-width: 1120px !important;
}

.mfp-close,
.mfp-bottom-bar {
  display: none;
}

.mfp-figure {
  border-radius: 0.5128205128vw;
  overflow: hidden;
}

.mfp-figure::after {
  box-shadow: none;
}

.mfp-img {
  padding: 0 !important;
  transition: scale 0.2s ease-out;
}
.mfp-img:hover {
  scale: 1.01;
}

.mfp-bg.mfp-ready {
  opacity: 0.9;
}

@media (1024px <= width) {
  .mfp-wrap.mfp-ready {
    opacity: 1;
    translate: 0 0;
  }
}

@media (1024px <= width) {
  .mfp-bg.mfp-removing {
    opacity: 0;
  }
}

.mfp-wrap.mfp-removing {
  opacity: 0;
}
@media (1024px <= width) {
  .mfp-wrap.mfp-removing {
    translate: 0 16px;
  }
}

.js-close {
  align-items: center;
  background-color: var(--c-primary);
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  height: 8.2051282051vw;
  justify-content: center;
  width: 8.2051282051vw;
}
@media (1024px <= width) {
  .js-close {
    height: 64px;
    width: 64px;
  }
}
.js-close::before, .js-close::after {
  background-color: var(--c-black);
  content: "";
  display: block;
  height: 1px !important;
  position: absolute;
  width: 4.1025641026vw;
}
@media (1024px <= width) {
  .js-close::before, .js-close::after {
    width: 32px;
  }
}
.js-close::before {
  rotate: -45deg;
}
.js-close::after {
  rotate: 45deg;
}

.js-kv .splide__slide {
  opacity: 1 !important;
}
.js-kv .splide__slide.is-move img {
  translate: 100%;
}
.js-kv .splide__slide.is-old {
  z-index: 1 !important;
}
.js-kv .splide__slide.is-active {
  z-index: 2 !important;
}
.js-kv .splide__slide.is-active img {
  transition: translate 1s;
  translate: 0;
}

.js-kv .splide__pagination {
  bottom: 28.2051282051vw;
  display: flex;
  gap: 3.0769230769vw;
  justify-content: center;
  position: relative;
}
@media (1024px <= width) {
  .js-kv .splide__pagination {
    bottom: 100px;
    gap: 12px;
  }
}
.js-kv .splide__pagination__page {
  background-color: #ccc;
  border-radius: 50%;
  height: 2.0512820513vw;
  width: 2.0512820513vw;
}
@media (1024px <= width) {
  .js-kv .splide__pagination__page {
    height: 8px;
    width: 8px;
  }
}
.js-kv .splide__pagination__page.is-active {
  background-color: var(--c-primary);
}

.js-movie .splide__slide {
  height: 127.6923076923vw;
  width: 71.7948717949vw;
}
@media (1024px <= width) {
  .js-movie .splide__slide {
    height: 533px;
    width: 300px;
  }
}

.js-movie {
  margin-inline: auto;
  max-width: 962px;
}
.js-movie .splide__arrows {
  height: 48px;
  position: absolute;
  width: 100%;
  z-index: 1;
}
.js-movie .splide__arrow {
  align-items: center;
  background-color: var(--c-primary);
  border-radius: 100%;
  display: flex;
  height: 11.2820512821vw;
  justify-content: center;
  position: absolute;
  top: 58.2051282051vw;
  transition: opacity 0.2s ease-out;
  width: 11.2820512821vw;
}
@media (1024px <= width) {
  .js-movie .splide__arrow {
    height: 48px;
    top: 244px;
    width: 48px;
  }
}
.js-movie .splide__arrow:disabled {
  opacity: 0;
}
.js-movie .splide__arrow--prev {
  left: 7.6923076923vw;
}
@media (1024px <= width) {
  .js-movie .splide__arrow--prev {
    left: -24px;
  }
}
.js-movie .splide__arrow--next {
  right: 7.6923076923vw;
}
@media (1024px <= width) {
  .js-movie .splide__arrow--next {
    right: -24px;
  }
}
.js-movie .splide__arrow--prev::before,
.js-movie .splide__arrow--next::before {
  background-color: var(--c-black);
  content: "";
  display: block;
  height: 1px;
  position: absolute;
  width: 2.5641025641vw;
}
@media (1024px <= width) {
  .js-movie .splide__arrow--prev::before,
  .js-movie .splide__arrow--next::before {
    width: 10px;
  }
}
.js-movie .splide__arrow--prev::after,
.js-movie .splide__arrow--next::after {
  -webkit-border-before: 1px solid var(--c-black);
          border-block-start: 1px solid var(--c-black);
  -webkit-border-end: 1px solid var(--c-black);
          border-inline-end: 1px solid var(--c-black);
  content: "";
  display: block;
  height: 2.0512820513vw;
  rotate: 45deg;
  width: 2.0512820513vw;
}
@media (1024px <= width) {
  .js-movie .splide__arrow--prev::after,
  .js-movie .splide__arrow--next::after {
    height: 8px;
    width: 8px;
  }
}
.js-movie .splide__arrow--prev::after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

/*
Print
*/
@media print {
  * {
    background: transparent !important;
    border-color: black !important;
    box-shadow: none !important;
    color: black !important;
    text-shadow: none !important;
  }
  body {
    width: 210mm;
  }
  header,
  footer {
    display: none !important;
  }
  footer::after {
    content: "";
  }
  .-noprint {
    display: none;
  }
}
@page {
  margin: 0;
  size: A4;
}@keyframes splide-loading{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.splide__track--draggable{-webkit-touch-callout:none;-webkit-user-select:none;-ms-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__container{box-sizing:border-box;position:relative}.splide__list{backface-visibility:hidden;display:-ms-flexbox;display:flex;height:100%;margin:0!important;padding:0!important}.splide.is-initialized:not(.is-active) .splide__list{display:block}.splide__pagination{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:center;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;-ms-flex-negative:0;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}/* Magnific Popup CSS */
.mfp-bg {
  background: #0b0b0b;
  height: 100%;
  left: 0;
  opacity: 0.8;
  overflow: hidden;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1042; }

.mfp-wrap {
  height: 100%;
  left: 0;
  outline: none !important;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1043;
  -webkit-backface-visibility: hidden; }

.mfp-container {
  box-sizing: border-box;
  height: 100%;
  left: 0;
  padding: 0 8px;
  position: absolute;
  text-align: center;
  top: 0;
  width: 100%; }

.mfp-container:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle; }

.mfp-align-top .mfp-container:before {
  display: none; }

.mfp-content {
  display: inline-block;
  margin: 0 auto;
  position: relative;
  text-align: left;
  vertical-align: middle;
  z-index: 1045; }

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
  cursor: auto;
  width: 100%; }

.mfp-ajax-cur {
  cursor: progress; }

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: -webkit-zoom-out;
  cursor: zoom-out; }

.mfp-zoom {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: zoom-in; }

.mfp-auto-cursor .mfp-content {
  cursor: auto; }

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
  -webkit-user-select: none;
  -ms-user-select: none;
      user-select: none; }

.mfp-loading.mfp-figure {
  display: none; }

.mfp-hide {
  display: none !important; }

.mfp-preloader {
  color: #CCC;
  left: 8px;
  margin-top: -0.8em;
  position: absolute;
  right: 8px;
  text-align: center;
  top: 50%;
  width: auto;
  z-index: 1044; }
  .mfp-preloader a {
    color: #CCC; }
    .mfp-preloader a:hover {
      color: #FFF; }

.mfp-s-ready .mfp-preloader {
  display: none; }

.mfp-s-error .mfp-content {
  display: none; }

button.mfp-close,
button.mfp-arrow {
  background: transparent;
  border: 0;
  cursor: pointer;
  overflow: visible;
  -webkit-appearance: none;
  box-shadow: none;
  display: block;
  outline: none;
  padding: 0;
  touch-action: manipulation;
  z-index: 1046; }

button::-moz-focus-inner {
  border: 0;
  padding: 0; }

.mfp-close {
  color: #FFF;
  font-family: Arial, Baskerville, monospace;
  font-size: 28px;
  font-style: normal;
  height: 44px;
  line-height: 44px;
  opacity: 0.65;
  padding: 0 0 18px 10px;
  position: absolute;
  right: 0;
  text-align: center;
  text-decoration: none;
  top: 0;
  width: 44px; }
  .mfp-close:hover,
  .mfp-close:focus {
    opacity: 1; }
  .mfp-close:active {
    top: 1px; }

.mfp-close-btn-in .mfp-close {
  color: #333; }

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
  color: #FFF;
  padding-right: 6px;
  right: -6px;
  text-align: right;
  width: 100%; }

.mfp-counter {
  color: #CCC;
  font-size: 12px;
  line-height: 18px;
  position: absolute;
  right: 0;
  top: 0;
  white-space: nowrap; }

.mfp-arrow {
  height: 110px;
  margin: 0;
  margin-top: -55px;
  opacity: 0.65;
  padding: 0;
  position: absolute;
  top: 50%;
  width: 90px;
  -webkit-tap-highlight-color: transparent; }
  .mfp-arrow:active {
    margin-top: -54px; }
  .mfp-arrow:hover,
  .mfp-arrow:focus {
    opacity: 1; }
  .mfp-arrow:before,
  .mfp-arrow:after {
    border: medium inset transparent;
    content: '';
    display: block;
    height: 0;
    left: 0;
    margin-left: 35px;
    margin-top: 35px;
    position: absolute;
    top: 0;
    width: 0; }
  .mfp-arrow:after {
    border-bottom-width: 13px;
    border-top-width: 13px;
    top: 8px; }
  .mfp-arrow:before {
    border-bottom-width: 21px;
    border-top-width: 21px;
    opacity: 0.7; }

.mfp-arrow-left {
  left: 0; }
  .mfp-arrow-left:after {
    border-right: 17px solid #FFF;
    margin-left: 31px; }
  .mfp-arrow-left:before {
    border-right: 27px solid #3F3F3F;
    margin-left: 25px; }

.mfp-arrow-right {
  right: 0; }
  .mfp-arrow-right:after {
    border-left: 17px solid #FFF;
    margin-left: 39px; }
  .mfp-arrow-right:before {
    border-left: 27px solid #3F3F3F; }

.mfp-iframe-holder {
  padding-bottom: 40px;
  padding-top: 40px; }
  .mfp-iframe-holder .mfp-content {
    line-height: 0;
    max-width: 900px;
    width: 100%; }
  .mfp-iframe-holder .mfp-close {
    top: -40px; }

.mfp-iframe-scaler {
  height: 0;
  overflow: hidden;
  padding-top: 56.25%;
  width: 100%; }
  .mfp-iframe-scaler iframe {
    background: #000;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%; }

/* Main image in popup */
img.mfp-img {
  box-sizing: border-box;
  display: block;
  height: auto;
  line-height: 0;
  margin: 0 auto;
  max-width: 100%;
  padding: 40px 0 40px;
  width: auto; }

/* The shadow behind the image */
.mfp-figure {
  line-height: 0; }
  .mfp-figure:after {
    background: #444;
    bottom: 40px;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    content: '';
    display: block;
    height: auto;
    left: 0;
    position: absolute;
    right: 0;
    top: 40px;
    width: auto;
    z-index: -1; }
  .mfp-figure small {
    color: #BDBDBD;
    display: block;
    font-size: 12px;
    line-height: 14px; }
  .mfp-figure figure {
    margin: 0; }

.mfp-bottom-bar {
  cursor: auto;
  left: 0;
  margin-top: -36px;
  position: absolute;
  top: 100%;
  width: 100%; }

.mfp-title {
  color: #F3F3F3;
  line-height: 18px;
  text-align: left;
  word-wrap: break-word;
  padding-right: 36px; }

.mfp-image-holder .mfp-content {
  max-width: 100%; }

.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer; }

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
  /**
       * Remove all paddings around the image on small screen
       */
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0; }
  .mfp-img-mobile img.mfp-img {
    padding: 0; }
  .mfp-img-mobile .mfp-figure:after {
    bottom: 0;
    top: 0; }
  .mfp-img-mobile .mfp-figure small {
    display: inline;
    margin-left: 5px; }
  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    box-sizing: border-box;
    margin: 0;
    padding: 3px 5px;
    position: fixed;
    top: auto; }
    .mfp-img-mobile .mfp-bottom-bar:empty {
      padding: 0; }
  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px; }
  .mfp-img-mobile .mfp-close {
    background: rgba(0, 0, 0, 0.6);
    height: 35px;
    line-height: 35px;
    padding: 0;
    position: fixed;
    right: 0;
    text-align: center;
    top: 0;
    width: 35px; } }

@media all and (max-width: 900px) {
  .mfp-arrow {
    -webkit-transform: scale(0.75);
    transform: scale(0.75); }
  .mfp-arrow-left {
    -webkit-transform-origin: 0;
    transform-origin: 0; }
  .mfp-arrow-right {
    -webkit-transform-origin: 100%;
    transform-origin: 100%; }
  .mfp-container {
    padding-left: 6px;
    padding-right: 6px; } }
