.obfit2 { position: absolute; top: 0px; left: 0px; display: block; width: 100%; height: 100%; overflow: hidden; }
.obfit2 img { width: 100%; height: 100%; object-fit: cover; }
.inforev { position: relative; width: 100%; }
#infobar { margin: 20px auto 0px; width: 94%; background-color: #f1f1f1; display: flex; flex-flow: wrap; box-sizing: border-box; opacity: 0; transition-duration: 1s; transition-delay: 0.5s; transform: translateY(15px); }
#infobar ul { position: relative; flex: 1 1 0%; margin: 0px; padding: 0px; list-style-type: none; height: 46px; overflow: hidden; }
#infobar li { position: absolute; top: 100%; left: 0px; width: 100%; height: 100%; transition-duration: 0.5s; }
#infobar li:nth-of-type(1) { top: 0px; }
#infobar li a { display: block; padding: 0px 20px; width: 100%; line-height: 46px; text-decoration: none; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; box-sizing: border-box; }
#infobar span.mj { text-decoration: underline; }
#infobar strong { display: none; }
#infobarbtn { display: block; width: 70px; height: 46px; }
#infobarbtn img { margin: 12px auto 0px; }
.sptitle { margin: 0px 0px 20px; padding: 0px; font-size: 1rem; line-height: 20px; text-align: center; background-image: url("/commonfiles/bgi/e009.png"); }
.infoz { margin: 0px auto; padding: 30px 0px 0px; width: 96%; max-width: 1340px; flex-flow: wrap; justify-content: space-between; }
.infoz h3 { margin: 0px; padding: 0px 0px 20px; width: 100%; text-align: center; font-size: 2rem; line-height: 100%; border-bottom: 1px dashed #777777; }
.infoz h3 span { font-size: 1.2rem; line-height: 100%; font-weight: normal; display: none; }
.rfbtn { padding: 20px 0px 0px; width: 16%; display: none; }
.rfbtn a { display: block; margin: 0px 0px 0px auto; width: 78%; max-width: 170px; font-size: 1rem; line-height: 50px; text-align: center; text-decoration: none; }
.rfbtn2 { padding: 20px 0px 0px; }
.rfbtn2 a { display: block; margin: 0px auto; width: 78%; max-width: 170px; font-size: 1rem; line-height: 40px; text-align: center; text-decoration: none; }
.topinfo { margin: 0px auto; padding: 0px; list-style-type: none; flex: 1 1 0%; text-align: left; }
.topinfo li { margin: 0px; padding: 0px; border-bottom: 1px dashed #777777; }
.topinfo a { position: relative; padding: 15px 10px 22px; text-decoration: none; display: flex; flex-flow: wrap; justify-content: flex-start; align-items: flex-start; }
.topinfo a div:nth-of-type(1) { margin: 10px 0px 0px; padding: 5px 0px 0px; width: 110px; font-size: 0.9rem; line-height: 100%; }
.topinfo a div:nth-of-type(2) { margin: 10px 15px 0px 0px; padding: 4px 0px 3px; width: 110px; font-size: 0.8rem; line-height: 100%; text-align: center; }
.topinfo a div:nth-of-type(3) { flex-basis: 100%; padding: 5px 20px 0px 0px; font-size: 1.1rem; line-height: 150%; text-decoration: underline; box-sizing: border-box; overflow: hidden; }
.topinfo a::after { position: absolute; top: 50%; right: 15px; width: 6px; height: 6px; content: ""; border-top: 1px solid #333333; border-right: 1px solid #333333; transform: translateY(-50%) rotate(45deg); }
.hx12 { margin: 0px; padding: 50px 0px 20px; width: 100%; text-align: center; font-size: 2rem; line-height: 100%; font-weight: normal; }
.ctgh3 { position: relative; padding: 50px 0px 0px; width: 100%; height: 1px; }
.ctgh3 h3 { position: absolute; top: 20px; left: 10px; z-index: 5; padding: 5px 0px; font-size: 1rem; line-height: 100%; font-weight: normal; text-align: center; width: 220px; }
.bun03 { margin: 0px auto; padding: 30px 0px 40px; max-width: 900px; font-size: 0.93rem; line-height: 225%; }
.btn01 { padding-bottom: 10px; }
.btn01 a { position: relative; display: block; margin: 20px 0px 0px; padding: 15px 0px; width: 250px; font-size: 1rem; line-height: 100%; text-align: center; text-decoration: none; }
.nbox { display: flex; flex-flow: wrap; text-align: center; }
.nbox2 { display: block; }
.nbox > div { flex-basis: 50%; }
.nbox > div:nth-child(3) { order: 4; }
.nbox > div:nth-child(4) { order: 3; }
.npx { position: relative; width: 100%; height: 100%; }
.npx > div { position: absolute; display: block; top: 0px; left: 0px; width: 100%; height: 100%; z-index: 3; }
.npx > div:nth-of-type(2) { color: #ffffff; background-color: rgba(0, 0, 0, 0.2); background-image: url("/commonfiles/bgi/f010.png"); z-index: 4; }
.nbb { position: relative; width: 100%; }
.sbox { margin: 0px auto; padding: 0px 0px 30px; width: 94%; }
.sbox > div { box-sizing: border-box; }
.sbox > div.pht { padding: 20px 0px; }
.sbox > div.pht img { width: 100%; height: auto; }
.sbox > div.data > div { text-align: left; }
.sbox > div.pht .obfit img { width: 100%; height: 100%; object-fit: cover; }
.sep > div { flex-basis: 50%; text-align: center; }
.gbx1 { position: relative; width: 100%; height: 0px; padding-bottom: 100%; }
.gbx1_1 { position: absolute; bottom: 0px; left: 0px; width: 50%; z-index: 7; }
.gbx2 { width: 100%; text-align: left; }
.gbx2 > div.data { margin: 0px auto; padding: 20px 0px 40px; width: 92%; }
.gbx4 { width: 100%; text-align: left; }
.gbx4 > div.data { margin: 0px auto; padding: 30px 0px; width: 92%; }
.gbx3 { position: relative; width: 100%; height: 0px; padding-bottom: 50%; }
.bg07 { background: #ffffff; color: #111111; }
.bg10 { background-image: url("/commonfiles/bgi/e004.png"); background-color: #f9f9f9; }
.data h3 { margin: 0px; padding: 10px 0px 20px; font-size: 1.5rem; line-height: 175%; font-weight: normal; }
.data h3 br { display: none; }
.data p { padding: 0px 0px 10px; font-weight: normal; line-height: 225%; }
.btn05 { position: relative; display: block; margin: 10px auto 0px; padding: 10px 0px; width: 80%; max-width: 250px; text-align: center; text-decoration: none; line-height: 100%; }
.btn05::after { position: absolute; top: 50%; right: 15px; width: 10px; height: 10px; content: ""; border-top: 1px solid #ffffff; border-right: 1px solid #ffffff; transform: translateY(-50%) rotate(45deg); }
.bodr { border: 1px solid rgba(249, 236, 48, 0.5); color: #f9ec30; }
.bodr::after { border-color: #f9ec30; }
.bodr2 { border: 1px solid rgba(0, 0, 0, 0.5); }
.bodr2::after { border-color: #000000; }
.bodr3 { border: 1px solid rgba(255, 255, 255, 0.5); color: #ffffff; }
.bnr03 { display: none; margin: 30px auto 0px; width: 100%; max-width: 600px; font-size: 1.1rem; line-height: 100%; border-style: solid; border-width: 2px; box-sizing: border-box; }
.bnr03 a { position: relative; display: block; width: 100%; text-decoration: none; }
.bnr03 a::after { position: absolute; top: 50%; right: 15px; width: 18px; height: 18px; content: ""; border-top: 1px solid #777777; border-right: 1px solid #777777; transform: translateY(-50%) rotate(45deg); }
.bnr03 .pht { width: 35%; max-width: 208px; }
.bnr03 .pht > div { position: relative; width: 100%; height: 0px; padding-bottom: 60%; }
.bnr03 .pht img { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; }
.bnr03 .moji { position: absolute; top: 50%; right: 0px; width: 65%; font-size: 1.1rem; line-height: 175%; transform: translateY(-50%); }
.bnr03 .moji img { margin: 5px 0px 0px; width: 70%; max-width: 268px; height: auto; }
.grf { position: relative; text-align: center; overflow: hidden; }
.grf .pht3 { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; z-index: -1; }
.grf .pht3 img { width: 100%; height: 100%; object-fit: cover; }
.fdsn { margin: 0px; padding: 30px 0px; text-align: left; background-color: rgba(34, 130, 52, 0.8); }
.fdsn > div { margin: 0px auto; padding: 20px; width: 92%; max-width: 960px; background-color: rgba(255, 255, 255, 0.9); flex-flow: wrap; justify-content: space-between; box-sizing: border-box; }
.fdsn .pht2 { position: relative; flex-basis: 32%; display: flex; flex-flow: wrap; justify-content: space-between; }
.fdsn .pht2 div { flex-basis: 48%; }
.fdsn .bun { padding: 20px 0px 30px; flex-basis: 63%; }
.fdsn .bun .min { position: relative; margin: 0px; padding: 0px 0px 10px; display: inline-block; font-size: 1.5rem; line-height: 150%; font-weight: normal; }
.fdsn .bun .min img { position: absolute; top: -20px; right: -80px; width: 71px; height: auto; z-index: 8; display: none; }
.fdsn .bun > p { padding: 0px 20px 0px 0px; line-height: 225%; }
.fdsn .btn05 { margin-left: 0px; max-width: 220px; }
.hito { position: relative; margin: 0px auto; width: 96%; max-width: 960px; height: 0px; }
.hito img { position: absolute; bottom: 0px; right: 0px; width: 35%; max-width: 120px; height: auto; z-index: 8; }
.contactz { margin: 0px; padding: 70px 0px; text-align: center; background-color: rgba(34, 130, 52, 0.8); }
.contactz > div { flex-flow: wrap; justify-content: space-between; box-sizing: border-box; }
.contactz > div > div { margin: 0px 3%; padding: 20px; background-color: #ffffff; box-sizing: border-box; }
.contactz > div > div:last-of-type { margin-top: 20px; }
.contactz img { margin: 0px auto; width: 50px; height: 50px; }
.contactz .m1 { font-weight: bold; }
.contactz .font_sans { padding: 10px 0px; font-weight: bold; font-size: 2.6rem; line-height: 100%; }
.contactz .btn01 a { margin: 5px auto; }
.qbxzz { margin: 0px auto; width: 100%; flex-flow: wrap; text-align: center; }
.qbxz { flex-basis: 50%; }
.qbx { width: 100%; display: flex; flex-flow: wrap; }
.qbx > div { position: relative; width: 50%; height: 0px; padding-bottom: 50%; }
.qbx .qp > div { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; display: block; }
.qbx .qp img { width: 100%; height: 100%; object-fit: cover; }
.qbxz .rb .qp { order: 2; }
.qbxz .rb .qb { order: 1; }
.mcolor3 { background-color: #2a883c; color: #ffffff; }
.mcolor3 a { color: #ffffff; }
.mcolor3 .sbcolor { background-color: #19702a; color: #ffffff; }
.mcolor3 .sbcolor a { color: #ffffff; }
.nbx { margin: 0px auto; padding: 20px 0px; width: 92%; }
.nbx .hx { margin: 0px; padding: 0px 0px 10px; font-size: calc(0.98495rem + 0.935vw); line-height: 100%; font-weight: normal; }
.nbx p { font-size: calc(0.48495rem + 0.935vw); line-height: 175%; }
.nbx p br { display: none; }
.nbx .btn { position: relative; display: block; margin: 20px auto 0px; padding: 5px 0px; width: 80%; max-width: 150px; line-height: 100%; text-decoration: none; }
.gyomupht { margin: 0px 0px 0px auto; padding: 5px 0px 20px; max-width: 85%; list-style-type: none; text-align: center; display: none; flex-flow: wrap; justify-content: flex-end; }
.gyomupht li { margin: 15px 0px 0px 2%; padding: 0px; flex-basis: 23%; }
.novd, .novd4 { display: none; }
.novd1 { display: none; }
.hokenbnr2 { margin: 0px; padding: 5px 0px 0px; list-style-type: none; line-height: 150%; }
.hokenbnr2 li { margin: 0px; padding: 0px; }
.hokenbnr2 li:last-of-type { margin-top: 15px; }
.hokenbnr2 a { position: relative; display: inline-block; margin: 0px 0px 0px auto; padding: 0px 0px 0px 22px; text-align: left; }
.hokenbnr2 a::before { position: absolute; content: ""; top: 4px; left: 0px; width: 17px; height: 17px; border-radius: 50%; }
.hokenbnr2 a::after { position: absolute; top: 13px; left: 5px; width: 5px; height: 5px; content: ""; border-top: 1px solid #ffffff; border-right: 1px solid #ffffff; transform: translateY(-50%) rotate(45deg); }
div.smlss { padding: 8px 0px; font-size: 0.8rem; line-height: 150%; color: #666666; }
.ulbnr { margin: 0px auto; padding: 20px 0px 0px; list-style-type: none; width: 96%; max-width: 600px; flex-flow: wrap; justify-content: center; }
.ulbnr li { position: relative; margin: 20px 1% 0px; padding: 0px; flex-basis: 47%; }
.ulbnr li::after { position: absolute; top: 50%; right: 15px; width: 10px; height: 10px; content: ""; border-top: 1px solid #777777; border-right: 1px solid #777777; transform: translateY(-50%) rotate(45deg); }
.ulbnr a { width: 100%; text-decoration: none; border: 1px solid #999999; box-sizing: border-box; display: flex; flex-flow: wrap; justify-content: space-between; }
.ulbnr .pht { position: relative; flex-basis: 30%; overflow: hidden; }
.ulbnr .pht::before { content: url("/hpdata/image/p0001/4.svg"); position: absolute; top: 0px; right: -1px; width: 55px; height: 100%; z-index: 11; }
.ulbnr .moji { padding: 20px 0px; flex-basis: 70%; }
.ulbnr .moji div { font-size: calc(1.024rem + 1.2vw); line-height: 125%; }
.ulbnr .moji p { padding: 10px 0px 0px; font-size: calc(0.5838rem + 0.94vw); line-height: 125%; }
.ya { position: relative; }
.ya::after { position: absolute; top: 50%; right: 12px; width: 7px; height: 7px; content: ""; border-top: 1px solid #ffffff; border-right: 1px solid #ffffff; transform: translateY(-50%) rotate(45deg); }
.nobr p br { display: none; }
.padbot30 { padding-bottom: 30px; }
@media screen and (max-width: 767px) {
  #infobar { opacity: 1; transform: translateY(0px); }
}
@media print, screen and (min-width: 768px) {
  .padbot30 { padding-bottom: 50px; }
  .nobr p br { display: inline; }
  #infobar { position: absolute; bottom: 15px; right: 15px; margin: 0px; width: 50%; max-width: 550px; background-color: rgba(255, 255, 255, 0.8); z-index: 25; }
  #infobar ul { height: 55px; }
  #infobar li a { line-height: 55px; }
  #infobar strong { display: inline; }
  #infobarbtn { display: block; height: 55px; }
  #infobarbtn img { margin-top: 19px; }
  .novd, .fdsn .pht2 { display: block; }
  .novd1, .fdsn > div, .qbxzz { display: flex; }
  .novd2 { display: none; }
  .btn05 { margin: 20px 0px 0px; padding: 20px 0px; width: 80%; max-width: 300px; }
  .fdsn .btn05 { padding: 15px 0px; max-width: 250px; }
  .sep { display: flex; flex-flow: wrap; }
  .gbx1 > .obfit2 { z-index: -1; }
  .gbx2 { position: relative; width: 100%; height: 0px; padding-bottom: 75%; }
  .gbx2 > div.data { position: absolute; top: 50%; left: 50%; margin: 0px; padding: 0px; width: 85%; max-width: 700px; transform: translate(-50%, -50%); }
  .gbx2 .btn05 { margin: 10px 0px 0px; padding: 12px 0px; width: 80%; max-width: 200px; font-size: 0.9rem; }
  .gbx4 { position: relative; width: 100%; height: 0px; padding-bottom: 60%; }
  .gbx4 > div.data { position: absolute; top: 50%; left: 50%; margin: 0px; padding: 0px; width: 85%; max-width: 700px; transform: translate(-50%, -50%); }
  .gbx4 .btn05 { margin: 10px 0px 0px; padding: 12px 0px; width: 80%; max-width: 200px; font-size: 0.9rem; }
  .data h3 br, .infoz h3 span { display: inline; }
  .sbox { padding: 50px 0px 60px; width: 100%; display: flex; flex-flow: wrap; justify-content: space-between; }
  .sbox > div { flex-basis: 50%; max-width: 50%; }
  .sbox > div.pht { padding: 0px 40px 0px 0px; order: 2; }
  .sbox > div.data > div { margin: 0px auto; width: 85%; text-align: right; }
  .sbox > div.data .btn05 { margin-left: auto; margin-right: 0px; }
  .contactz > div, .infoz { display: flex; }
  .contactz > div > div { margin: 0px; flex-basis: 47%; max-width: 47%; }
  .contactz > div > div:last-of-type { margin: 0px; }
  .topinfo { padding: 20px 0px 0px; }
  .topinfo a div:nth-of-type(1) { padding: 3px 0px 0px; width: 130px; }
  .topinfo a div:nth-of-type(3) { flex: 1 1 0%; }
  .infoz .h3z { position: relative; margin: 20px 0px 0px; padding: 0px; width: 16%; text-align: center; }
  .infoz h3 { position: absolute; top: 50%; left: 0px; transform: translateY(-50%); border: 0px; }
  .hx12 { font-size: 2.6rem; }
  .fdsn .bun .min { font-size: 2rem; line-height: 150%; }
  .fdsn .pht2 div:first-of-type { margin-bottom: 10px; }
  .hito img { right: 40px; }
  .hokenbnr2 a:hover, .topinfo a:hover div:last-of-type, .bun03 a:hover, #infobar a:hover { color: #cc3300; }
  .btn05, .nbx .btn, .rfbtn2 a, .rfbtn a, .btn01 a { transition-duration: 0.3s; }
  .btn05:hover, .nbx .btn:hover, .rfbtn a:hover, .btn01 a:hover { opacity: 0.85; }
  .ulbnr a:hover { outline: #f5ebbd solid 2px; }
  #infobar a:hover strong { color: #000000; }
  #infobarbtn:hover { opacity: 0.9; }
  .data h3 { padding-top: 0px; }
}
@media (min-width: 1345px) {
  .gbx2 > div.data, .gbx4 > div.data { padding: 0px 0px 20px; }
  .data h3 { font-size: 2.1rem; line-height: 175%; }
  .sbox .data h3 { padding-top: 10px; }
  .nbx .hx { padding: 0px 0px 10px; font-size: 1.5rem; line-height: 100%; font-weight: normal; }
  .nbx p { font-size: 0.9rem; line-height: 175%; }
  .nbx p br { display: inline; }
}
@media (max-width: 1344px) and (min-width: 768px) {
  .data h3 { font-size: calc(-0.1296rem + 2.77vw); line-height: 175%; }
  .data p { font-size: calc(0.56rem + 0.5vw); line-height: 200%; }
  .nbx .hx { padding: 0px 0px 10px; font-size: calc(0.80016rem + 0.833vw); line-height: 100%; font-weight: normal; }
  .nbx p { font-size: calc(0.266rem + 0.8vw); line-height: 175%; }
}
@media (min-width: 330px) {
  .nbx { position: absolute; top: 50%; left: 5%; width: 85%; transform: translateY(-50%); }
  .npx { position: relative; width: 100%; height: 0px; padding-bottom: 100%; }
  .npx2 { position: relative; width: 100%; height: 0px; padding-bottom: 70%; }
  .gbx1_1 { padding: 0px; height: 50%; }
}
@media print, screen and (min-width: 1125px) {
  .infoz h3 { font-size: 2.5rem; }
  .rfbtn { display: block; }
  .rfbtn2 { display: none; }
  .ulbnr { display: flex; width: 96%; max-width: 1500px; }
  .ulbnr li { margin: 20px 1% 0px; padding: 0px; flex-basis: 31%; }
  .ulbnr .moji div { font-size: 1.45rem; line-height: 125%; }
  .ulbnr .moji p { font-size: 0.8rem; line-height: 125%; }
}
@media screen and (max-width: 1124px) and (min-width: 768px) {
  .hokenbnr2 { font-size: 0.9rem; line-height: 150%; }
  div.smlss { font-size: 0.7rem; line-height: 150%; }
  .ulbnr { display: flex; max-width: 2600px; }
  .ulbnr li { margin: 20px 1% 0px; padding: 0px; flex-basis: 47%; }
  .ulbnr .moji div { font-size: calc(0.44rem + 2vw); line-height: 125%; }
  .ulbnr .moji p { font-size: calc(0.3728rem + 0.89vw); line-height: 125%; }
}
@media print, screen and (min-width: 900px) {
  .gyomupht { display: flex; }
  .fdsn .pht2 div:first-of-type { position: absolute; top: 0px; left: 0px; width: 84%; max-width: 248px; height: auto; z-index: 5; }
  .fdsn .pht2 div:last-of-type { position: absolute; bottom: 0px; right: 0px; width: 71%; max-width: 208px; height: auto; z-index: 6; }
  .fdsn .bun .min img, .novd4 { display: block; }
  .gbx2 > div.data, .gbx4 > div.data { width: 80%; }
}
@media print, screen and (min-width: 1040px) {
  .gbx2 .btn05, .gbx4 .btn05 { margin: 20px 0px 0px; padding: 20px 0px; width: 80%; max-width: 300px; font-size: 1rem; }
}
@media print {
  .contactz > div > div { margin: 0px 2%; flex-basis: 46%; max-width: 46%; }
  .contactz > div > div:last-of-type { margin: 0px 2%; }
}
