/**
 * local-hero__outer
 */
.local-hero__outer {
  position: relative;
  z-index: 0;
}
@media screen and (min-width: 1425px), print {
  .local-hero__outer {
    height: 745px !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-hero__outer {
    height: 46.67vw;
  }
}
@media screen and (max-width: 759px) {
  .local-hero__outer {
    height: 114.27vw;
  }
  .local-hero__outer:before {
    content: "";
    display: block;
    height: calc(1.07vw - 2px);
    width: 100%;
    background-color: #fff;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
  }
}
@media screen and (min-width: 1425px), print {
  .local-hero {
    height: 1024px !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-hero {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 71.65vw;
    overflow: hidden;
  }
}
@media screen and (max-width: 759px) {
  .local-hero {
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 198.8vw;
  }
}
.local-hero--random .local-hero__pic.js-show {
  opacity: 0;
}
.local-hero--random .local-hero__pic.js-show--random {
  opacity: 1;
}
.local-hero--random .js-show--first {
  opacity: 1;
  -webkit-transition: opacity 0s, -webkit-transform 6000ms linear;
  transition: opacity 0s, -webkit-transform 6000ms linear;
  transition: transform 6000ms linear, opacity 0s;
  transition: transform 6000ms linear, opacity 0s, -webkit-transform 6000ms linear;
}
.local-hero__pics {
  width: 100%;
  height: 100%;
  overflow: hidden;
  box-sizing: border-box;
  will-change: transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media screen and (min-width: 760px), print {
  .local-hero__pics {
    height: calc(100% - 56px);
  }
}
@media screen and (max-width: 759px) {
  .local-hero__pics {
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    border: 1.07vw solid #fff;
    border-bottom: none;
  }
}
.local-hero__pic {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-position: center top;
  background-size: cover;
  background-repeat: no-repeat;
  opacity: 0;
  z-index: 10;
}
@media screen and (max-width: 759px) {
  .local-hero__pic {
    width: 146.67vw;
    height: 197.74vw;
  }
}
.local-hero__pic:first-child {
  z-index: 1;
}
@media screen and (min-width: 760px), print {
  .local-hero__pic.js-zooming {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
            transform: scale3d(1.05, 1.05, 1.05);
  }
}
@media screen and (max-width: 759px) {
  .local-hero__pic.js-zooming {
    -webkit-animation: heroPicAnimation 7.6s linear both;
            animation: heroPicAnimation 7.6s linear both;
  }
}
.local-hero__pic.js-show {
  opacity: 1;
}
.local-hero__pic.js-overlap {
  z-index: 2;
}
@media screen and (min-width: 760px), print {
  .local-hero__pic {
    -webkit-transition: opacity 800ms linear, -webkit-transform 6000ms linear;
    transition: opacity 800ms linear, -webkit-transform 6000ms linear;
    transition: transform 6000ms linear, opacity 800ms linear;
    transition: transform 6000ms linear, opacity 800ms linear, -webkit-transform 6000ms linear;
  }
}
@media screen and (max-width: 759px) {
  .local-hero__pic {
    -webkit-transition: opacity 1.2s linear, -webkit-transform 0s linear 1.2s;
    transition: opacity 1.2s linear, -webkit-transform 0s linear 1.2s;
    transition: transform 0s linear 1.2s, opacity 1.2s linear;
    transition: transform 0s linear 1.2s, opacity 1.2s linear, -webkit-transform 0s linear 1.2s;
  }
}
html[data-browser="game"] .local-hero__pic {
  display: none;
  -webkit-transition: none !important;
  transition: none !important;
}
.local-hero__pic.js-zooming-only {
  -webkit-transform: scale3d(1.05, 1.05, 1.05);
          transform: scale3d(1.05, 1.05, 1.05);
  -webkit-transition: -webkit-transform 5000ms linear;
  transition: -webkit-transform 5000ms linear;
  transition: transform 5000ms linear;
  transition: transform 5000ms linear, -webkit-transform 5000ms linear;
}
@media screen and (min-width: 760px), print {
  .local-hero__pic.local-hero__first {
    background-image: url("../img/01-hero/main-img-01.jpg");
  }
}
@media screen and (max-width: 759px) {
  .local-hero__pic.local-hero__first {
    background-image: url("../img/01-hero/main-img-01sp.jpg");
  }
}
.local-hero__logo {
  pointer-events: none;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  opacity: 1;
  position: relative;
  z-index: 10;
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (min-width: 1425px), print {
  .local-hero__logo {
    top: 166px !important;
    width: 415px !important;
    height: 418px !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-hero__logo {
    position: absolute;
    top: 6.32vw;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    width: 29.13vw;
    height: 29.34vw;
    background-image: url("../img/logo.png");
  }
}
@media screen and (max-width: 759px) {
  .local-hero__logo {
    position: absolute;
    width: 57.34vw;
    height: 57.74vw;
    top: 27.6vw;
    left: 22.27vw;
    opacity: 1 !important;
    background-image: url("../img/logo.png");
  }
}
/**
 * local-contents__wrapper
 */
.local-contents__wrapper {
  background: transparent;
  width: 100%;
  position: relative;
}
@media screen and (max-width: 759px) {
  .local-contents__wrapper {
    max-width: auto;
  }
}
@media screen and (min-width: 760px), print {
  .local-contents {
    overflow: hidden;
    position: relative;
  }
}
@media screen and (min-width: 1425px), print {
  .local-contents__header__wrapper {
    margin-bottom: 42px !important;
  }
  .local-contents__header__wrapper:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 100%;
    height: 100%;
    background-color: #fff;
    width: calc((100vw - 1425px) / 2);
  }
  .local-contents__header__wrapper:after {
    content: "";
    position: absolute;
    left: 100%;
    top: 42px !important;
    width: calc((100vw - 1425px) / 2);
    height: 1px;
    background: #e6e6e6;
  }
}
@media screen and (min-width: 760px), print {
  .local-contents__header__wrapper {
    max-width: 1425px;
    margin: 0 auto;
    position: relative;
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: end;
            justify-content: flex-end;
    -webkit-box-align: start;
            align-items: flex-start;
    margin-bottom: 2.95vw;
  }
}
@media screen and (max-width: 759px) {
  .local-contents__header__wrapper {
    margin-top: 6px;
    margin-bottom: 14.27vw;
  }
}
.local-contents__header__wrapper--movie {
  margin-bottom: 0 !important;
}
@media screen and (max-width: 759px) {
  .local-contents__header__wrapper--movie {
    margin-top: 0;
  }
}
.local-contents__header__wrapper--movie::after {
  display: none;
}
.local-contents__header__wrapper--movie .local-contents__header:before {
  display: none;
}
@media screen and (max-width: 759px) {
  .local-contents__header__wrapper--movie .local-contents__header {
    padding-bottom: 0;
  }
}
.local-contents__header {
  position: relative;
  background: #fff;
  box-sizing: border-box;
}
@media screen and (min-width: 1425px), print {
  .local-contents__header:before {
    top: 42px !important;
    left: 42px !important;
    width: calc(100% - 42px) !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-contents__header {
    width: 96.78vw;
    max-width: 1379px;
  }
  .local-contents__header:before {
    content: "";
    position: absolute;
    top: 2.95vw;
    left: 2.95vw;
    width: calc(100% - 2.95vw);
    height: 1px;
    background: #e6e6e6;
  }
}
@media screen and (max-width: 759px) {
  .local-contents__header {
    padding: 0 0 4vw 3.74vw;
    width: 84.67vw;
  }
}
.local-contents__movies {
  width: 100%;
}
.local-contents__movies :.hardSwitch-movie-thumbs {
  width: 100%;
}
.local-contents__header-inner {
  background-color: #fff;
  box-sizing: border-box;
}
@media screen and (min-width: 1425px), print {
  .local-contents__header-inner {
    padding: 42px 0 0 42px !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-contents__header-inner {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
            justify-content: space-between;
    -webkit-box-align: stretch;
            align-items: stretch;
    padding: 2.95vw 0 0 2.95vw;
  }
}
.local-contents__title {
  position: relative;
  z-index: 10;
  font-size: 0;
}
@media screen and (min-width: 1425px), print {
  .local-contents__title {
    padding-top: 30px !important;
    margin-right: 55px !important;
    width: 206px !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-contents__title {
    padding-top: 2.11vw;
    margin-right: 3.86vw;
    width: 14.46vw;
  }
  .local-contents__title:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 6px;
    background: #e60012;
  }
  .local-contents__title img {
    width: 100%;
  }
}
@media screen and (max-width: 759px) {
  .local-contents__title {
    margin: 0 0 3.74vw;
    width: 75.87vw;
    padding-top: 5.87vw;
  }
  .local-contents__title img {
    width: 100%;
    margin-top: -10.4vw;
  }
}
@media screen and (min-width: 1425px), print {
  .local-contents__title .local-contents__title-inner {
    width: 194px !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-contents__title .local-contents__title-inner {
    background-image: url("../img/img-copy.svg");
    background-size: contain;
    background-repeat: no-repeat;
    width: 13.58vw;
  }
  .local-contents__title .local-contents__title-inner:before {
    content: '';
    display: block;
    padding-bottom: 95.12%;
  }
}
@media screen and (max-width: 759px) {
  .local-contents__title .local-contents__title-inner {
    background-image: url("../img/img-copy_sp.svg");
    background-size: contain;
    background-repeat: no-repeat;
    width: 96.27vw;
    display: inline-block;
  }
  .local-contents__title .local-contents__title-inner:before {
    content: '';
    display: block;
    padding-bottom: 17.6%;
  }
}
@media screen and (min-width: 1425px), print {
  .local-contents__header-main {
    width: calc(100% - 261px) !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-contents__header-main {
    width: calc(100% - 18.32vw);
  }
}
.local-contents__products {
  width: 100%;
  position: relative;
}
@media screen and (min-width: 1425px), print {
  .local-contents__products {
    padding-top: 42px !important;
    margin-bottom: 36px !important;
    padding-bottom: 36px !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-contents__products {
    padding-top: 2.95vw;
    width: 73.83vw;
    max-width: 1052px;
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
            align-items: flex-start;
    margin-bottom: 2.53vw;
    padding-bottom: 2.53vw;
  }
  .local-contents__products:before {
    content: "";
    position: absolute;
    bottom: 0px;
    left: 0;
    width: 100%;
    background-image: -webkit-linear-gradient(left, #999, #999 1px, transparent 1px, transparent 2px);
    background-image: linear-gradient(to right, #999, #999 1px, transparent 1px, transparent 2px);
    background-size: 4px 1px;
    height: 1px;
  }
}
@media screen and (max-width: 759px) {
  .local-contents__products {
    display: block;
    width: 96.27vw;
  }
}
.product-item {
  line-height: 0;
}
@media screen and (max-width: 759px) {
  .product-item {
    margin-bottom: 2.14vw;
  }
}
.product-item a {
  display: block;
  overflow: hidden;
  width: 100%;
  position: relative;
}
.product-item a img {
  width: 100%;
}
.product-item a h3 {
  display: inline-block;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
.product-item a:hover h3 {
  -webkit-transform: scale3d(1.02, 1.02, 1);
          transform: scale3d(1.02, 1.02, 1);
}
.product-item a span.ttl {
  position: absolute;
  display: inline-block;
  bottom: 1.34vw;
  left: 1.55vw;
}
.product-item a span.ttl img {
  width: 100%;
}
@media screen and (min-width: 1425px), print {
  .product-item a span.ttl {
    bottom: 19px;
    left: 22px;
  }
}
@media screen and (max-width: 759px) {
  .product-item a span.ttl {
    bottom: 4.27vw;
    left: 4.27vw;
  }
}
.product-item a span.icon {
  position: absolute;
}
@media screen and (min-width: 1425px), print {
  .product-item a span.icon {
    bottom: 18px !important;
    right: 13px !important;
    width: 19px !important;
    height: 19px !important;
  }
}
@media screen and (min-width: 760px), print {
  .product-item a span.icon {
    bottom: 1.27vw;
    right: 0.92vw;
    width: 1.34vw;
    height: 1.34vw;
  }
}
@media screen and (max-width: 759px) {
  .product-item a span.icon {
    bottom: 4.54vw;
    right: 4.94vw;
    width: 3.2vw;
    height: 3.2vw;
  }
}
.product-item:first-child {
  position: relative;
}
@media screen and (min-width: 1425px), print {
  .product-item:first-child {
    padding-right: 12px !important;
  }
}
@media screen and (min-width: 760px), print {
  .product-item:first-child {
    padding-right: 0.85vw;
  }
}
@media screen and (max-width: 759px) {
  .product-item:first-child {
    margin-bottom: 2.4vw;
  }
}
@media screen and (min-width: 760px), print {
  .product-item.switch .model {
    width: 43.65vw;
    max-width: 622px;
    background-image: url("../img/btn_nintendoSwitch.jpg");
    background-size: cover;
    background-repeat: no-repeat;
  }
  .product-item.switch .model:before {
    content: '';
    display: block;
    padding-bottom: 53.06%;
  }
  .product-item.switch span.ttl {
    width: 19.37vw;
    max-width: 276px;
  }
}
@media screen and (max-width: 759px) {
  .product-item.switch {
    width: 96.27vw;
    background-image: url("../img/btn_nintendoSwitch_sp.jpg");
    background-size: cover;
    background-repeat: no-repeat;
  }
  .product-item.switch .model {
    width: 100%;
  }
  .product-item.switch .model:before {
    content: '';
    display: block;
    padding-bottom: 67.18%;
  }
  .product-item.switch span.ttl {
    width: 60.54vw;
  }
}
.product-item.switch .nc3-a-icon svg {
  fill: #fff;
}
@media screen and (min-width: 760px), print {
  .product-item.lite .model {
    width: 29.27vw;
    max-width: 417px;
    background-image: url("../img/btn_nintendoSwitchLite.jpg");
    background-size: cover;
    background-repeat: no-repeat;
  }
  .product-item.lite .model:before {
    content: '';
    display: block;
    padding-bottom: 79.14%;
  }
  .product-item.lite span.ttl {
    width: 23.51vw;
    max-width: 335px;
  }
}
@media screen and (max-width: 759px) {
  .product-item.lite .model {
    width: 96.27vw;
    background-image: url("../img/btn_nintendoSwitchLite_sp.jpg");
    background-size: cover;
    background-repeat: no-repeat;
  }
  .product-item.lite .model:before {
    content: '';
    display: block;
    padding-bottom: 54.02%;
  }
  .product-item.lite span.ttl {
    width: 73.34vw;
  }
}
.product-item.lite .nc3-a-icon svg {
  fill: #230f08;
}
.local-contents--compare {
  background: #fff;
  line-height: 0;
  z-index: 1;
}
@media screen and (min-width: 760px), print {
  .local-contents--compare {
    width: 100%;
  }
}
.local-contents--compare .local-contents--compare__inner a {
  position: relative;
}
.local-contents--compare .local-contents--compare__inner a .nc3-a-icon {
  position: absolute;
}
@media screen and (min-width: 1425px), print {
  .local-contents--compare .local-contents--compare__inner a .nc3-a-icon {
    right: 24px !important;
    top: 60px !important;
    width: 19px !important;
    height: 19px !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-contents--compare .local-contents--compare__inner a .nc3-a-icon {
    right: 1.69vw;
    top: 4.22vw;
    width: 1.34vw;
    height: 1.34vw;
  }
}
@media screen and (max-width: 759px) {
  .local-contents--compare .local-contents--compare__inner a .nc3-a-icon {
    right: 4.94vw;
    top: 12.54vw;
    width: 3.2vw;
    height: 3.2vw;
  }
}
.local-contents--compare .local-contents--compare__inner a .nc3-a-icon svg {
  fill: #e60012;
}
@media screen and (min-width: 760px), print {
  .local-contents--compare .local-contents--compare__inner {
    width: 73.83vw;
    max-width: 1052px;
  }
  .local-contents--compare .local-contents--compare__inner a {
    box-sizing: border-box;
    overflow: hidden;
    display: inline-block;
    border: 2px solid #e6e6e6;
    -webkit-transition: border 150ms cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: border 150ms cubic-bezier(0.165, 0.84, 0.44, 1);
  }
  .local-contents--compare .local-contents--compare__inner a:hover {
    border: 2px solid #e60012;
  }
  .local-contents--compare .local-contents--compare__inner a img {
    width: 100%;
    -webkit-transition-duration: 0.3s;
            transition-duration: 0.3s;
  }
}
@media screen and (max-width: 759px) {
  .local-contents--compare .local-contents--compare__inner {
    width: 96.27vw;
  }
  .local-contents--compare .local-contents--compare__inner a {
    display: block;
    width: 100%;
  }
  .local-contents--compare .local-contents--compare__inner a img {
    width: 100%;
  }
}
.local-contents__inner {
  width: 100%;
  background: #fff;
  position: relative;
  padding-bottom: 10px;
}
.local-contents__inner {
  width: 100%;
  background: #fff;
}
.local-contents__sub {
  background: #fff;
}
@media screen and (min-width: 760px), print {
  .local-contents__sub {
    max-width: 1440px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 759px) {
  .local-contents__sub {
    width: 100%;
  }
}
/**
 * local-contents__subInner
 */
.local-contents__subInner {
  border-top: 1px solid #e6e6e6;
  border-bottom: 1px solid #e6e6e6;
  padding-bottom: 0;
}
@media screen and (min-width: 1425px), print {
  .local-contents__subInner {
    margin: 40px 24px 0 84px !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-contents__subInner {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center;
    max-width: 1440px;
    margin: 2.81vw 1.69vw 0 5.9vw;
  }
}
@media screen and (max-width: 759px) {
  .local-contents__subInner {
    border: none;
  }
}
@media screen and (min-width: 760px), print {
  .local-subBox {
    display: table;
    width: 50%;
  }
  .local-subBox div {
    display: table-cell;
    vertical-align: middle;
  }
}
.local-subBox a {
  position: relative;
}
@media screen and (min-width: 760px), print {
  .local-subBox a {
    display: block;
    padding: 18px 0 18px 21px;
  }
}
@media screen and (max-width: 759px) {
  .local-subBox a {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center;
    width: 92.54vw;
    height: 35.6vw;
    margin: 0 auto;
  }
}
.local-subBox a .nc3-a-icon {
  position: absolute;
  left: auto;
}
@media screen and (min-width: 1425px), print {
  .local-subBox a .nc3-a-icon {
    width: 19px !important;
    height: 19px !important;
    right: 17px !important;
    top: 77px !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-subBox a .nc3-a-icon {
    top: 50%;
    right: 1.2vw;
    width: 1.34vw;
    height: 1.34vw;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}
@media screen and (max-width: 759px) {
  .local-subBox a .nc3-a-icon {
    width: 3.2vw;
    height: 3.2vw;
    top: 16.14vw;
    right: 1.47vw;
  }
}
.local-subBox a .nc3-a-icon svg {
  fill: #e60012;
}
@media screen and (max-width: 759px) {
  .local-subBox:first-child a {
    background-image: -webkit-linear-gradient(left, #b4b4b4, #b4b4b4 1px, transparent 1px, transparent 3px);
    background-image: linear-gradient(to right, #b4b4b4, #b4b4b4 1px, transparent 1px, transparent 3px);
    background-repeat: repeat-x;
    background-position: left bottom;
    background-size: 4px 1px;
  }
}
.local-subBox:hover .local-subBox-img {
  opacity: 0.8;
}
.type-accesorries .local-subBox-img {
  font-size: 0;
  -webkit-transition: opacity 150ms linear;
  transition: opacity 150ms linear;
}
@media screen and (min-width: 1425px), print {
  .type-accesorries .local-subBox-img {
    width: 223px;
  }
}
@media screen and (min-width: 760px), print {
  .type-accesorries .local-subBox-img img {
    width: 100%;
  }
}
@media screen and (min-width: 760px) and (max-width: 979px) {
  .type-accesorries .local-subBox-img {
    width: 15.65vw;
  }
}
@media screen and (max-width: 759px) {
  .type-accesorries .local-subBox-img {
    width: 38.4vw;
    margin-left: 2.14vw;
  }
  .type-accesorries .local-subBox-img img {
    width: 100%;
  }
}
.type-software .local-subBox-img {
  font-size: 0;
  -webkit-transition: opacity 150ms linear;
  transition: opacity 150ms linear;
}
@media screen and (min-width: 1425px), print {
  .type-software .local-subBox-img {
    width: 239px;
  }
}
@media screen and (min-width: 760px), print {
  .type-software .local-subBox-img img {
    width: 100%;
  }
}
@media screen and (min-width: 760px) and (max-width: 979px) {
  .type-software .local-subBox-img {
    width: 16.78vw;
  }
  .type-software .local-subBox-img img {
    width: 100%;
  }
}
@media screen and (max-width: 759px) {
  .type-software .local-subBox-img {
    width: 38.4vw;
    margin-left: 2.14vw;
  }
  .type-software .local-subBox-img img {
    width: 100%;
  }
}
.local-subBox-txt {
  color: #3c3c3c;
  -webkit-transition: color 150ms linear;
  transition: color 150ms linear;
}
@media screen and (min-width: 1425px), print {
  .local-subBox-txt {
    padding-left: 36px !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-subBox-txt {
    padding-left: 2.53vw;
  }
}
@media screen and (max-width: 759px) {
  .local-subBox-txt {
    padding-left: 6.8vw;
  }
}
.local-subBox-txt .local-subBox-txt-jp {
  display: block;
  font-weight: 700;
  line-height: 1;
}
@media screen and (min-width: 1425px), print {
  .local-subBox-txt .local-subBox-txt-jp {
    font-size: 28px !important;
    margin-bottom: 14px !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-subBox-txt .local-subBox-txt-jp {
    font-size: 1.97vw;
    margin-bottom: 0.99vw;
  }
}
@media screen and (max-width: 759px) {
  .local-subBox-txt .local-subBox-txt-jp {
    font-size: 5.07vw;
    margin-bottom: 2.4vw;
  }
}
.local-subBox-txt .local-subBox-txt-en {
  display: block;
  font-weight: 700;
  color: #e60012;
  line-height: 1;
}
@media screen and (min-width: 1425px), print {
  .local-subBox-txt .local-subBox-txt-en {
    font-size: 12px !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-subBox-txt .local-subBox-txt-en {
    font-size: 0.85vw;
  }
}
@media screen and (max-width: 759px) {
  .local-subBox-txt .local-subBox-txt-en {
    font-size: 2.4vw;
  }
}
html[data-device="desktop"] .local-subBox a:hover .local-subBox-txt {
  color: #e60012;
}
/**
 * local-service
 */
.local-service {
  background: #fff;
}
@media screen and (min-width: 1425px), print {
  .local-service {
    padding-top: 90px !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-service {
    padding-top: 6.32vw;
    max-width: 1425px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 759px) {
  .local-service {
    background: #efefef;
    padding: 4vw 3.74vw;
  }
}
.local-btn {
  position: relative;
}
@media screen and (min-width: 1425px), print {
  .local-btn {
    margin: 0 12px 7px !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-btn {
    margin: 0 0.85vw 0.5vw;
  }
}
.local-btn {
  -webkit-transition: background-color 150ms linear;
  transition: background-color 150ms linear;
}
.local-btn a {
  width: 100%;
  display: block;
}
.local-btn .local-btn-Inner {
  position: relative;
}
@media screen and (min-width: 760px), print {
  .local-btn .local-btn-Inner {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
            align-items: center;
    width: 100%;
    margin: 0 auto;
  }
}
@media screen and (max-width: 759px) {
  .local-btn .local-btn-Inner .local-btnLogo {
    margin-bottom: 2.54vw;
    padding: 3.74vw 3.74vw 0;
  }
}
.local-btn .local-btn-Inner .local-btnLogo .logo-main {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  position: relative;
  z-index: 10;
  font-size: 0;
  box-sizing: border-box;
}
.local-btn .local-btn-Inner .local-btnLogo .logo-main img {
  width: 100%;
}
@media screen and (max-width: 759px) {
  .local-btn .local-btn-Inner .local-btnLogo .logo-main {
    -webkit-box-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
            flex-direction: row-reverse;
    padding: 0 3.07vw 0 2vw;
  }
}
.local-btn .local-btn-Inner .local-btnText {
  color: #fff;
  box-sizing: border-box;
  font-weight: bold;
}
@media screen and (min-width: 1425px), print {
  .local-btn .local-btn-Inner .local-btnText {
    font-size: 14px !important;
    padding-right: 130px !important;
    width: 509px !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-btn .local-btn-Inner .local-btnText {
    font-size: 0.99vw;
    line-height: 1.8;
    padding-right: 9.13vw;
    width: 35.72vw;
  }
}
@media screen and (max-width: 759px) {
  .local-btn .local-btn-Inner .local-btnText {
    position: relative;
    font-size: 3.2vw;
    line-height: 1.583;
    color: #8c8c8c;
    font-weight: normal;
    padding: 0 11.6vw 4vw 5.07vw;
  }
}
.local-btn .local-btn-Inner .local-btnText .local-btnText__ttl {
  font-weight: 700;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
          align-items: center;
  line-height: 1;
}
@media screen and (min-width: 1425px), print {
  .local-btn .local-btn-Inner .local-btnText .local-btnText__ttl {
    font-size: 22px !important;
    margin-bottom: 15px !important;
    margin-top: 10px !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-btn .local-btn-Inner .local-btnText .local-btnText__ttl {
    font-size: 1.55vw;
    margin-bottom: 1.06vw;
    margin-top: 0.71vw;
  }
}
@media screen and (max-width: 759px) {
  .local-btn .local-btn-Inner .local-btnText .local-btnText__ttl {
    font-size: 4vw;
    margin-bottom: 1.87vw;
    color: #3c3c3c;
  }
}
.local-btn .local-btn-Inner .local-btnText .local-btnText__ttl .local-btnText__border {
  display: inline-block;
  background-color: #fff;
  width: 5px;
}
@media screen and (min-width: 1425px), print {
  .local-btn .local-btn-Inner .local-btnText .local-btnText__ttl .local-btnText__border {
    height: 20px !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-btn .local-btn-Inner .local-btnText .local-btnText__ttl .local-btnText__border {
    height: 1.41vw;
  }
}
@media screen and (max-width: 759px) {
  .local-btn .local-btn-Inner .local-btnText .local-btnText__ttl .local-btnText__border {
    background-color: #e60012;
    height: 4vw;
  }
}
.local-btn .local-btn-Inner .local-btnText .local-btnText__ttl .local-btnText__txt {
  position: relative;
}
@media screen and (min-width: 1425px), print {
  .local-btn .local-btn-Inner .local-btnText .local-btnText__ttl .local-btnText__txt {
    padding-left: 13px !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-btn .local-btn-Inner .local-btnText .local-btnText__ttl .local-btnText__txt {
    padding-left: 0.92vw;
    letter-spacing: 1px;
  }
}
@media screen and (max-width: 759px) {
  .local-btn .local-btn-Inner .local-btnText .local-btnText__ttl .local-btnText__txt {
    font-size: 4vw;
    padding-left: 2.27vw;
  }
}
@media screen and (min-width: 1425px), print {
  .local-btn .local-btn-Inner .nc3-a-icon {
    width: 16px !important;
    height: 16px !important;
    right: 34px !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-btn .local-btn-Inner .nc3-a-icon {
    position: absolute;
    top: 50%;
    right: 2.39vw;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
    width: 1.13vw;
    height: 1.13vw;
  }
}
@media screen and (max-width: 759px) {
  .local-btn .local-btn-Inner .nc3-a-icon {
    position: absolute;
    right: 5.07vw;
    top: 12.27vw;
    width: 3.2vw;
    height: 3.2vw;
  }
}
.local-btn.btn-nso {
  background-color: #e60012;
}
@media screen and (max-width: 759px) {
  .local-btn.btn-nso {
    background: #fff;
    border-bottom: 2px solid #efefef;
  }
}
.local-btn.btn-nso .local-btnText .local-btnText-ttl .local-btnText--border {
  background-color: #fff;
}
@media screen and (max-width: 759px) {
  .local-btn.btn-nso .local-btnText .local-btnText-ttl .local-btnText--border {
    background-color: #e60012;
  }
}
@media screen and (min-width: 1425px), print {
  .local-btn.btn-nso .local-btnLogo .logo-main {
    padding: 0 0 0 72px !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-btn.btn-nso .local-btnLogo .logo-main {
    -webkit-box-align: center;
            align-items: center;
    padding: 0 0 0 5.06vw;
  }
}
@media screen and (max-width: 759px) {
  .local-btn.btn-nso .local-btnLogo .logo-main {
    background: #e60012;
  }
}
@media screen and (min-width: 1425px), print {
  .local-btn.btn-nso .local-btnLogo .logo-main .logo {
    width: 357px !important;
    margin-right: 43px !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-btn.btn-nso .local-btnLogo .logo-main .logo {
    width: 25.06vw;
    margin-right: 3.02vw;
  }
}
@media screen and (max-width: 759px) {
  .local-btn.btn-nso .local-btnLogo .logo-main .logo {
    width: 39.21vw;
  }
}
.local-btn.btn-nso .local-btnLogo .logo-main .logo img {
  width: 100%;
}
@media screen and (min-width: 1425px), print {
  .local-btn.btn-nso .local-btnLogo .logo-main .character {
    width: 391px !important;
    margin-top: -19px !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-btn.btn-nso .local-btnLogo .logo-main .character {
    width: 27.44vw;
    margin-top: -1.33vw;
  }
}
@media screen and (max-width: 759px) {
  .local-btn.btn-nso .local-btnLogo .logo-main .character {
    width: 37.34vw;
    margin-top: -2.13vw;
  }
}
.local-btn.btn-nso .local-btnLogo .logo-main .character img {
  width: 100%;
}
.local-btn.btn-nso .nc3-a-icon svg {
  fill: #fff;
}
@media screen and (max-width: 759px) {
  .local-btn.btn-nso .nc3-a-icon svg {
    fill: #e60012;
  }
}
@media screen and (min-width: 980px), print {
  html[data-device="desktop"] .local-btn.btn-nso:hover {
    background-color: rgba(230,0,18,0.7);
    opacity: 1;
    -webkit-animation: flash 300ms;
            animation: flash 300ms;
  }
}
.local-btn--mimamori {
  margin-bottom: 0;
  background-color: #ebebeb;
}
.local-btn--mimamori:hover {
  background-color: rgba(235,235,235,0.7);
}
@media screen and (max-width: 759px) {
  .local-btn--mimamori {
    background: #fff;
  }
}
@media screen and (min-width: 1425px), print {
  .local-btn--mimamori .local-btnLogo .logo-main {
    padding: 0 0 0 72px !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-btn--mimamori .local-btnLogo .logo-main {
    -webkit-box-align: center;
            align-items: center;
    padding: 0 0 0 5.06vw;
  }
}
@media screen and (max-width: 759px) {
  .local-btn--mimamori .local-btnLogo .logo-main {
    background: #ebebec;
    text-align: right;
  }
}
@media screen and (min-width: 1425px), print {
  .local-btn--mimamori .local-btnLogo .logo-main .logo {
    width: 398px !important;
    margin-right: 35px !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-btn--mimamori .local-btnLogo .logo-main .logo {
    width: 27.93vw;
    margin-right: 2.46vw;
  }
}
@media screen and (max-width: 759px) {
  .local-btn--mimamori .local-btnLogo .logo-main .logo {
    width: 45.2vw;
  }
}
.local-btn--mimamori .local-btnLogo .logo-main .logo img {
  width: 100%;
}
@media screen and (min-width: 1425px), print {
  .local-btn--mimamori .local-btnLogo .logo-main .character {
    width: 352px !important;
  }
}
@media screen and (min-width: 760px), print {
  .local-btn--mimamori .local-btnLogo .logo-main .character {
    width: 24.71vw;
  }
}
@media screen and (max-width: 759px) {
  .local-btn--mimamori .local-btnLogo .logo-main .character {
    width: 32.8vw;
    margin-top: -2.4vw;
  }
}
.local-btn--mimamori .local-btnLogo .logo-main .character img {
  width: 100%;
}
.local-btn--mimamori .local-btnText {
  color: #3c3c3c !important;
}
.local-btn--mimamori .local-btnText .local-btnText__ttl {
  color: #ff773a;
}
.local-btn--mimamori .local-btnText .local-btnText__ttl .local-btnText__border {
  background-color: #ff773a !important;
}
@media screen and (max-width: 759px) {
  .local-btn--mimamori .local-btnText {
    color: #8c8c8c !important;
  }
}
.local-btn--mimamori .nc3-a-icon svg {
  fill: #ff773a;
}
@media screen and (max-width: 759px) {
  .local-btn--mimamori .nc3-a-icon svg {
    fill: #e60012;
  }
}
@media screen and (min-width: 980px), print {
  html[data-device="desktop"] .local-btn--mimamori:hover {
    background-color: rgba(235,235,235,0.7);
    opacity: 1;
    -webkit-animation: flash 300ms;
            animation: flash 300ms;
  }
}
.nc3-c-gfooter {
  z-index: 100;
  position: relative;
}
@-webkit-keyframes heroPicAnimation {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-46.66vw);
            transform: translateX(-46.66vw);
  }
}
@keyframes heroPicAnimation {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-46.66vw);
            transform: translateX(-46.66vw);
  }
}
@-webkit-keyframes flash {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.8;
  }
  100% {
    opacity: 1;
  }
}
@keyframes flash {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.8;
  }
  100% {
    opacity: 1;
  }
}
