@charset "UTF-8";
.supportcommon-gfooter-menu-lv1__toggle.toggle_icon {
  display: block;
}
@media (min-width: 760px) {
  .category-header-topic-path {
    display: none;
  }
}

@media (max-width: 759px) {
	.category-header-container{
    /* display: none; */
    width: 100%;
    min-height: 28px;
    /* height: 28px; */
    overflow: hidden;
	}
  .category-header-topic-path{
    display: none;
  	/*height: 40px;
  	text-align: left;
  	overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  	-webkit-box-sizing: border-box;
  	   -moz-box-sizing: border-box;
  	        box-sizing: border-box;*/
  }
  .category-header-topic-path__body{
  	white-space: nowrap;
  }
  .category-header-topic-path__item{
  	float: none;
  	display: inline;
  }
  .category-header-topic-path__item:last-child{
  	padding-right: 6px;
  }
}

.is-local-menu-opened .questionnaire{
  z-index: -1;
  transition: all .5s ease;
}

/* ============================

  local fixed nav

============================ */
.is-local-menu-opened{
  overflow: hidden;
}

.fixed-local-nav__toggle-btn{
  position: absolute;
  right: 0;
  top: 0;
  z-index: 101;
}
.is-local-menu-opened .fixed-local-nav__toggle-btn a::after{
  display: none;
}


.local-nav-body{
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  visibility: hidden;
  transition-property: visible;
  transition-duration: 0.25s;
}
.is-local-menu-opened .local-nav-body{
  visibility: visible;
  transition-duration: 0s;
}
.toggle-menu-wrap{
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  transition-property: transform;
  transition-duration: 0.25s;
  transition-timing-function: cubic-bezier(0.25, 0.460, 0.45, 0.94);
  transform: translate3d(0,-100%,0);
  background: rgba(245,245,245,0.98);
}
.is-local-menu-opened .toggle-menu-wrap{
  transform: translate3d(0,0,0);
}

.no-touchevents .f-menu.toggle-memu li a{
  transition: color 0.15s linear;
}
.no-touchevents .f-menu.toggle-memu li a:hover{
  color: #e60012
}



@media all and (min-width: 1200px) {
  .f-menu.toggle-memu {
    padding-top: 131px;
  }

}
@media all and (max-width: 1199px) {
  .f-menu.toggle-memu{
    padding-top: 200px;
  }
  
}
@media all and (min-width: 980px){
  .fixed-local-nav__toggle-btn a{
    display: block;
    background: #e60012;
    width: 60px;
    height: 46px;
    position: relative;
  }
  .fixed-local-nav__toggle-btn a::before{
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 24px;
    height: 4px;
    margin: -2px 0 0 -12px;
    background: #FFF;
    display: block;
  }
  .fixed-local-nav__toggle-btn a::after{
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 4px;
    height: 24px;
    margin: -12px 0 0 -2px;
    background: #FFF;
    display: block;
  }
  .top-menu-list--8 .list-item{
    width: 12.5%;
  }
  .list-wrap .list-item:first-child  a::before{
    display: none;
  }
  .toggle-memu_inner {
    max-width: 980px;
    margin: 0 auto;
    padding: 0px 20px 30px 20px;
  }
  .f-menu-list-top-item {
    position: relative;
    margin: 15px 0 0;
    padding: 0 0 0 10px;
  }
  .f-menu .f-menu-list-wrap {
    max-width: 980px;
    margin: 0 auto;
    padding: 10px 0;
}
  .f-menu-list-top-item {
    position: relative;
    margin: 15px 0 0;
    padding: 0 0 0 10px;
  }
  .f-menu.toggle-memu .list-item.main_list {
    width: auto;
    margin: 15px 0 0 5px;
    float: none;
}
  .f-menu.toggle-memu li a {
    position: static;
    display: inline;
    padding: 0;
    color: #3c3c3c;
    text-align: left;
  }
  .f-menu.toggle-memu .list-item {
    position: relative;
    width: auto;
    float: none;
    margin: 7px 0 0 5px;
    padding: 0 0 0 10px;
  }
  .f-menu-list-top-item a {
    font-size: 120%;
  }
  .f-menu .toplayer-item > a {
    font-size: 140%;
    font-weight: bold;
  }
  .f-menu a i {
    display: inline-block;
    width: 14px;
    height: 14px;
    position: absolute;
    left: -3px;
    top: 0;
    bottom: 0;
    margin: auto 0;
    opacity: 0.7;
  }
  .f-menu a i::before {
      content: '';
      display: block;
      background: url(/support/common/v2/img/arrow/right-stroke-8c8c8c.svg) 50% 50% no-repeat;
      background-size: 14px;
      width: 14px;
      height: 14px;
  }
  .f-menu.toggle-memu .list-item.f-menu-list-level02 i{
    margin: 0;
  }
  .f-menu.toggle-memu .main_list_icon {
    margin: 0;
  }
  .f-menu .current span {
    color: #e60113;
  }
}

