/*
YUI 3.18.1 (build f7e7bcb)
Copyright 2014 Yahoo! Inc. All rights reserved.
Licensed under the BSD License.
http://yuilibrary.com/license/
*/

html{color:#000;background:#FFF}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal}ol,ul{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;*font-size:100%}legend{color:#000}#yui3-css-stamp.cssreset{display:none}

/* ====================================
// フォント
==================================== */

@font-face {
font-family: 'use-IwaGTxtProN';
src: url("../../fonts/IwaGTxtProN-Hv.otf");
/*  src: url('IwaGTxtProN-Hv.woff') format('woff');*/
  font-display: swap;
}


/* ====================================
// フラッシュカード
==================================== */
@media print {
    * {
        display: none;
        opacity: 0;
        background: #fff;
    }
    img {
        display: none;
        opacity: 0;
        background: #fff;
    }
}

html,
body {
	margin: 0;
	padding: 0;
	/* width: 2048px;
	height: 1446px; 
	position: absolute;*/
	-webkit-user-select: none;
	   -moz-user-select: none;
	    -ms-user-select: none;
	        user-select: none;
}

html{
	width: 100%;
	height: 100%;
}

body{
	opacity: 0;
	font-family:"use-IwaGTxtProN","游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "メイリオ", Meiryo, serif;
	transform-origin: left top;
	width: 2048px;
	height: 1446px;
	opacity: 0;
	transition:opacity .5s;
}

body.load{
	opacity: 1;
}

#stage_0{
	margin:0 auto;
}

#stage_1{
	width: 2048px;
	height: 1446px;
}

body#body-flashcard{
	background-color: #ffffff;
}

body.start #flashcard,
body.start #flashcard-ui,
body.start div#btn-back,
body.start.countdown #countdown{
	display: block;
}

body.start #fcmenu,
body.start div#btn-drill{
	display: none;
}

#flashcard {
  overflow: hidden;
  width: 2048px;
  height: 1333px;
  -webkit-perspective: 5000;
  -o-perspective: 5000;
  -ms-perspective: 5000;
  perspective: 5000;
  position: absolute;
  background-color: #fff;
  display: none;
}
#flashcard li {
  position: absolute;
  width: 100%;
  height: 1270px;
  top:25px;
  text-align: center;
  visibility: hidden;
  background-color: #fff;
  font-family:"use-IwaGTxtProN","游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "メイリオ", Meiryo, serif;
}

#flashcard li span.verticalmode{
	text-align: center;
	font-size: 160px;
	height:1270px;
}

body.cardtype1 #flashcard li span.verticalmode,
body.cardtype2 #flashcard li span.verticalmode{
	font-size: 240px;
}

#flashcard li p.tal{text-align: left;line-height: 1.4;margin-top: 0.3em;}
#flashcard li p.tar{text-align: right;margin-bottom:0.3em;}

#flashcard li ruby{
	/* position: relative; */
	display: inline-flex;
	flex-direction: column-reverse;
	line-height: 1;
}

#flashcard li ruby rt{
	/* transform: translateX(-.6em); */
	text-align: center;
	text-align-last: justify;
}

#flashcard li span.fcr{
	color:#E51919;
}

#flashcard li span ruby rt{
	font-size:40px;
	/*letter-spacing: -1.3em;*/
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic","メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3","HIragino Kaku Gothic Pro W3","HIragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック", "MS P Gothic",sans-serif;
	font-weight: bold;
}

#flashcard li span.fcr ruby rt{
	color:#000;
}

body.cardtype2 #flashcard li ruby rt,
body.cardtype4 #flashcard li ruby rt{
	visibility: hidden;
}

body.cardtype2 #flashcard li ruby rt.visible,
body.cardtype4 #flashcard li ruby rt.visible{
	visibility: inherit;
}

#fcmenu{
	width: 2048px;
	height: 1446px;
	position: absolute;
	top:0;
	left: 0;
}

.verticalmode{
	writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-webkit-writing-mode: vertical-rl;
	-epub-writing-mode: vertical-rl;
}

#flashcard-ui{
	position: absolute;
	z-index:999;
	width: 2048px;
    height: 1446px;
	display: none;
}

#countdown{
	position: absolute;
	width: 100%;
	height: 1333px;
	display: none;
	z-index:1000;
}

#countdown div{
	position: absolute;
	width: 375px;
	height: 375px;
	top:50%;
	left: 50%;
	margin-top: -188px;
	margin-left: -188px;
	background-repeat: no-repeat;
	background-image: url("../images/img_countdown.png");
}

#countdown.cnt2 div{background-position: 0 -375px;}
#countdown.cnt1 div{background-position: 0 -750px;}

#flashcard-cardnum{
	position: absolute;
	bottom:18px;
	left:820px;
	color:#000;
	width: 400px;
	font-size:50px;
	text-align: center;
	font-weight: bold;
	font-family: "A-OTF じゅん Pro","ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

#flashcard-nextarea{
	position: absolute;
	top: 28px;
	left: 30px;
	width: 1986px;
	height: 1272px;
}

#flashcard-next{
	position: absolute;
	top:623px;
	left:0;
	background: url("../images/btn_prevcard.png") no-repeat;
	width: 102px;
	height: 136px;
	cursor: pointer;
}

