@charset "UTF-8";

/* :basic
-----------------------------------------------------------------------------*/
html
{
    height:100%;
}
body
{
	font-family: メイリオ, Meiryo, "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", sans-serif;
	word-break: normal;
	word-wrap: break-word;
    height: 100%;
	background-color: #FFFFFF;
	color: #4d4d4d;

	font-size: 14px;
	line-height: 1.5;
}
img
{
	margin: 0;
	vertical-align: bottom;
}
.imgbox img
{
	max-width: 100%;
}

a:link {
	color: #0071BC;
	text-decoration: none;
}
a:visited {
	color: #0071BC;
	text-decoration: none;
}
a:hover {
	color: #0071BC;
	text-decoration: underline;
}
label
{
	cursor: pointer;
}


.btn
{
	display: inline-block;
	font-size: 16px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	padding: 16px;
	margin: 5px;
	box-sizing: border-box;
	min-width: 150px;
	border-radius: 6px;
	overflow: hidden;
	cursor: pointer;
}
.btn:hover,
.btn a:hover
{
	text-decoration: none;
}
.btn.btn_md
{
	font-size: 16px;
	font-weight: normal;
	padding: 8px 16px;
	min-width: 80px;
	border-radius: 4px;
}
.btn.btn_sm
{
	font-size: 14px;
	font-weight: normal;
	padding: 4px 8px;
	min-width: 50px;
	border-radius: 4px;
}
.bluebtn
{
	background-color: #0071BC;
	color: #ffffff;
	border: none;
}
a.bluebtn,
.bluebtn a
{
	color: #ffffff;
}
.redbtn
{
	background-color: #CC0000;
	color: #ffffff;
	border: none;
}
a.redbtn,
.redbtn a
{
	color: #ffffff;
}
.graybtn
{
	background-color: #F0F0F0;
	color: #000000;
	border: 1px solid #999999;
}
a.graybtn,
.graybtn a
{
	color: #000000;
}
.btn.inactive
{
/*
	background-color: #cfcfcf !important;
	color: #a8a8a8 !important;
	pointer-events: none !important;
*/
}

.modal
{
	display: none;
	position: absolute;
	z-index: 9000;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(0,0,0,0.75);
}
.modal_inner
{
	position: relative;
	max-height: 100%;
}
.modal_hd
{
	position: fixed;
	z-index: 9999;
	top: 0;
	left: 0;
	right: 0;
}
.modal_bd
{
	margin: 0 auto;
	width: 90%;
	box-sizing: border-box;
	max-width: 720px;
	background-color: #FFFFFF;
	color: #323232;
	margin-top: 48px;
	padding: 10px;
}
.modal_closer_top
{
	margin: 0 auto;
	width: 90%;
	max-width: 720px;
	box-sizing: border-box;

	background-color: #23b083;
	color: #FFFFFF;
	font-weight: bold;
	line-height: 1;
	padding: 16px 10px;
	cursor: pointer;

	background-image: url(../images/closer.png);
	background-position: right 10px center;
	background-repeat: no-repeat;
}

.modal_float
{
	display: none;
	position: fixed;
	z-index: 9001;
	right: 0;
	bottom: 40vh;
	padding: 10px 20px 10px 10px;
	background-color: #CCFFF0;
	border-radius: 10px 0 0 10px;
	box-shadow: 0 0 4px 2px rgba(0,0,0,0.5);
}
.modalfinisher_sub
{
	min-width: 30px;
}

.pager
{
	list-style: none;
	display: flex;
	align-items: flex-start;
}
.pager_page
{
	display: inline-block;
	width: 40px;
	box-sizing: border-box;
	color: #0071BC;
	text-decoration: underline;
	text-align: center;
	line-height: 1;
	padding: 13px 0;
	white-space: nowrap;
	cursor: pointer;
}
.pager_page.inactive
{
	color: #808080;
	text-decoration: none;
	pointer-events: none;
}
.pager_page:hover
{
	background-color: #F0F8FF;
}
.pager_page.current
{
	color: #000000;
	font-weight: bold;
	text-decoration: none;
	pointer-events: none;
}
.listcount
{
	margin: 0 0 10px 10px;
	line-height: 32px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
}


