/* common */
*{
 margin: 0px;
 padding: 0px;
 list-style: none;
 font-size: 100%;
 transition: opacity .5s,background .5s;
}
img{
 vertical-align: bottom;
}
a{
 color: #03A9F4;
 text-decoration: none;
}
a:visited{
 color: #03A9F4;
}
a:hover{
 color: #2cF;
}
body{
 letter-spacing: 0.05em;
 line-height: 1.6em;
 font-family: '游ゴシック', 'Hiragino Kaku Gothic ProN', 'メイリオ', meiryo,'Helvetica Neue', sans-serif;
}
h2{
 color:#e60012;
 border-left: 5px #e60012 solid;
 padding: 0px 8px;
 line-height: 1.5em;
 font-size: 19px;
 margin-bottom: 5px;
}
h3{
 color: #e60012;
}
.contents{
 max-width:800px;
 margin:0px auto;
}
.mt1em{
 margin-top: 1em;
}
.mt2em{
 margin-top: 2em;
}
.mt3em{
 margin-top: 3em;
}
.mb1em{
 margin-bottom: 1em;
}
.mb2em{
 margin-bottom: 2em;
}
.mb3em{
 margin-bottom: 3em;
}

.p1em{
 padding: 1em;
}
.p2em{
 padding: 2em;
}

.fontS{
 font-size: 90%;
}
.fontSS{
 font-size: 80%;
}

.displayI{
 display: inline;
}
.displayIb{
 display: inline-block;
}
.displayB{
 display: block;
}

.textCenter{
 text-align: center;
}
.textLeft{
 text-align: left;
}
.textRight{
 text-align: right;
}
.vTop{
 vertical-align: top;
}
.vMiddle{
 vertical-align: middle;
}
.vBottom{
 vertical-align: bottom;
}

.table{
 display: table;
}
.table-cell{
 display: table-cell;
}

.w12{
 width: 100%;
}
.w11{
 width: 91%;
}
.w10{
 width: 83%;
}
.w9{
 width: 74.7%;
}
.w8{
 width: 66.4%;
}
.w7{
 width: 58.3%;
}
.w6{
 width: 50%;
}
.w5{
 width: 41%;
}
.w4{
 width: 33.3%;
}
.w3{
 width: 25%;
}
.w2{
 width: 16.6%;
}
.w1{
 width: 8.3%;
}

.img100per{
 max-width: 100%;
 width: 100%;
 height: auto;
}

.sp_dBlock{
 display: block;
}
.sp_dInlineBlock{
 display: inline-block;
}
.sp_wAuto{
 width: auto;
}

.form1{
 text-align: center;
 max-width: 400px;
	width: 90%;
	border: solid 1px #eee;
	border-radius: 10px;
	box-shadow: 2px 2px 10px rgba(0,0,0,0.04);
 margin-left: auto;
 margin-right: auto;
}
.form1 .row{
	display: table;
	width: 100%;
}
.form1 .row:first-child{
	margin-bottom: 15px;
}
.form1 .row .column{
	display: table-cell;
	width: 75%;
	vertical-align: middle;
}
.form1 .row .column:first-child{
	width: 20%;
}
.form1 .row .column .inputText{
	width: 90%;
}

.btn1 span {
	cursor: pointer;
	position: relative;
	display: inline-block;
	padding: 5px 20px 8px;
	margin: 5px;
	text-decoration: none;
	color: #FFF;
	background: #03A9F4;/*色*/ border: solid 1px #0f9ada;/*線色*/ border-radius: 4px;
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
	text-shadow: 0 1px 0 rgba(0,0,0,0.2);
}
.btn1 span:hover {
	transition: 0.5s;
	background: #2cF;/*色*/ border: solid 1px #0f9ada;/*線色*/ border-radius: 4px;
}
.inputText{
	width: 96%;
	padding: 1%;
	border-radius: 2px;
	border:solid 1px #eee;
	box-shadow: -2px -2px 2px rgba(0,0,0,0.04) inset;
}

#nav{
 position: relative;
 z-index: 2;
 box-shadow: 2px 2px 2px rgba(0,0,0,0.04);
}
#nav .menuList{
 text-align: center;
}
#nav .menuList li{
 display: inline-block;
 padding: 1em;
}

.sysMsg{
 text-align: center;
 border:solid 1px #eee;
 padding: 1em;
}

.commonLogo{
 width: 150px;
 margin: 10px auto 5px;
}
.commonLogo img{
 width: 100%;
 height: auto;
}
.step{
 text-align: center;
 padding: 1em;
}
.step img{
 max-width: 404px;
 width: 90%;
 height: auto;
}
.official{
 /* border-bottom: #f00 2px solid;*/
 margin-bottom: 10px;
}
.official a{
 color: #fff;
 font-size: 70%;
 display: inline-block;
 background: #e60012;
 border-radius: 1em;
 padding:0em 1em;
 line-height: 1.6em;
 margin-bottom: 10px;
}
.official a:hover{
 transition: 0.4s;
 background: #f88;
}
#spMenuBtn {
 display: none;
 position: fixed;
 left: 12px;
 top: 15px;
 border: solid 2px #bbbbbb;
 border-radius: 100px;
 cursor: pointer;
 z-index: 999;
 background: rgba(255,255,255,0.6);
}
#spMenuBtn .open{
 padding: 7px 7px 2px;
}
#spMenuBtn .close{
 padding: 4px 7.5px 7px;
 display: none;
}
#spMenuBtn.active .open{
 display: none;
}
#spMenuBtn.active .close{
 display: block;
}
#spMenu{
 visibility: hidden;
 opacity: 0;
 position: fixed;
 width: 100%;
 height: 100%;
 background: #fff;
 top: 0px;
 left: 0px;
 z-index: 998;
}
#spMenu.active{
 visibility: visible;
 opacity: 1;
}
#spMenu .menuList{
 margin-top: 80px;
 border-top: solid 1px #eee;
}
#spMenu .menuList li{
 display: block;
 border-bottom: solid 1px #eee;
}
#spMenu .menuList li a{
 display: block;
 padding: 10px;
}

@media screen and ( max-width:670px ){
 body{
  font-size: 70%;
 }
 .contents{
  padding:0px 10px;
 }
 #nav .menuList{
  text-align: center;
 }
 #nav .menuList li{
  display: inline-block;
  text-align: center;
  padding: 0.5em;
 }
 .spBlock{
  display:block !important;
 }
 .spNone{
  display: none !important;
 }
 #spMenuBtn {
  display: block;
 }
}