
.page_2col,
.page_1col { margin:2em 0 0; }

/* page_2col page_3col */
.page_3col,
.page_2col {
	display:table;
	width:100%;
}

/* page_2col */
#side {
	width:300px;
	display:table-cell;
	vertical-align:top;
}

#main {
	display:table-cell;
	vertical-align:top;
	padding-right:21px;
}

@media screen and (max-width:767px) {
	
	.page_3col,
	.page_2col {
		display:block;
		width:auto;
	}

	#side {
		width:auto;
		display:block;
		border-right:none;
	}
	
	#main {
		width:auto;
		display:block;
		padding-left:0;
	}
}


/* page */
/* page_body */
.page_body {
	padding:3em 0 2em;
	border-bottom:solid 1px #d2d2d2;
}
@media screen and (max-width:767px) {
	
	.page_body { padding:0; }
}

.page_head01 {
	font-size:128%;
	font-weight:bold;
	margin-bottom:0.5em;
	color:#535353;
}
.page_head01 i {
	display:inline-block;
	vertical-align:middle;
	margin-right:0.5em;
}
.page_head01 i img {
	display:inline-block;
	vertical-align:middle;
}

.page_head02 {
	font-size:114%;
	font-weight:bold;
	background:#99cdd1;
	color:#fff;
	padding:0.25em;
}
.page_head02 i {}

.page_head03 {}
.page_head04 {}

.page_lead {
	margin:0.5em 0 3em;
}
.page_text {
	margin:0.5em 0 3em;
}
.page_section01 {
	margin:0 0 2em;
}
.page_box {
	border:solid 1px #e8e8e8;
	padding:12px 8px;
}
.page_box > ul,
.page_box > p { margin-top:8px; }

.page_box > ul:first-child,
.page_box > p:first-child { margin-top:0; }

.page_box > [class*=page_head] + ul,
.page_box > [class*=page_head] + p { margin-top:8px; }



/* sitemap_list */
.sitemap_list {
	border-top:dotted 1px #878f94;
}
.sitemap_list > li {
	padding:0.5em;
	background:#f1f1f1;
	border-bottom:dotted 1px #878f94;
}

.sitemap_list > li:nth-child(even) {
	background:#fff;
}

.sitemap_list > .low { padding-left:2em; }
.sitemap_list > li > a {
	background-image:url(../img/icon_arrow_right.png);
	background-repeat:no-repeat;
	background-position:left center;
	
	padding:0 0 0 1em;
}


/* pager */
.page_pager {
	text-align:center;
	background-color:#d7f8f8;
	padding:1.74em 0;
}
.page_pager li{
	display:inline;
}
.page_pager a,
.page_pager span {
	display:inline-block;
	text-align:center;
	text-decoration:none;
	font-weight:bold;
	line-height:2;
	background-color:#fff;
	
	padding:0;
	width:2.3em;
	height:2.3em;
	position:relative;
	
	border:solid 2px #566fd6;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
}
.page_pager a {}
.page_pager a:focus,
.page_pager a:hover {
	color:#fff;
	background-color:#566fd6;
}
.page_pager span {
	color:#fff;
	background-color:#9aacf2;
	border:solid 2px #9aacf2;
}
@media screen and (max-width:767px) {
	
	.page_pager {
		font-size:88%;
	}
}

/* path */
.path {
	font-size:87.5%;
	padding:0.5em 0;
	background-color:#edf4f7;
}
.path nav {}
.path a {}
.path i {
	color:#7a7a7a;
	margin:0 0.25em;
}


/* side */
.side_bnr_rectangle { margin-bottom:16px; }
.side_bnr_skyscrapers { margin-bottom:16px; }


/* top page */
.mv {
	text-align:center;
	margin-bottom:16px;
}
.mv figure {}
.mv h1 { padding:0; }
.mv h1 img {
	width:100%;
	height:auto;
	margin:auto;
}

@media screen and (max-width:767px) {
	
	.mv {}
	.mv figure {}
	.mv h1 {}
}

/* section_bnr */
.section_bnr {
	margin-bottom:16px;
}

/* droparea */
#droparea {
	border:solid 4px #e5bd5d;
	background:#f6f4cd;
	padding:2em 0;
	text-align:center;
	margin-bottom:16px;
	
	transition:border 0.2s, background 0.2s;
	width: 100%;
}

