/* ---------- フォント ---------- */
/* ----------------------------------------------------------
日本語指定（源ノ角ゴシック / Adobe Fonts）
----------------------------------------------------------

・レギュラー（Regular）
font-family: source-han-sans-japanese,sans-serif;
font-weight: 400;
font-style: normal;

・太（Bold）
font-family: source-han-sans-japanese,sans-serif;
font-weight: 700;
font-style: normal; */

/* ----------------------------------------------------------
大見出し明朝（凸版文久見出し明朝 / Adobe Fonts）
----------------------------------------------------------

font-family: toppan-bunkyu-midashi-min-st,serif;
font-weight: 900;
font-style: normal; */

/* ----------------------------------------------------------
英文明朝 - HOME（Times or Times New Roman）
----------------------------------------------------------

font-family: 'Times', 'Times New Roman', serif;
font-weight: 500;
font-style: normal; */

/* ------------------------------------------------
日本語：第2候補
------------------------------------------------
Windows, Mac, Android, iOS
各OS標準ゴシック、明朝体とする */


/* ---------- 基準 ---------- */
*{
	padding:0;
	margin:0;
}

*, *::before, *::after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    -webkit-box-shadow: none;
    box-shadow: none;
    outline: none;
}

html, body{
	width:100%;
	height:100%;
 font-size: 17px;
 font-family: 'Noto Sans Japanese', sans-serif;
	line-height: 1.867rem;
    /* 単語改行、禁則処理 */
    word-break: break-word;
    /* line-break: strict; */
    word-wrap: break-word;
    overflow-wrap: break-word;
}

/* body.fixed {
	position: fixed;
	width: 100%;
	height: 100%;
	left: 0;
} */

/* html { visibility: hidden;} */
/* フォント読み込み中のちらつきを削除 */
/* html.wf-active { visibility: visible;} */

/* ギャラリーのはみ出し防止 */

#over{
	overflow: hidden;
    position: relative;
}

/* iOSフォームリセット */

input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    outline: none;
    background: transparent;
}

button,
input[type="submit"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 0;
    border: none;
    outline: none;
    background: transparent;
}

input[type="radio"] {
    display: none;
}
input[type="radio"]:checked + label {
    background: #ff0000;
}

.container-fluid {
 max-width: 1366px;
 padding: 0 33px;
}

main {
 background: #fafafa;
}

/* header */

header {
 background: #fff;
 width: 100%;
}

.header-head {
 background: url("../images/bg-header-head.png") right center no-repeat;
}

.header-head > .container-fluid {
 display: flex;
 align-items: center;
 justify-content: space-between;
 height: 83px;
 max-width: 100%;
 padding: 0 140px;
}

.header-head .header-link {
 display: flex;
 margin-bottom: 0;
 font-size: 0.75rem;
}

.header-head .header-link li {
 list-style: none;
}

.header-head .header-link li:before {
 content: '|';
 color: #E3E3E3;
 margin: 0 10px;
}

.header-head .header-link li:first-child:before {
 content: '';
}

.header-head .header-link li a {
 color: #393939;
 text-decoration: none;
 transition: 0.3s;
}

.header-head .header-link li a:hover {
 color:#0C8235;
 text-decoration: underline;
 transition: 0.3s;
}

.header-botoom {
 background: #FAFAFA url("../images/bg-header-botoom.png") right center no-repeat;
 height: 65px;
}

.header-botoom .container-fluid {
 max-width: 100%;
 padding: 0 140px;
}


.header-bottom-inner {
 height: 100%;
 display: flex;
 justify-content: space-between;
}

.fixed {
 position: fixed;
 top: 0;
 left: 0;
 width: 100%;
 z-index: 5;
}



/* gnav */

.gnav {
 height: 100%
}

.gnav > ul {
 display: flex;
 height: 65px;
 align-items: center;
 list-style: none;
 margin-bottom: 0;
 font-size: 1.125rem;
}

.gnav > ul > li {
 height: 100%;
}

.gnav > ul > li > a {
 display: flex;
 height: 100%;
 border-bottom: #0C8235 solid 3px;
 color: #000;
 font-weight: bold;
 align-items: center;
 justify-content: center;
 transition: 0.3s;
 background: #FAFAFA url("../images/icon-arrow-bottom.png") right 8px center no-repeat;
}

.gnav > ul > li.gnav-0 > a {
 background: #FAFAFA;
}

.gnav > ul > li:hover > a {
 border-bottom: #045502 solid 3px;
 color: #fff;
 text-decoration: none;
 transition: 0.3s;
 background: #0C8235 url("../images/icon-arrow-bottom-on.png") right 8px center no-repeat;
}

.gnav > ul > li.gnav-0:hover > a {
 background: #0C8235;
}

.gnav-1 a span {
 position: relative;
 padding-left: 50px;
 display: flex;
 align-items: center;
 height: 34px;
 width: 182px;
 border-right: #0C8235 solid 1px;
}

.gnav-1 a span:before {
 content: url("../images/icon-gnav-1.png");
 width: 36px;
 height: 36px;
 border-radius: 999px;
 background: #E5F5D3;
 display: inline-block;
 position: absolute;
 left: 10px;
}

.gnav-1:hover a span:before {
 content: url("../images/icon-gnav-1-on.png");
 background: #0C8235;
 transition: 0.3s;
}

.gnav-2 a span {
 position: relative;
 padding-left: 50px;
 display: flex;
 align-items: center;
 height: 34px;
 width: 217px;
 border-right: #0C8235 solid 1px;
}

.gnav-2 a span:before {
 content: url("../images/icon-gnav-2.png");
 width: 36px;
 height: 36px;
 border-radius: 999px;
 background: #E5F5D3;
 display: inline-block;
 position: absolute;
 left: 10px;
}

.gnav-2:hover a span:before {
 content: url("../images/icon-gnav-2-on.png");
 background: #0C8235;
 transition: 0.3s;
}

.gnav-3 .gmenu.gmenu-1 {
 height: calc(100vh - 148px);
}

