@charset "utf-8";

main #bread {
  margin: 0 auto -20px;
  padding: 7px 0 0;
}
main section > div > h2 {
  padding: 5% 0% 6%;
  color: #021d4b;
}
main section > div > h2 > span {
  color: #666;
}

section > div > ul {
  text-align: left;
}
section > div > ul > li {
  margin: 0 auto 66px;
  padding: 0 0 10px;
  border-bottom: 1px solid;
}
section > div > ul > li:last-child {
  border: none;
}

#opn > div > ul > li > h5 {
  margin: 0 auto 23px;
  line-height: 1.4;
}
#opn > div > ul:nth-child(5) > li > h5 {
  color: #021d4b;
}

section > div > h3 {
  margin: 0 auto 50px;
  text-align: left;
}
section > div > dl.flx {
  border-top: 1px solid #CCC;
}
section > div > dl.flx > * {
  width: 270px;
  margin: 0;
  padding: 13px 0;
  border-bottom: 1px solid #CCC;
  text-align: left;
}
#prfl > div > dl > dd,
#hstry > div > dl > dd {
  width: calc(100% - 270px);
}
#ofcr > div > dl > dt {
  width: 220px;
}
#ofcr > div > dl > dd:nth-child(2),
#ofcr > div > dl > dd:nth-child(3n + 2) {
  width: 140px;
}
#ofcr > div > dl > dd:nth-child(3n) {
  width: calc(100% - 360px);
}
#opn > div > dl:nth-child(5) > dt {width: 120px;}
#opn > div > dl:nth-child(5) > dd {width: 320px;}
#opn > div > dl:nth-child(5) > dd:nth-child(3n) {
  width: calc(100% - 440px);
}


section > div > h4,
main p {
  margin: 0 auto 30px;
  text-align: left;
}

section#opn > div > h4 {
  margin: 0 auto 39px;
  padding: 9px 2%;
  background: #021d4b;
  color: #fff;
  font-size: min(4.4vw, 1.4rem);
}
section#opn > div > dl {
  margin: 0 auto 66px;
}

section#opn ol.dsc li {display: flex;}
section#opn ul > li:first-child ol.dsc li span.bld {
  width: 96px;
}


/* form */
section#cntct_f dl#flw {
  max-width: 900px;
  margin: 0 0 50px;
  display: flex;
  flex-wrap: wrap;
  align-content: space-between;
  justify-content: space-between;
  align-items: center;
}
section#cntct_f dl#flw > dt {
  width: calc(30% - 10px);
  padding: 5px 2%;
  background: #fff;
  border: 1px solid #999;
  color: #999;
  font-size: min(2.6vw, 1rem);
  font-weight: bold;
}
section#cntct_f dl#flw > dt.on {
  background: #021d4b;
  color: #fff;
}
section#cntct_f dl#flw > dd {
  width: 26px;
  background: transparent url(../../img/arw_nvy.svg) no-repeat center center;
  background-size: auto 90%;
}

section > div > div,
section > div > form div {
  margin: 0 auto 50px;
  text-align: left;
}
section > div form > div#trgt {
  padding: 0 0 50px;
  border-bottom: 1px solid #999;
}
section > div >div > h3,
section > div form div > h3 {
  margin: 0 auto 26px;
  color: #021d4b;
}

#trgt > select {
  width: 80%;
  max-width: 333px;
}

section > div > div > form table,
#cntct_f div#lginj_f table {
  width: 100%;
  margin: 0 auto 50px;
}
section > div > div > form tr > *,
#cntct_f div#lginj_f table tr > * {
  padding: 16px 2%;
  background: #fff;
  border: 1px solid #ccc;
  vertical-align: middle;
  text-align: left;
}
section > div > div > form table th,
#cntct_f div#lginj_f table th {
  width: 200px;
  padding: 16px 15px;
  background: #f2f2f2;
}
#cntct_f div#lginj_f table th.rq:after {
  content: '（必須）';
  color: #ff0000;
}
section div > form table input[type="text"],
section div > form table input[type="email"],
section div > form table input[type="number"],
section div > form table input[type="date"],
section div > form table input[type="tel"],
section div > form table textarea {
  width: 92%;
  background: #f2f2f2;
  border: 1px solid #b3b3b3;
}
section div > form table input[type="tel"] {
  max-width: 300px;
}
section div > form table input[type="date"],
section div > form table input[name="zip"] {
  max-width: 200px;
}
#lginj_f > div.bx_btn form {
  margin: 0 auto 39px;
}
#lginj_f > div.bx_btn {
  margin: 0 auto 66px;
  text-align: center;
}
input[name="b_sbmt"] {
  max-width: 500px;
  background: none;
  border: none;
  color: #0000ff;
  font-weight: normal;
  text-decoration: underline;
}

section div#ctn ul.num {font-weight: bold;}
section div#ctn ul.num > li {margin: 0 auto 9px;}
section div#ctn ul.num span,
section div#ctn ol.dsc li {
  padding: 6px 0 0;
  font-weight: normal;
}
section div#ctn ul.num span {
  margin: 0 auto 26px;
  display: block;
}
section div#ctn ul.num ol.dsc {
  margin: 0 auto 33px 1.5rem;
}

span.p-country-name {display:none;}

@media (max-width: 1100px) {
}


@media (max-width: 770px) {
}


@media (max-width: 640px) {
  section#opn > div > h4 {line-height: 1.3;}
  
  section ol.dsc {
    margin: 0 auto 33px 0.6rem;
  }
  section#opn ol.dsc li {
    margin: 0 auto 20px;
    padding: 0 0 0 1rem;
    display: block;
  }
  #opn > div > ul > li > h5 {font-size: 5vw;}
  #opn > div > ul:nth-child(5) > li > h5 {
    font-size: 4vw;
  }
  section#opn ul > li:first-child ol.dsc li span.bld {
  }
  section#opn ul > li ol.dsc li span.bld {
    display: block;
    text-indent: -1rem;
  }
  section#opn ul:nth-child(3) > li:nth-child(4) > p {
    text-indent: 1rem;
  }

  section#opn ul:nth-child(5) > li ol.dsc li span {
    display: inline-block;
  }

  section > div > div > form table,
  #cntct_f div#lginj_f table {
    display: block;
  }
  section > div > div > form table th,
  #cntct_f div#lginj_f table th,
  section > div > div > form table *,
  #cntct_f div#lginj_f table * {
    width: 100%;
    display: block;
  }
  #cntct_f div#lginj_f table span.p-country-name {display: none;}

}
