@charset "utf-8";

/* ---------- common ----------*/
body {
	font-size:100%;
	font-family: 'Noto Sans JP', -apple-system,  "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
		-webkit-text-size-adjust: 100%;
		-webkit-appearance: none;	/*button*/
	font-weight:300;
	color:#111111;
	margin:0;
}

header, footer { position:relative;	margin:0;padding:0;}
header a, footer a { text-decoration:none; }

#pagecontents { clear:both; }

div { box-sizing:border-box; }
img { display:block; max-width: 100%; height: auto; margin:0 auto; }
img.pdficon, img.inline { display:inline; }
.nsbr { white-space:nowrap; }
.urlstr { word-break:break-all !important;word-wrap:break-word;overflow-wrap:break-word; }
.clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
.page_content.fserif { font-weight:normal; }
.fserif, h1.pagetitle, h2.sectiontitle, p.pagetitle { font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif; font-weight:600; }
h1.pagetitle, p.pagetitle { font-weight:900; }
.fsanserif { font-family: 'Noto Sans JP', -apple-system,  "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif; font-weight:900; }
strong { font-weight:500; }
.fserif strong { font-weight:600; }

hr {
	border: 0;
	height: 0;
	border-top: 1px solid rgba(0, 0, 0, 0.1);
	border-bottom: 1px solid rgba(255, 255, 255, 0.3);
	clear:both;
}

a.after_arrow:after {
	font-family: 'FontAwesome';
/*	content:' \f105';		/* > */
	content:'\20\f0da';		/* ▲ */
	font-size:1.2em;
}
a.before_arrow:before {
	font-family: 'FontAwesome';
/*	content:' \f105';		/* > */
	content:'\f0da\20';		/* ▲ */
	font-size:1.2em;
}
.pg_next:after {
	font-family: 'FontAwesome';
	content:'\20\f105';
	font-size:1.2em;
}
.pg_prev:before {
	font-family: 'FontAwesome';
	content:'\f104\20';
	font-size:1.2em;
}

.pageTop { position:relative; z-index:200; }
.pageTop a {
	position: fixed;
	background:url('../../images/20/common/20/pagetop_bt.png') left top no-repeat;
	background-size:contain;
	display: block;
	width: 60px;
	height: 60px;
	right:10px;
	bottom:10px;
	text-indent:-9999px;
	opacity:0.7;
}
.pageTop a:hover { opacity:1.0; }


/* ---------- rwd ----------*/
#pages {
	max-width:100%;
	min-width:320px;
	margin:0 auto;
	background-color:#fff;
}
header, footer {
	width:100%;
	margin:0 auto;
}
header { }
footer { margin-top:60px; }

.mode_pc { display:block; }
.mode_pcs { display:block; }
.mode_sp { display:none !important;visibility:hidden; }
.mode_sps { display:none !important;visibility:hidden; }
.view_pc { visibility:visible; display:inline; }
.view_sp { visibility:hidden; display:none; }


#pagecontents {}
.row_contents { max-width:1200px; margin:0 auto; padding:0 10px; }
.row_contents p, .row_contents table, .row_contents ol, .row_contents ul { line-height:1.8; margin-top:0; margin-bottom:1.5em; }
.narrow_text { max-width:80%; margin:0 auto; }