.gnav-3 a span {
 position: relative;
 padding-left: 50px;
 display: flex;
 align-items: center;
 height: 34px;
 width: 202px;
 border-right: #0C8235 solid 1px;
}

.gnav-3 a span:before {
 content: url("../images/icon-gnav-3.png");
 width: 36px;
 height: 36px;
 border-radius: 999px;
 background: #E5F5D3;
 display: inline-block;
 position: absolute;
 left: 10px;
}

.gnav-3:hover a span:before {
 content: url("../images/icon-gnav-3-on.png");
 background: #0C8235;
 transition: 0.3s;
}

.gnav-3 .gnav-inner {
 height: calc(100% - 148px)!important;
}

.gnav-3 .gmenu-list ul {
 height: 80vh;
 overflow-y: auto;
}

.gnav-4 a span {
 position: relative;
 padding-left: 50px;
 display: flex;
 align-items: center;
 height: 34px;
 width: 174px;
 border-right: #0C8235 solid 1px;
}

.gnav-4 a span:before {
 content: url("../images/icon-gnav-4.png");
 width: 36px;
 height: 36px;
 border-radius: 999px;
 background: #E5F5D3;
 display: inline-block;
 position: absolute;
 left: 10px;
}

.gnav-4:hover a span:before {
 content: url("../images/icon-gnav-4-on.png");
 background: #0C8235;
 transition: 0.3s;
}

.gnav-5 a span {
 position: relative;
 padding-left: 50px;
 display: flex;
 align-items: center;
 height: 34px;
 width: 174px;
 border-right: #0C8235 solid 1px;
}

.gnav-5 a span:before {
 content: url("../images/icon-gnav-5.png");
 width: 36px;
 height: 36px;
 border-radius: 999px;
 background: #E5F5D3;
 display: inline-block;
 position: absolute;
 left: 10px;
}

.gnav-5:hover a span:before {
 content: url("../images/icon-gnav-5-on.png");
 background: #0C8235;
 transition: 0.3s;
}

.gnav-0 a span {
 position: relative;
 padding-left: 50px;
 display: flex;
 align-items: center;
 height: 34px;
 width: 175px;
 border-right: #0C8235 solid 1px;
}

.gnav-0 a span:before {
 content: url("../images/icon-gnav-0.png");
 width: 36px;
 height: 36px;
 border-radius: 999px;
 background: #E5F5D3;
 display: inline-block;
 position: absolute;
 left: 10px;
}

.gnav-0:hover a span:before {
 content: url("../images/icon-gnav-0-on.png");
 background: #0C8235;
 transition: 0.3s;
}

.search-language {
 display: flex;
 align-items: center;
 margin-left: 15px;
}

.head-seaech {
 width: 280px;
 position: relative;
}

.head-seaech input {
 width: 100%;
 height: 42px;
 padding: 5px 40px 5px 15px;
 border: #D5D5D5 solid 1px;
 border-radius: 999px;
 font-size: 1.0rem;
}

.head-seaech button {
 display: flex;
 align-items: center;
 justify-content: center;
 width: 24px;
 height: 24px;
 position: absolute;
 right: 12px;
 top: 50%;
 transform: translateY(-50%);
}

.search-language ul,
.header-language ul {
 margin-left: 10px;
 margin-bottom: 0;
 background: #EBEBEB;
 padding: 3px;
 border-radius: 10px;
 font-size: 0.6875rem;
 display: inline-block;
}

.search-language ul li,
.header-language ul li {
 display: block;
 margin-top: 2px;
 line-height: 1.0;
}

.search-language ul li:first-child,
.header-language ul li:first-child {
 margin-top: 0;
}

.search-language ul li a,
.header-language ul li a {
 display: block;
 width: 34px;
 padding: 3px;
 background: #fff;
 border-radius: 999px;
 text-align: center;
 color: #000;
 transition: 0.3s;
}

.search-language ul li a:hover,
.header-language ul li a:hover {
 background: #045502;
 color: #fff;
 text-decoration: none;
 transition: 0.3s;
}

.search-language ul li.active a,
.header-language ul li.active a {
 background: #045502;
 color: #fff;
}

.header-contents {
 display: flex;
 align-items: center;
}

.gmenu {
 position: absolute;
 left: 0;
 width: 100%;
 background-image: url("../images/bg-head-side-left.png"), url("../images/bg-head-side-left-bottom.png");
 background-position: left top, left bottom;
 background-repeat: no-repeat, no-repeat, no-repeat;
 background-color: #0C8235;
 overflow: hidden;
 display: none;
 z-index: 5;
}

.gmenu ul {
 display: block;
 float: left;
}

.gmenu-inner {
 display: flex;
 max-width: 1300px;
 justify-content: flex-start;
 margin: 0 auto;
 padding: 35px 50px 60px 50px;
}

.gmenu-inner h2 {
 margin-bottom: 0;
 padding-top: 10px;
 width: 170px;
 font-size: 1.41176471rem;
 font-weight: bold;
 color: #fff;
}

.gmenu-list {
 width : calc(100% - 170px) ;
 display: flex;
 justify-content: space-between;
}

.gmenu-inner ul {
 list-style: none;
 margin-bottom: 0;
 margin-left: 20px;
 width: 100%;
 display: flex;
 flex-wrap: wrap;
}

.gmenu-inner ul li {
 width: 33.333%;
 margin-bottom: 5px;
 padding: 0 10px;
}

.gmenu-inner ul li a {
 display: block;
 position: relative;
 border-bottom: #55a771 solid 1px;
 padding: 10px 10px 10px 0;
 font-size: 0.9375rem;
 color: #fff;
 transition: 0.3s;
 line-height: 1.4;
}

.gmenu-inner ul li a:after {
 content: url("../images/border-naname.png");
 width: 14px;
 height: 14px;
 position: absolute;
 right: 0;
 bottom: 4px;
}

.gmenu-inner ul li a:hover {
 color: #b2de81;
 text-decoration: none;
 transition: 0.3s;
}

