/*! HTML5 Boilerplate v5.0 | MIT License | http://h5bp.com/ */

html {
    color: #222;
    font-size: 1em;
    line-height: 1.4;
}

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

.browserupgrade {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}


/* ==========================================================================
   Author's custom styles
   ========================================================================== */
body{
	font-family:"メイリオ", "Hiragino Kaku Gothic Pro", sans-serif;
	background: url(../../images/training/bg.png) repeat;
	font-size:14px;
}

a{
	color:#1a3469;
	text-decoration:underline;
}

.mt50{
	margin-top:50px;
}

.mb20{
	margin-bottom:20px;
}

.cau{
	font-size:11px;
	margin-left:30px;
}

strong{
	color:#C00;
}

#header_wrap{
	width:1000px;
	margin:0 auto;
}

.header_bg{
	margin-top:25px;
	background-color:#f1f1f0;
	height:250px;
	position:relative;
}
.header_img{
	width:1000px;
	text-align:center;
	position:absolute;
	bottom:-15px;
	left:50%;
	margin-left:-500px;
}

main{
	width:1000px;
	margin:15px auto;
}

.desc{
	position: relative;
	background-color:#FFF;
	margin:0 15px;
	padding:10px;
	border:#666666 1px solid;
	border-radius:5px;
}

.desc h2{
  position: relative;
  color: #fff;
  background: #004ea2;
  font-size: 20px;
  line-height: 1;
  margin: 5px -21px 10px -21px;
  padding: 15px 5px 10px 40px;
  box-shadow: 0 1px 3px #444;
}

h2:after,h2:before {
  content: "";
  position: absolute;
  top: 100%;
  height: 0;
  width: 0;
  border: 5px solid transparent;
  border-top: 6px solid #1a3469;
}

h2:after {
  left: 0;
  border-right: 6px solid #1a3469;
}

h2:before {
  right: 0;
  border-left: 6px solid #1a3469;
}

.desc > p{
	line-height:1.8;
}

h3{
	padding-top:15px;
	margin-top:0;
	font-weight:normal;
	font-size:16px;
	font-weight: bold;
	color:#1a3469;
	border-bottom:#1a3469 1px dashed;
	text-indent:0.5em;
	clear:both;
}

ul.ancer{
	margin:0 20px;
	padding: 0;
	font-size: 14px;
	list-style: none;
	}

ul.ancer li{
	border-bottom:#CCC 1px dotted;
	position:relative;
	}

ul.ancer li a{
	color:#1a3469;
}

ul.ancer li a:hover{
	color:#8cc3ff;
	}

.ancer time{
	float: left;
	border: none;
	padding-left:18px;
	}

.ancer p{
	margin-left:135px;
	font-size: 14px;
	}

.ancer{
	color:#1a3469;
	font-size: 12px;
	}

ul.ancer li:before{
	position: absolute;
	left:0;
	top: 0;
	content: '\f063';
	font-family: 'FontAwesome';
}

ul.ancer li a:after{
	content: "";
/*	display: block; */
	clear: both;
	}

ul.ancer li a{	*zoom: 1;}


.course{
	position: relative;
	background-color:#FFF;
	margin:20px 15px;
	padding:15px;
	border:#cccccc 1px solid;
}
	
.course:before, .course:after{
  z-index: -1;
  position: absolute;
  content: "";
  bottom: 15px;
  left: 10px;
  width: 50%;
  top: 95%;
  max-width:300px;
  background: #777;
  -webkit-box-shadow: 0 15px 10px #777;
  -moz-box-shadow: 0 15px 10px #777;
  box-shadow: 0 15px 10px #777;
  -webkit-transform: rotate(-3deg);
  -moz-transform: rotate(-3deg);
  -o-transform: rotate(-3deg);
  -ms-transform: rotate(-3deg);
  transform: rotate(-3deg);
}

.course:after{
	  -webkit-transform: rotate(3deg);
  -moz-transform: rotate(3deg);
  -o-transform: rotate(3deg);
  -ms-transform: rotate(3deg);
  transform: rotate(3deg);
  right: 10px;
  left: auto;
}

.right{
	float:right;
	margin-left:10px;
	margin-bottom:10px;
}

