
#new_header {
    background-color: #fff;
    width: 100%;
}

#new_header .head-wrapper {
    border-bottom: 3px solid #fa0014;
    width: 100%;
    height: 50px;
    overflow: hidden;
}

#new_header .head-wrapper:after {
    content: "";
    display: block;
    clear: both;
}

#new_header .head-wrapper h1 {
    width: 100%;
    margin: 5% 0 3% 3%;
    float: left;
}

#new_header .head-wrapper h1 img {
    width: 280px;
    height: 23px;
}

#new_header .head-wrapper button {
    margin:2%;
    float: right;
}

#new_header .fixd_area {
    background-color: #ffffff;
    width: 100%;
}

#new_header .fixd_area:after {
    content: "";
    display: block;
    clear: both;
}

#new_header .fixd_area .ttlBg{
    position: relative;
    z-index: 10001;
    background-color: #ffffff;
}

#new_header .fixd_area .ttlBg:after {
   content: "";
  display: block;
 clear: both;
}

#new_header .fixd_area h2 {
    width: 34%;
    margin: 7px 3%;
    float: left;
    position: relative;
    z-index: 1;
}

#new_header .fixd_area h2 img {
    width: 100%;
    height: auto;
}

#new_header .fixd_area button {
    margin: 4%;
    float: right;
}

.overFh {
    overflow: hidden;
}

.fixed {
    position: fixed;
    top: 0;
    z-index: 1000;
}

#new_header > div.menuHeight {
    margin-bottom: 20%;
}

.bodyFixed {
    position: fixed;
    top: 12%;
}

.bodyFixed02 {
    position: fixed;
    top: 0;
}

/************************************************************
g navigation
************************************************************/
#gnavi_sp_ul {
  
}
#gnavi_sp_ul > li {
    position: relative;
    border-bottom: #ffffff 1px solid;
    font-size: 12px;
}

#gnavi_sp_ul > li#active {
    background-color:#cb0919;
    color: #ffffff;
}

#gnavi_sp_ul > li#active a {
    color: #ffffff;
    text-decoration: none;
}

#gnavi_sp_ul > li > .toggle_bt {
    position: absolute;
    top: 0px;
    right: 3px;
    width: 44px;
    height: 47px;
    z-index: 100;
}
#gnavi_sp_ul > li > .toggle_bt > span {
    position: relative;
    display: block;
    border-radius: 2px;
}
#gnavi_sp_ul > li > .toggle_bt > span:before {
    width: 44px;
    height: 47px;
    z-index: 100;
    position: absolute;
    content: '{';
    top: 0;
    left: 0;
    width: 100%;
    text-align: center;
    line-height: 2;
    font-size: 22px;
    color: #fa041c;    
}

#gnavi_sp_ul > li#active > .toggle_bt > span:before {
    width: 44px;
    height: 47px;
    z-index: 100;
    position: absolute;
    content: '{';
    top: 0;
    left: 0;
    width: 100%;
    text-align: center;
    line-height: 2;
    font-size: 22px;
    color: #ffffff;    
}

#gnavi_sp_ul > li.open span:before {
    content: '+';
    line-height: 2;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);    
}
#gnavi_sp_ul > li.current_menu .toggle_bt span {
  color: #fff;
}
#gnavi_sp_ul > li > a {
    color: #454545;
    text-decoration: none;
    display: block;
    padding: 17px 10px 17px 17px;
    position: relative;
    letter-spacing: 0.15em;
    font-weight: 500;
    letter-spacing: normal;
}


#gnavi_sp_ul > li > a span {
    display: block;
    line-height: 1.6;
}
#gnavi_sp_ul > li > ul {
  background: #ffffff;
}
#gnavi_sp_ul > li > ul li a,
#gnavi_sp_ul > li#active > ul li a {
    background: none;
    display: block;
    padding: 17px 10px 17px 17px;
    color: #454545;
    text-decoration: none;
}

#gnavi_sp_ul > li > ul li:last-child {
    border: none;
}

#sp_menu_symbol {
    text-align: center;
    padding: 15px 0 20px;
}

#gnavi_sp ol {
    letter-spacing: -.40em;
    padding: 0 3%;
}
#gnavi_sp ol li {
    width: 50%;
}
#gnavi_sp ol li a {
    width: 100%;
    padding: 10px 0;
}
#gnavi_sp ol li:nth-child(2) {
    border-left: 1px solid #fff;
}

#gnavi_sp_ul2 {
    background: #e5e6eb;
    border-bottom: 1px solid #fff;
}

