@charset "utf-8";
/* LAST UPDATE */
*{margin: 0; padding: 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; font-weight: 400;}
html{font-size: 62.5%;}
html,body{width: 100%; margin: 0; padding: 0; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;}
body{font-size: 3vw;  line-height: 1.4;}
@media screen and (min-width: 800px), print {
	body{font-size: 1.6rem;}
}
.pc{display: none;}
.sp{display: block;}
@media screen and (min-width: 767px), print {
	.pc{display: block;}
	.sp{display: none;}
}
.cf:after { content: ""; clear: both; display: block;}
#link01, #link02, #monthly{ margin-top:-60px; padding-top:60px;}
@media screen and (min-width: 800px), print {
	#link01, #link02, #monthly{ margin-top:-170px; padding-top:170px;}
}

a:hover{opacity: 0.6; -webkit-transition: 0.1s ease-in-out; -moz-transition: 0.1s ease-in-out; -o-transition: 0.1s ease-in-out; transition: 0.1s ease-in-out;}

#bred{width: 96%; margin: 0 0 2em; padding: 0 2%;}
#bred:after { content: ""; clear: both; display: block;}
#bred li, #bred li a{font-weight: 700; color: #186144;}
#bred li {margin: 0 1.0em 0 0; padding: 0 1.5em 0 0; float: left; position: relative; font-size: 2.5vw; }
#bred li a:after { content: ">"; position: absolute; right: 0; top: -.1em;}
@media screen and (min-width: 800px), print {
	#bred{ width: 1000px; margin: 0 auto 60px; padding: 0; display: block; }
	#bred li{font-size: 1.4rem;}
}


h1 {width:60%; margin: 15px 0 0 15px; float: left; display: block}
h1 a{ width: 100%; height: auto; display: block; }
h1 img{width: auto; height: 40px; }

@media screen and (min-width: 800px), print {
	h1 {width: 505px; margin: 0; float: left; text-align: center}
	h1 img{width: 505px; height: 85px; max-width:inherit ; max-height: inherit;}
}

#main h3{ margin: 0 0 1.5em; padding: .6em .7em .5em; font-size: 4.5vw; font-weight: 700; color: #fff; background: #186144;}
#main h4{ margin: 0 0 1.5em; font-size: 4.5vw; font-weight: 700; border-bottom: 2px solid #186144;}
#main h4.h4_02{ margin: 0 0 1em; font-size: 3.5vw; font-weight: 700; border-bottom: 2px solid #186144;}
#main h5{ margin: 0 0 1em; font-size: 4vw; font-weight: 700; color: #186144; }
@media screen and (min-width: 800px), print {
	#main h3{ font-size: 2.3rem; }
	#main h4{ font-size: 2.3rem; }
	#main h4.h4_02{ font-size: 1.8rem; }
	#main h5{ font-size: 2rem; }	
}

