@charset "utf-8";
#wrapper>div {
	position: relative;
	padding: 10px 20px 43px;
	background-color: #f9f8f4;
	border: solid 3px #fff;
	border-radius: 10px;
	box-shadow: inset 0 0 0px 1px #ecece2, inset 0 0 3px 2px #fff;
}

#content-body::before,
#content-body::after {
	content: "";
	display: table;
}

#content-body::after {
	clear: both;
}

h2 {
	width: 295px;
	padding: 15px 0;
	margin: 0 0 20px;
	background-color: #fff;
	font-size: 24px;
	text-align: center;
	color: #532f39;
}

#small-nav {
	display: none;
}


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


/* サイドナビ */

#side-nav {
	float: left;
	width: 295px;
}

#side-nav ul {
	list-style: none;
	text-align: center;
}

#side-nav li a {
	position: relative;
	display: block;
	width: 100%;
	height: 39px;
	margin-bottom: 20px;
	border: solid 1px #b5b5b3;
	border-radius: 6px;
	box-sizing: border-box;
	color: #000;
	white-space: nowrap;
	text-decoration: none;
	line-height: 39px;
	vertical-align: middle;
	font-weight: bold;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5), 0 1px 2px #ccc;

	background: #cfcdce;
	background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2NmY2RjZSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNiZGJkYmQiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
	background: -moz-linear-gradient(top, #cfcdce 0%, #bdbdbd 100%);
	background: -webkit-linear-gradient(top, #cfcdce 0%, #bdbdbd 100%);
	background: linear-gradient(to bottom, #cfcdce 0%, #bdbdbd 100%);
	filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#cfcdce', endColorstr='#bdbdbd', GradientType=0);
}

#side-nav li a span {
	display: block;
	text-shadow: 2px 2px 1px #FFF, -2px 2px 1px #FFF, 2px -2px 1px #FFF, -2px -2px 1px #FFF;
	filter: dropshadow(color=#FFFFFF, offX=0, offY=-2) dropshadow(color=#FFFFFF, offX=2, offY=0) dropshadow(color=#FFFFFF, offX=0, offY=2) dropshadow(color=#FFFFFF, offX=-2, offY=0);
}

#side-nav li a::before,
#side-nav li a::after {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	width: 0;
	height: 0;
	margin: 0 auto;
	border-color: transparent;
	border-width: 9px;
	border-style: solid;
}

#side-nav li a::before {
	bottom: -18px;
	border-top-color: #b5b5b3;
}

#side-nav li a::after {
	bottom: -16px;
	border-top-color: #bebebe;
}

#side-nav li.current a,
#side-nav li a:hover {
	border-color: #c98500;
	background: #ffa101;
	background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmYTEwMSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNlZTc1MDAiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
	background: -moz-linear-gradient(top, #ffa101 0%, #ee7500 100%);
	background: -webkit-linear-gradient(top, #ffa101 0%, #ee7500 100%);
	background: linear-gradient(to bottom, #ffa101 0%, #ee7500 100%);
	filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#ffa101', endColorstr='#ee7500', GradientType=0);
}

#side-nav li.current a::before,
#side-nav li a:hover::before {
	border-top-color: #c98500;
}

#side-nav li.current a::after,
#side-nav li a:hover::after {
	border-top-color: #ee7500;
}

#side-nav li:last-child a::before,
#side-nav li:last-child a::after {
	content: none;
}


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


/* 動画 */

#movie-block {
	float: right;
	display: inline-block;
	position: relative;
	height: 498px;
}

#player-container {
	width: 562px;
	height: 316px;
	padding: 6px;
	background-color: #f9f8f4;
	border-radius: 5px;
	box-shadow: inset 0 0 8px #ccc;
}

#youtube-player {
	width: 100%;
	height: 100%;
	background-color: #000;
}

#subtitles {
	position: absolute;
	bottom: 15px;
	width: 100%;
	height: 77px;
	padding: 6px;
	border-radius: 6px;
	box-shadow: inset 2px 2px 8px #ccc;
	background-color: #fff;
	background: -webkit-linear-gradient(top, #ffffff 0%, #e7f0eb 100%);
	background: linear-gradient(to bottom, #ffffff 0%, #e7f0eb 100%);
	box-sizing: border-box;
	word-break: break-all;
	line-height: 1.5;
}

#movie-block.hidden {
	visibility: hidden;
}

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


/* グローバルナビ */

#grobal-nav {
	position: relative;
	margin-top: -43px;
}

#grobal-nav-sp {
	display: none;
}

#grobal-nav ul {
	width: 899px;
	height: 73px;
	margin: auto;
	background: url(../img/grobal-navi-bg.png) no-repeat;
}

#grobal-nav ul::before,
#grobal-nav ul::after {
	content: "";
	display: table;
}

#grobal-nav ul::after {
	clear: both;
}

