#maintitle2 { font-size: 0.9rem; }
.div01 { flex-flow: wrap; justify-content: space-between; line-height: 225%; }
.div01 .pht { flex-basis: 29%; display: none; }
.div01 .bun { flex-basis: 69%; }
.div01 .bun h3 { margin: 0px; padding: 0px 0px 10px; font-size: 1.6rem; line-height: 150%; }
.div01 .phtf { float: left; margin: 0px 10px 5px 0px; width: 40%; max-width: 180px; }
.mokuji { margin: 15px 0px 0px; padding: 15px 10px 20px 20px; background-color: #f3f2e5; clear: both; }
.mokuji h4 { margin: 0px; padding: 0px; font-size: 0.9rem; line-height: 125%; }
.mokuji ol { margin: 0px; padding: 1px 0px 0px; list-style-type: none; display: flex; flex-flow: wrap; font-size: 0.85rem; line-height: 125%; counter-reset: number 0; }
.mokuji li { margin: 15px 30px 0px 0px; padding: 2px 0px 2px 33px; position: relative; }
.mokuji li:nth-of-type(2n) { margin-right: 0px; }
.mokuji li::before { position: absolute; top: 0px; left: 0px; counter-increment: number 1; content: counter(number); display: block; border-radius: 50%; width: 28px; height: 28px; font-size: 0.8rem; line-height: 26px; text-align: center; }
.mokuji li span { font-size: 1rem; }
.div01 .lnkbtn { padding: 25px 0px 0px; width: 100%; max-width: 400px; font-size: 0.75rem; line-height: 125%; }
.div01 .lnkbtn img { width: 100%; margin-bottom: 8px; }
.prod { margin: 40px 0px 0px; padding: 20px 20px 40px; line-height: 225%; border: 1px solid #999999; position: relative; }
.prod .hata { position: absolute; top: -5px; left: 5px; padding: 10px 0px 0px; width: 70px; text-align: center; }
.prod .hata .m1 { padding: 0px 0px 8px; font-size: 0.6rem; line-height: 100%; color: #c7e99a; }
.prod .hata .n1 { margin: 0px auto; width: 40px; height: 40px; font-size: 1.4rem; line-height: 36px; border: 1px solid #ffffff; border-radius: 50%; }
.prod .hata img { margin: 10px 0px 0px; width: 100%; }
.prod .h3z { padding: 0px 0px 0px 70px; min-height: 70px; }
.prod h3 { margin: 0px; font-size: 1.4rem; padding: 0px 0px 15px; line-height: 150%; border-bottom: 2px dashed #bbbbbb; }
.blk02 { padding: 1px 0px 0px; flex-flow: wrap; justify-content: space-between; }
.blk02 .pht { flex-basis: 30%; margin: 10px auto 0px; }
.blk02 .pht > div { position: relative; height: 0px; padding-bottom: 100%; width: 100%; }
.blk02 .bun { margin: 20px 0px 0px; flex-basis: 65%; }
.blk02 .pht2 { position: relative; flex-basis: 60%; margin: 10px 0px 0px; }
.blk02 .pht2 .pht2_1 { position: relative; height: 0px; padding-bottom: 90%; width: 100%; }
.blk02 .pht2 .pht2_2 { position: absolute; bottom: 10px; right: 15px; width: 100px; font-size: 0.8rem; line-height: 100%; z-index: 5; color: #ffffff; text-align: right; }
.blk02 .pht2 > img { position: absolute; bottom: 10px; left: 5px; width: 35%; max-width: 172px; z-index: 15; }
.blk02 .bun2 { margin: 20px 0px 0px; flex-basis: 36%; }
.flotimg { float: left; margin: 0px 20px 5px 0px; width: 40%; max-width: 200px; display: none; }
.flotimg img { width: 100%; }
.cler { clear: both; }
.prod .ul001 { margin: 0px 0px 0px 30px; padding: 1px 0px 10px; font-size: 0.9rem; line-height: 200%; }
.prod .ul001 li { margin: 0px; padding: 5px 0px 0px; }
.prod .phz { margin: 0px; padding: 5px 0px 0px; list-style-type: none; display: flex; flex-flow: wrap; justify-content: space-between; align-items: flex-start; }
.prod .phz li { margin: 10px 0px 0px; padding: 0px; flex-basis: 48%; }
.prod .phz li > div { position: relative; width: 100%; height: 0px; padding-bottom: 100%; }
.prod .lnkbtn { padding: 15px 0px 0px; }
.prod .nedan { padding: 20px 0px 0px; font-size: 1.1rem; line-height: 175%; font-weight: bold; }
.prod .nedan strong { color: #cc3300; font-size: 1.5rem; }
.prod .nedan span.sml { font-size: 0.9rem; font-weight: normal; }
.prod .nedan span.sml2 { font-size: 1.1rem; }
.prod .lnkbtn a { position: relative; display: block; padding: 20px 0px; width: 100%; max-width: 320px; text-align: center; text-decoration: none; line-height: 100%; }
.prod .lnkbtn a::before { content: ""; position: absolute; top: 50%; right: 3px; width: 0px; height: 0px; border-width: 8px; border-style: solid; border-color: transparent transparent transparent #ffffff; transform: translateY(-50%); }
.prod .lnk { margin: 0px; padding: 20px 0px 10px; list-style-type: none; font-size: 0.9rem; line-height: 100%; display: flex; flex-flow: wrap; justify-content: flex-start; }
.prod .lnk li { position: relative; margin: 10px 20px 0px 0px; padding: 0px 0px 0px 22px; }
.prod .lnk li::before { content: ""; position: absolute; top: 10px; left: 0px; width: 20px; height: 20px; border-radius: 50%; transform: translateY(-50%); }
.prod .lnk li::after { content: ""; position: absolute; top: 10px; left: 5px; width: 5px; height: 5px; border-top: 1px solid #ffffff; border-right: 1px solid #ffffff; transform: translateY(-50%) rotate(45deg); }
.bbc1::before { border-color: #00823e; }
.bgc1, .bfc1::before { background-color: #00823e; color: #ffffff; }
.bbc2::before { border-color: #be913a; }
.bgc2, .bfc2::before { background-color: #be913a; color: #ffffff; }
.blk02 .bun .ist { float: right; margin: 0px 0px 5px 10px; width: 35%; max-width: 120px; }
.wak02 { clear: both; margin: 15px 0px 0px; padding: 10px 15px; border: 2px dashed #339966; }
.wak02 h4 { margin: 0px; padding: 0px 0px 5px; font-size: 0.9rem; line-height: 125%; }
.prod .wak02 .ul001 { padding: 0px; }
.prod .wak02 .ul001 li { padding: 0px; }
.chui { padding: 2px 0px 5px; font-size: 0.7rem; line-height: 150%; text-align: right; }
.h4z { margin: 50px 0px 0px; padding: 8px 0px 8px 15px; font-size: 1.4rem; line-height: 100%; border-left: 8px solid #117744; }
.gosa { padding: 15px 0px 0px 10px; }
.gosa .blk02 { padding-top: 15px; }
.prod .bun2 .phz { padding-top: 15px; }
.chui2 { padding-top: 20px; font-size: 0.8rem; line-height: 150%; }
.chui3 { padding-top: 40px; font-size: 1.1rem; line-height: 225%; }
@media print, screen and (min-width: 360px) {
  .prod .phz { justify-content: flex-start; }
  .prod .phz li { margin-right: 2%; flex-basis: 31%; }
}
@media print, screen and (min-width: 430px) {
  .prod .phz li { margin-right: 2%; flex-basis: 23%; }
}
@media print, screen and (min-width: 550px) {
  .prod .phz li { margin-right: 2%; flex-basis: 18%; }
  .blk02 .pht { max-width: 328px; }
}
@media print, screen and (min-width: 600px) {
  .blk02 .pht { display: none; }
  .blk02 .pht2 .pht2_1 { padding-bottom: 66%; }
  .blk02 .pht2 > img { left: 10px; width: 27%; }
  .flotimg { display: block; }
  .blk02 .bun .ist { width: 20%; }
  .cler .bun { margin-top: 0px; }
  .blk02 .bun .ul001_2 { padding-top: 5px; list-style-type: none; font-size: 1rem; line-height: 200%; }
  .blk02 .bun .ul001_2 li::before { content: "■"; color: #117744; margin: 0px 8px 0px 2px; }
}
@media print, screen and (min-width: 768px) {
  .prod .phz li { margin-right: 10px; flex-basis: 108px; }
  .div01 .phtf { margin-right: 20px; }
  .prod .hata { width: 100px; }
  .prod .hata .m1 { font-size: 0.7rem; line-height: 100%; }
  .prod .hata .n1 { width: 60px; height: 60px; font-size: 2rem; line-height: 56px; }
  .prod .h3z { padding: 0px 0px 0px 110px; min-height: 95px; }
  .prod h3 { font-size: 1.6rem; padding: 0px 0px 20px; line-height: 175%; }
}
@media print, screen and (min-width: 960px) {
  .blk02 { display: flex; }
  .blk02 .pht { display: block; margin: 10px 0px 0px; }
  .blk02 .pht2 .pht2_1 { height: 100%; padding-bottom: 0px; }
  .blk02 .pht2 > img { bottom: -20px; }
  .blk02 .bun, .blk02 .bun2 { margin: 10px 0px 0px; }
  .prod .phz li { margin-right: 2%; flex-basis: 18%; }
  .prod .bun2 .phz li { margin-right: 2%; flex-basis: 31%; max-width: 108px; }
  .gosa { padding: 15px 0px 0px 28px; }
  .flotimg { display: none; }
  .blk02 .bun .ist { width: 40%; }
  .cler .bun { margin-top: 10px; }
  .blk02 .bun .ul001_2 { padding-top: 1px; list-style-type: disc; font-size: 0.9rem; line-height: 200%; }
  .blk02 .bun .ul001_2 li::before { display: none; }
}
@media print, screen and (min-width: 1070px) {
  .div01 { display: flex; }
  .div01 .pht { display: block; }
  .div01 .bun { max-width: 776px; }
  .div01 .phtf { display: none; }
  .prod .phz li { margin-right: 10px; flex-basis: 108px; }
  .prod .bun2 .phz li { margin-right: 2%; flex-basis: 31%; max-width: 108px; }
  .blk02 .pht2 { max-width: 684px; }
}
@media print, screen and (min-width: 1270px) {
  .div01 .pht { max-width: 330px; }
}
@media print {
  .prod .phz li { flex-basis: 78px; }
}
