@charset "shift_jis";

#contents-inner h2,h3,h4,p,ul,li,dl,dt,dd {
	margin: 0;
	padding: 0;
}
#contents-inner img {
	vertical-align: bottom;
}

/* soft-title */
#soft-title {
	background: #FDD000;
}
#soft-title h1 {
	min-width: 298px;
	margin: 0;
	padding: 8px;
	color: #000;
	border-left: 6px solid #0096C8;
	font-size: 12px;
}
#soft-title h1 .hard {
	margin-right: 8px;
	color: #0096C8;
}

/* main-title */
#main-title {
	background: url(../img/main_title_bg.png) left top repeat-y;
	background-size: 100%;
}
#main-title h2 {
	position: relative;
	top: 0;
	z-index: 10;
}
#main-title .previous {
	position: relative;
	top: -3.5em;
}
#main-title .previous .btn {
	width: 60%;
	margin: 0 auto;
}

#main-title .homework  {
	position: relative;
	top: -1.9em;
	background: url(../img/main_hw_bg.png) left top no-repeat;
	background-size: 100%;
}

#section04 .homework  {
	background: url(../img/section04_hw_bg.png) left top no-repeat;
	background-size: 100%;
}

#main-title .chara-intro {
	position: relative;
	top: -2.2em;
	padding: 0 0 1em 0;
	background: url(../img/main_chara_intro_bg.png) left top repeat-y;
	background-size: 100%;
}
#main-title .chara-intro .mashiko,
#main-title .chara-intro .yamamura {
	list-style: none;
	width: 100%;
}
#main-title .chara-intro .mashiko .chara,
#main-title .chara-intro .yamamura .chara,
#main-title .chara-intro .mashiko .intro,
#main-title .chara-intro .yamamura .intro {
	float: left;
	margin: 0;
	padding: 0;
}
#main-title .chara-intro .mashiko .chara,
#main-title .chara-intro .yamamura .chara {
	width: 40%;
}
#main-title .chara-intro .mashiko .intro,
#main-title .chara-intro .yamamura .intro {
	width: 60%;
}
#main-title .chara-intro .mashiko .intro .img02,
#main-title .chara-intro .mashiko .intro .img03 {
	float: left;
}
#main-title .chara-intro .mashiko .intro .img02 {
	width:45%;
}
#main-title .chara-intro .mashiko .intro .img03 {
	width:55%;
}

/* section common */
#section01,
#section02 {
	background: url(../img/section_bg.png) left top repeat-y;
	background-size: 100%;
}
#section01 {
	position: relative;
	top: -2.8em;
	padding: 1em 0 0 0;
}
#section02 {
	padding: 1em 0;
}
#section01 .talk,
#section02 .talk {
	margin: 0 0 1em 0;
}

/* next */
#next {
	background: url(../img/next_bg.png) left top no-repeat;
	background-size: 100%;
}
#next p {
	width: 94%;
	margin: 0 3%;
	padding: 1.4em 0;
}

/* section01 */
#section01 .course-mashiko,
#section01 .course-yamamura {
	background: url(../img/section01_course_bg.png) left top no-repeat;
	background-size: 100%;
}
#section01 .thumb {
	display: block;
	width: 94%;
	margin: 0 3%;
}
#section01 .ya08 {
	margin: 50% 0 1em 0;
}
#section01 .ya08 .balloon {
	width: 90%;
	margin: -55% 0 0 -10%;
}

#section01 .ma09 {
	background-color: #FFFFFF;
	background-image: url(../img/chara_ma09_top_bg.png), url(../img/chara_ma09_btm_bg.png);
	background-position: left top, left bottom;
	background-repeat: no-repeat, no-repeat;
	background-size: 100%, 100%;
}
#section01 .ma09-inner {
	display: table;
	width: 100%;
}
#section01 .ma09 .chara,
#section01 .ma09 .txt {
	display: table-cell;
	vertical-align: middle;
}
#section01 .ma09 .chara {
	width: 19%;
}
#section01 .ma09 .txt {
	width: 81%;
	animation: move 0.7s ease-in-out 0s infinite alternate;
	-webkit-animation: move 0.7s ease-in-out 0s infinite alternate;
	-ms-animation: move 0.7s ease-in-out 0s infinite alternate;
}
@keyframes move {
	from {
		transform: scale(1);
	}
	to {
		transform: scale(1.2);
	}
}
@-webkit-keyframes move {
	from {
		-webkit-transform: scale(1);
	}
	to {
		-webkit-transform: scale(1.2);
	}
}

#section01 .duel-rule {
	background: url(../img/duel_rule_bg.png) left top no-repeat;
	background-size: 100%;
}
#section01 .duel-start {
	background: url(../img/duel_start_bg.png) left bottom no-repeat;
	background-size: 100%;
}

