@charset "UTF-8";

/* ==========================================
  フォーム
   ========================================== */

label.error {
  font-size: xx-small;
  color: red;
  font-weight: bold;
  font-size: 14px;
}
label.error:before {
  content: "\f06a";
  font: normal normal normal 14px/1 FontAwesome;
  margin-right: 4px;
  top: 1px;
  left: 1px;
  font-size: 16px;
  display: inline-block;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  text-align: left;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-text-size-adjust: 100%;
}
div.col-md-8 label#loginId-error.error:before,
div.col-md-8 label#password-error.error:before
{
  font-size: inherit;
}
.col-md-1-s {
  position: relative;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px;
}
.acol-md-3-1,
.acol-md-4-1 {
  position: relative;
  min-height: 1px;
  float: left;
}

@media print {
  *,
  *:before,
  *:after {
    color: #000 !important;
    text-shadow: none !important;
    background: transparent !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: "" !important;
  }
  abbr[title]:after {
    content: "" !important;
  }
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: "";
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  .navbar {
    display: none;
  }
  .btn > .caret,
  .dropup > .btn > .caret {
    border-top-color: #000 !important;
  }
  .label {
    border: 1px solid #000;
  }
  .table {
    border-collapse: collapse !important;
  }
  .table td,
  .table th {
    background-color: #fff !important;
  }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #ddd !important;
  }
}

.acol-md-3-1 {
    width: 32.65%;
}

.acol-md-4-1 {
    width: 69%;
}

.input-SFDC-A022{
    height: 48px;
    border: 0px;
    background-color: rgb(255, 255, 255);
    border-radius: 0px;
}

.col-margin-b{
    margin-bottom: 10px;
}

.col-margin-l{
    margin-left: 3.5%;
}

.acol-md-3-1 select,
.acol-md-4-1 select{
   border: 1px solid #ccc;
   border-radius: 4px;
}

@media (max-width: 767px) {
  .form-group-birthdate .row [class='acol-md-4-1'] {
    width: 100%;
  }
  .form-group-birthdate .row [class='acol-md-3-1'] {
    width: 50%;
  }
  .form-group-birthdate .row [class='acol-md-3-1 col-margin-l'] {
    width: 46.5%;
  }
  .col-md-pa {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}
@media (min-width: 768px) {
  .col-md-1-s,
  .col-md-3-0,
  .col-md-4-0,
  .col-md-6-5{
    float: left;
  }
  .col-md-6-5 {
    width: 72%;
  }
  .col-md-4-0 {
    width: 49%;
  }
  .col-md-3-0 {
    width: 25%;
  }
  .col-md-1-s {
    width: 5%;
  }
}

.modal-mypage-diglog {
  position: relative;
  background-color: #fff;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
  border: 1px solid #999;
  border: 1px solid rgba(0, 0, 0, .2);
  border-radius: 6px;
  outline: 0;
  -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, .5);
  box-shadow: 0 3px 9px rgba(0, 0, 0, .5);
  /*
   * Bootstrap v5移行対応: pointer-events: auto を明示
   *
   * Bootstrap v5 では以下の CSS が定義されている:
   *   .modal-dialog  { pointer-events: none; }  ← クリックを透過させる
   *   .modal-content { pointer-events: auto; }  ← ここでクリックを復活させる
   *
   * このプロジェクトでは .modal-content を使わず .modal-mypage-diglog が
   * モーダル本体（.modal-content 相当）として機能しているため、
   * pointer-events が none のままとなり、ボタン等へのクリックが透過して
   * .modal 要素まで届いてしまう。
   * その結果、「閉じる」ボタンや「×」ボタンが機能しなくなるため、
   * .modal-content と同様に pointer-events: auto を明示的に指定する。
   */
  pointer-events: auto;
}
.modal-mypage-title {
  line-height: 1.42857143;
  margin-bottom: 15px;
  font-size: 1.6rem;
}
.modal-mypage-body {
  position: relative;
  padding: 18px 15px 0px;
}
.modal-mypage-footer {
  padding: 10px;
  text-align: right;
}

/* Bootstrap v5ではモーダル(.modal-content)の影がデフォルトで無くなったため、
   Bootstrap v3と同じ薄い黒の影を標準で付与する対応。 */
.modal-content {
  box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
}

@media (min-width: 768px) {
  .modal-dialog {
    max-width: 600px;
    margin: 30px auto;
  }
  .modal-content {
    -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .5);
    box-shadow: 0 5px 15px rgba(0, 0, 0, .5);
  }
  .modal-mypage-diglog {
    -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .5);
    box-shadow: 0 5px 15px rgba(0, 0, 0, .5);
  }
  .modal-sm {
    max-width: 300px;
  }
}

.login-padding {
   padding: 0 10px 15px 10px;
 }

