/* common */
:root {
	font-size: 62.5%;
}
a {
	color: #00358A;
	text-decoration: underline;
}
a:hover {
	color: #BD274C;
}
a:visited {
	color: #800080;
}
body {
	background-color: #fff;
	color: #474545;
    font-family: 'HiraKakuProN-W3', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro', 'Meiryo', 'メイリオ', 'MS PGothic', 'MS Pゴシック', sans-serif;
	font-size: 1.6em;
	height: 100%;
	line-height: 1.5;
	margin: 0;
	padding: 0;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}
h1,h2,h3,h4,form,p {
	font-size: 100%;
	font-weight: normal;
	margin: 0;
	padding: 0;
}
img {
	border: none;
}
ol,ul,li {
	list-style: none;
	margin: 0;
	padding: 0;
}
.clearfix,#topMain {
	zoom: 1;
}
.clearfix:after,#topMain:after {
	clear: both;
	content: "";
	display: block;
	height: 0;
	overflow: hidden;
	visibility: hidden;
}

/* base */
#topMain {
	padding-bottom: 20px;
}
#naviGoTop {
	position: absolute;
	bottom: 20px;
	right: 20px;
}
.contents {
	box-sizing: content-box;
	margin: 0 auto;
	padding: 0 70px;
	text-align: left;
	width: 960px;
	*width: 1100px;
}
.contents a {
	color: #152666;
	text-decoration: none;
}
.contents a:hover {
	color: #152666;
	text-decoration: underline;
}
.contents table {
	border-collapse: collapse;
}

/* header */
#iphoneopen {
	max-height: 103px;
	text-align: center;
}

/* title */
.contents_title {
	margin: 0 0 25px;
	padding: 8px 13px 9px;
	border-left: 8px solid #680717;
	background: #ece7de;
	color: #680717;
	font-weight: bold;
	font-size: 2.6rem;
}

/* log-in */
#CONTENT {
	width: 960px; 
}
.login, .login * {
	box-sizing: border-box;
}
.login_l {
	float: left;
	vertical-align: top; 
	width: 632px;
}
.login_l .login_title {
	display:flex;
    gap: 0px 3px;
}
.login_title:after {
	content: "";
	display: block;
	clear: both;
}
.login_title_item {
	background: #680717;
	border: 1px solid #680717;
	border-radius: 6px 6px 0 0 / 6px 6px 0 0;
	padding: 9px 0 5px;
	text-align: center;
	width: calc(50% - 5px);
}
.login_title_item._acctnum {
	float: left;
}
.login_title_item._loginid {
	float: left;
}
.login_title_item._qr {
    float: left;
}
.login_title_item span {
	color: #fff;
}
.login_title_item.inactive{
	cursor: pointer;
	border: 1px solid #eaeaea;
	background: #eaeaea;
}
.login_title_item.inactive span{
	color: #474545;
	font-weight: normal;
}
.login_title_item.inactive:hover{
	opacity: .7;
}

/* log-in form */
.login_l .login_error_msg {
	font-weight: bold;
	margin: 0 auto 10px;
	padding-bottom: 0;
	width: 550px;
}
.login_frm {
	background: #ffffff;
	border: solid 2px #680717;
	min-height: 290px;
	padding: 12px 8px 0;
	position: relative;
}
.login_frm.login_frm_acctnum {
	z-index: 100;
}
.login_frm.login_frm_loginid {
	z-index: 0;
}
.login_frm.inactive {
	display: none;;
	z-index: 0;
}
.login_frm .intro {
	font-size: 0.87em; /* 14px */
	margin: 0 auto 10px;
	padding-bottom: 0;
	width: 550px;
	zoom: 1;
}
.login_frm .intro:after {
	clear: both;
	content: "";
	display: block;
	height: 0;
	overflow: hidden;
	visibility: hidden;
}
.login_frm a:active {
	color: #990066;
}
.login_frm a:hover {
	color: #0033CC;
}
.login_frm form {
	margin: 0 auto;
	padding: 0;
	width: 573px;
}
.login_frm img {
	border: none;
	vertical-align: middle;
}
.login_frm #putbox1 {
	width: 4.73em;
}
.login_frm #putbox2 {
	width: 7.5em;
}
.login_frm #putbox3 {
	width: 10.5em;
}
.login_frm #putbox5,
.login_frm #putbox4 {
	width: 23em;
}
.login_frm input[type="text"],.login_frm input[type="password"] {
	border: 1px solid #aaa;
	font-size: 100%;
	padding: 0.3em;
}
.login_frm .login_btn input[type="submit"] {
	-webkit-appearance: button;
}
.login_frm .login_btn input {
	background: #c22112;
	border: 0;
	border-radius: 3px;
	box-sizing: border-box;
	color: #fff;
	cursor: pointer;
	display: inline-block;
	font-family : inherit;
	font-size: 1.25em;
	font-weight: bold;
	padding: 10px 14px;
	position: relative;
	text-align: center;
	text-decoration: none;
	transition: all .5s cubic-bezier(.23, 1, .32, 1);
	width: 36.8%;
}
.login_frm .login_btn input:hover,
.login_frm .login_btn input:focus {
	background: #d46359;
}
.login_frm .rule {
	color: #666;
	font-size: 90%;
}
.login_frm .login_table_wrapper {
	min-height: 176px;
}
.login_frm .login_table {
	border-collapse: separate;
	border-spacing: 5px;
}
.login_frm th,.login_frm td {
	font-weight: normal;/*Android*/
	-webkit-text-size-adjust: 100%;/*iPhone*/
}
.login_frm .tdl {
	font-size: 1.125em; /* 18px */
	padding-left: 3px;
	vertical-align: middle;
	width: 6.5em;
	white-space: nowrap;
}
.login_frm td.tdl + td {
	min-width: 12em;
}
.login_frm .tdr {
	padding-right: 20px;
}
.login_frm .tdRule {
	width: 13em;
}
.login_l .login_frm .decide {
	width: 8em;
}
.showPwUnit label {
	font-size: 90%;
}
.login_frm .login_btn {
	margin: 0 0.3em .8em;
	text-align: center;
}