#droparea > p {
	font-size:174%;
	color:#535353;
	
	transition:color 0.2s;
}

#droparea > figure {
	margin-top:1.5em;
	margin-bottom:1.5em;
}

#droparea.droparea_dragenter {
	
	border:solid 4px #ed6a5c;
	background:#ffd2cd;
}

#droparea.droparea_dragenter > p {
	
	color:#8c979d;
}

/* upload page */

.uploaded_message {
	text-align:center;
	font-size:128%;
	font-weight:bold;
	color:#EE6B5D;
	
	margin:2em 0;
}

.table_upload_info {}

.table_upload_info th,
.table_upload_info td { padding:1em; }

.table_upload_info th {}
.table_upload_info td {}

/* filemanager */
#filemanager {
	border:solid 1px #d2d2d2;
	background:#f1f1f1;
}


/* file_list */
.file_list {
	padding:0 8px;
	overflow-y:scroll;
	height:280px;
}

.file_list > li {
	display:table;
	width:100%;
	border-bottom:dotted 1px #8c979d;
}
.file_list > li > div {
	display:table-cell;
	vertical-align:middle;
	padding:8px 0;
}
.file_list > li > .file_progress {
	width:12%;
}

.progress_bar_bg {
	border:solid 1px #d2d2d2;
	height:18px;
	padding:1px;
}

.progress_bar_meter {
	background:#47CF5D;
	color:#fff;
	height:100%;
	text-align:center;
	font-size:80%;
	line-height:1;
}

.file_list > li > div:first-child {
	width:17%;
}
.file_list > li > div:last-child {
	text-align:right;
	width:10%;
}


/* file_status */
.file_status {
	border-top:solid 1px #d2d2d2;
	border-bottom:solid 1px #d2d2d2;
	background:#fff;
	
	display:table;
	width:100%;
	border-collapse:separate;
	border-spacing:16px;
}
.file_status > div {
	display:table-cell;
	padding:0;
	vertical-align:middle;
}

.file_status p {
	font-weight:bold;
	font-size:114%;
}
.file_status p > small {
	font-size:80%;
	font-weight:lighter;
	display:block;
}
.file_status > div:last-child { text-align:right; }


/* file_memo */
.file_memo {
	color:#5b6469;
	padding:20px 0 0;
}

.table_file_memo {}
.table_file_memo th {
	
	font-weight:lighter;
	padding:0 20px 1em 48px;
	width:20%;
}
.table_file_memo td { padding:0 48px 1em 20px; }

.table_file_memo > tbody > tr > th,
.table_file_memo > tbody > tr > td {
	
	vertical-align: top;
	border-top:none;
}

.mail_list {}
.mail_list > li {
	position:relative;
	margin-bottom:1em;
}
.mail_list > li:last-child { margin-bottom:0; }


.add_address,
.remove_address  {
	position:absolute;
	right:-36px;
	top:50%;
	margin-top:-13px;
}

.file_memo_notify {
	padding:0 48px 1em;
	text-align:left;
}
.file_memo_notify label {
	display:inline-block;
	margin:0 2em;
}
.file_memo_notify label input[type=radio] { margin-right:0.5em; }

.file_memo_kiyaku {
	border-top:solid 1px #d2d2d2;
	border-bottom:solid 1px #d2d2d2;
	text-align:center;
	padding:1em 0;
	background:#fff;
}

.file_memo_submit {
	padding:2em 0;
	text-align:center;
}

#password {
	border:solid 1px #d6d6d6;
	background:#f1f1f1;
	padding:2em;
	margin-bottom:1em;
	
	text-align:center;
}
#password h2 {
	font-size:128%;
	padding:0 0 0.5em;
}
#password p {
	padding:0 0 1em;
}
#password input[type=text]{
	padding:0.75em;
	margin-top:2px;
}


#downloader { color:#000; }

#downloader p {
	font-weight:bold;
	font-size:128%;
}

.file_info {
	
	border:solid 1px #dbd9d9;
	background:#fff;
	font-size:100%;
	padding:1em 0;
	text-align:center;
	margin:1em 15% 1.5em;
}

.btn_box_dl {
	margin-bottom:1em;
}

#downloader small {
	display:block;
	font-size:90%;
}

/* modal */

.modal_bnr_rectangle {
	display:inline-block;
}

.modal .progress_bar_bg {}