/* section02 */
#section02 .ya14 {
	background-color: #FFFFFF;
	background-image: url(../img/chara_ya14_top_bg.png), url(../img/chara_ya14_btm_bg.png);
	background-position: left top, left bottom;
	background-repeat: no-repeat, no-repeat;
	background-size: 100%, 100%;
}
#section02 .ya14-inner {
	display: table;
	width: 100%;
}
#section02 .ya14 .txt,
#section02 .ya14 .chara {
	display: table-cell;
	vertical-align: middle;
}
#section02 .ya14 .txt {
	width: 83.25%;
}
#section02 .ya14 .txt01 {
	width: 100%;
}
#section02 .ya14 .txt-inner {
	display: table;
	width: 100%;
}
#section02 .ya14 .txt-inner .left,
#section02 .ya14 .txt-inner .right {
	display: table-cell;
	vertical-align: middle;
}
#section02 .ya14 .txt-inner .left {
	width: 60%;
}
#section02 .ya14 .txt02,
#section02 .ya14 .txt05 {
	width: 100%;
}
#section02 .ya14 .txt-inner .right {
	width: 40%;
}
#section02 .ya14 .chara {
	width: 16.25%;
}
#section02 .ya19 .balloon {
	width: 90%;
	margin: -55% 0 0 -10%;
}
#section02 .score_img01 ,
#section02 .score_img02 {
	display: block;
}
#section02 .score_img01 {
	margin: 0 0 5em 0;
}
#section02 .score_img02 {
	margin: 0 0 10em 0;
}
#section02 .ma21 {
	margin: 0 0 -1.5em 0;
}
#section02 .ma21-mame {
	position: relative;
	display: block;
	width: 15.65%;
	margin: -5% 14% 0 70.35%;
	z-index: 10;
}
#section02 .ya26 {
	margin: 0 0 -0.5em 0;
}
#section02 .ya26-mame {
	position: relative;
	display: block;
	width: 11.5%;
	margin: -5% 46% 0 42.5%;
	z-index: 10;
}












/*#section02 .course-yamamura {
	background: url(../img/section02_course_bg.png) left top no-repeat;
	background-size: 100%;
}
#section02 .course-yamamura ol,li,dl,dt,dd {
	list-style: none;
	margin: 0;
	padding: 0;
}
#section02 .ya08 {
	margin: -17% 0 1em 0;
}*/

/* section03 */













/*#section03 .ma16 {
	background-color: #FFFFFF;
	background-image: url(../img/chara_ma24_top_bg.png), url(../img/chara_ma24_btm_bg.png);
	background-position: left top, left bottom;
	background-repeat: no-repeat, no-repeat;
	background-size: 100%, 100%;
}
#section03 .ma16 .ma16-inner {
	display: table;
	width: 100%;
}
#section03 .ma16 .chara,
#section03 .ma16 .txt {
	display: table-cell;
	vertical-align: middle;
}
#section03 .ma16 .chara {
	overflow: hidden;
	width: 18%;
}
#section03 .ma16 .txt {
	width: 82%;
	vertical-align: top;
}
#section03 .ma16 .txt01 {
	width: 25%;
	animation: move 1s ease-in-out 0s infinite alternate;
	-webkit-animation: move 1s ease-in-out 0s infinite alternate;
	-ms-animation: move 1s ease-in-out 0s infinite alternate;
}
@keyframes move {
	from {
		transform: scale(1);
	}
	to {
		transform: scale(1.3);
	}
}
@-webkit-keyframes move {
	from {
		-webkit-transform: scale(1);
	}
	to {
		-webkit-transform: scale(1.3);
	}
}
#section03 .ma16 .txt02 {
	width: 100%;
}*/

/* section04 */













/*#section04 .ma24 {
	background-color: #FFFFFF;
	background-image: url(../img/chara_ma24_top_bg.png), url(../img/chara_ma24_btm_bg.png);
	background-position: left top, left bottom;
	background-repeat: no-repeat, no-repeat;
	background-size: 100%, 100%;
}
#section04 .ma24 .ma24-inner {
	display: table;
	width: 100%;
}
#section04 .ma24 .chara,
#section04 .ma24 .txt {
	display: table-cell;
	vertical-align: middle;
}
#section04 .ma24 .chara {
	overflow: hidden;
	width: 18%;
}
#section04 .ma24 .txt {
	width: 82%;
	vertical-align: top;
}
#section04 .ma24 .txt01,
#section04 .ma24 .txt02 {
	width: 100%;
}
#section04 .ma29 {
	padding: 120% 0 0 0;
	background: url(../img/chara_ma29_bg.png) left bottom no-repeat;
	background-size: 100%;
}

#section04 .homework  {
	background: url(../img/section04_hw_bg.png) left top no-repeat;
	background-size: 100%;
}
#section04 .ya34 {
	margin: -11% 0 1em 0;
}*/

/* spec */
#spec {
	margin-bottom: 15px;
	padding-top: 20px;
	text-align: center;
}
#spec .back-btn {
	margin: 0 0 15px;
	text-align: center;
}
#spec .spec-border01 {
	padding: 15px 0 0;
	border-top: 1px solid #000;
}
#spec .logo {
	margin-bottom: 20px;
}
#spec .title {
	margin-bottom: 20px;
	font-size: 16px;
	font-weight: bold;
}
#spec .hardware {
	margin-top: 14px;
	margin: 20px 0;
}
#spec .official {
	position: relative;
	width: 250px;
	margin: 0 auto 20px;
}
#spec .official a {
	display: block;
	border-radius: 8px;
	padding: 18px 0;
	color: #FFF;
	text-decoration: none;
	background-repeat: no-repeat;
	background-position: 226px center;
	background-color: #E7340C;
	background-image: url(../img/official_arrow.png);
	background-size: 17px 17px;
	font-size: 15px;
}
#spec .copy {
	display: block;
	padding: 0 10px;
	margin-bottom: 20px;
	color: #FFF;
	text-align: center;
	font-size: 10px;
	line-height: 1.4;
}

.top-adjust {
    position: relative;
	top: -2.8em;
}

/* clearfix */
.clearfix:after {
	content: '';
	display: block;
	clear: both;
}