html {
  height: 100%;
}

body{
	overflow: hidden;
	margin: 0;
}

.main{
	overflow: hidden;
}



#play{ /** section **/
  display: inline-block;

  text-align: center;

  width: 66%;
  height: 100%;
  margin-top: 0.3%;
  margin-bottom: 1.5%;

  border: 6px #333 inset;
  box-shadow: 3px 3px 3px 3px #000 inset;
  border-radius: 9%;
}

.wrap_komas {
  position: relative;
  height: 90vh;
}

#play img{
  margin-top: 2.1vh;
  margin-bottom: 0.9vh;

  width:calc(87vh*1013 / 1433) ;
  height:87vh;

  position:absolute; 
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

/*  縦長 */
@media screen and (orientation: portrait) {
  #play{

    display: block;

    width: 96%;
    height: 66vh;
    min-height: 66vh;
    margin-top: 1%;
    margin-bottom: 1%;

    text-align: center;

    border-radius: 3%;
  }

  .wrap_komas {
    position: relative;
    height: 66vh;
  }

  #play img{

    margin-top: 2.1vh;
    margin-bottom: 0.9vh;

    width:calc(60vh*1013 / 1433) ;
    height:60vh;

    position:absolute; 
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    
  }


}


#dummy{
  z-index: 0;
  /*background: #fff;*/
}

#koma_all{
	z-index: 0;
}

#fukidasi{
	z-index: 1;
}

/*funcs*/

#clicks{
	width: 100%;
	height: 90vh;

  position:absolute; 
  top: 0;
  z-index: 2;
}

#main_click{
	width: 100%;
	height: 100%;
  min-height: 100%;
}

@media screen and (orientation: portrait) {

  #clicks{
    height: 66vh;
  }

}



/*loading*/

#loading{
  overflow: hidden;
}

#img_loading{

  border: none;

  z-index: 999;

  animation: flash 2s infinite linear;
  -webkit-animation: flash 2s infinite linear;
  -moz-animation: flash 2s infinite linear;
}





/*** CONTROLL ***/

#controll{
  display: inline-block;
  width: 30%;
  height: 100%;
  min-height: 90vh;

  vertical-align: top;
}

@media screen and (orientation: portrait) {

  #controll{
    display: block;
  }
}

#controll p{
  margin:0;
  padding:0;
  text-align:center;
  color:#fff;
  text-transform: uppercase;
  letter-spacing:4px;
}


.btns {

  padding: 10%;

}

.btns div{
  width: 80%;
  text-align: left;
}

/*  縦長 */
@media screen and (orientation: portrait) {
  #controll{
    float: none;
    width: 100%;

    border-collapse: separate;
    border-spacing: 3px 0;
    display: table;

  }

  .btns div{
    width: 30%;
    display: table-cell;
    vertical-align: top;
    text-align: center;
    text-align: left;
  }

}