.login_frm td > [id^=sk] {
	margin-top: 5px;
}

/* advertising */
.login_r {
	float: right;
	margin: 0;
	vertical-align: top;
	width: 310px;
}
.login_r .bnn_b1 {
	line-height: .1;
	margin-top: 39px;
	text-align: right;
}

/* emergency */
.em {
	background: #fdfad5;
	border: 4px solid #c00000;
	margin-bottom: 10px;
	margin-top: 40px;
	padding: 12px;
}
.em .tbl_cel_33 {
	margin: 0;
	padding: 0;
}
.em td {
	background-color: #FDFAD5;
	line-height: 140%;
	padding: 5px;
}
.em td.emmsg {
	color: #603200;
	font-weight: bold;
}
.em th {
	background-color: #8B1A1E;
	color: #FFFFFF;
	font-weight: bold;
	line-height: 120%;
	padding: 5px;
	text-align: left;
}

.login_r .login-support {
	border: 4px solid #8b1a1e;
	margin-top: 40px;
	padding: 12px;
}
.login_r .login-support-link a {
	display: block;
	font-size: 0.87em; /* 14px */
	margin: 10px 0;
	padding-left: 15px;
	position: relative;
}

/* security */
#securityContainer {
	margin-top: 15px;
	padding-bottom: 15px;
	position: relative;
}
.security-left {
	float: left;
	padding-left: 30px;
	padding-top: 18px;
}
.security-right {
	float: left;
}
.verisign_mg0 {
	margin: 0;
	width: 135px;
}
.verisign_pd2 {
	padding: 2px;
	text-align: center; 
}

/* password-attention */
.password-attention {
	margin-top: 15px;
}
.password-attention_text {
	background-color:#fdfad5;
	border:1px solid #c00000;
	color: #CC0000;
	padding:20px;
}
.password-attention_text .f_normal {
	color: #474545;
}
.password-attention_text .caps1 {
	padding-left: 1em;
	text-indent: -1em;
}

/* about log-in */
.login-about {
	padding: 15px 0 0;
}
.login-about .login-link {
	background: #fbf3f3;
}
.login-about .login-link .link-title:nth-of-type(1),
.login-about .login-link .link-item:nth-of-type(1) {
	border-right: 1px solid #ccc;
}
.login-about .login-link .link-item a {
	padding-right: 25px;
}

/* attention */
#h2_attention {
	margin-top: 15px;
}
#h2_attention .login-link {
	background-color: #eeeeee;
}

/* risk */
#RISK {
	margin-top: 15px;
}
#attentionContainer {
	position: relative;
	padding-bottom: 20px;
}
.attentionBody {
	border: 1px solid #cccccc;
	padding: 30px;
}
.attentionBody .link {
	margin-top: 20px;
	text-align: center;
}
.attentionBody .text {
	line-height: 180%;
}
.attentionBody .title {
	font-size: 1.125em; /* 18px */
	margin-bottom: 30px;
	text-align: center;
}

