@charset "utf-8";
/* CSS Document */
* { margin: 0px; padding: 0px; list-style: none; box-sizing: border-box; font-family: "Noto Sans JP", "serif";}

header.site-header { padding: 15px 15px 0px 15px;}
header a { color:#333;}
header a:hover { color:#14AE67; text-decoration: none;}

header .header-inner_block { justify-content: space-between; flex-wrap: wrap; align-items: flex-start; gap: 10px 0;}
header .header-logo { max-width: 580px; width: calc((600 / 1440) * 100vw); margin: 0 auto 0 5px;}
header .header-logo a img { margin: 0px; width: 100%;}
header .header-navi_top { display: flex; align-items: center; padding: 15px 0px 0px; gap: 0 55px; margin-right: 10px;}
header .header-navi_top .header-navi_list { display: flex; margin: 0px; gap: 0 60px; font-weight: bold;}
header #header-navigation { width: 100%; padding: 0 10px;}
header #header-navigation .header-global_navi nav .header-gnavi_list { justify-content: center; gap: 0px 0px;}
header #header-navigation .header-global_navi nav .header-gnavi_list > li { margin-bottom: 0px; position: relative; width: calc(100% / 5); max-width: 260px; padding: 0 0 20px;}
header #header-navigation .header-global_navi nav .header-gnavi_list > li.header-sp_navi { display: none;}
header #header-navigation .header-global_navi nav .header-gnavi_list > li > a { display: block; border-right: 1px solid #CCCCCC; padding: 13.5px 0; line-height: 1;}
header #header-navigation .header-global_navi nav .header-gnavi_list > li:last-child a { border-right: 0;}
header #header-navigation .header-global_navi nav .header-gnavi_list > li ul { margin: 0px; visibility: hidden; opacity: 0; position: absolute; top: 47px; left: 50%; transform: translateX(-50%); z-index: -1; min-width: 265px; border-radius: 40px; white-space: nowrap; transition: all .2s ease;}
header #header-navigation .header-global_navi nav .header-gnavi_list > li ul:before { display: block; content: ""; top: -15px; border-style: solid; border-color: transparent transparent #B6E0CB transparent; border-width: 0 11px 15px 11px; height: 15px; width: 22px; position: absolute; left: 50%; transform: translateX(-50%);}
header #header-navigation .header-global_navi nav .header-gnavi_list > li:last-child ul { left: inherit; transform: inherit; right: 0;}
header #header-navigation .header-global_navi nav .header-gnavi_list > li:last-child ul:before { left: inherit; transform: inherit; right: 139px;}
header #header-navigation .header-global_navi nav .header-gnavi_list > li:hover ul { visibility: visible; opacity: 1; background: #B6E0CB; font-size: 16px; font-weight: normal; top: 65px;}
header #header-navigation .header-global_navi nav .header-gnavi_list > li:hover ul li a { display: block; border-bottom: 1px solid #14AE67; padding: 19px 20px; line-height: 1;}
header #header-navigation .header-global_navi nav .header-gnavi_list > li:hover ul li:last-child a { border-bottom: none;}
header #header-navigation .header-global_navi nav .header-gnavi_list > li:hover ul li:hover { background: #14AE67;}
header #header-navigation .header-global_navi nav .header-gnavi_list > li:hover ul li:first-child:hover { border-top-left-radius: 40px; border-top-right-radius: 40px;}
header #header-navigation .header-global_navi nav .header-gnavi_list > li:hover ul li:last-child:hover { border-bottom-left-radius: 40px; border-bottom-right-radius: 40px;}
header #header-navigation .header-global_navi nav .header-gnavi_list > li:hover ul li:hover a { color: #fff;}

@media screen and (max-width: 1600px) {
	header #header-navigation .header-global_navi nav .header-gnavi_list > li:last-child ul:before { right: calc((139 / 1600) * 100vw);}
}

@media screen and (max-width: 1440px) {
	header .header-inner_block { gap: calc((35 / 1440) * 100vw) 0;}
	header.site-header { padding-right: 20px;}
	header .header-navi_top { padding: calc((15 / 1440) * 100vw) 0px 0px; gap: 0 calc((15 / 1000) * 100vw);	}
	header .header-navi_top .header-navi_list { gap: 0 calc((20 / 1000) * 100vw);}

	.header-search { width: max(200px, calc((260 / 1440) * 100vw));}
}
@media screen and (max-width: 1000px) {
	header.site-header { padding: 0px; height: 60px; display: flex; align-items: center;}
	header .header-inner_block { flex-wrap: nowrap; gap: 0; position: relative; height: 100%; align-items: center;}
	header .header-logo { width: calc((295 / 375) * 100vw); max-width: 295px; z-index: 1000000; padding-left:5px;}
	header .header-logo a { display: block;}
	header .header-logo a img { max-width: 280px;}
	header .header-navi_top { display: none;}
	header #header-navigation { position: absolute; left: 0;}
	
	.mean-container .mean-bar { position: absolute; right: 0; padding: 0;}
	.mean-container .mean-bar,
	.mean-container .mean-bar * { box-sizing: border-box;}

	.mean-container a.meanmenu-reveal { width: 28px; height: 45px; top: 5px; padding: 0 15px; margin-top: 3px; box-sizing: content-box;}
	.mean-container a.meanclose { top: 12px;}
	
	.mean-container a.meanmenu-reveal span { height: 1px; margin-top: 7px;}
	.mean-container a.meanmenu-reveal div { margin-top: 3px; position: relative; font-size: 10px; letter-spacing: 0; white-space: nowrap; left: 50%; transform: translateX(-50%);}

	.mean-container a.meanclose span { width: 30px;}
	.mean-container a.meanclose span:nth-of-type(1) { transform: rotate(35deg);}
	.mean-container a.meanclose span:nth-of-type(2) { transform: rotate(-35deg); margin-top: -1px;}
	.mean-container a.meanclose div { padding-top: 9px;}
	
	.mean-container .mean-nav { width: 100%; margin-top: 60px; background: #F1F4EF;}
	.mean-container .meanmenu-reveal + .mean-nav { min-height: 0vh; transition: all 0.7s ease;}
	.mean-container .meanclose + .mean-nav { min-height: calc(100vh - 60px); height: auto; padding-bottom: 60px;}
	.mean-container .mean-nav .header-sp_navi,
	.mean-container .mean-nav .header-sp_navi * { display: block !important; box-sizing: border-box;}
	.mean-container .mean-nav .header-sp_navi { margin-bottom: 15px;}
	.mean-container .mean-nav .header-sp_navi, 
	.mean-container .mean-nav ul li { border: none;}	
	.mean-container .mean-nav ul li a { color: #333; font-weight: bold; width: 100%; padding: 16px 3px;}
	.mean-container .mean-nav .header-sp_navi .header-navi_list { display: flex !important; flex-direction: row-reverse; gap: 0 40px;}
	.mean-container .mean-nav .header-sp_navi .header-navi_list li { width: 50%; padding: 30px 20px 15px; display: flex !important; justify-content: center; border: none; margin-inline: 0;}
	.mean-container .mean-nav .header-sp_navi .header-navi_list li a { width: auto; padding: 0; opacity: 1;}
	.mean-container .mean-nav .header-sp_navi .header-navi_list + a.mean-expand { display: none !important;}
	
	.mean-container .mean-nav .header-sp_navi .header-sp_navi_search_box { max-width: 300px; margin: 0 auto;}
	.mean-container .mean-nav .header-sp_navi .header-sp_navi_search_box .search-form { position: relative;}
	.mean-container .mean-nav .header-sp_navi .header-sp_navi_search_box .search-form .search-field { padding: 8px 45px 8px 15px; border-radius: 25px; line-height: 1; font-size: 14px;}
	.mean-container .mean-nav .header-sp_navi .header-sp_navi_search_box .search-form .search-submit { padding: 0px; position: absolute; top: 50%; right: 10px; transform: translateY(-50%); background: none;}
	.mean-container .mean-nav .header-sp_navi .header-sp_navi_search_box .search-form .search-submit i { color: #777; font-size: 24px; font-family: "Font Awesome 6 Free"; font-weight: 900;}
	
	.mean-container .mean-nav ul li { border-bottom: 1px solid #ccc; margin-inline: 35px; width: calc(100% - 70px);}
	.mean-container .mean-nav ul li a { border-top: none;}
	.mean-container .mean-nav ul li a.mean-expand { margin: 0; width: 20px; height: 20px; padding: 15px !important; top: 15px; background: transparent; border: none !important;}
	.mean-container .mean-nav ul li a.mean-expand:before,
	.mean-container .mean-nav ul li a.mean-expand:after { content: ""; display: block; width: 20px; height: 1px; background: #14AE67; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}
	.mean-container .mean-nav ul li a.mean-expand:after { transform: translate(-50%, -50%) rotate(-90deg); transition: all 0.5s ease;}
	.mean-container .mean-nav ul li a.mean-expand:hover { background: transparent;}
	.mean-container .mean-nav ul li a.mean-expand.mean-clicked:after { transform: translate(-50%, -50%) rotate(0deg);}
	.mean-container .mean-nav ul li ul.child { display: flex; flex-direction: column; padding: 15px 0; border-top: 1px solid #14AE67;}
	.mean-container .mean-nav ul li ul.child li { border-bottom: none; margin: 0; width: 100%;}
	.mean-container .mean-nav ul li ul.child li a { width: 100%; padding: 10px 0; border-top: none; opacity: 1; color: #14AE67; display: flex; align-items: center;}
	.mean-container .mean-nav ul li ul.child li a:before { content: ""; display: inline-block; width: 8px; height: 13px; background: url( "../images/button_arrow_green.png"); background-size: contain; background-position: center center; background-repeat: no-repeat; margin: 0 10px 0 5px;}
}



footer.site-footer { position: relative; display: grid; grid-template-columns: 1fr auto; grid-template-rows: auto auto; max-width: 1280px; margin: 0 auto; max-height: 774px; overflow: hidden; padding: 0 20px; gap: 0 20px;}
footer.site-footer:before { content: ""; display: block; width: 100%; min-height: 774px; position: fixed; bottom: 0; left: 0; z-index: -10; background: url("../images/footer_bg.jpg"); background-size: cover; background-repeat: no-repeat; background-position: top center;}
footer .footer-inner_block:nth-of-type(1) { grid-column: 1 / 3; grid-row: 1 / 2; padding: 446px 0 0px 0px;}
footer .footer-inner_block:nth-of-type(2) { grid-column: 1 / 2; grid-row: 2 / 3; padding: 0 0px 35px 0px;}
footer .footer-inner_bottom { grid-column: 2 / 3; grid-row: 2 / 3;}
footer .footer-inner_block .footer-nav_list { border-top: 1px solid rgba(255, 255, 255, 0.5); border-bottom: none; padding: 40px 0px; justify-content: center;}
footer .footer-inner_block .footer-nav_list ul { display: flex; flex-wrap: wrap; margin-bottom: 0; max-width: 1070px; justify-content: center; gap: 25px 0;}
footer .footer-inner_block .footer-nav_list ul li { border-right: 1px solid #fff; padding: 0 25px; line-height: 1; font-size: 18px; font-weight: bold;}
footer .footer-inner_block .footer-nav_list ul li:nth-child(7),
footer .footer-inner_block .footer-nav_list ul li:last-child { border-right: none;}
footer .footer-info .footer-info_text p > span { white-space: nowrap;}

footer .footer-copyright { border-bottom: none; margin-top: 35px;}

@media screen and (max-width: 1440px) {
	footer .footer-copyright { padding: 0 70px 35px 0px;}	
}

@media screen and (max-width: 1220px) {
	footer .footer-inner_block .footer-nav_list ul { max-width: 920px;}
	footer .footer-inner_block .footer-nav_list ul li { padding: 0px 20px; font-size: 16px;}	
}

@media screen and (max-width: 1000px) {
	footer.site-footer { min-height: 525px; grid-template-rows: 1fr auto;}
	footer.site-footer:before { background: url("../images/footer_bg-sp.jpg"); background-size: cover; background-repeat: no-repeat; background-position: top center; height: 525px;}
	footer .footer-inner_block:nth-of-type(1) { padding: 0; align-self: flex-end;}
	footer .footer-inner_block .footer-nav_list { border-top: none; padding: 25px 0px 30px;}
	footer .footer-inner_block .footer-nav_list ul { max-width: 100%; gap: 0 25px; justify-content: flex-start;}
	footer .footer-inner_block .footer-nav_list ul li { width: calc((100% - 25px) / 2); padding: 0px; border-right: none; border-bottom: 1px solid #fff; font-size: 14px;}
	footer .footer-inner_block .footer-nav_list ul li a { display: block; padding: 15px;}
	footer .footer-inner_block .footer-nav_list ul li a:hover { text-decoration: none;}
	footer .footer-inner_block:nth-of-type(2) { align-self: flex-end;}
	footer .footer-info .footer-info_text { font-size: 14px;}
	footer .footer-info .footer-info_text .footer-info_name { font-size: 16px;}
	footer .footer-info .footer-info_text p { font-size: 14px;}
	footer .footer-copyright,
	footer .footer-copyright a { font-size: 10px; line-height: 14px; flex-wrap: wrap;}
	footer .footer-copyright { padding: 0 55px 35px 0px;}
	footer .pagetop { width: 45px;}
	footer .pagetop img { max-width: 45px;}
}

@media screen and (max-width: 980px) {
	footer.site-footer { grid-template-rows: 1fr auto auto;}
	footer .footer-inner_block:nth-of-type(2) { grid-column: 1 / 3;	grid-row: 2 / 3;}
	footer .footer-info .footer-info_text .footer-info_name { margin-bottom: 25px;}
	footer .footer-inner_bottom {grid-column: 1 / 3; grid-row: 3 / 4;}
	footer .footer-copyright { justify-content: flex-start;}
}

@media screen and (max-width: 375px) {
    footer .footer-inner_block .footer-nav_list ul li a { padding: 15px 10px;}
	footer .footer-info .footer-info_text .footer-info_name { font-size: 14px; margin-right: 0;}
	footer .footer-info .footer-info_text p { font-size: 12px;}
}



#page-home #wrap > div { background: #fff;}



#mv { background: url("../images/footer_bg.jpg"); background-position: center top; background-repeat: no-repeat; background-size: cover; height: 280px; display: flex; justify-content: center; align-items: center; padding: 0 20px;}

#mv h1 { font-size: 46px; font-weight: bold; color: #fff; text-align: center; width: 100%;}

@media screen and (max-width: 768px) {
	#mv { background: url("../images/mv-page_sp.jpg"); background-position: center top; background-repeat: no-repeat; background-size: cover; height: calc((160 / 375) * 100vw);}
	
	#mv h1 { font-size: calc((26 / 375) * 100vw);}
}


#content { background: #fff; padding: 0 20px;}



.breadcrumbs-area { background: #fff; margin: 0; padding: 16px 0px;}



main.site-main { max-width: 1000px; margin-inline: auto; padding: 60px 0 50px 0;}



.post-meta h2 { border-bottom: 5px solid #14ae67; text-align: left; font-size: 28px; padding-bottom: 15px;}
.post-meta .post-date { text-align: right; color: #666; padding: 5px 3px 0 0;}

@media screen and (max-width: 768px) {
	.post-meta h2 { font-size: min(24px, calc((24 / 375) * 100vw));}
}


.post-contents p { margin-bottom: 35px;}
.post-contents h1,
.post-contents h2,
.post-contents h3 { font-size: 22px; font-weight: bold; line-height: 26px; background: #f1f4ef; padding: 10px; margin-bottom: 16px; text-align: left;}
.post-contents h4 { font-size: 20px; line-height: 30px; margin-bottom: 30px; border-bottom: 2px solid #14ae67; padding-bottom: 5px;}
.post-contents h5 { font-size: 18px; line-height: 30px; margin-bottom: 20px;}
.post-contents h6 { font-size: 16px; line-height: 30px; margin-bottom: 15px;}
.post-contents ul,
.post-contents ol { margin-bottom: 35px;}
.post-contents ul { border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; margin-bottom: 35px; padding: 20px 0 20px 26px;}
.post-contents ul li { display: list-item; line-height: 30px;}
.post-contents ul li:before { content: ""; display: inline-block; background: #14ae67; width: 10px; height: 10px; border-radius: 50%; margin: 0px 6px 1px -16px;}
.post-contents ul li ul { width: 100%; padding: 10px 0 10px 18px; margin: 10px 0;}

ul.downloads { padding: 0; border-bottom: none;}
ul.downloads li { border-bottom: 1px solid #ccc; padding: 13px 15px 13px 40px; text-indent: -15px;}
ul.downloads li:before { width: 18px; height: 18px; margin: 0px 15px -3px -16px;}
ul.downloads li .file-size { font-size: 14px; font-weight: normal; white-space: nowrap;}

ul.inner-links li { border: 1.5px solid #14ae67; border-radius: 27px; margin-bottom: 40px; overflow: hidden;}
ul.inner-links li a { display: flex; align-items: center; height: 80px; color: #333; font-size: 22px; font-weight: 500; line-height: 28px; padding: 0 30px;}
ul.inner-links li a:before { content: ""; display: inline-block; background: url("../images/button_arrow_green.png"); width: 20px; height: 30px; background-size: contain; background-position: center center; background-repeat: no-repeat; margin: 2px 20px 0 0;}
ul.inner-links li:hover a { text-decoration: none; background: #b6e0cb;}

@media screen and (max-width: 768px) {
	.post-contents h1,
	.post-contents h2,
	.post-contents h3 { font-size: min(22px, calc((22 / 375) * 100vw));}
	.post-contents h4 { font-size: min(20px, calc((20 / 375) * 100vw));}
	.post-contents h5 { font-size: min(18px, calc((18 / 375) * 100vw));}
	.post-contents h6 { font-size: min(16px, calc((16 / 375) * 100vw));}
	ul.inner-links li { margin-bottom: 25px;}
}

@media screen and (max-width: 568px) {
	ul.inner-links { padding-bottom: 30px;}
	ul.inner-links li { border-radius: 20px;}
	ul.inner-links li a { font-size: 16px; line-height: 1.4; min-height: 60px; height: auto; padding: 0 15px;}
	ul.inner-links li a:before { height: 20px; flex-shrink: 0; margin-right: 10px;}
}

.post-contents ol { padding-left: 18px;}
.post-contents ol li { display: list-item; line-height: 30px; list-style: decimal;}
.post-contents ol li ol { width: 100%; padding: 3px 0 6px 24px; margin-bottom: 0;}
.post-contents dt { font-weight: bold;}
.post-contents img { width: auto; max-width: min(800px, 100%);}
.post-contents figcaption { width: 100%; max-width: 800px; margin: 0 auto; font-size: 14px; line-height: 30px; color: #999; background: transparent; padding: 12px;}
.post-contents figure.aligncenter img { display: block; margin: 0 auto;}
.post-contents table { border: none;}
.post-contents tr { border-bottom: none;}
.post-contents th,
.post-contents td { padding: 8px 0 8px 10px;}
.post-contents th { border-right: none; background: #b6e0cb; font-size: 16px; font-weight: normal;}
.post-contents td { border-bottom: 1px solid #ccc;}
.post-contents td.map { line-height: 1; width: 115px;}
.post-contents td.map a { background: #14ae67; color: #fff; font-size: 14px; letter-spacing: 2px; text-decoration: none; border: 1px solid #14ae67; border-radius: 17px; padding: 3px 8px 4px 10px; max-width: 65px; margin: 0 0 0 auto; display: flex; justify-content: space-between; align-items: center; }
.post-contents td.map a:after { content: ""; display: block; background: url("../images/button_arrow_white.png"); width: 8px; height: 13px; background-size: contain; background-position: center; background-repeat: no-repeat; margin-top: 2px}
.post-contents td.map a:hover { background: #fff; color: #14ae67;}
.post-contents td.map a:hover:after { background: url("../images/button_arrow_green.png"); background-size: contain; background-position: center; background-repeat: no-repeat;}

@media screen and (max-width: 768px) {
	.post-contents th { font-size: 14px;}
}

.post-navigation .nav-list a,
.news-list .button a { display: flex; background: #14ae67; color: #fff; font-size: 20px; font-weight: bold; border: 1px solid transparent; border-radius: 20px; align-items: center; width: 235px; margin-left: 0px; line-height: 1; justify-content: center; position: relative; text-decoration: none;}
.post-navigation .nav-list a { padding: 8.5px 0px 8.5px 15px;}
.news-list .button a { margin: 0 auto; padding: 8.5px 15px 8.5px 0px;}
.post-navigation .nav-list a:hover,
.news-list .button a:hover { background: #fff; color: #14ae67; border: 1px solid #14ae67;}
.post-navigation .nav-list a:before,
.news-list .button a:after { display: inline; content: ""; width: 12px; height: 18px;}
.post-navigation .nav-list a:before { background: url(../images/button_arrow_back_white.png); background-size: contain; background-repeat: no-repeat; position: absolute; left: 15px;}
.news-list .button a:after { background: url(../images/button_arrow_white.png); background-size: contain; background-repeat: no-repeat; position: absolute; right: 15px;}
.post-navigation .nav-list a:hover:before { background: url(../images/button_arrow_back_green.png); background-size: contain; background-repeat: no-repeat; position: absolute; left: 15px;}
.news-list .button a:hover:after { background: url(../images/button_arrow_green.png); background-size: contain; background-repeat: no-repeat; position: absolute; right: 15px;}

@media screen and (max-width: 768px) {
	.post-navigation .nav-list a, 
	.news-list .button a { font-size: min(20px, calc((12 / 375) * 100vw)); border-radius: min(20px, calc((25 / 375) * 100vw)); width: min(235px, calc((130 / 375) * 100vw)); padding: min(8.5px, calc((5.5 / 375) * 100vw)) min(15px, calc((15 / 375) * 100vw)) min(8.5px, calc((5.5 / 375) * 100vw)) 0px;}
	.post-navigation .nav-list a:before,
	.news-list .button a:after { width: min(12px, calc((8 / 375) * 100vw)); height: min(18px, calc((12 / 375) * 100vw));}
}



.news-list dl { border-bottom: 1px solid #ccc;}
.news-list a { display: flex; border-top: 1px solid #ccc; align-items: center; padding: 31px 0; gap: 24px 0;}
.news-list a:hover { text-decoration: none;}
.news-list a dt { color: #666; width: 150px; flex-shrink: 0;}
.news-list a dd { color: #0098ff; font-size: 18px;}
.news-list a:hover dd { text-decoration: underline; text-underline-offset: 5px;}

@media screen and (max-width: 1000px) {
	.news-list a { padding: 15px 0;}
	.news-list a dt { font-size: 14px;}
	.news-list a dd { font-size: 16px;}
}

@media screen and (max-width: 768px) {
	.news-list a { padding: 10px 0; flex-wrap: wrap; gap: 0;}
	.news-list a dt { font-size: 12px; width: 100%;}
	.news-list a dd { font-size: 14px; width: 100%;}
}



.navigation { margin: 85px auto 90px; padding-bottom: 80px;}
.navigation .nav-links { width: 100%; max-width: 1280px; padding: 0 20px; margin: 0 auto; display: flex; justify-content: center; position: relative;}
.navigation .nav-links a { color: #333;}
.navigation .nav-links .prev.page-numbers { font-size: 16px; position: absolute; left: 0; margin-left: 0;}
.navigation .nav-links .prev.page-numbers i { margin-right: 0.25em;}
.navigation .nav-links .page-numbers { margin-inline: 15px; line-height: 39px; text-align: center; font-size: 18px;}
.navigation .nav-links .page-numbers.current { background: #14ae67; color: #fff; width: 40px; height: 40px; border-radius: 20px; margin-right: 15px;}
.navigation .nav-links .next.page-numbers { font-size: 16px; position: absolute; right: 0; margin-right: 0;}
.navigation .nav-links .next.page-numbers i { margin-left: 0.25em;}

@media screen and (max-width: 768px) {
	.navigation .nav-links .page-numbers.current { width: 30px; height: 30px; margin-top: 5px; line-height: 29px;}
}

@media screen and (max-width: 568px) {
	.navigation .nav-links { flex-wrap: wrap; position: relative; padding: 0;}
	.navigation .nav-links .page-numbers { margin-inline: 7.5px;}
	.navigation .nav-links .prev.page-numbers,
	.navigation .nav-links .next.page-numbers { position: static; font-size: 14px;}
	.navigation .nav-links .page-numbers.current { margin-right: 7.5px;}
	.navigation .nav-links .prev.page-numbers { margin-right: auto; padding-right: 11px;}
	.navigation .nav-links .next.page-numbers { margin-left: auto; padding-left: 11px;}
}

@media screen and (max-width: 378px) {
	.navigation .nav-links { justify-content: flex-start;}
	.navigation .nav-links .prev.page-numbers { margin-right: 10%;}
}

#page-home #wrap #mv { display: block; padding: calc((50 / 1920) * 100vw) 0 calc((90 / 1920) * 100vw) 0; height: calc(((50 + 550 + 60 + 90) / 1920) * 100vw); max-height: 780px; background: url( "../images/mv-bg.png"), linear-gradient(#f1f4ef, #f1f4ef); background-position: bottom center; background-repeat: no-repeat; background-size: contain;}

#page-home #wrap #mv .mv-inner { position: relative;}
#page-home #wrap #mv .mv-catchcopy { position: absolute; right: 265px; bottom: 100px; font-size: 34px; line-height: 85px; color: #14ae67; z-index: 1; text-align: right;}
#page-home #wrap #mv .mv-catchcopy span { background: #fff; padding: 9px 20px 12px; border-radius: 20px;}
#page-home #wrap #mv .slick-slider .slick-track, 
#page-home #wrap #mv .slick-slider .slick-list { height: calc((550 / 1920) * 100vw); max-height: 550px;}
#page-home #wrap #mv .slick-slide { width: calc((1130 / 1920) * 100vw); max-width: 1130px; padding: 0 min(15px, calc((15 / 1920) * 100vw));}
#page-home #wrap #mv .slick-slide img { width: 100%; height: 100%; object-fit: cover; border-radius: 60px;}
#page-home #wrap #mv .slick-dots { bottom: -35px;}
#page-home #wrap #mv .slick-dots li { width: 12px; height: 12px; margin: 0 7.5px;}
#page-home #wrap #mv .slick-dots li button { width: 12px; height: 12px; padding: 0;}
#page-home #wrap #mv .slick-dots li button:before { width: 12px; height: 12px; background: #fff; border-radius: 50%; content: ""; opacity: 1;}
#page-home #wrap #mv .slick-dots li.slick-active button:before { opacity: 1; background: #b6e0cb;}

@media screen and (max-width: 1920px) {
	#page-home #wrap #mv { height: calc((((50 + 550 + 90) / 1920) * 100vw)  + 60px);}
	#page-home #wrap #mv .mv-catchcopy { right: calc((265 / 1920) * 100vw); bottom: calc((50 / 1920) * 100vw); font-size: max(20px, calc((34 / 1920)* 100vw)); line-height: max(45px, calc((85 / 1920)* 100vw));}
	#page-home #wrap #mv .mv-catchcopy span { padding: calc((7 / 1920) * 100vw) calc((20 / 1920) * 100vw) calc((9 / 1920) * 100vw); border-radius: calc((20 / 1920) * 100vw);}
	#page-home #wrap #mv .slick-slide img { border-radius: calc((60 / 1920) * 100vw);}
}

@media screen and (max-width: 768px) {
	#page-home #wrap #mv { height: calc(((20 + 210 + 50 + 18) / 375)* 100vw); padding: calc((20 / 375)* 100vw) 0 calc((18 / 375)* 100vw) 0;}
	#page-home #wrap #mv .mv-catchcopy { font-size: calc((15 / 375) * 100vw); line-height: calc((36 / 375) * 100vw); right: calc((5 / 375)* 100vw);}
	#page-home #wrap #mv .mv-catchcopy span { padding: calc((4 / 375)* 100vw) calc((7 / 375)* 100vw) calc((5 / 375)* 100vw); border-radius: calc((12 / 375)* 100vw);    }
	#page-home #wrap #mv .slick-slider .slick-track, 
	#page-home #wrap #mv .slick-slider .slick-list { height: calc((210 / 375) * 100vw);}
	#page-home #wrap #mv .slick-slide { width: calc((375 / 375) * 100vw); max-width: 768px; padding: 0 min(15px, calc((12.5 / 375) * 100vw));}
	#page-home #wrap #mv .slick-dots { bottom: calc((-35 / 375) * 100vw);}
	#page-home #wrap #mv .slick-dots li,
	#page-home #wrap #mv .slick-dots li button,
	#page-home #wrap #mv .slick-dots li button:before { width: min(12px, calc((10 / 375) * 100vw)); height: min(12px, calc((10 / 375) * 100vw));}
	#page-home #wrap #mv .slick-dots li { margin: 0 min(7.5px, calc((5.5 / 375) * 100vw));}
}



#page-home #content { padding: 0;}

#page-home main.site-main { max-width: 100%; margin-inline: auto; padding: 0px;}
#page-home main.site-main .inner-block { padding: 0px; max-width: 1000px;}

@media screen and (max-width: 1440px) {
	#page-home main.site-main .inner-block { max-width: 100%; padding-inline: calc((220 / 1440) * 100vw);}
}

@media screen and (max-width: 768px) {
    #page-home main.site-main .inner-block { padding-inline: 20px;}
}



#page-home h2 { font-size: 30px; line-height: 55px; margin-bottom: 45px;}

#page-home .top-news_block { padding-bottom: 50px;}
#page-home .top-news_block .news-list { position: relative;}
#page-home .top-news_block .news-list:before { content: ""; display: block; position: absolute; top: 35px; left: -125px; width: 235px; height: 162px; background: url("../images/home_news-list_cloud.png"); background-repeat: no-repeat; background-size: contain;}
#page-home .top-news_block .news-list:after { content: ""; display: block; position: absolute; top: 35px; right: -65px; width: 132px; height: 82px; background: url( "../images/home_news-list_birds.png"); background-repeat: no-repeat; background-size: contain;}
#page-home .top-news_block .news-list h2 { padding-top: 20px; position: relative; z-index: 1;}
#page-home .top-news_block .news-list dl { margin-bottom: 55px;}

@media screen and (max-width: 1440px) {
	#page-home .top-news_block .news-list:before { left: calc((-125 / 1440) * 100vw);}
	#page-home .top-news_block .news-list:after { right: calc((-65 / 1440) * 100vw);}
}

@media screen and (max-width: 768px) {
	#page-home h2 { font-size: calc((20/ 375) * 100vw); line-height: min(55px, calc((23 / 375) * 100vw));}
	
	#page-home .top-news_block { padding-bottom: min(50px, calc((40 / 375) * 100vw));}
	#page-home .top-news_block .news-list:before { width: calc((107 / 375) * 100vw); height: calc((74 / 375) * 100vw); left: -10px; top: calc((21 / 375) * 100vw);}
	#page-home .top-news_block .news-list:after { width: calc((74 / 375) * 100vw); height: calc((46 / 375) * 100vw); right: calc((2 / 375) * 100vw); top: calc((27 / 375) * 100vw);}
	#page-home .top-news_block .news-list h2 { padding-top: calc((40/ 375) * 100vw); margin-bottom: calc((20/ 375) * 100vw);}
	#page-home .top-news_block .news-list dl { margin-bottom: min(55px, calc((30 / 375) * 100vw));}
}



#page-home .top-about_block { background: #b6e0cb; text-align: center; padding-bottom: 85px; position: relative;}
#page-home .top-about_block:before { content: ""; display: block; background: url("../images/home_about_bg.png"), linear-gradient(#fff, #fff); width: 100%; height: calc((114 / 1920) * 100vw); background-repeat: no-repeat; background-size: cover; background-position: bottom center;}
#page-home .top-about_block .inner-block:before, 
#page-home .top-about_block .inner-block:after { content: ""; display: block; position: absolute;}
#page-home .top-about_block .inner-block:before { width: 530px; height: 117px; background: url("../images/home_about_people.png"); background-size: contain; background-repeat: no-repeat; left: -174px; top: -45px;}
#page-home .top-about_block .inner-block:after { width: 530px; height: 102px; background: url("../images/home_about_truck.png"); background-size: contain; background-repeat: no-repeat; right: -134px; top: -28px;}
#page-home .top-about_block img { width: 350px; height: auto; margin: 55px 0 45px;}
#page-home .top-about_block p { font-size: 22px; line-height: 42px;}

@media screen and (max-width: 1440px) {
	#page-home .top-about_block .inner-block:before { width: calc((530 / 1440) * 100vw); left: calc((46 / 1440) * 100vw); top: calc((-45 / 1440) * 100vw);}
	#page-home .top-about_block .inner-block:after { width: calc((530 / 1440) * 100vw); right: calc((86 / 1440) * 100vw); top: calc((-28 / 1440) * 100vw);}
	#page-home .top-about_block img { width: calc((350 / 1440) * 100vw); margin: calc((55 / 1440) * 100vw) 0 calc((45 / 1440) * 100vw);}
	#page-home .top-about_block p { font-size: 18px; line-height: 34px;}
}

@media screen and (max-width: 768px) {
	#page-home .top-about_block { padding-bottom: calc((75 / 375)* 100vw);}
	#page-home .top-about_block .inner-block:before { width: calc((209 / 375) * 100vw); height: calc((47 / 375) * 100vw); top: calc((-6 / 375)* 100vw); left: calc((13 / 375)* 100vw);}
	#page-home .top-about_block .inner-block:after { width: calc((209 / 375) * 100vw); height: calc((40 / 375) * 100vw); right: calc((13 / 375) * 100vw); top: inherit; bottom: calc((-55 / 375) * 100vw);}
	#page-home .top-about_block img { width: calc((180 / 375)* 100vw); margin: calc((53 / 375)* 100vw) 0 calc((20 / 375)* 100vw);}
	#page-home .top-about_block p { font-size: 14px; line-height: 26px;}
}



#page-home #link { padding: 65px 0 95px;}
#page-home #link > div { max-width: 1040px; margin: 0 auto; display: flex; justify-content: center;}
#page-home #link .upper { gap: 45px 60px; margin-bottom: 45px;}
#page-home #link .upper a { max-width: 310px; max-height: 145px; text-align: center; border: 1px solid #555;}
#page-home #link .upper a img { object-fit: contain; max-height: 100%;}
#page-home #link .lower { gap: 40px;}
#page-home #link .lower a { width: 240px; background: #14ae67; color: #fff; font-size: 24px; line-height: 1; padding: 17px; text-align: center; border: 1px solid #14ae67; transition: all 0.5s ease 0s;}
#page-home #link .lower a:hover { background: rgba(20, 174, 103, 0.7); text-decoration: none;}

@media screen and (max-width: 1440px) {
	#page-home #link > div { padding: 0 20px; max-width: 100%; flex-wrap: wrap;}
	#page-home #link .upper { gap: calc((45 / 1440) * 100vw) calc((60 / 1440) * 100vw);}
	#page-home #link .upper a { max-width: 160px;}
	#page-home #link .lower { gap: calc((40 / 1440) * 100vw);}
	#page-home #link .lower a { width: max(240px, calc((240 / 1440) * 100vw)); font-size: 18px; padding: 13px;}
}

@media screen and (max-width: 1060px) {
	#page-home #link .upper { max-width: 800px;}
}

@media screen and (max-width: 425px) {
	#page-home #link .upper a { max-width: 130px;}
}

.error404 h2,
.search-no-results h2 { font-size: 28px; line-height: 30px; margin-bottom: 40px; border-bottom: 5px solid #14ae67; padding-bottom: 20px; text-align: left;}
.error404 p,
.search-no-results p { font-size: 18px; line-height: 32px;}

@media screen and (max-width: 768px) {
	.error404 h2,
	.search-no-results h2 { font-size: clamp(20px, calc((20 / 375) * 100vw), 28px); line-height: 1.4;}
	.error404 p,
	.search-no-results p { font-size: clamp(14px, calc((14 / 375) * 100vw), 18px); line-height: 1.8;}
}

.search-block { max-width: 500px; margin: 65px auto 0;}
.search-block .search-form { position: relative;}
.search-block .search-form .search-field { padding: 11px 55px 11px 25px; border-radius: 25px; font-size: 18px; line-height: 1;}
.search-block .search-form .search-submit { padding: 0px; position: absolute; top: 50%; right: 20px; transform: translateY(-50%); background: none;}
.search-block .search-form .search-submit i { color: #777; font-size: 30px; font-family: "Font Awesome 6 Free"; font-weight: 900;}
input[type="search"]::-webkit-search-cancel-button { display: none;}



.search-results .search-list ul { border-top: 1px solid #ccc;}
.search-results .search-list ul li { border-bottom: 1px solid #ccc;}
.search-results .search-list ul li a { display: block; text-decoration: none; padding: 26px 0;}
.search-results .search-list ul li a .search-title { font-size: 20px; line-height: 36px;}
.search-results .search-list ul li a:hover .search-title { text-decoration: underline;}
.search-results .search-list ul li a .search-date { font-size: 12px; line-height: 24px; color: #666;}
.search-results .search-list ul li a .search-description { font-size: 16px; line-height: 24px; color: #333;}


@media screen and (max-width: 768px) {
	.search-results .search-list ul li a .search-title { font-size: clamp(18px, calc((18 / 375) * 100vw), 20px); line-height: 1.8;}
	.search-results .search-list ul li a .search-description { font-size: clamp(14px, calc((14 / 375) * 100vw), 16px); line-height: 1.4;}
}

body.has-sidebar .site-content { max-width: 100%; flex-direction: row-reverse; justify-content: center; gap: 50px min(55px, calc((55 / 1920) * 100vw));}

@media screen and (max-width: 768px) {
	body.has-sidebar .site-content { flex-direction: row; gap: 0;}
}



body.has-sidebar .site-main { width: calc((100% - min(55px, calc((55 / 1920) * 100vw))) * 2 / 3);}

@media screen and (max-width: 768px) {
	body.has-sidebar .site-main { width: 100%; max-width: none; order: 2; margin-bottom: 0; padding: 10px 0 0 0;}
}



.site-side { width: calc((100% - min(55px, calc((55 / 1920) * 100vw))) * 1 / 3);}
.site-side .side-box { background: #F1F4EF; border-radius: 40px; text-align: center;}
.site-side .side-box h3 { background: #14AE67; color: #fff; font-size: 20px; line-height: 60px;}
.site-side .side-box h3 a { display: block; color: #fff; text-decoration: none;}
.site-side .side-box h3,
.site-side .side-box ul li { border-bottom: 1px solid #14AE67;}
.site-side .side-box ul li:last-child { border-bottom: none;}
.site-side .side-box ul li a { display: block; width: 100%; color: #333; padding: 19px 16px; line-height: 22px; text-decoration: none;}
.site-side .side-box h3 a:hover,
.site-side .side-box ul li a:hover,
.site-side .side-box ul li.active a { background: #72CEA4; color: #fff;}

@media screen and (max-width: 768px) {
	.site-side { width: 100%; max-width: none; order: 2; margin-bottom: 80px;}
	.site-side .side-box { border-radius: calc((15 / 375) * 100vw);}
	.site-side .side-box h3 { font-size: min(22px, calc((18 / 375) * 100vw)); line-height: min(55px, calc((50 / 375) * 100vw));}
	.site-side .side-box ul li a { padding: 14px 10px;}
}

body#archive-area .site-main { margin-bottom: 0;}
#archive-area h2,
#archive-document h2,
#archive-format h2 { font-size: 32px; margin-bottom: 40px; border-bottom: 5px solid #14ae67; padding: 18px 0;}
#archive-area .area-part-map img { display: block; margin: 35px auto 50px; max-height: 600px; max-width: 500px; object-fit: contain; width: 100%;}

@media screen and (max-width: 568px) {
	#archive-area .area-part-map img { height: auto; margin: calc((75 / 568) * 100vw) auto calc((110 / 568) * 100vw);}
}

#archive-area p > img { margin: 35px 0 50px;}

#archive-area main h3 { margin-bottom: 40px; text-align: center; background: none; font-size: 28px; padding: 0;}

#archive-area ul.downloads { margin-bottom: 120px;}

#archive-area table { margin-bottom: 90px;}
#archive-area tr:first-of-type th { padding: 12px 15px 12px 20px;}
#archive-area tr:nth-of-type(2) td { padding-top: 20px;}
#archive-area th:nth-of-type(1),
#archive-area td:nth-of-type(1) { width: calc((140 / 1920) * 100vw); min-width: 5em;}
#archive-area th:nth-of-type(2),
#archive-area td:nth-of-type(2) { width: calc((165 / 1920) * 100vw); min-width: 6em;}
#archive-area td.name { font-weight: bold;}
#archive-area .file-size { font-size: 14px; font-weight: normal; white-space: nowrap;}


#archive-area .area-list dl { display: flex; flex-wrap: wrap; gap: 30px min(40px, calc((40 / 1920) * 100vw));}
#archive-area .area-list dl a { width: min(280px, calc((100% - min(80px, calc((80 / 1920) * 100vw))) / 3)); height: 130px; display: flex; border: 2px solid #14ae67; border-radius: 27px; padding: 13px 20px; text-decoration: none; font-size: 20px; line-height: 28px; color: #333; font-weight: 500;}
#archive-area .area-list dl a:hover { background: #b6e0cb;}
#archive-area .area-list dl a dt { display: flex; justify-content: center; align-items: center; width: 80px;}
#archive-area .area-list dl a dt img { max-width: 80px; max-height: 100px; object-fit: contain;}
#archive-area .area-list dl a:hover dt img { opacity: 1;}
#archive-area .area-list dl a dd { flex-shrink: 0; display: flex; justify-content: center; align-items: center; width: calc(100% - 80px); text-align: center; font-size: clamp(16px, calc((20 / 1920) * 100vw), 20px);}

@media screen and (max-width: 1440px) {	
	#archive-area .area-list dl a { width: calc((100% - min(80px, calc((80 / 1920) * 100vw))) / 3);}
}
@media screen and (max-width: 1220px) {
	#archive-area .area-list dl a { padding: calc((13 / 1220) * 100vw) calc((20 / 1220) * 100vw);     height: calc((130 / 1220) * 100vw);}
	#archive-area .area-list dl a dt { width: calc((80 / 1220) * 100vw);}
	#archive-area .area-list dl a dt img { max-width: calc((80 / 1220) * 100vw); max-height: calc((100 / 1220) * 100vw);}
	#archive-area .area-list dl a dd { width: calc(100% - ((80 / 1220) * 100vw)); font-size: max(14px, calc((16 / 1220) * 100vw));}
}

@media screen and (max-width: 980px) {
	#archive-area .area-list dl { gap: 30px calc((20 / 980) * 100vw);}
	#archive-area .area-list dl a { width: calc((100% - calc((20 / 980) * 100vw)) / 2); height: calc((130 / 980) * 100vw);}
	#archive-area .area-list dl a dt { width: 100px;}
	#archive-area .area-list dl a dt img { max-width: calc((100 / 980)* 100vw); max-height: calc((100 / 980)* 100vw);    }
	#archive-area .area-list dl a dd { font-size: 16px; width: calc(100% - 100px);}
}

@media screen and (max-width: 768px) {
	#archive-area h2,
	#archive-document h2,
	#archive-format h2 { font-size: min(24px, calc((24 / 375) * 100vw));}
	#archive-area .area-list dl { gap: calc((15 / 375) * 100vw); margin-bottom: 50px;}
	#archive-area .area-list dl a { width: calc((100% - calc((15 / 375) * 100vw)) / 2); height: calc((130 / 768) * 100vw); border-radius: calc((27 / 768)* 100vw); padding: calc((10 / 375)* 100vw) calc((10 / 375)* 100vw); line-height: 1.4;}

	#archive-area .area-list dl a dt { width: calc((45 / 375)* 100vw);}
	#archive-area .area-list dl a dt img { max-width: calc((45 / 375)* 100vw); max-height: calc((55 / 375)* 100vw);}
	#archive-area .area-list dl a dd { width: calc(100% - ((45 / 375)* 100vw)); font-size: min(16px, calc((14 / 375) * 100vw));}
}

@media screen and (max-width: 568px) {
	#archive-area main h3 { font-size: 22px;}
	#archive-area tr { display: grid; grid-template-columns: 1fr 1fr 1fr; grid-template-rows: auto auto; border-bottom: 1px solid #ccc; padding: 6px 12px;}
	#archive-area tr:first-of-type { border-bottom: none; background: #b6e0cb;}
	#archive-area tr:first-of-type th { font-size: 14px; padding: 3px 0 0 0; border-bottom: 1px dotted #fff;}
	#archive-area tr:nth-of-type(2) td { align-self: center; padding-top: 10px;}
	#archive-area th,
	#archive-area td { padding-inline: 0;}
	#archive-area td { border-bottom: none; padding-top: 2px; padding-bottom: 0; align-self: center;}
	#archive-area th:nth-of-type(1), 
	#archive-area td:nth-of-type(1),
	#archive-area th:nth-of-type(2), 
	#archive-area td:nth-of-type(2) { width: auto;}
	#archive-area tr th:nth-of-type(3),
	#archive-area tr td:nth-of-type(3) { grid-column: 1 / 4; grid-row: 2 / 3; border: none;}
	#archive-area tr th:nth-of-type(4),
	#archive-area tr td:nth-of-type(4) { grid-column: 3 / 4; width: auto;}
	#archive-area tr td.map a { font-size: 14px;}
	#archive-area tr td.map a:after { height: 13px; margin-top: 1px;}
}

@media screen and (max-width: 375px) {
	
}

#colorbox #cboxTopLeft,
#colorbox #cboxTopCenter,
#colorbox #cboxTopRight,
#colorbox #cboxMiddleLeft,
#colorbox #cboxMiddleRight,
#colorbox #cboxBottomLeft, 
#colorbox #cboxBottomRight { width: 0; height: 0; background: none;}
#colorbox #cboxBottomCenter { height: 75px; background: none;}
#colorbox #cboxClose { background: none; text-indent: inherit; width: auto; height: 75px; font-size: 18px; bottom: -75px; padding-right: 70px;}
#colorbox #cboxClose:before,
#colorbox #cboxClose:after { content: ""; display: inline-block; width: 55px; height: 6px; background: #fff; position: absolute; top: calc(50% + 2px);}
#colorbox #cboxClose:before { transform: rotate(-45deg) translateY(-50%); right: 2px;}
#colorbox #cboxClose:after { transform: rotate(45deg) translateY(-50%); right: 6px;}



#archive-document ul.downloads,
#archive-format ul.downloads { border-top: none;}



.qa-list { display: flex; flex-wrap: wrap; gap: 40px 0;}
.qa-list li { width: 100%;}
.qa-list li input { display: none;}

.qa-list .qa-box { border: 1.5px solid #14ae67; border-radius: 28px; padding: 21px 20px; position: relative;}
.qa-list .qa-box:before,
.qa-list .qa-box:after { z-index: 1;}
.qa-list .qa-box:before { content: ""; position: absolute; width: 30px; height: 5px; background: #14ae67; right: 25px; top: 32px;}
.qa-list .qa-box:after { content: ""; position: absolute; width: 30px; height: 5px; background: #14ae67; right: 25px; top: 32px; transform: rotate(-90deg); transition: transform 0.5s ease;}
.qa-list li input:checked ~ .qa-box:after { transform: rotate(0deg);}

.qa-list .qa-box label { display: flex; font-size: 18px; line-height: 22px; font-weight: 700; width: 100%; position: relative; z-index: 10; cursor: pointer;}
.qa-list .qa-box label span { width: 100%; padding-right: 42.5px;}
.qa-list .qa-box label:before { width: 50px; content: "Q"; font-weight: 900; font-size: 34px; line-height: 36px; color: #14ae67; margin-top: -9px; flex-shrink: 0;}

.qa-list .qa-box .answer-box { margin-top: 0px; border-top: 0px solid #ccc; padding-top: 0px; height: 0; visibility: hidden; transition: all 0.5s ease, border-top 0s ease;}
.qa-list li input:checked ~ .qa-box .answer-box { margin-top: 25px; border-top: 1px solid #ccc; padding-top: 22px; height: auto; visibility: visible;}

.qa-list .qa-box .answer-box .answer { display: flex; font-size: 0px; line-height: 0px;}
.qa-list li input:checked ~ .qa-box .answer-box .answer { font-size: 18px; line-height: 22px;}
.qa-list .qa-box .answer-box .answer:before { width: 50px; content: "A"; font-weight: 900; font-size: 0px; line-height: 0px; color: #f8b62d; margin-top: -7px; flex-shrink: 0;}
.qa-list li input:checked ~ .qa-box .answer-box .answer:before { font-size: 34px; line-height: 36px; flex-shrink: 0;}

.qa-list .qa-box .answer-box .attachment { margin-left: 0px; margin-top: 0px; transition: all 0s ease;}
.qa-list li input:checked ~ .qa-box .answer-box .attachment { margin-left: 50px; margin-top: 5px;}
.qa-list .qa-box .answer-box .attachment a { font-size: 0px; line-height: 0px; transition: all 0s ease; text-decoration: underline; text-underline-offset: 5px;}
.qa-list .qa-box .answer-box .attachment a:hover { text-decoration: none;}
.qa-list li input:checked ~ .qa-box .answer-box .attachment a { font-size: 18px; line-height: 22px;}

@media screen and (max-width: 768px) {
	.qa-list { gap: 20px 0;}
	
	.qa-list .qa-box { border-radius: 14px; padding: 16px 15px 14px;}
	.qa-list .qa-box:before,
	.qa-list .qa-box:after { width: 25px; top: 25px; right: 15px;}
	
	.qa-list .qa-box label { font-size: 14px;}
	.qa-list .qa-box label span { padding-right: 32.5px;}
	.qa-list .qa-box label:before { width: 32px; font-size: 28px; margin-top: -10px;}
	
	.qa-list li input:checked ~ .qa-box .answer-box { margin-top: 15px; padding-top: 15px;}
	
	.qa-list li input:checked ~ .qa-box .answer-box .answer { font-size: 14px;}
	.qa-list li input:checked ~ .qa-box .answer-box .answer:before { width: 32px; font-size: 28px;}
	
	.qa-list li input:checked ~ .qa-box .answer-box .attachment { margin-left: 35px; margin-top: 3px;}
	.qa-list li input:checked ~ .qa-box .answer-box .attachment a { font-size: 14px;}
}



#page-site-map .page-contents .page-block { display: flex; gap: 80px;}

#page-site-map .page-contents .page-block .map-block { width: 50%;}

#page-site-map .page-contents .page-block .map-box { margin-bottom: 45px;}
#page-site-map .page-contents .page-block .map-box:last-of-type { margin-bottom: 0px;}

#page-site-map .page-contents .page-block .map-box ul li a { display: block; width: 100%; font-size: 20px; border-bottom: 2px solid #14ae67; padding: 17px 5px; color: #333;}

#page-site-map .page-contents .page-block .map-box ul.child { padding: 20px 0 0 0;}
#page-site-map .page-contents .page-block .map-box ul.child li { margin: 0 0 10px 35px;}
#page-site-map .page-contents .page-block .map-box ul.child li a { display: inline; margin-left: 0px; font-size: 16px; border-bottom: none; padding: 0px 0 0 0px; position: relative;}
#page-site-map .page-contents .page-block .map-box ul.child li a:before { width: 0; height: 0; display: block; position: absolute; top: 4px; left: -20px; content: ""; color: #14ae67; line-height: 1; border-width: 9px 15px; border-style: solid; border-color: transparent; border-left-color: currentColor; border-right: 0;}

@media screen and (max-width: 768px) {
	#page-site-map .page-contents .page-block { flex-wrap: wrap;}
	
	#page-site-map .page-contents .page-block .map-block { width: 100%;}
}



#page-outline main h2 { font-size: 32px; text-align: center; font-weight: bold; border-bottom: 5px solid #14ae67; padding-bottom: 15px; margin-bottom: 30px;}
#page-outline main h2 br { display: none;}

#page-outline main .green_text { font-size: 28px; font-weight: 500; text-align: center; color: #14ae67; padding: 10px 0 10px; line-height: 1.8;}

#page-outline main p { line-height: 30px; margin-bottom: 30px;}
#page-outline main .green_text + p + img { display: block; max-width: 250px; margin: 0 auto 40px;}
#page-outline main .green_text + p + img + img { display: block; max-width: 580px; margin: 0 auto 75px; width: 100%;}

#page-outline main .about_members p br { display: none;}

#page-outline main ul { display: flex; flex-wrap: wrap; margin-bottom: 50px;}
#page-outline main ul li { padding-left: 17px;}
#page-outline main ul.cities li { width: calc(100% / 5);}
#page-outline main ul.organizations li { width: calc(100% / 3);}
#page-outline main ul li:before { content: ""; display: inline-block; width: 14px; height: 14px; border-radius: 50%; background: #14ae67; margin: 0 7.5px -1px -14px;}
#page-outline main p.update { text-align: right;}

@media screen and (max-width: 845px) {
	#page-outline main ul.organizations li { width: calc(100% / 2);}
}

@media screen and (max-width: 768px) {
	#page-outline main h2 { font-size: 26px;}
	
	#page-outline main .green_text { font-size: 24px;}
}

@media screen and (max-width: 568px) {
	#page-outline main h2 { font-size: 18px; margin-bottom: 20px;}
	
	#page-outline main .green_text { font-size: 16px;}
	
	#page-outline main p { line-height: 1.8; margin-bottom: 20px;}
		
	#page-outline main ul.cities li { width: calc(100% / 4);}
	#page-outline main ul.organizations li { width: calc(100% / 1);}
}

@media screen and (max-width: 450px) {
	#page-outline main h2 { font-size: 16px;}

	#page-outline main .about_members p br { display: block;}

	#page-outline main ul.cities li { width: calc(100% / 3);}
}

@media screen and (max-width: 375px) {	
	#page-outline main h2 { font-size: 16px;}
	#page-outline main h2 br { display: block;}

	#page-outline main .green_text { font-size: 14px;}

	#page-outline main ul.cities li { width: calc(100% / 2);}
}
















