/* JP 5_1_contact_us BS5 v1
   JP BS3 same-name B = sole DOM/content/href/form source.
   Chinese same-name BS5 = geometry/color/font-size Golden Reference.
   Frozen: desktop/mobile shared shell, all existing Japanese B DOM/text/href/form fields, all image files. */

body.jp-bs5-5-1-page a[name="a1"] + .container .thumbnail,
body.jp-bs5-5-1-page a[name="a2"] + .container .thumbnail{
  box-sizing:border-box !important;
}
body.jp-bs5-5-1-page a[name="a1"] + .container a,
body.jp-bs5-5-1-page a[name="a2"] + .container a{
  text-decoration:none !important;
}
body.jp-bs5-5-1-page a[name="a1"] + .container img,
body.jp-bs5-5-1-page a[name="a2"] + .container img{
  max-width:100%;
  height:auto;
}

/* Restore BS3/Chinese accepted column rhythm in B only. */
@media (min-width:768px){
  body.jp-bs5-5-1-page a[name="a1"] + .container::before,
  body.jp-bs5-5-1-page a[name="a1"] + .container::after,
  body.jp-bs5-5-1-page a[name="a2"] + .container::before,
  body.jp-bs5-5-1-page a[name="a2"] + .container::after,
  body.jp-bs5-5-1-page .form-horizontal .form-group::before,
  body.jp-bs5-5-1-page .form-horizontal .form-group::after{
    display:table !important;
    content:" " !important;
  }
  body.jp-bs5-5-1-page a[name="a1"] + .container::after,
  body.jp-bs5-5-1-page a[name="a2"] + .container::after,
  body.jp-bs5-5-1-page .form-horizontal .form-group::after{
    clear:both !important;
  }

  body.jp-bs5-5-1-page a[name="a1"] + .container > .col-sm-8,
  body.jp-bs5-5-1-page a[name="a2"] + .container > .col-sm-8{
    float:left !important;
    width:66.66666667% !important;
    max-width:66.66666667% !important;
    flex:0 0 66.66666667% !important;
    box-sizing:border-box !important;
  }
  body.jp-bs5-5-1-page a[name="a1"] + .container > .col-sm-4,
  body.jp-bs5-5-1-page a[name="a2"] + .container > .col-sm-4{
    float:left !important;
    width:33.33333333% !important;
    max-width:33.33333333% !important;
    flex:0 0 33.33333333% !important;
    box-sizing:border-box !important;
  }

  /* B1-TPE / B1-KS = 50/50 inside left 8/12 area. */
  body.jp-bs5-5-1-page a[name="a1"] + .container > .col-sm-8 > .col-sm-6{
    float:left !important;
    width:50% !important;
    max-width:50% !important;
    flex:0 0 50% !important;
    padding-left:15px !important;
    padding-right:15px !important;
    box-sizing:border-box !important;
  }
  body.jp-bs5-5-1-page a[name="a1"] + .container > .col-sm-8 > .col-sm-12{
    float:left !important;
    width:100% !important;
    max-width:100% !important;
    flex:0 0 100% !important;
    padding-left:15px !important;
    padding-right:15px !important;
    box-sizing:border-box !important;
    clear:both !important;
  }

  /* B2 four cards = 2 x 2, each 50% inside left 8/12 area. */
  body.jp-bs5-5-1-page a[name="a2"] + .container > .col-sm-8 > .col-sm-6{
    float:left !important;
    width:50% !important;
    max-width:50% !important;
    flex:0 0 50% !important;
    box-sizing:border-box !important;
  }
}

/* B1 intro rhythm matches Chinese accepted page. */
body.jp-bs5-5-1-page a[name="a1"] + .container > .col-sm-8 > .thumbnail:first-child{
  margin:20px 10px !important;
  border:0 !important;
}

/* B1 contact cards: full border, matching minimum height, copy one size smaller. */
body.jp-bs5-5-1-page a[name="a1"] + .container > .col-sm-8 > .col-sm-6 > .thumbnail{
  display:block !important;
  width:100% !important;
  margin:20px 0 !important;
  padding:10px 6px !important;
  border:2px solid #B0B0B0 !important;
  border-radius:4px !important;
  background:#fff !important;
  overflow:visible !important;
}
body.jp-bs5-5-1-page a[name="a1"] + .container > .col-sm-8 > .col-sm-6 > .thumbnail p,
body.jp-bs5-5-1-page a[name="a1"] + .container > .col-sm-8 > .col-sm-6 > .thumbnail p a,
body.jp-bs5-5-1-page a[name="a1"] + .container > .col-sm-8 > .col-sm-6 > .thumbnail h4,
body.jp-bs5-5-1-page a[name="a1"] + .container > .col-sm-8 > .col-sm-6 > .thumbnail h4 a{
  font-size:15px !important;
}
@media (min-width:768px){
  body.jp-bs5-5-1-page a[name="a1"] + .container > .col-sm-8 > .col-sm-6 > .thumbnail{
    min-height:230px !important;
  }
}