/* footer */


.footer-head {
 padding: 90px 0;
}

.footer-head-inner {
 max-width: 1170px;
 margin: 0 auto;
}

.footer-head-inner ul {
 margin-bottom: 0;
 list-style: none;
 display: flex;
 flex-wrap: wrap;
}

.footer-head-inner ul li {
 width: 25%;
 padding: 0 5px;
 margin-bottom: 10px;
}

.footer-head-inner ul li a {
 font-size: 0.875rem;
 font-weight: bold;
 color: #333333;
 line-height: 1.6;
}

.footer-head-inner a dl {
 display: flex;
 align-items: center;
 margin-bottom: 0;
 border: #dedede solid 1px;
}

.footer-head-inner a dl dt {
 border-right: #dedede solid 1px;
 overflow: hidden;
 width: 95px;
}

.footer-head-inner a dl dd {
 padding: 10px 18px;
 margin-bottom: 0;
 width : calc(100% - 95px) ;
 line-height: 1.2;
}

.footer-head-inner a dl dt img {
 transition: 0.3s;
}

.footer-head-inner a:hover {
 text-decoration: none;
}

.footer-head-inner a:hover dl dt img {
 transform: scale(1.05);
 transition: 0.3s;
}

.footer-links-list {
 background: #ECF0ED;
 height: 383px;
 display: flex;
 align-items: center;
}

.footer-links-list ul {
 list-style: none;
 margin-bottom: 0;
 display: flex;
 justify-content: space-between;
 max-width: 1170px;
 margin-left: auto;
 margin-right: auto;
}

.footer-links-list ul li a dl {
 margin-bottom: 0;
 background: #fff;
}

.footer-links-list ul li a dl dt {
 overflow: hidden;
}

.footer-links-list ul li a:hover {
 text-decoration: none;
}

.footer-links-list ul li a dl dt img {
 transition: 0.2s;
}

.footer-links-list ul li a:hover dl dt img {
 transform: scale(1.05);
 transition: 0.2s;
}

.footer-links-list ul li a dl dd {
 padding: 10px 16px;
 margin-bottom: 0;
 font-size: 1.0rem;
 font-weight: bold;
 text-align: center;
 color: #333333;
}

.slick-prev, .slick-next {
 width: 24px!important;
 height: 24px!important;
 top: 48%!important;
}

.slick-next {
 right: -30px!important;
}

.slick-next::before {
 content: ''!important;
 width: 24px;
 height: 24px;
 background: url("../images/arrow_banner_right.png") center center no-repeat;
 display: block;
}

.slick-prev {
 left: -30px!important;
}

.slick-prev::before {
 content: ''!important;
 width: 24px;
 height: 24px;
 background: url("../images/arrow_banner_left.png") center center no-repeat;
 display: block;
}


.footer-address {
 background: url("../images/bg-naname.png") top left no-repeat;
}

.footer-address-inner {
 display: flex;
 justify-content: center;
 align-items: center;
 height: 212px;
}

.footer-address-inner dl {
 display: flex;
 margin-bottom: 0;
}

.footer-address-inner dl dd {
 padding-left: 10px;
 font-size: 0.875rem;
}

.footer-address-inner dl dd p {
 margin-bottom: 0;
}

.footer-address-img {
 background: url("../images/bg-footer-img.jpg") center center no-repeat;
 background-size: cover;
 height: 250px;
}

.footer-name {
 margin-bottom: 10px;
 font-size: 1.0rem;
 font-weight: bold;
 color: #333333;
}

.footer-address-inner dl dd a {
 color: #045502;
}

.footer-sitemap-inner {
 padding-top: 60px;
}

.footer-sitemap {
 padding-bottom: 60px;
 position: relative;
}

.footer-sitemap h2 {
 margin-bottom: 0;
 width: 100%;
}

.footer-sitemap h2 span {
 display: inline-block;
 padding: 10px 0;
 border-radius: 999px;
 width: 104px;
 background: #0C8235;
 font-size: 0.75rem;
 color: #fff;
 text-align: center;
 position: absolute;
 top: -16px;
 left: 50%;
 transform: translateX(-50%);
}

.footer-sitemap h2 span:after {
 content: 'ー';
 margin-left: 10px;
}

.sitemap-list-warp {
 display: flex;
 justify-content: space-between;
 flex-wrap: wrap;
}

.sitemap-list {
 width: 25%;
 padding-right: 14px;
}

.sitemap-list h3 {
 border-bottom: #b2de81 solid 1px;
 margin-bottom: 15px;
 padding-bottom: 15px;
 font-size: 1.0rem;
 font-weight: bold;
 color:#045502;
}

.sitemap-list ul {
 list-style: none;
 margin-bottom: 25px;
 font-size: 0.8125rem;
}

.sitemap-list ul li {
 line-height: 1.6;
 margin-bottom: 10px;
}

.sitemap-list ul li a {
 color:#333333;
}

.footer-sitemap {}

.copyright {
 display: flex;
 justify-content: center;
 align-items: center;
 background: #045502;
 height: 83px;
}

.copyright p {
 margin-bottom: 0;
 font-size: 0.75rem;
 color: #fff;
}

@media screen and (max-width:1279px){
 .slick-prev {
  left: 10px!important;
 }
 .slick-next {
  right: 10px!important;
 }
 .slick-prev, .slick-next {
  top: auto !important;
  bottom: -40px;
 }
}

/* single */

.title-warp {
 background: url("../images/bg-title.jpg") center center no-repeat;
 background-size: cover;
 position: relative;
}