.txt_center{	text-align:center; }

mark{
	background-color:#fbacbc;
}

.icn_close{
	background-color:#C00;
	color:#FFF;
	font-size:14px;
	border-radius:5px;
	padding:3px 10px;
	margin:0 10px;
}

table{
	width:92%;
	margin:20px;
	border-collapse:collapse;
	border:#666 1px solid;
}

th, td{
	border:#666 1px solid;
	padding:10px;
	white-space:nowrap;
}

.ttl{
	background-color:#004ea2;
	color:#FFF;
	font-size:20px;
}

th{
	background-color:#dcedff;
	font-weight:normal;
	white-space:nowrap;
}

ol{
	width:610px;
	margin:0;
	padding-left:30px;
}

ol > li{
	width:45%;
	float:left;
	padding-right:2em;
	white-space:normal;
}

ul{
	margin-left:-2em;
	list-style:disc;
}

footer{
	background-color:#1a3469;
	color:#FFF;
	padding:15px 0;
	text-align:center;
}

footer small{
	font-size:14px;
}

small a{
	color:#CCC;
	text-decoration:underline;
}

.button {
	display: inline-block;
	outline: none;
	cursor: pointer;
	text-align: center;
	text-decoration: none;
	font-size: 18px;
	padding: 0.8em 2em 0.8em;
	text-shadow: 0 1px 1px rgba(0,0,0,.6);
	-webkit-border-radius: .5em; 
	-moz-border-radius: .5em;
	border-radius: .5em;
	-webkit-box-shadow: 0 1px 2px rgba(0,0,0,.2);
	-moz-box-shadow: 0 1px 2px rgba(0,0,0,.2);
	box-shadow: 0 1px 2px rgba(0,0,0,.2);
}
.button:hover {
	text-decoration: none;
}
.button:active {
	position: relative;
	top: 1px;
}

.orange {
	color: #fef4e9;
	border: solid 1px #da7c0c;
	background: #f78d1d;
	background: -webkit-gradient(linear, left top, left bottom, from(#faa51a), to(#f47a20));
	background: -moz-linear-gradient(top,  #faa51a,  #f47a20);
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#faa51a', endColorstr='#f47a20');
}
.orange:hover {
	background: #f47c20;
	background: -webkit-gradient(linear, left top, left bottom, from(#f88e11), to(#f06015));
	background: -moz-linear-gradient(top,  #f88e11,  #f06015);
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#f88e11', endColorstr='#f06015');
}
.orange:active {
	color: #fcd3a5;
	background: -webkit-gradient(linear, left top, left bottom, from(#f47a20), to(#faa51a));
	background: -moz-linear-gradient(top,  #f47a20,  #faa51a);
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#f47a20', endColorstr='#faa51a');
}

.gray {
	color: #fef4e9;
	border: solid 1px #3E3E3E;
	background: #666;
	background: -webkit-gradient(linear, left top, left bottom, from(#999), to(#666));
	background: -moz-linear-gradient(top,  #999,  #666);
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#999', endColorstr='#666');
}

.pagetop {
    display: none;
    position: fixed;
    bottom: 30px;
    right: 30px;
}
.pagetop a {
    display: block;
    background-color: #ccc;
    text-align: center;
    color: #fff;
    font-size: 24px;
    text-decoration: none;
    padding: 15px 20px;
}
 
.pagetop a:hover {
    display: block;
    background-color: #222;
    text-align: center;
    color: #fff;
    font-size: 24px;
    text-decoration: none;
    padding: 15px 20px;
}

.ninja_onebutton{
	padding-top:15px;
	margin-left:25px;
	margin-bottom:10px;
}


/* ==========================================================================
   Media Queries
   ========================================================================== */

@media only screen and (min-width: 35em) {

}

@media print,
       (-o-min-device-pixel-ratio: 5/4),
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 120dpi) {

}

/* ==========================================================================
   Helper classes
   ========================================================================== */

.hidden {
    display: none !important;
    visibility: hidden;
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

.invisible {
    visibility: hidden;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}

/* ==========================================================================
   Print styles
   ========================================================================== */

@media print {
    *,
    *:before,
    *:after {
        background: transparent !important;
        color: #000 !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}