@media (max-width: 767px) {
  .login-padding {
    padding: 0 20px 15px 20px;
  }
}

.textMypage {
    outline: none;
    margin-top: 2px;
    border-color: #107dd8;
}

.p-maypage-margin {
	margin: 0;
}

.form-border-bd {
  border: 1px solid #ccc;
  border-radius: 4px;
}

.form-display-bd {
  display: flex;
}

.inr-scroll {
  height: 315px;
  overflow: auto;
}

@media (max-width: 767px) {
  .inr-scroll {
    height: 135px;
  }
}

/*# sourceMappingURL=bootstrap.css.map */

.mb-25{
  margin-bottom: -25px;
}

@media (min-width: 768px) {
  .a001-sm-4-0 {
    width: 100%;
  }
  .a001-sm-3-0 {
    width: 50%;
  }
  .a001-sm-6 {
    width: 70%;
  }
  .modal-dialog-b011 {
    max-width: 760px;
    margin: 30px auto;
  }
}

.input-SFDC-login{
    height: 38px !important;
    margin-bottom: 5px !important;
}

.alert-block-login {
  min-height: 20px;
}

.form-group-height {
  margin-bottom: 5px !important;
}

.form-control-height {
  margin-bottom: 5px;
}

.btn-color-b010 {
  background-color: #fff;
  color: #000;
  border-color: #000;
}

.btn-margin-b0102 {
  margin: 5px auto;
  margin-bottom: 15px;
}

.btn-margin-b0101 {
  margin: 5px auto;
}

.modal-body-b010 {
  margin: 15px 15px 2px;
}

.div-border-b010{
  border: 4px solid #009bdd;
}

@media (min-width: 999px) {
  .div-display {
    display: flex;
  }

  .div-abreast-login {
    width: 51%;
  }

  .div-abreast {
    width: 48%;
    margin-right: 2%;
  }

  .div-button-login {
    margin-top: 10%;
  }

  .div-ul-ml {
    margin-left: 16% !important;
  }

  .ul-mr-pc {
    margin-left: 20% !important;
  }
}

@media (min-width: 999px) {
  .ul-mr-pc-002 {
    margin-left: 35% !important;
  }
}

@media (max-width: 998px) {
  .a001-mt-30{
    margin-top: 30px !important;
  }

  .div-ul-ml {
    max-width: 300px;
    margin: 20px auto;
  }

  .ul-mr-pc {
    max-width: 300px;
    margin: 20px auto;
  }

  .ul-mr-pc-002 {
    max-width: 280px;
    margin: 22px auto;
  }

  .sp-bt-6 {
    margin-bottom: 6px;
  }
}

@media (min-width: 768px) {
  .lable-SFDC-login{
    height: 38px;
    margin-bottom: 5px;
  }

  .li-list-style3{
    list-style: disc;
  }

  .div-dio-ml {
    margin-left: 16% !important;
  }
}

.li-list-style{
  list-style: disc;
}

.btn-login-b011 {
  margin: 0px auto 20px auto;
  padding:  0.875em 1.5em;
  font-size: 1.7rem;
  font-weight: bold;
  max-width: 26rem;
  width: 100%;
}

.btn-login-b011 {
  color: #fff;
  -webkit-box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.16);
  -moz-box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.16);
  box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.16);
  background-color: #009ae3;
  border-style: solid;
  border-color: #009ae3 !important;
  outline: none;
}

@media (max-width: 320px) {
  .authImg-width {
    max-width: 26rem;
  }

  .sp-10-pl {
    padding-left: 10px !important;
  }

  .sp-mt-20 {
    margin-top: -20px !important;
  }
}

@media (max-width: 767px) {
  .a001-sm-3-0 {
    width: 50%;
    float: left;
  }

  .sp-display {
    display: none !important;
  }

  .div-dio-ml {
    margin-left: 10px !important;
  }

  .div-th-ml {
    margin-left: 10px !important;
  }

  .sp-padding-10 {
    padding-right: 10px !important;
    padding-left: 10px !important;
  }

  .sp-pl-0 {
    padding-left: 0px !important;
  }

  .btn-width {
    width: 100%;
  }

  .btn-margin {
    margin: 0 0 5px !important;
  }

  /* Bootstrap v5移行対応: SP幅(767px以下)でのモーダル幅・marginをv3相当に合わせる
   * v3実測値: max-width: none, margin: 10px
   * Bootstrap v5の @media(min-width:576px) { .modal-dialog { max-width: 500px } } を上書き
   * ※ .modal-dialog-b011 より先に書くこと（後に書くと !important 同士で後勝ちになり
   *    .modal-dialog-b011 の margin: 30px が上書きされる） */
  .modal-dialog {
    max-width: none !important;
    margin: 10px;
  }
  .modal-dialog-b011 {
    max-width: none !important;
    margin: 30px !important;
  }
}

