@charset "UTF-8";

html,body {
	overflow-x: hidden;
	overflow-y: visible;
}
body {
	font-size:18px;
	margin: 0;
	padding: 0;
	line-height:2;
    background-color: #fff;
    color: #333333;
    font-family: 'Avenir','Helvetica Neue','Helvetica','Arial','Hiragino Sans','ヒラギノ角ゴシック',YuGothic,'Yu Gothic','メイリオ', Meiryo,'ＭＳ Ｐゴシック','MS PGothic';
	-webkit-text-size-adjust: 100%;
}
a, a:link, a:visited, a:hover, a:active {
	text-decoration: none;
	color: #949494;
}
h1, h2, h3 {
 	margin: 0;
	padding: 0;
	font-weight: normal;
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}

.red {
	color: #e60012;
}
.blue {
	color: #0000ff;
}
.black {
	color: #000;
}
.bold {
	font-weight: bold;
}
.normal {
	font-weight: normal !important;
}
.bgy {
	background-color: #fff100;
}
.ul {
	text-decoration: underline;
}

.p0 { padding: 0 !important;}
.p5 {padding: 5% 0 !important;}
.p8 {padding: 8% 0 !important;}
.p10 {padding: 10% 0 !important;}

.pt0 { padding-top: 0 !important;}
.pt1 { padding-top: 1% !important;}
.pt3 { padding-top: 3% !important;}
.pt5 { padding-top: 5% !important;}
.pt8 { padding-top: 8% !important;}
.pt10 { padding-top: 10% !important;}

.pb0 { padding-bottom: 0 !important;}
.pb1 { padding-bottom: 1% !important;}
.pb3 { padding-bottom: 3% !important;}
.pb5 { padding-bottom: 5% !important;}
.pb8 { padding-bottom: 8% !important;}
.pb10 { padding-bottom: 10% !important;}

.mt0 { margin-top: 0 !important;}
.mt1 { margin-top: 1% !important;}
.mt3 { margin-top: 3% !important;}
.mt5 { margin-top: 5% !important;}
.mt8 { margin-top: 8% !important;}
.mt10 { margin-top: 10% !important;}

.mb0 { margin-bottom: 0 !important;}
.mb1 { margin-bottom: 1% !important;}
.mb3 { margin-bottom: 3% !important;}
.mb5 { margin-bottom: 5% !important;}
.mb8 { margin-bottom: 8% !important;}
.mb10 { margin-bottom: 10% !important;}



/* font */
.f10 { font-size: 50% !important;}
.f12 { font-size: 60% !important;}
.f14 { font-size: 70% !important;}
.f16 { font-size: 80% !important;}
.f18 { font-size: 90% !important;}
.f20 { font-size: 100% !important;}
.f22 { font-size: 110% !important;}
.f24 { font-size: 120% !important;}
.f26 { font-size: 130% !important;}
.f28 { font-size: 140% !important;}
.f30 { font-size: 150% !important;}
.f32 { font-size: 160% !important;}
.f34 { font-size: 170% !important;}
.f36 { font-size: 180% !important;}
.f38 { font-size: 190% !important;}
.f40 { font-size: 200% !important;}
.f42 { font-size: 210% !important;}
.f44 { font-size: 220% !important;}
.f45 { font-size: 225% !important;}
.f48 { font-size: 240% !important;}
.f50 { font-size: 250% !important;}
.f54 { font-size: 270% !important;}
.f58 { font-size: 290% !important;}
.f60 { font-size: 300% !important;}
.f64 { font-size: 320% !important;}
.f68 { font-size: 340% !important;}
.f70 { font-size: 350% !important;}
.f72 { font-size: 360% !important;}

/* text-align */
.txt_l { text-align: left;}
.txt_c { text-align: center;}
.txt_r { text-align: right;}

.image_fr {
	float: right;
	width: 200px;
}
.w_50 {
	width: 50%;
	margin: 0 auto;
}
.w_60 {
	width: 60%;
	margin: 0 auto;
}
.w_70 {
	width: 70%;
	margin: 0 auto;
}
.w_80 {
	width: 80%;
	margin: 0 auto;
}