input[type="checkbox"] {
  margin:10px;
  position:relative;
  width:60px;
  height:20px;
  -webkit-appearance: none;
  background: linear-gradient(0deg, #333, #000);
  outline: none;
  border-radius: 6px;
  box-shadow: 0 0 0 4px #353535, 0 0 0 5px #3e3e3e, inset 0 0 10px rgba(0,0,0,1);
}

input:checked[type="checkbox"]:nth-of-type(1) {
  background: linear-gradient(0deg, #e6b422, #e6b422);
  box-shadow: 0 0 0 4px #353535, 0 0 0 5px #3e3e3e, inset 0 0 10px rgba(0,0,0,1);
}

input:checked[type="checkbox"]:nth-of-type(2) {
  background: linear-gradient(0deg, #70a1ff, #1e90ff);
  box-shadow: 0 0 0 4px #353535, 0 0 0 5px #3e3e3e, inset 0 0 10px rgba(0,0,0,1);
}

input[type="checkbox"]:before {
  content:'';
  position:absolute;
  top:0;
  left:0;
  width:40px;
  height:20px;
  background: linear-gradient(0deg, #000, #6b6b6b);
  border-radius: 6px;
  box-shadow: 0 0 0 1px #232323;
  transform: scale(.98,.96);
  transition:.5s;
}

input:checked[type="checkbox"]:before {
  left:20px;
}

input[type="checkbox"]:after{
  content:'';
  position:absolute;
  top:calc(50% - 2px);
  left:35px;
  width:2px;
  height:2px;
  background: linear-gradient(0deg, #6b6b6b, #000);
  border-radius: 50%;
  transition:.5s;
}

input:checked[type="checkbox"]:after {
  left:55px;
}


/*戻る*/
.btn-gradient-3d {
  margin-bottom: 30px;
  display: inline-block;
  padding: 0.5em 1em;
  text-decoration: none;
  font-weight: bold;
  border-radius: 4px;
  color: #999;
  text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.5);
  background-image: linear-gradient(#666 0%, #333 100%);
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
  border-bottom: solid 3px #555;
  
  text-transform: uppercase;
  letter-spacing:4px;

}

a.btn_link:link, a.btn_link:visited{
  color: #000;
}

a.btn_link:hover, a.btn_link:active {
  color: #fff;
  text-shadow: 1px 1px 1px rgba(230, 184, 34, 0.5);
}

.btn-gradient-3d:active {
  -webkit-transform: translateY(4px);
  transform: translateY(4px);
  box-shadow: 0px 0px 1px rgba(0, 0, 0, 0.2);
  border-bottom: solid 3px #16160e;
}

/*？*/
.btn-real {

  margin-bottom: 30px;

  display: inline-block;
  text-decoration: none;
  color: rgba(0, 0, 0, 255);
  width: 30px;
  height: 30px;
  line-height: 30px;
  border-radius: 50%;
  text-align: center;
  overflow: hidden;
  font-weight: bold;
  background-image: linear-gradient(#666 0%, #333 100%);
  text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.66);
  box-shadow: inset 0 2px 0 rgba(51,51,51,0.5), 0 2px 2px rgba(0, 0, 0, 0.19);
  border-bottom: solid 2px #333;
}

.btn-real:active {
  -webkit-transform: translateY(3px);
  transform: translateY(3px);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.5), 0 2px 2px rgba(0, 0, 0, 0.19);
  border-bottom: solid 2px #16160e;

}


/*modal*/

/* モーダルウィンドウ */
.modal-window {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 300px;
  height: 300px;
  background-color: #000;
  border-radius: 5px;
  z-index: 11;
  padding: 2rem;
}

.modal-window p{
  color: #e6b422;
}

/* 閉じるボタン */
.button-close {
  position: absolute;
  top: 3%;
  left: 3%;
  transform: translate(-3%, -3%);

  border-radius: 50%;
  width:30px;
  height: 30px;
  background-image: linear-gradient(#666 0%, #333 100%);
  text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.66);
  
}

/* オーバーレイ */
.overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
  z-index: 10;
  
}


/*#funcs{

	width: 397px;
	height: 150px;
	display: table;
	table-layout: fixed;	
}

.func_btns{
	height: 100%;
	display: table-cell;	
}*/


/*setting*/
/*#setting{
	
	width: 397px;
	height: 562px;
	z-index: 3;
	background: #666;
	text-align: center;
}


#setting p {

	color: #fff;
}
*/

@keyframes flash {
    0% { opacity: 0.2; }
    50% { opacity: 1; }
    100% { opacity: 0.2; }
}
@-webkit-keyframes flash {
    0% { opacity: 0.2; }
    50% { opacity: 1; }
    100% { opacity: 0.2; }
}
@-moz-keyframes flash {
    0% { opacity: 0.2; }
    50% { opacity: 1; }
    100% { opacity: 0.2; }
}
.flash:last-child {
    margin-right: 0;
}
.flash span {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
}