/* links */
.login-link {
	padding: 15px 0;
}
.login-link tr {
	vertical-align: top;
}
.login-link .link-title {
	padding: 5px 30px 8px;
	text-align: center;
}
.login-link .link-title-center {
	padding: 5px 30px 8px;
	text-align: center;
}
.login-link .link-item {
	padding: 0 0 0 20px;
	width: 460px;
}
.login-link .link-item a {
	display: inline-block;
	margin: 10px 0;
	padding-left: 25px;
	*zoom: 1;
}
.iconAttent {
	background: transparent url(../hd2/icon_attention.gif) no-repeat scroll left center;
	padding-left: 25px;
	padding-top: 3px;
	*background-position: left top;
}
#h2_attention .iconAttent {
	background-position: left 2px;
}
#h2_attention [target="_blank"]:after {
	background: transparent url(../hd2/icon_blank.png) no-repeat scroll left center;
	content: " ";
	display: inline-block;
	height: 9px;
	margin-left: 4px;
	width: 12px;
}
.iconLink {
	padding-left: 15px;
	position: relative;
}
.iconBlank img {
	margin-left: 5px;
	vertical-align: middle;
	vertical-align: top\9;
}
.iconBlank {
	line-height: 20px;
	vertical-align: middle;
	vertical-align: top\9;
}
.iconBlank2:after {
	background: transparent url(../hd2/icon_blank.png) no-repeat scroll center center;
	background-size: 12px 9px;
	content: "";
	display: inline-block;
	height: 9px;
	line-height: 15px;
	margin-left: 4px;
	vertical-align: middle;
	width: 12px;
}
.iconLink:before {
	border: 1px solid #152666;
	border-bottom: transparent;
	border-left: transparent;
	content: "";
	display: inline-block;
	height: 6px;
	left: 0;
	margin: -4px 0 0 0;
	position: absolute;
	top: .7em;
	width: 6px;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

/* marketing tag */
.sc_login {
	bottom: 0;
	left: 0;
	position: absolute;
	visibility: hidden;
}

/* collab */
/* ----------------------------
    Header
------------------------------- */
.header-simple.collab .header-simple-inner {
  margin: 0 auto;
  width: 960px;
}
.header-simple.collab .header-simple-inner::after {
  display: block;
  clear: both;
  content: '';
}
.header-simple.collab {
  border-top: 25px solid #680717;
}
.header-simple.collab .header-simple-inner {
  padding-top: 23px;
  padding-bottom: 20px;
}
.header-simple.collab .header-simple-logo {
  font-size: 2em;
}
/* -------------------------- */
#topMain.collab .login_l {
	float: none;
	margin: 0 auto;
}
#topMain.collab .login-about .login-link .link-title:nth-of-type(1),
#topMain.collab .login-about .login-link .link-item:nth-of-type(1) {
	border-right: none;
}
.display_qr{
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-bottom:8px;
    padding-left: 12px;
    padding-right: 12px;

}

.qr-update-button{
    background-color: #c22112; /* 赤色 */  
    color: white; /* 文字色 */  
    border: none; /* ボーダーなし */  
    padding: 8px 16px; /* 上下15px、左右32pxのパディング */  
    text-align: center; /* テキストを中央揃え */  
    text-decoration: none; /* 下線なし */  
    display: inline-block; /* インラインブロック要素 */  
    font-family: inherit;
    font-size: 0.80em;
    margin: 4px 2px; /* マージン */  
    cursor: pointer; /* カーソルをポインタに */  
    border-radius: 8px; /* 角を丸くする */  
    transition: background-color 0.3s; /* 背景色の遷移 */  
}

.qr-update-button:hover {  
    background-color: #a71a24; /* ホバー時の色 */  
}  

.qr_description {  
    margin-left: 0.5em;
    padding-bottom:8px;
    padding-left: 12px;
    padding-right: 12px;

}  

.qr_form{
    display: flex;
}

.qr_description ol { 
    display:list-item; 
    margin: 20px 0;  
    padding-left: 20px; 
}  

.qr_description li {  
    display:list-item;
    list-style-type: decimal;

}  

.qr_description p {
    position: relative;
	left: -30px;
}

.note{
    list-style: none;
    padding-left: 1.5em;

}
.note li{
    text-indent: -1.3em;
    list-style-type:none;
}

.download-link {  
    margin-top: auto;
    background: none;  /* 背景をなしにする */  
    color: #4161ef;    /* リンクの色 */  
    border: none;      /* ボーダーなし */  
    padding: 0;        /* パディングなし */  
    font-size: 16px;   /* フォントサイズ */  
    cursor: pointer;   /* ポインターにする */  
    text-decoration: underline; /* 下線をつける */  
    transition: color 0.3s; /* ホバー時の色変更のスムーズさ */  
}  
  
.download-link:hover {  
    color: #2e4994; /* ホバー時の色 */  
}  
  

  
.badges {  
    display: flex;  
    justify-content:space-between;
    align-items: center; 
    margin: 10px 0;  
}  
  
  
#widget {  
    position: fixed;  
    top: 50%;  
    left: 50%;  
    transform: translate(-50%, -50%);  
    background-color: white;  
    border: 1px solid #ccc;  
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);  
    padding: 20px;  
    z-index: 1000; 
    text-align: center; /* コンテナ内のテキストを中央揃え */ 

}  
  
.hidden {  
    display: none; 
}  
  
#overlay {  
    position: fixed;  
    top: 0;  
    left: 0;  
    width: 100%;  
    height: 100%;  
    background: rgba(0, 0, 0, 0.5);  
    z-index: 999;  
    display: none;  
}  
  
.close-button {  
    margin-top: 10px;  
    background-color: #f44336;  
    color: white;  
    border: none;  
    padding: 10px 20px;  
    font-size: 14px;  
    cursor: pointer;  
    border-radius: 8px; 
    font:inherit;
    font-weight: bold; 
}  
  
.close-button:hover {  
    background-color: #e53935;  
} 

.qr_description span{
    display: inline-block;
    margin-top: 1rem;
}

.app_qr_img{
    display: flex;
}


.app_qr_img li {
    width: 50%;
    text-align: center;
}

.qr_notification{
    font-weight: bold;
    margin: auto ;
    padding-bottom: 0;
    width: 550px;
}