/* B1 form: preserve action/method/name/id/hidden; only restore BS3 geometry. */
body.jp-bs5-5-1-page .form-horizontal .form-group{
  clear:both !important;
  margin-top:0 !important;
  margin-bottom:15px !important;
}
body.jp-bs5-5-1-page .form-horizontal .form-group.text-center{
  margin-top:18px !important;
  margin-bottom:28px !important;
}
body.jp-bs5-5-1-page .form-horizontal .form-control{
  margin-top:0 !important;
  margin-bottom:0 !important;
}
@media (min-width:768px){
  body.jp-bs5-5-1-page .form-horizontal .form-group{
    margin-left:-15px !important;
    margin-right:-15px !important;
  }
  body.jp-bs5-5-1-page .form-horizontal .col-sm-3{
    float:left !important;
    width:25% !important;
    max-width:25% !important;
    flex:0 0 25% !important;
    padding-left:15px !important;
    padding-right:15px !important;
    box-sizing:border-box !important;
  }
  body.jp-bs5-5-1-page .form-horizontal .col-sm-9{
    float:left !important;
    width:75% !important;
    max-width:75% !important;
    flex:0 0 75% !important;
    padding-left:15px !important;
    padding-right:15px !important;
    box-sizing:border-box !important;
  }
  body.jp-bs5-5-1-page .form-horizontal .control-label{
    padding-top:7px !important;
    margin-bottom:0 !important;
    text-align:right !important;
  }
}

/* B2 card colors and typography from the Chinese accepted page. */
body.jp-bs5-5-1-page a[name="a2"] + .container > .col-sm-8 > .col-sm-6:nth-of-type(1) > .thumbnail,
body.jp-bs5-5-1-page a[name="a2"] + .container > .col-sm-8 > .col-sm-6:nth-of-type(2) > .thumbnail{
  background:#e0f7ff !important;
}
body.jp-bs5-5-1-page a[name="a2"] + .container > .col-sm-8 > .col-sm-6:nth-of-type(3) > .thumbnail,
body.jp-bs5-5-1-page a[name="a2"] + .container > .col-sm-8 > .col-sm-6:nth-of-type(4) > .thumbnail{
  background:#f3ffcf !important;
}
body.jp-bs5-5-1-page a[name="a2"] + .container > .col-sm-8 > .col-sm-6 .thumbnail p,
body.jp-bs5-5-1-page a[name="a2"] + .container > .col-sm-8 > .col-sm-6 .thumbnail p b,
body.jp-bs5-5-1-page a[name="a2"] + .container > .col-sm-8 > .col-sm-6 .thumbnail p a,
body.jp-bs5-5-1-page a[name="a2"] + .container > .col-sm-8 > .col-sm-6 .thumbnail p em{
  font-size:15px !important;
  background:transparent !important;
}

/* Match Chinese accepted card-4 vertical rhythm without changing Japanese text/DOM. */
body.jp-bs5-5-1-page a[name="a2"] + .container > .col-sm-8 > .col-sm-6:nth-of-type(4) > .thumbnail > p:first-of-type{
  padding-top:70px !important;
}
body.jp-bs5-5-1-page a[name="a2"] + .container > .col-sm-8 > .col-sm-6:nth-of-type(4) > .thumbnail > p:last-of-type{
  padding-bottom:65px !important;
  padding-top:10px !important;
}

/* B right glyph: accepted 1.5x + one visual gap. */
body.jp-bs5-5-1-page a[name="a2"] + .container .glyphicon-menu-right{
  display:inline-block !important;
  font-size:1.5em !important;
  line-height:1 !important;
  margin-left:.25em !important;
  vertical-align:-.08em !important;
}

/* Empty legacy B2 right-column image should occupy no visual box; DOM/src remain untouched. */
body.jp-bs5-5-1-page a[name="a2"] + .container img[src=""]{
  display:none !important;
}

/* Mobile: stacked flow like Chinese accepted BS5 page. */
@media (max-width:767.98px){
  body.jp-bs5-5-1-page a[name="a1"] + .container,
  body.jp-bs5-5-1-page a[name="a2"] + .container{
    width:100% !important;
    max-width:100% !important;
    padding-left:15px !important;
    padding-right:15px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    box-sizing:border-box !important;
  }
  body.jp-bs5-5-1-page a[name="a1"] + .container [class*="col-"],
  body.jp-bs5-5-1-page a[name="a2"] + .container [class*="col-"]{
    display:block !important;
    float:none !important;
    width:100% !important;
    max-width:100% !important;
    flex:0 0 100% !important;
    box-sizing:border-box !important;
  }
  body.jp-bs5-5-1-page .form-horizontal .control-label,
  body.jp-bs5-5-1-page .form-horizontal label{
    text-align:left !important;
  }
  body.jp-bs5-5-1-page .form-horizontal .form-group{
    margin-bottom:16px !important;
  }
  body.jp-bs5-5-1-page a[name="a1"] + .container > .col-sm-8 > .col-sm-6 > .thumbnail{
    min-height:0 !important;
  }
}