@media all and (max-width: 979px){
  .f-menu.toggle-memu{
    padding-top: 180px;
  }
  .is-gheader-fixed .f-menu.toggle-memu{
    padding-top: 60px;
  }
  .toggle-memu_inner {
    padding: 0px 10px 30px 10px;
  }
  .f-menu-list-top-item {
    position: relative;
    margin: 15px 0 0;
    padding: 0 0 0 10px;
  }
  .f-menu .f-menu-list-wrap {
    padding: 10px 0;
}
  .f-menu .toplayer-item > a {
    font-size: 14px;
    font-weight: bold;
  }
  .f-menu.toggle-memu .list-item {
    position: relative;
    width: auto;
    margin: 7px 0 0 5px;
    padding: 0 0 0 10px;
  }
  .f-menu-list-top-item {
    position: relative;
    margin: 15px 0 0;
    padding: 0 0 0 10px;
  }
  .f-menu.toggle-memu li a {
    position: static;
    display: inline;
    padding: 0;
    color: #3c3c3c;
    text-align: left;
  }
  .f-menu-list-top-item a {
    font-size: 12px;
  }

  .f-menu.toggle-memu .list-item.main_list:first-child {
    margin-top: 0;
  }
  .f-menu.toggle-memu .list-item.main_list {
    width: auto;
    margin: 15px 0 0 5px;
  }
  .f-menu a{
    display: block;
    position: relative;
  }
  .f-menu a i {
    display: inline-block;
    width: 14px;
    height: 14px;
    position: absolute;
    left: -3px;
    top: 0;
    bottom: 0;
    margin: auto 0;
    opacity: 0.7;
}
  .f-menu a i::before {
    content: '';
    display: block;
    background: url(/support/common/v2/img/arrow/right-stroke-8c8c8c.svg) 50% 50% no-repeat;
    background-size: 14px;
    width: 14px;
    height: 14px;
  }
  .f-menu.toggle-memu .list-item.f-menu-list-level02 i{
    margin: 0;
  }
  .f-menu.toggle-memu .main_list_icon {
    margin: 0;
  }
  .f-menu .current span {
    color: #e60113;
  }
}



/* ============================

  .local-nav01

============================ */
.local-nav01 .is-local-menu-opened{
  overflow: hidden;
}
.local-nav01 .top-menu{
  position: relative;
  background: rgba(235,235,235,0.95);
}
.local-nav01 .top-menu-wrap {
  position: absolute;
  margin-top: 60px;
  z-index: 9999;
}


.local-nav01 .top-menu-wrap.is-fixed {
  position: fixed;
  margin-top: 0 !important;
  top: 0;
}
.local-nav01 .fixed-local-nav__toggle-btn{
  position: absolute;
  right: 0;
  top: 0;
  z-index: 101;
}
.is-local-menu-opened .local-nav01 .fixed-local-nav__toggle-btn a::after {
  display: none;
}

.local-nav01 .top-menu-list .list-item a {
  height: 46px;
  position: relative;
  display: block;
  padding: 10px 5px;
  box-sizing: border-box;
  text-align: center;
}

.local-nav01 .top-menu-list .list-item a span {
  display: block;
  font-size: 12px;
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}

.local-nav01 .local-nav-body {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  visibility: hidden;
  transition-property: visible;
  transition-duration: 0.25s;
}
.is-local-menu-opened .local-nav01 .local-nav-body {
  visibility: visible;
  transition-duration: 0s;
}

.local-nav01 .toggle-menu-wrap {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  transition-property: transform;
  transition-duration: 0.25s;
  transition-timing-function: cubic-bezier(0.25, 0.460, 0.45, 0.94);
  transform: translate3d(0, -100%, 0);
  background: rgba(245, 245, 245, 0.98);
}

