@charset "UTF-8";
@import url("https://use.typekit.net/vem0wdj.css");
body {
  font-size: 62.5%;
  margin: 0;
  padding: 0;
}
div,
h1,
h2,
h3,
h4,
h5,
h6,
p,
dl,
dt,
dd,
ul,
ol,
li,
blockquote,
pre,
table,
caption,
th,
td,
address,
form,
fieldset,
legend,
object,
header,
footer,
section,
article,
nav,
figure,
canvas {
  margin: 0;
  padding: 0;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
fieldset {
  border: none;
  vertical-align: top;
}
img {
  border: none;
  vertical-align: top;
}
address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
  font-style: normal;
  font-weight: normal;
}
ol {
  list-style: none;
}
ul {
  list-style: none;
}
li {
  list-style: none;
}
caption {
  text-align: left;
  vertical-align: top;
}
th {
  text-align: left;
  vertical-align: top;
}
td {
  text-align: left;
  vertical-align: top;
}
h1,
h2,
h3,
h4,
h5,
h6,
small {
  font-size: 100%;
  font-weight: normal;
}
i {
  font-style: normal;
}
q:before {
  content: "";
}
q:after {
  content: "";
}
abbr {
  border: none;
}
acronym {
  border: none;
}
a {
  outline: none;
}
a:hover {
  outline: none;
}
a:active {
  outline: none;
}
a:focus {
  outline: none;
}
object {
  outline: none;
}
embed {
  outline: none;
}
header,
footer,
section,
article,
nav,
figure,
canvas,
main {
  display: block;
}
button {
  -moz-appearance: none;
  -webkit-appearance: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  appearance: none;
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
}
* {
  box-sizing: border-box;
}
@font-face {
  font-family: 'YakuHanJP';
  font-style: normal;
  font-weight: 300;
  src: url(../fonts/YakuHanJP-DemiLight.woff2) format("woff2"), url(../fonts/YakuHanJP-DemiLight.woff) format("woff"), url(../fonts/YakuHanJP-DemiLight.eot);
}
@font-face {
  font-family: 'YakuHanJP';
  font-style: normal;
  font-weight: 400;
  src: url(../fonts/YakuHanJP-Regular.woff2) format("woff2"), url(../fonts/YakuHanJP-Regular.woff) format("woff"), url(../fonts/YakuHanJP-Regular.eot);
}
@font-face {
  font-family: 'YakuHanJP';
  font-style: normal;
  font-weight: 500;
  src: url(../fonts/YakuHanJP-Medium.woff2) format("woff2"), url(../fonts/YakuHanJP-Medium.woff) format("woff"), url(../fonts/YakuHanJP-Medium.eot);
}
@font-face {
  font-family: 'YakuHanJP';
  font-style: normal;
  font-weight: 700;
  src: url(../fonts/YakuHanJP-Bold.woff2) format("woff2"), url(../fonts/YakuHanJP-Bold.woff) format("woff"), url(../fonts/YakuHanJP-Bold.eot);
}
html {
  scroll-behavior: smooth;
  width: 100%;
  height: 100%;
}
body {
  background-color: #F4F4F4;
  font-family: acumin-pro, "YakuHanJP", YuGothic, "Yu Gothic Medium", "Yu Gothic", "游ゴシック", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Open Sans", -apple-system, "Helvetica Neue", sans-serif;
  font-weight: 300;
  position: relative;
  overflow-x: hidden;
  width: 100%;
  height: 100%;
  letter-spacing: 0.02em;
}
a:link {
  color: #2f2f2f;
  text-decoration: none;
}
a:visited {
  color: #2f2f2f;
}
a:hover {
  color: #aaa;
}
a:active {
  color: #999;
}
#__bs_notify__ {
  display: none !important;
}
@keyframes fluffy1 {
  0% {
    transform: translateY(0);
  }
  5% {
    transform: translateY(0);
  }
  10% {
    transform: translateY(0);
  }
  20% {
    transform: translateY(-15px);
  }
  25% {
    transform: translateY(0);
  }
  30% {
    transform: translateY(-15px);
  }
  50% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(0);
  }
}
.onePage {
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  background-size: cover;
  position: relative;
}
.onePage .underArrow {
  position: absolute;
  bottom: 0;
  left: 50%;
  height: calc(167 * 100vw / 1080);
  border-left-color: #000;
  border-left-style: solid;
  border-left-width: calc(3 * 100vw / 1080);
  animation: fluffy1 3s ease infinite;
}
.onePage .underArrow.white {
  z-index: 110;
  border-left-color: #fff;
  border-left-style: solid;
  border-left-width: calc(3 * 100vw / 1080);
}
.onePage .iframeBox {
  bottom: 0;
  left: 0;
  overflow: hidden;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 90;
  width: 100%;
  height: 100%;
}
.onePage .iframeBox iframe {
  height: 177.77777778vw;
  /* 16:9 の高さなので 56.25% (= 9 ÷ 16) */
  width: 56.25vh;
  /* 16:9 の幅なので 177.77% (= 16 ÷ 9) */
  left: 50%;
  min-height: 100%;
  min-width: 100%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}
.onePage .title {
  position: relative;
  padding: calc(250 * 100vw / 1080) calc(0 * 100vw / 1080) calc(0 * 100vw / 1080) calc(50 * 100vw / 1080);
  z-index: 100;
}
.onePage .lineup {
  padding: calc(76 * 100vw / 1080) calc(0 * 100vw / 1080) calc(0 * 100vw / 1080) calc(50 * 100vw / 1080);
}
.onePage .lineup .subtitle {
  padding: calc(68 * 100vw / 1080) calc(0 * 100vw / 1080) calc(64 * 100vw / 1080) calc(50 * 100vw / 1080);
  border-left-color: #000;
  border-left-style: solid;
  border-left-width: calc(23 * 100vw / 1080);
}
.onePage .lineup img {
  height: calc(120 * 100vw / 1080);
}
.onePage.box {
  background-position: 40% 50%;
  background-image: url("../images/box/top_bg_with_text.jpg");
}
.onePage.box img {
  height: calc(140 * 100vw / 1080);
}
.onePage.boxLineup {
  background-position: 55% 100%;
  background-image: url("../images/box/lineup_bg.jpg");
}
.onePage.canvas {
  background-position: 40% 100%;
  background-image: url("../images/canvas/top_bg.jpg");
}
.onePage.canvas img {
  height: calc(140 * 100vw / 1080);
}
.onePage.canvasLineup {
  background-position: 55% 100%;
  background-image: url("../images/canvas/lineup_bg.jpg");
}
.onePage.collabTitle {
  background-color: #000;
}
.onePage.collabTitle img {
  height: calc(94 * 100vw / 1080);
}
.onePage.aboutCotodama {
  background-position: 50% 100%;
  background-image: url("../images/about/top_bg.jpg");
}
.onePage.aboutCotodama img {
  display: none;
  height: calc(94 * 100vw / 1080);
}
@media screen and (min-width: 960px) {
  .onePage .underArrow {
    height: 83px;
    border-left: 3px solid #000;
  }
  .onePage .underArrow.white {
    border-left: 3px solid #fff;
  }
  .onePage .iframeBox iframe {
    height: 56.25vw;
    /* 16:9 の高さなので 56.25% (= 9 ÷ 16) */
    width: 177.77777778vh;
    /* 16:9 の幅なので 177.77% (= 16 ÷ 9) */
  }
  .onePage .title {
    padding: 150px 0 0 40px;
  }
  .onePage .lineup {
    padding: 38px 0 0 40px;
  }
  .onePage .lineup .subtitle {
    padding: 34px 0 32px 25px;
    border-left: 12px solid #000;
  }
  .onePage .lineup img {
    height: 60px;
  }
  .onePage.box {
    background-position: 50% 50%;
    background-image: url("../images/box/top_bg_with_text.jpg");
  }
  .onePage.box img {
    height: 90px;
  }
  .onePage.boxLineup {
    background-position: 50% 50%;
  }
  .onePage.canvas {
    background-position: 50% 55%;
  }
  .onePage.canvas img {
    height: 90px;
  }
  .onePage.canvasLineup {
    background-position: 55% 80%;
  }
  .onePage.collabTitle {
    background-color: #000;
  }
  .onePage.collabTitle img {
    height: 47px;
  }
  .onePage.aboutCotodama {
    background-position: 50% 100%;
    background-image: url("../images/about/top_bg_h.jpg");
  }
  .onePage.aboutCotodama img {
    display: none;
  }
}
.playMovie {
  height: 119.44% 0 0 0;
  background-size: cover;
  position: relative;
}
.playMovie.typeBox .movieBox {
  background-image: url('../images/box/video_v.jpg');
}
.playMovie.typeCanvas .movieBox {
  background-image: url('../images/canvas/video_v.jpg');
}
.playMovie .tryToPlayTitle {
  position: absolute;
  pointer-events: none;
  top: -22%;
  left: 50%;
  transform: translate(-50%, 0);
  filter: invert(1);
  z-index: 100;
}
.playMovie .tryToPlayTitle img {
  height: calc(62 * 100vw / 1080);
}
.playMovie .tryToPlayTitle::before {
  z-index: 101;
  content: '';
  display: block;
  height: calc(33 * 100vw / 1080);
  width: 100%;
  background-image: url('../images/movie/under_arrow.svg');
  background-position: 50% 50%;
  background-repeat: no-repeat;
  position: absolute;
  transform: translateY(400%);
}
.playMovie .movieBox {
  background-size: cover;
  padding: 119.44% 0 0 0;
  position: relative;
}
.playMovie .movieBox .movie {
  opacity: 0;
  transition: opacity 1s ease;
  transition-delay: 200ms;
}
.playMovie .movieBox .movie.play {
  opacity: 1;
  z-index: 20;
}
.playMovie .movieBox .movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.playMovie .movieBox .vimeoCover {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 30;
}
.playMovie .playMovieControl {
  background-color: #000;
  position: relative;
  z-index: 100;
  left: 0;
  width: 100%;
  top: 0;
  transform: none;
  padding: 1em;
  font-size: 16px;
}
.playMovie .playMovieControl li {
  margin: 0;
  padding: 8px 0 8px;
  font-size: 12px;
  background-size: 2px 1px;
  background-image: linear-gradient(to right, #fff, #fff 1px, transparent 1px, transparent 2px);
  background-repeat: repeat-x;
  background-position: bottom;
}
.playMovie .playMovieControl li:first-child {
  padding: 0 0 8px;
}
.playMovie .playMovieControl li:last-child {
  padding: 8px 0 0;
  background-image: none;
}
.playMovie .playMovieControl li button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0.4em 0 0.4em 0.4em;
  appearance: none;
  color: #ccc;
  font-weight: 300;
  font-style: italic;
  font-size: 12px;
  line-height: 1em;
}
.playMovie .playMovieControl li button::before {
  content: '';
  display: inline-block;
  width: 2.6em;
  height: 2.6em;
  border-radius: 50%;
  margin-right: 0.8em;
  vertical-align: middle;
  background-color: #000;
  border: 1px solid #fff;
  background-image: url('../images/movie/play.svg');
}
.playMovie .playMovieControl li button.play::before {
  background-color: #505050;
  border: 1px solid #505050;
}
.playMovie .playMovieControl li button.pause::before {
  background-color: #000;
  border: 1px solid #fff;
  background-image: url('../images/movie/pause.svg');
}
@media screen and (min-width: 960px) {
  .playMovie {
    height: 56.25% 0 0 0;
    background-size: cover;
    position: relative;
  }
  .playMovie.typeBox .movieBox {
    background-image: url('../images/box/video_h.jpg');
  }
  .playMovie.typeBox .playMovieControl {
    left: 60%;
  }
  .playMovie.typeCanvas .movieBox {
    background-image: url('../images/canvas/video_h.jpg');
  }
  .playMovie.typeCanvas .playMovieControl {
    left: 5%;
  }
  .playMovie .movieBox {
    padding: 56.25% 0 0 0;
  }
  .playMovie .tryToPlayTitle {
    display: none;
  }
  .playMovie .playMovieControl {
    position: absolute;
    z-index: 100;
    width: 35%;
    top: 50%;
    transform: translate(0, -50%);
    padding: 1em;
    font-size: 16px;
  }
  .playMovie .playMovieControl li {
    margin: 0;
    padding: 8px 0 8px;
    font-size: 16px;
    background-size: 2px 1px;
  }
}
main#field {
  padding: 0;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  background-color: #000;
  overflow: hidden;
}
main#field .swiper-button-next {
  color: #ffffff;
  display: none;
}
main#field .swiper-button-prev {
  color: #ffffff;
  display: none;
}
main#field.unload {
  background-image: url("../images/common/top_square.jpg");
  background-size: cover;
  background-position: 50% 50%;
}
main#field .loaded {
  display: none;
}
.swiper-container {
  height: 100%;
  width: 100%;
}
.swiper-slide {
  -ms-flex-align: center;
  -ms-flex-pack: center;
  -webkit-align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  align-items: center;
  display: -ms-flexbox;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  font-size: 18px;
  justify-content: center;
  text-align: center;
}
.top .swiper-container {
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  overflow: hidden;
}
.top .swiper-slide {
  transform: skewX(20deg);
  transition: all 200ms ease-out;
}
.top .swiper-slide .iframeBox {
  bottom: 0;
  left: 0;
  overflow: hidden;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 90;
  width: 100%;
  height: 100%;
}
.top .swiper-slide .iframeBox iframe {
  height: 177.77777778vw;
  /* 16:9 の高さなので 56.25% (= 9 ÷ 16) */
  width: 56.25vh;
  /* 16:9 の幅なので 177.77% (= 16 ÷ 9) */
  left: 50%;
  min-height: 100%;
  min-width: 100%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}
