@charset "UTF-8";

/* //////////////////////////////////////////////////

　サイト全般のスタイル

////////////////////////////////////////////////// */
/*
  FONT
-------------------------------------------------- */
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 100; }
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Light"); font-weight: 200; }
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Regular"); font-weight: 300; }
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 400; }
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Bold"); font-weight: 500; }

/*@import url('//fonts.googleapis.com/css2?family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&display=swap');*/
/*@font-face {
font-family: 'Noto Sans Japanese'; font-style: normal;
font-weight: 200;
src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Light.woff2) format('woff2'),url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Light.woff) format('woff'),url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Light.otf) format('opentype');
font-display: swap;
}*/

/*@import url('https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700&display=swap');
.lato { font-family: 'Lato', sans-serif; font-weight: 400; }
.lato-light { font-family: 'Lato', sans-serif; font-weight: 300; }
.lato-bold { font-family: 'Lato', sans-serif; font-weight: 700; }*/

/*.ital { font-style: italic; }*/

/* 秀英にじみ丸ゴシック B */
.nmg { font-family: "秀英にじみ丸ゴシック B", Shuei NijimiMGo B; }

/*
  base
-------------------------------------------------- */

html { font-family: "Yu Gothic", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; font-weight: 400; }

@media all and (-ms-high-contrast: none) {
html { font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif }
}
@media all and (-ms-high-contrast: active) {
html { font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif }
}

body { position: relative; font-size: 18px; }

/*@media print, screen and (max-width: 768px) { body { font-size: 16px; } }
@media print, screen and (max-width: 560px) { body { font-size: 13px; } }*/

@media print {
body { -webkit-print-color-adjust: exact; }
img{height: unset !important;}
}

p { line-height: 1.75; }
dt, dd, th, td, address { line-height: 1.6; }
li { line-height: 1.4; }
a { text-decoration: none; }
a:hover { text-decoration: underline; }
b, em, strong { font-weight: 500; }
input, textarea, select { font-size: 16px; }

.page-break { break-after: page; }

.ie11 { display: none; }
@media all and (-ms-high-contrast:none) {
*::-ms-backdrop, .ie11 { display: block; }
}

/* rollover */
@media print, screen and (min-width: 768px) {
a:hover img.hov { filter: alpha(opacity=8); -moz-opacity: 0.8; opacity: 0.8; }
.ovrgp a:hover img, img.ovr:hover, input.ovr:hover, button.ovr:hover { filter: alpha(opacity=80); opacity: 0.80; }
}


/* hiddn */
.pc { display: none !important; }
@media print, screen and (min-width: 768px) {
.pc { display: block !important; }
.sp { display: none !important; }
span.pc { display: inline !important; }
}

/*
  LAYOUT
-------------------------------------------------- */
body { /*overflow-x: hidden;*/ }
#wrapper { position: relative; }
/*.fixed #contents, .subpage #contents { margin-left: 300px; }
.container { max-width: 1120px; }
.subpage .container { max-width: inherit; padding: 0 60px; }*/

@media print, screen and (max-width: 768px) {
#content { margin-top: 60px; }
/*#contents { margin-left: 0; }
.fixed #contents, .subpage #contents { margin-left: 0; }
.container { max-width: inherit; }
.subpage .container { padding: 0 10px; }*/
}


/*
  SP NAVI
-------------------------------------------------- */

/* sp-btn */
#sp-btn { position: fixed; top: 0; right: 0; z-index: 999; display: block; text-align: center; width: 70px; height: 60px; padding-top: 11px; font-size: 13px; font-weight: 500; }
.sp-nav-open #sp-btn { background: #7fbc34; color: #fff; }
/*.sp-tel-open #sp-btn { pointer-events:none; }*/

#sp-btn-icon { position: relative; width: 20px; height: 19px; margin: 0 auto 7px; }
#sp-btn-icon span { position: absolute; left: 0; width: 100%; height: 3px; background-color: #333; border-radius: 3px; }
.sp-nav-open #sp-btn-icon span { background-color: #fff; }

#sp-btn-icon, .#sp-btn-icon span { display: inline-block; transition: all .5s; box-sizing: border-box; }
#sp-btn-icon span:nth-of-type(1) { top: 0; }
#sp-btn-icon span:nth-of-type(2) { top: 8px; }
#sp-btn-icon span:nth-of-type(3) { bottom: 0; }