/*--------------------------------------
背景用*/
.bg_main {
    background: url("../images/bg_main.png")no-repeat center top/100% auto;
}
.bg_body {
    background: url("../images/bg_body.png")no-repeat center top/100% auto;
}
/*============
nav
=============*/
nav {
  display: block;
  position: fixed;
  top: 0;
  left: -300px;
  bottom: 0;
  width: 300px;
  background: #ffffff;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  transition: .5s;
  z-index: 3;
}
.open nav {
  left: 0;
}
nav .inner {
  padding: 25px;
}
nav .inner ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
nav .inner ul li {
  position: relative;
  margin: 0;
  border-bottom: 1px solid #333;
}
nav .inner ul li a {
  display: block;
  color: #333;
  padding: 1em;
  font-size: 80%;
  text-decoration: none;
  transition-duration: 0.2s;
}
nav .inner ul li a:hover {
  background: #e4e4e4;
}
@media screen and (max-width: 767px) {
  nav {
    left: -240px;
    width: 240px;
  }
}
/*============
@keyframes
=============*/
@keyframes equalizer01 {
  0% {
    width: 70%;
  }
  10% {
    width: 50%;
  }
  20% {
    width: 100%;
  }
  30% {
    width: 10%;
  }
  40% {
    width: 50%;
  }
  50% {
    width: 70%;
  }
  60% {
    width: 50%;
  }
  70% {
    width: 10%;
  }
  80% {
    width: 100%;
  }
  90% {
    width: 10%;
  }
  100% {
    width: 70%;
  }
}
@keyframes equalizer02 {
  0% {
    width: 30%;
  }
  10% {
    width: 20%;
  }
  20% {
    width: 40%;
  }
  30% {
    width: 10%;
  }
  40% {
    width: 20%;
  }
  50% {
    width: 30%;
  }
  60% {
    width: 20%;
  }
  70% {
    width: 10%;
  }
  80% {
    width: 40%;
  }
  90% {
    width: 10%;
  }
  100% {
    width: 30%;
  }
}
/*============
.toggle_btn
=============*/
.toggle_btn {
  display: block;
  position: fixed;
  top: 30px;
  left: 30px;
  width: 60px;
  height: 30px;
  transform: translate(0, 0);
  transition: all .5s;
  cursor: pointer;
  z-index: 3;
}
.open .toggle_btn {
  left: 330px;
}
.toggle_btn span {
  display: block;
  position: absolute;
  left: 0;
  width: 30px;
  height: 2px;
  background-color: #666;
  transition: all .5s;
}
.toggle_btn span:nth-child(1) {
  top: 5px;
  width: 60px;
  animation: equalizer01 7000ms infinite;
}
.toggle_btn span:nth-child(2) {
  top: 15px;
  width: 30px;
  animation: equalizer02 5000ms infinite;
  animation-delay: 0.33s;
}
.toggle_btn span:nth-child(3) {
  top: 25px;
  width: 20px;
  animation: equalizer02 5000ms infinite;
}
.open .toggle_btn span {
  background-color: #fff;
  width: 30px;
}
.open .toggle_btn span:nth-child(1) {
  transform: translate(0, 10px) rotate(-45deg);
  animation: unset;
}
.open .toggle_btn span:nth-child(2) {
  opacity: 0;
  animation: unset;
}
.open .toggle_btn span:nth-child(3) {
  transform: translate(0, -10px) rotate(45deg);
  animation: unset;
}
@media screen and (max-width: 767px) {
  .open .toggle_btn {
    left: 260px;
  }
}
/*============
#mask
=============*/
#mask {
  display: none;
}
.open #mask {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: .8;
  z-index: 2;
  cursor: pointer;
  transition: all .5s;
}
/*--------------------------------------
本文用*/
.inner {
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
    background-color: #fff;
}
.txtwrapper {
    padding: 5%;
}
h2 {
	padding-bottom: 5%;
	text-align: center;
    font-size: 118%;
    font-weight: bold;
}
.image {
	padding-bottom: 5%;
	text-align: center;
}
.image:last-child {
	padding-bottom: 0;
}
.txt {
	padding-bottom: 5%;
}
.txt:last-child {
	padding-bottom: 0;
}
.logo {
    width: 30%;
    margin: 15% auto 8%;
}