#gnavi_sp_ul2:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}

#gnavi_sp_ul2 li {
    overflow: hidden;
    float: left;
    width: 50%;
    text-align: center;
}
#gnavi_sp_ul2 li a {
    font-size: 10px;
    padding-top: 15px;
    padding-bottom: 15px;
    color: #6d6d6d;
    text-decoration: none;
    display: block;
}

#gnavi_sp_ul2 li:nth-child(1) {
    width: 33%;
}

#gnavi_sp_ul2 li:nth-child(2) {
    width: 33%;
}

#gnavi_sp_ul2 li:nth-child(3) {
    width: 33%;
}

.close_btn{
    margin: 20px 0 0 17px;
    width: 21%;
}

.close_btn a{
    background: #6a6b73;
    width: 100%;
    text-align: center;
    font-size: 12px;
    color: #fff;
    padding: 12px 0;
    line-height: 16px;
    border-radius: 5px;
    display: inline-block;
    text-decoration: none;
}

.close_btn:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}

/************************************************************
g navigation
************************************************************/
#header_r {
    padding-top: 0;
    display: none;
    float: none;
    position: absolute;
    top: 57px;
    left: 0;
    width: 100%;
    /*height: calc(100vh - 57px);*/
    height: 100%;  
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    background: rgb(153, 153, 153);
    z-index: 10000;
}
#header_r h2 {
    width: 50%;
    margin: 10px;
    float: left;
    position: relative;
    z-index: 1;
}
#header_r h2 img {
    width: 100%;
    height: auto;
}
#header_r ul#gnavi {
    margin: 0;
    background: #dddce1;
    display: block;
    padding-top: 1%;
    clear: both;
    font-size: 12px;
}
#header_r ul#gnavi li {
    display: block;
    text-align:left;
    margin-right: 0;
    border-bottom: #fff 1px solid;
}
#header_r ul#gnavi li a {
    color: #000000;
    text-decoration: none;
    padding:4%;
    display: block;
}
#header_r ul#gnavi li a:after {
    content: none;
}
#header_r #sp_close {
    background: #6a6b73;
    text-align: center;
    padding: 15px 0;
}
#header_r #sp_close #sp_close_inner {
    display: inline-block;
}
#sp_menu {
    width: 50px;
    height: 50px;
    float: right;
    text-align: center;
    vertical-align: middle;
    z-index: 1;
}
.menu-trigger,
.menu-trigger span {
    display: inline-block;
    transition: all .4s;
    box-sizing: border-box;
}
.menu-trigger {
    position: relative;
    width: 22px;
    height: 19px;
}
.menu-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #ff0000;
}
.menu-trigger span:nth-of-type(1) {
    top: 0;
}
.menu-trigger span:nth-of-type(2) {
    top: 8px;
}
.menu-trigger span:nth-of-type(3) {
    bottom: 0;
}

/* pt */
.menu-trigger.activeSP span:nth-of-type(1) {
    -webkit-transform: translateY(9px) rotate(-45deg);
    transform: translateY(9px) rotate(-45deg);
    background: #ff0000;    
}
.menu-trigger.activeSP span:nth-of-type(2) {
    left: 50%;
    opacity: 0;
    -webkit-animation: active-menu-bar02 .8s forwards;
    animation: active-menu-bar02 .8s forwards;
}
@-webkit-keyframes active-menu-bar02 {
    100% {
        height: 0;
    }
}
@keyframes active-menu-bar02 {
    100% {
        height: 0;
    }
}
.menu-trigger.activeSP span:nth-of-type(3) {
    -webkit-transform: translateY(-7px) rotate(45deg);
    transform: translateY(-7px) rotate(45deg);
    background: #ff0000;    
}

.menu-trigger.activeSP02 span:nth-of-type(1) {
    -webkit-transform: translateY(9px) rotate(-45deg);
    transform: translateY(9px) rotate(-45deg);
    background: #ffffff;    
}
.menu-trigger.activeSP02 span:nth-of-type(2) {
    left: 50%;
    opacity: 0;
    -webkit-animation: active-menu-bar02 .8s forwards;
    animation: active-menu-bar02 .8s forwards;
}
@-webkit-keyframes active-menu-bar02 {
    100% {
        height: 0;
    }
}
@keyframes active-menu-bar02 {
    100% {
        height: 0;
    }
}
.menu-trigger.activeSP02 span:nth-of-type(3) {
    -webkit-transform: translateY(-7px) rotate(45deg);
    transform: translateY(-7px) rotate(45deg);
    background: #ffffff;    
}

