@charset "utf-8";

/*----------------------------------------------------------------------
   Common Style
----------------------------------------------------------------------*/

h1,
h2,
h3,
h4,
h5,
h6 {
	margin-top:20px;
}

p, ul, ol, dl, blockquote, pre, table, address {
	margin-top:20px;
}

/*----------------------------------------------------------------------
 見出し
----------------------------------------------------------------------*/

.h-1 {
	border-bottom:3px #0041ac solid;
	font-size:35px;
  line-height:1;
	margin:30px 0;
  padding:0 10px 10px;
}

.h-4 {
	border-bottom:1px #000 dotted;
	font-size:105%;
	font-weight:bold;
	padding-left:5px;
}

[lang=en] .h-4 {
  line-height:1.4;
	padding-bottom:5px;
}

.h-2 {
	clear:both;
	color:#0865cd;
	font-size:220%;
	font-weight:bold;
	line-height:0.5 !important;
	margin-top:0;
	padding-top:60px;
	position:relative;
	text-align:center;
}

[lang=en] .h-2 {
  line-height:1 !important;
}

.h-2:after {
	background-color:#0865cd;
	content:"";
	display:block;
	font-size:0;
	height:2px;
	line-height:1;
	margin:20px auto 0;
	width:600px;
}

.h-3 {
	border-left:4px #0865cd solid;
	clear:both;
	color:#0865cd;
	font-size:140%;
	font-weight:bold;
	line-height:1 !important;
	margin-top:30px;
	padding:12px 0 10px 15px;
}

.h-6 {
	clear:both;
	font-size:120%;
	font-weight:bold;
}

/*----------------------------------------------------------------------
  ol
----------------------------------------------------------------------*/

ol li {
	margin-left:2em;
	padding-left:0;
}

ol li ul li {
	margin-left:0;
}

ul ol li {
	list-style:decimal outside;
}


/*----------------------------------------------------------------------
  ul
----------------------------------------------------------------------*/

ul.list > li {
	background:url(../../img/common/icon_ul.gif) no-repeat 0.5em 0.6em;
	margin-top:0.5em;
	padding-left:1.5em;
}

ul.arrow li {
	margin-top:0.5em;
	margin-left:5px;
	padding-left:1.5em;
}

ul.arrow li:before{
	content:url(../../img/common/icon_arrow_07.png);
	display:inline-block;
	float:left;
	vertical-align:middle;
	text-indent:-20px;
}

ul.list-files > li {
	margin-top:15px;
	padding-left:40px;
}

ul.list-files > li:before {
	display:inline-block;
	float:left;
	margin-top:-5px;
	text-indent:-40px;
	vertical-align:middle;
}

ul.list-files > li.doc:before,
ul.list-files > li.docx:before,
ul.list-files > li.DOC:before,
ul.list-files > li.DOCX:before {
	content:url(../../img/common/icon_doc.png);
}

ul.list-files > li.ppt:before,
ul.list-files > li.pptx:before,
ul.list-files > li.PPT:before,
ul.list-files > li.PPTX:before {
	content:url(../../img/common/icon_ppt.png);
}

ul.list-files > li.xls:before,
ul.list-files > li.xlsx:before,
ul.list-files > li.XLS:before,
ul.list-files > li.XLSX:before {
	content:url(../../img/common/icon_xls.png);
}

ul.list-files > li.pdf:before,
ul.list-files > li.PDF:before {
	content:url(../../img/common/icon_pdf.png);
}

ul.list-files > li.zip:before,
ul.list-files > li.ZIP:before {
	content:url(../../img/common/icon_zip.png);
}

/*  .notes
----------------------------------------------------------------------*/

ul.notes {
	padding-left:0;
}

.notes .body-notes {
	display:inline-block;
}

/*  .alignment
----------------------------------------------------------------------*/

.alignment {
  list-style:none;
}

.alignment > li {
  display:table;
}

.alignment > li > .head,
.alignment > li > .body {
  display:table-cell;
  vertical-align:top;
}

.alignment > li > .head {
  padding-right:0.75em;
  white-space:nowrap;
}