/*--------------------------------------
ログイン用*/
#login .txtwrapper {
    padding: 30% 8% 50%;
}
#login .box01 {    
    padding:10% 8%;
    background-color: #f4f4f5;
    border-radius: 20px;
}
#login .logo {
    width: 30%;
    margin: 0 auto 8%;
}
.login_inputbox {
    width: 100%;
    height: 60px;
    margin-bottom: 8%;
    border-radius: 5px;
    background-color: #fff;
    border:none;
}
#login dt {
    color: #f08119;
    font-weight: bold;
    font-size: 90%;
}
input {
    width: 100%;
}
.btn:hover {
    opacity: 0.8;
}

/*--------------------------------------
利用規約用*/
#rule .txtwrapper {
    padding: 30% 8% 50%;
}
#rule h1 {
    padding-bottom: 5%;
    text-align: center;
    font-weight: bold;
    font-size: 118%;
    color: #f08119;
}
#rule .btn {
    margin-bottom: 5%;
}
#rule .box01 {    
    padding:10%;
    background-color: #f4f4f5;
    border-radius: 20px;
}

/*--------------------------------------
自動取引設定用*/
#setting .box01 {    
    padding:5%;
    background-color: #f4f4f5;
    border-radius: 20px;
}
.setting_inputbox {
    width: 100%;
    height: 50px;
    margin-bottom: 3%;
    border-radius: 5px;
    background-color: #fff;
    border:none;
}
#setting dt {
    font-size: 90%;
}
.graph {
    margin-bottom: 10%;
}
.result01 {
    font-size: 170%;
}
.result02 {
    padding-bottom: 5%;
}
.green {
    color: #44ba00;
}
.result_area {
    display: flex;
	justify-content: space-between;
}

/* ラジオボタン */
.radio{
	display: flex;
	justify-content: space-between;
	width: 100%;
    margin-bottom: 3%;
}
.radio input{
	display: none;
}
.radio label{
	width: 48%;
	margin: 1px 0 1px 0;
	padding:5%;
	border-right: 1px solid #d7d7d7;
	background: #e5e5e5;
	color: #555e64;
	font-size: 14px;
	text-align: center;
	line-height: 1;
	transition: .2s;
}
.radio label:first-of-type{
}
.radio label:last-of-type{
	border-right: 0px;
}
.radio input[type="radio"]:checked + label {
	background-color: #333;
	color: #fff;
}
#popup {
  display: none; /* label でコントロールするので input は非表示に */
}

.popup-open {
  cursor: pointer; /* マウスオーバーでカーソルの形状を変えることで、クリックできる要素だとわかりやすいように */
}

.popup-overlay {
  display: none; /* input にチェックが入るまでは非表示に */
}

#popup:checked ~ .popup-overlay {
  display: block;
  z-index: 99999;
  background-color: rgba(0,0,0,0.8);
  position: fixed;
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
}

.popup-window {
  width: 90vw;
  max-width: 560px;
  padding: 8%;
  background-color: #ffffff;
  border-radius: 6px;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.popup-text {
  margin: 0;
  padding-bottom: 5%;
  text-align: center;
  font-weight: bold;
}
.popup-overlay .btn {
    padding-bottom: 5%;
}
.popup-overlay .btn:last-child {
    padding-bottom: 0;
}
.popup-text:not(:last-of-type) {
  margin-bottom: 1em
}

.popup-close {
  cursor: pointer;
  position: absolute;
  top: -26px;
  right: 0;
}

/*--------------------------------------
運用状況(トレード画面)用*/
#trade .box01 {    
    padding:5%;
    background-color: #f4f4f5;
    border-radius: 20px;
}
.trade_box {
    width: 100%;
    padding: 3%;
    margin-bottom: 3%;
    text-align: left;
    background-color: #fff;
}
.trade_box01 {
    display: flex;
	justify-content: space-between;
}
.trade_box_in  {
    width: 48%;
    padding: 3%;
    text-align:center;
    background-color: #fff;
}
.numbers01 {
    font-size: 150%;
}
.numbers02 {
    font-size: 138%;
}

/* ラジオボタン */
.radio2{
	display: flex;
	justify-content: space-between;
	width: 100%;
    margin-bottom: 5%;
}
.radio2 input{
	display: none;
}
.radio2 label{
	width: 48%;
	margin: 1px 0 1px 0;
	padding:5%;
	border-right: 1px solid #d7d7d7;
	background: #e5e5e5;
	color: #333;
	font-size: 14px;
	text-align: center;
	line-height: 1;
	transition: .2s;
}
.radio2 label:first-of-type{
}
.radio2 label:last-of-type{
	border-right: 0px;
}
.radio2 input[type="radio"]:checked + label {
	background-color: #333;
	color: #fff;
}
.title {
    padding: 3%;
    background-color: #333;
    color: #fff;
    text-align: center;
}
.box02 {
    padding: 5%;
    border:3px solid #333;
}