.mb0{margin-bottom: 0 !important;}
.mb1{margin-bottom: 1em !important;}
.mb2{margin-bottom: 2em !important;}
.mb3{margin-bottom: 3em !important;}
.mb4{margin-bottom: 4em !important;}
.mb05{margin-bottom: 5px !important;}
.mb10{margin-bottom: 10px !important;}
.mb20{margin-bottom: 20px !important;}
.mb30{margin-bottom: 30px !important;}
.mb40{margin-bottom: 40px !important;}
.mb50{margin-bottom: 50px !important;}
.mb60{margin-bottom: 60px !important;}
.mb70{margin-bottom: 70px !important;}
.mb80{margin-bottom: 80px !important;}
.ml1{margin-left: 1em !important;}
.ml2{margin-left: 2em !important;}
.ml3{margin-left: 3em !important;}
.ml12{margin-left: 1.2em;}
.fwB{font-weight: 700 !important;}
.taR{text-align: right !important;}
.taC{text-align: center !important;}
.td_u{text-decoration: underline !important}
.flR{float: right}
.flL{float: left}
.underline{text-decoration: underline;}
.bg_gray{background: #ededed;}
.red{color: #E50003}
.green01{color: #186144 !important}
.ind01{ text-indent: 1em; }
.note01{text-indent: -1em; margin-left: 1em;}
.note02{text-indent: -2em; margin-left: 2em;}
.note025{text-indent: -2.5em; margin-left: 2.5em;}
.note025rem{text-indent: -2.5rem; margin-left: 2.5rem;}
.note03{text-indent: -3em; margin-left: 3em;}
.fsz15{font-size:1.5rem;}
.fsz22{font-size:2.2rem;}
.fsz25{font-size:2.5rem;}
.list01 li{ margin: 0 0 .7em;}
.list01 li a{ text-decoration: underline;}
.list02 li{ margin: 0 0 .7em;}
.list02 li a{ text-decoration: underline;}
.ol_list_desimal{list-style: decimal; padding-left:1.75em;}
.ol_list_la{list-style:lower-alpha;}
.ol_list_desimal li,.ol_list_la li{margin-bottom: 5px;}
.ol_list_circle{list-style:circle; padding-left:1.25em;}

.block{display: block;}
div#wpadminbar { margin: auto;}

/*.pdf a, .download a, .excel a, .word a{text-decoration: none !important;}*/

.pdf a:after{ width: 24px; height: 24px; margin: 3px 0 0 4px; content: ""; display: inline-block; background: url("../images/pdf.png") no-repeat; vertical-align: bottom;}
.open_tab a:after{ width: 24px; height: 24px; margin: 3px 0 0px 12px; content: ""; display: inline-block; background: url("../images/icon_open_tab.png") no-repeat; vertical-align: bottom;}
.download a:after{ width: 24px; height: 24px; margin: 3px 0 0px 4px; content: ""; display: inline-block; background: url("../images/download.png") no-repeat; vertical-align: bottom;}
.excel a:after{ width: 24px; height: 24px; margin: 3px 0 0 4px; content: ""; display: inline-block; background: url("../images/excel.png") no-repeat; vertical-align: bottom;}
.word a:after{ width: 24px; height: 24px; margin: 3px 0 0 4px; content: ""; display: inline-block; background: url("../images/word.png") no-repeat; vertical-align: bottom;}
.arrow a{text-decoration: underline;}
.arrow:before{font-family: "Font Awesome 5 Free"; margin: 0 7px 0 5px; font-weight: 900; content: '\f0da'; color: #186144; font-size: 15px;}
p.arrow{margin-left: 1.2em; text-indent: -1.2em;}

.img img{ width: 100%; height: auto;}
@media screen and (min-width: 800px), print {
	.img img{ width: auto; }
}
.img02 img{ width: 100%; height: auto;}

.scroll{ overflow-x: auto; white-space: nowrap; -webkit-overflow-scrolling: touch;}


.table01 th, .table01 td{ padding: .5em; border: 1px solid #186144}
.table01 th{ background:#186144; color: #fff; white-space: nowrap; text-align: center;}
.table01 th.th01{ background:#f0f0f0; color: #000; text-align: center;}
.table01 th#date { width: 5%; }
.table01 th#naiyou { width: 40%; }
.table01 th#writer {width: 30% }
@media screen and (min-width: 800px), print {
	.table01 th#date { width: 115px; }
	.table01 th#naiyou { width: 330px; }
	.table01 th#writer {width: 175px; }
	.table01 th#tb_pdf {width: 105px; }
}

.table02 th, .table02 td{ padding: .5em; border: 1px solid #b4b4b4}
.table02 th{ background:#f0f0f0; color: #000; text-align: center;}
.table03 th, .table03 td{ padding: .5em; border: 1px solid #186144}
.table03 th{ background:#186144; color: #fff; white-space: nowrap; text-align: center; border-right: 1px solid #fff;}
.table03 .th01{ min-width: 6em;}

/*table.horizontal tr th:not(:last-of-type) {border-right: 1px solid #fff; }
table.horizontal tr th:not(:last-of-type) {border-right: 1px solid #fff; }
*/
table.vertical tr:not(:last-child) th {border-bottom: 1px solid #fff;}
.btn01 a{ padding: .6em 1em .5em; background: #fff; text-decoration: none !important; display: inline-block; border-radius: 5px; border: 1px solid #186144;}
.btn02 a { min-width: 100px; padding: .4em .5em 0.3em; text-decoration: none !important; background: #186144; display: inline-block; border-radius: 5px; color: #fff;} 


#wrapper{ width: 100%; padding-top: 70px; overflow: hidden;}
#wrapper:after { content: ""; clear: both; display: block;}
@media screen and (min-width: 800px), print {
	#wrapper{ padding: 144px 0 0; min-width: 1024px;}
}
#top_wrapper{ width: 100%; overflow: hidden;}
#top_wrapper:after { content: ""; clear: both; display: block;}
@media screen and (min-width: 800px), print {
	#top_wrapper{ padding: 0; min-width: 1024px;}
}


header{ width: 100%; height: 70px; display: block; position: fixed; top: 0; left: 0; z-index: 2000; background: #fff;}
header > div{ padding: 0; position: relative;}
@media screen and (min-width: 800px), print {
	header{ height: 165px; margin: 0; padding: 0; border-bottom: none;}
	header > div{width: 1000px; height: auto; margin: 18px auto; padding: 0; }
	header > div:after { content: ""; clear: both; display: block;}
}
@media screen and (min-width: 800px), print {
	header.h_scroll { height: 95px;}
	header.h_scroll > div{ margin: 10px auto; }
	header.h_scroll .header_right { width: 530px; float: right;}
	header.h_scroll h1 { width: 250px; text-align: left; }
	header.h_scroll h1 img{ width: auto; height: 40px;}
	header.h_scroll	nav {height: 35px;}
	header.h_scroll	nav > ul > li a { height: 35px; line-height: 35px; }
	header.h_scroll #headerbtn_pc { margin: 8px 0 0; } 
	header.h_scroll #headersearch_pc { margin: 5px 0 0; }
	header.h_scroll #headerbtn_pc {float: left;}
}
#top_header{ height: auto; position: static; }
#top_header:after { content: ""; clear: both; display: block;}
.header_right{display: none;}
@media screen and (min-width: 800px), print {
	.header_right{ width: 450px; float: right; display: block;}
}


nav{ width: 100%; height: 90vh; margin: 0; padding: 30px 15px 100px ; display: none; position: absolute; left: 0; top: 68px; background: #fff; overflow-y: scroll;}
nav > ul:after { content: ""; clear: both; display: block;}
nav > ul:first-of-type{ margin: 0 0 30px; border-top: 1px solid #186144;}
nav > ul:first-of-type > li { width: 50%; float: left; margin: 0; text-align: center; }
nav > ul:first-of-type > li:last-of-type { margin: 0;}
nav > ul:first-of-type > li > a{ width: 100%; height: 45px; line-height: 45px; color: #fff; background: #186144; font-weight: 700; font-size: 3.8vw; border-bottom: 2px solid #fff; display: block; border-right: 2px solid #fff;}
nav > ul:first-of-type > li:nth-of-type(odd) > a{ border-left: 1px solid #186144; }
@media screen and (min-width: 800px), print {
	nav{ height: 45px; margin:0; padding: 0; display: block !important; position: static; top: auto; left: auto; float: right; overflow-y:inherit; overflow-x: inherit; background: #186144;}
	nav > ul{width: 1000px; margin: 0 auto;}
	nav > ul > li {float: left; }
	nav > ul > li, nav > ul > li a { font-size: 1.5rem; }
	nav > ul > li a{ height: 45px; padding: 0 25px; font-weight: 700; display: block; color: #fff; line-height: 45px;}
}
#top_nav{margin: 0 0 60px;}



#headerbtn_sp{ width: 100%; margin: 0 auto 20px;}
#headerbtn_sp:after { content: ""; clear: both; display: block;}
#headerbtn_sp li { width: 100%; margin: 0 0 2px; float: left;}
#headerbtn_sp li a{ height: 35px; padding: 0 0 0 45px; color: #fff; background: #186144; font-size: 1.4rem; line-height: 35px; font-weight: 700; display: block; position: relative;}
#headerbtn_sp li a:before{ width: 25px; height: 25px; position: absolute; top: 5px; left: 10px; display: block; content: "";}
#headerbtn_sp li:nth-of-type(1) a:before{ background: url("../images/icon_manage.png"); background-size: contain; }
#headerbtn_sp li:nth-of-type(2) a:before{ background: url("../images/icon_contact.png"); background-size: contain;}
#headerbtn a { background: #186144; color: #fff; }
#hamburger{ height: 40px; padding: 0 15px ; line-height: 40px; font-weight: 700; background: #186144; display: block; float: right; color: #fff; cursor: pointer; position: absolute; top:15px; right:15px; z-index: 20000; text-align: center;}
#headersearch_sp{ padding: 7px 20px; border: 2px solid #186144; border-radius: 60px; position: relative;}
#headersearch_sp input[type="search"]{ width: 90%; font-size: 1.4rem; background: #fff; font-size:1.6rem; }
#headersearch_sp input[type="text"]{ font-size:1.6rem;}
#headersearch_sp input[type="image"]{ width: 28px; position: absolute; right: 10px; top: 3px;}
@media screen and (min-width: 800px), print {
	#hamburger, #spmenu01, #spmenu02, #headersearch_sp, #headerbtn_sp{display: none;}
	#headerbtn_pc{ width: 375px; margin: 0 0 10px; float: right; display: block;}
	#headerbtn_pc:after { content: ""; clear: both; display: block;}
	header.h_scroll #headerbtn_pc{ width: 310px; }
	#headerbtn_pc li { margin: 0 0 0 10px; float: left;}
	#headerbtn_pc li a{ padding: 10px 20px 10px 50px; color: #fff; background: #186144; font-size: 1.4rem; line-height: 1; font-weight: 700; position: relative; display: block;}
	#headerbtn_pc li a:before{ width: 25px; height: 25px; position: absolute; top: 5px; left: 15px; display: block; content: "";}
	header.h_scroll #headerbtn_pc li a{ padding: 10px 12px 10px 39px; font-size: 1.2rem; }
	header.h_scroll #headerbtn_pc li a:before{ width: 20px; height: 20px; top: 6px; left: 12px;}
	#headerbtn_pc li:nth-of-type(1) a:before{ background: url("../images/icon_manage.png"); background-size: contain; }
	#headerbtn_pc li:nth-of-type(2) a:before{ background: url("../images/icon_contact.png"); background-size: contain;}
	#headersearch_pc{ width: 210px; height: 37px; padding: 5px 20px; background: #fff; border: 2px solid #186144; border-radius: 60px; position: relative; float: right;}
	#headersearch_pc input[type="search"]{ width: 145px; font-size: 1.4rem; }
	#headersearch_pc input[type="image"]{ width: 28px; position: absolute; right: 10px; top: 3px;}
}



#top_slide{ width: 100%; margin: 0 0 30px;}
#top_slide .slick-slide img { width: 100%; height: auto;}
#top_slide .slick-dots{ bottom: 20px;}
#top_slide .slick-dots li button:before{width: 15px; height: 15px; background: #fff; border: 2px solid #186144; border-radius: 0 }
#top_slide .slick-dots li.slick-active button:before{background:#186144 }
@media screen and (min-width: 800px), print {
	#top_slide{margin: 0 0 30px; position: relative;}
}


#main_top{ width: 100%; padding: 0;}
#main_top:after { content: ""; clear: both; display: block;}
#main_top + footer { margin: 0;}
@media screen and (min-width: 800px), print {
	#main_top{ padding: 0 ;}
}


#emergency{ width: 94%; margin: 0 auto 20px; padding: 1em 1em 0; border: 2px solid #da003c;}
#emergency dt,#emergency dd { width: 100%;}
#emergency dt {margin: 0 0 .1em}
#emergency dd {margin: 0 0 .5em}
@media screen and (min-width: 800px), print {
	#emergency{ width: 1000px; margin: 0 auto 20px; }	
	#emergency{ width: 1000px; margin: 0 auto 20px; }
	#emergency dt { width: 135px; float:left;}
	#emergency dd {width: 845px; margin:0 0 .7em 135px;}
}



.midashi{ height: 220px; margin: 0 0 30px; padding: 80px 3% 40px;}
.midashi div{ color: #fff; font-weight: 700;}
.midashi h2{ margin: 0 0 10px; line-height: 1;}
.midashi p{ font-weight: 700; }
#midashi_grow{ background: url("../images/h2grow_sp.png"); background-size: cover; }
#midashi_support{ background: url("../images/h2support_sp.png"); background-size: cover; }
#midashi_defend{ background: url("../images/h2defend_sp.png"); background-size: cover; }
#midashi_broaden{ background: url("../images/h2broaden_sp.png"); background-size: cover; }
#midashi_about{ background: url("../images/h2about_sp.png"); background-size: cover; }
#midashi_members{ background: url("../images/h2members_sp.png"); background-size: cover; }
#midashi_grow h2, #midashi_support h2, #midashi_defend h2, #midashi_broaden h2{ font-size: 3rem;}
#midashi_about h2, #midashi_members h2{ font-size: 6vw;}
@media screen and (min-width: 800px), print {
	.midashi{ height: 220px; margin: 0 0 30px; padding: 60px 0;}
	.midashi div{ width: 1000px; margin: 0 auto; }
	.midashi h2{ margin: 0 0 20px;}
	.midashi p{ font-size: 2.4rem;}
	#midashi_grow{ background: url("../images/h2grow_pc.png"); background-size: cover; }
	#midashi_support{ background: url("../images/h2support_pc.png"); background-size: cover; }
	#midashi_defend{ background: url("../images/h2defend_pc.png"); background-size: cover; }
	#midashi_broaden{ background: url("../images/h2broaden_pc.png"); background-size: cover; }
	#midashi_about{ background: url("../images/h2about_pc.png"); background-size: cover; }
	#midashi_members{ background: url("../images/h2members_pc.png"); background-size: cover; }
	#midashi_grow h2, #midashi_support h2, #midashi_defend h2, #midashi_broaden h2{ font-size: 4.8rem;}
	#midashi_about h2, #midashi_members h2{ font-size: 3.8rem;}
}

#main{ width: 96%; margin: 0 2%; }
#main:after { content: ""; clear: both; display: block;}
@media screen and (min-width: 800px), print {
	#main{width: 1000px; margin: 0 auto;}
}

section{margin: 0 0 21%;}
section:after { content: ""; clear: both; display: block;}
@media screen and (min-width: 800px), print {
	.narrow{width: 800px; margin: 0 auto 120px;}
	section{margin: 0 0 120px;}
}


#section_top{width: 96%; margin: 0 auto;}
#top_service > div{ width: 48%; margin: 0 1% 2%; float: left; }
#top_service > div img { width: 100%; height: auto }
#top_service > div a { padding: 0 0 13px; display: block;}
#top_service > div a p{ padding:0 13px; color: #fff; font-weight: 700; }
.top_service_title{ padding:13px 0 5px 13px !important; font-size: 5vw; line-height: 1; display: inline-block;}
.top_service_title:after{ width: .75em; height: .75em; margin: 3px 0 0 10px;  content: ""; display: block; float: right; background: url("../images/arrow01.png") no-repeat; background-size: contain; }
@media screen and (min-width: 800px), print {
	#section_top{width: 1000px; margin: 0 auto 60px;}
	#top_service > div{ width: 240px; margin: 0 5px;}
	.top_service_title{ padding:13px 0 5px 13px !important; font-size: 3.3rem; }
}
#top_service_grow a{background:#57b75b }
#top_service_support a{background:#0e8114; }
#top_service_defend a{background:#269df0; }
#top_service_broaden a{background: #124dae;}


#section_top_magazine{width: 80%; margin: 5% auto 10%; }
#section_top_magazine_wrap{width: 100%; display: flex; align-items: center; margin: 0 auto; padding: 7% 3% 7% 5%; border: 1px solid #c5c5c5; }
#top_book_img { width: 20%; text-align: right;}
#top_book_img img{ width: 100%; height: auto;}
#top_book_txt { width: 80%; }
#top_book_t01, #top_book_t02{ font-weight: 700; text-align: center; line-height: 1;}
#top_book_t01{font-size: 4.5vw; margin-bottom: 2%;}
#top_book_btn { margin-top: 5%; text-align: center; }
#top_book_btn a{ display: inline-block; padding: 3% 5%; color: #fff; background: #186144; font-weight: 700; border-radius: 7px; }

@media screen and (min-width: 800px), print {
	#section_top_magazine{width: 1000px; margin: 0 auto 60px;}
	#section_top_magazine_wrap{width: 666px; padding: 3.24% 5%;}
	#top_book_img { width: 30%;}
	#top_book_img img{ width: 80%;}
	#top_book_txt { width: 70%; }
	#top_book_t01{font-size: 2.9rem; margin-bottom: 10px; }
	#top_book_btn { margin-top: 40px;}
	#top_book_btn a{padding: 14px 45px;}
}


.book_cart{ width: 100%; margin: 0 0 1.6em; border-bottom: 2px solid #ddd;}
.book_cart:after { content: ""; clear: both; display: block;}
.book_cart th, .book_cart td{ line-height: 1.2;}
.book_cart th{ padding: 0 .8em .8em 0; vertical-align: middle;  }
.bc_title{ padding: 0 0 .8em; line-height: 1.2; vertical-align: bottom;}
.bc_price01{ padding: 0 0 .8em .8em;  text-align: right; vertical-align: bottom; white-space: nowrap; font-weight: 700;}
.bc_volume{ padding: 0 .5em .8em 0; text-align: right; vertical-align: middle;}
.bc_volume input[type="text"]{ width: 15%; margin: 0 .2em 0 0; padding: .3em; border: 1px solid #999; font-size:1.6rem; }
.bc_volume input[type="text"]:hover { opacity: 1;}
.bc_btn{ width: 14%;}
.cartbtn01, .cartbtn02{ padding: .5em .8em; line-height: 1; border-radius: 3px;}
.cartbtn01{ background:#FF9D2F; color: #fff; float: left;}
.cartbtn02{ background:#C00003; color: #fff; float: right;}
.book_cart_price{ width: 100%; margin: 0 0 2em;}
.book_cart_price th, .book_cart_price td{ padding: 0 0 .4em; text-align: right; font-weight: 700;}
.book_cart_price td{ width: 30%;}
@media screen and (min-width: 800px), print {
	.bc_volume input[type="text"]{ width: 10%; font-size:1.6rem; }	
	.bc_btn{ width: 8.5%; }
	.book_cart, .book_cart_price{ width: 800px;}
	.book_cart{ margin: 0 auto 1em;}
	.book_cart_price{ margin: 0 auto 3em;}
	.book_cart_price td{ width: 15%; margin: 0 0 .8em;}
}
.book_order{ width: 100%; margin: 0 auto 1.6em; border-bottom: 2px solid #ddd;}
.book_order_price{ width: 100%; margin: 0 auto 2em;}
.book_order_price th, .book_order_price td{ padding: 0 0 .4em; text-align: right; font-weight: 700;}
.book_order_price td{ width: 30%;}
@media screen and (min-width: 800px), print {
	.book_order, .book_order_price{ width: 800px;}	
	.book_order_price td{ width: 15%; margin: 0 0 .8em;}
}



#carticon{ width: 65px; height: 65px; position: fixed; bottom: 0; right:0;}
#carticon input{ width: 100%; height: 100%; background: #ddd; font-size:1.6rem; }
#carticon input:hover { opacity: 0.6; -webkit-transition: 0.1s ease-in-out; -moz-transition: 0.1s ease-in-out; -o-transition: 0.1s ease-in-out; transition: 0.1s ease-in-out;}
#carticon span{ width: 2.5em; height: 2.5em; padding: .8em 0 0; font-size: 2.5vw; text-align: center; position: absolute; top: 5px; right:5px; color: #fff; font-weight: 700; background: #CB0205; border-radius: 60px; line-height: 1;}
@media screen and (min-width: 800px), print {
	#carticon{ width: 80px; height: 80px; }
	#carticon span{padding: .7em 0 0; font-size: 1.1rem;}
	
}



#section_info{ background: #ededed; margin: 0 0 8%; padding: 5% 3%;}
#section_info:after { content: ""; clear: both; display: block;}
@media screen and (min-width: 800px), print {
	#section_info{ margin: 0 0 60px; padding: 60px 0;}
	#top_info{ width: 1000px; margin: 0 auto;}
}

#section_info_wrap{margin: 0 0 1em; }
#section_info_wrap:after { content: ""; clear: both; display: block;}
@media screen and (min-width: 800px), print {
	#section_info_wrap{width: 1000px; margin: 0 auto 20px; padding: 0; }	
}

#section_info_wrap input{display: none;}
#section_info_wrap input + label { width: 33.3%; padding: 1em 0; border-right: 2px solid #fff; display: block; background: #186144; font-weight: 700; color: #fff; float: left; text-align: center;}
#section_info_wrap input:checked + label { background: #fff; color: #000;}


.top_tab_info{ width: 100%; padding: 1em; display: none; background: #fff; float: left;}
@media screen and (min-width: 800px), print {
	.top_tab_info{ width: 1000px; padding: 30px; }
}
#info_tab01:checked ~ #top_tab_info01{ display: block}
#info_tab02:checked ~ #top_tab_info02{ display: block}
#info_tab03:checked ~ #top_tab_info03{ display: block}
#info_tab04:checked ~ #top_tab_info04{ display: block}

#section_info_wrap dl dt{margin: 0 0 .3em;}
#section_info_wrap dl dd{ margin: 0 0 1em; padding: 0 0 1em; border-bottom: 1px solid #00a161; }
@media screen and (min-width: 800px), print {
	#section_info_wrap dl dt { width: 130px; padding: 0 0 13px 0; float: left; }
	#section_info_wrap dl dd { padding: 0 0 13px 130px; }
	
}


.info_btn { width:100%; margin: 0 auto; text-align: right;}
.info_btn a{ padding: .9em 2em .7em; background: #186144; display: inline-block; color: #fff; font-weight: 700; line-height: 1; border-radius: 80px;}
@media screen and (min-width: 800px), print {
	info_btn { width:940px;}
}


#about01, #about02, #about03, #about04, #about05, #about06{ margin-top:-60px; padding-top:60px;}
@media screen and (min-width: 800px), print {
	#about01, #about02, #about03, #about04, #about05, #about06{ margin-top:-170px; padding-top:170px;}
}

.lead{ padding: 1em; background: #f1f1f1; color: #186144;}
.lead p{ font-weight: 700; line-height: 1.5; }
@media screen and (min-width: 800px), print {
	.lead{ padding: 1.5em 1.5em 1.2em; }

}

.service_box:after { content: ""; clear: both; display: block;}
.service_box article { margin: 0 0 25px;}
.service_box article:after { content: ""; clear: both; display: block;}
.service_box article:last-of-type { margin: 0;}
@media screen and (min-width: 800px), print {
	.service_box article { margin: 0 0 40px; font-size: 1.6rem}
}

.service_box h3, .service_box h4{ color: #186144; font-weight: 700;}
.service_box h3{ margin: 0 0 1.4em; padding: 0; font-size: 4.5vw; color: #186144; text-align: center; }
.service_box h4{ margin: 0 0 1em !important; font-size: 4vw !important; line-height: 1.2 !important;}
.service_box h5{ margin: 0 0 .5em !important; font-size: 3.5vw !important; line-height: 1.2 !important; color: #000 !important;}
@media screen and (min-width: 800px), print {
	.service_box h3{ margin: 0 0 2em !important; font-size: 2.4rem !important;}
	.service_box h4{ margin: 0 0 .7em !important; padding: 0 0 .3em; font-size: 1.9rem !important;}
	.service_box h5{ font-size: 1.5rem !important;}

}
.service_box_txt{ margin: 0 0 6px; padding: 1em; border: 1px solid #aaa}
@media screen and (min-width: 800px), print {
	.service_box_txt{ margin: 0 0 10px;}
}

.link_list:after { content: ""; clear: both; display: flex;}
.link_list li a { width: 23%; margin: 0 2% 2% 0; padding: 1em 0 1em 1em; float: left; background: #D8D8D8; display: inline-block; font-size: 2.5vw; line-height: 1; font-weight: 700; text-align: left;}
@media screen and (min-width: 800px), print {
	.link_list li a { width: 110px; margin: 0 10px 10px 0;  font-size: 1.4rem; }
}


.business_link:after { content: ""; clear: both; }
.business_link > div{ width: 49%; margin: 0 0 2% ; float: left; display: block;}
.business_link > div:nth-child(odd){ margin: 0 2% 2% 0 ; }
.business_link > div a{ width: 100%; display: block; font-weight: 700; color: #fff; background: #186144;}
.business_link > div a img{ width: 100%; height: auto;}
.business_link > div a .company_main_txt{ padding: 4%; }
.business_link .business_link_title{margin: 0 0 2%; padding: .5em;  line-height: 1; }
.business_link > div p{ font-size: 2.5vw; font-weight: 700;}
@media screen and (min-width: 800px), print {
	.business_link > div{ width:320px; margin: 0 20px 20px 0; }
	.business_link > div:nth-child(odd){ margin: 0 20px 20px 0; }
	.business_link > div:nth-child(3n){ margin: 0 0 20px; }
	.business_link > div p{ font-size: 1.4rem; }

	.business_link .business_link_title{ }
}

.jirei_link > div { width: 48%; margin: 0 4% 4% 0; float: left; display: block;}
.jirei_link > div:nth-of-type(even) {  margin: 0 0 4% }
.jirei_link > div a{display: block;}
.jirei_link > div img { width: 100%; height: auto;}
.jirei_link_title {font-weight: 700;}
.jirei_link_title:before {font-family: "Font Awesome 5 Free"; margin: 0 6px 0 5px; font-weight: 900; content: '\f0da'; color: #186144; font-size: 18px;}
@media screen and (min-width: 800px), print {
	.jirei_link > div{width: 320px; margin: 0 10px 10px 0;  }
	.jirei_link > div:nth-of-type(even) {  margin: 0 10px 10px 0 }

}


.backnumber_btn{text-align: center; margin:0 0 6rem;}
.backnumber_box { padding: 0 ; }
.backnumber_box h3 { background: #fff !important;  margin: 0 0 .9em !important; padding: 0 !important; color: #186144 !important; border-bottom: 2px solid #186144; font-size: 3.5vw !important}
.backnumber_book{margin: 0;}
.backnumber_book:after { content: ""; clear: both; display: block;}
.backnumber_book li a{ width: 14%; height: 90px; margin: 0 1em 1em 0; padding: 0; float: left; display: block;  font-size: 2.5vw !important; text-align: center; line-height: 1;}
.backnumber_book li:nth-child(6n) a{ margin: 0 0 1em;}
.backnumber_book li a p{ font-weight: 700;}
.backnumber_book li a div { width: 40px; height: 57px; margin: 0 auto 5px; display: block; background: #D4D4D4; }
.backnumber_book li a div img{ width: 40px; height: auto;}
@media screen and (min-width: 800px), print {
	.backnumber_box{width: 480px; margin: 0 40px 40px 0; padding: 0; float: left;}
	.backnumber_box:nth-of-type(even){ margin: 0 0 40px 0; float: left;}
	.backnumber_box h3 { margin: 0 0 .5em !important;font-size: 1.7rem !important}
	.backnumber_book {margin: 0}
	.backnumber_book li a{ width: 70px; margin: 0 10px 10px 0; padding: 0; font-size: 1.5rem !important }
}
	

.happyokai_top { max-width: 100%;}
.happyokai_top img { width: 100%;}

.happyokai_text p { margin-top: 1.4rem; text-align: left; font-weight: 700; }

.superior_link {margin: 3rem 0;}
.backnumber_list:after { content: ""; clear: both; display: block;}
.backnumber_list li a { width: 24%; margin: 0 1.333% 1.333% 0; padding: .7em .5em; background:#186144;  color: #fff; display: block; float: left; font-weight: 700; line-height: 1; text-align: center;}
.mr0{margin: 0 0 1.333% !important;}
.jyusyoujirei_btn { text-align: center; }	
.jyusyoujirei_btn img{ max-width: 100%; }	
@media screen and (min-width: 800px), print {
	.happyokai_text p { line-height: 28px;}	
	.superior_link {margin: 4rem 0 5rem;}	
	.backnumber_list li a { padding: 1em .5em;}	
}


.zyusho_table { width: 100%; }
.zyusho_table thead tr th:nth-of-type(2) { width: 80px;}
@media screen and (min-width: 800px), print {	
	.zyusho_table { width: 96%; }
	.zyusho_table thead tr th:nth-of-type(2) { width: 100px;}
	.zyusho_table thead tr th:nth-of-type(3) { width: 200px;}
	.zyusho_table thead tr th:nth-of-type(4) { width: 65px;}
	.zyusho_table thead tr th:nth-of-type(5) { width: 510px;}
}

.company_menu{width: 96%; margin: 80px 2% 0;}
.company_menu:after { content: ""; clear: both; display: block;}
.company_menu li { width: 49%; margin: 0 2px 2px 0; float: left; border: 1px solid #186144 ;}
.company_menu li a { width: 100%; margin: 0 20px 0 0; padding: .7em .8em; background: #186144; line-height: 1; float: left; color: #fff; }
.company_menu_active {width: 100%; margin: 0; padding: .7em .8em; background: #fff; line-height: 1; float: left; color: #186144; font-weight: 700;}
@media screen and (min-width: 800px), print {
	.company_menu{width:1000px; margin: 80px auto 0;}
	.company_menu li { width:246px;}

}


.company_main_link { margin: 0 0 60px; }
.company_main_link:after { content: ""; clear: both; display: block;}
.company_main_link li{ width: 49%; margin: 0 0 2% ; float: left;}
.company_main_link li:nth-child(odd){ margin: 0 2% 2% 0 ; }
.company_main_link li a{ width: 100%; display: block; font-weight: 700; color: #fff;}
.company_main_link li.company_main_link01 a{ background: #57b75b; }
.company_main_link li.company_main_link02 a{ background: #0e8114; }
.company_main_link li.company_main_link03 a{ background: #269df0; }
.company_main_link li.company_main_link04 a{ background: #124dae; }
.company_main_link li a img{ width: 100%; height: auto;}
.company_main_link li a .company_main_txt{ padding: 4%; }
.company_main_link .company_main_title{margin: 0 0 2%; font-size: 2.5rem; font-weight: 700; line-height: 1; display: inline-block; position: relative;}
.company_main_link .company_main_title:after{ width: .75em; height: .75em; margin: 3px 0 0 10px;  content: ""; display: block; float: right; background: url("../images/arrow01.png") no-repeat; background-size: contain; }
.company_main_link li a p{ font-size: 1.2rem; font-weight: 700; color: #fff;}
@media screen and (min-width: 800px), print {
	.company_main_link li{ width:240px; margin: 0 5px; }
	.company_main_link li:nth-child(odd){ margin: 0 5px ; }
	.company_main_link .company_main_title{ font-size: 3.3rem; }
	.company_main_link li a p{ font-size: 1.6rem; }
	.company_main_link li a .company_main_txt{ padding: 11px; }
}


.company_link { margin: 0 0 60px; }
.company_link:after { content: ""; clear: both; display: block;}
.company_link li{ width: 49%; margin: 0 0 2% ; float: left;}
.company_link li:nth-child(odd){ margin: 0 2% 2% 0 ; }
.company_link li a{ width: 100%; display: block; font-weight: 700; color: #fff; background: #186144;}
.company_link li a img{ width: 100%; height: auto;}
.company_link li a .company_main_txt{ padding: 4%; }
.company_link .company_main_title{margin: 0 0 2%; font-size: 2.5rem; font-weight: 700; line-height: 1; }
.company_link li a p{ font-size: 2.6vw; font-weight: 700; color: #fff;}
@media screen and (min-width: 800px), print {
	.company_link li{ width:240px; margin: 0 5px 20px; }
	.company_link li:nth-child(odd){ margin: 0 5px 20px; }
	.company_link .company_main_title{ font-size: 3.3rem; }
	.company_link li a .company_main_txt{ padding: 11px; }
	.company_link li a p{ font-size: 1.4rem;}
}

#greeting:after { content: ""; clear: both; display: block;}
#greeting dd, #greeting dt{ width: 100%; float: left; }
#greeting dd{margin: 0 0 30px;}
#greeting dt { text-align: center;  }
#greeting dt img{ width: 50%; height: auto; max-width: 197px; }
@media screen and (min-width: 800px), print {
	#greeting { width: 800px; margin: 0 auto;}
	#greeting dd{ width: 600px; padding: 0 40px 0 0; }
	#greeting dt{ width: 197px; }
	#greeting dt img{ width: 197px; }
}

.activities_circle{margin: 0 0 4em;}
.activities_circle:after { content: ""; clear: both; display: block;}
.activities_circle > div{ width: 50%; margin: 0 0 1.5em; float: left; text-align: center;}
@media screen and (min-width: 800px), print {
	.activities_circle { width: 880px; margin: 0 auto 90px;}
	.activities_circle > div{ width: 219px; margin: 0; }
	
}

.activities:after { content: ""; clear: both; display: block;}
.activities > div{ width: 100%; margin: 0 0 2em; float: left;}
.activities_img { margin: 0 0 .5em; }
.activities_img > img{ width: 100%; height: auto;}
.activities > div ul li{ margin: 0 0 .7em; padding: 0 0 0 1.4em; font-size: 2.6vw; position: relative; font-weight: 700;}
.activities > div ul li:before{ width: 1em; height: 1em; content: ""; display: block; background:#186144; border-radius: 60px; position: absolute; left: 0; top: 0.13em;}

@media screen and (min-width: 800px), print {
	.activities > div{ width: 475px; margin: 0 10px 40px;}
	.activities_img { margin: 0 0 1em; }
	.activities > div ul li{ font-size: 1.4rem; }
	
}


.history_table_l, .history_table_r{width: 48%; float: left; }

.history_table_l th, .history_table_r th{ color: #004ea2; font-weight: 700; }
.history_table_l{ border-right: 4px solid #cce2a3}
.history_table_l th{padding: 0 1.2em 0 1em; position: relative;}
.history_table_l th:before, .history_table_r th:before{ width: 1.2em; height: 1.2em; content: ""; display: block; background: #cce2a3; border-radius: 200px;}
.history_table_l th:before{ position: absolute; top: 0; right: -.7em; }
.history_table_r th:before{ position: absolute; top: 1em; left: -.7em; }
.history_table_l td{padding: 0 1.2em .6em  1em;}
.history_table_r th{padding: 1em 1em 0 1.2em; position: relative;}
.history_table_r td{padding: 0 1em .3em 1.2em;}
.history_table_l th, .history_table_l td { text-align: right;}
.history_img img{ width: 100%; height: auto; margin: 7px 0 0; max-width: 150px; }
@media screen and (min-width: 800px), print {
	.history_img img{  max-width:inherit; height: auto;}
	.history_table_l td{padding: 0 1.2em 1.2em  1em;}
	.history_table_r td{padding: 0 1em .5em 1.2em;}
	.history_img img{ width: auto;}
}

#map iframe{ width: 100%;}
#map { margin: 0 0 30px; }
#map_table{ margin: 0; border: 1px solid #186144; width:100%;}
#map_table th{ padding: 1em; background: #186144; color: #fff; vertical-align: middle; width:7rem;}
#map_table td{ padding: 1em; border-right: 1px solid #186144; border-bottom: 1px solid #186144; }
.map_station_wrap{display:flex; flex-direction: column; gap:30px;}
@media screen and (min-width: 800px), print {
	#map_table{width:40%}
	.map_station_wrap{flex-direction: row; gap:40px;}
}


.data_txt{font-weight: 700; text-align: center; color: #259061; font-size: 4vw; }
.data_ul:after { content: ""; clear: both; display: block;}
.data_ul li{ width: 49%; float: left;}
.data_ul li:nth-of-type(odd){ margin: 0 2% 2% 0; }
.data_ul li img{ width: 100%; height: auto;}
@media screen and (min-width: 800px), print {
	.data_txt{ font-size: 2.8rem; }
	.data_ul li{ width: 244px; height: auto; }
	.data_ul li, .data_ul li:nth-of-type(odd){ margin: 0 3px 6px; }
	.data_ul li img{ width: 244px; height: 214px;}
}

#material_menu{ margin: 0 0 30px; }

#material_menu:after { content: ""; clear: both; display: block;}
#material_menu ul li a{ width: 33%; padding: 1.2em .5em 1em; font-size: 2.8vw; position: relative; border-bottom: 2px solid #fff;  border-right: 2px solid #fff; background: #eee; color: #186144; display: block; float: left; font-weight: 700; line-height: 1; }
#material_menu ul li a:after{width: 0; height: 0; position: absolute; right: 0.7em; top: 1.1em; border-style: solid; border-width: 5px 0 5px 7px; border-color: transparent transparent transparent #186144; display: block; content: "";}

#material_menu ul li.material_menu_active { width: 33%; padding: 1.2em .5em 1em; font-size: 2.8vw; position: relative; border-bottom: 2px solid #fff;  border-right: 2px solid #fff; background: #fff; color: #186144; display: block; float: left; font-weight: 700; line-height: 1; }
#material_menu ul li.material_menu_active:before { width: 100%; padding: 1.5em 1em 1.6em; position: absolute; right: 0; top: 0; border: 1px solid #eee;  content: ""; }
#material_menu ul li.material_menu_active:after { width: 0; height: 0; position: absolute; right: 0.7em; top: 1.1em; border-style: solid; border-width: 5px 0 5px 7px; border-color: transparent transparent transparent #186144;  display: block; content: ""; }

@media screen and (min-width: 800px), print {
	#material_menu{ width: 200px; margin: 0 30px 30px 0; float: left; display: block;}
	#material_menu ul li a{ width: 200px; padding: 18px; font-size: 1.5rem;  }
	#material_menu ul li a:after{ top: 1.5em; }
	#material_wrap{ width: 770px; float: left;}
	#material_menu ul li.material_menu_active {width: 200px; padding: 18px; font-size: 1.5rem; }
	#material_menu ul li.material_menu_active:before { width: 198px; height: 52px; position: absolute; right: 0; top: 0; border-top: 0px; border-bottom: 0px; border-left: 1px solid #eee; border-right: 1px solid #eee;  content: ""; }
	#material_menu ul li.material_menu_active:first-child:before { border-top: 1px solid #eee; }
	#material_menu ul li.material_menu_active:last-child:before { border-bottom: 1px solid #eee; }
	#material_menu ul li.material_menu_active:after { top: 1.5em; }
}


/*-------------
  publication
--------------*/
.publication_flow { width: 100%; font-size: 80%; display: -webkit-box; display: -ms-flexbox; display: flex; margin: 0 0 1.8em; padding: 0; text-align: left; }
.publication_flow li { position: relative; display: block; width: auto; margin: 0; padding: 0; list-style: none; text-align: center; text-overflow: ellipsis; white-space: nowrap; color: #000; font-weight: 700; -ms-flex: 1; -moz-flex: 1; -webkit-box-flex: 1; flex: 1;}
.publication_flow li .bubble { display: block; width: 24px; height: 24px; margin: 0.5em auto; border-radius: 100px; font-size: 14px; background-color: #b7cfc6; color: #fff; padding-top: 3px; font-weight: 700;}
.publication_flow li .bubble::after,
.publication_flow li .bubble::before { position: absolute; top: 60%; display: block; width: 100%; height: 8px; content: ''; border-top: 5px dotted #acacac; margin: 0 17px; z-index: -1; }
.publication_flow li:last-child .bubble::after,
.publication_flow li:last-child .bubble::before { width: 0%; margin-right: 50%; }
.publication_flow li .bubble_active { background-color: #186144; }
@media screen and (min-width: 800px), print {
	.publication_flow { width: 75%; font-size: 100%; margin: 0 auto 50px;}
	.publication_flow li .bubble { width: 26px; height: 26px; font-size: 16px; }
	.publication_flow li .bubble::after,
	.publication_flow li .bubble::before { width: 76%; top: 42px; border-top: 6px dotted #acacac; margin: 0 35px; }
}




input.book_bn_y, input.book_bn_m, input.book_num{ width: 3.3em; height: 2em; padding:0 5px; border: 1px solid #bbb; font-size:1.6rem; text-align:right; }
.orderForm select.select_book { appearance: auto; border: 1px solid #bbb; margin-right: 7px; font-size:1.6rem; }
.orderForm input:hover { opacity: 0.6; -webkit-transition: 0.1s ease-in-out; -moz-transition: 0.1s ease-in-out; -o-transition: 0.1s ease-in-out; transition: 0.1s ease-in-out;}

.book_m_checkbox td input, .book_checkbox td input, .book_checkbox_mult td input{background: #fff; font-size:1.6rem; }


.book_m{margin: 0 0 50px;}
.book_m:after { content: ""; clear: both; display: block;}
.book_m_checkbox { width: 100%; margin: 0 0 1em; display: block; float: left;}
.book_m_checkbox:after { content: ""; clear: both; display: block;}
.book_m_checkbox + input[type="submit"]{ padding: 0.9em 2em .8em; font-size: 2.8vw; color: #fff; background: #FF9D2F; float: right; line-height: 1; border-radius: 5px; font-weight: 700;}
@media screen and (min-width: 800px), print {
	.book_m{ width: 800px; margin: 0 auto 50px;}
	.book_m_checkbox + input[type="submit"]{font-size: 1.4rem; margin: 0 ; }
}


.book_m_checkbox th, .book_m_checkbox td{ padding: 1.5% ; background: #eee; text-align: right; vertical-align: middle;}
.book_m_checkbox th{ line-height: 1; text-align: left; vertical-align: middle; white-space: nowrap;}
.book_m_checkbox th.th01{ padding: .5em; background:#186144; color: #fff; }
.book_m .book_checkbox_price{ width: 55%;}
.book_m .book_checkbox_input{ width: 30%; }
.book_m .book_checkbox_bn{ width: 70%;}
.book_m .book_checkbox_bn > div{ padding: 0 .5em 0 0; float: left;}
.book_m .book_checkbox_bn > div input{ margin: 0 .3em 0 0; font-size:1.6rem;  }
.book_m .bn_border{ border-bottom: 1px solid #999;}
.book_m .book_content{ width: 100%; margin: 0 0 0 3%; float: right;}
.book_m .book_img { width: 100%; margin: 0 0 .7em; padding: 0 ; float: left; text-align: center;}
.book_m .book_img img { width: 35%; height: auto; }
.book_m .book_btn01{ width: 25%; margin: .7em auto 0;}
@media screen and (min-width: 800px), print {
	.book_m_checkbox { width: 550px; }
	.book_m .book_checkbox_price{ width: 390px;}
	.book_m .book_checkbox_input{ width: 140px; }
	.book_m .book_btn01{ width: 200px; margin: .7em auto 0;}
}

.book_checkbox { width: 100%; margin: 0 0 1em ; padding: 3% 3% 0; background: #eee; display: block; float: left;}
.book_checkbox:after { content: ""; clear: both; display: block;}
.book_checkbox:last-of-type { padding: 3% 3%; }
.book_checkbox td { padding: 0; vertical-align: middle; text-align: left; line-height: 1;}
.book_checkbox td span{ font-size: 1.5vw;}
.book_checkbox_price{ width: 66%;}
.book_checkbox_input{ width: 31%; }
.book_checkbox .book_checkbox_input{ padding: 0 .3em 0 0 ; }
.book_checkbox td input, .book_checkbox_mult td input{background: #fff; font-size:1.6rem; }
@media screen and (min-width: 800px), print {
	.book_checkbox td span{ font-size: 1.2rem;}	
}

.book_checkbox_mult { width: 100%; padding: 3% 5% 0; background: #eee; display: block; float: left; }
.book_checkbox_mult:after { content: ""; clear: both; display: block;}
.book_checkbox_mult td { padding: 0 0 5%; vertical-align: middle; text-align: left; line-height: 1;}
.book_checkbox_mult td span{ font-size: 1.5vw;}
.book_checkbox_price { width: 66%;}
.book_checkbox_mult { width: 100%;}
.book_checkbox_mult .book_checkbox_input{ padding: 0 .3em 5% 0 !important; }
@media screen and (min-width: 800px), print {
	.book_checkbox_mult { width: 100%; padding: 15px 20px 0; }
	.book_checkbox_mult td { padding: 0 0 15px; }
	.book_checkbox_mult td span{ font-size: 1.2rem;}
	.book_checkbox_price{ width: 300px;}
	.book_checkbox_input{ width: 130px; }
	.book_checkbox_mult .book_checkbox_input{ padding: 0 .3em 5% 0 !important; }
}

.book{ width: 100%; margin: 0 0 2em; padding: 0 0 2em; float: left; border-bottom: 3px solid #e3e3e3;  }
.book_img { width: 24%; margin: 0 0 .7em; padding: 0 0 0 3%; float: left; text-align: center;}
.book_img img { width: 100%; height: auto; }
.book_btn01{ margin: .7em 0 0;}
.book_btn01 a{ width: 100%; padding: 1.2em 0 .9em; font-size: 2vw; border:1px solid #bbb; border-radius: 5px; color: #000; font-weight: 700; display: inline-block; line-height: 1;}
.book .book_content{ width: 73%; margin: 0 0 0 3%; float: right;}
.book_title{ margin: 0 0 1em; font-size: 3.7vw; text-align: center; font-weight: 700; line-height: 1.3;}
.book_txt{margin: 0 0 1em; text-align: left;}
.book input[type="submit"]{ padding: 0.9em 2em .8em; font-size: 2.8vw; color: #fff; background: #FF9D2F; float: right; line-height: 1; border-radius: 5px; font-weight: 700;}

@media screen and (min-width: 800px), print {
	.book_wrap{ display:-webkit-box; display:-moz-box; display:-ms-flexbox; display:-webkit-flex; display:-moz-flex; display:flex; -webkit-box-lines:multiple; -moz-box-lines:multiple; -webkit-flex-wrap:wrap; -moz-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;}
	.book{ width: 460px; margin: 0 80px 60px 0; }
	.book:nth-of-type(even){ margin: 0 0 60px; }
	.book_title{ font-size: 2rem;}
	.book_txt{ font-size: 1.4rem; line-height: 1.4;}
	.book_m .book_img { max-width: 200px; margin:0 0 1.2em; padding: 0; text-align: center;}
	.book_m .book_img img { width: auto; height: auto; max-width: 200px; max-height: 280px; }
	.book .book_img { width: 460px; margin:0 0 1.2em; padding: 0; text-align: center;}
	.book_img img{ width:200px; height:auto; padding: 0; }
	.book_btn01{ margin: .7em 0 0;}
	.book_btn01 a{ width: 200px; padding: .8em 0 .7em;font-size: 1.3rem; }
	.book_m .book_content{ width: 550px; margin: 0 ; float: right;}
	.book .book_content{ width: 460px; margin: 0; }	
	.book input[type="submit"]{font-size: 1.4rem; }

}

.book_submit {text-align: center;}
.book_submit input { padding: 1.4em 6.5em; color: #fff; background: #186144; border-radius: 10px; font-weight: 700; }
.bn_table{ width: 100%;}
.bn_table th{ padding: .5em .5em .4em; font-weight: 700; background: #ddd; line-height: 1;}
.bn_table td{ padding: .5em .5em .8em;}
.bn_table th{}
.bn_cover {margin: 0 0 20px; text-align: center;}
.bn_cover:after { content: ""; clear: both; display: block;}
.bn_cover img{ width: 100%; height: auto; max-width: 200px; }
.bn_list li{ margin: 0 0 .5em; padding: 0 0 0 1em; text-indent: -1em;}
@media screen and (min-width: 800px), print {
	.bn_r, .bn_l{ width: 490px; float: left;}
	.bn_l{ margin: 0 20px 0 0; }
	.bn_table{ width: 490px;;}
	.bn_table th, .bn_table td{ font-size: 1.4rem;}
	.bn_cover {margin: 0 0 20px; text-align: center;}
}
	
.activities_circle_rc { margin: 0 auto 80px; display: flex; flex-wrap:wrap; }
.activities_circle_rc > div { width: 50%; }
.activities_circle_rc img { width: 100%; height: auto; }
.activities_rc { display: flex; flex-wrap:wrap; justify-content: space-between; }
.activities_rc > div { width: 100%; margin-bottom: 2.8em; }
.activities_rc > div ul li{ margin: 0 0 .7em; padding: 0 0 0 1.4em; font-size: 3vw; position: relative; font-weight: 700;}
.activities_rc > div ul li:before{ width: 1em; height: 1em; content: ""; display: block; background:#186144; border-radius: 60px; position: absolute; left: 0; top: 0.13em;}
.senpai_koe { background: #eff7f1; padding: 2em 1em; }
.senpai_koe h5 { font-size: 3.5vw !important; color: #000!important; padding-left: 6px; border-left: 6px solid #186144; } 
.senpai_koe_box > div.senpai_img { width: 48vw; float: right; margin-left: 10px; margin-bottom: 10px;  }
.senpai_koe > div img { width: 100%; height: auto;}
.env_box { border: 2px dashed #186144; background: #fff; padding: 1.2em 1em 1.4em; }
.env_box > div img { margin: 6px 0 0; }
.env_midashi { font-weight: 700; color: #186144; margin-bottom: 2px; }
@media screen and (min-width: 800px), print {
	.activities_circle_rc { flex-wrap: nowrap; }
	.activities_rc > div { width: 48%; margin-bottom: 1.6em; }
	.activities_img { margin: 0 0 1em; }
	.activities_rc > div ul li{ font-size: 1.4rem; }
	.senpai_koe { padding: 1.6em 2em; }
	.senpai_koe h5 { font-size: 2rem!important; }
	.senpai_koe_box > div.senpai_img { width: auto; margin-left: 20px; }
	.senpai_koe_box > div img { width: 100%; height: auto; }
	.env_box { display: flex; justify-content: space-between; width: 100%; padding: 1.4em 2em 1.6em; }
	.env_box > div { width: 48% }
}



.interview_title_l, .interview_title_r{ width: 55%; }
.interview_title_r{ float: right; }
@media screen and (min-width: 800px), print {
	.interview_title_l, .interview_title_r{ width: 510px; }
}


.rc_interview_img_r { float: right; width: 40%; margin: 0 0 1em 5%; }
.rc_interview_img_r img { width: 100%; height: auto; }
@media screen and (min-width: 800px), print {
	.rc_interview_img_r { width: 237px; margin: 0 0 1em 1em;}
}

.rc_interview_img_l { float: left; width: 40%; margin: 0 5% 1em 0;}
.rc_interview_img_l img { width: 100%; height: auto; }	
@media screen and (min-width: 800px), print {
	.rc_interview_img_l { width: 237px; margin: 0 1em 1em 0;}
}



.interview_midashi { margin: 0 0 4px; padding: 0 0 0 1.1em; color: #004ea2; font-size: 4vw; font-weight: 700; position: relative; }
.interview_midashi:before { content: "◆"; display: block; color: #004ea2; font-size: 3.5vw; font-weight: 700; position: absolute; left: 0; top: 0; }
@media screen and (min-width: 800px), print {
	.interview_midashi { font-size: 1.8rem;}
	.interview_midashi:before  { font-size: 1.6rem;}
}

.interview_title{ margin: 0 0 .2em; font-size: 4.5vw; font-weight: 700; }
@media screen and (min-width: 800px), print {
	.interview_title{ font-size: 2.3rem;}	
}
.interview_profile{ margin: 0 0 1.5em; padding: 0 0 0 1.2em; font-weight: 700; border-bottom: 2px solid #186144; color: #186144; text-indent: -1.2em;}

.interview_h6 { font-size: 3.0vw; margin-bottom: .5em; padding: 0; color: #186144; line-height: 1.2; font-weight: 700;}
@media screen and (min-width: 800px), print {
	.interview_h6 { font-size: 1.5rem}
}
.interview_green { font-size: 3.0vw; margin: .5em 0; padding: 0 0 0 1.2em; color: #186144; line-height: 1.2; font-weight: 700; display: block; text-indent: -1.2em; }
@media screen and (min-width: 800px), print {
	.interview_green { font-size: 1.5rem}
}

.interview_green02 { font-size: 3.3vw; margin-bottom: .5em; padding: 0 ; color: #186144; line-height: 1; font-weight: 700; display: block; }
@media screen and (min-width: 800px), print {
	.interview_green02 { font-size: 1.6rem}
}



.rc_kensyu_box { border: 2px solid #186144; margin: 0 0 2em; padding: 0; background: #186144; border-radius: 16px; overflow: hidden;}
@media screen and (min-width: 800px), print {
	.rc_kensyu_box { width: 49%; margin: 0; }
}

.kensyu_midashi { padding: 0.4em 1em; background: #186144; color: #fff; font-size: 3vw; text-align: center; font-weight: 700;}
.kensyu_text { margin: 0; padding: 1em; background: #fff; }
@media screen and (min-width: 800px), print {
	.kensyu_midashi { font-size: 1.6rem; }
	.kensyu_text {height: 100%;}
}
.h5_border { text-align: center; background: #eee; padding: 3px 0; font-size: 3.6vw!important; }
@media screen and (min-width: 800px), print {
	.h5_border { font-size: 2rem!important; }
}

.rc_happyo { display: flex; width: 100%; }
.rc_happyo > div:first-child { width: 60%; }
.rc_happyo > div:last-child { width: 40%; padding-left: 10px; }
.rc_happyo > div img { width: 100%; height: auto; }
@media screen and (min-width: 800px), print {

	.rc_kensyu { display: flex; align-items: flex-start; justify-content: space-between; width: 100%; }
	.fx_stretch { align-items: stretch!important; }
	.rc_happyo > div:first-child { width: 62%; }
	.rc_happyo > div:last-child { width: 38%; padding-left: 27px; }
}	




.recruit_dl:after { content: ""; clear: both; display: block;}
.recruit_dl dt, .recruit_dl dd{width: 100%; font-size:3.5vw;}
.recruit_dl dt { margin: 0 0 .5em; padding: .3em .4em .2em 1.9em; color: #fff; background: #186144; line-height: 1.2; text-indent: -1.5em;}
.recruit_dl dd { margin: 0 0 1em;}
@media screen and (min-width: 800px), print {
	.recruit_dl { width: 770px; background: #186144; border-bottom: 1px solid #186144;}
	.recruit_dl dt, .recruit_dl dd{ font-size: 1.6rem; }
	.recruit_dl dt { width: 250px; margin: 0; padding: 1em 1em 1em 2.5em; border-top: 1px solid #fff; float: left; }
	.recruit_dl dd { width: 519px; margin: 0 0 0 250px; padding: 1em; background: #fff; border-top: 1px solid #186144;}
	.recruit_dl dd:after { content: ""; clear: both; display: block;}
}


.recruit_dl_data_parsonal{display: flex; justify-content: space-between; flex-wrap: wrap; gap:10px;}
.recruit_dl_data_parsonal li{width:100%; height:auto; margin-bottom:6px;}
.recruit_dl_data_parsonal li.one_thirds{width:calc((100% - 20px) / 2);  height:auto;}
.recruit_dl_data_parsonal li img{width: 100%; height:auto;}
@media screen and (min-width: 800px), print {
	.recruit_dl_data_parsonal li.one_thirds{width:calc((100% - 30px) / 3);  height:auto;}
	.recruit_dl_data_parsonal li.two_thirds{width:66%;  height:auto;}
}

.recruit_dl_data{display: flex; justify-content: space-between; flex-wrap: wrap; gap:20px;}
.recruit_dl_data li{width:calc((100% - 20px)/ 2); height:auto;}
.recruit_dl_data li img{width: 100%; height:auto;}
@media screen and (min-width: 800px), print {.recruit_dl_data li{width:calc((100% - 40px) / 3); }}

.faq-check{ display: none; }
.faq-label{ border: 1px solid #136cbf; display: block; margin-bottom: 1px; padding: 10px; position: relative; }
.faq-label:after{ background: #136cbf;color: white; content: '\f067'; display: block; font-family: "Font Awesome 5 Free";font-weight: 900;padding: 10px 17px;
 position: absolute; right: 0; top: 0px; }
.faq-content1, .faq-content2  { background: #f3f3f3; display: block; height: 0; opacity: 0; padding: 0 10px; transition: .5s; visibility: hidden; }
.faq-check:checked + .faq-label:after{ content: '\f068'; }
.faq-check:checked + .faq-label + .faq-content1 { height: 14vw; opacity: 1; padding: 10px; visibility: visible; }
.faq-check:checked + .faq-label + .faq-content2 { height: 18vw; opacity: 1; padding: 10px; visibility: visible; }
@media screen and (min-width: 800px), print {
	.faq-check:checked + .faq-label + .faq-content1 { height: 43px; }
	.faq-check:checked + .faq-label + .faq-content2 { height: 66px; }
}
	
.shikin_table th{text-align:left;}
.shikin_table td.td_link{padding:0;}
.shikin_table td.td_link a{ display: block; padding: .5em; }
.shikin_table td.td_link a:hover{ background-color: #eaec683d; opacity:.8; }
.dangumi-wrap{display:flex; flex-direction: column;}
.shikin_dangumi02 table,.shikin_dangumi02 td{border-top:none;}
.shikin_dangumi02 .sp-none{	display:none;}
#setsys{margin-top: -190px; padding-top: 190px;}
@media screen and (min-width: 800px), print {
.dangumi-wrap{display:flex; flex-direction: row;}
.shikin_dangumi02 table,.shikin_dangumi02 td{border-left:none; border-top:1px solid #186144;}
.shikin_dangumi02 .sp-none{display:block; border-top:none;}
}

.organization_bg { padding: 20px; text-align: center; width: 100%; margin: 0 auto; border-radius: 12px; border: 2px solid #186144;}
.organization_date{margin-right:0px;}
@media screen and (min-width: 800px), print {
	.organization_bg{width:900px; padding: 40px; }
	.organization_date{margin-right:40px;}
	}

.contact_dl{ margin: 0 0 1em; background:#186144; }
.contact_dl:after { content: ""; clear: both; display: block;}
.contact_dl dt, .contact_dl dd{ font-size: 3.2vw }
.contact_dl dt{ color: #fff; padding: .8em 1em; line-height: 1;}
.contact_dl dd{ padding: 0.7em 0 1.7em; background: #fff; min-height: 50px;}
.contact_dl dd input[type="text"], .contact_dl dd input[type="email"]{ width: 100%; font-size:1.6rem; padding: .5em 1em ; border: 1px solid #186144;}
.contact_dl dd textarea{ width: 100%; padding: .5em 1em ; border: 1px solid #186144; resize: none; font-size:1.6rem;}
@media screen and (min-width: 800px), print {
	.contact_form{width: 800px; margin: 0 auto; }
	.contact_dl { width: 800px; margin: 0 auto 2em; border-right: 1px solid #186144; border-bottom: 1px solid #186144; }
	.contact_dl dt, .contact_dl dd{ padding: 15px; font-size: 1.6rem; display: block; }
	.contact_dl dt{width: 240px; float: left; border-top: 1px solid #fff;}
	.contact_dl dd{width: 559px; margin: 0 0 0 240px; border-top: 1px solid #186144;}
	.contact_dl dd:after{ display: block; content: ""; clear: both;} 	
	.contact_dl dd input[type="text"], .contact_dl dd input[type="email"]{ width: 500px; }
	.contact_dl dd textarea{ width: 525px}
}

.contact_cat{ width: 180px; margin: 0 0 1em; float: left; position: relative;}
.contact_cat:after { content: ""; clear: both; display: block;}
.contact_cat select { width: 180px; margin: 0; padding: .8em; font-weight: 700; line-height: 1; border: 1px solid #186144; float: left; appearance:none; display: block;}
.contact_cat select { position: relative; }
.contact_cat:before{ width: 0; height: 0; border-style: solid; border-width: 12px 7px 0 7px; border-color: #186144 transparent transparent transparent; color: #000; display: block; position: absolute; right: .7em; top:1em; content: "";}

#contact_kakunin { margin: 0 0 1em;}
#contact_kakunin input{ display: none;}
#contact_kakunin input + span{ width: 180px; font-weight: 700; font-size: 3.0vw; padding: 1.2em .8em 1.0em 2.4em; border-radius: 4px; border: 1px solid #186144; color: #000; line-height: 1; position: relative; display: inline-block;}
#contact_kakunin input + span:before{width: 1em; height: 1em; display: block; content: ""; border: 1px solid #333; position:  absolute; top: 1.2em; left: .8em;}
#contact_kakunin input:checked + span:after { content: "";  width: 10px; height: 18px; border-right: 4px solid #186144; border-bottom: 4px solid #186144; transform: rotate(45deg); position: absolute; top: 0.7em; left: 1.2em;}
@media screen and (min-width: 800px), print {
	#contact_kakunin input + span { font-size: 1.8rem; }
	#contact_kakunin input:checked + span:after { top: 0.8em; left: 1.2em;}
}


/*-------------
  #confirm_btn
--------------*/
#confirm_btn_contact{margin: 0 0 3em;}
#confirm_btn{  width: 250px; margin: 0 auto 3em;}
#confirm_btn:after { content: ""; clear: both; display: block;}
#confirm_btn form{ width: 110px; margin: 0 auto 2em;}
#confirm_btn form:first-of-type{float: left;}
#confirm_btn form:last-of-type{float: right;}
#contact_submit input, #contact_submit_r input{ width: 110px; padding: 1.3em 0; line-height: 1; font-weight: 700; border-radius: 4px; text-align: center; font-size: 2.8vw;}
#contact_submit input{ background: #ddd; color: #000; float: left  }
#contact_submit_r input{ background: #186144; color: #fff; float: right;}
#contact_submit input:hover{opacity: 0.6; -webkit-transition: 0.1s ease-in-out; -moz-transition: 0.1s ease-in-out; -o-transition: 0.1s ease-in-out; transition: 0.1s ease-in-out;}
#contact_submit_r input:hover{opacity: 0.6; -webkit-transition: 0.1s ease-in-out; -moz-transition: 0.1s ease-in-out; -o-transition: 0.1s ease-in-out; transition: 0.1s ease-in-out;}
#confirm_btn_contact input{ width: 90%; margin: 0 auto; padding: 1.5em 0; text-align: center; background: #186144; display: block; color: #fff; line-height: 1; font-weight: 700; border-radius: 6px; font-size: 3.8vw;  }
#confirm_btn_contact input:hover{opacity: 0.6; -webkit-transition: 0.1s ease-in-out; -moz-transition: 0.1s ease-in-out; -o-transition: 0.1s ease-in-out; transition: 0.1s ease-in-out;}
@media screen and (min-width: 800px), print {
	#confirm_btn{width:380px; margin: 0 auto 40px !important;}
	#contact_submit, #contact_submit_r {padding: 0 !important;}
	#confirm_btn_contact input, #contact_submit input, #contact_submit_r input{ width: 170px; padding: 1.2em 0; line-height: 1; font-size: 1.6rem;}	
	#confirm_btn form{width: 170px; margin: 0;}
	#confirm_btn #contact_submit input{ float: left;}
	#confirm_btn #contact_submit_r input{ float: right;}		
}



footer { margin: 120px 0 0; padding: 0 0 40px; color: #fff; background: #136cbf;}
footer > div:after { content: ""; clear: both; display: block;}
@media screen and (min-width: 800px), print {
	footer{ margin: 150px 0 0; padding: 0 0 40px }
	footer > div:after { content: ""; clear: both; display: block;}
	footer > div { width: 1000px; margin: 50px auto 0; padding: 0;}
}
.footer_bnr{  background: #ffff; width: 100%; margin: 0; padding: 0 5% 20px; }
.footer_bnr:after { content: ""; clear: both; display: block;}
.footer_bnr > ul:after { content: ""; clear: both; display: block;}
.footer_bnr li {width: 49%; margin: 0  2% 1em 0; float: left; display: block;}
.footer_bnr li:nth-of-type(even) { margin: 0 0 1em; }
.footer_bnr li img{ width: 100%; height: auto;}
@media screen and (min-width: 800px), print {
	.footer_bnr{ width: 100%; margin: 0; padding: 0 0 30px;}
	.footer_bnr > ul{ width: 1000px; margin: 0 auto ;}
	.footer_bnr li {width: 240px; }
	.footer_bnr li, .footer_bnr li:nth-of-type(even) { margin: 0 10px 1em 0; }
}


.footer_link01{margin: 50px 0 0;}
.footer_link01:after { content: ""; clear: both; display: block;}
.footer_link01 h2{ margin: 0 0 1em; font-weight: 700; font-size: 4.2vw;}
.footer_link01 > div {width: 96%; margin: 0 5% 3em;}
.footer_link01 > div:after { content: ""; clear: both; display: block;}
.footer_link01 ul{width: 50%; float: left;}
.footer_link01 ul:after { content: ""; clear: both; display: block;}
.footer_link01 li {width: 100%; margin: 0 0 1em; padding: 0 1.5em 0 0; float:left; line-height: 1.1;}
.footer_link01 li a { font-size:3.5vw; }
@media screen and (min-width: 800px), print {
	.footer_link01{ margin: 0; float: left;}
	.footer_link01 > div { margin: 0 ; float: left;}
	.footer_link01 > div:first-of-type{width: 400px; margin: 0 50px 0 0 }
	.footer_link01 > div:nth-of-type(2){width: 550px; }
	.footer_link01 h2{font-size: 1.8rem;}
	.footer_link01 ul{width: 50%; float: left;}
	.footer_link01 li {width: 100%; margin: 0 0 1.5em; padding: 0 3em 0 0; }
	.footer_link01 li:nth-child(even) { padding: 0;}
	.footer_link01 li a { font-size:1.6rem; }	
}


.footer_link02{margin: 50px 0 30px;}
.footer_link02:after { content: ""; clear: both; display: block;}
.footer_link02 li {width: 45%; margin: 0 0 1em 5%; float: left; display: block;}
.footer_link02 li .column2{margin-left: 5px;}
.footer_link02 li a { font-size: 3.5vw; font-weight: 700; }
@media screen and (min-width: 800px), print {
	.footer_link02{margin: 0 0 60px;}
	.footer_link02 li {width: auto; margin: 0 1.5em 0 0;}
	.footer_link02 li .column2{margin: 0 1.5em 0 0;}
	.footer_link02 li a { font-size: 1.5rem; }	
}

#copyright{text-align: center; font-size: 2.5vw;}
@media screen and (min-width: 800px), print {
	#copyright{ font-size: 1.4rem;}
}

/*-------------
   buisiness
--------------*/
.goal_table a {text-decoration: underline;}
.goal_table th:first-of-type {width: 183px;}
.goal_table th:last-of-type {width: 586px;}
.goal_table tr td:first-of-type { width: 110px; }
.arrow:before {font-family: "Font Awesome 5 Free"; margin: 0 7px 0 5px; font-weight: 900; content: '\f0da'; color: #186144; font-size: 15px;}
@media screen and (min-width: 800px), print {
	.goal_table tr td:first-of-type { width: 196px; }
	.goal_table tr td:last-of-type { width: 574px; }
}

/*-------------
   members
--------------*/
.members {display: flex; align-items: flex-start; width: 100%; padding-top: 1rem;flex-direction: column;}
.members_bar {display: flex;align-items: flex-start; flex-wrap:wrap; width:100%;}
.members_midashi{width: 15%; text-align: center;}
.members_midashi h2{font-size: 2.8rem; font-weight: 700; color:#186144;}
.members_contents{width: 85%; margin-bottom: 3rem; padding-left: 1.2rem;}
.members_contents ul li a{text-decoration: underline; font-size: 14px;}
.members_contents ul li:before{font-family: "Font Awesome 5 Free"; margin: 0 7px 0 5px; font-weight: 900; content: '\f105'; color: #186144; font-size: 13px;}
.members_latest{width: 100%; margin: 0rem 1rem 0 0;}


@media screen and (min-width: 800px), print {
	.members {flex-direction: row;}
	.members_bar {width:50%;}
	.members_midashi h2{font-size: 3.4rem;}
	.members_contents{padding-left: 2rem;}
	.members_contents ul li a{font-size: 16px;}	
	.members_contents ul li:before{font-size: 13px;}
	.members_latest{margin: 3rem 3rem 0 0;}
}



.sitemap_h3{ margin: 0 0 .6em !important ; padding: 0 0 0 .5em !important; background: none !important; color:#186144 !important; border-left: 5px solid #186144; font-size: 3.0vw !important;}
@media screen and (min-width: 800px), print {
	.sitemap_h3{ margin: 0 0 .6em !important ; padding: 0 0 0 .5em !important; font-size: 1.6rem !important;}
	.sitemap_cont{ width: 420px; margin: 0 50px 0 0; float: left; }

}
.sitemap_style01{margin: 0 0 1.2em;}
.sitemap_style01:after { content: ""; clear: both; display: block;} 
.sitemap_style01 li a{ width: 50%; margin: 0; padding: 1.2em .6em; float: left; color: #fff; text-align: center; border: 1px solid #fff; font-weight: 700; line-height: 1; }
.sitemap_style01 li.grow a{ background: #57b75b; }
.sitemap_style01 li.support a{ background: #0e8114; }
.sitemap_style01 li.defend a{ background: #269df0; }
.sitemap_style01 li.broaden a{ background: #124dae; }
@media screen and (min-width: 800px), print {
	.sitemap_style01{margin: 0 0 50px;}
	.sitemap_style01 li a{width: 220px; margin: 0 8px 0 0; padding: 1.4em .6em;	}
}

.sitemap_style02{margin: 0 0 1em;}
.sitemap_style02:after { content: ""; clear: both; display: block;} 
.sitemap_style02 li a{ width: 100%; padding: .5em 1.5em .5em .5em; float: left; background: #186144; color: #fff; border: 1px solid #fff; position: relative;}
.sitemap_style02 li a:before{ width: 1em; height: 1em; display: block; content: ""; position: absolute; right: 1em; top: .7em; background-size: cover !important; background:url("../images/arrow01.png") no-repeat; }
.sitemap_style03 li{ margin: 0 0 0.3em; padding: 0 0 0 1.0em;}
.sitemap_style03 li a{ padding: 0 0 0 1.0em; position: relative; display: inline-block}
.sitemap_style03 li a:before{width: .55em; height: .55em; display: block; content: ""; position: absolute; left: 0; top: .3em; background-size: cover !important; background:url("../images/arrow02.png") no-repeat; }


/*-------------
  kouhyoujikou
--------------*/
.kouhyoujikou_title{font-size:2rem;}
.kouhyou_contents{margin-bottom: 3em;}
.kouhyou_contents h4{ text-indent: -1em; padding-left: 1em;}
.kouhyou_contents h5{font-size: 3.5vw !important; margin-bottom: 16px !important; text-indent: -2.5em; margin-left: 2em !important;}
.kouhyou_list {margin-bottom: 2em;}
.kouhyou_list li{margin-left: 1.6em; margin-bottom: 0.4em; position:relative;}
.kouhyou_list li span{position:absolute; left:-1.6em;}
@media screen and (min-width: 800px), print {
	.kouhyoujikou_title{font-size:2.6rem;}
	.kouhyou_contents h5{font-size:2rem !important;}
}


/*-------------
  information
--------------*/
#information_menu{margin: 0 0 30px;}
#information_menu:after { content: ""; clear: both; display: block;}
#information_menu ul li a{ width: 33%; padding: 1.2em 1em 1em; font-size: 3.5vw; position: relative; border-bottom: 2px solid #fff;  border-right: 2px solid #fff; background: #eee; color: #186144; display: block; float: left; font-weight: 700; line-height: 1; }
#information_menu ul li a:after{width: 0; height: 0; position: absolute; right: 0.9em; top: 1.1em; border-style: solid; border-width: 5px 0 5px 10px; border-color: transparent transparent transparent #186144; display: block; content: "";}
#information_menu ul li.info_menu_active { width: 33%; padding: 1.2em 1em 1em; font-size: 3.5vw; position: relative; border-bottom: 2px solid #fff;  border-right: 2px solid #fff; background: #fff; color: #186144; display: block; float: left; font-weight: 700; line-height: 1; }
#information_menu ul li.info_menu_active:before { width: 100%; padding: 1.5em 1em 1.6em; position: absolute; right: 0; top: 0; border: 1px solid #eee;  content: ""; }
#information_menu ul li.info_menu_active:after { width: 0; height: 0; position: absolute; right: 0.9em; top: 1.1em; border-style: solid; border-width: 5px 0 5px 10px; border-color: transparent transparent transparent #186144;  display: block; content: ""; }
#information_wrap{ margin-bottom: 4rem; line-height: 1.6;}
#information_wrap:after { content: ""; clear: both; display: block;}
#information_wrap a{ text-decoration: underline;}
#information_wrap dl{margin: 0 0 1em;}
#information_wrap dl:after { content: ""; clear: both; display: block;}
#information_wrap dt, #information_wrap dd{width: 100%;}
#information_wrap dt{float:left;}
#information_wrap dd{ line-height: 1.4}
.info_title{ margin: 0 0 .5em; padding: 0 0 .45em; font-size: 4vw; line-height: 1.2; font-weight: 700; border-bottom: 4px solid #A8A8A8;}
.info_title_date{ margin: 0 0 1.5em; line-height: 1;}
@media screen and (min-width: 800px), print {
	#information {display: flex; flex-direction:row;}
	#information_menu{ width: 23%; margin: 0;}
	#information_menu ul li a{ width: 200px; padding: 18px 18px 18px 38px; font-size: 1.5rem;}
	#information_menu ul li a:after{display: none;}		
	#information_menu ul li a:before{width: 0; height: 0; position: absolute; left: 0.9em; top: 1.5em; border-style: solid; border-width: 5px 0 5px 10px; border-color: transparent transparent transparent #186144; display: block; content: ""; transform: scale(-1, 1);}
	#information_menu ul li.info_menu_active {width: 200px; padding: 18px 18px 18px 38px;; font-size: 1.5rem; }
	#information_menu ul li.info_menu_active:before { width: 198px; height: 52px; position: absolute; right: 0; top: 0; border-top: 0px; border-bottom: 0px; border-left: 1px solid #eee; border-right: 1px solid #eee;  content: ""; }
	#information_menu ul li.info_menu_active:first-child:before { border-top: 1px solid #eee; }
	#information_menu ul li.info_menu_active:last-child:before { border-bottom: 1px solid #eee; }
	#information_menu ul li.info_menu_active:after {width: 0; height: 0; position: absolute; left: 0.9em; top: 1.5em; border-style: solid; border-width: 5px 0 5px 10px; border-color: transparent transparent transparent #186144; display: block; content: ""; transform: scale(-1, 1);}
	#information_wrap{ width: 70%; margin: 0 7% 0 0;}
	#information_wrap dl{margin: 0 0 1em;}
	#information_wrap dt{ width: 100px; margin: 0}
	#information_wrap dd{ width: 600px; margin: 0 0 0 100px;}
	.info_title{ margin: 0 0 .5em; padding: 0 0 .25em; font-size: 2.2rem; line-height: 1.3; }
	.info_title_date{ margin: 0 0 3em; font-size: 1.4rem;}

}



/*-------------
  page-numbers
--------------*/
ul.page-numbers{ width: 100%;}
.page-numbers:after { content: ""; clear: both; display: block;}
.page-numbers li{ float: left; line-height: 1;}
.page-numbers li a.prev, .page-numbers li a.next { width: 5em !important;}
.page-numbers li a.page-numbers{ width: 3em; margin: 0 .2em; padding: .8em 0; vertical-align: middle; text-align: center; border: 1px solid #186144; background: #186144; color: #fff; display: block;}
.page-numbers li .current{ width: 3em; margin: 0 .2em; padding: .8em 0; vertical-align: middle; text-align: center; border: 1px solid #186144; color: #186144; display: block; font-weight: 700;}
.page-numbers li .dots{ width: 1em; margin: 0 .2em; padding: .8em 0; vertical-align: middle; text-align: center;  display: block;}
@media screen and (min-width: 800px), print {
	ul.page-numbers{ width: 600px; margin: 0 auto;}
	.page-numbers li a.prev, .page-numbers li a.next { width: 6em !important; }
	.page-numbers li a.prev { margin: 0 2.6em 0 0;}
	.page-numbers li a.next { margin: 0 0 0 2.6em;}
}

/*-------------
  err
--------------*/
#err{ margin: 0 0 2em; padding: 1.2em; background:#F9D5D6}
#err p{ margin: 0 0 .5em;}
#err p:last-of-type{ margin: 0;}
@media screen and (min-width: 800px), print {	
	#err{ width: 700px; margin: 0 auto 3em; }
}








