.ul02 { margin: 0px; padding: 0px 0px 15px; line-height: 150%; list-style-type: none; width: 100%; display: flex; flex-flow: wrap; justify-content: space-between; }
.ul02 li { margin: 20px 0px 0px; padding: 0px; width: 48%; text-align: center; }
.ul02 p { padding: 10px 0px 0px; text-align: center; line-height: 150%; }
.div01 { padding: 25px 0px 0px; }
.hrs { margin: 50px 0px 0px; padding: 0px; border-width: 1px 0px 0px; border-style: dashed; }
.nnbtn a { position: relative; display: block; margin: 15px 0px 0px; padding: 13px 0px 11px; width: 90%; max-width: 200px; font-size: 0.9rem; line-height: 100%; text-align: center; text-decoration: none; background-color: #153b54; color: #ffffff; border-radius: 3px; }
.nnbtn a::after { content: ""; position: absolute; top: 50%; right: 5px; width: 0px; height: 0px; border-width: 5px; border-style: solid; border-color: transparent transparent transparent #ffffff; transform: translateY(-50%); }
.ijuu .pht { float: left; margin: 0px 20px 10px 0px; width: 50%; max-width: 180px; }
.ouchi { margin: 50px 0px 0px; padding: 20px 30px 10px; border: 3px double #9dacb5; flex-flow: wrap; justify-content: space-between; }
.ouchi .pht { margin: 0px auto 10px; width: 150px; }
.ouchi .nnbtn a { margin: 15px auto; padding: 10px 0px; max-width: 160px; font-size: 0.9rem; }
.kanri { margin: 0px; padding: 0px 0px 20px; width: 100%; flex-flow: wrap; justify-content: space-between; }
.kanri .pht { margin: 0px auto; padding: 20px 0px 0px; width: 210px; }
.kanri .pht img { width: 100%; height: auto; }
.kanri .data { padding: 10px 0px 0px; }
.kanri ul { margin: 0px; padding: 0px 20px 20px; list-style-type: none; line-height: 100%; box-sizing: border-box; border: 1px solid #9dacb5; background-image: url("/hpdata/bg/10.png"); }
.kanri li { position: relative; margin: 20px 20px 0px 0px; padding: 1px 0px 0px 25px; display: inline-block; white-space: nowrap; }
.kanri li::before { content: ""; position: absolute; top: 2px; left: 1px; width: 14px; height: 14px; border: 1px solid #153b54; border-radius: 50%; }
.kanri li::after { content: ""; position: absolute; top: 10px; left: 7px; width: 0px; height: 0px; border-width: 5px; border-style: solid; border-color: transparent transparent transparent #153b54; transform: translateY(-50%); }
.mgn10 { margin-top: 8px; }
.vbox { padding: 0px 0px 30px; }
.vbox .clearfix { display: flex; flex-flow: column wrap; }
.vbox .pht { float: left; margin: 20px 0px 0px; width: 100%; order: 2; }
.vbox .pht img { width: 100%; }
.vbox h3 { margin: 0px; padding: 0px 0px 15px; font-size: 1.5rem; line-height: 150%; font-weight: normal; }
.vbox ul { margin: 0px; padding: 1px 0px 10px; list-style-type: none; line-height: 100%; display: flex; flex-flow: wrap; justify-content: flex-start; }
.vbox li { position: relative; margin: 20px 20px 0px 0px; padding: 0px 0px 0px 23px; display: inline-block; white-space: nowrap; }
.vbox li::before { content: ""; position: absolute; top: 1px; left: 1px; width: 14px; height: 14px; border: 1px solid #153b54; border-radius: 50%; }
.vbox li::after { content: ""; position: absolute; top: 9px; left: 7px; width: 0px; height: 0px; border-width: 5px; border-style: solid; border-color: transparent transparent transparent #153b54; transform: translateY(-50%); }
.hx03 { position: relative; margin: 40px 0px 0px; padding: 3px 0px 20px 50px; font-size: 1.5rem; line-height: 150%; }
.hx03 span.sml2 { margin-left: 8px; font-size: 1.1rem; }
.hx03::before { content: attr(data-label); position: absolute; top: 0px; left: 0px; width: 40px; height: 40px; font-size: 1.4rem; line-height: 38px; text-align: center; background-color: #153b54; color: #ffffff; border-radius: 50%; }
.nnbtn3 a { position: relative; display: block; margin: 30px 0px 0px; padding: 15px 0px; width: 90%; max-width: 220px; font-size: 0.9rem; line-height: 100%; text-align: center; text-decoration: none; border-width: 1px; border-style: solid; border-radius: 3px; font-weight: bold; }
.nnbtn3 a::after { content: ""; position: absolute; top: 50%; right: 5px; width: 0px; height: 0px; border-width: 5px; border-style: solid; border-color: transparent transparent transparent #153b54; transform: translateY(-50%); }
.sbox { margin: 0px; padding: 40px 0px 10px; width: 100%; flex-flow: wrap; justify-content: space-between; }
.sbox .pht { padding: 20px 0px 10px; flex-basis: 35%; order: 1; }
.sbox .pht img { width: 100%; height: auto; }
.sbox .data { flex-basis: 60%; order: 2; font-size: 0.95rem; line-height: 225%; }
.sbox .data h4 { margin: 0px; padding: 5px 0px 0px; font-size: 1.5rem; line-height: 125%; }
.sbox .sml { font-size: 0.9rem; line-height: 125%; }
.sbox .data img { float: left; margin: 24px 20px 0px 0px; width: 40%; }
.sbox .data p { padding: 15px 0px 0px; line-height: 225%; }
@media print, screen and (min-width: 420px) {
  .vbox .clearfix { display: block; }
  .vbox .pht { float: left; margin: 5px 30px 5px 0px; width: 42%; }
  .vbox h3 { font-size: 1.8rem; line-height: 150%; }
}
@media print, screen and (min-width: 510px) {
  .ouchi { display: flex; }
  .ouchi .pht { margin: 0px; }
  .ouchi .bun { flex: 1 1 0%; padding: 0px 0px 0px 50px; box-sizing: border-box; }
  .ouchi .nnbtn a { margin: 15px 0px 0px auto; }
  .hx03 { padding: 3px 0px 30px 63px; font-size: 1.7rem; line-height: 150%; }
  .hx03::before { top: 0px; left: 0px; width: 50px; height: 50px; font-size: 1.6rem; line-height: 48px; }
}
@media print, screen and (min-width: 640px) {
  .sbox { display: flex; padding: 40px 0px 10px; }
  .sbox .pht { margin-top: 6px; padding: 0px; order: 1; }
  .sbox .data { order: 2; }
  .sbox .data img { max-width: 140px; }
  .sbox .sml { display: inline; }
  .sbox .data h4 { padding-bottom: 15px; border-bottom: 1px dashed #999999; }
  .ul02 { justify-content: flex-start; }
  .ul02 li { margin: 40px 2% 0px 0px; width: 31%; max-width: 252px; }
  .ul02 li:last-of-type { display: none; }
  .kanri { display: flex; }
  .kanri .data { flex: 1 1 0%; padding: 25px 0px 0px 30px; }
}
@media screen and (min-width: 800px) and (max-width: 950px) {
  .vbox h3 { font-size: calc(0.5736rem + 2.2vw); line-height: 150%; }
}
@media print, screen and (min-width: 768px) {
  .ijuu .pht { margin: 0px 40px 20px 0px; }
}
@media print, screen and (min-width: 800px) {
  .vbox { position: relative; margin: 0px 0px 40px; padding: 0px 0px 0px 48%; }
  .vbox .pht { position: absolute; top: 0px; left: 0px; width: 42%; height: 100%; }
  .vbox .pht img { width: 100%; height: 100%; object-fit: cover; }
  .vbox ul { padding: 5px 0px 0px; }
}
@media print, screen and (min-width: 1100px) {
  .vbox h3 { font-size: 1.8rem; line-height: 125%; }
  .hx03::before { top: 2px; }
  .kanri li::before { top: 3px; }
  .kanri li::after { top: 11px; }
}