/*--------------------------------------
history用*/
#history .box01 {    
    padding:5%;
    background-color: #f4f4f5;
    border-radius: 20px;
}
.history_box {
    width: 100%;
    padding: 3%;
    margin-bottom: 3%;
    text-align: left;
    background-color: #fff;
}
.history_box01 {
    display: flex;
	justify-content: space-between;
}
.history_box_in  {
    width: 48%;
    padding: 3%;
    text-align:center;
    background-color: #fff;
}
.history_txt {
    font-size: 90%;
    text-align:left;
}
.history_txt02 {
    font-size: 100%;
    text-align: right;
}
.history {   
    padding: 3%;
    margin-bottom: 3%;
    text-align: right;
    background-color: #f3f3f3;
    border-radius: 8px;
    font-size: 80%;
}
/*--------------------------------------
bank用*/
#bank .tab-content {
    background-color: #f6f6f6;
}
.bank_box {
    padding: 5%;
}
#bank h1 {
    padding-bottom: 5%;
    font-size: 118%;
}
.bank_txt01 {
    padding-bottom: 3%;
}
#bank dd {
    padding-bottom: 3%;
    margin-bottom: 3%;
    border-bottom:1px solid #dadada;
}
#bank .input_box {
    height: 30px;
    border:none;
    background-color: #fff;
}
#bank input {
    width: 100%;
}
#bank .select {
  appearance: none; /* ① */
  -webkit-appearance: none;
  -moz-appearance: none;
  border: 1px solid #aaa; /* ② ここから */
  border-radius: 4px;
  padding: 2%;
  width: 100%;
  cursor: pointer; /* ② ここまで */
}

#bank .select:disabled {
  pointer-events: none;
  background-color: #f1f1f1;
  color: #aaa;
}

#bank .select-wrapper {
  position: relative;
  display: inline-block;
  width: 100%;
}

#bank .select-wrapper::after {  /* ③ */
  content: '';
  position: absolute;
  border: 4px solid #333;
  border-bottom: 0;
  border-left-color: transparent;
  border-right-color: transparent;
  top: calc(50% - 3px);
  right: 10px;
  width: 0;
  height: 0;
}

#bank .select-wrapper--disabled::after {
  border-top-color: #aaa;
}

textarea{	
box-sizing:border-box;	
-moz-box-sizing:border-box; /* Firefox */	
-webkit-box-sizing:border-box; /* Chrome, Safari */	
}	
input[type="text"]{	
  width: 100%;	
  -moz-box-sizing: border-box;	
  -webkit-box-sizing: border-box;	
  box-sizing: border-box;	
}	
input[type="submit"],	
input[type='button'] {	
	width: 100%;	
	height: 90px;	
}	
	
/* iOSでのデフォルトスタイルをリセット */	
input[type="submit"],	
input[type="button"] {	
  border-radius: 0;	
  -webkit-box-sizing: content-box;	
  -webkit-appearance: button;	
  appearance: button;	
  border: none;	
  box-sizing: border-box;	
  cursor: pointer;	
}	
input[type="submit"]::-webkit-search-decoration,	
input[type="button"]::-webkit-search-decoration {	
  display: none;	
}	
input[type="submit"]::focus,	
input[type="button"]::focus {	
  outline-offset: -2px;	
}

/*--------------------------------------
trial用*/
#trial .txtwrapper {
    padding: 5% 5% 50%;
}
#trial .box03 {
    padding: 20% 5%;
    background-color: #333;
}
#trial .box03 .txt {
    color: #fff;
    text-align: center;
    font-size: 128%;
    font-weight: bold;
}



/*--------------------------------------
動画用*/
#movie .box01 {    
    padding:5%;
    margin-bottom: 8%;
    background-color: #f4f4f5;
    border-radius: 20px;
}
#movie .txt {
    text-align: center;
}
#movie h2 {
    text-align: center;
    font-weight: bold;
    font-size: 118%;
}
.video_area {
	max-width: 900px;
	margin: 0 auto;
}
.video{
  position:relative;
  width:100%;
  padding-top:56.25%;
}
.video iframe{
  position:absolute;
  top:0;
  right:0;
  width:100%;
  height:100%;
}