.is-local-menu-opened .local-nav01 .toggle-menu-wrap {
  transform: translate3d(0, 0, 0);
}
.no-touchevents .local-nav01 .top-menu-list .list-item a {
  transition: color 0.15s linear;
}

.no-touchevents .local-nav01 .top-menu-list .list-item a:hover {
  color: #e60012;
}
@media all and (min-width: 1200px) {
  .local-nav01 .top-menu-wrap {
    width: 100%;
  }
}

@media all and (max-width: 1199px) {
  .local-nav01 .top-menu-wrap {
    padding-right: 38px;
    border-bottom: 1px solid #ccc;
    overflow: hidden;
    height: 46px;
    width: calc(100% - 38px);
  }
}


@media all and (min-width: 980px) {
  .local-nav01 .fixed-local-nav__toggle-btn a {
    display: block;
    background: #e60012;
    width: 60px;
    height: 46px;
    position: relative;
  }
  .local-nav01 .fixed-local-nav__toggle-btn a::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 24px;
    height: 4px;
    margin: -2px 0 0 -12px;
    background: #FFF;
    display: block;
  }
  .local-nav01 .fixed-local-nav__toggle-btn a::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 4px;
    height: 24px;
    margin: -12px 0 0 -2px;
    background: #FFF;
    display: block;
  }
  .local-nav01 .top-menu {
    border-bottom: 1px solid #ccc;
  }
  .local-nav01 .top-menu-list {
    display: flex;
    height: 46px;
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
    box-sizing: border-box;
    padding-right: 60px;
    justify-content: center;
  }
  .local-nav01 .top-menu-list .list-item {
    position: relative;
    width: 33%;
    box-sizing: border-box;
  }
  .local-nav01 .top-menu-list--8 .list-item {
    width: 12.5%;
  }
  .local-nav01 .top-menu-list .list-item a::before {
    content: "";
    position: absolute;
    left: 0;
    top: 5px;
    bottom: 5px;
    width: 1px;
    background: #CCC;
  }
  .local-nav01 .top-menu-list .list-item:first-child a::before {
    display: none;
  }
  .local-nav01 .top-menu-list .list-item.current a {
    color: #555;
  }

  .local-nav01 .top-menu-list .list-item.current:before {
    content: "";
    display: block;
    position: absolute;
    bottom: 3px;
    left: 5px;
    right: 5px;
    margin: 0 auto;
    border-bottom: 2px solid #aaa;
  }

  .local-nav01 .toggle-memu_inner {
    max-width: 980px;
    margin: 0 auto;
    padding: 0px 20px 30px 20px;
  }
}
@media all and (max-width: 979px) {
  .local-nav01 .list-arrow--right {
    position: absolute;
    top: 0;
    right: 38px;
    width: 15px;
    height: 46px;
    background: rgba(0,0,0,0.4);
    z-index: 101;
    display: none;
  }
  .local-nav01 .list-arrow--right a::after {
    content: "";
    display: block;
    width: 15px;
    height: 15px;
    background: url(/support/common/v2/img/arrow/right-stroke-white.svg) 50% 50% no-repeat;
    background-size: 15px;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    margin: auto;
  }
  .local-nav01 .list-arrow--left{
    position: absolute;
    top: 0;
    left: 0;
    width: 15px;
    height: 46px;
    background: rgba(0,0,0,0.4);
    z-index: 101;
    display: none;
  }
  .local-nav01 .list-arrow--left a::after {
    content: "";
    display: block;
    width: 15px;
    height: 15px;
    background: url(/support/common/v2/img/arrow/left-stroke-white.svg) 50% 50% no-repeat;
    background-size: 15px;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    margin: auto;
  }
  .local-nav01 .fixed-local-nav__toggle-btn a {
    display: block;
    background: #e60012;
    width: 38px;
    height: 46px;
    position: relative;
  }
  .local-nav01 .fixed-local-nav__toggle-btn a::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 20px;
    height: 4px;
    margin: -2px 0 0 -10px;
    background: #FFF;
    display: block;
  }
  .local-nav01 .fixed-local-nav__toggle-btn a::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 4px;
    height: 20px;
    margin: -10px 0 0 -2px;
    background: #FFF;
    display: block;
  }
  .local-nav01 .top-menu {
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    height: 66px;
  }
  .local-nav01 .top-menu-list {
    overflow-x: auto;
    box-sizing: border-box;
    font-size: 0;
    display: flex;
    height: 46px;
    align-items: center;
    justify-content: center;
  }
  .local-nav01 .top-menu-list .list-item.current:before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    width: 80%;
    margin: 0 auto;
    border-bottom: 2px solid #aaa;
  }

  .local-nav01 .top-menu-list .list-item {
    position: relative;
    width: 33%;
    border-right: 1px solid #ccc;
    vertical-align: top;
    box-sizing: border-box;
    flex-grow: 0;
    flex-shrink: 1;
  }
  .local-nav01 .top-menu-list .list-item:last-child {
    border: none;
  }
  .local-nav01 .top-menu-list--4 .list-item,
  .local-nav01 .top-menu-list--5 .list-item,
  .local-nav01 .top-menu-list--6 .list-item,
  .local-nav01 .top-menu-list--7 .list-item,
  .local-nav01 .top-menu-list--8 .list-item,
  .local-nav01 .top-menu-list--9 .list-item,
  .local-nav01 .top-menu-list--10 .list-item {
    width: 120px;
  }

  .local-nav01 .is-gheader-fixed .f-menu.toggle-memu {
    padding-top: 60px;
  }
  .local-nav01 .toggle-memu_inner {
    padding: 0px 10px 30px 10px;
  }
}
@media all and (max-width: 759px) {
  .local-nav01 .top-menu-list--4 {
    width: calc((120px * 4));
  }
  .local-nav01 .top-menu-list--5 {
    width: calc((120px * 5));
  }
  .local-nav01 .top-menu-list--6 {
    width: calc((120px * 6));
  }
  .local-nav01 .top-menu-list--7 {
    width: calc((120px * 7));
  }
  .local-nav01 .top-menu-list--8 {
    width: calc((120px * 8));
  }
  .local-nav01 .top-menu-list--9 {
    width: calc((120px * 9));
  }
  .local-nav01 .top-menu-list--10 {
    width: calc((120px * 10));
  }
}