.wrapper
{
	max-width: 1200px;
	margin: 0 auto;
}

.menu
{
	display: inline-block;
}
.menu.current
{
	pointer-events: none;
}

.header
{
	position: relative;

	box-sizing: border-box;
	font-size: 14px;
	margin-bottom: 10px;

	height: 48px;
}
.header .logo
{
	float: left;
	width: 120px;
	height: 48px;
	margin-right: 10px;

	background-image: url(../images/logo.png);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: contain;
}
.header .menus
{
	float: left;
}
.header .menus .menu a
{
	display: inline-block;
	font-weight: bold;
	line-height: 1;
	padding: 17px 12px;
}
.header .menus .menu.current a
{
	background-color: rgba(0,113,118,0.1);
	color: #000000;
}

@media all and (min-width: 768px)
{
	.subpage .header .menus
	{
		display: none;
	}
}
@media all and (min-width: 1200px)
{
	.subpage .header .menus
	{
		display: block;
		opacity: 0;
		pointer-events: none;
	}
}
@media all and (max-width: 1199px)
{
	.header .menus
	{
		float: none;
		position: absolute;
		z-index: 999;
		top: 50px;
		left: 0px;
	}
}
@media all and (max-width: 767px)
{
	.header .menus
	{
		display: none;
		left: auto;
		right: 10px;

		background-color: #FFFFFF;
		border: 2px solid #0071BC;
	}
	.header .menus .menu
	{
		display: block;
	}
	.header .menus .menu a
	{
		min-width: 180px;
		padding-left: 20px;
	}

	.menugrp
	{
		position: relative;
		font-weight: bold;
		line-height: 1;
		padding: 10px;
		background-color: #CCCCDD;
		cursor: pointer;
		background-repeat: no-repeat;
		border-bottom: 2px solid #FFFFFF;
	}
	.menugrp .ic_acc
	{
		display: inline-block;
		position: absolute;
		top: 13px;
		right: 10px;
		width: 18px;
		height: 12px;

		background-image: url(../images/ic_acc_open.png);
		background-repeat: no-repeat;
		background-position: center center;
	}
	.menugrp.open .ic_acc
	{
		background-image: url(../images/ic_acc_fold.png);
	}

	.closermenu
	{
		font-weight: bold;
		line-height: 1;
		padding: 17px 12px;
		color: #999999;
		cursor: pointer;
	}
}
.menugrp_bd
{
	display: none;
}






.header .snsbtns
{
	float: left;
	height: 48px;
	white-space: nowrap;
	margin: 0 10px;
}
.header .snsbtns.pconly
{
	margin: 0 15px;
}
.snsbtn
{
	display: inline-block;
	overflow: hidden;
	vertical-align: top;
}
.snsbtn_facebook
{
	max-width: 80px;
	max-height: 20px;
	overflow: hidden;
}
.snsbtn_pc
{
	padding: 12px 5px;
}
.snsbtn_mb
{
	float: right;
	margin: 2px 5px 0 5px;
}
.snsbtn_mb a
{
	display: inline-block;
}


.header .langsw
{
	float: left;
	height: 48px;
	white-space: nowrap;
	margin: 0 10px;
}
.header .langsw .menu a
{
	display: inline-block;
	font-weight: bold;
	line-height: 1;
	padding: 17px 12px;
}
.header .langsw .menu.current a
{
	color: #000000;
}
@media all and (max-width: 767px)
{
	.header .langsw
	{
		margin: 0;
	}
}


.header .header_spbox
{
	float: right;
	height: 48px;
	white-space: nowrap;
	margin: 0 10px;
}
.header .header_spbox a
{
	display: inline-block;
	font-weight: bold;
	line-height: 1;
	padding: 17px 12px;
}

.header .loginbtns
{
	float: right;
	height: 48px;
	white-space: nowrap;
	margin: 0 10px;
}
.header .loginbtn
{
	padding: 10px 16px;
	min-width: 0;
}
.header .loginbtn a
{
	font-size: 14px;
	line-height: 1;
	color: #FFFFFF;
}

