@charset "shift-jis";

@media (max-width: 699px) {
  * {
    text-size-adjust: 100%;
    -webkit-text-size-adjust: none;
  }
  
  body {
    font-family: メイリオ, Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", Osaka, sans-serif;
  }

  /*----------------------------------------------------*/
  /* structure.css
  /*----------------------------------------------------*/

  /* container */

  #container.login_out {
    box-sizing: border-box;
    width: 100%;
    padding: 0 16px;
    margin: 36px auto 0;
  }

  #container.login_out #contents {
    width: 100%;
  }

  /*----------------------------------------------------*/
  /* component.css
  ------------------------------------------------------*/

  /* form errorbox */
  #contents div.errorbox {
    box-sizing: border-box;
    border: 1px solid #de0000;
    background: #ffffcc;
    border-radius: 4px;
  }

  #contents div.errorbox p.error {
    font-size: 14px;
    font-weight: 600;
    line-height: 150%;
    background-image: none;
    padding-left: 0;
    margin-bottom: 0;
    color: #de0000 !important;
  }

  /*----------------------------------------------------*/
  /* systemmessage.css
  ------------------------------------------------------*/

  /* docroot structure */

  body.doclogin {
    background-color: #ffffff;
    border-top: 4px solid #0946ab;
  }

  #contents div.cstmloginbox {
    background-image: none;
    width: 100%;
  }

  #contents div.cstmloginbox div.box_head {
    background-image: none;
    width: 100%;
    padding: 0;
  }

  #contents div.cstmloginbox div.box_btm {
    background-image: none;
    width: 100%;
    padding: 0;
  }

  #contents div.cstmloginbox div.logo2 {
    display: none;
    padding: 0;
  }

  #contents div.cstmloginbox div.errorbox {
    display: flex;
    gap: 4px;
    width: 100%;
    padding: 16px;
    margin-bottom: 24px;
    color: #de0000;
  }

  #contents div.cstmloginbox div.errorbox .fa::before {
    position: relative;
    font-size: 15px;
    top: 5px;
  }

  /* docroot component */

  #contents div.formbox {
    width: 100%;
    background-image: none;
    padding: 0;
    margin: 0 0 40px 0 !important;
  }

  #contents div.formbox div.pack {
    width: 100%;
    background-image: none;
    padding: 0;
  }

  #contents div.formbox div.pack p.headline {
    text-align: center;
    font-size: 20px;
    font-weight: 600;
    line-height: 150%;
    letter-spacing: 0.04em;
  }

  #contents div.formbox p.lead {
    margin-block: 24px;
    text-align: left;
    font-size: 14px !important;
    font-weight: 400;
    line-height: 170%;
    letter-spacing: 0.04em;
  }
  
  #contents div.formbox p.lead {
    display: none;
  }
  
  #contents div.formbox p.lead.sp-only{
    display: block;
  }

  #contents div.formbox div.btn {
    display: none;
  }

  #contents div.formbox div.btn.sp-only {
    display: block;
  }

  #contents div.formbox div.btn.sp-only {
    display: block;
  }

  #contents div.formbox div.btn.sp-only input {
    width: 100%;
    padding: 16px;
    margin: 0;
    font-size: 16px;
    font-weight: 600;
    line-height: 150%;
    letter-spacing: 0.04em;
    color: #ffffff;
    background-color: #0946ab;
    border: none;
    border-radius: 4px;
  }

  #contents div.formbox div.btn.sp-only input:active {
    background-color: #0d2c5f;
  }

  #contents div.formbox div.btn.sp-only input.btn-issue {
    color: #111111;
    background-color: #f4f4f4;
    border: 1px solid #d2d6de;
  }

  #contents div.formbox div.btn.sp-only input.btn-issue:active {
    color: #111111;
    background-color: #cccccc;
    border: 1px solid #b3b3b3;
  }

  #contents div.formbox div.btn.sp-only input:nth-of-type(n + 2) {
    margin-top: 16px;
  }

  /* formtable */

  #contents table.formtable {
    width: 100%;
    margin: 0 0 40px 0;
  }

  #contents table.formtable tr {
    display: block;
    width: 100%;
  }

  #contents table.formtable tr:nth-of-type(n + 2) {
    margin-top: 16px;
  }

  #contents table.formtable th,
  #contents table.formtable td {
    display: flex;
    width: 100%;
    padding: 0;
  }

  #contents table.formtable th {
    font-size: 16px;
    font-weight: 600;
    line-height: 170%;
    letter-spacing: 0.04em;
  }

  #contents table.formtable tr.formtable__row--filled th {
    font-size: 14px;
  }

  #contents table.formtable td {
    font-size: 16px;
    font-weight: 400;
    color: #333333;
    line-height: 150%;
    letter-spacing: 0.04em;
  }

  #contents table.formtable tr.formtable__row--filled td {
    font-size: 14px;
    line-height: 170%;
  }

  #contents table.formtable td label {
    margin-top: 4px;
  }

  #contents table.formtable td {
    padding-top: 8px;
  }

  #contents table.formtable input {
    width: 100%;
    padding: 16px;
    font-size: inherit;
    font-weight: inherit;
    color: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    border: 1px solid #d2d6de;
    border-radius: 4px;
  }
}

.sp-only {
  display: none;
}
@media (max-width: 699px) {
  .sp-only {
    display: block;
  }
}