.top .swiper-slide img {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}
.top .swiper-slide a {
  display: block;
  width: 100%;
  height: 100%;
}
.top .swiper-slide div.cover {
  display: block;
  width: 100%;
  height: 100%;
  bottom: 0;
  left: 0;
  overflow: hidden;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 100;
}
.top .swiper-slide.swiper-slide-active {
  transform: skewX(0) translateZ(0);
  z-index: 100;
  transition-delay: 100ms;
  filter: blur(0);
}
.top .swiper-slide.swiper-slide-next {
  transform: skewX(20deg) translateZ(0);
  z-index: 10;
  filter: blur(50px);
}
.top .swiper-slide.swiper-slide-prev {
  transform: skewX(20deg) translateZ(0);
  z-index: 10;
  filter: blur(50px);
}
.swiper-wrapper .top {
  display: contents;
}
#maintenance {
  position: fixed;
  width: 80%;
  height: auto;
  background-color: #ffffff;
  top: 50%;
  left: 50%;
  z-index: 100000;
  transform: translate(-50%, -50%);
  padding: 2em;
  text-align: center;
  font-size: 1.5em;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: left;
  justify-content: center;
  font-family: "YakuHanJP", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Open Sans", -apple-system, "Helvetica Neue", sans-serif;
}
#maintenance img {
  margin: 0 auto 1em;
  width: 80%;
}
@media screen and (min-width: 960px) {
  main#field.unload {
    background-image: url("../images/common/top_landscape.jpg");
  }
  .top .swiper-slide .iframeBox iframe {
    height: 56.25vw;
    /* 16:9 の高さなので 56.25% (= 9 ÷ 16) */
    width: 177.77777778vh;
    /* 16:9 の幅なので 177.77% (= 16 ÷ 9) */
  }
  #maintenance {
    width: auto;
  }
}
.page-wrapper {
  scroll-behavior: smooth;
  position: absolute;
  inset: 0;
  overflow: auto;
  z-index: 1000;
}
.contents {
  transition: transform 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
  z-index: 100;
}
/* :::::: toggle button :::::: */
#drawer {
  display: none;
}
.open {
  z-index: 2;
  right: calc(50 * 100vw / 1080);
  width: calc(64 * 100vw / 1080);
  height: calc(64 * 100vw / 1080);
  background: transparent;
  transition: background 0.4s, transform 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.open::before,
.open::after {
  content: "";
}
.open::before,
.open::after {
  content: "";
  position: absolute;
  top: calc(50% - 1px);
  left: 0;
  width: 100%;
  border-bottom: 2px solid black;
  transition: transform 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.open::before {
  transform: translateY(-5px);
}
.open::after {
  transform: translateY(5px);
}
.close {
  z-index: 1;
  inset: 0;
  pointer-events: none;
  transition: background 0.4s;
}
#drawer:checked + .open span {
  transform: scaleX(0);
}
#drawer:checked + .open::before {
  transform: rotate(45deg) scaleX(1.2);
}
#drawer:checked + .open::after {
  transform: rotate(-45deg) scaleX(1.2);
}
#drawer:checked ~ .close {
  pointer-events: auto;
  background: rgba(0, 0, 0, 0.3);
}
#drawer:checked ~ .menu {
  transform: none;
}
header.page-header {
  height: calc(128 * 100vw / 1080);
  padding: calc(64 * 100vw / 1080) calc(50 * 100vw / 1080) calc(0 * 100vw / 1080) calc(50 * 100vw / 1080);
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  z-index: 200;
}
header.page-header label {
  cursor: pointer;
  position: fixed;
}
header.page-header .header.content {
  position: relative;
  background-color: transparent !important;
  border-bottom: none !important;
  z-index: 0;
}
header.page-header .header.content h1 {
  float: left;
}
header.page-header .header.content h1 img {
  height: calc(64 * 100vw / 1080);
  width: auto;
}
header.page-header .minicart-wrapper {
  margin: calc(0 * 100vw / 1080) calc(192 * 100vw / 1080) calc(0 * 100vw / 1080) calc(0 * 100vw / 1080);
  margin-top: -1rem;
  position: relative;
  z-index: 200;
  width: calc(32 * 100vw / 1080);
}
header.page-header .minicart-wrapper a {
  background-repeat: no-repeat;
}
header.page-header .minicart-wrapper .action.showcart .counter.qty {
  background: transparent;
  color: #000;
  font-size: 16px;
  display: block;
  margin: 0 0 0;
  width: 32px;
  overflow: hidden;
  padding: 0;
  text-align: center;
  white-space: normal;
  line-height: 21px;
}
header.page-header.top {
  padding: 0;
  top: initial;
  left: 0;
  bottom: 0;
  right: 0;
}
header.page-header.top h1 .toplabel {
  position: absolute;
  right: calc(90 * 100vw / 1080);
  bottom: calc(90 * 100vw / 1080);
  z-index: 2;
  background: transparent;
}
header.page-header.top h1 .toplabel img {
  width: calc(146 * 100vw / 1080);
  height: calc(146 * 100vw / 1080);
}
header.page-header .menu {
  z-index: 1;
  position: fixed;
  overflow: auto;
  top: 0;
  left: 0;
  width: 75%;
  height: 100%;
  padding: calc(0 * 100vw / 1080) calc(0 * 100vw / 1080) calc(0 * 100vw / 1080) calc(40 * 100vw / 1080);
  margin: 0;
  box-sizing: border-box;
  background: rgba(0, 0, 0, 0.4);
  transform: translateX(-100%);
  transition: transform 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}