.page_backbt { margin:80px 10px 40px 10px; }
.page_backbt a {
	display:block;
	width:200px;
	margin:0 auto;
	padding:12px 0;
	text-align: center;
	font-size:1.0rem;
	text-decoration:none;
	background-color:#C9CACA;
	border:1px #c9caca solid;
	border-radius:4px;
	color:#000;
}
.page_backbt a:hover { background-color:#666666; color:#fff; transition-duration:0.2s; }
.form_submit { margin:40px; text-align:center; }
.form_submit [type=submit] { padding:12px 36px; font-size:1.0rem; cursor:pointer; }


.inc_contact_pr { width:75%; max-width:540px; min-width:300px; margin:60px auto; }
.cont_tit { background-color:#CCE1D0; font-size:110%; text-align:center; font-weight:500; padding:6px 0; line-height:1 !important; margin:0 !important; }
.cont_p { padding-left:4em; text-indent:-4em; margin:0 !important; color:#CC0033; }
.cont_p span { color:#000; }
.cont_p span.dt { display:inline-block; width:4em; text-align:right; }
.cont_form { text-align:center; margin:16px !important;  }


/* ----- common ----- */
h1.pagetitle, p.pagetitle { margin:0; text-align:center;font-size:2.0rem; line-height:1.3; letter-spacing:0.2rem; color:#004500; padding:48px 0; background-image:linear-gradient(to bottom, rgba(248,243,213,1) 0,rgba(248,243,213,0) 100%) }
h1.pagetitle small { font-size:65%; display:block; padding-bottom:10px; color:#708B63; }
h1.page2title { text-align:center;margin:20px 0; padding:0; font-size:1.8rem; color:#004500; }
h2.sectiontitle { padding:0; text-align:center; margin:60px 0 20px 0; font-size:1.6rem; color:#266126; }
h1.pagetitle+h2.sectiontitle { margin-top:0; }


.page_content { margin:0 auto; }


.float_img_rs { display:inline; float:right; padding:0 0 20px 20px; }
.float_img_ls { display:inline; float:left;  padding:0 20px 20px 0; }

a.txt_banner {
	display:inline-block;
	padding:5px 30px 5px 20px;
	background:url('../../images/20/common/txt_arrow_w.png') right center no-repeat #004500;
	color:#ffffff;
	text-decoration:none;
	border-radius:4px;
		transition-duration:0.2s;
}
a.txt_banner:hover {
	background:url('../../images/20/common/txt_arrow_w.png') right center no-repeat #FB8A1E;
}


.view_tags { margin:20px 0; font-size:0.8rem; text-align:right; }
.view_tags a {
	display:inline-block; padding:3px 7px; margin-right:6px; line-height:1;
	background-color:#EEF1ED; border-radius:6px; text-decoration:none;color:#000;
	white-space:nowrap;
/*	box-shadow:1px 1px 2px rgba(0,0,0,0.5);*/
	border:1px #ccc solid;
}
.view_tags a:before {
	font-family: 'FontAwesome';
	content:'\f02b\20';
}

.rel_link { width:640px; margin:60px auto 30px auto; display:flex; justify-content:space-between; flex-wrap:wrap; }
.rel_link div { flex:0 0 47%; border:1px #ccc solid; margin-bottom:30px }
.rel_link div:hover { background-color: #efefef; }
.rel_link div a { display:block; text-decoration:none; color:#111; }
.rel_link div a img { width:100%; height:auto; opacity:0.8; }
.rel_link div:hover a img { opacity:1.0; }
.rel_link div a span { display:block; text-align:center; padding:8px 4px; }



/* ========== rwd table (fix) ========== */
.rwd_table, .rwd_table_fix { width:100%; margin-top:20px; border-collapse:collapse; }
.rwd_table caption, .rwd_table_fix caption { font-size:1.1rem; color:#003399; }
.rwd_table th, .rwd_table td, .rwd_table_fix th, .rwd_table_fix td { padding:8px 6px; border:1px #ccc solid; line-height:1.6; vertical-align:top; font-weight:300; }
.rwd_table th, .rwd_table_fix th { background-color:#f8f8f8; text-align:left; font-weight:300; }
.rwd_table td, .rwd_table_fix td { background-color:#fff; text-align:left; }

/* ========== dl list ========== */
dl.dl_table { margin:0 0 40px 0;}
dl.dl_table dt { padding:4px 6px; background-color:#EEEEEE; line-height:1.8; box-sizing:border-box; margin:0; }
dl.dl_table dd { padding:4px 6px 16px 40px; line-height:1.8; box-sizing:border-box; margin:0; }

/* ========== ul / ol ========== */
.std_ul, .std_ol { margin:0; padding-left:30px; text-indent:0; }
.std_ul li, .std_ol li { line-height:1.6; margin-bottom:0.5em; }
.std_ol li { padding-left:0.5em; }

/* ========== newsl list ========== */
ul.news_list { margin:0; padding:0; list-style:none; }
ul.news_list li { border-bottom:1px #111 solid; }
ul.news_list li>a, ul.news_list li>span { display:flex; padding:12px 0px; text-decoration:none; color:#000; box-sizing:border-box; }
ul.news_list li a:hover { background-color:#EFE2B1; }
ul.news_list li span.news_date { flex:0 0 10em; line-height:1.6; padding-left:30px; }
ul.news_list li span.news_title { flex:1 1 30em; line-height:1.6;  padding-right:30px; }

.pagenation { margin:40px 20px 20px 20px; display:flex; justify-content:center; font-size:0.9rem; }
.pagenation .pgn_prev { flex:0 1 30%; text-align:right; }
.pagenation .pgn_link { flex:1 0 30%; text-align:center; }
.pagenation .pgn_next { flex:0 1 30%; text-align:left; }
.pagenation .pgn_prev a, .pagenation .pgn_next a { text-decoration:none; }
.pagenation .pgn_prev a:hover, .pagenation .pgn_next a:hover { text-decoration:underline; }
.pgn_link a, .pgn_link .pgn_this {
	text-decoration: none;
	width:28px;height:28px;
	line-height:28px;
	display:inline-block;
	margin:0 5px; padding:0;
}
.pgn_link a { color: #000; padding:0; background-color:#ddd; border-radius:60px; }
.pgn_link a:hover { background-color:#cc0 }
.pgn_link .pgn_this { color: #fff; background-color:#c00; border-radius:6px; }
.pagenation .pgn_prev .pgn_dis, .pagenation .pgn_next .pgn_dis { color:#ddd; }

/* ----- */
.w_img_txt_area { width:62%; float:right; }
.news_mainimg_area { width:35%; float:left; }
.news_view_date {
	font-size:1rem;
	display: block;
	text-align:left;
	padding:0 0 4px 0;
	margin:0 !important;
	line-height:1.3 !important;
}
.news_view_title {
	background-color:#e8e8e8;
	padding:8px;
	margin-bottom:24px !important;
	text-align:center;
	font-size:1.2rem;
	line-height:1.2em;
	font-weight:500;
	color:#333333;
}
.news_add_img { padding:10px 0; margin:0; text-align:center; }
.news_txt_area { font-size:1.0rem; line-height:1.8; }
.news_view_footer { padding:80px 0 20px 0; text-align:center; }
.file_down { padding: 40px 0 40px 40px; text-align: left; }
.news_cate1 { background:url('../../images/20/news_cate.png') 9em 4px no-repeat; }
.news_cate2 { background:url('../../images/20/news_cate.png') 9em -83px no-repeat; }
.news_cate3 { background:url('../../images/20/news_cate.png') 9em -170px no-repeat; }

.ymd_ip { padding:0 6px; background-color:#DD223E; color:#ffffff; border-radius:4px; }
.kanripreview { text-align:center; color:red; margin-bottom:20px; }





/* ========== header ========== */
header { width:100%; background-color:#006428; }
#header {}

.header_logo { padding:10px; display:inline-block; }

#site_navi { background-color:#335719; padding:16px 0;  }
.site_menu { display:flex; justify-content:center; margin:0; padding:0; list-style:none; text-align:center; }
.site_menu li { margin:0; font-size:0.95rem; }
.site_menu li a, .site_menu li span { display:block;padding:4px 7px; color:#fff; text-decoration:none; border-right:1px #fff solid; white-space:nowrap; }
.site_menu li a:hover, .site_menu li span:hover { background-color:#006428; transition-duration:0.2s; }
.site_menu li:last-child a { border-right:none; }

.site_menu li ul { display:none; }
.site_menu li:hover ul {
	display:block;
	z-index:160;
	width:200px;
	position: absolute;
	padding:0;
	background-color:#328132;
	list-style:none;
	box-sizing:border-box;
	transition-duration:0.2s;
}
.site_menu li:hover ul li a { padding:8px; border-right:none; text-align:left; border-top:1px #fff solid; display:block; white-space:normal; font-size:0.9rem; }
.site_menu li:hover ul li:last-child a { border-bottom:1px #fff solid; }

.preload_hidden { display:none; }

.global_navi { position:absolute; top:20px; right:20px; }
.global_navi ul { margin:0; padding:0; list-style:none; }
.global_navi ul li { display:inline; }
.global_navi ul li a { text-decoration:none; color:#fff; }
.global_navi ul li a:hover { text-decoration:underline; }

/* subset */
@media only screen and (max-width: 1050px) {
	.site_menu li { font-size:0.87rem; }
}

/* ========== footer ========== */
#footer { padding:30px 10px;background-color:#666666; }
.footer_content, .footer_notice { max-width:1200px; margin:0 auto; }
.footer_contact, .footer_addr { width:30%; float:right; padding-bottom:40px; }
.footer_contact a { display:block; padding:10px 0;text-align:center; background-color:#fff; text-decoration:none;color:#000; font-size:1.1rem;}
.footer_contact a:hover { background-color:#fff; color:#5A516C; }
.footer_addr p { font-size:1.0rem; color:#fff; line-height:1.8; text-align:center; margin:6px 0 24px 0 }
.footer_addr p a { text-decoration:none;color:#fff; }

.footer_menulist { width:50%; margin-right:20%; float:left; padding:10px; }
.footer_menulist .menucols { width:50%; float:left; }
.menucols ul { margin:0;padding:0 0 20px 0;list-style:none; }
.menucols ul li a, .menucols ul li span { display:block; text-decoration:none; color:#fff; padding:6px 0; font-size:1.0rem; }
.menucols ul li a:hover { text-decoration:underline; }
.menucols ul li ul { margin:0;padding:0 0 20px 20px; }
.menucols ul li ul li { list-style:square; color:#fff; }
.menucols ul.ft_menu_site li ul { padding:0 0 0 24px; }

.footer_sns { display:flex; justify-content:center; }
.footer_sns div { padding:10px; }
.footer_sns div img { max-height:40px; }

.ft_plink { float:left; }
.ft_plink a { text-decoration:none; padding:2px 10px; border-right:1px #fff solid; color:#fff; font-size:0.9rem; }
.ft_plink a:hover { text-decoration:underline; }
.ft_plink a:last-child { border-right:none; }
.ft_copy { float:right; font-size:0.8rem; color:#fff; margin-right:70px; }

.pageTop { position:relative; z-index:200; display:none; }
.pageTop a {
	position: fixed;
	background:url('../../images/20/common/pagetop_bt.png') left top no-repeat;
	background-size:contain;
	display: block;
	width: 60px;
	height: 60px;
	right:10px;
	bottom:10px;
	text-indent:-9999px;
	opacity:0.7;
}
.pageTop a:hover { opacity:1.0; }
.ft_shoplink a {
	background:url('../../images/20/common/ft_shoplink_bt.png') left top no-repeat;
	background-size:contain;
}





/* ------ form ------ */
input, select, textarea {
	font-size:0.9rem;
	line-height:1.8;
}
input { padding:5px; }
input[type=text], input[type=tel], input[type=email], input[type=number], textarea {
	padding:4px;
	border:1px #cccccc solid;
	background-color:#F7F7F7;
	margin-bottom:3px;
}
select {
	background-color:#F7F7F7;
	border:1px #cccccc solid;
	padding:4px;margin-bottom:8px;
	cursor:pointer;
}
input[type=text]:focus, select:focus, input[type=tel]:focus, input[type=email]:focus, textarea:focus {
	border:solid 1px #ccc;
	background-color:#fff
}
label {
	cursor:pointer;
}
input[type=submit] {
	white-space:normal;
	line-height:1.6;
}

.keyword { text-align:center }
.keyword input[type=text] { width:40%; border:solid 2px #ccc; }
.keyword input[type=submit] {
	margin-left:16px;
	padding: 7px 30px;
	border: none;
	cursor: pointer;
	background-color:#FB8A1E;
	color: #fff;
	border-radius: 5px;
	font-family: 'FontAwesome';
	letter-spacing:3px;
}


.getadobereader {
    border: 1px solid #888888;
    border-radius: 10px;
    display: block;
    font-size: 0.9rem;
    margin: 50px auto;
    width:80%;
    padding: 18px 24px;
}
.getadobereader p {
    margin-bottom: 1em;
}

/*---- STEP ----*/
.formstep { max-width:720px; margin:60px auto 20px auto; padding:0; list-style:none; display:flex; }
.formstep .step01,
.formstep .step02,
.formstep .step03 {
	flex:1 0 33%;
	height: 36px;
	line-height: 36px;
	background: #CCCCCC;
	position: relative;
	text-align: center;
	font-size: 13px;
	box-sizing:border-box;
}
.formstep .step02,
.formstep .step03 {
	padding-left:16px;
}
.formstep .step01:after,
.formstep .step02:after {
	border-left: 20px solid #CCCCCC;
	border-top: 18px solid transparent;
	border-bottom: 18px solid transparent;
	content: "";
	position: absolute;
	left: 50%;
	top: 0;
	margin-left: 50%;
}
.formstep .step01:before,
.formstep .step02:before {
	border-left: 22px solid #FFFFFF;
	border-top: 20px solid transparent;
	border-bottom: 20px solid transparent;
	content: "";
	position: absolute;
	left: 50%;
	top: -2px;
	margin-left: 50%;
}
.formstep .step01 { z-index: 3; }
.formstep .step02 { z-index: 2; }
.formstep .step03 { z-index: 1; }
.formstep .on { color: #FFFFFF; background: #333333; }
.formstep .on:after { border-left: 20px solid #333333; }



/* # Tablet 768-959px
========================================================================================= */
@media only screen and (max-width: 959px) {

	body {  }

	.mode_pc { display:none;visibility:hidden; }
	.mode_pcs { display:block;visibility:visible; }
	.mode_sp { display:block !important;visibility:visible; }
	.mode_sps { display:none !important;visibility:hidden; }
	.view_pc { visibility:hidden; display:none; }
	.view_sp { visibility:visible; display:inline; }


	#pages { width:100%;padding-top:0; }

	header { height:auto; }
	header, footer { width:100%; }



	/* ----- common ----- */

	h1.pagetitle { font-size:1.8rem; letter-spacing:0; }
	h2.sectiontitle { font-size:1.45rem; }

	.page_content .plain_text {	background:none; }


	.float_img_rs { display:block; float:none; padding:0 0 20px 0; }
	.float_img_ls { display:block; float:none; padding:0 0 20px 0; }

	a.txt_banner { padding:5px 25px 5px 5px; }


	/* ========== newsl list ========== */
	ul.news_list li span.news_date { padding-left:0px; }
	ul.news_list li span.news_title { padding-right:0px; }

	/* ========== rwd table ========== */
	.rwd_table th {
		box-sizing:border-box;
		display:block;
		clear:both;
		width:100%;
		border:none;
	}
	.rwd_table th a {
		box-sizing:border-box;
		color:inherit;
	}
	.rwd_table td {
		box-sizing:border-box;
		display:block;
		width:100%;
		float:left;
		text-align:left;
		padding:6px 4px 12px 20px !important;
		border:none;
	}

	/* ========== header ========== */
	header { z-index:500; border-bottom:1px #fff solid; }
	.header_logo {padding:0px; }
	.header_logo img { max-height:60px; }
	#site_navi { display:none; }
	.global_navi { display:none; }

	#sp_menu_bt {
		display: block;
		position:fixed;
		top:10px;right:5px;
		width: 40px;
		height: 40px;
		cursor:pointer;
		background-color:#399339;
		border-radius:3px;
	}
	#sp_menu_bt span {
		width: 30px;
		height: 2px;
		border-radius:2px;
		display: block;
		background: #fff;
		position: absolute;
		left: 50%;
		top: 50%;
		margin-left: -15px;
	}

	#sp_menu_bt span { transition: all 0.3s; transform: rotate(0deg); }

	#sp_menu_bt .top { transform: translateY(-11px); }
	#sp_menu_bt .middle { transform: translateY(-1px); }
	#sp_menu_bt .bottom { transform: translateY(9px); }
	.mm-menu_opened+noscript+.mm-slideout #sp_menu_bt .middle { background: rgba(255, 255, 255, 0); }
	.mm-menu_opened+noscript+.mm-slideout #sp_menu_bt .top { transform: rotate(-45deg) translateY(0px); }
	.mm-menu_opened+noscript+.mm-slideout #sp_menu_bt .bottom { transform: rotate(45deg) translateY(0px); }
	.mm-navbar a img { height:24px; border-radius:2px; }


	/* ========== footer ========== */
	.footer_contact, .footer_addr { width:100%; float:none; padding:20px 10px; text-align:center; }
	.footer_menulist { width:100%; float:none; padding:0px; }
	.menucols ul { padding:0 10px; }
	.menucols ul li a { border-bottom:1px #7C7195 dotted; }
	.menucols ul li a, .menucols ul li span { padding:12px 0; font-size:0.9rem; }
	.ft_plink { float:none; padding:0 0 20px 0; text-align:center; }
	.ft_plink a { white-space:nowrap; }
	.ft_copy { float:none; text-align:center; }

}

/* # Tablet & Mobile Landscape 480-767px
========================================================================================= */   
@media only screen and (max-width: 767px) {

	body { }

	.mode_pcs { display:none;visibility:hidden; }
	.mode_sps { display:block !important;visibility:visible; }

	h1.pagetitle { font-size:1.7rem; letter-spacing:0; }
	h2.sectiontitle { font-size:1.35rem; }

	.row_contents p, .row_contents table, .row_contents ol, .row_contents ul { font-size:0.9rem; }
	.narrow_text { max-width:98%; }

	.inc_contact_pr { width:100%; }


	.rel_link { width:95%; font-size:0.8rem; }
	.rel_link div a img { height:110px; object-fit:cover; }


	.formstep .step01,
	.formstep .step02,
	.formstep .step03 {
		font-size:11px;
	}


	/*-- news view--*/
	.w_img_txt_area, .news_txt_area {
		width:100%;
		float:none;
		word-break:break-all;
	}
	.news_mainimg_area {
		width:100%;
		float:none;
	}


	/* ========== dl list ========== */
	dl.dl_table dd { padding:4px 0px 16px 0px; }

	/* ========== newsl list ========== */
	ul.news_list li>a, ul.news_list li>span { display:block; }
	ul.news_list li span.news_date, ul.news_list li span.news_title { display:block; padding:0; }
	ul.news_list li span.news_title { padding-left:20px; }
	.pagenation { margin:40px 0px 20px 0px; font-size:0.8rem; }
	.pagenation .pgn_prev { flex:0 0 15%; text-align:left; }
	.pagenation .pgn_link { flex:1 1 70%; text-align:center; }
	.pagenation .pgn_next { flex:0 0 15%; text-align:right; }
	.pgn_link a, .pgn_link .pmove_navi_this { width:20px;height:20px; line-height:20px;  }



	/* ========== footer ========== */
	.footer_menulist .menucols { width:100%; float:none; }
	.menucols ul { padding:0; }
	.menucols ul li span { background-color:#7C7195;border-bottom:1px #5A516C solid; }
	.ft_plink a { display:block; border:none; }
	.ft_plink, .ft_copy { float:none; text-align:center; margin:30px 0; line-height:3; }


}
/* # Mobile 320-479px
========================================================================================= */   
@media only screen and (max-width: 479px) {
	body { min-width:320px; }

	/* ---------- footer ---------- */
	.ft_plink a { border:none; margin:20px 0; display:block; }

}

@media print{
    #site_navi, .global_navi, .footer_content, .ft_plink, .pageTop { display:none; }
    .header_logo, #footer { padding:10px; }
    .header_logo img { height:20px;}
}

