@charset "utf-8";
/* CSS Document */
body { background-color: #171717;font-family: "Ubuntu", sans-serif;}
    #canvases {position: absolute; top:50%; left: 50%; transform: translate(-50%,-50%);}
  canvas {
    border-radius: 50%; display: block; transform: rotate(0deg); opacity: 0; 
  }
    .file canvas { opacity: 1;}
    
    .play canvas {
        /*animation: record 2s linear infinite;*/
    }
    
canvas#waveformCanvas { width: 100%; height: 100%; position: absolute; top:0; left: 0; border-radius: 0;}

    @keyframes record {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}
    
    section { width: 100%; height: calc( 100svh - 60px ); position: fixed; top:60px; left: 0; overflow: hidden;}
    section .inner { width: 200vw; display: flex; height: 100%; transition: all .4s ease 0s;}
    .slide section .inner { transform: translateX(-100vw);}
    section .inner .section { width: 100vw; height: 100%; position: relative; padding: 20px; box-sizing: border-box;}
    #startRecording,#stopRecording { position: absolute; top:50%; left: 50%; transform: translate(-50%,-50%);}
    #stopRecording { display: none;}
    .rec #stopRecording { display: block;}
    
    #downloadLink { width: 100%; height: 60px; position:absolute; bottom: 0; left: 0; background-color: #00EFEE; color: #000; text-decoration: none; text-align: center; line-height: 60px; font-weight: bold; display: block; transform: translateY(100%); opacity: 0; transition: all .4s ease 0s;}
    .download #downloadLink { transform: translateY(0%); opacity: 1; }
    
    #tab { width: 100%; position: fixed; top:0; left: 0; display: flex; height: 60px; border-bottom: 1px solid #444; color: rgba(255,255,255,.5); background-color: rgba(255,255,255,.05);}
    #tab .tab { width: 50%; cursor: pointer; height: 100%; text-align: center; line-height: 60px;}
	#tab:after { content: ""; display: block; width: 50vw; height: 3px; background-color: #00EFEE; position: absolute; bottom:-1px; left: 0; transition: all .4s ease 0s;}
	.slide #tab:after { transform: translateX(100%);}
	#tab .tab:nth-child(1){ font-weight: bold; color: rgba(255,255,255,1);}
	.slide #tab .tab:nth-child(1){ font-weight: normal; color: rgba(255,255,255,.5);}
	.slide #tab .tab:nth-child(2){ font-weight: bold; color: rgba(255,255,255,1);}
	
    
    #file { width: 200px; height: 200px; position: absolute;  top:50%; left: 50%; transform: translate(-50%,-50%);  border-radius: 50%; }
    #file div { display: block; width: 100%; height: 100%; text-align: center;  position: absolute; top:0; left: 0 }
    #file div figure { width: 80px; height: 80px;background-image: url("../img/unpload.svg"); background-position: center; background-repeat: no-repeat; margin: 0 auto; background-size: contain;}
    #file div p { color: #999;}
    #audioFileInput { width: 100%; height: 100%; cursor: pointer; opacity: 0; position: absolute; top:0; left: 0;}
    .file #file { display: none;}
    
    #controls { width: 100%; height: 60px; position: absolute; bottom: 0; left: 0; transform: translateY(100%); opacity: 0; transition: all .4s ease 0s; display: flex;align-items: center; background-color: rgba(255,255,255,.05);}
    .file #controls {transform: translateY(0%); opacity: 1;}
	#controls .button { width: 60px; height: 60px; }
	#controls .progress { width: calc( 100% - 60px); padding: 0 20px; display: flex;align-items: center;}
	progress { width: 100%; height: 4px;appearance: none;-webkit-appearance: none;}
    
    #return { height: 60px; position: absolute; top:0; left: 0; cursor: pointer; display: none;}
    .file #return { display: block;}
	.file.play #return { display: none;}
	
	#startRecording,#stopRecording{ width: 20vw; height: 20vw; appearance:none;-webkit-appearance: none; border: none; background: none; background-repeat: no-repeat; background-size: 15vw; background-color: #FFF; border-radius: 50%; background-position: center;}
	#startRecording { background-image: url("../img/rec.svg");}
	#stopRecording { background-image: url("../img/stop.svg");}
	
	#timer { color: #FFF;}
	
	#pause { display: none; background-image: url("../img/pause.svg"); background-repeat: no-repeat; background-position: center; background-size: 24px; height: 60px;}
	.play #pause { display: block;}
	#play { display: block; background-image: url("../img/play.svg"); background-repeat: no-repeat; background-position: center; background-size: 24px; height: 60px;}
	.play #play { display: none;}
	
	::-webkit-progress-value {
  background-color: #00EFEE; /* プログレスバーの進捗部分色/-webkit- 用 */
}
::-moz-progress-bar {
  background-color: #00EFEE /* プログレスバーの進捗部分色/-moz- 用 */
}
	#close { width: 60px; height: 60px; position: absolute; top:0; left: 0; cursor: pointer; background-image: url("../img/back.svg"); background-repeat: no-repeat; background-position: center; background-size: 24px; display: none;}
	.file #close { display: block;}
#date {  position: absolute; top:0; right: 0; display: none; color: #FFF; padding: 20px; }
.file #date { display: block;}

@media (orientation: landscape) {
            #startRecording,#stopRecording{ width: 10vw; height: 10vw; background-size: 7.5vw;}
        }