.header .mbmenubtn
{
	float: right;
	margin: 0 0 0 10px;
}
@media all and (max-width: 767px)
{
	.header .loginbtns
	{
		float: right;
		margin-right: 40px;
		padding-top: 5px;
	}
}


.animemenubtn
{
	position: absolute;
	z-index: 20;
	top: 0;
	right: 0;
	cursor: pointer;
	width: 50px;
	height:50px;
	border-radius: 5px;
}
.animemenubtn .animemenubtn-area
{
	transition: all .6s;
	width:50px;
	height:50px;
}

.animemenubtn span
{
	display: inline-block;
	transition: all .4s;
	position: absolute;
	left: 14px;
	height: 3px;
	border-radius: 2px;
	background: #0071BC;
	width: 45%;
}
.animemenubtn span:nth-of-type(1)
{
	top:15px;	
}
.animemenubtn span:nth-of-type(2)
{
	top:23px;
}
.animemenubtn span:nth-of-type(3)
{
	top:31px;
}
.animemenubtn.active .animemenubtn-area
{
	transform: rotate(360deg);
}
.animemenubtn.active span:nth-of-type(1)
{
	top: 18px;
	left: 18px;
	transform: translateY(6px) rotate(-45deg);
	width: 30%;
}
.animemenubtn.active span:nth-of-type(2)
{
	opacity: 0;
}
.animemenubtn.active span:nth-of-type(3)
{
	top: 30px;
	left: 18px;
	transform: translateY(-6px) rotate(45deg);
	width: 30%;
}