/* close fix */
.sp_close_fix,
.sp_close_fix span {
    display: inline-block;
    transition: all .4s;
    box-sizing: border-box;
}
.sp_close_fix {
    position: relative;
    width: 22px;
    height: 19px;
}
.sp_close_fix span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #fff;
}
.sp_close_fix span:nth-of-type(1) {
    top: 0;
}
.sp_close_fix span:nth-of-type(2) {
    top: 8px;
}
.sp_close_fix span:nth-of-type(3) {
    bottom: 0;
}

.sp_close_fix.activeSP span:nth-of-type(1) {
    -webkit-transform: translateY(9px) rotate(-45deg);
    transform: translateY(9px) rotate(-45deg);
    background: #ff0000;
}
.sp_close_fix.activeSP span:nth-of-type(2) {
    left: 50%;
    opacity: 0;
    -webkit-animation: active-menu-bar02 .8s forwards;
    animation: active-menu-bar02 .8s forwards;
}
@-webkit-keyframes active-menu-bar02 {
    100% {
        height: 0;
    }
}
@keyframes active-menu-bar02 {
    100% {
        height: 0;
    }
}
.sp_close_fix.activeSP span:nth-of-type(3) {
    -webkit-transform: translateY(-7px) rotate(45deg);
    transform: translateY(-7px) rotate(45deg);
    background: #ff0000;    
}

.sp_close_fix.activeSP02 span:nth-of-type(1) {
    -webkit-transform: translateY(9px) rotate(-45deg);
    transform: translateY(9px) rotate(-45deg);
    background: #ffffff;
}
.sp_close_fix.activeSP02 span:nth-of-type(2) {
    left: 50%;
    opacity: 0;
    -webkit-animation: active-menu-bar02 .8s forwards;
    animation: active-menu-bar02 .8s forwards;
}
@-webkit-keyframes active-menu-bar02 {
    100% {
        height: 0;
    }
}
@keyframes active-menu-bar02 {
    100% {
        height: 0;
    }
}
.sp_close_fix.activeSP02 span:nth-of-type(3) {
    -webkit-transform: translateY(-7px) rotate(45deg);
    transform: translateY(-7px) rotate(45deg);
    background: #ffffff;    
}

/* accodion */
.accodionBtnFix {
    position: relative;
    padding-bottom: 15px !important;
    display: block;
    margin:4%;
}

.accodionBtnFix a{
    color: #333;
    position: absolute;
    text-align: left;
    top: 0;
    left: 0;
    text-decoration: none;
}

.accodionBtnFix:before {
    z-index: 100;
    position: absolute;
    top: 0;
    right:0;
    content: '{';
    width: 100%;
    text-align:right;
    font-size: 14px;
    color: #fa041c;
}
    
.accodionActive:before {
    position: absolute;
    top: 0;
    right:0;
    z-index: 100;
    content: '|';
    width: 100%;
    text-align:right;
    font-size: 14px;
    color: #fa041c;
}

.openFix {
    /*margin-top: 20px;*/
    background-color: #ffffff;
}

.openFix p {
    border-bottom: #dcdce0 1px dashed;
}

.openFix p:last-child {
    border-bottom:none;
    /*padding: 13px 0 0 0;*/
}

.openFix p a {
    color: #333;
    text-decoration: none;
    padding:4%;
    display: block;
}

.fixed  #header_r {
    padding-top: 0;
    display: none;
    float: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: calc(100vh);
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    background: rgb(153, 153, 153);
}

.menuBg {
    background-color: #ffffff;
    padding-top: 50px;
}

.subMenu{
    font-size: 10px;
    background-color: #e5e6eb;
    padding: 4% 0;
}

.subMenu p {
    width: 32%;
    display: inline-block;
    text-align: center;
}

.subMenu p a {
    color: #6d6d6d;
}

.gnaviBg {
    overflow: auto;
    height: 100%;
    width: 100%;
}

.fixedHeight {
    margin-top: 10%;
}

.drawer-hamburger {
    height: auto !important;
}

@media screen and (orientation: landscape) {
    #new_header .head-wrapper h1{
        width:100%;
        margin: 2.5% 0 0 3%;
    }

    #new_header .head-wrapper button {
        margin:2% 3% 2% 2%;
    }

    #header_r {
        top: 72px;
        height: calc(100vh - 72px);
    }

    #new_header > div.menuHeight {
        margin-bottom: 12%;
    }
}