.modal .progress_bar_meter {
	background-image:url(../img/bg_progress.gif);
	background-repeat:no-repeat;
	background-position:center top;
	background-size:cover;
}

.modal_upload {
	border:solid 3px #47cf5d;
}

/*-------------------------------------------------------------

  page common style
  
*/

div.list_5col,
div.list_4col,
div.list_3col,
div.list_2col {
	border-top:solid 1px #DEDEDE;
}

div.list_5col dl,
div.list_4col dl,
div.list_3col dl,
div.list_2col dl {
	
	display:table;
	width:100%;
	border-bottom:solid 1px #DEDEDE;
}

div.list_5col dt,
div.list_4col dt,
div.list_3col dt,
div.list_2col dt {
	display:table-cell;
	vertical-align:top;
	padding:1em 0;
}

div.list_5col dd,
div.list_4col dd,
div.list_3col dd,
div.list_2col dd {
	display:table-cell;
	vertical-align:top;
	padding:1em 0;
}

div.list_2col dt { width:50%; }
div.list_2col dd {}

div.list_3col dt { width:33.33%; }
div.list_3col dd { width:33.33%; }

div.list_4col dt { width:25%; }
div.list_4col dd { width:25%; }

div.list_5col dt { width:20%; }
div.list_5col dd { width:20%; }

@media screen and (max-width:767px) {

	div.list_5col dt,
	div.list_4col dt,
	div.list_3col dt,
	div.list_2col dt {
		display:block;
		width:auto;
	}
	
	div.list_5col dd,
	div.list_4col dd,
	div.list_3col dd,
	div.list_2col dd {
		display:block;
		width:auto;
		padding-top:0.2em;
	}
}

ul.list_col_auto,
ul.list_5col,
ul.list_4col,
ul.list_3col,
ul.list_2col {
	
	display:table;
	width:100%;
}

ul.list_col_auto > li,
ul.list_5col > li,
ul.list_4col > li,
ul.list_3col > li,
ul.list_2col > li {
	display:table-cell;
	vertical-align:top;
	padding:1em;
	border-right:solid 1px #DEDEDE;
}


ul.list_col_auto > li:first-child,
ul.list_5col > li:first-child,
ul.list_4col > li:first-child,
ul.list_3col > li:first-child,
ul.list_2col > li:first-child {
	padding-left:0;
}

ul.list_col_auto > li:last-child,
ul.list_5col > li:last-child,
ul.list_4col > li:last-child,
ul.list_3col > li:last-child,
ul.list_2col > li:last-child {
	border-right:none;
	padding-right:0;
}

ul.list_2col > li { width:50%; }
ul.list_3col > li { width:33.33%; }
ul.list_4col > li { width:25%; }
ul.list_5col > li { width:20%; }

@media screen and (max-width:767px) {
	
	ul.list_col_auto,
	ul.list_5col,
	ul.list_4col,
	ul.list_3col,
	ul.list_2col {
		
		display:block;
		width:auto;
	}
	
	ul.list_col_auto > li,
	ul.list_5col > li,
	ul.list_4col > li,
	ul.list_3col > li,
	ul.list_2col > li {
		display:block;
		width:auto;
		padding:0.2em 0 1em;
		border-right:none;
	}
}

ul.list_col_bordered {}
ul.list_col_bordered > li {
	border-top:solid 1px #DEDEDE;
	border-right:none;
	border-bottom:solid 1px #DEDEDE;
	border-left:solid 1px #DEDEDE;
}
ul.list_col_bordered > li:last-child {
	border-right:solid 1px #DEDEDE;
}
@media screen and (max-width:767px) {
	
	ul.list_col_bordered > li {
		border-top:solid 1px #DEDEDE;
		border-right:solid 1px #DEDEDE;
		border-bottom:none;
		border-left:solid 1px #DEDEDE;
	}
	ul.list_col_bordered > li:last-child {
		border-bottom:solid 1px #DEDEDE;
	}
}

