@charset "utf-8";

body {
    color: #333;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    line-height: 1.5;
    padding: 0;
    margin: 0;
}

ul li{
    list-style-type:none;
}
ul{
    margin: 0;
    padding: 0;
}

.pcView{ display:none; }
.item{ display: none; }
.spItem{ display: block; }
#header_navi{ display: none; }

h1.spH1{
    font-size:1.2rem;
    text-align:center;
    margin:0;
    background-color:#406A35;
    color:#FFFF99
}
h1.spH1 img{ width: 100%; }
h1.spH1 span{ font-size:1rem; display: block; }
.tsubomiSP img, .tsubomi{ display:none; }
.tsubomiSP{
    position: inherit !important;
    display: block !important;
}
.header-nav{ overflow:hidden; width:100%; }
.header-nav ul{ text-align:center; margin: 20px 10px; }
.header-nav ul li a{
    background-color: #406A35;
    border-radius: 5px;
    display:block;
    margin: 10px;
    padding: 10px;
    color: #FFF;
    text-decoration: none;
    border: none;
}
.txtNote01 {
    margin: 15px 10px 0;
	font-size: 0.8rem;
}
.baloon { margin: 10px;}
.baloon p{
    font-size: 0.8rem;
    margin: 0;
    line-height: 1.5;
}

.chara{
    width: 70px;
    display: block;
    margin: 0 auto;
}
.linkBtn{
	text-align: center;
	padding: 15px 0 10px;
}
.linkBtn li {
	display: inline-block;
	height: 36px;
	overflow: hidden;
}
.linkBtn a {
	display: inline-block;
}
.linkBtn .jst{
    padding: 4px 10px 6px;
    background: #ffffff;
}
.linkBtn .ristex{
    padding: 4px 0 0;
    background: #ffffff;
}
.linkBtn img {
	vertical-align: middle;
}
#global_navi{ background-color: #77B468; display:none; }
#contentsGroup{ background-color: #77B468; padding: 0 10px 10px 10px;}
#global_navi a{
    color: #333;
    font-size:0.8rem;
    display: block;
    padding: 10px;
    border-bottom: #CCC 1px dotted;
    text-decoration: none;
}
#navi, #footer_left{ background-color: #77B468; padding: 10px 10px 0 10px; }
#navi a, #contentsGroup a, #footer_left a{
    color: #333;
    font-size:0.8rem;
    display: block;
    line-height: 2.5;
}
#footer_left a:last-child{ padding: 0 0 10px 0; }
#bread{
    padding: 10px;
    font-size: 0.8rem;
}
h2{
    background-color: #406A35;
    color: #FFF;
    margin: 0;
    padding: 10px;
    font-size: 1.2rem;
}
h3{
    background-image: url(../common/sp_h3_base.jpg);
    background-repeat: no-repeat;
    background-size: 36px;
    margin: 0 10px;
    text-indent: 2.5rem;
    line-height: 2.3;
    padding: 0;
}
h5{
    font-size:1rem;
    border-top: 1px solid #74B469;
    border-bottom: 1px solid #74B469;
    margin: 10px 0;
    padding: 8px;
}
h6{
    font-size: 1rem;
    margin: 0px;
    color: #406A35;
}
h6:before{ content: "■"; }
h6.prof:before{ content: ""; }
.jsmenu{ margin: 0 10px; }
.jsmenu ul li{
    font-size: 0.9rem;
    line-height: 1.5;
    margin: 0 0 15px 0;
}
.jsmenu ul li:before{
    content: "■";
    color: #77B468;
}
.jsmenu ul li a{ display: inline; }
#pageNavi{
    margin: 10px;
    font-size: 0.8rem;
    line-height: 2;
}
.contentsBox{ margin: 0 10px; }
.contentsBox img{
    width: 100%;
    height: auto;
}
#about{ font-size: 0.9rem; }
.contentsBox p{ font-size:0.9rem; }
/*pdfアイコン*/
.linkPDF:after {
    content: url(../common/IcoPdf.png);
    vertical-align: middle;
    margin: 5px;
    display: inline-block;
}
/*SPアコーディオンメニュー
============================================================*/
#spMenuBtn{
    display: inline-block;
    position: absolute;
    width: 40px;
    height: 40px;
    margin: 10px;
    border-radius: 50%;
    background: #406A35;
}
#spMenuBtn span{
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 14px;
    height: 2px;
    margin: -1px 0 0 -7px;
    background: #FFF;
    transition: .2s;
}
#spMenuBtn span:before, #spMenuBtn span:after{
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 14px;
    height: 2px;
    margin-left: -7px;
    background: #FFF;
    transition: .3s;
}
#spMenuBtn span:before{
    margin-top: -6px;
}
#spMenuBtn span:after{
    margin-top: 4px;
}
#spMenuBtn span.close{
  background: transparent;
}
#spMenuBtn span.close:before, #spMenuBtn .close:after{
  margin-top: 0;
}
#spMenuBtn span.close:before{
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}
#spMenuBtn span.close:after{
  transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
}
/*ステータスアイコン
============================================================*/
.statusEnd, .statusActive{ display: inline-block; overflow: hidden; }
.statusEnd:after{
    content: "終了";
    background-color: #406A35;
    color: #FFF;
    padding: 3px 10px;
    margin: 0 1em;
    display: inline-block;
    border-radius: 5px;
    font-size: 0.7rem;
}
.statusActive:after{
    content:"活動中";
    background-color: #10266C;
    color: #FFF;
    padding: 3px 10px;
    margin: 0 1em;
    display: inline-block;
    border-radius: 5px;
    font-size: 0.7rem;
}
/*ページトップ
============================================================*/
#pageTop {
    display: none;
    position: fixed;
    bottom: 40px;
    right: 10px;
}
#pageTop a::before {
    content: "";
    display: block;
    position: absolute;
    left: 50%;
    top: 16px;
    border-top: 1px solid #ffffff;
    border-right: 1px solid #ffffff;
    width: 12px;
    height: 12px;
    transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    margin-left: -6px;
}
#pageTop a {
    display: block;
    width: 50px;
    height: 50px;
    border-radius: 32px;
    background-color: #9fa0a0;
    color: #ffffff;
    text-align: center;
    padding-top: 28px;
    box-sizing: border-box;
    text-decoration: none;
    font-size:68%;
    font-weight: normal;
}
.oldPageTop{ text-align: right; }
.oldPageTop a img{ width: 32px; height: 28px; }
#poad .contentsBox table tr td{ display: block; }
#poad .contentsBox table tr td img{ max-width: 150px; height: 100%; }
#poad .contentsBox table tr td:nth-child(2){ text-align: center; }