@media (min-width: 420px) {
  .display-flex {
    display: flex;
  }
}

@media (max-width: 419px) {
  .margin-width {
    max-width: 26rem;
    outline: none;
    display: block;
  }
}

.sp-pl-10 {
  padding-left: 10px !important;
}

.a001-mb-0 {
  margin-bottom: 0px !important;
}

.a001-mb0 {
    margin-bottom: 0px !important;
}

@media (min-width: 767px) {
  .a001-mb0 {
    margin-bottom: 30px !important;
  }
}

.a001-mb-30 {
  margin-bottom: 30px !important;
}

.a001-marign {
  width: 320px;
  margin:0 auto;
}

.a001-marign-login {
  max-width: 280px;
  margin:0 auto;
}

.ul-margin {
  padding-left: 11px;
  margin-top: 15px;
}

.ul-margin-login {
  padding-left: 25px;
  margin-top: 15px;
}

@media (max-width: 767px) {
  .ul-margin-login{
    padding: 0px 10px;
  }
}

.pc-pl-0 {
  padding-left: 0px !important;
}

.dialog-pt-20 {
  padding-top: 20px;
}

.href-color-blue {
  color: #009bdd;
  /* Bootstrap v5移行対応: .row > * { width:100% } により直接子要素に横幅いっぱいが強制適用されるため
     width:fit-contentでテキスト幅に収める */
  width: fit-content;
}
/* Bootstrap v5移行対応: v5ではa:hoverがCSS変数差し替えのみのためfixedカラー指定のhref-color-blueに
   ホバー色変化が効かなくなる問題を修正 */
.href-color-blue:hover {
  color: #0070a0;
}

.div-contractMail {
  margin-top: 4px !important;
  margin-bottom: 5px !important;
}

.div-span-mt-md {
  margin-top: -10px !important;
  margin-bottom: 10px !important;
}

.div-contractMail-ml {
  margin-left: 25px !important;
  margin-top: 4px !important;
  margin-bottom: 5px !important;
}

.radio-mt{
  margin-top: 6px !important;
}

.small-icon {
  position: relative;
  display: inline-block;
  margin-left: 7px;
  width: 18px;
  height: 18px;
  border-radius: 9px;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#1fb3ef+0,0b68d0+100 */
  background: #1fb3ef;
  /* Old browsers */
  background: -moz-linear-gradient(top, #1fb3ef 0%, #0b68d0 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #1fb3ef 0%, #0b68d0 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #1fb3ef 0%, #0b68d0 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

.screen-pc {
  display: inline-block !important;
  vertical-align: text-bottom !important;
}
.screen-sp {
  display: none !important;
  vertical-align: text-bottom !important;
}

.link-area-pc {
 margin: auto;
 width: 34%;
}

.margin-left-30p {
 margin-left: 30px
}

.txtNormalImportant {
  font-weight: normal !important;
}

/* 修正系_ダイアログ */
/* Bootstrap v5移行対応: Safari等でボタン文字色が青くなるため、V3同様に黒色へ補正 */
.btn-form-not-SFDCreal-dialog {
  margin: 6px auto 19px auto;
  -webkit-box-shadow:  none;
  -moz-box-shadow: none;
  box-shadow: none;
  background-color: #fff;
  border: 1px solid #000;
  border-width: 2px;
  margin: 6px auto 20px auto;
  color:#000;
}

/* 肯定系_ダイアログ */
.btn-form-do-SFDCreal-dialog {
  color: #fff;
  margin: 8px auto 8px auto;
  -webkit-box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.16);
  -moz-box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.16);
  box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.16);
  background-color: #e98300 !important;
  border-style: solid;
  border-color: #e98300 !important;
  text-decoration: none;
  font-weight: bold;
}

/* ボタン_ダイアログ */
.btn-form-do-SFDCreal-dialog,
.btn-form-not-SFDCreal-dialog {
    padding: 0.6em 1.5em 0.6em 1.5em;
    font-size: 1.7rem;
    max-width: 23rem;
    width: 100%;
    outline: none;
}

/* Bootstrap v5移行対応: floatレイアウトの親要素高さ崩れ防止（clearfix用途）
 * v3→v5移行時もfloat利用箇所の後方互換維持のため残す */
.header-area::after {
  content: "";
  display: block;
  clear: both;
}

/* Bootstrap v5移行対応: <colgroup class="row"> / <col class="col-md-*"> はv5のFlexboxグリッドが効かないためCSSで幅を再定義 */
colgroup.row {
    display: revert;
}
col.col-md-3 {
    width: 25%;
}
col.col-md-9 {
    width: 75%;
}