#flashcard-back{
	position: absolute;
	top:623px;
	right:0;
	background: url("../images/btn_nextcard.png") no-repeat;
	width: 102px;
	height: 136px;
	cursor: pointer;
}

#flashcard-next:hover,
#flashcard-back:hover{
	background-position: 0 -136px;
}

#btn-back{
	width: 343px;
	height: 89px;
	position: absolute;
	bottom:0;
	left: 111px;
	background: url("../images/btn_back.png") no-repeat;
	cursor: pointer;
	display: block;
	z-index:1000;
}

div#btn-back:hover{
	background-position: 0 -89px;
}

div#btn-drill{
	width: 100px;
	height: 346px;
	position: absolute;
	top:550px;
	background-repeat: no-repeat;
	cursor: pointer;
}
body.drill1 div#btn-drill{background-image: url("../images/btn_drill2.png");left: 0px;}
body.drill2 div#btn-drill{background-image: url("../images/btn_drill1.png");right: 0px;}
div#btn-drill:hover{background-position: -100px 0;}

div#btn-drill a{
	display: block;
	width: 100%;
	height: 100%;
}

div#fcmenu-header{
	width: 1820px;
	height: 93px;
	border-top-left-radius: 20px;
	border-top-right-radius: 20px;
	position: absolute;
	left: 113px;
	top:69px;
	background-repeat: no-repeat;
	background-position: 33px 8px;
}

body.drill1 div#fcmenu-header{background-color: #F93986;background-image: url("../images/title_drill1.png");}
body.drill2 div#fcmenu-header{background-color: #006DFF;background-image: url("../images/title_drill2.png");}

div#fcmenu-btm{
	width: 1820px;
	height: 752px;
	border-bottom-left-radius: 20px;
	border-bottom-right-radius: 20px;
	position: absolute;
	left: 113px;
	top:162px;
	background-color: #fff;
}

div#fcmenu-btm div.btn-cardtype{
	width: 424px;
	height: 587px;
	float: right;
	background-repeat: no-repeat;
	margin:66px 19px 0 0;
	cursor: pointer;
}

div#fcmenu-btm div.btn-cardtype:nth-child(1){background-image: url("../images/cardtype1.png");margin-right: 35px;}
div#fcmenu-btm div.btn-cardtype:nth-child(2){background-image: url("../images/cardtype2.png");}
div#fcmenu-btm div.btn-cardtype:nth-child(3){background-image: url("../images/cardtype3.png");}
div#fcmenu-btm div.btn-cardtype:nth-child(4){background-image: url("../images/cardtype4.png");}
div#fcmenu-btm div.btn-cardtype:hover{background-position: 0 -587px;}

body.grade1 div#fcmenu-btm div.btn-cardtype:nth-child(1),
body.grade2 div#fcmenu-btm div.btn-cardtype:nth-child(1),
body.grade1 div#fcmenu-btm div.btn-cardtype:nth-child(2),
body.grade2 div#fcmenu-btm div.btn-cardtype:nth-child(2){
	display: none;
}

body.grade1 div#fcmenu-btm div.btn-cardtype:nth-child(3),
body.grade2 div#fcmenu-btm div.btn-cardtype:nth-child(3){
	background-image: url("../images/cardtype1_grade1.png");
	margin-right: 478px;
}

body.grade1 div#fcmenu-btm div.btn-cardtype:nth-child(4),
body.grade2 div#fcmenu-btm div.btn-cardtype:nth-child(4){
	background-image: url("../images/cardtype2_grade1.png");
}

div#fcsetting{
	width: 1823px;
	height: 334px;
	position: absolute;
	background: url("../images/bg_setting.png") no-repeat;
	left: 112px;
	top:973px;
}

div.fcmenu-radio{
	position: absolute;
	left:714px;
}

div#fcmenu1{
	top:53px;
}

div#fcmenu2{
	top:135px;
}

div#fcmenu3{
	top:219px;
}

div#fcmenu1 div.btn:nth-child(1){
	width: 300px;
}

div#fcmenu1 div.btn:nth-child(2){
	width: 195px;
	left: 328px;
}

div#fcmenu2 div.btn:nth-child(1){
	width: 141px;
}

div#fcmenu2 div.btn:nth-child(2){
	width: 131px;
	left: 328px;
}

div#fcmenu3 div.btn:nth-child(1){
	width: 241px;
}

div#fcmenu3 div.btn:nth-child(2){
	width: 163px;
	left: 328px;
}

div#fcmenu3 div.btn:nth-child(3){
	width: 191px;
	left: 555px;
}

div.fcmenu-radio div.btn{
	position: absolute;
	/*background-color: rgba(255,0,0,0.3);*/
	height:63px;
	cursor: pointer;
}

div.fcmenu-radio div.btn:before{
  content: "";
  display: block;
  position: absolute;
  top: 21px;
  left: 15px;
  width: 20px;
  height: 20px;
  background-color: #41B6F3;
  border-radius: 50%;
	transform-origin: center center;
	transform: scale(1.2);
	background-color: #D6D8DA;
}

div.fcmenu-radio div.btn.on:before{
	background-color: #41B6F3;
	transform: scale(1);
}

.ls0{letter-spacing: -0.5em;}