.open #sp-btn-icon span:nth-of-type(1) { -webkit-transform: translateY(11px) rotate(-45deg); transform: translateY(11px) rotate(-45deg); }
.open #sp-btn-icon span:nth-of-type(2) { left: 100%; opacity: 0; -webkit-transform: translateY(6px); transform: translateY(6px); -webkit-animation: active-btn06-bar02 .8s forwards; animation: active-btn06-bar02 .8s forwards; }

@-webkit-keyframes active-btn06-bar02 { 100% { height: 0; } }
@keyframes active-btn06-bar02 { 100% { height: 0; } }
.open #sp-btn-icon span:nth-of-type(3) { -webkit-transform: translateY(-5px) rotate(45deg); transform: translateY(-5px) rotate(45deg); }

@media print, screen and (min-width: 768px) {
#sp-btn { display: none; }
}

/* sp-nav */
#sp-nav { display: none; position: fixed; top: 60px; left: 0; right: 0; bottom: 0; overflow: auto; width: 100%; height: 100%; z-index: 1000; background: #fff; }
/*#sp-nav:before { content: ""; background: rgba(255,255,255, 1); width: 100%; height: 100%; position: absolute; top: -5px; left: -5px; right: -5px; bottom: -5px; z-index: -1; }*/

@media print, screen and (min-width: 768px) {
#sp-nav { display: block; position: inherit; top: auto; left: auto; right: auto; bottom: auto; overflow: inherit; width: auto; height: auto; background: none; }
#sp-nav:before { display: none; }
}

