@charset "UTF-8";

html{ width:100%; height:100%; font-size:17px; line-height:200%; }
body{
  margin:0; padding:0; width:100%; height:100%; text-align:left; color:#222222; background-color:#ffffff; overflow-y:scroll; overflow-x:hidden;
  font-family:"Noto Sans CJK JP Subset","游ゴシック体",YuGothic,"游ゴシック Medium","Yu Gothic Medium","メイリオ",sans-serif; -webkit-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;
}
a{ color:#222222; text-decoration:underline; }
.alnk a{ color:#002299; }

form{ margin:0; padding:0; }
sup{ font-size:0.7rem; line-height:100%; }
header, nav, article, aside, section, footer, picture{ display:block; margin:0; padding:0; } 
img,svg{ display:block; max-width:100%; height:auto; border-width:0; border-color:none; }
iframe{ max-width:100%; border:0; }
p{ display:block; margin:0; padding:0; }
table{ border-collapse:collapse; margin:0; padding:0; font-size:0.94rem; line-height:200%; box-sizing:border-box; }
th,td{ box-sizing:border-box; border-color:#999; }
.relv{ position:relative; }
.wrapper{ margin:0 auto; padding:0; width:96%; max-width:1180px; }
.nwk{ margin:0 auto; padding:20px 0 60px; width:96%; max-width:1180px; }
.nwk2{ margin:0 auto; padding:20px 0 30px; width:96%; max-width:1180px; }
.contents{ padding:0 5px 10px; min-height:400px; }
.printtrun{ page-break-before:always; }
.main section{ padding-top:1px; }
.mcolor { background-color:#4BA373; color:#fff; }
.mcolor a{ color:#fff; }
.sbcolor { background-color:#4BA373; color:#fff; }
.sbcolor a{ color:#fff; }
.accolor { background-color:#eeefee; }
.bfcolor::before{ background-color:#459e6e; color:#fff; }
.afcolor::after{ background-color:#459e6e; color:#fff; }
.bfcolor2::before{ background-color:#459e6e; color:#fff; }
.afcolor2::after{ background-color:#459e6e; color:#fff; }
.bfcolor3::before{ background-color:#4BA373; color:#fff; }
.bgcolor { background-color:#eff7e7; }
.bgcolor2 { background-color:#f5f3e5; }
.bgcolor3 { background-color:#f5f3e5; }
.nexcolor{ background-color:#4BA373; color:#fff; }
.bordercolor,.bfborder:before,.bfborder:after{ border-color:#4BA373; }
.bordercolor2,.bfborder2:before,.bfborder2:after{ border-color:#33885a; }
.bordercolor1{ border-color:#4BA373; }
.mojicolor{ color:#1f6941; }
.scroll-top{ background-color:#33885a; }
.skkcolor:before{ border-color: transparent transparent transparent #4BA373; }
.skkcolora:after{ border-color: transparent transparent transparent #4BA373; }
.skkcolora2::after{ border-color: #33885a transparent transparent; }
span.red{ color:#c30; }
#maintitle { position:relative; margin: 0px 0 25px; padding: 20px 5px 22px; width: 100%; font-size: 1.4rem; line-height: 150%; box-sizing:border-box;
border-bottom:3px double #33885a; border-top:3px double #33885a; }

.h1z { width:90%; max-width: 300px; z-index:10; }
.h1z a{ display:block; position:relative; width:100%; color:#222; text-decoration:none; }
.h1z a:hover{ color:#222; }
.h1z img{ position: absolute; top:-1px; left:0; width:54px; }
.h1z h1,.h1z .mo { margin: 0px; padding: 0px 0 0px 63px; font-size: 0.9rem; line-height: 140%; font-weight:bold; }
.h1z h1 .big,.h1z .mo .big { font-size:1.3rem; line-height:120%; }

article { padding:0 0 60px; }
aside{ padding-bottom:25px; line-height:180%; box-sizing:border-box; }
aside .asidebox{ margin-top:40px; padding:5px 15px 25px; border:3px solid #ddd; }
.nwk2 aside .asidebox:first-of-type{ margin-top:6px; }
aside .fixed{ margin-bottom:0; padding-bottom:30px; }
.asidebox h3{ margin:0; padding:11px 3px 14px; font-size:0.9rem; line-height:150%; border-bottom:3px solid #4BA373; }
.asidebox h3.lnk{ padding:0; }
.asidebox h3 a{ position:relative; display:block; padding:11px 12px 14px 3px; text-decoration:none; }
.asidebox h3 a:after{ content:""; position:absolute; top:50%; right:0px; width:0; height:0; border-width:6px; border-style:solid; border-color:transparent transparent transparent #4BA373; transform:translateY(-50%); }
.asidebox ul{ margin:0; padding:5px 0; list-style-type:none; }
.asidebox li{ margin:0; padding:10px 5px 11px; color:#999; border-bottom:1px dashed #999; }
.asidebox .ilink_wak{ display:flex; flex-flow:row wrap; justify-content:space-between; align-items:flex-start; }
.asidebox .ilink_img{ position:relative; width:80px; }
.asidebox .waksen{ outline:1px solid #ddd; }
.asidebox li p{ flex:1; padding-left:15px; box-sizing:border-box; }
.asidebox li p.nopad{ padding-left:0; }
.asidebox li a.ilink_wak{ text-decoration:none; }
.asidebox span.ud{ font-size:0.74rem; line-height:100%; }
.plnk ul{ padding:0; }
.plnk li { position: relative; margin:0; padding:0; border-width:0 0 1px; border-style:dashed; }
.plnk li a,.plnk li.hit{ position: relative; display:block; padding: 11px 10px 11px 26px; text-decoration:none; }
.plnk li a::before,.plnk li.hit::before{ position: absolute; top: 18px; left: 3px; width: 15px; height: 15px; content: ""; border-width:1px; border-style:solid; border-radius: 50%; }
.plnk li a::after,.plnk li.hit::after { position: absolute; top: 23px; left: 7px; width: 5px; height: 5px; content: ""; border-width:2px 2px 0 0; border-style:solid; transform: rotate(45deg); }
.asidebox .lnkinfo{ padding:7px 0 0; text-align:right; font-size:0.74rem; line-height:100%; }

.blkbg{ background-color:#000; color:#fff; }
.blkbg a{ color:#ff0; }
.blkbg .mojicolor,.blkbg .mojicolor2,.blkbg span.red{ color:#fff; }
.blkbg .mcolor,.blkbg .sbcolor,.blkbg .accolor { background-color:#333; color:#fff; }
.blkbg .bgcolor,.blkbg .bgcolor2,.blkbg .bgcolor3{ background-color:#222; color:#fff; }
.blkbg .scroll-top,.blkbg .nexcolor{ background-color:#444; }
.blkbg .bordercolor,.blkbg .bfborder:before,.blkbg .bfborder:after,.blkbg .bordercolor1{ border-color:#999; }
.blkbg .bordercolor2,.blkbg .bfborder2:before,.blkbg .bfborder2:after{ border-color:#999; }
.blkbg .bfcolor::before,.blkbg .bfcolor2::before,.blkbg .bfcolor3::before{ background-color:#777; }
.blkbg .skkcolor:before,.blkbg .skkcolora:after,.blkbg .skkcolora2:after{ border-left-color: #fff; }
.blkbg input[type="text"],.blkbg textarea{ background-color:transparent; color:#fff; }
.blkbg .asidebox h3 a:after{ border-left-color:#ff0; }
.blkbg aside .asidebox,.blkbg .asidebox li,.blkbg .asidebox h3,.blkbg #maintitle{ border-color:#555; }

.bluebg{ background-color:#00f; color:#ff0; }
.bluebg a,.bluebg span.red{ color:#ff0; }
.bluebg .mojicolor,.bluebg .mojicolor2{ color:#fff; }
.bluebg .mcolor,.bluebg .sbcolor,.bluebg .accolor { background-color:#00e; color:#ff0; }
.bluebg .bgcolor,.bluebg .bgcolor2,.bluebg .bgcolor3,.bluebg .bfcolor3::before{ background-color:#00e; color:#ff0; }
.bluebg .scroll-top{ background-color:#00c; }
.bluebg input[type="text"],.bluebg textarea{ background-color:transparent; color:#ff0; }
.bluebg .asidebox h3 a:after{ border-left-color:#ff0; }
.bluebg .bordercolor,.bluebg .bfborder:before,.bluebg .bfborder:after,.bluebg .bordercolor1{ border-color:rgba(255,255,255,0.5); }
.bluebg .bordercolor2,.bluebg .bfborder2:before,.bluebg .bfborder2:after{ border-color:rgba(255,255,255,0.5); }
.bluebg .bfcolor::before,.bluebg .bfcolor2::before,.bluebg .bfcolor3::before{ background-color:rgba(255,255,255,0.3); }
.bluebg aside .asidebox,.bluebg .asidebox li,.bluebg .asidebox h3,.bluebg #maintitle{ border-color:#999; }

.blkbg .h1z a,.bluebg .h1z a{ color:#ff0; text-decoration:none; }
.blkbg .plnk a,.bluebg .plnk a{ text-decoration:underline; }
.blkbg .skkcolor:before,.blkbg .skkcolora:after,.blkbg .skkcolora2:after{ border-left-color: #fff; }

.blkbg .ol01 > li::after { border-color: #999999 transparent transparent; }
.bluebg .ol01 > li::after { border-color: #ffff00 transparent transparent; }

.bigfont .h1z h1 .big,.bigfont .h1z .mo .big { font-size:25px; line-height:120%; }
@media print,screen and (min-width: 370px) {
  .h1z h1 .big,.h1z .mo .big { font-size:1.4rem; line-height:120%; }
}
@media print,screen and (min-width: 768px) {
  html{ font-size:18px; line-height:225%; }
  .plnk li a::before,.plnk li.hit::before{ top: 19px; }
  .plnk li a::after,.plnk li.hit::after { top: 24px; }
}

@media print,screen and (min-width: 900px) {
  .nwk { padding:25px 0 60px; }
  .nwk2 { padding:10px 0 60px; display:flex; flex-flow:row wrap; justify-content:space-between; }
  article { padding:15px 0 30px; flex-basis:68%; max-width:802px; }
  .nwk2 aside { padding:5px 0px 0px 0; flex-basis:26%; max-width:300px; font-size:0.9rem; line-height:150%; }
  .nwk2 aside .fixed{ position: sticky; top: 20px; z-index: 1; }
  .asidebox .ilink_img{ width:50px; }
  .asidebox span.font_sans{ font-size:0.75rem; line-height:100%; }
  .nwk2 .plnk li a::before,.nwk2 .plnk li.hit::before{ top: 15px; }
  .nwk2 .plnk li a::after,.nwk2 .plnk li.hit::after { top: 20px; }
  #maintitle { padding: 30px 5px 32px; font-size: 1.6rem; line-height: 150%; }
  .nwk aside { font-size:0.9rem; line-height:150%; }
  .nwk .plnk ul{ padding:10px 0 0; display:flex; flex-flow:wrap; }
  .nwk .plnk li { margin:0px 15px 0 0; border-width:0; }
  .nwk .plnk li a,.nwk .plnk li.hit{ padding: 6px 10px 6px 26px; }
  .nwk .plnk li a::before,.nwk .plnk li.hit::before{ top: 10px; }
  .nwk .plnk li a::after,.nwk .plnk li.hit::after { top: 15px; }
}
@media print,screen and (min-width: 1000px) {
  .asidebox .ilink_img{ width:80px; }
}
@media print{
  .main{ width:1000px; }
  .nwk2 { display:block; padding-bottom:60px; }
  article { padding-top:30px; max-width:1000px; }
  aside { display:none; }
}