.topimg
{
	background-image: url(../images/topbg.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
.topimg_sitename
{
	width: 96%;
	margin: 50px auto;
	padding-bottom: 10px;
}
.topimg_sitename_inner
{
	max-width: 320px;
	margin: 0 auto;
}

/*
.topimg_sitename h1
{
	color: #0071BC;
	font-size: 13px;
	font-weight: bold;
	line-height: 1;
	margin: 4px 0;
}
.topimg_sitename .sysname
{
	display: inline-block;
	background-color: #FFFFFF;
	color: #0071BC;
	font-size: 20px;
	font-weight: bold;
	line-height: 1;
	letter-spacing: 0.5px;
	padding: 6px 12px;
	margin: 4px 0;
	border: 2px solid #0071BC;
}
.topimg_sitename .sysname::after
{
	content: '\A';
	white-space: pre;
}

.subpage .topimg
{
	padding-bottom: 10px;
}
.subpage .topimg_sitename .sysname
{
	font-size: 14px;
}
*/
.topimg_sitename h1
{
	display: inline-block;
	background-color: #FFFFFF;
	color: #0071BC;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.25;
	letter-spacing: 0.5px;
	padding: 6px 12px;
	margin: 4px 0;
	border: 2px solid #0071BC;
}
.topimg_sitename_inner > p
{
	background-color: rgba(255,255,255,0.8);
	color: #0071BC;
	font-size: 14px;
	padding: 10px 15px;
	margin: 10px 0 20px 0;
}

@media all and (min-width: 768px)
{
	.topimg_sitename h1
	{
		font-size: 24px;
	}
	.subpage .topimg_sitename
	{
		margin: 0 auto;
	}
	.subpage .topimg_sitename_inner
	{
		max-width: initial;
		margin: 0 auto 0 120px;
	}
	body:not(.subpage) .topimg_sitename_inner
	{
		max-width: 750px;
		margin: 0 0 0 10px;
	}
}



.subheader
{
	background-color: #0071BC;
}
.subheader .menus .menu a
{
	display: inline-block;
	font-weight: bold;
	line-height: 1;
	padding: 17px 12px;
	color: #FFFFFF;
}
.subheader .menus .menu.current a
{
	background-color: #668899;
}



.index_recenttab
{
	font-size: 0;
}
.index_recenttab_hd
{
	font-size: 14px;
	font-weight: bold;
	line-height: 1;
}
.index_recenttab_bd
{
	font-size: 14px;
}
.index_recenttab_hd span
{
	display: inline-block;
	border-radius: 4px 4px 0 0;
	padding: 4px 60px;
	margin-left: 24px;
}
.index_recenttab_event .index_recenttab_hd span,
.index_recenttab_event .index_recenttab_bd
{
	background-color: #FFFFFF;
}
.index_recenttab_news .index_recenttab_hd span,
.index_recenttab_news .index_recenttab_bd
{
	background-color: #F5F2E9;
}
.index_recenttab_bd_inner
{
	position: relative;
	padding: 20px 20px 50px 20px;
}
.index_recenttab_more
{
	position: absolute;
	right: 20px;
	bottom: 20px;
	margin-top: 5px;
	text-align: right;
}
.index_recenttabs_l .index_recenttab_more
{
	position: relative;
	right: 0;
	bottom: 0;
	margin: 5px 0;
}
.index_recenttab_bd_inner table
{
	width: 100%;
}
.index_recenttab_row td
{
	line-height: 1.25;
	padding: 6px;
	border-bottom: 1px solid #C0C0C0;
}
.date
{
/*
	font-weight: bold;
*/
}
.index_recenttab_row .date
{
	min-width: 100px;
}
.index_recenttab_row .title
{
	width: 80%;
}

@media all and (min-width: 768px)
{
	.index_recenttabs
	{
		position: relative;
		display: flex;
	}
	.index_recenttabs_bg
	{
		position: absolute;
		top: 22px;
		left: 0;
		right: 0;
		bottom: 0;
		background-color: #FFFFFF;
	}
	.index_recenttab
	{
		position: relative;
		z-index: 10;
		width: 50%;
	}
	.index_recenttab_bd
	{
	}
	.index_recenttab_bd_inner
	{
		max-width: 560px;
		min-height: 120px;
	}
}
@media all and (min-width: 1200px)
{
	.index_recenttab_news .index_recenttab_hd span
	{
		margin: 0 380px 0 calc(100% - 560px);
	}
	.index_recenttab_news .index_recenttab_bd_inner
	{
		margin: 0 0 0 auto;
	}
	.index_recenttab_event .index_recenttab_bd_inner
	{
		margin: 0 auto 0 0;
	}
}
@media all and (max-width: 767px)
{
	.index_recenttab_event .index_recenttab_hd
	{
		background-color: #FFFFFF;
	}
	.index_recenttab_news .index_recenttab_hd
	{
		background-color: #F5F2E9;
	}
	.index_recenttab_hd span
	{
		padding: 10px;
	}
}

.index_recenttabs_l
{
	margin: 30px auto 0 auto;
}
.index_topics
{
	box-sizing: border-box;
	position: relative;
	padding: 20px 20px 50px 20px;
}
.index_edus
{
	box-sizing: border-box;
	position: relative;
	padding: 20px 20px 50px 20px;
	background-color: #F5F2E9;
}
.index_topics_inner
{
	position: relative;
}
.index_edus_inner
{
	position: relative;
}

@media all and (min-width: 1000px)
{
	.index_recenttabs_l
	{
		display: flex;
		max-width: 1200px;
		margin: 0 auto;
	}
	.index_topics
	{
		width: calc(100% - 360px);
	}
	.index_edus
	{
		width: 360px;
	}
}
@media all and (min-width: 1280px)
{
	.index_topics
	{
		width: calc(50% + 290px);
	}
	.index_edus
	{
		width: calc(50% - 290px);
	}
	.index_topics_inner
	{
		max-width: 880px;
		margin: 0 0 0 auto;
	}
	.index_edus_inner
	{
		max-width: 300px;
		margin: 0 auto 0 0;
	}
}


.index_outerlink
{
	background-color: #FFFFFF;
	color: #CC74BF;
	border: 2px solid #CC74BF;
	width: calc(100% - 30px);
	margin: 10px auto;

	position: relative;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.25;
	vertical-align: middle;
	box-sizing: border-box;

}
.index_outerlink::after
{
	content: '▶';
	position: absolute;
	z-index: 10;
	top: 8px;
	right: 8px;
}
.index_outerlink a
{
	padding: 8px 24px 8px 12px;
	display: inline-block;
	width: calc(100% - 30px);
	color: inherit;
}



.tilelist
{
	display: flex;
	flex-wrap: wrap;
}
.tile
{
	max-width: 270px;
	margin: 20px 10px;
}
.thumb
{
	position: relative;
	width: 260px;
	height: 146px;
	overflow: hidden;
	padding: 4px;
	background-color: #FFFFFF;
	border: 1px solid #CCCCCC;
	text-align: center;
}
.imgbox.thumb img
{
	max-height: 100%;
}

.thumb_screen
{
	position: absolute;
	z-index: 100;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
.tile_body
{
	padding: 10px;
}
.tile .content
{
	margin-top: 10px;
	font-size: 13px;
}
.tile .leadtx
{
	display: -webkit-box;
	max-height: 42px;
	margin-right: -5px;
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}
.tile .leadtx a
{
	color: #999999;
}


.index_topics_hd
{
	font-size: 24px;
	padding-left: 50px;
	margin-bottom: 20px;

	background-image: url(../images/ic_topic.png);
	background-repeat: no-repeat;
	background-position: left center;
}

.index_edus_hd
{
	font-size: 24px;
	padding-left: 40px;
	margin-bottom: 20px;

	background-image: url(../images/ic_edu.png);
	background-repeat: no-repeat;
	background-position: left center;
}



.main
{
	background-color: #FFFFFF;
	padding: 10px 0 50px 0;
}

.posts_hd
{
	margin: 30px auto 0 auto;
	background-color: #0071BC;
	color: #FFFFFF;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	padding: 10px 15px;
}
.posts_bd
{
	padding: 20px;
}
@media all and (max-width: 1199px)
{
	.posts_hd
	{
		margin-top: 5px;
		box-sizing: border-box;
		width: 94%;
	}
}


.chapter_hd
{
	margin: 10px auto;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	padding: 10px 15px;
	color: #0071BC;
	border: 2px solid #0071BC;
}


.listcontrolbox
{
	display: flex;
	justify-content: space-between;
}
.c_done,
.c_sort
{
	margin-bottom: 10px;
}
.c_done a.current,
.c_sort a.current
{
	pointer-events: none;
	color: #999999;
}


.dtlmain
{
	position: relative;
/*
	background-color: #EFEFEF;
*/
	padding: 30px 10px 50px 10px;
}
.dtlmain .wrapper
{
	max-width: 800px;
}
.page_hd
{
	font-size: 24px;
	font-weight: bold;
	line-height: 1.25;
	color: #0071BC;
	padding-bottom: 10px;
	border-bottom: 1px solid #4D4D4D;
}
.page_bd
{
	padding: 20px;
	overflow-x: auto;
}

.acctoggler
{
	position: relative;

	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	padding: 10px 30px 10px 10px;
	margin-top: 20px;
	cursor: pointer;
	background-color: #F0F6F6;
	border-bottom: 2px solid #0071BC;

	background-repeat: no-repeat;
}
.acctoggler_dl
{
	padding: 10px 30px 10px 40px;

	background-image: url(../images/ic_dl.png);
	background-position: left 12px center;
}
.acctoggler_user
{
	padding: 10px 30px 10px 40px;

	background-image: url(../images/ic_user.png);
	background-position: left 2px center;
}
.acctoggler .ic_acc
{
	display: inline-block;
	position: absolute;
	top: 13px;
	right: 10px;
	width: 18px;
	height: 12px;

	background-image: url(../images/ic_acc_open.png);
	background-repeat: no-repeat;
	background-position: center center;
}
.acctoggler.open .ic_acc
{
	background-image: url(../images/ic_acc_fold.png);
}
.accbox
{
	display: none;
	padding: 20px;
}

.attachline
{
	margin: 8px 0;
}

.attach_slot_hd
{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.attach_slot_hd .attach3add
{
	cursor: pointer;
}
.attach_slot_bd
{
	min-height: 20px;
	margin: 10px;
	border-bottom: 1px dashed #0071BC;
}
.attach_slot_user_hd
{
	font-weight: normal;
}
.attach_slot_user_bd
{
	margin: 0 0 10px 10px;
}
.attach_slot_user_bd .attachline
{
	display: inline-block;
	margin: 0;
}
.attach_slot_user_bd .attachline,
.attach_slot_user_bd span
{
	font-size: 14px;
}

.article_user_self
{
	font-weight: bold;
}
.participate_toggler
{
	cursor: pointer;
}
.participate_toggler.inactive
{
	pointer-events: none;
	opacity: 0.5;
}


.postindex .sidebar
{
	background-color: #F4F4F4;
	padding: 30px 10px;
}
.postindex .main
{
	padding: 10px 10px 50px 10px;
}
@media all and (min-width: 768px)
{
	.postindex
	{
		display: flex;
		max-width: 1200px;
		margin: 0 auto;
	}
	.postindex .sidebar
	{
		box-sizing: border-box;
		width: 230px;
	}
	.postindex .main
	{
		box-sizing: border-box;
		width: calc(100% - 230px);
	}
}


.postindex .sidebar .acctoggler_searchmode
{
	position: relative;
}
.postindex .sidebar .acctoggler_searchmode:not(.current)::after
{
	content: '▼';
	position: absolute;
	z-index: 10;
	top: 2px;
	right: 4px;
}

.postindex .sidebar .kwdbox
{
	display: flex;
	width: calc(100% - 20px);
	height: 30px;
	background-color: #B8B8B8;
	border-radius: 4px;
	overflow: hidden;
}
.postindex .sidebar .kwdbox_l
{
	position: relative;
	box-sizing: border-box;
	width: calc(100% - 30px);
	height: 30px;
	border: 1px solid #B8B8B8;
	border-radius: 4px 0 0 4px;
	overflow: hidden;
}
.postindex .sidebar .kwdbox_l #c_kwd
{
	box-sizing: border-box;
	display: inline-block;
	border: none;
	outline: none;
	height: 28px;
	width: 100%;
}
.postindex .sidebar .kwdbox_l #kwdbox_reset
{
	position: absolute;
	top: 0;
	right: 0;
	width: 28px;
	height: 28px;
	cursor: pointer;
	border: none;
	outline: none;
	background-color: transparent;

	background-image: url(../images/ic_resetbtn.png);
	background-repeat: no-repeat;
	background-position: right 7px center;
}
.postindex .sidebar .kwdbox_r #kwdbox_submit
{
	box-sizing: border-box;
	width: 30px;
	padding: 7.5px 0;
	border-radius: 0 4px 4px 0;
	border: none;
	overflow: hidden;
	cursor: pointer;

	background-image: url(../images/ic_searchbtn.png);
	background-repeat: no-repeat;
	background-position: right 7px center;
	background-color: #0071BC;
}

.postindex .sidebar .catbox
{
	display: flex;
	width: calc(100% - 20px);
	height: 30px;
	margin-bottom: 10px;
}

.postindex .sidebar .catbox_l
{
	position: relative;
	box-sizing: border-box;
	width: calc(100% - 30px);
	height: 30px;
	overflow: hidden;
}
.postindex .sidebar .catbox_r #catbox_submit
{
	box-sizing: border-box;
	width: 30px;
	padding: 7.5px 0;
	border-radius: 4px;
	border: none;
	overflow: hidden;
	cursor: pointer;

	background-image: url(../images/ic_searchbtn.png);
	background-repeat: no-repeat;
	background-position: right 7px center;
	background-color: #0071BC;
}
.postindex .sidebar .c_cat
{
	font-size: 13px;
	line-height: 1.25;
	list-style: none;
	padding-right: 20px;
}
.postindex .sidebar .c_cat_1
{
	margin: 0 0 15px 0;
}
.postindex .sidebar .c_cat_2
{
	margin: 0 0 5px 20px;
}
.postindex .sidebar .c_cat label
{
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
}
.postindex .sidebar .c_cat_1 > label > span
{
	font-weight: bold;
	margin-bottom: 5px;
}
.postindex .sidebar .c_cat input
{
	margin-right: 5px;
}

.postindex .list table
{
	width: 100%;
}
.postindex .list td.date
{
	padding: 4px 8px 4px 24px;
	vertical-align: top;
	line-height: 1.25;

	background-image: url(../images/rowmark.png);
	background-repeat: no-repeat;
	background-position: left top 4px;
}
.postindex .list td.title
{
	padding: 4px 8px;
	vertical-align: top;
	line-height: 1.25;
}
.postindex .list tr:hover td
{
	background-color: #F0F8FF;
}


.legend_cat_name
{
	display: inline-block;
	color: #0071BC;
	text-decoration: underline;
	cursor: pointer;
	font-size: 12px;
	line-height: 16px;
	padding-left: 20px;
	
	background-image: url(../images/ic_help.png);
	background-repeat: no-repeat;
	background-position: left center;
}
.postindex .legend
{
	text-align: right;
}


.postdtl .page_hd
{
	margin: 10px 0;
}
.postdtl .lead
{
	font-weight: bold;
	margin: 20px 0;
}
.postdtl .attrs
{
	font-weight: bold;
	margin: 20px 0;
}
.postdtl .ec
{
	margin: 20px 0;
}
.postdtl .usercont
{
	background-color: #F0F6F6;
}

.postdtl .prevnext
{
	padding: 0 10px;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}
.postdtl .prevnext a
{
	display: inline-block;
	padding: 10px;
}
.postdtl .prevnext .inactive a
{
	color: #CCCCCC;
	pointer-events: none;
}
.postdtl_hd .prevnext
{
	float: right;
}
.postdtl_hd .date
{
	float: left;
	padding: 10px 0;
}


.usercont
{
	margin: 20px 0;
	padding: 5px 10px;
}

.usercont h3,
.usercont_h3
{
	font-size: 16px;
	font-weight: bold;
	line-height: 1.25;
	border-left: 4px solid #4D4D4D;
	padding-left: 10px;
	margin: 15px 0;
}
.usercont h4,
.usercont_h4
{
	font-size: 16px;
	font-weight: bold;
	line-height: 1.25;
	margin: 10px 0;
}
.usercont h5,
.usercont_h5
{
	font-size: 14px;
	font-weight: bold;
	line-height: 1.25;
	margin: 10px 0;
}
.usercont h6,
.usercont_h6
{
	font-size: 14px;
	font-weight: normal;
	line-height: 1.25;
	margin: 10px 0;
}
.usercont p
{
	margin: 10px 0;
}

.note-editor .note-dropzone
{
	opacity: 0 !important;
	display: none !important;
}
.note-group-image-url
{
	display: none !important;
}
.note-modal.open .note-modal-footer .note-image-btn
{
	display: none !important;
}
.summernote-content p
{
	display: inline; 
	margin: 0; 
}

.modmain .wrapper
{
	max-width: 940px;
	margin: 0;
}
.modmain .page_hd
{
	margin: 0 auto 10px auto;
	border: none;
	background-color: #0071BC;
	color: #FFFFFF;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	padding: 10px 15px;
}

.modmain .controlbox,
.dtlmain .controlbox
{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin: 10px 0;
}
.inputtable
{
	width: 100%;
	margin: 30px 0;
}
.inputtable th
{
	padding: 4px 8px;
	font-weight: bold;
	text-align: right;
	vertical-align: top;
	background-color: #F0F0F0;
	border: 2px solid #FFFFFF;
}
.inputtable td
{
	padding: 4px 8px;
	vertical-align: top;
}

.inputtable > tbody > tr > th,
.inputtable > tbody > tr > td
{
	border: 2px solid #F8F8F8;
}
.inputtable input[type=text]
{
	width: 90%;
	max-width: 480px;
}
.inputtable input.text_short[type=text]
{
	max-width: 40px;
}
.inputtable input.datepicker
{
	max-width: 135px;
}
.inputtable label input
{
	margin-top: 0;
}
.inputtable .note-editor img
{
	max-width: 100%;
}
@media all and (min-width: 768px)
{
	.inputtable th
	{
		min-width: 100px;
	}
}

.attachlist td
{
	vertical-align: middle;
}

.newattach
{
	border-top: 1px solid #CCCCCC;
	padding: 10px;
}
.attachadd
{
	position: relative;
	padding: 10px;
	margin: 10px 0;
	background-color: #F0F0F0;
	border: 1px dashed #CCCCCC;
}
.attachadd.dummy
{
	display: none;
}
.attachadd_quit
{
	position: absolute;
	top: 0;
	right: 0;
	font-size: 16px;
	font-weight: bold;
	cursor: pointer;
	padding: 10px;
}

.newec
{
	border-top: 1px solid #CCCCCC;
	padding: 10px;
}
.ecadd
{
	position: relative;
	padding: 10px;
	margin: 10px 0;
	background-color: #F0F0F0;
	border: 1px dashed #CCCCCC;
}


dialog::backdrop
{
	background: rgba(0, 0, 0, 0.5);
}
.previewwin
{
	padding: 0;
	width: 90%;
	max-width: 800px;
	max-height: 80vh;
	border: 1px solid #CCCCCC;
}
.previewwin_inner
{
	position: relative;
}
.preview_hd
{
	box-sizing: border-box;
	width: 90%;
	max-width: 800px;

	position: fixed;
	z-index: 100;
	background-color: #666666;
	color: #FFFFFF;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	padding: 8px 32px 8px 8px;
}
.preview_bd
{
	padding: 42px 10px 10px 10px;
	pointer-events: none;
}
.preview_closer
{
	position: absolute;
	z-index: 100;
	top: 0;
	right: 10px;
	width: 32px;
	height: 32px;

	background-image: url(../images/closer.png);
	background-position: center center;
	background-repeat: no-repeat;
	cursor: pointer;
}
.previewwin .prevnext
{
	display: none;
}

.alertwin
{
	border: 1px solid #CCCCCC;
	padding: 10px 20px;
	width: 90%;
	max-width: 400px;
}
.alertwin .alertbtns
{
	display: flex;
	justify-content: center;
	margin-top: 20px;
}
.alertwin .alertbtns button
{
	margin: 0 5px;
	padding: 8px 16px;
	font-size: 16px;
	border-radius: 4px;
	cursor: pointer;
	outline: none;
	border: 1px solid #CCCCCC;
}


.bbsres_others
{
	width: 85%;
	margin: 30px 5% 30px auto;
	padding-bottom: 10px;
	border-bottom: 1px solid #F0F0F0;
}
.bbsres .usercont
{
	margin: 0;
}
.bbsres .usercont_deleted
{
	background-color: #CCCCCC;
}
.bbsres .deleted
{
	color: #CC9999;
}

.sidefltbtns
{
	position: fixed;
	z-index: 100;
	bottom: 10%;
	right: -5px;
	padding: 5px;
	background-color: rgba(153,187,204,0.75);
	border-radius: 5px 0 0 5px;
	border: 2px solid #FFFFFF;
	overflow: hidden;
}














.footer
{
	background-color: #EFEFEF;
}
.footer_spacer
{
	height: 200px;

	background-image: url(../images/bg.jpg);
	background-repeat: no-repeat;
	background-position: center center;
}
.footer_inner
{
	padding: 20px;
}
.footer_inner a
{
	display: inline-block;
	padding: 10px 20px;
}

@media all and (min-width: 1920px)
{
	.footer_spacer
	{
		background-size: cover;
	}
}
@media all and (max-width: 768px)
{
	.footer_inner a
	{
		display: block;
	}
}





















.clear {
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
	margin: 0px;
}

@media all and (max-width: 767px)
{
	.pconly
	{
		display: none !important;
	}
}
@media all and (min-width: 768px)
{
	.mbonly
	{
		display: none !important;
	}
}

.ja .enonly,
.en .jaonly
{
	display: none !important;
}
