main {
    margin-top: 214px;
}
.login-gnav .icon {
    width: 28px;
    height: 28px;
    margin-right: 12px;
    background: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    position: relative;
}
.login-gnav .icon svg {
    fill: #004387;
    width: 25px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.login-gnav a:hover .icon svg {
    fill: #006ad2;
}
.login-gnav .text {
    position: absolute;
    top: 0px;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-left: 30px;
}
.login-gnav .main-text {
    font-size: 14px;
    padding-top: 3px !important;
}
.login-gnav .sub-text {
    font-size: 9px;
}
.mypage_btn_sp {
    display: none;
}
@media screen and (max-width:1100px){
    header .upr nav {
        display: flex;
        justify-content: end;
    }
    .sitemap-gnav span,
    .faq-gnav span {
        white-space: pre;
    }
}

/* タブレット */
@media screen and (max-width:1024px){
    main {
        margin-top: 100px;
    }
    .mypage_btn_sp {
        display: flex;
        justify-content: space-between;
        align-items: center;
        width:90%;
    }
    .login-gnav{
        width: 198px;
        height: 42px;
        background: #004387;
        border-radius: 100px;
        margin-left: 0px;
        padding-top: 5px;
    }
    .login-gnav:hover{
        background: #006ad2;
    }
    .login-gnav a{
        color: #fff;
    }
    .login-gnav .icon{
        margin: 3px 0 0 35px;
    }
    .login-gnav .icon svg {
        padding-bottom: 0;
        padding-right: 1px;
    }
    .login-gnav .text {
        top: 32px;
        margin-left: 35px;
    }
    .login-gnav .main-text {
        padding-top: 0px !important;
    }
    .login-gnav .sub-text {
        margin-top: -5px;
    }
}
@media screen and (max-width:640px){
    .mypage_btn_sp {
        width:85%;
    }
}
@media screen and (max-width:520px){
    .login-gnav .icon {
        margin: 2px 0 0 30px;
    }
    .login-gnav .text {
        top: 30px;
        margin-left: 30px;
    }
}
@media screen and (max-width:510px){
    header .upr {
        padding: 28px 5px;
    }
    .mypage_btn_sp {
        max-width: 80%;
    }
    .login-gnav{
        padding-top: 10px;
        margin-left: 5px;
    }
    .login-gnav .icon {
        margin: 3px 0 0 30px;
        top: -5px;
    }
    .login-gnav .text {
        top: 34px;
    }
    .login-gnav .main-text {
        font-size: 13px;
    }
    .login-gnav .sub-text {
        font-size: 9px;
    }
}

@media screen and (max-width:488px){
    .login-gnav .icon {
        margin: 2px 0 0 28px;
    }
    .login-gnav .text {
        top: 33px;
        margin-left: 28px;
    }
}

@media screen and (max-width:480px){
    .login-gnav .icon {
        margin: 3px 0 0 20px;
    }
    .login-gnav .text {
        margin-left: 20px;
    }
}

@media screen and (max-width:430px){
    .login-gnav .icon {
        margin: 3px 0 0 15px;
    }
    .login-gnav .text {
        margin-left: 15px;
    }
}

@media screen and (max-width:448px){

    .login-gnav .text {
        top: 31px;
    }
}

@media screen and (max-width:400px){
    header .upr {
        padding: 31px 5px;
    }
    .mypage_btn_sp {
        max-width: 78%;
    }
    .login-gnav{
        padding-top: 7px;
        height: 40px;
    }
    .login-gnav .icon {
        width: 20px;
        height: 20px;
        margin: 3px 0 0 10px;
        top: 0px;
    }
    .login-gnav .icon svg {
        width: 20px;
        padding-left: 1px;
    }
    .login-gnav .text {
        margin-left: -3px;
        top: 34px;
    }
    .login-gnav .main-text {
        font-size: 12px;
    }
}

@media screen and (max-width:374px){
    .login-gnav .icon {
        margin: 3px 0 0 15px;
    }
    .login-gnav .text {
        margin-left: 5px;
    }
}

@media screen and (max-width:360px){
    .mypage_btn_sp {
        max-width: 74%;
    }
    .login-gnav{
        width: 150px;
    }
    .login-gnav .icon {
        margin: 3px 0 0 10px;
        top: 0px;
    }
    .login-gnav .text {
        margin-left: 0px;
        top: 36px;
    }
    .login-gnav .main-text {
        font-size: 11px;
    }
    .login-gnav .sub-text {
        font-size: 7px;
    }
}

@media screen and (max-width:340px){
    .login-gnav .icon {
        margin: 3px 0 0 6px;
    }
    .login-gnav .text {
        margin-left: -5px;
    }
}

@media screen and (max-width:319px){
    .login-gnav .icon {
        margin: 3px 0 0 3px;
    }
    .login-gnav .text {
        margin-left: -11px;
    }
}