/* .list_form */
.list_form {
	padding:0 0 2em;
	margin:2em 0 0;
	border-bottom:solid 1px #DEDEDE;
}
.list_form .ex { color:#858585; }
.list_form .error {
	color:#f73b1e;
	background-color:#f5dcdc;
	padding:0.11em;
}
.list_form small {
	color:#858585;
	display:block;
}
.list_form small.inline { display:inline; }

div.list_form dt {
	
	font-weight:bold;
	color:inherit;
	position:relative;
	padding-right:1em;
	
	width:25%;
}
div.list_form dt > span {
	position:absolute;
	right:1em;
	display:inline-block;
	padding:0 0.7em;
	background-color:#f73b1e;
	color:#fff;
}
div.list_form dd { width:auto; }

@media screen and (max-width:767px) {
	div.list_form dt {
		padding-right:0;
		width:auto;
	}
	div.list_form dt > span { right:0; }
}

/* list_entry style */
div.list_entry {
	border-top: none;
}
div.list_entry dl {
	background-color:#fcfcd7;
	padding-left:1em;
	padding-right:1em;
	margin-bottom:0.5em;
	border:solid 1px #d0d0b8;
	
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}
div.list_entry dt {
	padding-right:2em;
	text-align:right;
	width:14%;
	color:inherit;
}
div.list_entry dt > span {
	position:static;
	margin-left:0.5em;
}

@media screen and (max-width:767px) {

	div.list_entry dt {
		width:auto;
		text-align:left;
		padding:1em 0 0;
	}
}


/* list_inquiry style */
div.list_inquiry {
	border-top: none;
}
div.list_inquiry dl {
	background-color:#edf4f7;
	padding-left:1em;
	padding-right:1em;
	margin-bottom:0.5em;
	border:solid 1px #d2d2d2;
	
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}
div.list_inquiry dt {
	padding-right:2em;
	text-align:right;
	width:25%;
	color:inherit;
}
div.list_inquiry dt > span {
	position:static;
	margin-left:1em;
}

@media screen and (max-width:767px) {

	div.list_inquiry dt {
		width:auto;
		text-align:left;
		padding:1em 0 0;
	}
}

/* list_auth style */
.list_auth {
	border:solid 4px #e5bd5d;
	background:#f6f4cd;
	color:#535353;
	padding:2em 0;
	text-align:center;
	margin-bottom:16px;
}


/* list style */
ul.list_border {}
ul.list_border li {
	border-bottom:solid 2px #cad6db;
	padding:0.5em 0;
}
ul.list_border li:last-child { border-bottom:none; }


/* list_faq */
.list_faq {
	border:solid 1px #e8e8e8;
	padding:0 12px;
}

.list_faq > li {
	border-bottom:solid 1px #e8e8e8;
	padding:16px 0;
}

.list_faq > li:last-child { border-bottom:none; }

.list_faq_title {
	font-size:114%;
	font-weight:bold;
	padding:0.5em 0 0.5em 2.5em;
	margin-bottom:0.5em;
	
	background-image:url(../img/icon_Q.png);
	background-repeat:no-repeat;
	background-position:left top;
}

.list_faq .accordion_title:before {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	margin: auto 1em auto auto;
	width: 1em;
	height: 1em;
	text-align: center;
	content: "\e92a";
	font-family: 'icomoon' !important;
	color: #858585;
}
.list_faq .active {
	-webkit-border-top-left-radius: 4px;
	-webkit-border-top-right-radius: 4px;
	-moz-border-radius-topleft: 4px;
	-moz-border-radius-topright: 4px;
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
	-webkit-border-bottom-right-radius: 0;
	-webkit-border-bottom-left-radius: 0;
	-moz-border-radius-bottomright: 0;
	-moz-border-radius-bottomleft: 0;
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}
.list_faq .active:before {
	content: "\e9ce";
	font-family: 'icomoon' !important;
}
.list_faq_text {
	
	padding:0 0 0 3em;
	background-image:url(../img/icon_A.png);
	background-repeat:no-repeat;
	background-position:left top;
	min-height: 3em;
}


/* sitemap_list */
.list_arrow {
	border:solid 1px #e8e8e8;
	padding:1em;
}
.list_arrow > li {
	padding-bottom:0.5em;
	margin-bottom:0.5em;
	border-bottom:solid 1px #e8e8e8;
}
.list_arrow > li small {
	margin-right:0.5em;
	font-size:100%;
}

.list_arrow > li:last-child {
	border-bottom:none;
	padding-bottom:0;
	margin-bottom:0;
}

.list_arrow > li > a {
	background-image:url(../img/icon_arrow_right.png);
	background-repeat:no-repeat;
	background-position:left center;
	
	padding:0 0 0 1em;
	text-decoration:none;
}

.error {
	color:red;
}