.title-warp:after {
 content: "";
 background: transparent linear-gradient(99deg, #0C8235 0%, #045502 100%) 0% 0% no-repeat padding-box;
opacity: 0.5;
 position: absolute;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
}

.title-inner {
 position: relative;
 z-index: 2;
 padding: 40px 0 45px 0;
 display: flex;
 flex-direction: column;
 justify-content: center;
 color: #fff;
 background: url("../images/heading1-border.png") left bottom no-repeat;
}

.title-inner p {
 margin-bottom: 0;
 font-size: 0.875rem;
}

.title-inner h1 {
 margin-bottom: 0;
 font-size: 2.23529412rem;
 font-weight: bold;
 line-height: 1.2;
}

.title-inner h1.center {
 text-align: center;
}

.title-inner ul {
 margin-bottom: 0;
 list-style: none;
 display: flex;
 justify-content: flex-start;
 font-size: 0.875rem;
}

.title-inner ul li {
 margin-left: 25px;
 background: url("../images/arrow-head.png") left center no-repeat;
 padding-left: 20px;
}

.title-inner ul li:first-child {
 margin-left: 0;
 padding-left: 0;
 background: none;
}

.page-template-page-1cell .title-warp .title-inner {
  background: url("../images/heading1-border.png") center bottom no-repeat;
}

/* menu*/

.side-menu {
 width: 285px;
 max-width: 285px;
 float: left;
}

body.single .side-menu,
body.page-template-page-third .side-menu,
body.departments-child .side-menu {
 margin-top: -62px;
}

.side-menu dl {
 background: #fff;
 margin-bottom: 0;
 margin-top: 15px;
}

.side-menu h2 {
 display: flex;
 justify-content: center;
 align-items: center;
 margin-bottom: 0;
 padding: 10px;
 min-height: 75px;
 background: linear-gradient(to right bottom, #0B7F32 0%, #0B7F32 50%, #045502 50%, #045502 100%);
 font-size: 1.0625rem;
 font-weight: bold;
 text-align: center;
 color: #fff;
 }

.menu-box .cat-list {
 margin-bottom: 20px;
 background: #E5F5D3;
}

.menu-box .cat-list ul {
 list-style: none;
 margin-bottom: 0;
}
.menu-box .cat-list li {}
.menu-box .cat-list li a {
 display: block;
 background: url("../images/arrow_side.png") top 25px left 8px no-repeat;
 padding: 18px 20px;
 border-bottom: #dbefc4 solid 1px;
 font-size: 0.875rem;
 color: #045502;
 line-height: 1.6;
 transition: 0.3s;
}

.menu-box .cat-list li a:hover {
 background: #045502 url("../images/arrow_side.png") top 25px left 8px no-repeat;
 color: #fff;
 text-decoration: none;
 transition: 0.3s;
}

.menu-box .cat-list li a.active {
 background: #fff url("../images/arrow_side_on.png") top 25px right 8px no-repeat;
 color: #333;
 border-bottom: #dbdcda solid 1px;
 text-decoration: none;
}

.menu-box dl dt, .menu-box dl dd.map {
 height: 48px;
 background: #E5F5D3;
 position: relative;
 display: flex;
 align-items: center;
 padding: 10px 10px 10px 0;
 font-weight: normal;
 transition: 0.3s;
}

.menu-box dl dd.map:hover {
 background: #045502;
 transition: 0.3s;
}

.menu-box dl dd.map:hover a {
 background: url("../images/icon-link-mgreen.png") center right no-repeat;
 color: #fff;
 text-decoration: none;
 transition: 0.3s;
}

.menu-box dl dt:before {
 content: '';
 height: 48px;
 width: 48px;
 display: block;
 background: #045502;
 margin-right: 10px;
}

.menu-box .reception dt:before {
 content: '';
 background: #045502 url("../images/icon-side-1.png") center center no-repeat;
}

.menu-box .reception dd ul {
 list-style: none;
 margin-bottom: 0;
 display: flex;
 flex-direction: column;
 align-items: center;
}

.menu-box .reception dd {
 padding: 0 15px 15px 15px;
 margin-bottom: 0;
}

.menu-box .reception dd ul li {
 width: 100%;
 padding: 10px 0;
 border-bottom: #999 dotted 1px;
 font-size: 1.250rem;
 font-weight: bold;
 text-align: center;
 color: #0C8235;
 display: flex;
 align-items: center;
 justify-content: center;
}

.menu-box .reception dd ul li span {
 margin-right: 10px;
 font-weight: normal;
 font-size: 0.875rem;
 color:#333333;
}

.menu-box .closed dt:before {
 content: '';
 background: #045502 url("../images/icon-side-2.png") center center no-repeat;
}

.menu-box .closed dd {
 padding: 15px;
 text-align: center;
}

.menu-box .closed p {
 font-size: 0.9375rem;
 font-weight: bold;
 color:#0C8235;
 line-height: 1.2;
}

.menu-box .closed p span {
 font-size: 0.875rem;
 font-weight: normal;
 color:#333333;
}

.button a {
 display: block;
 width: 255px;
 margin: 0 auto;
 padding: 12px 18px;
 background: transparent linear-gradient(102deg, #8BC24C 0%, #0C8235 100%) 0% 0% no-repeat padding-box;
 box-shadow: 0px 5px 20px #0000004D;
 color: #fff;
 position: relative;
 font-weight: bold;
 transition: 0.3s;
}

.button a:hover {
 background: transparent linear-gradient(259deg, #8BC24C 0%, #0C8235 100%) 0% 0% no-repeat padding-box;
 transition: 0.3s;
}

.button a:after {
 content: '';
 width: 8px;
 height: 12px;
 background: url("../images/icon-link-lgreen.png") center center no-repeat;
 display: block;
 position: absolute;
 right: 10px;
 top: 50%;
 margin-top: -6px;
}

.button a:hover {
 text-decoration: none;
}

.menu-box .access {
 margin-bottom: 0;
}

.menu-box .access dt {
 background: #0C8235;
}

.menu-box .access dt a {
 width : calc(100% - 58px) ;
 background: url("../images/icon-link-lgreen.png") center right no-repeat;
 color:#fff;
 transition: 0.3s;
}

.menu-box .access dt:hover {
 background: #045502;
 transition: 0.3s;
}

.menu-box .access dt:hover a {
 text-decoration: none;
}

.menu-box .access dt:before {
 content: '';
 background: #045502 url("../images/icon-side-3.png") center center no-repeat;
}

.menu-box .access dd {
 padding: 20px 30px;
 margin-bottom: 0;
 background: #0C8235;
}
.menu-box .access dd ul {
 list-style: none;
 margin-bottom: 0;
 font-size: 0.875rem;
}

.menu-box .access dd ul li {
 background: url("../images/icon-list-circle-1.png") top 10px left no-repeat;
 padding-left: 16px;
}
.menu-box .access dd ul li a {
 color: #fff;
}

.menu-box .map dt {}
.menu-box .map dt:before {
 content: '';
 background: #045502 url("../images/icon-side-4.png") center center no-repeat;
}

.menu-box .map:before {
 content: '';
 background: #045502 url("../images/icon-side-4.png") center center no-repeat;
 display: block;
 width: 48px;
 height: 48px;
}

.menu-box .map dt a {
 width : calc(100% - 58px) ;
 background: url("../images/icon-link-mgreen.png") center right no-repeat;
 color:#333333;
 transition: 0.3s;
}

.menu-box .map a {
 width : calc(100% - 58px) ;
 background: url("../images/icon-link-mgreen.png") center right no-repeat;
 color:#333333;
 transition: 0.3s;
 margin-left: 10px;
}

.menu-box .map dt:hover {
 background: #045502;
 transition: 0.3s;
}

.menu-box .map dt:hover a {
 color: #fff;
 text-decoration: none;
}

/* panks */

.panks {
 width: 100%;
 padding: 15px 0;
 background: #ECF0ED;
}

.panks ul {
 margin-bottom: 0;
 display: block;
 overflow: hidden;
 list-style: none;
 font-size: 0.75rem;
}

body.single .panks ul,
body.page-template-page-third .panks ul,
body.departments-child .panks ul {
 padding-left: 330px;
}

body.info-child.heart-center .panks ul,
body.info-child.maternal-and-child-health .panks ul {
 padding-left: 0;
}

.panks ul li {
 background: url("../images/arrow_side_on.png") top 11px left no-repeat;
 padding-left: 10px;
 margin-left: 16px;
 color: #333333;
 float: left;
}

.panks ul li:first-child {
 background: url("../images/icon-link-mgreen.png") top 11px left no-repeat;
 margin-left: 0;
}

.panks ul li a {
 color: #0C8235;
}

.bottom-menu {
 background: #fafafa;
 border-top: #97c05d dotted 1px;
}

.bottom-menu .auto-height {
 background: #fff;
}

.bottom-menu-inner {
 max-width: 1140px;
 margin: 0 auto;
 padding: 60px 0;
}

.bottom-menu-inner .reception dd ul li {
 font-size: 1.50rem;
}

.bottom-menu-inner .reception dd ul li span {
 font-size: 1.0rem;
}

.bottom-menu-inner .reception dd ul {
 margin-top: 10px;
}

.bottom-menu-inner .closed p {
 font-size: 1.0625rem;
}

.bottom-menu-inner .closed p span {
 font-size: 1.0rem;
}

/* single */

.main-contents {
 margin-top: 60px;
 padding-bottom: 120px;
}

.main-contents p {
 margin-bottom: 20px;
}

.main-contents h2 {
 margin: 30px 0 30px;
 border-left: #0C8235 solid 5px;
 padding: 10px 20px;
 font-size: 1.625rem;
 font-weight: bold;
 color: #333333;
}

.main-contents h3 {
 margin: 30px 0 30px;
 padding: 10px 16px;
 background: #ECF5E2 0% 0% no-repeat padding-box;
 box-shadow: 0px 2px 4px #00000019;
 border-radius: 10px;
 font-size: 1.250rem;
 font-weight: bold;
 color: #333;
}

.main-contents h4 {
  margin: 30px 0 30px;
  padding-left: 30px;
  background: url("../images/border-h4.png") top 11px left no-repeat;
  font-size: 1.125rem;
  font-weight: bold;
  color: #333;
}


.main-contents ol {
 margin-left: 30px;
 margin-bottom: 10px;
}

.main-contents ul {
 margin-left: 15px;
 margin-bottom: 20px;
}

.main-contents ol li,
.main-contents ul li {
 margin-bottom: 5px;
}

.main-contents ul {
 list-style: none;
}

.main-contents ul li {
 background: url("../images/icon-list-circle-1.png") top 12px left no-repeat;
 padding-left: 15px;
}

.main-contents .wp-block-quote ul,
.main-contents .wp-block-quote ol {
 margin-left: 25px;
 margin-bottom: 25px;
 margin-right: 25px;
 margin-top: 25px;
}

.main-contents hr {
 border: #969696 dotted 1px;
 margin: 30px 0;
}

.main-contents img {
 width: auto;
 max-width: 100%;
 height: auto;
}

.back-link {
 margin-top: 60px;
}

.back-link a {
 display: flex;
 justify-content: center;
 align-items: center;
 margin: 0 auto;
 width: 255px;
 height: 54px;
 background: #0C8235 url("../images/icon-link-lgreen-left.png") center left 10px no-repeat;
 box-shadow: 0px 5px 10px #00000033;
 color: #fff!important;
 text-decoration: none!important;
 transition: 0.3s;
}

.back-link a:hover {
 background: #045502 url("../images/icon-link-lgreen-left.png") center left 10px no-repeat;
 text-decoration: none;
 transition: 0.3s;
}

/* category */

body.category .main-contents,
body.allnews .main-contents,
body.page-template-page-1cell .main-contents {
 width: 100%;
 padding: 0 0 120px 0;
}

body.category .main-contents .archive-list {}

body.category .main-contents .archive-list ul,
body.allnews .main-contents .archive-list ul {
 margin-left: 0;
 list-style: none;
}

body.category .main-contents .archive-list > ul > li,
body.allnews .main-contents .archive-list > ul > li {
 margin-bottom: 0;
 padding-left: 0;
 padding-top: 20px;
 padding-bottom: 20px;
 background: none;
 border-bottom: #DEDEDE dotted 1px;
}

body.category .main-contents .archive-list > ul > li > span,
body.allnews .main-contents .archive-list > ul > li > span {
 display: flex;
 font-size: 0.875rem;
 color: #767676;
 align-items: center;
 margin-bottom: 10px;
}

body.category .main-contents .archive-list > ul > li > a,
body.allnews .main-contents .archive-list > ul > li > a {
 display: inline-block;
 /* width: 100%; */
 color: #0C8235;
 /*text-overflow: ellipsis;
 white-space: nowrap;
 overflow: hidden;*/
 text-decoration: none;
}

body.category .main-contents .archive-list > ul > li > a:hover,
body.allnews .main-contents .archive-list > ul > li > a:hover {
 text-decoration: underline;
}

.post-tag {
 display: flex;
 margin-bottom: 0!important;
}

.post-tag li {
 min-width: 90px!important;
 height: 27px!important;
 margin-bottom: 0!important;
 margin-left: 12px!important;
 padding-left: 0!important;
 padding: 0 5px!important;
 background: #333333!important;
 color: #fff!important;
 font-size: 0.8125rem!important;
 text-align: center!important;
 line-height: 27px!important;
}

.post-tag li.tag-fulltime {
 background: #0D3B66!important;
}
.post-tag li.tag-parttime {
 background: #333333!important;
}
.post-tag li.tag-full {
 background: #009A31!important;
}
.post-tag li.tag-part {
 background: #0661A4!important;
}

@media screen and (max-width: 767px){
.post-tag li {
 min-width: 78px!important;
 margin-bottom: 0!important;
 margin-left: 12px!important;
 padding-left: 0!important;
 padding: 0 10px!important;
 background: #333333!important;
 color: #fff!important;
 font-size: 0.6875rem!important;
 text-align: center!important;
 height: 22px!important;
 line-height: 22px!important;
}
}


/* pager */

.wp-pagenavi {
  margin-top: 60px;
  text-align: center;
 font-size: 0.875rem;
}

.wp-pagenavi a {
 text-decoration: none!important;
}

.wp-pagenavi a, .current {
  display: inline-block;
  border: #fafafa solid 1px;
  border-radius: 50%;
  width: 34px;
  height: 34px;
  margin-right: 5px;
  margin-left: 5px;
  line-height: 34px;
  margin-bottom: 10px;
 color: #045502;
 transition: 0.3s;
}

.current {
  background: #045502;
 border: #045502 solid 1px;
 color: #fff;
  margin-bottom: 10px;
}

.wp-pagenavi a:hover {
  background: #045502;
 border: #045502 solid 1px;
 color: #fff;
 text-decoration: none;
 transition: 0.3s;
}

.main-contents .page-list ul li a { transition: 0.3s;}
.main-contents .page-list ul li a:hover {
 background: #fff!important;
 text-decoration: none!important;
 transition: 0.3s;
}

/* スマホヘッダー */

.sp-header { display: none;}
.sp-header-inner {
 height: 64px;
 display: flex;
 justify-content: space-between;
 align-items: center;
}

.sp-header-inner h1 {
 height: 33px;
 width: 165px;
 margin-bottom: 0;
 margin-left: 10px;
}

.sp-header-inner h1 a {
 display: inline-block;
 height: 33px;
 width: 165px;
}

.sp-header-inner h1 img {
 height: 33px;
 width: 165px;
 vertical-align: super;
}

.sp-header-inner ul {
 margin-bottom: 0;
 display: flex;
 list-style: none;
}

.sp-header-inner ul li {
 width: 64px;
 height: 64px;
 display: flex;
 justify-content: center;
 align-items: center;
}

.sp-header-inner ul li a {
 display: flex;
 justify-content: center;
 align-items: center;
 flex-direction: column;
 width: 100%;
 height: 100%;
 font-size: 0.625rem;
 line-height: 1.4;
}

.sp-header-inner ul li.search a {
 background: #ECF0ED;
 color:#045502;
 position: relative;
}

.sp-header-inner ul li.search a:before {
 content: '';
 width: 24px;
 height: 24px;
 background: url("../images/icon-sp-search.png") center center no-repeat;
 display: block;
}

.sp-header-inner ul li.access a {
 background: #045502;
 color:#fff;
 position: relative;
}

.sp-header-inner ul li.access a:before {
 content: '';
 width: 24px;
 height: 24px;
 background: url("../images/icon-sp-access.png") center center no-repeat;
 display: block;
}

.sp-header-inner ul li.access a:hover {
 color: #fff;
 text-decoration: none;
}

.sp-header-inner ul li.menu a {
 background: #0C8235;
 color:#fff;
 position: relative;
}

.sp-header-inner ul li.menu a:hover {
 color: #fff;
}

.sp-header-inner ul li.menu a:before {
 content: '';
 width: 24px;
 height: 24px;
 background: url("../images/icon-sp-menu.png") center center no-repeat;
 display: block;
}

.sp-header-inner ul li.menu a.open:before {
 content: '';
 width: 24px;
 height: 24px;
 background: url("../images/icon-sp-close.png") center center no-repeat;
 display: block;
}

/* table */

.main-contents table {
 width: 100%!important;
 border: #fafafa solid 1px;
}

.main-contents table tbody tr {
 background: #fff;
}

.main-contents table tbody tr:nth-child(even) {
 background: #ECF5E2;
}

.main-contents table thead {
 background: #8BC24C;
 text-align: center;
 border-bottom: none!important;
 color: #fff;
}

.main-contents table, .main-contents table th, .main-contents table td {
 border: #fafafa solid 1px!important;
 margin-bottom: 15px;
 font-size: 0.941176471rem;
}

.main-contents table th, .main-contents table td {
 padding: 10px 15px!important;
 font-weight: normal;
}

.main-contents table th p, .main-contents table td p {
 margin-bottom: 0;
}

.main-contents table tbody th {
 background: #8BC24C;
 color: #fff;
}

.main-contents .wp-block-quote {
 border: #7E152E solid 5px;
 padding-left: 0;
 background: #fff;
}

.main-contents .wp-block-quote h5 {
 display: block;
 border-bottom: #7E152E solid 1px;
 margin-bottom: 0;
 padding: 15px 25px;
 font-size: 1.125rem;
 font-weight: bold!important;
 color: #7E152E;
}

.main-contents .wp-block-quote p {
 margin-bottom: 0;
 padding: 15px 25px;
}

.main-contents .wp-block-button {
 display: block!important;
 width: 445px;
 margin: 0 auto;
}

.main-contents .wp-block-button a {
 background-color: #fff;
 padding: 20px;
 border: #0C8235 solid 1px;
 color: #0C8235;
 text-align: center;
 display: block;
 transition: 0.3s;
}

.main-contents .wp-block-button a:after {
 content: url("../images/icon-link.png");
 margin-left: 10px;
}

.main-contents .wp-block-button a:hover {
 background: #e5f5d3!important;
 transition: 0.3s!important;
}

@media screen and (max-width:1536px){
 .header-head > .container-fluid,
 .header-botoom .container-fluid {
  padding: 0 30px 0 30px;
 }
 .head-seaech {
  width: 230px;
 }
}

@media screen and (max-width:1365px){
 .head-seaech {
  width: 250px;
  margin-left: 10px;
 }
}

@media screen and (max-width:1279px){
 main {
  padding-top: 64px;
 }
 .pc-header { display: none;}
 .sp-header {
  display: block;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 10;
 }
 .sp-header.open {
  display: block;
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 10;
  overflow-y: auto;
 }
}

@media screen and (max-width:991px){
 .footer-head-inner ul li {
  width: 50%;
 }
 .side-menu {
  width: 100%;
  max-width: 100%;
  float: none;
  margin-bottom: 40px;
 }
 body.category .main-contents,
 body.allnews .main-contents,
 body.page-template-page-1cell .main-contents {
  width: 100%;
  padding: 0 0 120px 0;
 }
}

@media screen and (max-width:767px){
 .container-fluid {
  padding: 0 15px;
 }
 .title-warp {
  min-height: 130px;
 }
 .title-inner {
  min-height: 130px;
  padding: 10px 0 10px 0;
 }
 .title-inner h1 {
  font-size: 1.625rem;
 }
 .button a {
  width: 218px;
 }
 .panks{
  display: none;
 }
 
 .footer-sitemap h2 span::after {
  content: '＋';
  margin-left: 10px;
 }
 .footer-sitemap h2.open span::after {
  content: '－';
  margin-left: 10px;
 }
 .footer-sitemap-inner {
  display: none;
 }
 .sitemap-list {
  width: 100%;
 }
 .back-link {
  margin-top: 30px;
 }
 .footer-address-img {
  height: 150px;
 }
}

@media screen and (max-width:479px){
 .main-contents .wp-block-button {
  width: 100%;
 }
 body.single .main-contents a.wp-block-button__link[target="_blank"],
 body.page .main-contents a.wp-block-button__link[target="_blank"] {
  width: 100%!important;
 }
}

.main-inner {
 background: url("../images/bg-naname.png") left top no-repeat;
}

body.single .main-contents {}

.main-contents a {
 color: #0C8235;
 text-decoration: underline;
}

.main-contents a:hover {
 text-decoration: none;
}

body.single .main-contents a[target="_blank"],
body.page .main-contents a[target="_blank"] {
 padding-right: 30px;
 background: url("../images/icon-link.png") no-repeat right center;
}

body.single .main-contents .page-list a[target="_blank"],
body.page .main-contents .page-list a[target="_blank"] {
 padding-right: 0;
 background: none;
} 

body.single .main-contents a.wp-block-button__link[target="_blank"],
body.page .main-contents a.wp-block-button__link[target="_blank"] {
 padding-right: 30px;
 background: none;
 width: 445px;
} 

body.single .main-contents a[href$=".xls"],
body.single .main-contents a[href$=".xlsx"],
body.page .main-contents a[href$=".xls"],
body.page .main-contents a[href$=".xlsx"] {
 padding-right: 57px;
 background: url("../images/icon-excel.png") no-repeat right center;
}

body.single .main-contents a[href$=".pdf"],
body.page .main-contents a[href$=".pdf"] {
 padding-right: 47px;
 background: url("../images/icon-pdf.png") no-repeat right center;
}

body.single .main-contents a[href$=".doc"],
body.single .main-contents a[href$=".docx"],
body.page .main-contents a[href$=".doc"],
body.page .main-contents a[href$=".docx"] {
 padding-right: 57px;
 background: url("../images/icon-word.png") no-repeat right center;
}

body.single .main-contents .page-list-warp a[target="_blank"],
body.page .main-contents .page-list-warp a[target="_blank"] {
 display: block;
 padding-right: 0;
 background: none;
} 

.wp-block-button a {
 text-decoration: none;
}


.sp-gnav {
 position: absolute;
 top: 64px;
 left: 0;
 width: 100%;
 z-index: 4;
 background: #fff;
 display: none;
}

.sp-gnav .menu-list > li > a {
 display: block;
 width: 100%;
 height: 63px;
 padding: 0 10px;
 font-size: 1.125rem;
 font-weight: bold;
 text-align: center;
 color: #393939;
 background: #fff url("../images/icon-arrow-bottom.png") right 15px center no-repeat;
}

.sp-gnav .menu-list > li.sp-gnav-0 > a {
 transition: 0.3s;
 background: #fff;
}
.sp-gnav .menu-list > li.sp-gnav-0 > a:hover {
 text-decoration: none;
}
.sp-gnav .menu-list > li.sp-gnav-0 > a:hover > span {
 transition: 0.3s;
 background: #0C8235;
 color: #fff;
 text-decoration: none;
}

.sp-gnav .menu-list > li > a.open {
 background: #0C8235;
 color: #fff;
}

.sp-gnav .menu-list > li > a > span {
 width: 100%;
 height: 100%;
 border-bottom: #0C8235 solid 2px;
 display: flex;
 justify-content: center;
 align-items: center;
}

.sp-gnav-1 a span::before {
  content: url("../images/icon-gnav-1.png");
  width: 36px;
  height: 36px;
  border-radius: 999px;
  background: #E5F5D3;
  display: inline-block;
  position: absolute;
  left: 10px;
}

.sp-gnav-1 a.open span::before {
 content: url("../images/icon-gnav-1-on.png");
 background: #0c8235;
}

.sp-gnav-2 a span::before {
  content: url("../images/icon-gnav-2.png");
  width: 36px;
  height: 36px;
  border-radius: 999px;
  background: #E5F5D3;
  display: inline-block;
  position: absolute;
  left: 10px;
}

.sp-gnav-2 a.open span::before {
 content: url("../images/icon-gnav-2-on.png");
 background: #0c8235;
}

.sp-gnav-3 a span::before {
  content: url("../images/icon-gnav-3.png");
  width: 36px;
  height: 36px;
  border-radius: 999px;
  background: #E5F5D3;
  display: inline-block;
  position: absolute;
  left: 10px;
}

.sp-gnav-3 a.open span::before {
 content: url("../images/icon-gnav-3-on.png");
 background: #0c8235;
}

.sp-gnav-4 a span::before {
  content: url("../images/icon-gnav-4.png");
  width: 36px;
  height: 36px;
  border-radius: 999px;
  background: #E5F5D3;
  display: inline-block;
  position: absolute;
  left: 10px;
}

.sp-gnav-4 a.open span::before {
 content: url("../images/icon-gnav-4-on.png");
 background: #0c8235;
}

.sp-gnav-5 a span::before {
  content: url("../images/icon-gnav-5.png");
  width: 36px;
  height: 36px;
  border-radius: 999px;
  background: #E5F5D3;
  display: inline-block;
  position: absolute;
  left: 10px;
}

.sp-gnav-5 a.open span::before {
 content: url("../images/icon-gnav-5-on.png");
 background: #0c8235;
}

.sp-gnav-0 a span::before {
  content: url("../images/icon-gnav-0.png");
  width: 36px;
  height: 36px;
  border-radius: 999px;
  background: #E5F5D3;
  display: inline-block;
  position: absolute;
  left: 10px;
}

.sp-gnav-0 a.open span::before {
 content: url("../images/icon-gnav-0-on.png");
 background: #0c8235;
}

.sp-gnav .menu-list > li > ul {
 background: #228d47;
 padding: 30px 15px 40px 15px;
 list-style: none;
 overflow: hidden;
 display: none;
}

.sp-gnav .menu-list > li > ul > li {
 padding: 0 5px;
 width: 50%;
 line-height: 1.4;
 float: left;
}

.sp-gnav .menu-list > li > ul > li > a {
 display: block;
 padding: 10px 0;
 border-bottom: #65b07f solid 1px;
 font-size: 0.875rem;
 color: #fff;
}

.sp-menu-bottom {
 background: #fff;
 padding: 30px 0;
}

.sp-menu-bottom ul {
 list-style: none;
 margin-bottom: 0;
 margin-left: 20px;
 margin-right: 20px;
 display: flex;
 flex-wrap: wrap;
}

.sp-menu-bottom ul li {
 width: 50%;
 margin-bottom: 5px;
 font-size: 0.75rem;
}

.sp-menu-bottom ul li:before {
 content: '|';
 color: #E3E3E3;
 margin-right: 10px;
}

.sp-menu-bottom ul li:nth-child(odd):before {
 content: '';
 color: #E3E3E3;
 margin-right: 0;
}

.sp-menu-bottom ul li a {
 color: #393939;
}

.sp-head-search {
 background: #ECF0ED;
 padding: 45px 0;
 position: absolute;
 left: 0;
 top: 64px;
 width: 100%;
 z-index: 4;
 display: none;
}

.sp-head-search .search-language {
 justify-content: center;
 align-items: flex-start;
}

.close-button {
 margin-top: 30px;
 text-align: center;
}

@media screen and (max-width: 767px){
 .title-inner h1 {
  font-size: 1.52941176rem;
 }
 .footer-head-inner a dl dt {
  width: 45px;
  height: 80px;
 }
 .footer-head-inner a dl dt img {
  width: 45px;
  height: 80px;
  object-fit: cover;
 }
 .footer-head-inner a dl dd {
  width: calc(100% - 45px);
  height: 80px;
  font-size: 0.875rem;
  padding: 10px 10px;
  display: flex;
  align-items: center;
 }
 
 .footer-address-inner dl dt {
  width: 42px;
 }
 
 .footer-address-inner dl dt img {
  width: 100%;
  height: auto;
 }
 
 .main-contents {
  margin-top: 45px!important;
  padding-bottom: 60px;
 }
 body.category .main-contents,
 body.allnews .main-contents,
 body.page-template-page-1cell .main-contents {
  padding-bottom: 60px;
 }
 .main-contents h2 {
  font-size: 1.375rem;
 }
 .main-contents h3 {
  font-size: 1.125rem;
 }
 .main-contents .scroll table {
  width:100%;
 }
 .main-contents .scroll {
  overflow: auto;
  white-space: nowrap;
 }
 .main-contents .scroll::-webkit-scrollbar{
  height: 5px;
 }
 .main-contents .scroll::-webkit-scrollbar-track{
  background: #F1F1F1;
 }
 .main-contents .scroll::-webkit-scrollbar-thumb {
  background: #BCBCBC;
 }
 body.single .side-menu, body.page-template-page-third .side-menu, body.departments-child .side-menu {
  margin-top: 0;
 }
 .sp-gnav .menu-list > li > ul > li {
  padding: 0 5px;
  width: 100%;
  line-height: 1.4;
  float: none;
 }
}

#loader-bg {
  background-color: #fff;
  height: 100%;
  left: 0px;
  position: fixed;
  top: 0px;
  width: 100%;
  z-index: 100;
}
#loader-bg img {
  left: 50%;
  position: fixed;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 100;
}