/*SPフッター
============================================================*/
footer{ background-color: #406A35; color:#FFF; font-size:0.8rem; text-align:center; padding: 10px; }
#footer_right{
    text-align: center;
    margin: 0 0 20px 0;
}
#footer_right table{ width: 100%; }
#footer_right table td{ display: block; font-size: 0.8rem; }

/*about
============================================================*/
#newAbout table{ width: 100%; }
#newAbout table tr, #newAbout table tr td{ display: block; font-size: 0.9rem; }
#newAbout table tr td img.prfilePhoto{ width: 75px; height: 95px; }
#newAbout table tr td{
    width: 100%;
    box-sizing: border-box;
    border: #CCC 1px solid;
    padding: 10px;
    margin: 0 0 20px 0;
}
/*poad
============================================================*/
#poad table{ width: 100%; }
#poad table tr, #poad table tr td{ display: block; font-size: 0.9rem; }
#poad table tr td img.prfilePhoto{ width: 150px; height: 190px; }

/*sitemap
============================================================*/
#sitemap table tr, #sitemap table tr td{ font-size: 0.9rem; }
#sitemap table tr td{ border-bottom: #CCC 1px dotted; }
#sitemap .ico01{ width: 30px; height: 5px; }
#sitemap .ico02{ width: 19px; height: 9px; }
#sitemap ul{ padding: 1rem 0 0 1rem; }
#sitemap ul li.cntTitle{ margin: 10px 0 10px 0; }
#sitemap ul li.cntTitle span{ display:none; }
#sitemap ul li.cntTitle a{ display: block; line-height: 2; }

/*development
============================================================*/
#development h4{ color:#406A35; margin: 0 10px; border-bottom: #406A35 1px solid; padding: 0 0 10px 0; }
#development h4:before{ content:"■"; }
#development p.right img{ width: 120px; height: 134px; }
#development .line a img{ width: 26px; height: 25px; vertical-align: middle;}
#development h3 span.spSubTitle{
    display:block;
    text-indent: 0rem;
    line-height:1.5;
    font-size: 1rem;
    padding: 0 0 10px 0;
}
#development img.sp2401img{ width: 42px; height:17px; }
#development img.sp2402img{ width:14px; height:14px; }

/*field
============================================================*/
#field .spExplanation{ font-size: 0.9rem; }
#field table tr, #field table tr td{ display: block; font-size: 0.9rem; }
#field .img2011060900{ width: 100px; }
#field .img2011060901{ width: 20px; }
#field .img2011060902{ width: 117px; }
#field .spLonglink{ word-break: break-all; }

/*Google search layout
============================================================*/
body#index .gsc-control-cse{ background-color: #77B468; border-color: #77B468; }
body#index #footer_right{ margin: 0; }
#___gcse_0 .gsc-control-cse-ja .gsc-control-wrapper-cse .gsc-input{ padding: 0; }
#___gcse_0 .gsc-control-cse-ja .gsc-control-wrapper-cse #gsc-iw-id1{ margin: 0 0 1rem 0; }
#___gcse_0 .gsc-control-cse-ja .gsc-control-wrapper-cse .gsc-input{ padding: 0; }
#___gcse_0 .gsc-control-cse-ja .gsc-control-wrapper-cse .gsc-input #gs_tti50{ box-sizing: border-box; }
#___gcse_0 .gsc-control-cse-ja .gsc-control-wrapper-cse .gsc-search-button{ width: 100%; margin: 0; }

/*2019 layout
============================================================*/
#side{ margin: 0 1em; }
#side .year{ background-color: #406A35; color: #FFFF99; padding: 1em; }
.houkoku h4, .tunami h4{ margin: 1em; }
.houkoku #tyu a{ word-break: break-all; }
.spJSTLogo{ display: block; text-align:center; padding: 1em 1em .5em 1em; }