/* sp-close */
/*#sp-close { margin-top: 30px; }
#sp-close:before { display: inline-block; content: ""; width: 15px; height: 15px; margin-right: 4px; background: url("../img/ico_batu.png") no-repeat; background-size: cover; vertical-align: middle; }

.batu {display:inline-block;width:50px;height:50px;position:relative; cursor:pointer}
.batu span::before,.batu span::after{display:block;content:"";position:absolute;top:50%;left:50%;width:84%;height:16%;margin:-8% 0 0 -42%;background:#29201e}
.batu span::before{transform:rotate(-45deg)}
.batu span::after{transform:rotate(45deg)}

@media print, screen and (min-width: 768px) {
#sp-close { display: none; }
}*/
.sp-close { display: flex; justify-content: center; align-items: center; padding-bottom: 15px; font-weight: 500; }
.sp-close > span { display:inline-block; width: 25px; height: 25px; position:relative; cursor:pointer; margin-right: 5px; }
.sp-close > span::before,
.sp-close > span::after{display:block;content:"";position:absolute;top:50%;left:50%;width:84%;height:16%;margin:-8% 0 0 -42%;background:#0a0507}
.sp-close > span::before{transform:rotate(-45deg)}
.sp-close > span::after{transform:rotate(45deg)}

/* sp-tel */
#sp-tel { position: fixed; top: 0; right: 70px; z-index: 999; display: block; text-align: center; }
/*.sp-nav-open #sp-tel { pointer-events:none; }*/
#sp-tel span { display: block; width: 70px; height: 60px; padding-top: 10px; text-align: center; color: #67912c; font-weight: 500; font-size: 13px; }
.sp-tel-open #sp-tel span { background: #7fbc34; color: #fff; }
#sp-tel i { margin-bottom: 8px; font-size: 20px; }

@media print, screen and (min-width: 768px) {
#sp-tel { display: none; }
}


/* sp-phone */
#sp-phone { display: none; position: fixed; top: 60px; left: 0; right: 0; bottom: 0; overflow: auto; width: 100%; height: 100%; z-index: 1000; background: #fff; }
#sp-phone h3 { padding: 25px 15px; text-align: center; font-weight: 500; font-size: 88%; }
#sp-phone h3 small { margin-left: 10px; font-size: 88%; }
#sp-phone h3 small span { color: #e60012; }
#sp-phone table { width: 100%; font-size: 88%; }
#sp-phone tr:nth-child(odd) { background: #f3f9ee; }
#sp-phone th { padding: 20px 10px; border-bottom: 1px solid #fff; }
#sp-phone td { width: 45%; padding: 20px 10px; border-bottom: 1px solid #fff; font-weight: 500; font-size: 119%; }
#sp-phone .th01 { background: #7fbc34; color: #fff; font-weight: 500; }
#sp-phone .sp-close { padding: 25px 0; background: #f3f9ee; }

@media print, screen and (min-width: 768px) {
#sp-phone { display: none; }
}



/*
  #globalnavi
-------------------------------------------------- */
#globalnavi { background: #e9f5dc; }
#globalnavi .inner { position: relative; width: 1200px; margin: 0 auto; }
#globalnavi ul { display: flex; justify-content: space-between; padding: 20px 0 0; }
#globalnavi li { position: relative; width: 100%; box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px; }
#globalnavi li:hover { box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px; }

#globalnavi li a, #globalnavi li span { position: relative; display: flex; justify-content: center; align-items: center; height: 50px; border-radius: 8px 8px 0 0; background: #fff; font-size: 75%; font-weight: 500; }

.bg-blue #globalnavi li a, .bg-blue #globalnavi li span { background: #0033cc; }
.bg-yellow #globalnavi li a, .bg-yellow #globalnavi li span { background: #ffff33; }
.bg-black #globalnavi li a, .bg-black #globalnavi li span { background: #000; }

.bg-white #globalnavi li a:after, .bg-white #globalnavi li span:after { content:''; position:absolute; bottom: 0; right: -20px; width: 20px; height: 20px; background: url("../../img/ico_tab.png") no-repeat; }

#globalnavi li.touzan { z-index: 6; }
#globalnavi li.zaitaku { z-index: 5; }
#globalnavi li.dock { z-index: 4; }
#globalnavi li.touseki-center { z-index: 3; }
#globalnavi li.sakuragaoka { z-index: 2; }
#globalnavi li.kitami { z-index: 1; }

#globalnavi li.touzan a { border-top: 8px solid #7fbc34; color: #67912c; }
#globalnavi li.zaitaku a { border-top: 8px solid #22855f; color: #1c4843; }
#globalnavi li.dock a { border-top: 8px solid #936245; color: #7b513d; }
#globalnavi li.touseki-center a { border-top: 8px solid #a770a2; color: #7e467b; }
#globalnavi li.sakuragaoka a { border-top: 8px solid #ea6881; color: #ea6a83; }
#globalnavi li.kitami a { border-top: 8px solid #56bcb1; color: #3b8e82; }

#globalnavi li.touzan.current a { background: #7fbc34; color: #fff; }
#globalnavi li.zaitaku.current a { background: #22855f; color: #fff; }
#globalnavi li.dock.current a { background: #936245; color: #fff; }
#globalnavi li.touseki-center.current a { background: #a770a2; color: #fff; }
#globalnavi li.sakuragaoka.current a { background: #ea6881; color: #fff; }
#globalnavi li.kitami.current a { background: #56bcb1; color: #fff; }

#globalnavi li.touzan.current a:after { background: url("../../img/ico_tab_01.png") no-repeat; }
#globalnavi li.zaitaku.current a:after { background: url("../../img/ico_tab_06.png") no-repeat; }
#globalnavi li.dock.current a:after { background: url("../../img/ico_tab_07.png") no-repeat; }
#globalnavi li.touseki-center.current a:after { background: url("../../img/ico_tab_08.png") no-repeat; }
#globalnavi li.sakuragaoka.current a:after { background: url("../../img/ico_tab_09.png") no-repeat; }
#globalnavi li.kitami.current a:after { background: url("../../img/ico_tab_10.png") no-repeat; }

/*#globalnavi li.touzan a:hover { background: #f3f9ee; }
#globalnavi li.zaitaku a:hover { background: #d5ece3; }
#globalnavi li.dock a:hover { background: #f8f4e6; }
#globalnavi li.touseki-center a:hover { background: #f6e3f4; }
#globalnavi li.sakuragaoka a:hover { background: #fae5e9; }
#globalnavi li.kitami a:hover { background: #e1f5f3; }*/

@media print, screen and (max-width: 768px) {
#globalnavi { display: none; }
}

/*
  #header
-------------------------------------------------- */
#header { position: relative; z-index: 100; background: #fff; }
@media print, screen and (max-width: 768px) {
#header { position: fixed; top: 0; left: 0; right: 0; z-index: 3; box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px; }
.sp-nav-open #header:before,
.sp-tel-open #header:before { content: ""; position: absolute; top: 0; left: 0; right: 0; z-index: 3; width: 100%; height: 60px; background: rgba(0, 0, 0, 0.2); }
}

.bg-blue #header { background: #0033cc; }
.bg-yellow #header { background: #ffff33; }
.bg-black #header { background: #000; }

#header .inner { width: 1200px; height: 165px; margin: 0 auto; }
#header .logo { width: 270px; }
@media print, screen and (max-width: 768px) {
#header .inner { display: flex; justify-content: space-between; align-items: center; width: auto; height: 60px; padding: 0 10px; }
#header .logo { width: 180px; }
}

#header .logo._w { display: none; }
.bg-blue #header .logo._w,
.bg-black #header .logo._w { display: inline; }
.bg-blue #header .logo._w + img,
.bg-black #header .logo._w + img { display: none; }

#header .primary { display: flex; justify-content: space-between; align-items: center; height: 100px; }
@media print, screen and (max-width: 768px) {
#header .primary { display: block; height: auto; padding: 20px 10px 0; }
}

#header .top-page a { display: block; padding: 8px 16px; background: #f3f9ee; color: #6b911a; font-size: 14px; font-weight: 500; border-radius: 5px; }
#header .top-page i { margin-right: 5px; }
@media print, screen and (max-width: 768px) {
#header .top-page { display: none; }
}

#header .bg-color { display: flex; align-items: center; }
#header .bg-color:before { content: "背景色"; margin-right: 10px; font-size: 14px; }
#header .bg-color ul { display: flex; }
#header .bg-color li { margin: 0 3px; }
#header .bg-color span { display: inline-block; padding: 8px 12px; border-radius: 5px; font-weight: 500; font-size: 14px; cursor: pointer; }
#header .bg-white span { background: #f3f3f3; color: #000;}
#header .bg-blue span { background: #568ee7; color: #fff; }
#header .bg-yellow span { background: #f8dd82; color: #000;}
#header .bg-black span { background: #585858; color: #fff; }

@media print, screen and (max-width: 768px) {
#header .bg-color:before { margin-right: 5px; }
#header .bg-color li { margin: 0 4px; }
#header .bg-color span { font-size: 16px; }
}

/*#bgcolor-white { background-color: #fff;}
#bgcolor-blue { background-color: #9ab3fb;}
#bgcolor-yellow { background-color: #F7FE2E;}
#bgcolor-black { background-color: #000;}*/

#header .unit { display: flex; padding: 15px 20px; background: #f3f9ee; border-radius: 10px; }
@media print, screen and (max-width: 768px) {
#header .unit { display: block; margin: 20px 0; padding: 20px 20px; border-radius: 5px; }
}

#header .site-search { position: relative; }
#header .site-search button { position: absolute; top: 5px; right: 10px; }
#header .site-search i { font-size: 14px; color: #6b911a; }
#header .site-search input { width: 220px; height: 30px; padding: 2px; border: none; }
#header .site-search input:focus { outline: 0; box-shadow: none; border: 2px solid #7fbc34; }
@media print, screen and (max-width: 768px) {
#header .site-search button { top: 10px; right: 12px; }
#header .site-search i { font-size: 18px; }
#header .site-search input { width: 100%; height: 40px; padding: 3px; }
}

.gsc-control-cse{
  padding: 0 !important;
}
.gsc-search-button-v2{
  background-color: #7fbc34 !important;
  border: none !important;
}
table.gsc-search-box {
  width: 300px !important;
}
@media print,screen and (max-width: 768px) {
  table.gsc-search-box {
    width: 90% !important;
  }
}
#header .font-size { margin-right: 10px; }
@media print, screen and (max-width: 768px) {
#header .font-size { position: absolute; top: 20px; right: 15px; margin-left: 0; }
}

#header .zoom, #header .normal { display: block; padding: 7px 15px; border-radius: 4px; font-weight: 500; font-size: 14px; cursor: pointer; background: #7fbc34; color: #fff; }
#header .normal { background: #555; }
#header .zoom.active, #header .normal.active { display: none; }
#header .font-size i { margin-right: 5px; }
@media print, screen and (max-width: 768px) {
#header .zoom, #header .normal { padding: 14px 14px; }
#header .font-size i { margin-right: 3px; }
}

#header .secondary { height: 65px; }
@media print, screen and (max-width: 768px) {
#header .secondary { height: auto; }
}

#header nav { padding: 0 30px; }
#header nav > ul { display: flex; }
#header nav > ul > li { display: flex; justify-content: center; align-items: center; width: 100%; height: 60px; }
#header nav > ul > li > a,
#header nav > ul > li > span > a { display: block; font-size: 113%; font-weight: 500; color: #0a0507; text-align: center; }

@media print, screen and (max-width: 768px) {
#header nav { padding: 0 15px; }
#header nav > ul { display: block; margin-top: 0; }
#header nav > ul > li { display: block; position: relative; width: 100%; margin-bottom: 10px; border-radius: 5px; box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px; height: auto; }
#header nav > ul > li > a,
#header nav > ul > li > span > a { padding: 15px 15px; text-align: left; font-size: 100%; color: #67912c; }
#header nav > ul > li i { margin-right: 3px; }
}
/*
#header nav { padding: 0 30px; }
#header nav > ul { display: flex; margin-top: 15px; }
#header nav > ul > li { width: 100%; }
#header nav > ul > li > a, #header nav > ul > li > span > a { display: block; font-size: 113%; font-weight: 500; color: #0a0507; text-align: center; }
@media print, screen and (max-width: 768px) {
#header nav { padding: 0 15px; }
#header nav > ul { display: block; margin-top: 0; }
#header nav > ul > li { position: relative; width: 100%; margin-bottom: 10px; border-radius: 5px; box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px; }
#header nav > ul > li > a, #header nav > ul > li > span > a { padding: 20px 20px; font-size: 88%;  text-align: left; color: #67912c; }
#header nav > ul > li i { margin-right: 3px; }
}
*/

.tertiary { display: none; }
@media print, screen and (max-width: 768px) {
.tertiary { display: block; margin-top: 30px; padding-bottom: 60px; }
.tertiary i { margin-right: 3px; }

.tertiary .group { padding: 15px 15px 10px; background: #f3f9ee; }
.tertiary .group ul { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; }
.tertiary .group li { width: 48%; margin-bottom: 10px; }
.tertiary .group a { display: flex; justify-content: center; align-items: center; height: 70px; padding: 15px; font-size: 82%; line-height: 1.4; border-radius: 10px; }

.tertiary li.touzan a { background: #7fbc34; color: #fff; }
.tertiary li.zaitaku a { background: #22855f; color: #fff; }
.tertiary li.dock a { background: #936245; color: #fff; }
.tertiary li.touseki-center a { background: #a770a2; color: #fff; }
.tertiary li.sakuragaoka a { background: #ea6881; color: #fff; }
.tertiary li.kitami a { background: #56bcb1; color: #fff; }

.tertiary .mail { padding: 25px 15px; }
.tertiary .mail a { display: flex; justify-content: center; align-items: center; height: 70px; line-height: 1.4; border-radius: 10px; background: #7fbc34; color: #fff; }

}



/*
  gnavi
-------------------------------------------------- */
#gnavi_pc { position: relative; z-index:101; }
#gnavi_pc .menu { position:relative; display:flex; justify-content:center }
#gnavi_pc .menu .gnavi_pc_menu_btn { position:relative; display:block; text-align:center; white-space:nowrap; cursor:pointer; }

#gnavi_pc .menu > li:hover > .gnavi_pc_menu_btn:before{ opacity: 1 }

#gnavi_pc .child { position:absolute; left:0; top: 60px; z-index: -1; opacity: 0; pointer-events:none; width:100%; padding: 0 40px; }
#gnavi_pc .child i { margin-right: 5px; }
#gnavi_pc .child a { text-decoration: underline; }
#gnavi_pc .child a:hover { text-decoration: none; }

#gnavi_pc .parent:hover .child { z-index:100; opacity:1; pointer-events:inherit; }

#gnavi_pc .child_inr { width: 100%; margin: 5px auto 0; align-items:center; padding: 10px; border-radius: 7px; background-color:#7fbc34; box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px; }
#gnavi_pc .child_ttl { display:flex; padding: 5px 0 10px 20px; }
#gnavi_pc .child_ttl a { color: #fff; font-weight: 500; font-size: 20px; }
#gnavi_pc .child_box { display: flex; width: 100%; height:100%; padding: 20px 25px; background: #fff; }

#gnavi_pc .child_box dl + dl { margin-left: 30px; padding-left: 30px; border-left: 1px solid #d5eeb7; }
#gnavi_pc .child_box dt { font-size: 16px; font-weight: 700; color: #333; }
#gnavi_pc .child_box dt a { color: #333; }
#gnavi_pc .child_box dd { display: flex; padding: 10px 0 40px; }
#gnavi_pc .child_box ul + ul { margin-left: 40px; }
#gnavi_pc .child_box small { font-size: 11px; margin-left: 1em; }

#gnavi_pc .gnavi_pc_menu_3 .siblings:nth-of-type(1) {width: 40%;}
#gnavi_pc .gnavi_pc_menu_3 .siblings:nth-of-type(2) {width: 30%;}
#gnavi_pc .gnavi_pc_menu_3 .siblings:nth-of-type(3) {width: 30%;}


#gnavi_pc .child ul li { margin-bottom: 8px; }
#gnavi_pc .child li a { color:#0a0507; font-size: 15px; display: block;padding-left: 1.4em; text-indent: -0.7em;}
#gnavi_pc .child li a i { color:#67912c; }

.bg-blue #gnavi_pc .menu a, .bg-blue #gnavi_pc .menu span,
.bg-black #gnavi_pc .menu a, .bg-black #gnavi_pc .menu span { color: #fff; }
.bg-blue #gnavi_pc .child ul { background: #0033cc; }
.bg-black #gnavi_pc .child ul { background: #000; }

.gnavi_pc_label .ac_label { display: none; }

@media print, screen and (max-width: 768px) {
#gnavi_pc .menu { display: block; }
#gnavi_pc .menu .gnavi_pc_menu_btn { text-align: left; }

#gnavi_pc .child { position: inherit; top: 0; z-index: 1; opacity: 1; pointer-events: auto; padding: 0; }
#gnavi_pc .child i { margin-right: 3px; }

#gnavi_pc .child_inr { width: auto; padding: 0; background-color:#fff; box-shadow: none; }
#gnavi_pc .child_ttl { display: none; }

#gnavi_pc .child_box { display: block; padding: 0; }
#gnavi_pc .child_box dl + dl { margin-left: 0; padding-left: 0; border-left: none; }
#gnavi_pc .child_box dt { position: relative; padding: 12px 14px; font-size: 100%; font-weight: normal; color: #fff; background: #67912c; border-bottom: 1px solid #d5eeb7; }
#gnavi_pc .child_box dt a { color: #fff; }
#gnavi_pc .child_box dd { display: block; padding: 0; }
#gnavi_pc .child_box ul + ul { margin-left: 0; }
#gnavi_pc .child_box small { font-size: 12px; margin-left: 0; }

#gnavi_pc .gnavi_pc_menu_3 .siblings:nth-of-type(1) {width: auto;}
#gnavi_pc .gnavi_pc_menu_3 .siblings:nth-of-type(2) {width: auto;}
#gnavi_pc .gnavi_pc_menu_3 .siblings:nth-of-type(3) {width: auto;}

#gnavi_pc .child ul { margin: 0; padding: 0; background: #f3f9ee; }
#gnavi_pc .child ul li { margin-bottom: 0; }
#gnavi_pc .child ul + ul,
#gnavi_pc .child ul li + li { border-top: 1px solid #67912c; }
#gnavi_pc .child .bar { border-bottom: 1px solid #67912c; }
#gnavi_pc .child li a { display: block; padding: 12px 14px; text-indent: unset;}

.gnavi_pc_label .ac_label { display: flex; }
.gnavi_pc_label > i { display: flex; position: absolute; top: 0; right: 0; display: flex; justify-content: center; align-items: center; width: 55px; height: 55px; color: #67912c; }
#gnavi_pc .child_box dt i { display: flex; position: absolute; top: 0; right: 0; display: flex; justify-content: center; align-items: center; color: #fff; width: 55px; height: 50px; }

.gnavi_pc_label > i:before,
#gnavi_pc .child_box dt i:before { content:"\f067"; }
.gnavi_pc_label > i.active:before,
#gnavi_pc .child_box dt i.active:before { content:"\f068"; }

}
/*
#gnavi_pc { position: relative; z-index:101; }
#gnavi_pc .menu { position:relative; display:flex; justify-content:center }
#gnavi_pc .menu .gnavi_pc_menu_btn { position:relative; display:block; text-align:center; white-space:nowrap; cursor:pointer; }
#gnavi_pc .menu > li:hover > .gnavi_pc_menu_btn:before{ opacity: 1 }
#gnavi_pc .child { position:absolute; left:0; top:0; z-index: -1; opacity: 0; visibility:hidden; pointer-events:none; width:100%; overflow:hidden; -webkit-transition:all .3s; transition:all .3s; }
#gnavi_pc .child i { margin-right: 5px; }
#gnavi_pc .parent:hover .child { top: 30px; z-index:100; visibility: visible; opacity:1; pointer-events:inherit; -webkit-transition:all .3s; transition:all .3s; }
#gnavi_pc .child_inr { 
  width: 100%;
  margin: 0 auto; align-items:center; padding: 10px; border-radius: 10px; background-color:#7fbc34; box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px; }
#gnavi_pc .child_ttl { display:flex; padding: 10px 0 20px 20px; }
#gnavi_pc .child_ttl a { color: #fff; font-weight: 500; font-size: 18px; }
#gnavi_pc .child ul { display: flex; justify-content: space-between; flex-wrap: wrap; width: 100%; height:100%; padding: 30px; background: #fff; }
#gnavi_pc .child ul li {
  width: 240px;
  margin-bottom: 30px; }
#gnavi_pc .child li a { color:#0a0507; font-size: 16px; }
#gnavi_pc .child li a i { color:#67912c; }

.bg-blue #gnavi_pc .menu a, .bg-blue #gnavi_pc .menu span,
.bg-black #gnavi_pc .menu a, .bg-black #gnavi_pc .menu span { color: #fff; }
.bg-blue #gnavi_pc .child ul { background: #0033cc; }
.bg-black #gnavi_pc .child ul { background: #000; }

.gnavi_pc_label .ac_label { display: none; }

@media print, screen and (max-width: 768px) {
#gnavi_pc .menu { display: block; }
#gnavi_pc .menu .gnavi_pc_menu_btn { text-align: left; }
#gnavi_pc .child { position: inherit; z-index: 1; opacity: 1; visibility: inherit; pointer-events: auto; }
#gnavi_pc .child i { margin-right: 3px; }
#gnavi_pc .parent:hover .child { top: 0; }
#gnavi_pc .child_inr { width: auto; padding: 0; background-color:#fff; box-shadow: none; }
#gnavi_pc .child_ttl { display: none; }

#gnavi_pc .child ul { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; margin: 0; padding: 0; background: #f3f9ee; }
#gnavi_pc .child ul li { width: 50%; margin-bottom: 0; }
#gnavi_pc .child li a { display: block; padding: 15px 15px; font-size: 14px; }

.gnavi_pc_label .ac_label { display: flex; }
.gnavi_pc_label > i { position: absolute; top: 0; right: 0; display: flex; justify-content: center; align-items: center; width: 60px; height: 60px; color: #67912c; }
.gnavi_pc_label > i:before { content:"\f067"; }
.gnavi_pc_label > i.active:before { content:"\f068"; }
}
*/

/*
  #footer
-------------------------------------------------- */
#footer { position: relative; width: 100%; }
#footer:before { content: ""; position: absolute; right: 0; bottom: 0; left: 0; height: 60px; background: #7fbc34; }
#footer .inner { position: relative; width: 1200px; height: 330px; margin: 0 auto; }
#footer .logo { position: absolute; top: 100px; left: 20px; }
#footer .logo img { width: 250px; margin-bottom: 20px; }
#footer .copylight { position: absolute; bottom: 20px; left: 20px; color: #fff; }
#footer .menu { overflow: hidden; position: absolute; bottom: 110px; right: 20px; }
#footer .menu li { float: left; margin-right: 40px; }
#footer .menu li a { color: #333; }
#footer .menu i { margin-right: 5px; font-size: 16px; }

.bg-blue #footer .menu li a { color: #fff; }
.bg-black #footer .menu li a { color: #fff; }

#footer ._w { display: none; }
.bg-blue #footer ._w,
.bg-black #footer ._w { display: inline; }
.bg-blue #footer ._w + img,
.bg-black #footer ._w + img { display: none; }

@media print, screen and (max-width: 768px) {
#footer:before { display: none; }
#footer .inner { width: auto; height: auto; font-size: 88%; }
#footer .logo { position: inherit; top: 0; left: 0; padding: 40px 10px 30px; }
#footer .logo img { width: 220px; margin-bottom: 10px; }
#footer .copylight { display: block; padding: 15px 0; position: inherit; bottom: 0; left: 0; background: #7fbc34; text-align: center; font-size: 82%; }
#footer .menu { position: inherit; bottom: 0; right: 0; padding: 0 10px 40px; }
#footer .menu li { margin-right: 20px; }
}

/*
  #pagetop
-------------------------------------------------- */
#pagetop { display: none; position: fixed; bottom: 120px; right: 15px; z-index: 2; }
/*#pagetop a { display: flex; justify-content: center; align-items: center; width: 60px; height: 60px; background: #7fbc34; border-radius: 50%; color: #fff; }
#pagetop a:hover { box-shadow: rgba(127, 188, 52, 0.3) 0px 7px 29px 0px; }*/
#pagetop a { display: flex; justify-content: center; align-items: center; width: 60px; height: 60px; background: #7fbc34; border-radius: 50%; color: #fff; box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px; }
#pagetop a:hover { box-shadow: rgba(127, 188, 52, 0.3) 0px 7px 29px 0px; }
#pagetop a::after{
  display: none;
}
@media print, screen and (max-width: 768px) {
#pagetop { display: block; bottom: 80px; }
#pagetop a { width: 40px; height: 40px; }
}


/*
  #floating
-------------------------------------------------- */

/*#floating { position: fixed; top: 50%; right: 0; z-index: 1002; margin-top: -35px; }*/

#floating a { display: flex; align-items: center; width: 130px; height: 70px; padding-left: 30px; border-radius: 10px 0 0 10px; font-size: 18px; }
#floating a:hover { box-shadow: rgba(127, 188, 52, 0.3) 0px 7px 29px 0px; }
.midnightHeader.default a { background: #7fbc34; color: #fff; }
.midnightHeader.highlight a { background: #fff; color: #7fbc34;}

@media print, screen and (max-width: 768px) {
#floating { display: none; }
}
body[class*='job'] #floating,
body[class*='recruit'] #floating,
.tax-job_tax #floating,
.single-job #floating{
    display: none;
}


/*
  breadcrumb
-------------------------------------------------- */
/*.breadcrumb { display: flex; }
.breadcrumb .item { }
.breadcrumb .item a { display: flex; align-items: center; }
.breadcrumb .item a::after { content: ""; width: 15px; min-width: 15px; height: 15px; min-height: 15px; margin: 0 4px 0 4px; background-image: url(../img/mrk_btn_gray.png); background-repeat: no-repeat; background-position: center; background-size: 5px; border-radius: 50%; }

@media print, screen and (max-width: 768px) {
.breadcrumb { padding: 10px; }
.breadcrumb .item { margin-bottom: 0; }
.breadcrumb .item a { font-size: 12px; }
}*/

@media print {
  #globalnavi,#header,#a-lnav,#footer,#floating,#pagetop,#sp-btn,#sp-tel,#sp-phone{
    display: none !important;
  }
}

.subpage .news .inner{
  padding: 25px 0;
}
.subpage .news .inner li a{
  font-size: 16px;
}
.subpage .news .news-box.leaf01:after {
    top: -25px;
}

#header .logo._w {
  display: none !important;
}
@media (max-width: 768px) {
  #wrapper #header .logo.pc{
  display: none !important;
  }
  .bg-black #wrapper #header .logo.sp,
  .bg-blue #wrapper #header .logo.sp {
    display: none !important;
  }
  .bg-black #wrapper #header .logo._w.sp,
  .bg-blue #wrapper #header .logo._w.sp {
    display: block !important;
  }
}
@media (min-width: 769px) {
  #wrapper #header .logo.sp {
    display: none !important;
  }
  .bg-black #wrapper #header .logo.pc,
  .bg-blue #wrapper #header .logo.pc {
    display: none !important;
  }
  .bg-black #wrapper #header .logo._w.pc,
  .bg-blue #wrapper #header .logo._w.pc {
    display: block !important;
  }
}