/*----------------------------------------------------------------------
  table
----------------------------------------------------------------------*/

table {
	border-collapse:collapse;
	border:none;
	border-spacing:0;
	font-size:100%;
}

th,td {
	border:solid 1px #ccc;
	font-weight:normal;
	padding:0.5em 1em;
	text-align:left;
	vertical-align:top;
}

thead.vrM *,
tbody.vrM * {
	vertical-align:middle;
}

thead th,
th.bg-thead {
	background-color:#e9e9e9 !important;
}

th {
	background-color:#f7f7f7;
	text-align:left;
}

caption {
	display:inline-block;
	padding-bottom:5px;
	text-align:left;
}

/*----------------------------------------------------------------------
  hr
----------------------------------------------------------------------*/

hr {
	border:none;
	border-top:1px #ccc dashed;
	clear:both;
	color:#fff;
	height:1px;
	margin-top:20px;
}

/*----------------------------------------------------------------------

  Layout

----------------------------------------------------------------------*/

/*----------------------------------------------------------------------
  .table
----------------------------------------------------------------------*/

.table {
	margin-top:17px;
}

.table dl {
	border-bottom:1px #ccc solid;
	display:table;
	margin-top:0;
	width:100%;
}

.table dl:first-child {
	border-top:1px #ccc solid;
}

.table dl dt,
.table dl dd {
	display:table-cell;
	padding:15px 20px;
}

.table dl dt {
	background-color:#f8f7f3;
	vertical-align:middle;
}

.table dl dd {
	padding-right:10px;
}

.table.th-s dt { width:20%; }
.table.th-sm dt { width:27%; }
.table.th-m dt { width:35%; }
.table.th-ml dt { width:42%; }
.table.th-l dt { width:50%; }

/*----------------------------------------------------------------------
  .adobe
----------------------------------------------------------------------*/

.adobe {
	clear:both;
	font-size:90%;
	overflow:hidden;
}

.adobe img {
	float:left;
	margin-right:20px;
}

/*----------------------------------------------------------------------
  .imgbox
----------------------------------------------------------------------*/

.imgbox {
	margin-top:40px;
	text-align:center;
}

/*----------------------------------------------------------------------
  .contents-nav
----------------------------------------------------------------------*/

.contents-nav {
	margin:30px 0;
}

.contents-nav ul {
	letter-spacing:-0.4em;
	margin:0;
  padding:0;
}

.contents-nav li {
	box-sizing:border-box;
	display:inline-block;
	letter-spacing:0;
	margin-left:10px;
	vertical-align:top;
	width:205px;
}

[lang=en] .contents-nav li {
	width:410px;
}

[lang=ja] .contents-nav li:nth-child(4n+1) {
	margin-left:0;
}

[lang=en] .contents-nav li:nth-child(2n+1) {
	margin-left:0;
}

[lang=en] .contents-nav li:nth-child(n + 3) {
	margin-top:10px;
}

.contents-nav a {
	align-items:center;
	background:#fcfcfc;
	border:4px #eee solid;
	box-sizing:border-box;
	color:#0865cd;
	display:flex;
	font-size:110%;
	font-weight:bold;
	height:80px;
	justify-content:center;
	line-height:1.3 !important;
	position:relative;
	text-align:center;
	text-decoration:none;
	transition:all .2s ease-in-out;
}

.contents-nav a:hover {
	background:#fffaf7;
	background:-prefix-linear-gradient(top, #ffffff, #fffaf7);
	background:linear-gradient(to bottom, #ffffff, #fffaf7);
	filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#ffffff',  endColorstr='#fffaf7');
	color:#F63;
}

.contents-nav a:after {
	border-top:1px #0865cd solid;
	border-right:1px #0865cd solid;
	bottom:7px;
	content:"";
	display:block;
	height:5px;
	left:0;
	line-height:1;
	margin:auto;
	position:absolute;
	right:0;
	transform:rotate(135deg);
	transition:all .2s ease-in-out;
	width:5px;
}

.contents-nav a:hover:after {
	border-color:#F63;
}

.contents-nav br {
	line-height:0 !important;
}