@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;
}

/* ============================

  local fixed nav

============================ */
.is-local-menu-opened{
  overflow: hidden;
}
.top-menu{
  position: relative;
  background: rgba(235,235,235,0.95);
}
.top-menu-wrap{
  position: relative;
}
.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;
}

.top-menu-list .list-item a{
  height: 46px;
  position: relative;
  display: block;
  padding: 10px 5px;
  box-sizing: border-box;
  text-align: center;
}
.top-menu-list .list-item a span{
  display: block;
  font-size: 12px;
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}

.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 .top-menu-list .list-item a{
  transition: color 0.15s linear;
}
.no-touchevents .f-menu.toggle-memu li a{
  transition: color 0.15s linear;
}
.no-touchevents .top-menu-list .list-item a:hover{
  color: #e60012
}
.no-touchevents .f-menu.toggle-memu li a:hover{
  color: #e60012
}


@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{
    border-bottom: 1px solid #ccc;
  }
  .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;
  }
  .top-menu-list .list-item {
    position: relative;
    width: 33%;
    box-sizing: border-box;
  }
  .top-menu-list--8 .list-item{
    width: 12.5%;
  }
  .top-menu-list .list-item a::before{
    content: "";
    position: absolute;
    left: 0;
    top: 5px;
    bottom: 5px;
    width: 1px;
    background: #CCC;
  }
  .top-menu-list .list-item:first-child  a::before{
    display: none;
  }
  .top-menu-list .list-item.current a {
    color: #555;
}

  .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;
  }

  .toggle-memu_inner {
    max-width: 980px;
    margin: 0 auto;
    padding: 0px 20px 30px 20px;
  }
  .f-menu.toggle-memu{
    padding-top: 131px;
  }
  .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){
  .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;
  }
  .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;
  }
  .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;
  }
  .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;
  }
  .fixed-local-nav__toggle-btn a{
    display: block;
    background: #e60012;
    width: 38px;
    height: 46px;
    position: relative;
  }
  .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;
  }
  .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;
  }
  .top-menu-wrap{
    position: relative;
    padding-right: 38px;
    border-bottom: 1px solid #ccc;
    overflow: hidden;
    height: 46px;
  }
  .top-menu{
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    height: 66px;
  }
  .top-menu-list{
    overflow-x: auto;
    box-sizing: border-box;
    font-size: 0;
    display: flex;
    height: 46px;
    align-items: center;
    justify-content: center;
  }
  .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;
  }
  .top-menu-list--4 {
    width: calc((120px * 4));
  }
  .top-menu-list--5 {
    width: calc((120px * 5));
  }
  .top-menu-list--6 {
    width: calc((120px * 6));
  }
  .top-menu-list--7 {
    width: calc((120px * 7));
  }
  .top-menu-list--8 {
    width: calc((120px * 8));
  }
  .top-menu-list--9 {
    width: calc((120px * 9));
  }
  .top-menu-list--10 {
    width: calc((120px * 10));
  }
  .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;
  }
  .top-menu-list .list-item:last-child{
    border: none;
  }
  .top-menu-list--4 .list-item,
  .top-menu-list--5 .list-item,
  .top-menu-list--6 .list-item,
  .top-menu-list--7 .list-item,
  .top-menu-list--8 .list-item,
  .top-menu-list--9 .list-item,
  .top-menu-list--10 .list-item{
    width: 120px;
  }

  .f-menu.toggle-memu{
    padding-top: 161px;
  }
  .is-gheader-fixed .f-menu.toggle-memu{
    padding-top: 115px;
  }
  .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;
  }


}