/* ============================

  .local-nav02

============================ */
.local-nav02 .top-menu{
  position: relative;
  width: 100%;
  overflow-x: scroll;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
}

.local-nav02 .top-menu-wrap {
  position: absolute;
  overflow: hidden;
  width: 100%;
  height: 62px;
  margin-top: 60px;
  z-index: 999;
  background: #fff;
  box-shadow: 0px 4px 10px -2px #0000001A;
}
@media screen and (min-width: 1440px) {
  .local-nav02 .top-menu-wrap {
    margin-top: 77px;
  }
}

.local-nav02 .top-menu-wrap.is-fixed {
  position: fixed;
  margin-top: 0 !important;
  top: 0;
}
.local-nav02 .list-wrap {
  display: flex;
  height: 79px;
}

.local-nav02 .top-menu-list {
  display: flex;
  width: max-content;
  box-sizing: border-box;
}

.local-nav02 .list-wrap .list-item::before {
  position: absolute;
  content: "";
  background-image: -webkit-linear-gradient( top, #999, #999 1px, transparent 1px, transparent 3px );
  background-image: linear-gradient( to bottom, #999, #999 1px, transparent 1px, transparent 3px );
  background-repeat: repeat-y;
  background-position: center;
  background-size: 1px 4px;
  box-sizing: border-box;
  height: 44px;
  width: 1px;
  top: 13px;
}

.local-nav02 .list-wrap .list-item.top-cat {
  background-image: none;
  border-right: 1px solid #cfcfca;
  z-index: 999;
  position: relative;
  background: #fff;
}

.local-nav02 .list-wrap .list-item:nth-of-type(-n+1)::before {
  background-image: none;
}


.local-nav02 .list-wrap .list-item.current a span {
  color: #e60012;
}

.local-nav02 .list-wrap .list-item.current::after {
  content: "";
  display: block;
  position: absolute;
  width: calc(100% - (18px * 2));
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  border-bottom: 4px solid #E60012;
}

.local-nav02 .list-wrap .list-item a {
  display: flex;
  align-items: center;
  flex-flow: column;
  height: 100%;
  color: #2F2F2F;
  padding: 0 18px;
}

.local-nav02 .top-menu-list:last-child {
  background-image: none;
}

.local-nav02 .list-wrap .list-item a span {
  position: relative;
  left: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  font-size: 12px;
  line-height: 1.45em;
  font-weight: 700;
  white-space: nowrap;
}

.local-nav02 .list-wrap .list-item.top-cat a span {
  width: max-content;
  font-size: 14px;
}

.local-nav02 .list-wrap .list-item a {
  padding: 0 18px;
}

.no-touchevents .local-nav02 .list-wrap .list-item a {
  transition: color 0.15s linear;
}

.no-touchevents .local-nav02 .list-wrap .list-item a:hover {
  color: #e60012;
}

.local-nav02 .list-arrow--right,
.local-nav02 .list-arrow--left{
  position: absolute;
  top: 0;
  width: 15px;
  height: 100%;
  height: 56px;
  margin: 3px 2px;
  background: #e60113;
  z-index: 101;
  display: none;
}
.local-nav02 .list-arrow--right {
  visibility: hidden;
  right: 0;
  box-shadow: -10px 0 20px 25px #fff;
}
.local-nav02 .list-arrow--left{
  left: 0;
  box-shadow: 10px 0 20px 25px #fff;
}
.local-nav02 .list-arrow--right a::after,
.local-nav02 .list-arrow--left a::after {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}
.local-nav02 .list-arrow--right a::after {
  background: url(/support/common/v2/img/arrow/right-stroke-white.svg) 50% 50% no-repeat;
  background-size: 15px;
}
.local-nav02 .list-arrow--left a::after {
  background: url(/support/common/v2/img/arrow/left-stroke-white.svg) 50% 50% no-repeat;
  background-size: 15px;
}
.local-nav02 .list-arrow-btn--right,
.local-nav02 .list-arrow-btn--left {
  /* display: block;
  height: 100%; */
}
.local-nav02 .list-wrap .list-item.top-cat:first-child a span::before {
  content: "Nintendo\a0Switch\30B5\30DD\30FC\30C8";
  display: block;
  padding-bottom: 3px;
  font-size: 11px;
  color:#83837F;
  line-height: 1;
  
}
@media all and (max-width: 759px) {
  .local-nav02 .list-wrap .list-item.top-cat:first-child a span.list-title {
    display: none;
  }
}


@media all and (min-width: 1200px) {
  .local-nav02 .top-menu-wrap {
    width: 100%;
  }
}

@media all and (max-width: 1199px) {
  .local-nav02 .list-wrap .list-item.current::after {
    width: calc(100% - (10px * 2));
  }
  
  .local-nav02 .list-arrow--right,
  .local-nav02 .list-arrow--left {
    visibility: hidden !important;
  }
}

@media all and (max-width: 1149px) {
  .local-nav02 .list-wrap .list-item a {
    padding: 0 10px;
  }
  
  .local-nav02 .list-wrap .list-item a span {
    font-size: 11px;
  }
}

@media all and (max-width: 979px) {
  .local-nav02 .top-menu-list {
    overflow-x: auto;
    box-sizing: border-box;
    font-size: 0;
    display: flex;
    align-items: center;
    width: max-content;
  }

  .local-nav02 .list-wrap .list-item {
    position: relative;
    vertical-align: top;
    box-sizing: border-box;
    flex-grow: 0;
    flex-shrink: 1;
  }
}
@media all and (min-width: 760px) {
  .local-nav02 .list-wrap .list-item {
    display: block;
    height: 62px;
    width: auto;
    position: relative;
    box-sizing: border-box;
  }
}

@media all and (max-width: 759px) {
  .local-nav02 .list-arrow--right,
  .local-nav02 .list-arrow--left {
    height: 43px;
  }
  .local-nav02 .top-menu-wrap {
    height: 49px;
  }
  .local-nav02 .top-menu {
    height: 66px;
  }
  .local-nav02 .list-wrap .list-item {
    height: 49px;
  }
  .local-nav02 .list-wrap .list-item a {
    padding: 0 13px;
  }
  .local-nav02 .list-wrap .list-item a span {
    font-size: 9px;
  }
  .local-nav02 .list-wrap .list-item::before {
    height: 100%;
    top: 0;
  }
  .local-nav02 .list-wrap .list-item.top-cat a span {
    font-size: 9px;
  }
  .local-nav02 .list-wrap .list-item.top-cat:first-child a span::before {
    content: none;
  }
  .local-nav02 .list-wrap .list-item.current::after {
    width: calc(100% - (13px * 2));
  }
}