header.page-header .menu ul li {
  margin-top: calc(60 * 100vw / 1080);
  border-left-color: #fff;
  border-left-style: solid;
  border-left-width: calc(16 * 100vw / 1080);
}
header.page-header .menu ul li a {
  padding: calc(16 * 100vw / 1080) calc(0 * 100vw / 1080) calc(12 * 100vw / 1080) calc(40 * 100vw / 1080);
  display: block;
  width: auto;
}
header.page-header .menu ul li ul {
  margin-top: calc(24 * 100vw / 1080);
}
header.page-header .menu ul li ul li {
  margin-top: calc(12 * 100vw / 1080);
  font-size: calc(24 * 100vw / 1080);
  border-left: none;
  color: #C6C6C6;
}
header.page-header .menu ul li.language {
  font-size: calc(20 * 100vw / 1080);
  border-left: none;
  margin-top: calc(20 * 100vw / 1080);
  padding: calc(16 * 100vw / 1080) calc(0 * 100vw / 1080) calc(12 * 100vw / 1080) calc(40 * 100vw / 1080);
  color: #fff;
}
header.page-header .menu ul li.language a {
  font-size: calc(28.8 * 100vw / 1080);
  padding: 0;
  color: #C6C6C6;
}
header.page-header .menu ul li.selectItems {
  font-size: calc(40 * 100vw / 1080);
  border-left: none;
  margin-top: calc(20 * 100vw / 1080);
  padding: calc(0 * 100vw / 1080) calc(0 * 100vw / 1080) calc(0 * 100vw / 1080) calc(0 * 100vw / 1080);
  color: #fff;
}
header.page-header .menu ul li.selectItems a {
  font-size: calc(40 * 100vw / 1080);
  padding: 0;
  color: #C6C6C6;
}
header.page-header .menu img {
  width: auto;
}
header.page-header .menu img.one {
  height: calc(52.8 * 100vw / 1080);
}
header.page-header .menu img.two {
  height: calc(129.6 * 100vw / 1080);
}
header.page-header .menu img.three {
  height: calc(129.6 * 100vw / 1080);
}
#lang-select,
#store-select {
  margin-top: 0.5em;
  margin-bottom: 1em;
  position: relative;
  /* For IE <= 11 */
}
#lang-select select,
#store-select select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  height: 42px;
  width: 90%;
  font-size: calc(45 * 100vw / 1080);
  font-weight: 500;
  cursor: pointer;
  border-radius: 0;
  background-color: transparent;
  border: none;
  border: 1px solid #fff;
  color: white;
  padding: 0 10px 0;
  text-overflow: ellipsis;
  white-space: nowrap;
}
#lang-select select option,
#store-select select option,
#lang-select select optgroup,
#store-select select optgroup {
  background-color: #000;
}
#lang-select select::-ms-expand,
#store-select select::-ms-expand {
  display: none;
}
#lang-select .select-icon,
#store-select .select-icon {
  position: absolute;
  top: 5px;
  right: calc(10% + 0.8em);
  width: 32px;
  height: 32px;
  pointer-events: none;
  transition: background-color 0.3s ease, border-color 0.3s ease;
}
#lang-select .select-icon svg.icon,
#store-select .select-icon svg.icon {
  transition: fill 0.3s ease;
  fill: white;
}
@media screen and (min-width: 768px) {
  .open {
    z-index: 2;
    right: 25px;
    width: 32px;
    height: 32px;
  }
  header.page-header {
    height: 96px;
    padding: 32px 25px 0 25px;
  }
  header.page-header .header.content h1 img {
    height: 32px;
  }
  header.page-header .minicart-wrapper {
    margin: -1em 64px 0 0;
    width: 32px;
  }
  header.page-header .minicart-wrapper img {
    height: 32px;
  }
  header.page-header.top h1 .toplabel {
    right: 90px;
    bottom: 90px;
  }
  header.page-header.top h1 .toplabel img {
    width: 73px;
    height: 73px;
  }
  header.page-header .menu {
    padding: 0 0 0 40px;
    width: 40%;
  }
  header.page-header .menu ul li {
    margin-top: 40px;
    border-left: 8px solid #fff;
  }
  header.page-header .menu ul li a {
    padding: 8px 0 6px 20px;
  }
  header.page-header .menu ul li ul {
    margin-top: 12px;
  }
  header.page-header .menu ul li ul li {
    margin-top: 6px;
    font-size: 12px;
  }
  header.page-header .menu ul li.language {
    font-size: 12px;
    margin-top: 20px;
    padding: 8px 0 6px 20px;
  }
  header.page-header .menu ul li.language a {
    font-size: 20px;
  }
  header.page-header .menu ul li.language a:hover {
    color: #fff;
  }
  header.page-header .menu ul li.selectItems {
    font-size: 12px;
    margin-top: 20px;
    padding: 0;
  }
  header.page-header .menu img {
    width: auto;
  }
  header.page-header .menu img.one {
    height: 26.4px;
  }
  header.page-header .menu img.two {
    height: 64.8px;
  }
  header.page-header .menu img.three {
    height: 64.8px;
  }
  #lang-select select,
  #store-select select {
    font-weight: 500;
    width: 80%;
    font-size: 16px;
  }
  #lang-select .select-icon,
  #store-select .select-icon {
    right: calc(20% + 1em);
  }
}
.page-footer {
  background-color: #000;
  padding: calc(120 * 100vw / 1080) calc(0 * 100vw / 1080) calc(80 * 100vw / 1080) calc(0 * 100vw / 1080);
  color: #AFAFAF;
}
.page-footer a {
  color: #AFAFAF;
}
.page-footer .info {
  display: flex;
  text-align: center;
  padding: calc(0 * 100vw / 1080) calc(0 * 100vw / 1080) calc(30 * 100vw / 1080) calc(0 * 100vw / 1080);
  font-size: calc(30 * 100vw / 1080);
}
.page-footer .info .sns {
  width: 50%;
}
.page-footer .info .mail {
  width: 50%;
}
.page-footer .info .mail .mailAddress {
  line-height: calc(37 * 100vw / 1080);
}
.page-footer .sns ul {
  display: flex;
  justify-content: center;
}
.page-footer .sns ul li {
  padding: calc(0 * 100vw / 1080) calc(30 * 100vw / 1080) calc(0 * 100vw / 1080) calc(30 * 100vw / 1080);
  line-height: calc(37 * 100vw / 1080);
}
.page-footer .sns ul li img {
  margin: calc(0 * 100vw / 1080) calc(10 * 100vw / 1080) calc(0 * 100vw / 1080) calc(0 * 100vw / 1080);
  line-height: calc(37 * 100vw / 1080);
  width: calc(37 * 100vw / 1080);
  vertical-align: middle;
}
.page-footer .documents {
  margin-top: calc(10 * 100vw / 1080);
  font-size: calc(30 * 100vw / 1080);
  text-align: center;
}
.page-footer .documents ul li {
  display: inline-block;
  line-height: calc(60 * 100vw / 1080);
  padding: calc(0 * 100vw / 1080) calc(10 * 100vw / 1080) calc(0 * 100vw / 1080) calc(10 * 100vw / 1080);
}
.page-footer .copy {
  margin-top: calc(40 * 100vw / 1080);
  font-size: calc(30 * 100vw / 1080);
  text-align: center;
}
@media screen and (min-width: 960px) {
  .page-footer {
    padding: 100px 0 100px;
  }
  .page-footer .info {
    margin: 0 auto 0;
    padding: 0 0 30px;
    max-width: 50%;
    font-size: 20px;
  }
  .page-footer .info .sns {
    width: 50%;
  }
  .page-footer .info .mail {
    width: 50%;
  }
  .page-footer .info .mail .mailAddress {
    line-height: 50px;
    font-size: 20px;
    vertical-align: middle;
  }
  .page-footer .sns ul {
    display: flex;
    justify-content: center;
  }
  .page-footer .sns ul li {
    padding: 0 15px 0;
    line-height: 50px;
  }
  .page-footer .sns ul li img {
    margin-left: 10px;
    line-height: 50px;
    width: 37px;
    vertical-align: middle;
  }
  .page-footer .documents {
    margin-top: 5px;
    font-size: 15px;
    text-align: center;
  }
  .page-footer .documents ul li {
    display: inline-block;
    line-height: 30px;
    padding: 0 5px 0;
  }
  .page-footer .copy {
    margin-top: 20px;
    font-size: 15px;
  }
}
.flowPage {
  background-size: cover;
  position: relative;
}
.flowPage.aboutEstablish {
  padding: calc(200 * 100vw / 1080) calc(0 * 100vw / 1080) calc(100 * 100vw / 1080) calc(0 * 100vw / 1080);
  background-position: 50% 80%;
  background-image: url("../images/about/establish.jpg");
}
.flowPage.aboutEstablish .title {
  text-align: center;
}
.flowPage.aboutEstablish .title img {
  height: calc(94 * 100vw / 1080);
}
.flowPage.aboutEstablish p {
  padding: calc(64 * 100vw / 1080) calc(0 * 100vw / 1080) calc(0 * 100vw / 1080) calc(0 * 100vw / 1080);
  font-size: calc(32 * 100vw / 1080);
  line-height: calc(54 * 100vw / 1080);
}
.flowPage.aboutEstablish p.center {
  text-align: center;
}
.flowPage.aboutEstablish p.left {
  text-align: left;
  padding: calc(700 * 100vw / 1080) calc(50 * 100vw / 1080) calc(0 * 100vw / 1080) calc(50 * 100vw / 1080);
}
.flowPage.aboutEstablish p.left br.sp {
  display: none;
}
section.about {
  padding: calc(192 * 100vw / 1080) calc(50 * 100vw / 1080) calc(64 * 100vw / 1080) calc(50 * 100vw / 1080);
}
section.about h3.left {
  text-align: left;
  border-left-color: #000;
  border-left-style: solid;
  border-left-width: calc(23 * 100vw / 1080);
  padding: calc(10 * 100vw / 1080) calc(0 * 100vw / 1080) calc(3 * 100vw / 1080) calc(50 * 100vw / 1080);
}
section.about h3.right {
  text-align: right;
  border-right-color: #000;
  border-right-style: solid;
  border-right-width: calc(23 * 100vw / 1080);
  padding: calc(10 * 100vw / 1080) calc(50 * 100vw / 1080) calc(3 * 100vw / 1080) calc(0 * 100vw / 1080);
}
section.about h3 img {
  margin-bottom: calc(20 * 100vw / 1080);
}
section.about h3 img.lyric-sync-tech {
  height: calc(192 * 100vw / 1080);
}
section.about h3 img.lyric-speaker-sound {
  height: calc(172 * 100vw / 1080);
}
section.about h3 img.rekordbox {
  height: calc(190 * 100vw / 1080);
}
section.about h3 img.abbey-road-red {
  height: calc(190 * 100vw / 1080);
}
section.about h3 img.cotodama-tokyo {
  height: calc(256 * 100vw / 1080);
}
section.about h3 span {
  margin-top: calc(10 * 100vw / 1080);
  display: block;
  font-size: calc(35 * 100vw / 1080);
  line-height: calc(35 * 100vw / 1080);
}
section.about h3 + p.text {
  margin-top: calc(50 * 100vw / 1080);
}
section.about .image {
  margin-top: calc(50 * 100vw / 1080);
}
section.about .image img {
  width: 100%;
}
section.about .image.large {
  margin: calc(50 * 100vw / 1080) calc(-50 * 100vw / 1080) calc(0 * 100vw / 1080) calc(-50 * 100vw / 1080);
}
section.about .image.qrcode img {
  width: 50%;
}
section.about .text {
  padding: calc(0 * 100vw / 1080) calc(50 * 100vw / 1080) calc(0 * 100vw / 1080) calc(50 * 100vw / 1080);
  font-size: calc(32 * 100vw / 1080);
  line-height: calc(54 * 100vw / 1080);
}
section.about .text.award {
  font-size: calc(40 * 100vw / 1080);
  line-height: calc(60 * 100vw / 1080);
}
section.about .text .red {
  color: #C51D1B;
  font-weight: 700;
}
section.about .text em {
  font-weight: 700;
}
section.about .text + .text {
  padding-top: 1em;
}
section.about .text.comment {
  margin: calc(50 * 100vw / 1080) calc(50 * 100vw / 1080) calc(50 * 100vw / 1080) calc(50 * 100vw / 1080);
  padding: calc(50 * 100vw / 1080) calc(0 * 100vw / 1080) calc(50 * 100vw / 1080) calc(0 * 100vw / 1080);
  position: relative;
  font-size: calc(32 * 100vw / 1080);
  line-height: calc(60 * 100vw / 1080);
}
section.about .text.comment::before,
section.about .text.comment::after {
  content: '';
  position: absolute;
  left: 0;
  background-image: linear-gradient(to right, #000, #000 5px, transparent 5px);
  background-repeat: repeat-x;
  background-size: 10px 1px;
  height: 1px;
  width: 100%;
}
section.about .text.comment::before {
  top: 0;
}
section.about .text.comment::after {
  bottom: 0;
}
section.about .info {
  padding-top: calc(50 * 100vw / 1080);
}
section.about .video + .text {
  margin-top: calc(100 * 100vw / 1080);
}
section.about .text + .video {
  margin-top: calc(100 * 100vw / 1080);
}
section.about .image + h4,
section.about .video + h4,
section.about .video + .video {
  margin-top: calc(100 * 100vw / 1080);
}
section.about h4 + .text,
section.about .image + .text {
  margin-top: calc(50 * 100vw / 1080);
}
section.about .video {
  margin: calc(0 * 100vw / 1080) calc(-50 * 100vw / 1080) calc(0 * 100vw / 1080) calc(-50 * 100vw / 1080);
}
section.about h4 {
  text-align: left;
  border-left: 2px solid #000;
  padding: calc(10 * 100vw / 1080) calc(0 * 100vw / 1080) calc(8 * 100vw / 1080) calc(50 * 100vw / 1080);
  font-size: calc(52 * 100vw / 1080);
  line-height: calc(52 * 100vw / 1080);
  font-weight: 700;
}
.tokyoStore {
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  background-size: cover;
  position: relative;
  background-position: 50% 100%;
  background-image: url("../images/about/cotodama-tokyo_bg.jpg");
}
.tokyoStore .address {
  padding: calc(0 * 100vw / 1080) calc(50 * 100vw / 1080) calc(100 * 100vw / 1080) calc(0 * 100vw / 1080);
  font-size: calc(34 * 100vw / 1080);
  line-height: calc(47 * 100vw / 1080);
  text-align: right;
  color: #C6C6C6;
  position: absolute;
  bottom: 0;
  right: 0;
}
@media screen and (min-width: 960px) {
  section.about {
    padding: 64px 50px 64px 50px;
  }
  section.about .speakers {
    display: flex;
    align-items: center;
    max-width: 85%;
    margin: 50px auto 0;
  }
  section.about .speakers .image.large {
    margin: 0;
    width: 50%;
  }
  section.about .speakers .info {
    width: 50%;
    padding: 0 0 0 50px;
  }
  section.about .speakers .text {
    max-width: 100%;
  }
  section.about .speakers h3 {
    max-width: 100%;
  }
  section.about .speakers h4 {
    max-width: 100%;
  }
  section.about h3 {
    max-width: 75%;
    margin: 0 auto;
  }
  section.about h3.left {
    padding: 5px 0 3px 25px;
    border-left: 12px solid #000;
  }
  section.about h3.right {
    padding: 5px 25px 3px 0;
    border-right: 12px solid #000;
  }
  section.about h3 img {
    margin-bottom: 10px;
  }
  section.about h3 img.lyric-sync-tech {
    height: 96px;
  }
  section.about h3 img.lyric-speaker-sound {
    height: 86px;
  }
  section.about h3 img.rekordbox {
    height: 80px;
  }
  section.about h3 img.abbey-road-red {
    height: 80px;
  }
  section.about h3 img.cotodama-tokyo {
    height: 128px;
  }
  section.about h3 span {
    margin-top: 0;
    font-size: 18px;
    line-height: 18px;
  }
  section.about h3 + p.text {
    margin-top: 25px;
  }
  section.about .image {
    text-align: center;
    max-width: 75%;
    margin: 25px auto 0;
  }
  section.about .image img {
    width: 100%;
  }
  section.about .image.large {
    margin: 25px auto 0;
  }
  section.about .text {
    padding: 0 25px 0 25px;
    font-size: 16px;
    line-height: 24px;
    max-width: 75%;
    margin: 0 auto;
  }
  section.about .text.award {
    font-size: 20px;
    line-height: 30px;
  }
  section.about .text.spCenter {
    text-align: center;
  }
  section.about .text .red {
    color: #C51D1B;
    font-weight: 700;
  }
  section.about .text em {
    font-weight: 700;
  }
  section.about .text + .text {
    padding-top: 1em;
  }
  section.about .text.comment {
    margin: 25px auto 25px;
    max-width: 75%;
    padding: 25px 25px 25px 25px;
    font-size: 16px;
    line-height: 30px;
  }
  section.about .text.comment::before,
  section.about .text.comment::after {
    content: '';
    position: absolute;
    left: 0;
    background-image: linear-gradient(to right, #000, #000 5px, transparent 5px);
    background-repeat: repeat-x;
    background-size: 10px 1px;
    height: 1px;
    width: 100%;
  }
  section.about .text.comment::before {
    top: 0;
  }
  section.about .text.comment::after {
    bottom: 0;
  }
  section.about .video + .text {
    margin-top: 50px;
  }
  section.about .text + .video {
    margin-top: 50px;
  }
  section.about .image + h4,
  section.about .video + h4,
  section.about .video + .video {
    margin-top: 50px;
  }
  section.about h4 + .text,
  section.about .image + .text {
    margin-top: 25px;
  }
  section.about .video {
    margin: 0 auto 0;
  }
  section.about h4 {
    max-width: 75%;
    margin: 0 auto;
    border-left: 2px solid #000;
    padding: 5px 0 3px 25px;
    font-size: 25px;
    line-height: 25px;
  }
  .tokyoStore {
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100);
    background-size: cover;
    position: relative;
    background-position: 50% 70%;
    background-image: url("../images/about/cotodama-tokyo_bg.jpg");
  }
  .tokyoStore h3 {
    max-width: 100% !important;
    margin: 0 auto;
  }
  .tokyoStore .address {
    padding: 0 25px 50px 0;
    font-size: 24px;
    line-height: 36px;
    color: #C6C6C6;
    text-shadow: 0px 0px 2px #000;
  }
  .flowPage {
    background-size: cover;
    position: relative;
  }
  .flowPage.aboutEstablish {
    padding: 125px 0 800px 0;
    background-position: 50% 100%;
    background-image: url("../images/about/establish_h.jpg");
  }
  .flowPage.aboutEstablish .title {
    text-align: center;
  }
  .flowPage.aboutEstablish .title img {
    height: 47px;
  }
  .flowPage.aboutEstablish p {
    padding: 32px 0 0 0;
    font-size: 16px;
    line-height: 24px;
  }
  .flowPage.aboutEstablish p.left {
    margin: 0 auto 0;
    width: 100%;
    padding: 32px 0 0 0;
    text-align: center;
  }
  .flowPage.aboutEstablish p.left br.sp {
    display: block;
  }
}
.lineup {
  padding: calc(100 * 100vw / 1080) calc(50 * 100vw / 1080) calc(100 * 100vw / 1080) calc(50 * 100vw / 1080);
}
.lineup::after {
  content: "";
  display: block;
  clear: both;
}
.lineup .notice {
  color: #fd885e;
}
.lineup.small {
  padding-left: 0 !important;
  padding-right: 0 !important;
  clear: both;
}
.lineup.small::after {
  content: "";
  display: block;
  clear: both;
}
.lineup.small .item {
  width: 50%;
  float: left;
}
.lineup.small .item:nth-child(2n + 1) {
  padding: calc(0 * 100vw / 1080) calc(25/2 * 100vw / 1080) calc(0 * 100vw / 1080) calc(0 * 100vw / 1080);
}
.lineup.small .item:nth-child(2n) {
  padding: calc(0 * 100vw / 1080) calc(0 * 100vw / 1080) calc(0 * 100vw / 1080) calc(25/2 * 100vw / 1080);
}
.lineup.small .item .info {
  padding: 0;
}
.lineup.small .item .info .titleBox img {
  width: 50%;
}
.lineup.small .item .info .titleBox ul li {
  margin-top: calc(6 * 100vw / 1080);
  font-size: calc(20 * 100vw / 1080);
}
.lineup.small .item .info .titleBox .bar {
  padding: 5px 0 5px 8px;
}
.lineup.small .item .info .titleBox .notice {
  font-size: calc(20 * 100vw / 1080);
}
.lineup.small .item .info .priceBox {
  padding: 5px 0 0 0;
}
.lineup.small .item .info .priceBox .price {
  font-size: calc(32 * 100vw / 1080);
  line-height: calc(32 * 100vw / 1080);
}
.lineup.small .item .info .priceBox .tax {
  font-size: calc(18 * 100vw / 1080);
}
.lineup.small .item .info .priceBox .notice {
  font-size: calc(20 * 100vw / 1080);
}
.lineup .item {
  margin-bottom: calc(100 * 100vw / 1080);
}
.lineup .item a {
  color: #000;
  display: block;
}
.lineup .item .image {
  margin-bottom: calc(25 * 100vw / 1080);
}
.lineup .item .image img {
  width: 100%;
}
.lineup .item .info {
  padding: 0 0;
  position: relative;
}
.lineup .item .info::after {
  content: "";
  display: block;
  clear: both;
}
.lineup .item .info .titleBox {
  width: 100%;
}
.lineup .item .info .titleBox img {
  width: 70%;
}
.lineup .item .info .titleBox .bar {
  padding: 5px 0 0 15px;
  border-left: 2px solid #000;
}
.lineup .item .info .titleBox ul {
  margin-top: calc(24 * 100vw / 1080);
}
.lineup .item .info .titleBox ul li {
  margin-top: calc(12 * 100vw / 1080);
  font-size: calc(30 * 100vw / 1080);
  color: #000;
}
.lineup .item .info .titleBox ul li:last-child {
  margin-bottom: 4px;
}
.lineup .item .info .titleBox .notice {
  padding: 3px 0 0 9px;
  font-size: calc(30 * 100vw / 1080);
}
.lineup .item .info .priceBox {
  position: absolute;
  top: 0;
  right: 0;
  width: 60%;
  text-align: right;
  padding: 5px 0 0 1px;
}
.lineup .item .info .priceBox .price {
  font-size: calc(46 * 100vw / 1080);
  font-weight: 600;
  display: block;
}
.lineup .item .info .priceBox .tax {
  font-size: calc(18 * 100vw / 1080);
  font-weight: 300;
  display: block;
}
.lineup .item .info .priceBox .notice {
  margin-top: calc(15 * 100vw / 1080);
  font-size: calc(30 * 100vw / 1080);
}
.lineup .item .info .priceBox .othershop {
  margin-top: calc(15 * 100vw / 1080);
  font-size: calc(18 * 100vw / 1080);
  color: #707070;
}
.product .notice {
  color: #fd885e;
}
.product .swiperBox {
  margin-bottom: calc(50 * 100vw / 1080);
}
.product .swiperBox .swiper {
  width: 100%;
  height: 100%;
}
.product .swiperBox .swiper-slide {
  text-align: center;
  font-size: 18px;
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  background-size: cover;
  background-position: center;
}
.product .swiperBox .swiper-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.product .swiperBox .swiperMain {
  height: 80%;
  width: 100%;
}
.product .swiperBox .swiperThumb {
  height: 20%;
  box-sizing: border-box;
  padding: 0;
}
.product .swiperBox .swiperThumb .swiper-slide {
  width: 18%;
  height: 100%;
  opacity: 0.4;
}
.product .swiperBox .swiperThumb .swiper-slide-thumb-active {
  opacity: 1;
}
.product .info {
  padding: 0 0;
  position: relative;
}
.product .info::after {
  content: "";
  display: block;
  clear: both;
}
.product .info .titleBox {
  position: relative;
  width: 100%;
}
.product .info .titleBox img {
  width: 50%;
  text-align: center;
}
.product .info .titleBox .bar {
  padding: 5px 0 0 15px;
  border-left: 2px solid #000;
}
.product .info .titleBox ul {
  margin-top: calc(30 * 100vw / 1080);
}
.product .info .titleBox ul li {
  margin-top: calc(12 * 100vw / 1080);
  margin-bottom: calc(6 * 100vw / 1080);
  font-size: calc(37 * 100vw / 1080);
  color: #000;
  font-weight: 600;
}
.product .info .titleBox .notice {
  padding: 5px 0 0 17px;
  font-size: calc(30 * 100vw / 1080);
}
.product .info .priceBox {
  position: absolute;
  font-size: calc(66 * 100vw / 1080);
  top: 3.5rem;
  right: 0;
  width: 50%;
  text-align: right;
}
.product .info .priceBox .price {
  font-size: calc(66 * 100vw / 1080);
  line-height: calc(66 * 100vw / 1080);
  font-weight: 600;
}
.product .info .priceBox .price span:nth-child(2) {
  display: block;
  margin: 0;
  line-height: 1rem;
}
.product .info .priceBox .tax {
  font-size: calc(18 * 100vw / 1080);
  font-weight: 300;
}
.product .info .priceBox .notice {
  margin-top: calc(15 * 100vw / 1080);
  font-size: calc(30 * 100vw / 1080);
}
.product .info .storeSelectBox {
  top: 0;
  font-size: 0;
  right: 0;
  width: 40%;
  position: absolute;
  /* For IE <= 11 */
}
.product .info .storeSelectBox select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  height: 26px;
  width: 100%;
  font-size: 16px;
  font-weight: 500;
  cursor: pointer;
  border-radius: 0;
  background-color: #fff;
  border: none;
  border: 1px solid #000;
  color: #000;
  padding: 0 10px 0;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.product .info .storeSelectBox select option,
.product .info .storeSelectBox select optgroup {
  background-color: #fff;
}
.product .info .storeSelectBox select::-ms-expand {
  display: none;
}
.product .info .storeSelectBox .select-icon {
  line-height: 26px;
  font-size: 26px;
  position: absolute;
  bottom: 0;
  right: 0px;
  width: 26px;
  height: 26px;
  pointer-events: none;
  transition: background-color 0.3s ease, border-color 0.3s ease;
}
.product .info .storeSelectBox .select-icon svg {
  width: 26px;
  height: 26px;
  transform: scale(0.6);
}
.product .info .storeSelectBox .select-icon svg.icon {
  transition: fill 0.3s ease;
  fill: #000;
}
.product .info .buttonBox {
  width: 100%;
  position: relative;
  margin-top: 2rem;
}
.product .info .buttonBox .notice {
  color: #c51d1b;
}
.product .info .buttonBox .button {
  display: block;
  text-align: center;
  width: 100%;
  padding: 0;
}
.product .info .buttonBox .button .title {
  background-color: #000;
  font-size: calc(34 * 100vw / 1080);
  line-height: 1em;
  color: #fff;
  padding: calc(18 * 100vw / 1080) calc(20 * 100vw / 1080) calc(18 * 100vw / 1080) calc(20 * 100vw / 1080);
}
.product .info .buttonBox .button .desc {
  background-color: #C7C7C7;
  font-size: calc(34 * 100vw / 1080);
  line-height: 1em;
  color: #525252;
  padding: calc(8 * 100vw / 1080) calc(20 * 100vw / 1080) calc(8 * 100vw / 1080) calc(20 * 100vw / 1080);
}
.product .info .buttonBox .button .desc .notice {
  font-size: calc(20 * 100vw / 1080);
  line-height: calc(20 * 100vw / 1080);
  padding: 0;
}
.product .info .buttonBox .notforsale .desc,
.product .info .buttonBox .soldout .desc {
  display: block;
  background-color: #C7C7C7;
  font-size: calc(34 * 100vw / 1080);
  line-height: 1em;
  color: #ffffff;
  font-weight: 700;
  padding: calc(30 * 100vw / 1080) calc(30 * 100vw / 1080) calc(30 * 100vw / 1080) calc(30 * 100vw / 1080);
}
.product .info .buttonBox .notforsale .notice,
.product .info .buttonBox .soldout .notice {
  margin-top: 10px;
}
.product .info .buttonBox .buy .desc {
  display: block;
  background-color: #000;
  font-size: calc(34 * 100vw / 1080);
  line-height: 1em;
  color: #ffffff;
  font-weight: 700;
  padding: calc(30 * 100vw / 1080) calc(30 * 100vw / 1080) calc(30 * 100vw / 1080) calc(30 * 100vw / 1080);
}
.product .info .buttonBox .text {
  padding-top: 1em;
  padding-bottom: 1em;
  font-size: calc(12 * 100vw / 1080);
  line-height: calc(18 * 100vw / 1080);
}
.product .info .buttonBox .text.center {
  text-align: center;
}
.product .info .buttonBox .text.notice {
  color: #c51d1b;
}
.product .info .commentBox {
  padding-top: 1em;
  padding-bottom: 1em;
  font-size: calc(36 * 100vw / 1080);
  line-height: calc(52 * 100vw / 1080);
}
.product .info .commentBox .notice {
  color: #c51d1b;
}
.product .info .commentBox .center {
  text-align: center;
}
.product .info .commentBox .message {
  padding: 1em;
  background-color: #fff;
}
.product .info .commentBox .message .wechat {
  display: block;
  text-align: center;
  margin-bottom: 1em;
}
.product .info .commentBox .message .wechat img {
  width: 50%;
}
.product .spec {
  display: block;
  margin-top: 2rem;
}
.product .spec .spec-checkbox {
  /* checbox */
  display: none;
}
.product .spec .specDetail {
  /* target */
  box-sizing: border-box;
  visibility: hidden;
  opacity: 0;
  transition: all 0.4s ease-out;
  text-align: left;
}
.product .spec .specDetail dl dt {
  font-size: calc(30 * 100vw / 1080);
  float: left;
  clear: both;
  width: 30%;
}
.product .spec .specDetail dl dd {
  float: left;
  font-size: calc(30 * 100vw / 1080);
  width: 70%;
}
.product .spec .spec-trigger {
  /* label */
  text-align: left;
  box-sizing: border-box;
  cursor: pointer;
  display: block;
  padding: calc(30 * 100vw / 1080) calc(30 * 100vw / 1080) calc(30 * 100vw / 1080) calc(30 * 100vw / 1080);
  position: relative;
  z-index: 160;
  text-align: center;
  font-weight: 300;
  font-size: calc(46 * 100vw / 1080);
  /* icon */
}
.product .spec .spec-trigger span {
  display: inline-block;
  padding: calc(0 * 100vw / 1080) calc(30 * 100vw / 1080) calc(0 * 100vw / 1080) calc(150 * 100vw / 1080);
  background-color: #F4F4F4;
}
.product .spec .spec-trigger::before,
.product .spec .spec-trigger::after {
  content: "";
  position: absolute;
  top: 8px;
  bottom: 0;
  left: 50%;
  margin: auto;
  height: 1px;
  width: calc(98 * 100vw / 1080);
  background-color: #000;
  transition: all 0.2s ease-out;
  transform: translateX(calc(-180 * 100vw / 1080));
}
.product .spec .spec-trigger::after {
  transform: translateX(calc(-180 * 100vw / 1080)) rotate(90deg);
}
.product .spec .specDetail dt,
.product .spec .specDetail dd {
  /* target-child */
  box-sizing: border-box;
  height: 0;
  visibility: hidden;
  opacity: 0;
  padding-top: 0;
  transition: height 0.2s ease-out 0.2s, opacity 0.2s ease-out 0s;
}
.product .spec .spec-checkbox:checked + .spec-trigger::before {
  transform: translateX(calc(-180 * 100vw / 1080)) rotate(135deg);
}
.product .spec .spec-checkbox:checked + .spec-trigger::after {
  transform: translateX(calc(-180 * 100vw / 1080)) rotate(225deg);
}
.product .spec .spec-checkbox:checked + .spec-trigger + .specDetail {
  visibility: visible;
  opacity: 1;
  position: relative;
  z-index: 150;
  height: auto;
}
.product .spec .spec-checkbox:checked + .spec-trigger + .specDetail::before {
  content: '';
  position: absolute;
  z-index: 151;
  top: calc(-55 * 100vw / 1080);
  left: 0;
  background-image: linear-gradient(to right, #000, #000 5px, transparent 5px);
  background-repeat: repeat-x;
  background-size: 10px 1px;
  height: 1px;
  width: 100%;
}
.product .spec .spec-checkbox:checked + .spec-trigger + .specDetail dt,
.product .spec .spec-checkbox:checked + .spec-trigger + .specDetail dd {
  visibility: visible;
  height: auto;
  opacity: 1;
  padding-top: calc(20 * 100vw / 1080);
  transition: visibility 0.2s ease-out 0.2s, opacity 0.2s ease-out 0.2s;
}
.lineup_chito {
  margin-bottom: 64px;
}
.lineup_chito li.item {
  float: left;
  width: 33.3%;
  margin-bottom: 0;
  position: relative;
}
.lineup_chito li.item .box-soldout {
  display: flex;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
  align-items: center;
  justify-content: center;
}
.lineup_chito li.item .box-soldout img {
  width: 100%;
  height: 100%;
}
.lineup_chito li.item .box-soldout::selection {
  background-color: none;
}
@media screen and (min-width: 801px) and (max-width: 959px) {
  .lineup_chito li.item {
    float: left;
    width: 50% !important;
  }
  .lineup_chito li.item a:hover .image img {
    opacity: 0.8;
  }
}
@media screen and (max-width: 800px) {
  .lineup_chito li.item {
    float: none;
    width: 100% !important;
  }
}
@media screen and (min-width: 801px) and (max-width: 959px) {
  .lineup {
    padding: 50px 25px 50px 25px;
  }
}
@media screen and (min-width: 960px) {
  .lineup {
    padding: 50px 25px 50px 25px;
  }
  .lineup.small {
    clear: both;
  }
  .lineup.small .item {
    float: left;
    width: calc(33.33% - 17px);
    margin: 0 0 50px 25px;
  }
  .lineup.small .item:nth-child(3n + 1) {
    margin-left: 0;
    clear: both;
  }
  .lineup.small .item:nth-child(2n + 1) {
    padding: 0;
  }
  .lineup.small .item:nth-child(2n) {
    padding: 0;
  }
  .lineup.small .item .info {
    padding: 0 0;
  }
  .lineup.small .item .info::after {
    content: "";
    display: block;
    clear: both;
  }
  .lineup.small .item .info .titleBox {
    width: 100%;
  }
  .lineup.small .item .info .titleBox img {
    width: 50%;
  }
  .lineup.small .item .info .titleBox .bar {
    padding: 5px 0 0 15px;
    border-left: 2px solid #000;
  }
  .lineup.small .item .info .titleBox ul {
    margin: 12px 0 0 0;
  }
  .lineup.small .item .info .titleBox ul li {
    margin: 6px 0 0 0;
    font-size: 15px;
  }
  .lineup.small .item .info .titleBox .notice {
    padding: 5px 0 0 16px;
    font-size: 15px;
  }
  .lineup.small .item .info .priceBox {
    position: absolute;
    top: 0;
    right: 0;
    width: 60%;
    text-align: right;
    padding: 5px 0 0 1px;
  }
  .lineup.small .item .info .priceBox .price {
    font-size: 23px;
    line-height: 23px;
  }
  .lineup.small .item .info .priceBox .tax {
    font-size: 9px;
  }
  .lineup.small .item .info .priceBox .notice {
    margin: 0 0 0;
    font-size: 15px;
  }
  .lineup.small .item .info .priceBox .othershop {
    margin: 7px 0 0;
    font-size: 9px;
  }
  .lineup .item {
    float: left;
    width: calc(33.33% - 17px);
    margin: 0 0 50px 25px;
  }
  .lineup .item:nth-child(3n + 1) {
    margin-left: 0;
    clear: both;
  }
  .lineup .item a {
    display: block;
  }
  .lineup .item a:hover .image img {
    opacity: 0.9;
  }
  .lineup .item .image {
    margin: 0 0 15px 0;
  }
  .lineup .item .info {
    padding: 0;
  }
  .lineup .item .info::after {
    content: "";
    display: block;
    clear: both;
  }
  .lineup .item .info .titleBox {
    width: 100%;
  }
  .lineup .item .info .titleBox img {
    width: 50%;
  }
  .lineup .item .info .titleBox .bar {
    padding: 5px 0 0 15px;
    border-left: 2px solid #000;
  }
  .lineup .item .info .titleBox ul {
    margin: 12px 0 0 0;
  }
  .lineup .item .info .titleBox ul li {
    margin: 6px 0 0 0;
    font-size: 14px;
    font-weight: 600;
  }
  .lineup .item .info .titleBox .notice {
    padding: 0 0 0 17px;
    font-size: 14px;
  }
  .lineup .item .info .priceBox {
    position: absolute;
    top: 0;
    right: 0;
    width: 60%;
    text-align: right;
    padding: 3px 0 0 1px;
  }
  .lineup .item .info .priceBox .price {
    font-size: 23px;
    line-height: 23px;
  }
  .lineup .item .info .priceBox .tax {
    font-size: 9px;
  }
  .lineup .item .info .priceBox .notice {
    margin: 7px 0 0;
    font-size: 15px;
  }
  .lineup .item .info .priceBox .othershop {
    margin: 7px 0 0;
    font-size: 9px;
  }
  .product .swiperBox {
    width: 60%;
    float: left;
    margin-bottom: 50px;
  }
  .product .info {
    float: left;
    width: 40%;
    padding: 0 0 0 50px;
  }
  .product .info .titleBox img {
    width: 70%;
  }
  .product .info .titleBox .bar {
    padding: 5px 0 0 15px;
    border-left: 2px solid #000;
  }
  .product .info .titleBox ul {
    margin-top: 15px;
  }
  .product .info .titleBox ul li {
    margin: 6px 0 0 0;
    font-size: 18px;
  }
  .product .info .titleBox .notice {
    padding: 5px 0 0 17px;
    font-size: 15px;
  }
  .product .info .priceBox {
    float: right;
    position: relative;
    top: inherit;
    bottom: inherit;
    right: inherit;
    width: 60%;
    text-align: right;
    padding: 1rem 0 1rem;
    pointer-events: none;
  }
  .product .info .priceBox .price {
    font-size: 34px;
    line-height: 34px;
  }
  .product .info .priceBox .tax {
    font-size: 9px;
    display: block;
    line-height: 1em;
    padding: 6px 0 6px;
  }
  .product .info .priceBox .notice {
    margin-top: 7px;
    font-size: 15px;
  }
  .product .info .storeSelectBox {
    float: left;
    top: inherit;
    right: inherit;
    width: 40%;
    position: relative;
    margin-top: 14px;
    padding-top: 0;
    font-size: 0;
    line-height: 0;
  }
  .product .info .storeSelectBox select {
    font-size: 14px;
  }
  .product .info .storeSelectBox .select-icon {
    font-size: 26px;
    line-height: 26px;
    position: absolute;
    bottom: 0;
    right: 0px;
    width: 26px;
    height: 26px;
    pointer-events: none;
    transition: background-color 0.3s ease, border-color 0.3s ease;
  }
  .product .info .storeSelectBox .select-icon svg {
    width: 26px;
    height: 26px;
    transform: scale(0.6);
  }
  .product .info .buttonBox {
    clear: both;
    position: relative;
    bottom: inherit;
    right: inherit;
    top: auto;
  }
  .product .info .buttonBox .button {
    margin: 50px 0 0 0;
    width: 100%;
  }
  .product .info .buttonBox .button .title {
    background-color: #000;
    font-size: 16px;
    color: #fff;
    padding: 9px 10px 9px 10px;
  }
  .product .info .buttonBox .button .desc {
    font-size: 17px;
    padding: 4px 10px 4px 10px;
  }
  .product .info .buttonBox .button .desc .notice {
    padding: 0;
    font-size: 10px;
    line-height: 10px;
  }
  .product .info .buttonBox .soldout .desc,
  .product .info .buttonBox .notforsale .desc {
    font-size: 18px;
    line-height: 1em;
    padding: 15px 30px;
  }
  .product .info .buttonBox .buy .desc {
    font-size: 18px;
    line-height: 1em;
    padding: 15px 30px;
  }
  .product .info .buttonBox a,
  .product .info .buttonBox button {
    opacity: 1;
  }
  .product .info .buttonBox a:hover,
  .product .info .buttonBox button:hover {
    opacity: 0.8;
    border: none;
  }
  .product .info .commentBox {
    padding-bottom: 0;
    font-size: 14px;
    line-height: 20px;
  }
  .product .info .commentBox .message {
    padding: 1em;
    background-color: #fff;
  }
  .product .spec {
    display: block;
    clear: both;
  }
  .product .spec .spec-checkbox {
    display: none;
  }
  .product .spec .specDetail {
    visibility: visible;
    opacity: 1;
  }
  .product .spec .specDetail dl dt {
    padding: 10px 0 0 0;
    font-size: 15px;
    width: 25%;
  }
  .product .spec .specDetail dl dd {
    padding: 10px 0 0 0;
    font-size: 15px;
    width: 75%;
  }
  .product .spec .spec-trigger {
    margin-top: 30px;
    padding: 0 0 0 10px;
    font-size: 23px;
    text-align: left;
    border-left: 1px solid #000;
  }
  .product .spec .spec-trigger span {
    padding: 0;
  }
  .product .spec .spec-trigger::before,
  .product .spec .spec-trigger::after {
    display: none;
  }
  .product .spec .spec-checkbox + .spec-trigger + .specDetail {
    padding-top: 10px;
    visibility: visible;
    opacity: 1;
    position: relative;
    z-index: 150;
    height: auto;
  }
  .product .spec .spec-checkbox + .spec-trigger + .specDetail::before {
    display: none;
  }
  .product .spec .spec-checkbox + .spec-trigger + .specDetail dt,
  .product .spec .spec-checkbox + .spec-trigger + .specDetail dd,
  .product .spec .spec-checkbox:checked + .spec-trigger + .specDetail dt,
  .product .spec .spec-checkbox:checked + .spec-trigger + .specDetail dd {
    visibility: visible;
    height: auto;
    opacity: 1;
    padding: 10px 0 0 0;
  }
  .product .spec .spec-checkbox + .spec-trigger + .specDetail dt,
  .product .spec .spec-checkbox:checked + .spec-trigger + .specDetail dt {
    padding: 10px 15px 0 0;
    font-weight: 700;
  }
}
.collab {
  padding: calc(64 * 100vw / 1080) calc(50 * 100vw / 1080) calc(64 * 100vw / 1080) calc(50 * 100vw / 1080);
}
.collab h2 {
  text-align: center;
}
.collab h2.saint-laurent img {
  height: calc(198 * 100vw / 1080);
}
.collab h2.mastermind img {
  height: calc(220 * 100vw / 1080);
}
.collab h2.franck-muller img {
  height: calc(266 * 100vw / 1080);
}
.collab p.desc {
  padding: calc(64 * 100vw / 1080) calc(50 * 100vw / 1080) calc(120 * 100vw / 1080) calc(50 * 100vw / 1080);
  font-size: calc(32 * 100vw / 1080);
  line-height: calc(54 * 100vw / 1080);
}
.collab ul.image li img {
  width: 100%;
}
@media screen and (min-width: 960px) {
  .collab {
    padding: 64px 50px 64px 50px;
  }
  .collab h2 {
    text-align: center;
    width: 100%;
  }
  .collab h2.saint-laurent img {
    height: 96px;
  }
  .collab h2.mastermind img {
    height: 110px;
  }
  .collab h2.franck-muller img {
    height: 133px;
  }
  .collab p.desc {
    width: 100%;
    padding: 32px 25px 60px 50px;
    font-size: 16px;
    line-height: 24px;
  }
  .collab ul.image::after {
    content: "";
    display: block;
    clear: both;
  }
  .collab ul.image li {
    width: 50%;
    float: left;
  }
  .collab ul.image li img {
    width: 100%;
  }
  .collab ul.franck-muller.image li {
    width: 33.33%;
  }
}
.productCollab {
  padding: calc(32 * 100vw / 1080) calc(0 * 100vw / 1080) calc(32 * 100vw / 1080) calc(0 * 100vw / 1080);
  clear: both;
}
.productCollab p.desc {
  padding: calc(64 * 100vw / 1080) calc(50 * 100vw / 1080) calc(0 * 100vw / 1080) calc(50 * 100vw / 1080);
  font-size: calc(32 * 100vw / 1080);
  line-height: calc(54 * 100vw / 1080);
}
@media screen and (min-width: 960px) {
  .productCollab {
    padding: 64px 0 0 0;
  }
  .productCollab p.desc {
    width: 100%;
    padding: 32px 25px 0 50px;
    font-size: 16px;
    line-height: 24px;
  }
}
section.documents {
  padding: calc(192 * 100vw / 1080) calc(50 * 100vw / 1080) calc(64 * 100vw / 1080) calc(50 * 100vw / 1080);
}
section.documents h1 {
  text-align: left;
  border-left-color: #000;
  border-left-style: solid;
  border-left-width: calc(23 * 100vw / 1080);
  padding: calc(10 * 100vw / 1080) calc(0 * 100vw / 1080) calc(8 * 100vw / 1080) calc(27 * 100vw / 1080);
  font-size: calc(60 * 100vw / 1080);
  line-height: calc(60 * 100vw / 1080);
}
section.documents h2 {
  text-align: left;
  border-left: 2px solid #000;
  padding: calc(10 * 100vw / 1080) calc(0 * 100vw / 1080) calc(8 * 100vw / 1080) calc(50 * 100vw / 1080);
  font-size: calc(36 * 100vw / 1080);
  line-height: calc(52 * 100vw / 1080);
  font-weight: 700;
}
section.documents h3 {
  text-align: left;
  padding: calc(10 * 100vw / 1080) calc(0 * 100vw / 1080) calc(8 * 100vw / 1080) calc(50 * 100vw / 1080);
  font-size: calc(36 * 100vw / 1080);
  line-height: calc(52 * 100vw / 1080);
  text-decoration: underline;
}
section.documents h4 {
  text-align: left;
  padding: calc(10 * 100vw / 1080) calc(0 * 100vw / 1080) calc(8 * 100vw / 1080) calc(50 * 100vw / 1080);
  font-size: calc(24 * 100vw / 1080);
  line-height: calc(36 * 100vw / 1080);
  font-weight: 700;
}
section.documents em {
  font-weight: 700;
}
section.documents p {
  padding: calc(0 * 100vw / 1080) calc(50 * 100vw / 1080) calc(0 * 100vw / 1080) calc(50 * 100vw / 1080);
  font-size: calc(24 * 100vw / 1080);
  line-height: calc(32 * 100vw / 1080);
}
section.documents p a {
  text-decoration: underline;
}
section.documents ul {
  padding: calc(0 * 100vw / 1080) calc(50 * 100vw / 1080) calc(0 * 100vw / 1080) calc(50 * 100vw / 1080);
}
section.documents ul li {
  margin-bottom: calc(10 * 100vw / 1080);
  font-size: calc(24 * 100vw / 1080);
  line-height: calc(32 * 100vw / 1080);
  text-indent: -1em;
  margin-left: 1em;
}
section.documents ul.noIndent li {
  text-indent: 0;
  margin-left: 0;
}
section.documents ul.noIndent li em {
  font-size: calc(36 * 100vw / 1080);
  line-height: calc(52 * 100vw / 1080);
}
section.documents table {
  margin: 1em auto 0;
  font-size: 18px;
  line-height: 1.6;
}
section.documents table th {
  padding-top: 20px;
  width: 25%;
  font-weight: bold;
  padding-right: 20px;
}
section.documents table td {
  padding-top: 20px;
  font-weight: normal;
  padding-right: 20px;
}
section.documents table td dt {
  font-weight: bold;
  text-decoration: underline;
}
section.documents .tableInfo {
  padding: calc(10 * 100vw / 1080) calc(0 * 100vw / 1080) calc(5 * 100vw / 1080) calc(0 * 100vw / 1080);
  text-align: right;
  font-size: calc(16 * 100vw / 1080);
  line-height: calc(20 * 100vw / 1080);
  font-style: italic;
}
section.documents .tableGrid {
  margin: calc(0 * 100vw / 1080) calc(0 * 100vw / 1080) calc(50 * 100vw / 1080) calc(0 * 100vw / 1080);
  border-bottom: 0.5px solid black;
}
section.documents .tableGrid .item-row-header {
  background-color: #d9d9d9;
  font-weight: bold;
}
section.documents .tableGrid .item-row {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  border-right: 0.5px solid black;
}
section.documents .tableGrid .item-row div {
  padding: 5px;
  flex-basis: 100%;
  flex: 1;
  border-left: 0.5px solid black;
  border-top: 0.5px solid black;
  text-align: left;
  font-size: calc(20 * 100vw / 1080);
  line-height: calc(28 * 100vw / 1080);
}
section.documents h1 + p,
section.documents p + ul {
  margin-top: calc(24 * 100vw / 1080);
}
section.documents h1 + h2 {
  margin-top: calc(100 * 100vw / 1080);
}
section.documents p + h2,
section.documents ul + h2,
section.documents p + h3 {
  margin-top: calc(50 * 100vw / 1080);
}
section.documents h2 + p,
section.documents h3 + p {
  margin-top: calc(12 * 100vw / 1080);
}
section.documents p + p {
  margin-top: calc(50 * 100vw / 1080);
}
@media screen and (min-width: 960px) {
  section.documents {
    padding: 128px 25px 64px 25px;
  }
  section.documents h1 {
    border-left-width: 12px;
    padding: 14px 25px 16px 30px;
    font-size: 30px;
    line-height: 30px;
  }
  section.documents h2 {
    border-left: 2px solid #000;
    padding: 10px 25px 12px 44px;
    font-size: 24px;
    line-height: 30px;
  }
  section.documents h3 {
    padding: 0 25px 16px 44px;
    font-size: 20px;
    line-height: 30px;
  }
  section.documents h4 {
    padding: 0 25px 16px 44px;
    font-size: 16px;
    line-height: 30px;
  }
  section.documents p {
    padding: 0 25px 0 44px;
    font-size: 16px;
    line-height: 30px;
  }
  section.documents ul {
    padding: 0 25px 16px 44px;
  }
  section.documents ul li {
    margin-bottom: calc(10 * 100vw / 1080);
    font-size: 16px;
    line-height: 30px;
  }
  section.documents ul.noIndent li em {
    font-size: 16px;
    line-height: 30px;
  }
  section.documents .tableInfo {
    margin: 0 45px 0.5em;
    font-size: 16px;
    line-height: 20px;
  }
  section.documents .tableGrid {
    margin: 0 45px 25px;
  }
  section.documents .tableGrid .item-row div {
    font-size: 14px;
    line-height: 20px;
  }
  section.documents h1 + p,
  section.documents p + ul {
    margin-top: 12px;
  }
  section.documents h1 + h2 {
    margin-top: 50px;
  }
  section.documents p + h2,
  section.documents ul + h2,
  section.documents p + h3 {
    margin-top: 25px;
  }
  section.documents h2 + p,
  section.documents h3 + p {
    margin-top: 6px;
  }
  section.documents p + p {
    margin-top: 50px;
  }
  section.documents p + h4.bottom {
    margin-top: 12px;
    padding-bottom: 0;
  }
}
input[type="text"],
input[type="password"],
input[type="url"],
input[type="tel"],
input[type="search"],
input[type="number"],
input[type*="date"],
input[type="email"] {
  font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-size: 16px;
}
.page-layout-1column .product-item-details .tax-info {
  font-size: 12px;
  display: block;
  margin-top: 6px;
}
.sales-order-print .info,
.sales-order-shipment .info,
.sales-order-printshipment .info {
  display: none;
}
.sales-order-print .documents,
.sales-order-shipment .documents,
.sales-order-printshipment .documents {
  display: none;
}
.sales-order-print .copy,
.sales-order-shipment .copy,
.sales-order-printshipment .copy {
  display: none;
}
.page.tracking {
  font-size: 16px;
}
.page.tracking .order.subtitle {
  font-weight: 700;
  margin-bottom: 1em;
}
#maincontent {
  padding: calc(192 * 100vw / 1080) calc(50 * 100vw / 1080) calc(64 * 100vw / 1080) calc(50 * 100vw / 1080);
}
#maincontent.page-main-full-width {
  padding: 0;
}
.shipping-tracking-popup #maincontent {
  padding: 64px 25px 0 25px;
}
.shipping-tracking-popup #maincontent.page-main-full-width {
  padding: 0;
}
.shipping-tracking-popup #maincontent .tracking .col.label {
  font-size: 16px;
  background-color: #d1d1d1;
  border-left: 1px solid #999;
  border-top: 1px solid #999;
  border-bottom: 1px solid #999;
  padding: 5px !important;
}
.shipping-tracking-popup #maincontent .tracking .col.value {
  font-size: 16px;
  border: 1px solid #999;
  padding: 5px !important;
}
.shipping-tracking-popup #maincontent p.shipping-japan {
  font-size: 14px;
  margin-top: 1em;
}
.message.global.cookie {
  z-index: 10000;
}
.page-layout-2columns-left #maincontent .column.main {
  padding-bottom: 60px;
}
.page-layout-2columns-left #maincontent .column.main .block .block-content .box-title {
  padding-left: 1em;
}
.page-layout-2columns-left #maincontent .column.main .block .block-content .box-content {
  line-height: 1.5em;
  background-color: #fafafa;
  padding: 1em;
  border-radius: 5px 5px 0 0;
}
.page-layout-2columns-left #maincontent .column.main .block .block-content .box-actions {
  margin-top: 0;
  border-top: 1px solid #999;
  padding: 0.5em 1em 0.6em;
  background-color: #fafafa;
  border-radius: 0 0 5px 5px;
}
.page-layout-2columns-left #maincontent .column.main .block .block-content .box-actions a {
  margin-right: 2em;
}
.modals-wrapper {
  position: relative;
  z-index: 10000;
}
.modal-content {
  font-size: 16px;
}
.modal-footer .action-dismiss + .action-accept {
  margin-left: 2em;
}
.page-layout-2columns-right .columns {
  padding: calc(0 * 100vw / 1080) calc(0 * 100vw / 1080) calc(64 * 100vw / 1080) calc(0 * 100vw / 1080);
}
#checkout-step-shipping_method {
  font-size: 14px;
}
#co-payment-form {
  padding: 1em;
}
.table-wrapper {
  font-size: 14px;
}
.table-wrapper a {
  color: #0090ff;
}
.table-wrapper .product-item-name {
  display: inline;
  padding: 0;
}
.table-wrapper .table:not(.cart):not(.totals) thead th {
  border-top: 1px solid #999;
  border-right: 1px solid #999;
  border-bottom: 1px solid #999;
  background-color: #d1d1d1;
}
.table-wrapper .table:not(.cart):not(.totals) thead th:nth-child(1) {
  border-left: 1px solid #999;
}
.table-wrapper .table:not(.cart):not(.totals) tbody td {
  border-right: 1px solid #999;
  border-bottom: 1px solid #999;
  background-color: #fcfcfc;
}
.table-wrapper .table:not(.cart):not(.totals) tbody td:nth-child(1) {
  border-left: 1px solid #999;
}
.page-title + .return-status,
.page-title + .order-status {
  display: block;
  margin: 1em 0 1em;
  font-size: 16px;
  padding: 0.5em 1em;
  background-color: #d1d1d1;
  border-radius: 5px;
}
.order-date {
  font-size: 14px;
  margin-bottom: 1em;
  margin-top: 0 !important;
}
.order-date + .actions-toolbar {
  margin-bottom: 0;
}
.items.order-links {
  font-size: 16px;
  border-bottom: 1px solid #d1d1d1;
}
.items.order-links a {
  display: block;
  color: #0090ff;
  padding-top: 0.2em;
  padding-left: 1em;
  padding-right: 1em;
  padding-bottom: 0.3em;
  border-top: 1px solid #d1d1d1;
  border-left: 1px solid #d1d1d1;
  border-right: 1px solid #d1d1d1;
  border-radius: 5px 5px 0 0;
  background-color: #fafafa;
}
.order-details-items .order-title strong {
  font-weight: 700;
}
.order-details-items .order-title a {
  margin-left: 2em;
  color: #0090ff;
  font-size: 14px;
}
.sales-order-invoice-download {
  font-size: 16px;
  padding: 1em;
}
.sales-order-invoice-download a {
  margin-right: 2em;
  padding: 1em;
  border: 1px solid transparent;
  border-radius: 5px;
  background-color: #0090ff;
  color: #fff;
  font-size: 1.4rem;
  line-height: 1.6rem;
  width: 40%;
}
.order-products-toolbar {
  font-size: 14px;
}
.actions-toolbar {
  font-size: 14px;
  margin-bottom: 2em;
}
.actions-toolbar a {
  color: #0090ff;
}
#drpay_dropin-content .payment-method-content {
  padding-left: 0;
}
#drpay_dropin-content #drop-in {
  background-color: #fff;
}
#drpay_dropin-content .checkout-payment-method .payment-method-content .payment-method-billing-address {
  margin: 2em;
}
#drpay_dropin-content .actions-toolbar .primary {
  display: flex;
  flex-direction: column-reverse;
  width: 90%;
  margin-right: auto;
  margin-left: auto;
}
#drpay_dropin-content .actions-toolbar #DR-placeOrder span {
  display: block;
  width: 100%;
  text-align: center;
}
#drpay_dropin-content #DR-dropInAccept {
  margin-bottom: 20px;
  text-align: left;
}
#drpay_dropin-content #confirmDisclosure a {
  color: #0090ff !important;
}
.page-header {
  border-bottom: none;
}
.page-layout-checkout header {
  height: calc(128 * 100vw / 1080);
  padding: calc(64 * 100vw / 1080) calc(0 * 100vw / 1080) calc(0 * 100vw / 1080) calc(0 * 100vw / 1080);
}
.page-layout-checkout header h1 {
  float: left;
}
.page-layout-checkout header h1 img {
  height: calc(64 * 100vw / 1080);
  width: auto;
}
.page-layout-checkout form.form {
  padding-left: 0;
  padding-right: 0;
}
.page-title-wrapper {
  padding: calc(0 * 100vw / 1080) calc(0 * 100vw / 1080) calc(64 * 100vw / 1080) calc(0 * 100vw / 1080);
}
.page-title-wrapper .page-title {
  border-left: 8px solid #000;
  padding-left: 10px;
  font-size: calc(60 * 100vw / 1080);
  line-height: calc(60 * 100vw / 1080);
}
.payment-method-billing-address,
.checkout-billing-address {
  background-color: #fff;
  border-radius: 5px;
  padding: 0 0 1em 1em;
  margin-bottom: 1em;
}
.payment-method-billing-address .checkout-billing-address .actions-toolbar .primary {
  display: block;
  flex-direction: row-reverse !important;
}
.payment-method-billing-address .checkout-billing-address .actions-toolbar .primary .action-update {
  margin-right: 2em;
  padding: 1em;
  border: 1px solid transparent;
  background-color: #0090ff;
  color: #fff;
  font-size: 1.4rem;
  line-height: 1.6rem;
  width: 40%;
}
.payment-method-billing-address .checkout-billing-address .actions-toolbar .primary .action-cancel {
  border-radius: 3px;
  padding: 1em;
  margin: 0 2em 0 0;
  background-color: #e3e3e3;
  border: 1px solid transparent;
  color: #333333;
  font-size: 1.4rem;
  line-height: 1.6rem;
  width: 40%;
}
.columns .colum .page-title-wrapper {
  padding: calc(0 * 100vw / 1080) calc(0 * 100vw / 1080) calc(64 * 100vw / 1080) calc(0 * 100vw / 1080);
}
.columns .column.main {
  padding-bottom: 0;
}
.cart-summary .login-container,
.cart-summary form.form,
.cart-summary form.form-address-edit,
.cart-summary .block {
  padding-left: 0;
  padding-right: 0;
}
.login-container a,
form.form a,
form.form-address-edit a,
.block a {
  color: #0090ff;
}
.cart-empty {
  background-color: #fff;
  padding: 3em;
  margin-bottom: 3em;
  font-size: 20px;
  line-height: 1.8em;
}
.cart-empty a {
  color: #0090ff;
}
#registration,
.checkout-success {
  padding-top: 2em;
}
#registration p,
.checkout-success p {
  font-size: 20px;
  line-height: 1.8em;
}
#registration a,
.checkout-success a {
  color: #0090ff;
}
#registration .action.primary.continue,
.checkout-success .action.primary.continue {
  font-size: 16px;
  line-height: 1.8em;
}
#registration {
  padding-top: 2em;
}
#registration a.action.primary {
  font-size: 16px;
  line-height: 1.8em;
  color: #fff;
}
.delete-account-notice {
  font-size: 16px;
  line-height: 1.8em;
}
#delete-account-button {
  margin-top: 1em;
  padding: 0.5em 1em;
  margin-bottom: 3em;
  border: none !important;
}
#delete-account-button:hover {
  border: none !important;
}
.cart-summary .checkout-container {
  padding-left: 0;
  padding-right: 0;
}
.checkout-container a {
  color: #0090ff;
}
#compliance {
  margin: 3em 0 0 0;
  padding: 2em 0 0 1em;
  border-top: 1px solid #d1d1d1;
}
#compliance a {
  color: #0090ff;
}
.block,
.sidebar,
.DR-Legal-Footer {
  font-size: 14px;
}
.billing-address-same-as-shipping-block.field {
  padding: 20px 0 0;
  font-size: 14px;
}
.footer.content {
  border: none !important;
}
.DR-Legal-Footer div:first-child {
  font-size: 16px;
  margin-bottom: 0.5em;
}
.DR-Legal-Footer span {
  padding-right: 1rem;
}
.DR-Legal-Footer span:first-child::before {
  margin-right: 0;
  display: none;
}
.DR-Legal-Footer span::before {
  margin-right: 1rem;
  content: "|";
  color: #d1d1d1;
}
#checkout .authentication-wrapper {
  display: none;
}
#maincontent #block-shipping {
  display: none;
}
#maincontent form.form,
#maincontent form.form-address-edit {
  font-size: 14px;
}
#maincontent .action.primary,
#maincontent button.primary {
  background-color: #0090ff !important;
  border-color: #0090ff !important;
}
#maincontent div.primary a,
#maincontent button.primary a,
#maincontent button.primary span {
  color: #fff !important;
}
#maincontent .authentication-wrapper {
  margin-top: -70px !important;
}
#maincontent .opc-progress-bar {
  width: 100%;
  text-align: left;
  display: flex;
}
#maincontent .opc-progress-bar .opc-progress-bar-item {
  width: 49.9999%;
}
#maincontent .opc-block-summary {
  margin: 0 0 10px;
  background-color: transparent !important;
}
#maincontent .cart-summary {
  background-color: #fff;
}
#maincontent .cart.table-wrapper .actions-toolbar > .action,
#maincontent .action-gift,
#maincontent .block-cart-failed .action.continue,
#maincontent .cart-container .form-cart .action.continue,
#maincontent .gift-item-block .title {
  background-color: #fff;
}
.block-collapsible-nav .item.current a,
.block-collapsible-nav .item.current > strong {
  border-color: #000;
}
.sidebar-additional {
  display: none;
}
#shopping-cart-table .item-actions .action.action-edit {
  display: none;
}
@media screen and (min-width: 768px) {
  #maincontent {
    padding: 96px 25px 0;
  }
  .page-layout-checkout header {
    height: 96px;
    padding: 32px 0 0 0;
  }
  .page-layout-checkout header h1 img {
    height: 32px;
  }
  .page-layout-checkout #maincontent header.modal-header {
    height: initial;
    padding: 0;
  }
  .page-layout-checkout #maincontent .opc-progress-bar {
    padding: 0;
  }
  .page-layout-checkout #maincontent .opc-progress-bar .opc-progress-bar-item {
    width: 49.9999%;
  }
  .page-title-wrapper {
    padding: 0 0 32px 0;
  }
  .page-title-wrapper .page-title {
    font-size: 30px;
    line-height: 30px;
    margin-bottom: 0;
  }
  .page-layout-2columns-right .columns {
    padding: 0 0 32px 0;
  }
  .columns .colum .page-title-wrapper {
    padding: 0 25px 32px 0;
  }
  .login-container,
  form.form,
  form.form-address-edit,
  .block {
    padding: 0 0 0 0;
  }
  #registration {
    padding: 32px 0 0 0;
  }
  .opc-block-summary .items-in-cart .product {
    padding: 0;
  }
  .sidebar {
    padding: 0 0 32px 0;
  }
  .block.items-in-cart {
    padding-left: 0;
    padding-right: 0;
  }
  .sidebar .block {
    padding-left: 0;
    padding-right: 0;
  }
  .sidebar-main {
    padding: 0 0 32px 0;
  }
  .sidebar-main .block-collapsible-nav .content {
    padding-top: 0;
  }
  .page-title {
    font-size: 30px;
    line-height: 30px;
  }
  .opc-sidebar {
    position: relative;
    background: #ffffff;
    box-shadow: inset 0 0 10px rgba(179, 179, 179, 0.89);
    border-radius: 2px;
    font-size: 12px;
  }
  .opc-sidebar:before {
    content: " ";
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    border-width: 0 30px 30px 0;
    border-style: solid;
    width: 0;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .opc-sidebar:before {
    background: #e3e3e3;
    border-color: #F4F4F4 #F4F4F4 #e3e3e3 #e3e3e3;
  }
}
.italy-banner {
  padding: 1em;
  font-size: 16px;
  background-color: #333333;
  margin-bottom: 1em;
  color: #fff;
}
.italy-banner a {
  color: #0090ff;
}
#checkout .italy-banner {
  margin-top: 1em;
}
@media screen and (min-width: 768px) and (max-width: 958px) {
  .page-title-wrapper {
    padding: calc(0 * 100vw / 1080) calc(0 * 100vw / 1080) calc(64 * 100vw / 1080) calc(0 * 100vw / 1080);
  }
  .columns .colum .page-title-wrapper {
    padding: calc(0 * 100vw / 1080) calc(0 * 100vw / 1080) calc(64 * 100vw / 1080) calc(0 * 100vw / 1080);
  }
  .sidebar {
    padding: calc(0 * 100vw / 1080) calc(0 * 100vw / 1080) calc(64 * 100vw / 1080) calc(0 * 100vw / 1080);
  }
  .sidebar .block {
    padding-left: 0;
    padding-right: 0;
  }
  .sidebar .block .content {
    padding-top: 0;
  }
}
@media screen and (max-width: 767px) {
  .page-title-wrapper {
    padding: calc(0 * 100vw / 1080) calc(0 * 100vw / 1080) calc(64 * 100vw / 1080) calc(0 * 100vw / 1080);
  }
  .checkout-cart-index .page-title-wrapper {
    padding: calc(0 * 100vw / 1080) calc(0 * 100vw / 1080) calc(64 * 100vw / 1080) calc(0 * 100vw / 1080);
  }
  .block-collapsible-nav {
    top: calc(0 * 100vw / 1080);
  }
  .block-collapsible-nav-content.active {
    background-color: #fff;
  }
  .DR-Legal-Footer {
    font-size: 14px;
  }
}
.cartFaq {
  padding: calc(64 * 100vw / 1080) calc(0 * 100vw / 1080) calc(0 * 100vw / 1080) calc(0 * 100vw / 1080);
}
.cartFaq h2 {
  font-size: 24px;
  line-height: 24px;
  margin-bottom: 25px;
  padding: 0 0 5px;
  border-bottom: 1px solid #000;
}
.cartFaq .listBox::after {
  content: "";
  display: block;
  clear: both;
}
.cartFaq .listBox .faqlist {
  float: left;
  width: 100%;
  margin: 0 0 2em;
}
.cartFaq .listBox .faqlist:nth-child(2n+1) {
  margin-left: 0;
  clear: both;
}
.cartFaq .listBox .faqlist h3 {
  font-size: 18px;
  line-height: 30px;
  margin-bottom: 0.5em;
}
.cartFaq .listBox .faqlist p {
  font-size: 14px;
  line-height: 1.6em;
}
@media screen and (min-width: 960px) {
  .cartFaq {
    padding: 32px 0 0 0;
  }
  .cartFaq .listBox .faqlist {
    width: calc(50% - 25px);
    margin: 0 0 50px 50px;
  }
  .cartFaq .listBox .faqlist h3 {
    margin-bottom: 1em;
  }
}
@media screen and (max-width: 639px) {
  .table-wrapper .table:not(.cart):not(.totals) tbody td {
    border-right: none;
    border-bottom: none;
    padding-left: 1em !important;
    padding-right: 1em !important;
  }
  .table-wrapper .table:not(.cart):not(.totals) tbody td:nth-child(1) {
    border-left: none;
  }
  .table-wrapper .table:not(.cart):not(.totals):not(.table-comparison) > tbody > tr td[data-th]:before,
  .table-wrapper .table:not(.cart):not(.totals):not(.table-comparison) > tbody > tr th[data-th]:before {
    width: 20%;
  }
}
div#onepage-checkout-shipping-method-additional-load + .message.notice {
  display: none;
}
#checkout-payment-method-load .payment-method-title {
  display: none;
}
.japan #shopping-cart-table .price-excluding-tax {
  display: none;
}
.japan .opc-block-summary .table-totals .totals.sub.excl,
.japan #cart-totals .totals.sub.excl {
  display: none;
}
.japan .opc-block-summary .table-totals .totals-tax,
.japan #cart-totals .totals-tax {
  display: none;
}
.japan .opc-block-summary .table-totals .grand.totals.excl,
.japan #cart-totals .grand.totals.excl {
  display: none;
}
.japan .opc-block-summary .table-totals .totals.shipping.excl,
.japan #cart-totals .totals.shipping.excl {
  display: none;
}
.japan .opc-block-summary .table-totals .totals.coupon-fee,
.japan #cart-totals .totals.coupon-fee {
  display: none;
}
.japan .opc-block-summary .table-totals .grand.totals.incl,
.japan #cart-totals .grand.totals.incl {
  font-size: 1.4em;
}
.japan #dr-vat-id-toggle-container-shipping {
  display: none;
}
.support {
  background-color: #e8e8e8;
}
.support .page-content {
  padding: calc(192 * 100vw / 1080) calc(50 * 100vw / 1080) calc(64 * 100vw / 1080) calc(50 * 100vw / 1080);
}
.support .support-title {
  position: relative;
  padding: calc(0 * 100vw / 1080) calc(0 * 100vw / 1080) calc(0 * 100vw / 1080) calc(50 * 100vw / 1080);
  z-index: 100;
}
.support .support-title img {
  height: calc(94 * 100vw / 1080);
}
.support .tabs {
  margin: 0 auto 0;
  padding: calc(100 * 100vw / 1080) calc(0 * 100vw / 1080) calc(0 * 100vw / 1080) calc(0 * 100vw / 1080);
  width: 50%;
  display: flex;
  justify-content: space-around;
}
.support .tabs li {
  display: block;
  cursor: pointer;
  padding: 1em 40px 0.8em;
  font-size: 12px;
  border-bottom: 1px solid transparent;
  line-height: 18px;
  font-size: 18px;
}
.support .tabs li a {
  color: #909698;
}
.support .tabs li.selected {
  border-bottom-color: #000000;
}
.support .tabs li.selected a {
  color: #000000;
}
.support .support-select {
  padding-top: calc(100 * 100vw / 1080);
}
.support .support-select h2 {
  font-size: calc(40 * 100vw / 1080);
  line-height: calc(50 * 100vw / 1080);
  text-align: center;
  font-weight: 700;
}
.support .support-select .desc {
  padding-top: 1em;
  font-size: calc(32 * 100vw / 1080);
  line-height: calc(42 * 100vw / 1080);
  text-align: center;
}
.support .support-select ul {
  padding: calc(100 * 100vw / 1080) calc(0 * 100vw / 1080) calc(0 * 100vw / 1080) calc(50 * 100vw / 1080);
}
.support .support-select ul li {
  margin-bottom: 2em;
}
.support .support-select ul li a {
  display: flex;
  align-items: center;
  font-size: calc(40 * 100vw / 1080);
  line-height: calc(50 * 100vw / 1080);
}
.support .support-select ul li a img {
  width: 40%;
  vertical-align: middle;
  margin-right: 20px;
}
.support .support-select ul li a span {
  font-weight: 600;
}
.support .support-item {
  padding-top: calc(100 * 100vw / 1080);
}
.support .support-item .support-head p {
  text-align: center;
}
.support .support-item .support-head p img {
  width: 50%;
}
.support .support-item .support-head h2 {
  font-size: calc(40 * 100vw / 1080);
  line-height: calc(50 * 100vw / 1080);
  margin-top: 10px;
  text-align: center;
}
.support .support-item ul {
  padding: calc(100 * 100vw / 1080) calc(0 * 100vw / 1080) calc(0 * 100vw / 1080) calc(50 * 100vw / 1080);
}
.support .support-item ul::after {
  content: "";
  display: block;
  clear: both;
}
.support .support-item ul li {
  float: left;
  width: 50%;
  margin-bottom: 2em;
}
.support .support-item ul li a {
  display: block;
  border-left: 2px solid #000000;
  font-weight: 700;
  padding: 1em 1em 1em;
  font-size: calc(36 * 100vw / 1080);
  line-height: calc(36 * 100vw / 1080);
}
.support .support-content {
  padding-top: calc(200 * 100vw / 1080);
}
.support .support-content a {
  text-decoration: underline;
}
.support .support-content h2 {
  border-left: 2px solid #000000;
  font-weight: 700;
  padding: 1em 1em 1em;
  font-size: calc(36 * 100vw / 1080);
  line-height: calc(36 * 100vw / 1080);
  margin-bottom: 1em;
}
.support .support-content h2 + dl.support-faq {
  margin-top: 0;
  padding-top: 0;
}
.support .support-content h3 {
  padding: 1em 0 1em;
  font-size: calc(36 * 100vw / 1080);
  line-height: calc(36 * 100vw / 1080);
}
.support .support-content p {
  font-size: calc(32 * 100vw / 1080);
  line-height: calc(50 * 100vw / 1080);
}
.support .support-content p img {
  width: 100%;
}
.support .support-content p.qr {
  margin-top: 2em;
  padding: 0 2em;
}
.support .support-content p + p {
  margin-top: 2em;
}
.support .support-content .small {
  font-size: 0.8em;
}
.support .support-content ul.links {
  font-size: calc(36 * 100vw / 1080);
  line-height: calc(36 * 100vw / 1080);
}
.support .support-content ul.links li {
  margin-left: 2em;
  list-style: inside;
}
.support .support-content ul.links li + li {
  margin-top: 1em;
}
.support .support-content .video-box {
  width: 100%;
}
.support .support-content .video-box iframe {
  width: 100%;
}
.support .support-content .image {
  text-align: center;
}
.support .support-content .image img {
  width: 100%;
}
.support .support-content dl.support-faq {
  padding: 1em 0 1em;
  font-size: calc(32 * 100vw / 1080);
  line-height: calc(50 * 100vw / 1080);
}
.support .support-content dl.support-faq dt {
  padding: 2em 0 0;
  font-weight: 700;
}
.support .support-content dl.support-faq dd {
  margin-top: 0.5em;
}
.support .support-content dl.support-faq img {
  margin-top: 1em;
  width: 100%;
}
.support .support-content dl.support-faq .tutorial {
  margin-top: 2em;
  display: flex;
  align-items: center;
}
.support .support-content dl.support-faq .tutorial .image {
  width: 45%;
  padding: 0 5% 0 5%;
}
.support .support-content dl.support-faq .tutorial .image img {
  margin-top: 0;
  width: 100%;
}
.support .support-content dl.support-faq .tutorial ul li a {
  background-color: #000;
  display: block;
  padding: 1em 1.5em;
  font-size: calc(32 * 100vw / 1080);
  line-height: 1em;
  text-align: center;
  text-decoration: none;
  color: #fff;
}
.support .support-content dl.support-faq .tutorial ul li + li {
  margin-top: 1em;
}
.support .support-content dl.support-wifi {
  padding: 1em 0 1em;
  font-size: calc(32 * 100vw / 1080);
  line-height: calc(50 * 100vw / 1080);
}
.support .support-content dl.support-wifi li + li {
  margin-top: 1em;
}
.support .support-content dl.support-wifi .step {
  display: flex;
  align-items: center;
  vertical-align: middle;
}
.support .support-content dl.support-wifi .step em {
  font-size: calc(96 * 100vw / 1080);
  line-height: 1em;
  padding-right: 0.5em;
}
.support .support-content dl.support-wifi .step .red {
  color: #C51D1B;
}
.support .support-content dl.support-wifi dd {
  margin-top: 0.5em;
  padding: 1em;
  background-color: #fff;
}
.support .support-content dl.support-wifi dd h3 {
  font-weight: 700;
}
.support .support-content dl.support-wifi dd h3::before {
  content: '';
  border: 1px solid #000000;
  width: 1em;
  height: 1em;
  display: block;
  float: left;
  margin-right: 0.5em;
}
.support .support-content dl.support-wifi dd p {
  padding-left: calc(1.5em + 4px);
}
.support .support-content dl.support-wifi img {
  margin-top: 1em;
  width: 100%;
}
.support .support-repair {
  margin-top: 1em;
}
.support .support-repair .repair-check {
  display: none;
}
.support .support-repair .repair-label {
  font-size: calc(32 * 100vw / 1080);
  line-height: calc(50 * 100vw / 1080);
  text-decoration: underline;
}
.support .support-repair .repair-content {
  border: 1px solid #333;
  height: 0;
  opacity: 0;
  padding: 10px;
  transition: 0.5s;
  visibility: hidden;
}
.support .support-repair .repair-content h3 {
  font-weight: 700;
  text-align: center;
}
.support .support-repair .repair-content ul li {
  list-style: disc;
  margin-top: 0.5em;
  margin-left: 1em;
  font-size: calc(32 * 100vw / 1080);
  line-height: calc(50 * 100vw / 1080);
}
.support .support-repair .repair-check:checked + .repair-label + .repair-content {
  height: auto;
  opacity: 1;
  padding: 10px;
  visibility: visible;
  background-color: #fff;
}
@media screen and (min-width: 960px) {
  .support .page-content {
    padding: 128px 25px 64px 25px;
  }
  .support .support-title {
    padding: 0 0 0 40px;
  }
  .support .support-title img {
    height: 47px;
  }
  .support .tabs {
    padding-top: 50px;
  }
  .support .support-select {
    padding-top: 50px;
    padding-left: 45px;
    padding-right: 45px;
    max-width: 1200px;
    margin: 0 auto 0;
  }
  .support .support-select h2 {
    font-size: 20px;
    line-height: 30px;
  }
  .support .support-select .desc {
    font-size: 16px;
    line-height: 24px;
  }
  .support .support-select ul {
    padding: 50px 50px 0 50px;
  }
  .support .support-select ul::after {
    content: "";
    display: block;
    clear: both;
  }
  .support .support-select ul li {
    width: 33.3%;
    float: left;
  }
  .support .support-select ul li a {
    display: block;
    text-align: center;
    font-size: 20px;
    line-height: 30px;
  }
  .support .support-select ul li a img {
    width: 80%;
    margin-right: 0;
    margin-bottom: 1em;
  }
  .support .support-select ul li a span {
    display: block;
  }
  .support .support-item {
    padding-top: 50px;
    padding-left: 45px;
    padding-right: 45px;
    max-width: 1200px;
    margin: 0 auto 0;
    display: flex;
    align-items: center;
  }
  .support .support-item .support-head {
    width: 40%;
  }
  .support .support-item .support-head p {
    text-align: center;
  }
  .support .support-item .support-head p img {
    width: 50%;
  }
  .support .support-item .support-head h2 {
    font-size: 20px;
    line-height: 25px;
  }
  .support .support-item ul {
    padding: 2em 0 0 25px;
  }
  .support .support-item ul li {
    float: left;
    width: 33.3%;
    margin-bottom: 2em;
  }
  .support .support-item ul li a {
    display: block;
    border-left: 2px solid #000000;
    font-weight: 700;
    padding: 1em 1em 1em;
    font-size: 18px;
    line-height: 18px;
  }
  .support .support-content {
    padding-top: 100px;
    padding-left: 45px;
    padding-right: 45px;
    max-width: 1200px;
    margin: 0 auto 0;
  }
  .support .support-content h2 {
    font-size: 18px;
    line-height: 18px;
  }
  .support .support-content h3 {
    font-size: 18px;
    line-height: 18px;
  }
  .support .support-content p {
    font-size: 18px;
    line-height: 32px;
  }
  .support .support-content p img {
    width: 50%;
  }
  .support .support-content p.center {
    display: block;
  }
  .support .support-content p + p {
    margin-top: 2em;
  }
  .support .support-content ul.links {
    font-size: 18px;
    line-height: 18px;
  }
  .support .support-content ul.links::after {
    content: "";
    display: block;
    clear: both;
  }
  .support .support-content ul.links li {
    margin-top: 1em;
    float: left;
  }
  .support .support-content .image {
    text-align: center;
  }
  .support .support-content .image img {
    width: 50%;
  }
  .support .support-content .center {
    width: 100%;
    display: block;
    text-align: center;
  }
  .support .support-content dl.support-faq {
    padding: 1em 0 1em;
    font-size: 18px;
    line-height: 32px;
  }
  .support .support-content dl.support-faq dt {
    padding: 2em 0 0;
    font-weight: 700;
  }
  .support .support-content dl.support-faq dd {
    margin-top: 0.5em;
  }
  .support .support-content dl.support-faq img {
    margin-top: 1em;
    width: 50%;
  }
  .support .support-content dl.support-faq .tutorial {
    width: 50%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 2em;
    display: flex;
    align-items: center;
  }
  .support .support-content dl.support-faq .tutorial .image {
    width: 45%;
    padding: 0 5% 0 5%;
  }
  .support .support-content dl.support-faq .tutorial .image img {
    margin-top: 0;
    width: 50%;
  }
  .support .support-content dl.support-faq .tutorial ul li a {
    background-color: #000;
    display: block;
    padding: 1em 1.5em;
    font-size: 16px;
    line-height: 1em;
    text-align: center;
    text-decoration: none;
    color: #fff;
  }
  .support .support-content dl.support-wifi {
    padding: 1em 0 1em;
    font-size: 18px;
    line-height: 32px;
  }
  .support .support-content dl.support-wifi .step {
    vertical-align: middle;
  }
  .support .support-content dl.support-wifi .step em {
    font-size: 64px;
  }
  .support .support-content dl.support-wifi .step .red {
    color: #C51D1B;
  }
  .support .support-content dl.support-wifi img {
    margin-top: 1em;
    width: 50%;
  }
  .support .support-repair .repair-label {
    font-size: 16px;
    line-height: 24px;
  }
  .support .support-repair .repair-content ul::after {
    content: "";
    display: block;
    clear: both;
  }
  .support .support-repair .repair-content ul li {
    font-size: 16px;
    line-height: 24px;
  }
}