#grobal-nav li {
	float: left;
	height: 100%;
}

#grobal-nav li:nth-child(1) {
	width: 157px;
}

#grobal-nav li:nth-child(2) {
	width: 139px;
}

#grobal-nav li:nth-child(3) {
	width: 219px;
}

#grobal-nav li:nth-child(4) {
	width: 139px;
}

#grobal-nav li:nth-child(5) {
	width: 107px;
}

#grobal-nav li:nth-child(6) {
	width: 137px;
}

#grobal-nav a {
	display: block;
	width: 100%;
	height: 100%;
	background-image: url(../img/grobal-navi-bg.png);
	background-position: 0 146px;
	background-repeat: no-repeat;
	overflow: hidden;
	text-indent: 105%;
	white-space: nowrap;
}

#grobal-nav li:nth-child(1) a:hover,
#grobal-nav li.current_grobal:nth-child(1) a {
	background-position: 0 100%;
}

#grobal-nav li:nth-child(2) a:hover,
#grobal-nav li.current_grobal:nth-child(2) a {
	background-position: -157px 100%;
}

#grobal-nav li:nth-child(3) a:hover,
#grobal-nav li.current_grobal:nth-child(3) a {
	background-position: -296px 100%;
}

#grobal-nav li:nth-child(4) a:hover,
#grobal-nav li.current_grobal:nth-child(4) a {
	background-position: -515px 100%;
}

#grobal-nav li:nth-child(5) a:hover,
#grobal-nav li.current_grobal:nth-child(5) a {
	background-position: -654px 100%;
}

#grobal-nav li:nth-child(6) a:hover,
#grobal-nav li.current_grobal:nth-child(6) a {
	background-position: -761px 100%;
}


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


/* 確認テスト */

.exam {
	display: none;
	width: 580px;
	height: 470px;
	padding: 5px;
	border-radius: 5px;
	background-color: #c6c6c6;
	box-sizing: border-box;
	position: absolute;
	z-index: 2;
	top: 18px;
	right: 18px;
}

.exam > .inner {
	position: relative;
	width: 100%;
	height: 100%;
	background-color: #f1f1f1;
	background-image: url(../img/exam-grad.png);
	background-repeat: repeat-x;
}
.exam > .inner::after {
	content: "";
	display: block;
	position: absolute;
	z-index: 1;
	top: 3%;
	left: 0;
	width: 100%;
	height: 0;
	padding-bottom: 7%;
	background-image: url(../img/midashi-kakunin.png);
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: auto 100%;
}

.exam .question,
.exam .commentary {
	position: relative;
	width: 100%;
	height: 100%;
}

.exam .overlay {
	display: none;
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(255, 255, 255, 0.5);
	background-position: 50% 42%;
	background-repeat: no-repeat;
	cursor: pointer;
}

.exam .overlay.valid {
	background-image: url(../img/valid.png);
}

.exam .overlay.invalid {
	background-image: url(../img/invalid.png);
}

.exam img {
	position: absolute;
	top: 0;
	left: 0;
}

.exam button {
	position: absolute;
	bottom: 34px;
	width: 249px;
	height: 62px;
	border: none;
	outline: none;
	background-repeat: no-repeat;
	background-color: transparent;
/*
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
*/
	cursor: pointer;
}

.exam button:hover {
	background-position: 100% 100%;
}

.exam .yes-button {
	left: 24px;
	background-image: url(../img/yes-button.png);
}

.exam .no-button {
	right: 24px;
	background-image: url(../img/no-button.png);
}

.exam .next-button {
	left: 160px;
	background-image: url(../img/next-button.png);
}

.exam .commentary {
	display: none;
}


/* 修了ボタンの付与 */
#side-nav li.syuryo{
  position: relative;
}

#side-nav li.syuryo::before{
  display: block;
  content: "";
  width:42px;
  height: 22px;
  background: url(../img/syuryo-button.png) no-repeat;
  position: absolute;
  z-index: 999;
  top: -5px;
  left: -4px;
  box-shadow: 1px 1px 5px rgba(0,0,0,0.5);

}

#grobal-nav li.syuryo{
  position: relative;
}

#grobal-nav li.syuryo::before{
  display: block;
  content: "";
  width:42px;
  height: 22px;
  background: url(../img/syuryo-button.png) no-repeat;
  position: absolute;
  z-index: 999;
  top: 8px;
  left: 8px;
  box-shadow: 1px 1px 5px rgba(0,0,0,0.5);
}

#grobal-nav-sp li.syuryo{
  position: relative;
}

#grobal-nav-sp li.syuryo::before{
  display: block;
  content: "";
  width:20px;
  height: 18px;
  background: url(../img/syuryo-button-sp.png) no-repeat;
  background-size: cover;
  position: absolute;
  z-index: 999;
  top: 0;
  left: 0;
  box-shadow: 1px 1px 5px rgba(0,0,0,0.5);
}