#news .box01 {    
    padding:5%;
    margin-bottom: 8%;
    background-color: #f4f4f5;
    border-radius: 20px;
}
#news .txt {
    font-size: 80%;
}

/*--------------------------------------
qa用*/
#qa h1 {
    padding-bottom: 8%;
    text-align: center;
    font-weight: bold;
    font-size: 138%;
}
.accordion {
    width: 100%;
    margin-bottom: 10px;
    border-radius: 5px;
    background-color: #fff;
}

.accordion summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 1em;
    color: #333;
    font-size: 80%;
    font-weight: 600;
    cursor: pointer;
    background-color: #f3f3f3;
    border-radius: 10px;
}

.accordion summary::-webkit-details-marker {
    display: none;
}

.accordion summary::after {
    transform: translateY(-25%) rotate(45deg);
    width: 7px;
    height: 7px;
    margin-left: 10px;
    border-bottom: 3px solid #333;
    border-right: 3px solid #333;
    content: '';
    transition: transform .3s;
}

.accordion[open] summary::after {
    transform: rotate(225deg);
}

.accordion p {
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: 3% 2% 5%;
    color: #333;
    font-size: 80%;
    transition: transform .5s, opacity .5s;
}

.accordion[open] p {
    transform: none;
    opacity: 1;
}



textarea{	
width:100%;	
padding:5px;	
box-sizing:border-box;	
-moz-box-sizing:border-box; /* Firefox */	
-webkit-box-sizing:border-box; /* Chrome, Safari */	
}	
input[type="text"]{	
  width: 100%;	
  -moz-box-sizing: border-box;	
  -webkit-box-sizing: border-box;	
  box-sizing: border-box;	
}	
input[type="submit"],	
input[type='button'] {	
	width: 100%;			
}	
	
/* iOSでのデフォルトスタイルをリセット */	
input[type="submit"],	
input[type="button"] {	
  border-radius: 0;	
  -webkit-box-sizing: content-box;	
  -webkit-appearance: button;	
  appearance: button;	
  border: none;	
  box-sizing: border-box;	
  cursor: pointer;	
}	
input[type="submit"]::-webkit-search-decoration,	
input[type="button"]::-webkit-search-decoration {	
  display: none;	
}	
input[type="submit"]::focus,	
input[type="button"]::focus {	
  outline-offset: -2px;	
}


/*--------------------------------------
フッター用*/
footer {
	text-align: center;
	font-size: 60%;
	padding:3% 0;
	color: #fff;
	line-height: 1.5;
	background-color: #000;
}
footer a,footer a:link,footer a:visited,footer a:hover,footer a:active {
	text-decoration: none;
	color: #fff;
}

/*--------------------------------------
レスポンシブ*/

@media screen and (min-width: 800px){
	.sp{display:none;}
	br.sp {display: none;}
}
@media print, screen and (max-width: 800px) {
	body {
		font-size: 80%;
		line-height: 1.7;
	}
	.pc {
		display: none;
	}
	br.sp {
		display: block;
	}
	#menu2{
		width: 100%;
		position: fixed;
		bottom: 0;
		left: 0;
		z-index: 9999;
	}
	#menu2 img {
		width: 100%;
	}
	footer {
		padding: 2% 0;
	}
	.w_45 {width: 60% !important; margin: 0 auto}
	.w_50 {width: 60% !important; margin: 0 auto;}
	.w_60 {width: 80% !important; margin: 0 auto;}
	.w_70 {width: 100% !important; margin: 0 auto;}
	.w_80 {width: 100% !important; margin: 0 auto;}
	.w_40_sp {width: 40% !important; margin: 0 auto;}
	.w_45_sp {width: 45% !important; margin: 0 auto;}
	.w_50_sp {width: 50% !important; margin: 0 auto;}
	.w_60_sp {width: 60% !important; margin: 0 auto;}
	.w_70_sp {width: 70% !important; margin: 0 auto;}
	.w_80_sp {width: 80% !important; margin: 0 auto;}
	
}
@media print, screen and (max-width: 800px) and (min-width: 640px) {
	body {
		font-size: 118%;
	}
	br {
		display: block;
		content: none;
	}
}