/* Bootstrap v3と同じ見た目にするため、見出しのline-heightを1.1に調整 */
h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 {
  line-height: 1.1;
}

/* Bootstrap v5移行対応: V3とV5でlabelのレイアウトが異なるため、V3のlabelスタイルをそのまま移植し調整 */
label {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 5px;
  font-weight: 700;
}

/* Bootstrap v5移行対応: V3と同じチェックボックス・ラジオボタンの縦位置・余白を再現 */
input[type="checkbox"], input[type="radio"] {
  margin: 4px 0 0;
  line-height: normal;
}

/* Bootstrap v5移行対応: モーダルヘッダーの閉じるボタン右寄せ維持
   【背景】v5の new_bootstrap.css の .modal-header は display:flex / align-items:center のみで
   justify-content:space-between が定義されておらず、タイトルと閉じるボタンが左寄りに並ぶ問題が発生。
   また、v3では左上右上の角の丸みの設定はしておらず、v5から設定されているため差分が発生している。
   【対応】justify-content:space-between を追加してタイトルと閉じるボタンを両端配置。
   border-top-left-radius: 0 !important;border-top-right-radius: 0 !important;を追加して
   角の丸みをなくなるよう修正
   JSP側は v3の .close クラスを引き続き使用しているため、order:2 で flex末尾（右端）に配置する。 */
.modal-header {
  align-items: flex-start;
  justify-content: space-between;
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
}
.modal-header .close {
  order: 2;
}

/* Bootstrap v5移行対応: prefers-reduced-motion 設定に関わらずモーダルアニメーションを強制有効化 */
.fade {
  transition: opacity 0.15s linear !important;
}
.modal.fade .modal-dialog {
  transform: translate(0, -50px);
  transition: transform 0.3s ease-out !important;
}
.modal.show .modal-dialog {
  transform: none !important;
}

/* Bootstrap v5移行対応: モーダル内 .row.row-center の中央寄せ維持
   【背景】既存の .row-center は text-align:center + inline-block によるv3手法で中央寄せを実現していたが、
   v5では .row が display:flex になったため text-align:center が機能しなくなった。
   【対応】justify-content:center を追加して flex 環境での中央寄せを補完。
   また v3 では float ベースのグリッドが使われていたため .col-md-5 に float残存が発生するケースを
   float:none で打ち消している。.modal-orign スコープに限定して副作用を最小化 */
.modal-orign .row.row-center {
  justify-content: center !important;
  display: flex !important;
}
/* Bootstrap v5移行対応: col-md-5/col-md-4 の float 打ち消し + 画像中央寄せ */
.modal-orign .col-md-5,
.modal-orign .col-md-4 {
  float: none !important;
  display: flex !important;
  flex-direction: column;
  align-items: center;
}
/* Bootstrap v5移行対応: モーダル内 img の中央寄せ */
.modal-orign img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/* Bootstrap v5移行対応: V3風の.btn-primaryのレイアウトになるよう修正 */
.btn.btn-primary {
  background-color: #337ab7;
  border-color: #2e6da4;
  color: #fff;
  box-shadow: none !important;
}
.btn.btn-primary:active {
  background-color: #286090;
  border-color: #204d74;
  color: #fff;
}
.btn.btn-primary:hover {
  background-color: #286090;
  border-color: #204d74;
  color: #000;
}
.btn.btn-primary:focus {
  background-color: #286090;
  border-color: #122b40;
  color: #000;
}

/* Bootstrap v5移行対応: .btn-secondaryをV3風の.btn-defaultになるよう修正 */
.btn.btn-secondary {
  background-color: #fff;
  border-color: #ccc;
  color: #333;
  box-shadow: none !important;
}
.btn.btn-secondary:active {
  background-color: #e6e6e6;
  border-color: #adadad;
  color: #333;
}
.btn.btn-secondary:hover {
  background-color: #e6e6e6;
  border-color: #adadad;
  color: #000;
}
.btn.btn-secondary:focus {
  background-color: #e6e6e6;
  border-color: #8c8c8c;
  color: #000;
}

/* Bootstrap v5移行対応: .dialog-pt-20.text-narrow付き.rowをflexからblockに変更 */
.row.dialog-pt-20.text-narrow {
  display: block !important;
}

/* Bootstrap v5移行対応: モーダル内のpタグの左右paddingをV3と同じ表示になるよう0に補正 */
.modal-orign p {
  padding-left: 0;
  padding-right: 0;
}

/* Bootstrap v5移行対応: モーダル内liの下マージンをV3と同じ表示になるように0に補正 */
.modal-orign li {
  margin-bottom: 0;
}

/* B011 and B020 <br> hide */
@media (max-width: 760px) {
    .br-hide {
        display: none;
    }
}