.login_type_a {
    text-align: center;
    background-image: url("https://2019.images.forbesjapan.media/public/user/images/stripe.jpg");
    background-repeat: repeat;
    background-size: 8px auto;
    padding: 5px;
    position: relative;
    border-radius: 6px;
    -webkit-border-radius: 6px;
    margin: -25px 20px 0;
}
.login_type_a_inner {
    background-color: #ffffff;
    padding: 26px 24px 26px;
}
.login_type_a strong {
    display: block;
    font-size: 19px;
    font-weight: bold;
    line-height: 25px;
    margin: 0 0 20px;
}
.login_type_a .btn_login {
    background:#212531;
    background: linear-gradient(176deg, #546aa3 50%, #3a57a3 50%);
    display:inline-block;
    width: 250px;
    padding: 13px 0;
    font-size:15px;
    text-align:center;
    color:#ffffff;
    font-weight:bold;
    margin: 0 16px;
    border-radius: 2px;
    -webkit-border-radius: 2px;
}
.login_type_a a span {
    position: relative;
    padding-right: 25px;
    background: url(https://2019.images.forbesjapan.media/public/user/images/icon_arrow.png) no-repeat right 40%;
    background-size: 16px auto;
}
.login_type_a .input-box {
    margin: 0 0 20px;
}
.login_type_a .input-box .inner {
    display: flex;
    flex-wrap: wrap;
}
.login_type_a .input-01 {
    background-color: #f2f2f2;
    color: #888888;
    font-size: 14px;
    padding: 8px 15px;
    width: 75%;
    border:1px solid #dbdbdb;
}
.login_type_a .input-02 {
    background:#212531;
    background: linear-gradient(168deg, #e37b6e 50%, #e35c4b 50%);
    padding: 12px 0;
    text-align:center;
    color:#ffffff;
    font-weight:bold;
    border: medium none;
    font-size: 14px;
    font-weight: bold;
    width: 25%;
}
.login_type_b {
    text-align: center;
    border: 2px solid #cacaca;
    border-radius: 7px;
}
.login_type_b strong {
    font-size: 16px;
    display: block;
    border-bottom: 2px solid #ebebeb;
    padding: 14px 0 12px;
}
.login_type_b .clearfix {
    padding: 18px 24px;
}
.login_type_b_register {
    float: left;
    width: 254px;
}
.login_type_b_register p {
    font-size: 13px;
    margin: 18px 0 0!important;
}
.login_type_b_register p a {
    text-decoration: underline!important;
    color: #000!important;
}
.login_type_b_register .input-01 {
    background-color: #f2f2f2;
    color: #888888;
    font-size: 14px;
    padding: 8px 10px;
    width: 100%;
    border:1px solid #dbdbdb;
    margin: 10px 0;
}
.login_type_b_register .input-02 {
    background:#212531;
    background: linear-gradient(176deg, #e37b6e 50%, #e35c4b 50%);
    padding: 10px 0;
    text-align:center;
    color:#ffffff;
    font-weight:bold;
    border: medium none;
    font-size: 14px;
    font-weight: bold;
    width: 100%;
}
.login_type_b_gift {
    float: right;
    width: 304px;
}
.login_type_b_gift b {
    display: block;
    position: relative;
    font-size: 17px;
    margin: 0 0 13px;
}
.login_type_b_gift b:before {
    height:7px;
    content: "";
    width: 100%;
    background: #f7f7f7;
    font-size:17px;
    position: absolute;
    left: 0;
    top:4px;
}
.login_type_b_gift b span {
    position: relative;
    z-index: 1;
}
.login_type_b_gift_inner {
    text-align: center;
}
.login_type_b_gift_inner > div {
    display: inline-block;
    font-size: 10px;
    line-height: 15px;
    font-weight: bold;
    width: 92px;
}
.login_type_b_gift_inner span {
    width: 68px;
    height: 68px;
    display: inline-block;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    background-color: #efefef;
    margin: 0 0 2px;
}
.login_type_b_gift_inner .gift_01 span {
    background-image: url("https://2019.images.forbesjapan.media/public/user/images/icon_ gift_01.png");
    background-size: 33px auto;
    background-position: center;
    background-repeat: no-repeat;
}
.login_type_b_gift_inner .gift_02 span {
    background-image: url("https://2019.images.forbesjapan.media/public/user/images/icon_ gift_02.png");
    background-size: 33px auto;
    background-position: center;
    background-repeat: no-repeat;
}
.login_type_b_gift_inner .gift_03 span {
    background-image: url("https://2019.images.forbesjapan.media/public/user/images/icon_ gift_03.png");
    background-size: 33px auto;
    background-position: center;
    background-repeat: no-repeat;
}
.login_type_b_gift_inner .gift_02 {
    margin: 0 8px;
}
.login_type_c {
    text-align: center;
    padding-bottom: 170px;
}
.login_type_c .btn_register {
    background:#212531;
    background: linear-gradient(176deg, #e37b6e 50%, #e35c4b 50%);
    display:inline-block;
    width: 250px;
    padding: 18px 0;
    font-size:16px;
    text-align:center;
    color:#ffffff;
    font-weight:bold;
    margin: 0 16px;
    border-radius: 3px;
}
.login_type_c .btn_login {
    background:#212531;
    background: linear-gradient(176deg, #546aa3 50%, #3a57a3 50%);
    display:inline-block;
    width: 250px;
    padding: 18px 0;
    font-size:16px;
    text-align:center;
    color:#ffffff;
    font-weight:bold;
    margin: 0 16px;
    border-radius: 3px;
}
.login_type_c a span {
    position: relative;
    padding-right: 16px;
}
.login_type_c a span::before{
    border-right: 2px solid #fff;
    border-top: 2px solid #fff;
    content: "";
    height: 10px;
    position: absolute;
    right: 0;
    top: 3px;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    width: 10px;
}
.article-header .article-topper .article-trail {
    position: relative;
}
.header_sns_icons {
    /*position: relative;*/
}
.popup_login {
    background: #fff;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    position: fixed;
    box-sizing: border-box;
    border: 1px solid #ddd;
    min-width: 125px;
    line-height: 1;
    /*padding: 10px 6px 4px;*/
    transition: all .4s;
    -webkit-transition: all .4s;
    opacity: 0;
    z-index: -1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    /* box-shadow */
    box-shadow:0px 6px 14px -5px #666;
    -moz-box-shadow:0px 6px 14px -5px #666;
    -webkit-box-shadow:0px 6px 14px -5px #666;
}
.login_form {
    padding: 5px 9px 6px;
}
.popup_login.view {
    opacity: 1;
    z-index: 300;
}
.popup_login p {
    font-size: 13px;
    margin: 0 0 6px;
}
.popup_login .link {
    text-align: center;
}
.popup_login .link a {
    /*border-bottom: 1px solid;*/
    font-size: 10px;
    color: #333;
}
.header_sns_icons .check span {
    color: #333;
    font-size: 12px;
}
.header_sns_icons .check span #remember {
    margin: 0 6px 0 0;
    vertical-align: text-bottom;
}
.popup_login p.check {
    text-align: center;
    color: #333;
    font-size: 15px 0;
}
.header_sns_icons .popup_login a {
    background: none;
    border-radius: 0;
    display: inline-block;
    font-size: 14px;
    height: auto;
    line-height: 1.5;
    text-align: center;
    transition: all 0.3s ease 0s;
    vertical-align: middle;
    width: auto;
    color: #333;
}
.popup_login input[type="mail"],
.popup_login input[type="password"] {
    box-shadow: none;
    box-sizing: border-box;
    display: block;
    padding: 10px;
    width: 100%;
    background: #fff none repeat scroll 0 0;
    border: 1px solid #c8c8c8;
    font-size: 16px;
    line-height: 1.3;
    padding: 8px;
    min-width: 240px;
}
.popup_login .login-form > div {
    margin: 0 0 16px;
}
.popup_login .login-form > div.single_btn {
    margin: 14px 0;
}
.popup_login input[type="submit"] {
    background: #333 none repeat scroll 0 0;
    border: medium none;
    box-sizing: border-box;
    color: #fff;
    display: block;
    font-size: 16px;
    margin: 10px auto 0;
    max-width: 330px;
    padding: 9px 10px;
    text-align: center;
    vertical-align: middle;
    width: 80%;
    line-height: 1.3;
    border-radius: 4px;
}
.popup_login .single_btn a {
    background: #3a57a3 none repeat scroll 0 0;
    border: medium none;
    box-sizing: border-box;
    color: #fff;
    display: block;
    font-size: 16px;
    margin: 10px auto 0;
    max-width: 330px;
    padding: 9px 10px;
    text-align: center;
    vertical-align: middle;
    width: 80%;
    line-height: 1.3;
    border-radius: 4px;
}
.popup_close {
    display: block;
    height: 30px;
    position: absolute;
    right: -32px;
    top: -32px;
    transition: transform 0.25s ease-in-out 0s;
    width: 30px;
    cursor: pointer;
}
.popup_close:before {
    content: "";
    position: absolute;
    display: block;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 28px;
    height: 0;
    border-top: 1px solid #fff;
    transform: rotate(45deg);
    transform-origin: center;
}
.popup_close:after {
    content: "";
    position: absolute;
    display: block;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 28px;
    height: 0;
    border-top: 1px solid #fff;
    transform: rotate(-45deg);
    transform-origin: center;
}
.popup_login ul li {
    border-bottom: 1px solid #ccc;
    margin: 0 0 6px;
    padding: 0 7px 6px;
}
.popup_login ul li a:hover {
    text-decoration: underline;
}
.popup_login ul li:last-child {
    border:none;
    padding-bottom: 0;
}
.popup_login h4 {
    font-size: 14px;
    /*font-weight: bold;*/
    margin: 0 0 12px;
    text-align: center;
}
.popup_login h3 {
    font-size: 16px;
    font-weight: bold;
    margin: 0 0 16px;
    text-align: center;
}
.popup_login .signup {
    text-align: center;
    font-size: 12px;
    margin: 0 0 20px;
}
.popup_login .signup a {
    font-size: 12px;
    text-decoration: underline;
    vertical-align: inherit;
}
.archive_button a {
    background: #888 url("https://2019.images.forbesjapan.media/public/user/images/clip.png") no-repeat scroll 5px 2px;
    background-size: 12px auto;
    border: 1px solid #888;
    border-radius: 3px;
    box-sizing: border-box;
    color: #fff;
    display: inline-block;
    font-size: 11px;
    font-weight: 600;
    padding: 4px 5px 3px 20px;
    vertical-align: top;
}
.archive_button_done {
    background: #fff url("https://2019.images.forbesjapan.media/public/user/images/clip_gray.png") no-repeat scroll 5px 2px;
    background-size: 12px auto;
    border: 1px solid #888;
    border-radius: 3px;
    box-sizing: border-box;
    color: #888;
    display: inline-block;
    font-size: 11px;
    font-weight: 600;
    padding: 4px 5px 3px 20px;
    vertical-align: top;
    height: 20.5px;
}
.archive_button_done a {
    color: #888;
}
.follow_button a {
    background: #fff none repeat scroll 0 0;
    border: 1px solid #aaa;
    color: #666!important;
    display: inline-block;
    font-size: 15px;
    font-weight: 400;
    margin: 0;
    min-height: 30px;
    padding: 4px 13px 3px 13px;
    position: relative;
}
.contrib-author-container {
    position: relative;
}
.contrib-author-container .follow_button a,
.contrib-author-container .follow_button_done a {
    font-size: 11px;
    min-height: inherit;
    padding: 0;
    position: absolute;
    right: -6px;
    top: 2px;
    background: transparent;
    border: none;
    font-weight: bold;
}
.contrib-author-container .follow_button a img,
.contrib-author-container .follow_button_done a img {
    height: 18px;
    width: auto;
}
.contrib-author-container .follow_button a::before {
    display: none;
}
.contrib-author-container .follow_button_done a::before {
    display: none;
}
.follow_button a:before {
    content: "＋";
}
.follow_button_done a {
    background: #aaa none repeat scroll 0 0;
    border: 1px solid #aaa;
    color: #fff!important;
    display: inline-block;
    font-size: 15px;
    margin: 0;
    min-height: 30px;
    padding: 4px 13px 3px;
}
.follow_button_done a:before {
    content: "";
    display: inline-block;
    width: 15px;
    height: 16px;
    background: url(https://2019.images.forbesjapan.media/public/user/images/check.png) no-repeat center;
    background-size: 15px auto;
    margin-right: 5px;
    vertical-align: text-top;
}
.follow_button a:hover,
.follow_button_done a:hover {
    text-decoration: none!important;
    opacity: .7;
}

/* -----------------------------------
            logins_wall
-----------------------------------*/


/* logins_wall common */

.logins_wall_a, .logins_wall_b {
    border: 2px #333333 solid;
    background: #fff;
}
.logins_wall_a strong, .logins_wall_b strong, .logins_wall_c strong {
    display: block;
    text-align: center;
    font-size: 20px;
    font-weight: bold;
}
.logins_wall_a>strong:nth-of-type(1) {
    margin: 36px auto 22px;
}
.logins_wall_b>strong:nth-of-type(1) {
    margin: 30px auto 18px;
}
.logins_wall_b .mb, .logins_wall_c .mb {
    display: block;
    font-size: 0.7rem;
    font-weight: 600;
    color: #333333;
    text-align: center;
    text-decoration: underline;
}
.logins_wall_gift {
    background: #f9f9f9;
    display: block;
}
.logins_wall_gift strong {
    padding: 25px 0;
}
.logins_wall_gift ul {
    width: 80%;
    min-width: 500px;
    margin: 0 auto;
    padding-bottom: 16px;
}
.logins_wall_gift ul li {
    float: left;
    width: 24%;
    margin-right: calc(4% / 3);
    min-width: 70px;
    font-size: 0.7rem;
    font-weight: 600;
    line-height: 170%;
    color: #333333;
    text-align: center;
    padding: 0 0 0;
    list-style: none!important;
    margin:0!important;
    font-family: "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック","Lucida Sans Unicode",Arial,Verdana,sans-serif,"メイリオ",Meiryo,Osaka;
}
.logins_wall_gift ul li:last-child {
   /* float: right;*/
    margin-right: 0;
}
.logins_wall_gift ul li span:before {
    content: '';
    display: block;
    border:1px solid #dddddd;
    height: 65px;
    width: 65px;
    border-radius: 50%;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    margin:0 auto 20px;
    background: url(/public/user/images/ic01.png) no-repeat center center/30px 24px #fff;
}
.logins_wall_gift ul li:nth-of-type(2) span:before {background: url(https://2019.images.forbesjapan.media/public/user/images/ic02.png) no-repeat center center/30px 23px #fff;}
.logins_wall_gift ul li:nth-of-type(3) span:before {background: url(https://2019.images.forbesjapan.media/public/user/images/ic03.png) no-repeat center 15px/22px 30px #fff;}
.logins_wall_gift ul li:nth-of-type(4) span:before {background: url(https://2019.images.forbesjapan.media/public/user/images/ic04.png) no-repeat center center/38px 24px #fff;}
.logins_wall .sns a {
    cursor: pointer;
    display: block;
    float: left;
    height: 38px;
    line-height: 38px;
    margin-right: 2%;
    text-align: center;
    width: 49%;
}
.logins_wall .sns a:last-child {
    margin-right: 0
}
.logins_wall .icon_google {
    background: #f34a38;
    position: relative;
}
.logins_wall .icon_google svg {
    position: absolute;
    top: 25%;
    left: 25%;
}
.logins_wall .icon_facebook {
    background: #385c8e;
}
.logins_wall .icon_facebook svg {
    margin-left: -1px;
}

/* logins_wall_a */

.logins_wall_a_btn {
    width: 67%;
    margin: 0 auto 28px;
}
.logins_wall_a_btn a {
    float: left;
    height: 46px;
    line-height: 46px;
    text-align: center;
    width: 35%;
    min-width: 210px;
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    padding: 0 30px;
    background-image: -moz-linear-gradient( 94deg, rgb(58, 87, 163) 50%, rgb(84, 106, 163) 50%);
    background-image: -webkit-linear-gradient( 94deg, rgb(58, 87, 163) 50%, rgb(84, 106, 163) 50%);
    background-image: -ms-linear-gradient( 94deg, rgb(58, 87, 163) 50%, rgb(84, 106, 163) 50%);
}
.logins_wall_a_btn a:last-child {
    float: right;
    margin-right: 0;
    background-image: -moz-linear-gradient( 94deg, rgb(227, 92, 75) 50%, rgb(227, 123, 110) 50%);
    background-image: -webkit-linear-gradient( 94deg, rgb(227, 92, 75) 50%, rgb(227, 123, 110) 50%);
    background-image: -ms-linear-gradient( 94deg, rgb(227, 92, 75) 50%, rgb(227, 123, 110) 50%);
}

/* logins_wall_b */

.logins_wall_b_btn {
    margin: 25px 5% 35px;
    position: relative;
}
.logins_wall_b_btn i {
    content: "";
    height: 100%;
    left: 50%;
    margin-left: -0.5px;
    position: absolute;
    top: 20%;
    width: 1px;
    background: #ccc;
}
.logins_wall_b_btn .signup {
    float: left;
    width: 48%;
    min-width: 270px;
    font-size: 0.9rem;
    font-weight: 600;
    color: #333333;
    text-align: center;
}
.logins_wall_b_btn .sns {
    float: right;
    width: 48%;
    min-width: 270px;
    font-size: 0.9rem;
    font-weight: 600;
    color: #333333;
    text-align: center;
    padding-top: 2px;
}
.logins_wall_b_btn .signup p {
    margin: 0 0 10px;
}
.logins_wall_b .input-01, .logins_wall_c .input-01 {
    float: left;
    border: 1px solid #dbdddf;
    font-size: 14px;
    width: 74%;
    display: block;
    height: 38px;
    line-height: 35px;
    padding-left:10px;
}
.logins_wall_b .input-02, .logins_wall_c .input-02 {
    cursor: pointer;
    display: block;
    width: 21%;
    float: left;
    font-size: 14px;
    font-weight: normal;
    width: 27%;
}
.logins_wall_b .black, .logins_wall_c .black {
    background: linear-gradient(176deg, #444444 50%, #2a2a2a 50%) repeat scroll 0 0;
    color: #fff;
}
.logins_wall_b input[type="submit"], .logins_wall_c input[type="submit"] {
    -webkit-appearance: none;
    border-radius: 0;
    border:none 0;
}
.logins_wall_b .input-box .inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: nowrap;
    flex: none;
    width: 100%;
}
.logins_wall_b_btn .sns p {
    margin: 0 0 8px;
}

/* logins_wall_c */

.logins_wall_c {
    background: #eeeeee;
    text-align: center;
    font-weight: 600;
    margin-top: 30px;
    padding-bottom: 8px;
}
.logins_wall_c>strong {
    margin-top: 28px;
}
.logins_wall_c_ct {
    width: 100%;
    margin: 25px auto 18px;
}
.logins_wall_c_ct strong {
    font-size: 1rem;
    margin-top: 18px;
    display: block;
}
.logins_wall_c_lt>p {
    font-size: 0.8rem;
    margin: 18px auto 8px;
    display: block;
    font-weight: normal;
}
.logins_wall_c .line {
    display: table;
    text-align: center;
    white-space: nowrap;
    padding: 12px 0;
    font-weight: normal;
}
.logins_wall_c .line span {
    background: #fff none repeat scroll 0 0;
    display: inline-block;
    font-size: 0.8rem;
    padding: 0 10px 2px;
}
.logins_wall_c .line:after, .logins_wall_c .line:before {
    content: '';
    display: table-cell;
    width: 50%;
    background: -webkit-linear-gradient(transparent 50%, currentColor 50%, currentColor -webkit-calc(50% + 1px), transparent -webkit-calc(50% + 1px));
    background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(50%, currentColor), color-stop(currentColor calc(50% + 1px)), to(transparent calc(50% + 1px)));
    background: linear-gradient(transparent 50%, currentColor 50%, currentColor calc(50% + 1px), transparent calc(50% + 1px));
    -webkit-background-clip: padding;
    background-clip: padding;
}
.logins_wall_c .line:after {
    border-left: 0.3em solid transparent;
}
.logins_wall_c .line:before {
    border-right: 0.3em solid transparent;
}
.logins_wall_c_lt {
    float: left;
    border: solid 1px #c6c6c6;
    border-radius: 10px;
    width: 46%;
    padding: 0 3%;
    margin-left: 2.7%;
    height: 280px;
    background: #fff;
}
.logins_wall_c_rt {
    float: right;
    border: solid 1px #c6c6c6;
    border-radius: 10px;
    width: 46%;
    margin-right: 2.7%;
    height: 280px;
    background: #fff;
}
.logins_wall_c .input-01 {
    float: left;
    display: block;
    width: 100% !important;
    clear: both;
    margin-bottom: 8px;
}
.logins_wall_c .input-02 {
    float: right;
    clear: both !important;
    width: 100%;
    display: block;
    height: 38px;
    line-height: 35px;
    margin-bottom: 10px;
}
.logins_wall_c .mb {
    font-size: 0.8rem;
    clear: both;
    font-weight: normal;
}
.logins_wall_c_rt ul {
    margin-top: 8px;
}
.logins_wall_c_rt ul li {
    position: relative;
    text-align: left;
    border-top: 1px solid #dfdfdf;
    padding: 19px 10px 16px 32px;
    line-height: 100%;
    font-size: 0.9rem;
    list-style: none!important;
    margin:0!important;
    font-family: "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック","Lucida Sans Unicode",Arial,Verdana,sans-serif,"メイリオ",Meiryo,Osaka;
}
.logins_wall_c_rt ul li:last-child {
    border-bottom: none;
}
.logins_wall_c_rt ul li:before {
    content: "";
    position: absolute;
    background: #333333;
    top: 22px;
    left: 14px;
    margin-top: -0px;
    height: 7px;
    width: 7px;
    border-radius: 50%;
}
.auth-box {
    z-index: 100;
}
.auth-box-margin-fix {
    margin-top: -180px;
}
.logins_wall_b {
    margin-top: -39px;
}
.logins_wall_a {
    margin-top: 15px;
}
#article-page .logins_wall_gift p {
    text-align: center;
    font-size: 14px;
    margin: 0;
    padding-bottom: 16px;
}
#article-page .logins_wall_c_rt p {
    font-size: 0.8rem;
    font-weight: normal;
    margin: 13px 0 0;
    padding-bottom: 4px;
    text-align: center;
}
#article-page .logins_wall_gift p a,
#article-page .logins_wall_c_rt p a{
    color: #333;
    text-decoration:underline;
}
.js-tab {margin-bottom: 14px; font-size: 14px;}
.js-tab > div {float:left;width:50%;background:#fff;color:#333;text-align: center;padding:15px 0 12px;cursor:pointer; border-bottom: 1px solid #ddd; box-sizing: border-box;}
.js-tab > div.active {border-bottom: 1px solid #fff;}
.js-tab_content {display:none;
min-width: 320px;
box-sizing: border-box;
max-width: 360px;
    padding: 4px 15px 16px;}
.js-tab_content.active {display:block;}
.js-tab > div:first-child {
    border-top-left-radius: 10px;
    border-right: 1px solid #ddd;
}
.js-tab > div:last-child {
    border-top-right-radius: 10px;
}
.popup_login .js-tab_content .sns a {
    cursor: pointer;
    display: block;
    float: left;
    height: 38px;
    line-height: 38px;
    margin-right: 2%;
    text-align: center;
    width: 49%;
}
.popup_login .js-tab_content .sns {
    margin-bottom: 0;
}
.popup_login .js-tab_content .sns a:last-child {
    margin-right: 0
}
.popup_login .js-tab_content .icon_google {
    background: #f34a38;
    position: relative;
}
.popup_login .js-tab_content .icon_google svg {
    position: absolute;
    top: 25%;
    left: 25%;
}
.popup_login .js-tab_content .icon_facebook {
    background: #385c8e;
}
.popup_login .js-tab_content .icon_facebook svg {
    margin-left: -1px;
}
.popup_login .line:after, .popup_login .line:before {
    content: '';
    display: table-cell;
    width: 50%;
    background: -webkit-linear-gradient(transparent 50%, currentColor 50%, currentColor -webkit-calc(50% + 1px), transparent -webkit-calc(50% + 1px));
    background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(50%, currentColor), color-stop(currentColor calc(50% + 1px)), to(transparent calc(50% + 1px)));
    background: linear-gradient(transparent 50%, currentColor 50%, currentColor calc(50% + 1px), transparent calc(50% + 1px));
    -webkit-background-clip: padding;
    background-clip: padding;
}
.popup_login .line:after {
    border-left: 0.3em solid transparent;
}
.popup_login .line:before {
    border-right: 0.3em solid transparent;
}
.popup_login .line span {
    background: #fff none repeat scroll 0 0;
    color: #666;
    display: inline-block;
    font-size: 16px;
    padding: 0 11px 0;
}
.popup_login .line {
    display: table;
    text-align: center;
    white-space: nowrap;
    padding: 12px 0 10px;
    font-weight: normal;
    color: #666;
    margin-bottom: 5px!important;
}
.popup_register {
    padding: 5px 0 20px;
}
.popup_register .sns {
    margin-bottom: 8px!important;
}
.popup_register .address_area {
    margin-bottom: 14px;
}
.lipp {
    position: fixed;
}
.lipp .popup_type_login_bg {
    opacity: 1;
    z-index: 200;
}
.popup_type_login_bg {
    background: rgba(0, 0, 0, 0.6) none repeat scroll 0 0;
    display: block;
    height: 100%;
    left: 0;
    opacity: 0;
    position: fixed;
    top: 0;
    /*transition: all 0.2s ease 0s;*/
    width: 100%;
    z-index: -1;
}
.users_area {
    float: right;
    font-size: 13px;
    padding-top: 26px;
}
.users_area .link_signin {
    background: #2f63d2 none repeat scroll 0 0;
    border-radius: 20px;
    color: #fff;
    font-weight: bold;
    margin-left: 9px;
    padding: 4px 10px 3px;
    vertical-align: middle;
}
.users_area .link_login {
    color: #333;
    font-weight: bold;
    vertical-align: middle;
}
.users_area .link_login:hover {
    text-decoration: underline;
}
.users_area .link_signin:hover {
    opacity: .7;
}
.clearfix:after,
.clearfix:before {
    content:" ";
    display:table
}
.clearfix:after {
    clear:both
}


/************************
2018/06/21 追加分（著者フォロー・記事保存用）
************************/
.popup_login_ver2 *:not(i) {
    font-family: "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ＭＳ Ｐゴシック", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif!important;
    -moz-osx-font-smoothing: auto!important;
}
.popup_login_ver2 {
    background: #fff;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    position: fixed;
    box-sizing: border-box;
    border: 1px solid #ddd;
    min-width: 125px;
    line-height: 1;
    transition: all .4s;
    -webkit-transition: all .4s;
    opacity: 0;
    z-index: -1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    box-shadow:0px 6px 14px -5px #666;
    -moz-box-shadow:0px 6px 14px -5px #666;
    -webkit-box-shadow:0px 6px 14px -5px #666;
}
.popup_login_ver2.view {
    opacity: 1;
    z-index: 2001;
}
.popup_login_ver2 p {
    font-size: 13px;
    margin: 0 0 6px;
}
.popup_login_ver2 .link {
    text-align: center;
}
.popup_login_ver2 .link a {
    font-size: 10px;
    color: #333;
}
.popup_login_ver2 p.check {
    text-align: center;
    color: #333;
    font-size: 15px 0;
}
.header_sns_icons .popup_login_ver2 a {
    background: none;
    border-radius: 0;
    display: inline-block;
    font-size: 14px;
    height: auto;
    line-height: 1.5;
    text-align: center;
    transition: all 0.3s ease 0s;
    vertical-align: middle;
    width: auto;
    color: #333;
}
.popup_login_ver2 input[type="mail"],
.popup_login_ver2 input[type="password"] {
    box-shadow: none;
    box-sizing: border-box;
    display: block;
    padding: 10px;
    width: 100%;
    background: #fff none repeat scroll 0 0;
    border: 1px solid #c8c8c8;
    font-size: 14px;
    padding: 8px;
    min-width: 240px;
}
.popup_login_ver2 .login-form > div {
    margin: 0 0 16px;
}
.popup_login_ver2 .login-form > div.single_btn {
    margin: 14px 0;
}
.popup_login_ver2 input {
    -webkit-appearance: none;
    border-radius: 0;
}
.popup_login_ver2 input[type="submit"] {
    background: #333 none repeat scroll 0 0;
    border: medium none;
    box-sizing: border-box;
    color: #fff;
    display: block;
    font-size: 16px;
    margin: 10px auto 0;
    max-width: 330px;
    padding: 9px 10px;
    text-align: center;
    vertical-align: middle;
    width: 80%;
    line-height: 1.3;
    border-radius: 4px;
}
.popup_login_ver2 .single_btn a {
    background: #3a57a3 none repeat scroll 0 0;
    border: medium none;
    box-sizing: border-box;
    color: #fff;
    display: block;
    font-size: 16px;
    margin: 10px auto 0;
    max-width: 330px;
    padding: 9px 10px;
    text-align: center;
    vertical-align: middle;
    width: 80%;
    line-height: 1.3;
    border-radius: 4px;
}
.popup_login_ver2 ul li {
    border-bottom: 1px solid #ccc;
    margin: 0 0 6px;
    padding: 0 7px 6px;
}
.popup_login_ver2 ul li a:hover {
    text-decoration: underline;
}
.popup_login_ver2 ul li:last-child {
    border:none;
    padding-bottom: 0;
}
.popup_login_ver2 h4 {
    font-size: 14px;
    margin: 0 0 12px;
    text-align: center;
}
.popup_login_ver2 h3 {
    font-size: 16px;
    font-weight: bold;
    margin: 0 0 16px;
    text-align: center;
}
.popup_login_ver2 .signup {
    text-align: center;
    font-size: 12px;
    margin: 0 0 20px;
}
.popup_login_ver2 .signup a {
    font-size: 12px;
    text-decoration: underline;
    vertical-align: inherit;
}
.popup_login_ver2 .js-tab_content .sns a {
    cursor: pointer;
    display: block;
    float: left;
    height: 38px;
    line-height: 38px;
    margin-right: 2%;
    text-align: center;
    width: 49%;
}
.popup_login_ver2 .js-tab_content .sns {
    margin-bottom: 0;
}
.popup_login_ver2 .js-tab_content .sns a:last-child {
    margin-right: 0
}
.popup_login_ver2 .js-tab_content .icon_google {
    background: #f34a38;
    position: relative;
}
.popup_login_ver2 .js-tab_content .icon_google svg {
    position: absolute;
    top: 25%;
    left: 25%;
}
.popup_login_ver2 .js-tab_content .icon_facebook {
    background: #385c8e;
}
.popup_login_ver2 .js-tab_content .icon_facebook svg {
    margin-left: -1px;
}
.popup_login_ver2 .line:after, .popup_login_ver2 .line:before {
    content: '';
    display: table-cell;
    width: 50%;
    background: -webkit-linear-gradient(transparent 50%, currentColor 50%, currentColor -webkit-calc(50% + 1px), transparent -webkit-calc(50% + 1px));
    background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(50%, currentColor), color-stop(currentColor calc(50% + 1px)), to(transparent calc(50% + 1px)));
    background: linear-gradient(transparent 50%, currentColor 50%, currentColor calc(50% + 1px), transparent calc(50% + 1px));
    -webkit-background-clip: padding;
    background-clip: padding;
}
.popup_login_ver2 .line:after {
    border-left: 0.3em solid transparent;
}
.popup_login_ver2 .line:before {
    border-right: 0.3em solid transparent;
}
.popup_login_ver2 .line span {
    background: #fff none repeat scroll 0 0;
    color: #666;
    display: inline-block;
    font-size: 16px;
    padding: 0 11px 0;
}
.popup_login_ver2 .line {
    display: table;
    text-align: center;
    white-space: nowrap;
    padding: 12px 0 10px;
    font-weight: normal;
    color: #666;
    margin-bottom: 5px!important;
}


.video_container {
    position: relative;
    padding-bottom: 56.25%; /* 16:9 */
    height: 0;
}
.video_container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}