@charset "UTF-8";
.grecaptcha-badge { visibility: hidden; }
.swiper-button-prev, .swiper-button-next{color: #8FC31F;}
.swiper-pagination-bullet-active { background: #8FC31F;}
.swiper-button-prev:after, .swiper-button-next:after{font-size:1.5em; font-weight:bold;}
.swiper-container-horizontal>.swiper-pagination-bullets{bottom:5px;}
.swiper-slide{ height: auto; }
.swiper-in{ height: 100%; }

/*================================================
 *  table
 ================================================*/
table:not([class]) {
	width:100%;
	margin: 0 auto 1em;
	border-collapse:collapse;
	border:1px solid #999;
	background:#fff;
        table-layout: fixed;
}
table:not([class]) th, table:not([class]) td {
　 　border: none;
    display: block;
    width: 100%;
    padding:10px;
}
table:not([class]) th {
	text-align:center;
	vertical-align:middle;
	background:#eee;
}
table:not([class]) td {
	text-align:left;
}
.last td:last-child {
    border-bottom: solid 1px #999;
    width: 100%;
}

@media print, screen and (min-width: 768px) {
table:not([class])  {width:100%;}
table:not([class]) th, table:not([class]) td{display: table-cell; border:1px solid #999;}
table:not([class]) th  {width: 25%;}
table:not([class]) td{width: 75%;}
}

/*-----------------------------------------------------------------------------------------------t1--*/
table.t1 {width:100%; margin:1.5em auto 2.5em; word-break:break-all; table-layout:fixed; display:table;}
table.t1 th, table.t1 td{padding:1em 0.5em; border:1px solid #999;}
table.t1 th{background-color:#eee; color:#333; text-align:center; vertical-align: middle;}
table.t1 td{background-color:#fff; color:#333; text-align:left;}

/*-----------------------------------------------------------------------------------------------tscr--*/
table.tscr {
  display: block;
}
@media only screen and (max-width: 768px)
{
table.tscr {
  display: block;
  overflow-x: scroll;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
}
}

table.tscr tbody {
  width: 100%;
  margin:1.5em auto 2.5em;
  display:table;
  word-break:break-all;
}
table.tscr th, table.tscr td{ width:11em; padding:1em 0.5em; border:0.05em solid #999; text-align:center; vertical-align:middle;}
table.tscr th{background-color:#eee; color:#333;}
table.tscr td{background-color:#ffffff; color:#333; min-width:160px;}

tbody.tdl td{text-align:left;}
tbody.tdr td{text-align:right;}
tbody.tdc td{text-align:center;}

/*------------------------------------------------------------------------------------------------ol ul-*/
ul.sitemap_disp_level_0, section#contentsec ul:not([class]), section#contentsec ol:not([class]),
ol.o0, ol.o1, ol.o2, ol.o3, ol.o1b, ol.o2b, ol.o3b,
ul.u1, ul.u2, ul.u3, ul.u4, ul.u5, ul.u6, ul.u7, ul.u8, ul.u9, ul.u10, ul.u11,
ul.u1b, ul.u2b, ul.u3b, ul.u4b, ul.u5b, ul.u6b, ul.u7b, ul.u8b, ul.u9b, ul.u10b, ul.u11b{
    -webkit-margin-before: 0em;
    -webkit-margin-after: 0em;
    -webkit-margin-start: 0px;
    -webkit-margin-end: 0px;
    -webkit-padding-start: 0px;
    -moz-margin-before: 0em;
    -moz-margin-after: 0em;
    -moz-margin-start: 0px;
    -moz-margin-end: 0px;
    -moz-padding-start: 0px;
    list-style-position: inside;
    margin:0 0 0 0.5em;
    padding:0 0.5em 0 1.5em;
    text-indent: 1.5em;
    display: table-cell;
    font-weight:500;
}
section#contentsec ul:not([class]), section#contentsec ol:not([class]){padding-bottom:1em;}
section#contentsec ul.toc_list li ul:not([class]){padding-bottom:0em;}

/*------------------------------------------------
　　ol 
------------------------------------------------*/
section#contentsec ol:not([class]), .o0, .o0b {
 counter-reset: li;
 list-style: none;
}
section#contentsec ol:not([class]) > li, .o0 > li, .o0b > li {
 position: relative;
 text-indent:0em;
 margin-left: -1.8em;
 padding-left: 2.2em;
 padding-bottom: 1em;
 line-height: 1.5;
}
section#contentsec ol:not([class]) > li:before, .o0 > li:before {
 counter-increment: li;
 content: counter(li);
 position: absolute;
 left: 0.2em;
 width: 1.4em;
 height: 1.4em;
 line-height: 1.5;
 color: #fff;
 text-align: center;
 vertical-align: baseline;
 background: #8FC31F;
}
.o0b > li:before {
 counter-increment: li;
 content: counter(li);
 position: absolute;
 left: 0.2em;
 width: 1.4em;
 height: 1.4em;
 line-height: 1.5;
 color: #fff;
 text-align: center;
 vertical-align: baseline;
 background: #7E501E;
}
.o1, .o1b {
 counter-reset: li;
 list-style: none;
}
.o1 > li, .o1b > li {
 position: relative;
 text-indent:0em;
 margin-left: -2em;
 padding-left: 2.2em;
 padding-bottom: 1.5em;
 line-height: 1.5;
}
.o1 > li:before {
 counter-increment: li;
 content: counter(li);
 position: absolute;
 left: 0.2em;
 width: 1.5em;
 height: 1.5em;
 line-height: 1.5;
 border-radius: 50%;
 color: #fff;
 text-align: center;
 vertical-align: baseline;
 background: #8FC31F;
}
.o1b > li:before {
 counter-increment: li;
 content: counter(li);
 position: absolute;
 left: 0.2em;
 width: 1.5em;
 height: 1.5em;
 line-height: 1.5;
 border-radius: 50%;
 color: #fff;
 text-align: center;
 vertical-align: baseline;
 background: #7E501E;
}
.o2, .o2b {
 counter-reset: li;
 list-style: none;
}
.o2 > li, .o2b > li {
 position: relative;
 text-indent:0em;
 margin-left: -2em;
 padding-left: 2.6em;
 padding-bottom: 1.5em;
}
.o2 > li:before {
 counter-increment: li;
 content: counter(li);
 position: absolute;
 left: 0;
 width: 1em;
 text-align: right;
 font-weight: bold;
 color: #8FC31F;
}
.o2b > li:before {
 counter-increment: li;
 content: counter(li);
 position: absolute;
 left: 0;
 width: 1em;
 text-align: right;
 font-weight: bold;
 color: #7E501E;
}
.o2 > li:after {
 content: "位";
 position: absolute;
 left: 1.2em;
 top:0;
 font-weight: bold;
 color: #8FC31F;
}
.o2b > li:after {
 content: "位";
 position: absolute;
 left: 1.2em;
 top:0;
 font-weight: bold;
 color: #7E501E;
}
.o3, .o3b {
 counter-reset: li;
 list-style: none;
}
.o3 > li, .o3b > li {
 position: relative;
 text-indent:0em;
 margin-left: -2em;
 padding-left: 4em;
 padding-bottom: 1.5em;
 line-height: 1.5;
}
.o3 > li:before {
 content: "Point";
 position: absolute;
 left: 0;
 padding: 0 0 0 0.2em;
 text-align: right;
 font-weight: bold;
 background-color: #999999;
 color: #8FC31F;
}
.o3b > li:before {
 content: "Point";
 position: absolute;
 left: 0;
 padding: 0 0 0 0.2em;
 text-align: right;
 font-weight: bold;
 background-color: #999999;
 color: #7E501E;
}
.o3 > li:after {
 counter-increment: li;
 content: counter(li);
 position: absolute;
 left: 2.6em;
 top:0;
 padding: 0 0.2em;
 font-weight: bold;
 background-color: #999999;
 color: #8FC31F;
}
.o3b > li:after {
 counter-increment: li;
 content: counter(li);
 position: absolute;
 left: 2.6em;
 top:0;
 padding: 0 0.2em;
 font-weight: bold;
 background-color: #999999;
 color: #7E501E;
}

/*------------------------------------------------
   ul li
------------------------------------------------*/
ul.u1 li, ul.u2 li, ul.u3 li, ul.u4 li, ul.u5 li, ul.u6 li, ul.u7 li, ul.u8 li, ul.u9 li, ul.u10 li, ul.u11 li,
ul.u1b li, ul.u2b li, ul.u3b li, ul.u4b li, ul.u5b li, ul.u6b li, ul.u7b li, ul.u8b li, ul.u9b li, ul.u10b li, ul.u11b li,
ul.u0 li, ul.ub li, section#contentsec ul.sitemap_disp_level_0 li, section#contentsec ul.sitemap_disp_level_0 li ul:not([class]) li {
 list-style-type:none; line-height: 1.5; padding-bottom:0.5em; text-indent: -1.2em;
}
section#contentsec ul:not([class]) li{
 list-style-type:none; line-height: 1.5; padding-bottom:1.5em; text-indent: -1.2em;
}
section#contentsec ul.toc_list li ul:not([class]) li{
padding-bottom:0em;
}
ul.sitemap_disp_level_0 li:before, section#contentsec ul:not([class]) li:before, ul.u1 li:before, ul.u2 li:before, ul.u3 li:before, ul.u4 li:before, ul.u5 li:before, ul.u6 li:before, ul.u7 li:before, ul.u8 li:before, ul.u9 li:before, ul.u10 li:before, ul.u11 li:before, ul.u0 li:before{
 line-height:1.5; font-family: "Font Awesome 5 Free"; font-weight:bold; color:#8FC31F; padding-right:1.5em; margin-right: -1.2em;
}
ul.u1b li:before, ul.u2b li:before, ul.u3b li:before, ul.u4b li:before, ul.u5b li:before, ul.u6b li:before, ul.u7b li:before, ul.u8b li:before, ul.u9b li:before, ul.u10b li:before, ul.u11b li:before, ul.u0b li:before{
 line-height: 1.5; font-family: "Font Awesome 5 Free"; color:#7E501E; padding-right:1.5em; margin-right: -1.2em;
}
ul.sitemap_disp_level_0 li:before{content: "\f058" !important; font-weight:600;}
section#contentsec ul li.googlelink:before{content: "\f3c5"; font-weight:600;}
section#contentsec ul li.facebooklink:before {content: "\f082"; font-weight:400;}
section#contentsec ul li.instagramlink:before {content: "\f16d"; font-weight:400;}
section#contentsec ul li.twitterlink:before {content: "\f081"; font-weight:400;}
section#contentsec ul:not([class]) li:before {content: "\f14a" !important; font-weight:600;}
ul.u1 li:before, ul.u1b li:before, ul.u0 li:before, ul.u0b li:before {content: "\f00c" !important; font-weight:600;}
ul.u2 li:before, ul.u2b li:before {content: "\f14a" !important; font-weight:400;}
ul.u3 li:before, ul.u3b li:before {content: "\f14a" !important; font-weight:600;}
ul.u4 li:before, ul.u4b li:before {content: "\f058" !important; font-weight:400;}
ul.u5 li:before, ul.u5b li:before {content: "\f058" !important; font-weight:600;}
ul.u6 li:before, ul.u6b li:before {content: "\f00d" !important; font-weight:600;}
ul.u7 li:before, ul.u7b li:before {content: "\f0a4" !important; font-weight:600;}
ul.u8 li:before, ul.u8b li:before {content: "\f091" !important; font-weight:600;}
ul.u9 li:before, ul.u9b li:before {content: "\f201" !important; font-weight:600;}
ul.u10 li:before, ul.u10b li:before {content: "\f080" !important; font-weight:600;}
ul.u11 li:before, ul.u11b li:before {content: "\f200" !important; font-weight:600;}

li.lin:before{display:none; margin-top:0.25em; margin-left:-0.4em;}

.lista, .list1, .listy, .listm, .listl, .listf, .listi, .listt, .listw {line-height:1.5; margin:0.5em 0.5em 1em; padding:0 0 0 1em; vertical-align:text-top; text-indent: -1em;}
.lista:before, .list1:before, .listm:before, .listw:before {padding-right:0.25em; vertical-align:baseline; font-family: "Font Awesome 5 Free";}
.listy:before, .listl:before, .listf:before, .listi:before, .listt:before {padding-right:0.25em; vertical-align:baseline; font-family:'Font Awesome 5 Brands';}

.lista:before {content: "\f51e"; font-weight:600; color:#e6b422;}
.list1:before {content: "\f14a"; font-weight:600; color:#1f8fc3;}
.listy:before {content: "\f167"; font-weight:400; color:#fc0d1c;}
.listl:before {content: "\f3c0"; font-weight:400; color:#00b900;}
.listf:before {content: "\f082"; font-weight:400; color:#3b75d4;}
.listi:before {content: "\f16d"; font-weight:400; color:#f13f79;}
.listt:before {content: "\f081"; font-weight:400; color:#55acee;}
.listm:before {content: "\f3c5"; font-weight:900; color:#ef3f56;}
.listw:before {content: "\f109"; font-weight:900; color:#6cc655;}

ul.toc_list li ul{padding-left:2.5em !important;}
ul.toc_list li ul li::before{display:none;}

/*------------------------------------------------
　important
------------------------------------------------*/
.righta {text-align:right !important;}
.lefta {text-align:left !important;}
.centera {text-align:center !important;}
.rightb {display:block !important; float:right !important;}
.leftb {display:block !important; float:left !important;}
.centerb {display:block !important; float:none; margin:0 auto !important;}
.rightf {display:block !important; float:none !important; vertical-align:top;}
.leftf {display:block !important; float:none !important; vertical-align:top;}
@media print, screen and (min-width: 1024px)
{
.rightf {float:right !important;}
.leftf {float:left !important;}
}
#feed{
    height: 11em;
    overflow-y: scroll;
    overflow-x: hidden;
}
.naname {
    transform: rotate(-3deg);
    -moz-transform: rotate(-3deg);
    -webkit-transform: rotate(-3deg);
    padding-left: 0.45em;
    margin-bottom:0.5em;
    margin-top:0.2em;
}
.nanameb {
    transform: rotate(3deg);
    -moz-transform: rotate(3deg);
    -webkit-transform: rotate(3deg);
    padding-left: 0.45em;
    margin-bottom:0.5em;
    margin-top:0.2em;
}
.fsg{font-family:HGP行書体;}
.tshadow{
text-shadow:
    white 0.1em 0px 0.1em, white -0.1em 0px 0.1em,
    white 0px -0.1em 0.1em, white -0.1em 0px 0.1em,
    white 0.1em 0.1em 0.1em, white -0.1em 0.1em 0.1em,
    white 0.1em -0.1em 0.1em, white -0.1em -0.1em 0.1em,
    white 0.05em 0.1em 0.1em, white -0.05em 0.1em 0.1em,
    white 0.05em -0.1em 0.1em, white -0.05em -0.1em 0.1em,
    white 0.1em 0.05em 0.1em, white -0.1em 0.05em 0.1em,
    white 0.1em -0.05em 0.1em, white -0.1em -0.05em 0.1em,
    white 0.05em 0.05em 0.1em, white -0.05em 0.05em 0.1em,
    white 0.05em -0.05em 0.1em, white -0.05em -0.05em 0.1em;
}
.tshadowb{
text-shadow:
    black 0.1em 0px 0.1em, black -0.1em 0px 0.1em,
    black 0px -0.1em 0.1em, black -0.1em 0px 0.1em,
    black 0.1em 0.1em 0.1em, black -0.1em 0.1em 0.1em,
    black 0.1em -0.1em 0.1em, black -0.1em -0.1em 0.1em,
    black 0.05em 0.1em 0.1em, black -0.05em 0.1em 0.1em,
    black 0.05em -0.1em 0.1em, black -0.05em -0.1em 0.1em,
    black 0.1em 0.05em 0.1em, black -0.1em 0.05em 0.1em,
    black 0.1em -0.05em 0.1em, black -0.1em -0.05em 0.1em,
    black 0.05em 0.05em 0.1em, black -0.05em 0.05em 0.1em,
    black 0.05em -0.05em 0.1em, black -0.05em -0.05em 0.1em;
}
.pr1{background: linear-gradient(transparent 75%, #ffff00 5%); font-weight:bold;}
.pr3{text-decoration: underline 0.2em #ff0000 wavy; text-underline-offset:0.1em; font-weight:bold;}
.pr2{background: linear-gradient(transparent 75%, #ff0000 5%); font-weight:bold;}


.bgn{background: unset !important;}
.bg0{background: #ffffff !important;}
.bg1{background: #FF9900 !important;}
.bg2{background: #8FC31F !important;}
.bg3{background: #7E501E !important;}
.bg4{background:#1F8EC2 !important;}
.bgb{background: #f4f5f2 !important;}
.bgbb{background: #fffff0 !important;}
.bgr{background: #ff0000 !important;}
.cl0{color: #ffffff !important; font-weight:600;}
.cl1{color: #FF9900 !important; font-weight:600;}
.cl2{color: #8FC31F !important; font-weight:600;}
.cl3{color: #7E501E !important; font-weight:600;}
.cl4{color:#1F8EC2 !important; font-weight:600;}
.clr{color: #ff0000 !important; font-weight:600;}

.cly {color:#fc0d1c !important; font-weight:600;}
.cll {color:#00b900 !important; font-weight:600;}
.clm {color:#ef3f56 !important; font-weight:600;}
.cle {color:#ef3f56 !important; font-weight:600;}
.clw {color:#ffc107 !important; font-weight:600;}
.clf {color:#3b75d4 !important; font-weight:600;}
.clt {color:#55acee !important; font-weight:600;}
.cli {color:#f13f79 !important; font-weight:600;}
.clh {color:#f13f79 !important; font-weight:600;}
.fa-fw {
    text-align: left;
    width: 1.4em !important;
}
.fs500{font-size:500% !important;}
.fs400{font-size:400% !important;}
.fs300{font-size:300% !important;}
.fs290{font-size:290% !important;}
.fs280{font-size:280% !important;}
.fs270{font-size:270% !important;}
.fs260{font-size:260% !important;}
.fs250{font-size:250% !important;}
.fs240{font-size:240% !important;}
.fs230{font-size:230% !important;}
.fs220{font-size:220% !important;}
.fs210{font-size:210% !important;}
.fs200{font-size:200% !important;}
.fs190{font-size:190% !important;}
.fs180{font-size:180% !important;}
.fs170{font-size:170% !important;}
.fs160{font-size:160% !important;}
.fs150{font-size:150% !important;}
.fs140{font-size:140% !important;}
.fs130{font-size:130% !important;}
.fs120{font-size:120% !important;}
.fs110{font-size:110% !important;}
.fs100{font-size:100% !important;}
.fs90{font-size:90% !important;}
.fs80{font-size:80% !important;}
.fs70{font-size:70% !important;}
.fs60{font-size:60% !important;}
.fs50{font-size:50% !important;}
.fs40{font-size:40% !important;}
.fs30{font-size:30% !important;}
.fs20{font-size:20% !important;}
.fs10{font-size:10% !important;}
.lh2{line-height:2 !important;}
.lh15{line-height:1.5 !important;}
.lh1{line-height:1 !important;}
.lh05{line-height:0.5 !important;}
.lh0{line-height:0 !important;}
.pdxxx{padding:3em !important;}
.pdxx{padding:2.5em !important;}
.pdx{padding:1.5em !important;}
.pdm{padding:1em !important;}
.pds{padding:0.5em !important;}
.pdss{padding:0.25em !important;}
.pdn{padding:0 !important;}
.pdlrxxx{padding-left:3em !important; padding-right:3em !important;}
.pdlrxx{padding-left:2.5em !important; padding-right:2.5em !important;}
.pdlrx{padding-left:1.5em !important; padding-right:1.5em !important;}
.pdlrm{padding-left:1em !important; padding-right:1em !important;}
.pdlrs{padding-left:0.5em !important; padding-right:0.5em !important;}
.pdlrss{padding-left:0.25em !important; padding-right:0.25em !important;}
.pdlrn{padding-left:0em !important; padding-right:0em !important;}
.pdlxxx{padding-left:3em !important;}
.pdlxx{padding-left:2.5em !important;}
.pdlx{padding-left:1.5em !important;}
.pdlm{padding-left:1em !important;}
.pdls{padding-left:0.5em !important;}
.pdlss{padding-left:0.25em !important;}
.pdln{padding-left:0em !important;}
.pdrxxx{padding-right:3em !important;}
.pdrxx{padding-right:2.5em !important;}
.pdrx{padding-right:1.5em !important;}
.pdrm{padding-right:1em !important;}
.pdrs{padding-right:0.5em !important;}
.pdrss{padding-right:0.25em !important;}
.pdrn{padding-right:0em !important;}
.pdtbxxx{padding-top:3em !important; padding-bottom:3em !important;}
.pdtbxx{padding-top:2.5em !important; padding-bottom:2.5em !important;}
.pdtbx{padding-top:1.5em !important; padding-bottom:1.5em !important;}
.pdtbm{padding-top:1em !important; padding-bottom:1em !important;}
.pdtbs{padding-top:0.5em !important; padding-bottom:0.5em !important;}
.pdtbss{padding-top:0.25em !important; padding-bottom:0.25em !important;}
.pdtbn{padding-top:0em !important; padding-bottom:0em !important;}
.pdtxxx{padding-top:3em !important;}
.pdtxx{padding-top:2.5em !important;}
.pdtx{padding-top:1.5em !important;}
.pdtm{padding-top:1em !important;}
.pdts{padding-top:0.5em !important;}
.pdtss{padding-top:0.25em !important;}
.pdtn{padding-top:0 !important;}
.pdbxxx{padding-bottom:3em !important;}
.pdbxx{padding-bottom:2.5em !important;}
.pdbx{padding-bottom:1.5em !important;}
.pdbm{padding-bottom:1em !important;}
.pdbs{padding-bottom:0.5em !important;}
.pdbss{padding-bottom:0.25em !important;}
.pdbn{padding-bottom:0 !important;}
.mra{margin:0 auto !important;}
.mrxxx{margin:3em !important;}
.mrxx{margin:2.5em !important;}
.mrx{margin:1.5em !important;}
.mrm{margin:1em !important;}
.mrs{margin:0.5em !important;}
.mrss{margin:0.25em !important;}
.mrn{margin:0 !important;}
.mrlrxxx{margin-left:3em !important; margin-right:3em !important;}
.mrlrxx{margin-left:2.5em !important; margin-right:2.5em !important;}
.mrlrx{margin-left:1.5em !important; margin-right:1.5em !important;}
.mrlrm{margin-left:1em !important; margin-right:1em !important;}
.mrlrs{margin-left:0.5em !important; margin-right:0.5em !important;}
.mrlrss{margin-left:0.25em !important; margin-right:0.25em !important;}
.mrlrn{margin-left:0em !important; margin-right:0em !important;}
.mrlxxx{margin-left:3em !important;}
.mrlxx{margin-left:2.5em !important;}
.mrlx{margin-left:1.5em !important;}
.mrlm{margin-left:1em !important;}
.mrls{margin-left:0.5em !important;}
.mrlss{margin-left:0.25em !important;}
.mrln{margin-left:0em !important;}
.mrrxxx{margin-right:3em !important;}
.mrrxx{margin-right:2.5em !important;}
.mrrx{margin-right:1.5em !important;}
.mrrm{margin-right:1em !important;}
.mrrs{margin-right:0.5em !important;}
.mrrss{margin-right:0.25em !important;}
.mrrn{margin-right:0em !important;}
.mrtbxxx{margin-top:3em !important; margin-bottom:3em !important;}
.mrtbxx{margin-top:2.5em !important; margin-bottom:2.5em !important;}
.mrtbx{margin-top:1.5em !important; margin-bottom:1.5em !important;}
.mrtbm{margin-top:1em !important; margin-bottom:1em !important;}
.mrtbs{margin-top:0.5em !important; margin-bottom:0.5em !important;}
.mrtbss{margin-top:0.25em !important; margin-bottom:0.25em !important;}
.mrtbn{margin-top:0em !important; margin-bottom:0em !important;}
.mrtxxx{margin-top:3em !important;}
.mrtxx{margin-top:2.5em !important;}
.mrtx{margin-top:1.5em !important;}
.mrtm{margin-top:1em !important;}
.mrts{margin-top:0.5em !important;}
.mrtss{margin-top:0.25em !important;}
.mrtn{margin-top:0em !important;}
.mrbxxx{margin-bottom:3em !important;}
.mrbxx{margin-bottom:2.5em !important;}
.mrbx{margin-bottom:1.5em !important;}
.mrbm{margin-bottom:1em !important;}
.mrbs{margin-bottom:0.5em !important;}
.mrbss{margin-bottom:0.25em !important;}
.mrbn{margin-bottom:0em !important;}
.pdz{padding-left:1em !important; padding-right:1em !important; padding-bottom:1em !important; padding-top:0em !important;}
.pindex{text-indent: 1em;}
.potl{position: absolute; top:0; left:0;}
.potr{position: absolute; top:0; right:0;}
.pobl{position: absolute; bottom:0; left:0;}
.pobr{position: absolute; bottom:0; right:0;}
.vam{vertical-align: middle;}
@media only screen and (max-width: 375px)
{
.minmbb{display:none !important;}
}
@media only screen and (max-width: 414px)
{
.minmb{display:none !important;}
}
@media only screen and (max-width: 767.9px)
{
.mintb{display:none !important;}
}
@media only screen and (max-width: 1024px)
{
.minpc{display:none !important;}
}

@media print, screen and (min-width: 375.1px)
{
.maxmbb{display:none !important;}
}
@media print, screen and (min-width: 414.1px)
{
.maxmb{display:none !important;}
}
@media print, screen and (min-width: 768px)
{
.maxtb{display:none !important;}
}
@media print, screen and (min-width: 1024.1px)
{
.maxpc{display:none !important;}
}

/*------------------------------------------------------------------------------------------------qa-*/
.question {
    background: url(../images/q.png) no-repeat;
    background-position: top left;
    margin-top: 1.5em;
    margin-bottom: 1em;
    padding-top: 0px;
    padding-left: 40px;
    min-height: 40px;
  /*  color: #8fc31f; */
    font-weight: bold;
}
.answer {
    background: url(../images/a.png) no-repeat;
    background-position: top left;
    margin-bottom: 1.5em;
    padding-top: 0px;
    padding-left: 40px;
    min-height: 40px;
}

/*------------------------------------------------------------------------------------------------mokuji-
.mokujibox{
    display:block;
    clear: both;
    overflow: hidden;
    width:98%;
    max-width:640px;
    margin: 1em auto 1em;
    padding: 0;
}
.mokujiin{
        display:block;
    clear: both;
    overflow: hidden;
    margin: 0.5em 0 0;
    padding: 0.6em 1em 0em 2.5em;
    border:#8FC31F dashed 0.05em;
    background:#fffff0;

}
.mokujibox label {
  background: #8FC31F;
  text-align:center;
  color: #fff;
  padding: 0.4em 0 0.3em;
  display: block;
  width: 6em;
  border: 1px solid #fff;
  border-radius:5px;
  cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    height: 2.5em;
    position: relative;
    z-index:2;
}

.mokujibox label:hover {
  background: #7E501E;
}
.mokujibox input[type="checkbox"], .mokujibox  input[type="radio"] {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 2.5em;
}
.mokujibox input[type="checkbox"].on-off{
  display: none;
}
.mokujibox ul {
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  -ms-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s;
  margin: 0 0 1em;
  padding: 0;
  list-style: none;
}
*/
/*
.mokujibox input[type="checkbox"].on-off + div{
  display: none;
}
.mokujibox input[type="checkbox"].on-off:checked + div{
  display: block;
}
*/
/*---最初閉じているタイプ-----------
.mokujibox input[type="checkbox"].on-off + div{
  display: block;
}
.mokujibox input[type="checkbox"].on-off:checked + div{
  display: none;
}*/

/*================================================
 *  tab
 ================================================*/
.tab-wrap {
	background: White;
	display: flex;
	flex-wrap: wrap;
	overflow: hidden;
	padding: 0 0 20px;
}
.tab-label {
	color: Gray;
	cursor: pointer;
	flex: 1;
	font-weight: bold;
	order: -1;
	padding: 12px 24px;
	position: relative;
	text-align: center;
	transition: cubic-bezier(0.4, 0, 0.2, 1) .2s;
	user-select: none;
	white-space: nowrap;
	-webkit-tap-highlight-color: transparent;
	border-bottom: 3px solid #ddd;
	background: rgb(143 195 31 / 10%);
}
.tab-label:hover {
	background: rgb(143 195 31 / 20%);
}
.tab-switch:checked + .tab-label {
	color: #fff;
	background: #8fc31f;
}
.tab-label::after {
	color: #fff;
	background: #947e7e;
    bottom:-3px;
	content: '';
	display: block;
	height: 3px;
	left: 0;
	opacity: 0;
	pointer-events: none;
	position: absolute;
	transform: translateX(100%);
	transition: cubic-bezier(0.4, 0, 0.2, 1) .2s 80ms;
	width: 100%;
	z-index: 1;
}
.tab-switch:checked ~ .tab-label::after {
	transform: translateX(-100%);
}
.tab-switch:checked + .tab-label::after {
	opacity: 1;
	transform: translateX(0);
}
.tab-content {
	height:0;
	opacity:0;
	padding: 0 0px;
	pointer-events:none;
	transform: translateX(-30%);
	transition: transform .3s 80ms, opacity .3s 80ms;
	width: 100%;
}
.tab-switch:checked ~ .tab-content {
	transform: translateX(30%);
}
.tab-switch:checked + .tab-label + .tab-content {
	height: auto;
	opacity: 1;
	order: 1;
	pointer-events:auto;
	transform: translateX(0);
}
.tab-wrap::after {
	content: '';
	height: 5px;
	order: -1;
	width: 100%;
}
.tab-switch {
	display: none;
}
.tabin {
    position: relative;
    background:#eee;
    border: 1px solid #ccc;
    float: left;
    line-height:1.05;
    display:block;
    width:100%;
    height:30vw;
}
#sidebar .tabin a.tabll img {
    position: absolute;
    top:0;
    left:0;
    width: 30vw;
    height: auto;
    margin: 0;
    padding: 0;
}
.tabt {
    position: absolute;
    background: rgba(240,128,128,0.1);
    top:0;
    right:0;
    width: -webkit-calc(100% - 30vw);
    width: calc(100% - 30vw);
    height:30vw;
    padding:0.4em 0.5em 0;
}
.tabp {padding:1em; margin:0; font-size:1em;}
.tabd {padding-left:1em; float:left; font-size:0.9em;}
.tabv {padding-right:1em; float:right; font-size:0.9em;}
@media only screen and ( min-width : 540px ) and ( max-width : 1150px ) {
.tabin{width:50%; height:15vw;}
#sidebar .tabin a.tabll img {width: 15vw;}
.tabt{width: -webkit-calc(100% - 15vw); width: calc(100% - 15vw); height:15vw;}
.tabp {padding:0.5em 0.4em; font-size:0.9em;}
.tabd {padding-left:0.5em; float:left; font-size:0.8em;}
.tabv {padding-right:0.5em; float:right; font-size:0.8em;}
}
@media print, screen and (min-width: 1150px){
.tabin{width:250px; height:75px;}
#sidebar .tabin a.tabll img {width: 75px;}
.tabt{width:175px; height:75px;}
.tabp {padding:0.5em 0.8em 0.6em; margin:0; font-size:0.8em;}
.tabd {width:50%; padding-left:1em; float:left; font-size:0.6em;}
.tabv {width:50%; padding-right:1em; float:right; font-size:0.6em;}
}
.tabin:hover { opacity:0.8;}
a.tabll, a.tablr {
    display:block;
    text-decoration:none;
    text-align: left;
    font-weight: bold;
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
}
a.tabll{
    left: 0;    
}
a.tablr {
    right: 0;
}
.tabr {position:absolute; left:0; top:0; background-color:#BF9265; color:#ffffff; font-size:1em; font-weight:400; width:1.2em; height:1.2em; line-height:1.2em; border-radius:50%; text-align:center; vertical-align:middle; text-decoration:none;}

/*------------------------------------------------
　　tagcloud
------------------------------------------------*/
.tagcloud, .tags{
    list-style: none;
    margin: 0;
    overflow: hidden;
    padding: 0;
    display: inline-block;
    clear: both;
}
.tagcloud li, .tags li{
    display: inline-block;
    padding: 0;
    margin: 0 0.2em 0.2em 0;
}
.tagcloud a, .tags a{
 background:#73c373;
 color:#fff;
 padding:0.5em 0.8em;
 margin:0 0.3em 0 0;
 border-radius:5px;
 text-decoration:none;
 font-size:0.65em;
 line-height: 3.5em;
 font-weight:600;
 white-space: nowrap;
}
.tagcloud a:hover, .tags a:hover{
 color:#fff;
 background:#afcc70;
 font-weight:400;
}
.tagcloud a:before, .tags a:before{
 font-family:"Font Awesome 5 Free";
 content:"\f02b"; 
 font-weight:600;
 color:#fff;
 padding-right:6px;
}
.tagcloud a span, .tags a span{
 padding-left:0.5em;
 color:#fff;
}

/*------------------------------------------------
　　catcloud
------------------------------------------------*/
.catcloud, .post-categories{
    list-style: none;
    margin: 0;
    overflow: hidden;
    padding: 0;
    display: inline-block;
    clear: both;
}
.catcloud li, .post-categories li{
    display: inline-block;
    padding: 0;
    margin: 0 0.2em 0.2em 0;
}
.catcloud a, .post-categories a{
 background:#afcc70;
 color:#fff;
 padding:0.5em 0.8em;
 margin:0 0.3em 0 0;
 border-radius:5px;
 text-decoration:none;
 font-size:0.65em;
 line-height: 3.5em;
 font-weight:600;
 white-space: nowrap;
}
.catcloud a:hover, .post-categories a:hover{
 background:#73c373;
 color:#fff;
 font-weight:400;
}
.catcloud a:before, .post-categories a:before{
 font-family:"Font Awesome 5 Free";
 content:"\f35a"; 
 font-weight:600;
 color:#fff;
 padding-right:6px;
}
.catcloud a span, .post-categories a span{
 padding-left:0.5em;
 color:#fff;
}

/*------------------------------------------------
　　topcloud
------------------------------------------------*/
.topcloud, .frontcloud{
    list-style: none;
    margin: 0;
    overflow: hidden;
    padding: 0;
    display: inline-block;
    clear: both;
}
.topcloud li, .flontcloud li{
    display: inline-block;
    padding: 0;
    margin: 0.3em 0.5em 0.8em 0em;
}
.topcloud a, .flontcloud a{
 color:#FF9900;
 border:#FF9900 solid 1px;
 background: #fff;
 padding:0.5em;
 margin:0;
 border-radius:5px;
 text-decoration:none;
 font-size:1em;
 line-height: 2em;
 font-weight:700;
 white-space: nowrap;
}
.topcloud a:hover, .flontcloud a:hover{
 color:#fff;
 background:#FF9900;
 border:#FF9900 solid 1px;
 font-weight:400;
}

/*------------------------------------------------
　　pagination
------------------------------------------------*/
.pagination {
  margin: 0 auto 0em;
  padding: 0em 0;
  text-align: center;
  display: block;
}
.pagination a {
  font-size: 1em;
  line-height: 2em;
  text-align: center;
  color: #fff;
  text-decoration: none;
  letter-spacing: 0;
  display: inline-block;
  height: 2em;
  width: 2em;
  border-radius: 50%;
  background: #73c373;
  transition: .3s
}
.pagination a:hover {
  color: #fff;
  background: #afcc70;
}
.pagination span {
  font-size: 1em;
  line-height: 2em;
  text-align: center;
  letter-spacing: 0;
  display: inline-block;
  height: 2em;
  width: 2em;
  border-radius: 50%;
  background: #73c373;
}
.pagination span.dots {
  background: 0
}
.pagination span.current {
  background: #afcc70;
  color: #fff
}

/*================================================
 *  ページトップへの戻り
 ================================================*/
#page-top{
  display: block;
  position: fixed;
  z-index: 9999;
  bottom: 45px;
  right: 10px;
    width: 2.2em;
    height: 2.2em;
    line-height: 2.2em;
    border-radius: 50%;
    text-align: center;
    vertical-align: middle;
  text-decoration: none;
  transition: .5s;
}
#page-top{background: #afcc70;}
#page-top:hover{background: #73c373;}
#page-top a
{
  font-size:0.75em;
  color:#fff;
  text-decoration:none;
}
#page-top a:hover
{
  font-size:0.7em;
  color:#fff;
}

/*================================================
 *  footmenu
 ================================================*/
footer{background-color:#F6F6F6; font-size:0.8em;}
.footmenu { 
    width: 100%;
    margin: 0 auto;
    display: block;
    clear: both;
    overflow: hidden;
    border-top:1px groove rgba(112, 111, 111, 0.5);
}
.footmenu .menu{
    padding-left: 0;
    list-style-type: none;
    margin: 0;
    width: 100%;
    height: 100%;
}
.footmenu li{
	position: relative;
	display: inline-block;
	background-color: #F6F6F6;
        text-align: center;
	text-decoration: none;
	transition: all 1.5s;
        width:100%;
        height:100%;
        float:left;
        margin:0;
}
.footmenu li::after {
	position: absolute;
	top: 50%;
	right: 0.2em;
	content: '';
	margin-top: -0.4em;
	border: 0.4em solid transparent;
	border-top-width: 0.4em;
	border-bottom-width: 0.4em;
	border-left-color: #555;
	transition: all 1.5s;
}
.footmenu li a{color:#555; font-weight:400; text-decoration:none; display:block; line-height:3em; height:100%; border-bottom:2px solid rgba(112, 111, 111, 0.5);}
.footmenu li:hover {background-color:#efede9; opacity:0.6; color:#777;}
.footmenu li:hover a{color:#777;}
.footmenu li:hover::after {border-left-color:#777;}
.footmenu li:nth-child(2n){border-left:none;}
@media only screen and (min-width: 768px) and (max-width: 1024px)
{
.footmenu ul li{width:50%; float:left;}
.footmenu ul li:nth-child(1n){border-right: 1px groove rgba(112, 111, 111, 0.5);}
}
@media print, screen and (min-width: 1024.1px)
{
.footmenu ul li{width:auto; padding-left:1.8em; padding-right:1.5em; float:left; margin-top:1px;}
.footmenu ul li:nth-child(1n){border-right: none;}
.footmenu li a{border: none;}
.footmenu, .footmenu li{background-color:#F6F6F6;}
.footmenu li:hover {background-color:#F6F6F6;}
}
.copyright{text-align: center; padding-bottom: 0.5em; padding-top: 1em; clear:both;}
.copyright a {color: #555;}
.copyright a:hover {color: #777;}

/*================================================
 *  サイドメニュー
 ================================================*/
/*#sidebar{background: #F6F6F6;}*/
#menu-side_menu li, .widget li{
	margin:0;
	padding:0;
	list-style:none;
}
#menu-side_menu li a:before, .widget li a:before{
	content:"■";
	color:#8fc31f;
	padding-right: 0.5em;
	padding-left: 0.8em;
}
#menu-side_menu li a, .widget li a {
	display:block;
	color:#555;
	border-bottom:1px solid #ddd;
	text-decoration:none;
	padding:7px 0.2em 7px 1.5em;
	text-indent: -1.5em;
	font-weight: 500;
	font-size: 0.8em;
}
#menu-side_menu li a:hover, .widget li a:hover{
	background:#eee;
}
#menu-side_menu ul li.menu-item-has-children > a:before{
	content:"■";
	color:#a2c31f;
}
#menu-side_menu ul.sub-menu {margin-bottom:0; padding-left:0.6em;}
#menu-side_menu ul.sub-menu li{margin:0; padding: 0; text-indent: 1em;}
#menu-side_menu ul.sub-menu li a:before{
	content: "\025b6";
	color:#7E501E;
}
#sidebar img{width:100%; max-width:320px; margin-left:-webkit-calc(50vw - 160px); margin-left:calc(50vw - 160px); margin-right:-webkit-calc(50vw - 160px); margin-right:calc(50vw -160px); margin-top:0.8em; margin-bottom:0.8em;}
@media only screen and (min-width: 768px) and (max-width: 1023.9px)
{
#menu-side_menu li, .widget li{width:50%; float:left;}
#menu-side_menu li:nth-child(1n), .widget li:nth-child(1n){border-right: 1px groove rgba(112, 111, 111, 0.5);}
#menu-side_menu ul.sub-menu li{width: 100%; border-right: unset;}
#sidebar img{width:40%; margin:1em 5% 0.5em; float:left; max-width:unset;}
}
@media print, screen and (min-width: 1024px)
{
#menu-side_menu li, .widget li{border:none; margin-top:1px;}
#menu-side_menu li:nth-child(1n), .widget li li:nth-child(1n){border-right: none;}
#sidebar img{width:40%; margin:1em 5% 0.5em; float:left; max-width:unset;}
}
@media print, screen and (min-width: 1150px)
{
#sidebar img{width:100%; margin:0.5em 0; max-width:unset;}
}
@media screen and (min-width: 1150px){
.side-fixed {
    /*position: fixed !important;*/
    top: 60px;
    width: 250px;
    margin: 0;
    z-index: 2;
    background: rgba(255, 255, 255, 0.90);
}
}

#Sidefixed {
margin-top:0.5em;
}
#Sidefixed div.widget_text div.textwidget {
    margin:0 auto;
}

/*================================================
 *  input
 ================================================*/
input[name="s"] {width: 96%; padding: 0.4em;}
label[for="s"]{display:none;}
#searchform {margin: 1em 0.5em 0.5em; width: 96%;}
/*-contactform7 ------comment ------------------------------------------------------------------------------------------*/
.wpcf7-form label, .wpcf7-radio, .wpcf7-text, .wpcf7-submit, .wpcf7-form textarea, .wpcf7-checkbox,
#respond input, #respond textarea{font-size:1em; line-height:1.1; width:100%;}
.wpcf7-checkbox span{padding-right:1em;}
.wpcf7-response-output{color: #ff9900; font-weight: bold;}
@media print, screen and (min-width: 768px)
{
.wpcf7-form label, .wpcf7-radio, .wpcf7-text, .wpcf7-submit, .wpcf7-form textarea, .wpcf7-checkbox,
#respond input, #respond textarea{font-size:1.1em; line-height:1.2; width:100%;}
}
div.wpcf7 .ajax-loader {display: none !important;}
#respond label{display:block;}
p.form-submit{text-align:center;}
#respond input[type="submit"]{width: auto;}
.says{display:none;}
.comment-author, .comment-meta{display:inline-block;}
#respond input[type="checkbox"] {float: left; width: auto; height: 1.5em; margin-right: 0.5em;}

#toc_container{margin: 1em auto; display:block; max-width:405px;}
@media screen and (min-width: 768px){
#toc_container{float:right; margin-top:0.2em; margin-left:1em;}
}
#toc_container + h2{margin-top:0;}

/*================================================
 *  calendar
 ================================================*/
#calendar_wrap{
  padding-top:10px;
  padding-bottom:10px;
  background:#fff;
}
#wp-calendar{
  width: 100%;
  font-size:12px;
  padding-top: 10px;
}
#wp-calendar tr{
  display: flex;
  justify-content: flex-start;
}
#wp-calendar tr:first-of-type{
  justify-content: flex-end;
}
#wp-calendar th,
#wp-calendar td{
  display: block;
  width: calc(100% / 7);
  text-align: center;
  margin-bottom: 10px;
}
#wp-calendar td:last-of-type,
#wp-calendar th:last-of-type{
  color: red;
}
#wp-calendar td a{
  padding: 0;
}
#wp-calendar tfoot tr{
  display: flex;
  justify-content: center;
}
#wp-calendar tfoot tr td{
  width: calc(100% / 3);
}
#wp-calendar #today a,
#wp-calendar #today{
  color: white;
  background-color:#6699ff;
  font-weight:bold;
}
.wp-calendar-nav-prev{margin-left: 10px;}
.wp-calendar-nav-next{margin-right: 10px;}

@media print{
.print_pages { size: A4; page-break-before: always;}
header, footer, #sidebar, #subbox , .fixfoot, .top-fixed, .side-fixed, .btn-fixed, .vwrap, #page-top, #g-menu{display:none !important;}
#contents, #main{width:100% !important; max-width:297mm !important; font-size:14px;}
}
@media all and (-ms-high-contrast: none){
  .print_pages.page-break {page-break-before: auto;}
}



/* 以下ATTNOEL */

/*h2:not(.noh), .m2, h3:not(.noh), .m3, h4:not(.noh), .m4*/
h3:not(.noh) {
margin-top:0;
}

.tel-cta {
    text-align:center;
}
.tel-cta p.address {
    padding-top:10px;
}
.tel-cta p.address a {
color:#1a0dab;
}
.tel-cta p.tel {
padding-top:30px;
}



.soudan-cta {
  position: relative;
  width: 100%;
  max-width: 912px; /* PC時の最大幅 */
  aspect-ratio: 912 / 411; /* 高さを比率で自動計算 */
  margin: 0 auto;
}
.soudan-ashi-cta {
  background: url("../../img/soudan-ashi-cta_large.png") no-repeat center/cover;
}
.soudan-tsume-cta {
  background: url("../../img/soudan-tsume-cta_large.png") no-repeat center/cover;
}

/* 共通ボタンスタイル */
.soudan-cta .btn {
  position: absolute;
  display: block;
  width: 35.08%;   /* 320px / 912px ≒ 35.08% */
  height: 14.6%;   /* 60px / 411px ≒ 14.6% */
}

/* --- PCレイアウト --- */
.soudan-cta .btn1 {
  left: 22.7%; 
  bottom: 14.16%;
}

.soudan-cta .btn2 {
  left: 59.9%; 
  bottom: 14.16%;
}

/* --- スマホレイアウト（幅768px以下） --- */
@media screen and (max-width: 768px) {
  .soudan-cta {
    max-width: 372px;
    aspect-ratio: 372 / 366;
  }
  .soudan-ashi-cta {
  background: url("../../img/soudan-ashi-cta.png") no-repeat center/cover;
}
.soudan-tsume-cta {
  background: url("../../img/soudan-tsume-cta.png") no-repeat center/cover;
}

  .soudan-cta .btn {
    width: 78%; 
    height: auto;
    left: 50%;
    transform: translateX(-50%);
  }

  .soudan-cta .btn1 {
    bottom: 88px;
  }

  .soudan-cta .btn2 {
    bottom:22px;
  }
}



/*記事一覧ページレイアウト変更 */

/* タイトルやボタンのラッパー */
.post-content-inner {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

/* ボタンエリア */
.read-more-btn {
    /* margin-top: auto;  ←これを削除すると、ボタンが下に固定されず、タグの直下に来ます */
    margin-top: 10px; 
    padding-top: 0;
}
.read-more-btn a {
    color:#fff;
}

.post-grid {
    display: grid;
    gap: 20px;
    margin-bottom: 40px;
}
.blog-grid-item {
    border: 1px solid #ddd;
    background: #fff;
    padding: 15px 15px 15px 15px; 
    display: flex;
    flex-direction: column;
    height: auto; 
    box-sizing: border-box;
    align-self: start;
}
.blog-grid-item .post-thumbnail img {
    width: 100%;
    height: auto;
    object-fit: cover;
    aspect-ratio: 16 / 9;
}
.post-grid h2.noh {
    font-weight:bold;
    padding:0.5em 0;
    line-height: 1.4;
    font-size: 1.3em;
}

@media (min-width: 768px) {
    .post-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}