@charset "utf-8";

/* common */
@import url(normalize.css);



/*
	HTML5 Reset :: style.css
-------------------------------------------------------------------------------*/

/* Let's default this puppy out
-------------------------------------------------------------------------------*/
html {
font-size : 75%;
}
html, body, body div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
	margin: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	padding: 0px;
}

article, aside, figure, footer, header, hgroup, nav, section {display: block;}

/* Responsive images and other embedded objects
   Note: keeping IMG here will cause problems if you're using foreground images as sprites.
   If this default setting for images is causing issues, you might want to replace it with a .responsive class instead. */
img,
object,
embed {max-width: 100%;}
img{ vertical-align : middle}

/* force a vertical scrollbar to prevent a jumpy page */
html {overflow-y: scroll;}

/* we use a lot of ULs that aren't bulleted. 
	don't forget to restore the bullets within content. */
ul,ol {list-style: none;}

blockquote, q {quotes: none;}

blockquote:before, 
blockquote:after, 
q:before, 
q:after {content: ''; content: none;}

a {margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent;}

del {text-decoration: line-through;}

abbr[title], dfn[title] {border-bottom: 1px dotted #000; cursor: help;}

/* tables still need cellspacing="0" in the markup */
table {border-collapse: collapse; border-spacing: 0;}
th {font-weight: bold; vertical-align: bottom;}
td {font-weight: normal; vertical-align: top;}

hr {display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0;}

input, select {vertical-align: middle;}

pre {
	white-space: pre; /* CSS2 */
	white-space: pre-wrap; /* CSS 2.1 */
	white-space: pre-line; /* CSS 3 (and 2.1 as well, actually) */
	word-wrap: break-word; /* IE */
}

/*input[type="radio"] {vertical-align: text-bottom;}
input[type="checkbox"] {vertical-align: bottom; *vertical-align: baseline; vertical-align:0.5em;} */
.ie6 input {vertical-align: text-bottom;}

select, input, textarea {font: 99% sans-serif;}

table {font-size: inherit; font: 100%;}
 
/* Accessible focus treatment
	people.opera.com/patrickl/experiments/keyboard/test */
a:hover, a:active {outline: none;}

small {font-size: 85%;}

strong, th {font-weight: bold;}

td, td img {vertical-align: top;} 

/* Make sure sup and sub don't screw with your line-heights
	gist.github.com/413930 */
sub, sup {font-size: 75%; line-height: 0; position: relative;}
sup {top: -0.5em;}
sub {bottom: -0.25em;}

/* standardize any monospaced elements */
pre, code, kbd, samp {font-family: monospace, sans-serif;}

/* hand cursor on clickable elements */
.clickable,
label, 
input[type=button], 
input[type=submit], 
button {cursor: pointer;}

/* Webkit browsers add a 2px margin outside the chrome of form elements */
button, input, select, textarea {margin: 0;}

/* make buttons play nice in IE */
button {width: auto; overflow: visible;}
 
/* scale images in IE7 more attractively */
.ie7 img {-ms-interpolation-mode: bicubic;}

/* prevent BG image flicker upon hover */
.ie6 html {filter: expression(document.execCommand("BackgroundImageCache", false, true));}

/* let's clear some floats */
.clearfix:before, .clearfix:after { content: "\0020"; display: block; height: 0; overflow: hidden; }  
.clearfix:after { clear: both; }  
.clearfix { zoom: 1; }  



/* Ok, this is where the fun starts.
-------------------------------------------------------------------------------*/

/* new Linux- and Windows-friendly sans-serif font stack: http://mky.be/fontstack */

body {
	text-align: center;
	margin: 0 auto;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
	font-size: 88%;
	line-height: 1.5;
}

/* we like off-black for text */
body, select, input, textarea {color: #31313F;}

a:link {
	color: #1BA2AD;
	text-decoration: none;
}
a:visited {
	color: #6E6C64;
	text-decoration: underline;
}
a:hover, a:active, a:focus { 
	text-decoration: underline;
}
a.blank {
padding-right:20px;
background: url(../../img/icon_blank.gif)no-repeat right;
}


/* Custom text-selection colors (remove any text shadows: twitter.com/miketaylr/status/12228805301) 
::-moz-selection{background: #fcd700; color: #fff; text-shadow: none;}
::selection {background: #fcd700; color: #fff; text-shadow: none;} 
*/
/*	j.mp/webkit-tap-highlight-color
a:link {-webkit-tap-highlight-color: #fcd700;} 
*/
ins {background-color: #fcd700; color: #000; text-decoration: none;}
mark {background-color: #fcd700; color: #000; font-style: italic; font-weight: bold;}




#wrapper {  }
.inside {
	max-width: 90%;
	text-align: left;
	margin: 0 auto;
	display: inline-table;
	width: 90%;
	line-height: 1.8em;
	font-size: 1.1em;
}

header {
	padding-top: 20px;
	padding-right: 0;
	padding-bottom: 20px;
	padding-left: 0;
}
header p {
	font-size: 85%;
	color: #000;
}
header h1 { float: left; width: 40%; }
header ul { float: right; width: 60%; text-align: right; }
#index header ul { display: none; }

nav { background: #EDEDED; }
nav ul { width: 95%; margin: 0 auto;  border-right: 1px solid #fff; text-align: center; }
nav ul li { margin: 0 auto; text-align: left; padding: 16px; border-left: 1px solid #fff; border-bottom: 1px solid #fff; }
nav ul li:last-child { border-bottom: none; }
.inpage nav { border-top: 1px solid #fff; }

/* -- */
article { margin-top: 30px; }
article section { margin: 20px 0;  }
section h1 { margin-bottom: 28px; font-size: 140%; font-weight: bold; color: #20202F;
border-top: 4px solid #0C479D;
border-bottom: 1px dotted #333;
background: #f7f7f7;
padding: 20px;
}
article section .inside { padding-bottom: 1em; }

section .btn { margin: 20px auto;  }
section .btn li { text-align: center; margin-bottom: 10px; }
section .shoulder { color: #0C479D;
margin-top: 10px; margin-bottom: 10px; font-size: 120%;
font-weight: bold;
padding: 10px 0; }
section div.image { text-align: center; margin: 20px auto;  }
section p.btn { text-align: center; margin: 30px auto; }

/* tableBox
section .tableBox {
	border: 1px solid #e4e4e4;
	background-image:url(../../img/tablebox_bg.gif);	
}
section .tableType10 tr td {
	background:none;
}
section .tableType10 .row01 td {
	height:30px;
	vertical-align:bottom;
}
section .tableType10 .row02 td {
	padding-top:5px;
	padding-bottom:20px;
}
section .tableType10 td.col01 {
	padding-left:20px;
	width:125px;
}
section .tableType10 td.col02 {
	width:555px;
}
section .tableType10 td.col03 {
	width:100px;
}
section .tableType10 td p.text {
	font-weight:bold;
}

section .tableType10 .inputURL {
	height:20px;
	width:98%;
}
 */




ul.notice { font-size: 90%; margin: 20px 0 40px;}
ul.notice li { text-indent: -1em; margin-left: 1em; }

ul.pointlist li { text-indent: -1em; margin-left: 1em;
margin-bottom: 1em; }
ul.pointlist li span { width: 1em; color: #333; }
ul.pointlist li strong { font-size:1.15em; color: #0C479D; }
ul.recommend li strong { font-size:1.1em; line-height:1.8; }


#systemfig { border: 2px solid #313140; padding: 20px; border-radius: 10px; margin-top: 20px; }

#requirements h2 { color: #0C479D; margin-bottom: 10px; }
#requirements p.txt { margin: 0 20px 20px; }
#requirements h3 { color: #787881; margin-top: 20px; }
#requirements  dl { margin: 0 20px 10px; position: relative; overflow: hidden; zoom:1; }
#requirements dt { font-weight: bold; }
#requirements dd { margin-left: 20px; }

#flow .explain { border: 1px solid #EDEDED; padding: 10px; border-radius: 8px; display: table; margin-bottom: 20px; width: 95%;
}
#flow .explain dt { font-weight: bold; margin-bottom: 10px; background: #EDEDED; padding: 8px;
}


#flow #key02 .explain dl { display: table-cell; vertical-align: top; width: 60%; }
#flow #key02 .explain p { display: table-cell; text-align: right; }
#flow #key03 .explain p { margin: 10px auto 0; text-align: center; }
.comingsoon { margin: 0 0 200px 0; }


/* footer */
footer { background: #0C479D;
 color: #FFFFFF; font-size: 85%; padding: 10px 0; }
footer a:link { color: #fff; }
footer a:visited { color: #fff; }
footer address { font-style: normal; text-align: center; clear: both; }
footer .inside { padding: 12px 20px; }
footer p.logo {
<!--	font-size: 90%;-->
	text-align: left;
	float: left;
	width: 330px;
}
footer ul {  }
footer li { display: inline-block; padding-left: 20px; }


#pagetitle {
	background-color: #fff;
}
#pagetitle h1 {
	margin: 0 0 24px 0;
	padding: 32px;
	font-size: 150%;
	color: #fff;
	font-weight: bold;
	background: #0C479D;
border-bottom: 1px solid #0C479D;
}
#mainimage {
	/* background-color: #00A5FA; */
	background-color: #013479;
}

#social { height: 60px; }
#social li { padding: 12px 24px 0 0; display: inline-block; }

#information { background: url(../../img/info_bg.gif) bottom repeat-x; }
#demo { text-align: center; }
#demo dt { text-align: left; margin-bottom: 10px; }
#contact { text-align: center; margin: 20px auto 0; width: 300px }
#contact dd { background: #1BA2AD; }




/* Media queries!
-------------------------------------------------------------------------------*/
@media only screen 
and (min-width : 480px) {
html{ font-size : 87.5%;} 
}

@media only screen 
and (min-width : 768px) {
html{ font-size : 87.5%;} 

nav ul li { width: 24%; margin: 0 auto; text-align: center; padding: 16px 0; border-bottom: none; display: inline-block; }
#information .inside { position: relative; }
#information .inside {  }
#information #demo { text-align: left; max-width: 55%; margin-bottom: 16px; }
#information #contact { position: absolute; right: 0; bottom: 0; }

/* -- */
article section { padding-bottom: 20px; }

section .btn { margin: 20px auto 10px; display: inline-table; white-space: nowrap; }
section .btn li { display: inline-block; max-width: 33%; padding-right: 8px; margin-bottom: 0; }
section .btn li.last { padding-right: 0; }

section div.explain {
	width: 70%;
	display: table-cell;
	vertical-align: middle;
}
section div.image {
	text-align: center;
	width: 300px;
	display: table-cell;
	vertical-align: middle;
	margin-top: 20px;
	margin-right: auto;
	margin-bottom: 20px;
	margin-left: auto;
}

#flow .explain { width: 46%; }
#flow .fl { float: left; }
#flow .fr { float: right; }

#requirements dt { position: absolute; left: 0; }
#requirements dd { margin-left: 240px; }



}


/* Media queries!
-------------------------------------------------------------------------------*/

@media only screen 
and (min-width : 1024px) {

html{ font-size : 100%};

.inside { width: 920px; }
nav ul { width: 960px; }
footer ul { float: left; width: 340px; padding-top: 12px; }
footer address { text-align: right; float: right; padding-top: 12px; white-space: nowrap; clear: none; }
#information #demo { width: 600px; }


/* -- */


}



/* Consider this: www.cloudfour.com/css-media-query-for-mobile-is-fools-gold/ */
@media screen and (max-device-width: 480px) {
	
}

@media all and (orientation: portrait) {
	
}

@media all and (orientation: landscape) {
	
}


/* Print styles!
-------------------------------------------------------------------------------*/
@media print {


}

/* Print styles!
-------------------------------------------------------------------------------*/
#pagetopBtn{
ext-align: right; 
position: fixed;
right: 15px;
z-index: 9000;
}

table.priceTable { width: 100%; border-top: 2px solid #fff;border-bottom: 2px solid #fff;  }
table.priceTable .thead th { background: #0C479D!important; font-weight: normal; color: #fff; }
table.priceTable th { text-align: left; padding: 8px; vertical-align: top; border-top: 2px solid #fff;border-bottom: 2px solid #fff; font-weight: normal; white-space: nowrap; }
table.priceTable td { text-align: left; padding: 8px; vertical-align: top; border: 2px solid #fff;}
table.priceTable .first { border-left: 2px solid #fff; }
table.priceTable .last { border-right: none; }
table.priceTable .none { border-left: none; border-right: none; }
table.priceTable strong { color:#0C479D; font-size: 150%; }
table.priceTable tr:nth-child(even) th,
table.priceTable tr:nth-child(even) td { background: #f4f4f4;
}
table.priceTable tr:nth-child(odd) th,
table.priceTable tr:nth-child(odd) td { background: #ededed;
}

#price section h1 { margin-bottom: 14px;  }
