@charset "utf-8";

@import "normalize.css";

html {
	overflow-y: scroll;
}

body {
	color: #333333;
	font-size: 13px;
	font-family: "ＭＳ Ｐゴシック", "MS P Gothic", Osaka, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Verdana, sans-serif;
	line-height: 20px;
	background-color: #F9F9F9;
	background-image: url(../image/back.jpg);
	background-repeat: repeat-x;
	text-align: center;
	padding: 0;
	margin: 0;
}

img {
	border-style: none;
}

img.ic {
	vertical-align: bottom;
}

.sp {
	display: none;
}

#sb-site {
	width: 100% !important;
	text-align: center;
}

a:link {
	color: #2537A5;
	text-decoration: none;
}

a:visited {
	color: #2537A5;
	text-decoration: none;
}

a:active {
	color: #FF9900;
	text-decoration: none;
}

a:hover {
	color: #FF9900;
	text-decoration: underline;
}

h1 {
	margin:0;
}

h2 {
	height: 48px;
	width: 723px;
	background-image: url(../image/h2.jpg);
	background-repeat: no-repeat;
	font-size: 20px;
	font-weight: bold;
	color: #FFFFFF;
	margin: 15px auto 20px;
	padding: 33px 0 0 25px;
}

h3 {
	width: 723px;
	height: auto;
	margin: 10px auto 13px;
	padding: 8px 0 8px 10px;
	color: #050950;
	font-size: 15px;
	font-weight: bold;
	border-bottom: 2px solid #1d2060;
	line-height: 18px;
}

h3.news {
	height: 16px;
	margin: 0;
	padding: 8px 0 8px 5px;
	width: 387px;
	background: none;
	font-size: 16px;
	line-height: 16px;
}

h3.info {
	height: 16px;
	margin: 0;
	padding: 8px 0 8px 10px;
	width: 332px;
	background: #050950;
	color: #fff;
	font-size: 16px;
	line-height: 16px;
}

h4 {
	font-size: 14px;
	color: #333333;
	margin: 15px 0 10px 30px;
}

h4.line {
	font-size: 14px;
	color: #333333;
	margin: 15px 0 5px 30px;
	text-decoration: underline;
}

h5 {
	font-size: 13px;
	color: #333333;
	margin: 15px 0 5px 35px;
}

.style1 {
	font-size: 14px;
}

.style2 {color: #FFFFFF}

.style3 {color: #FF0000}

hr {
	border: #6f6b64 1px dotted;
}

#container {
	width: 1000px;
	height: auto;
	margin: 0 auto auto;
	text-align: center;
	overflow: hidden;
	background-image: url(../image/container_back.gif);
	background-repeat: repeat-y;
}

#header {
	width: 1000px;
	height: 88px;
	margin: 0;
	padding: 0;
	position: relative;
}

#header img{
	vertical-align: bottom;
}

#toggle, .sb-slidebar {
	display: none;
}

#nav {
	width: 184px;
	height: auto;
	margin: 0;
	padding: 18px 21px 10px;
	float: left;
	background-color: #050950;
}

#nav img{
	margin: 0;
	padding: 0;
	vertical-align: bottom;
}

#nav ul {
	margin: 0;
	padding: 0;
}

#nav li {
	list-style: none;
	line-height: 0;
	font-size: 0;
	margin: 0 0 8px;
	padding: 0;
}

#counter {
	margin: 20px auto 10px;
	padding: 0;
	text-align: center;
}

#main_top {
	width: 774px;
	height: auto;
	margin: 0;
	padding: 0 0 5px;
	text-align: left;
	float: right;
}

#main {
	width: 774px;
	height: auto;
	margin: 0;
	padding: 0 0 20px;
	text-align: left;
	float: right;
}

p {
	margin: 5px 30px 10px 35px;
	padding: 0;
	text-indent: 0.7em;
}

p.noindent { /* 字下げしない */
	text-indent: 0;
}

p.noindent_first {
	text-indent: 0;
	margin-top: 20px;
}

p.noindent_last {
	text-indent: 0;
	margin-bottom: 30px;
}

p.first { /* 冒頭段落：上マージン多めに取りたいとき */
	margin-top: 20px;
}

p.last { /* 最終段落：下マージン多め */
	margin-bottom: 30px;
}

p.both { /* 上下マージン多め */
	margin-top: 25px;
	margin-bottom: 30px;
}

ol {
	margin: 5px 15px 20px 40px;
	padding: 0 0 0 25px;
}

ul {
	margin: 5px 15px 20px 20px;
	padding: 0 0 0 25px;
}

li {
	margin: 0;
	padding: 2px 0;
}

ul li {
	list-style: none;
	padding: 2px 0 2px 17px;
	background-position: 0 6px;
	background-image: url(../image/li.gif);
	background-repeat: no-repeat;
}

ul.list_first, ol.list_first { 
	margin-top: 20px;
}

ul.index, ol.index { /* 目次やリンクページ用：行間広め */
	margin-top: 20px;
	margin-bottom: 25px;
}

ul.index li {
	padding: 12px 0 2px 15px;
	background-position: 0 15px;
	background-image: url(../image/li.gif);
	background-repeat: no-repeat;
}

ol.agreement {
	margin: 0 15px 20px 40px;
}

table {
	margin: 10px 10px 15px 30px;
	padding: 0;
}

table.center {
	margin: 5px auto 10px;
	padding: 0;
}

table.border {
	border-collapse: collapse;
	border-top: 1px dotted #9495B1;
}

table.border td {
	border-bottom: 1px dotted #9495B1;
	padding: 5px
}

table.border tr.color {
	background: #F4F4F4;
}

table.margin_none {
	margin: 0;
	padding: 0;
}

table.table_fee {
	margin: 0 0 10px 42px;
}

table.topics {
	border-collapse: collapse;
	border-top: 1px dotted #9495B1;
}

table.topics td {
	border-bottom: 1px dotted #9495B1;
	padding: 8px;
}

table.topics tr:hover {
	background-color: #F4F4F4;
}

table.journal_guide {
	margin: 5px auto 10px;
	padding: 0;
}

td.position {
	background-color: #9495B1;
	text-align: center;
	border-bottom: 1px solid #fff;
}

td.positionInside {
	background-color: #EAEAEA;
	text-align: center;
	border-bottom: 1px solid #fff;
}

.attention {
	margin: 25px;
	padding: 10px 0;
	border: solid thin #999999;
}

#top {
	width: 774px;
	margin-bottom: 15px;
	padding: 0;
}

#news {
	width: 392px;
	height: auto;
	padding: 0;
	float: left;
	margin: 0 13px;
}

/* IE 6 */
* html #news {
	width: 392px;
	height: auto;
	padding: 0;
	float: left;
	overflow: hidden;
	margin: 0 13px 0 6px;
}

#news ul.news {
	height: 240px;
	margin: 0;
	padding: 14px 15px 20px;
	list-style: none;
	overflow: auto;
	background-image: none;
}

#news ul.news li {
	padding: 6px 0;
	background: none;
}

#info {
	width: 342px;
	padding: 0;
	float: right;
	margin: 0 14px 30px 0;
	background-color: #F4F4F4;
}

/* IE 6 */
* html #info {
	width: 342px;
	padding: 0;
	float: right;
	background-color: #F4F4F4;
	overflow: hidden;
	margin: 0 7px 30px 0;
}

#info ul li {
	list-style: none;
	background-position: 0 6px;
	background-image: url(../image/li.gif);
	background-repeat: no-repeat;
	padding: 2px 0 12px 16px;
}

#info ul.info {
	margin: 0;
	list-style: none;
	padding: 18px 15px 10px 18px;
}

#banner {
	clear: both;
	width: 750px;
	margin: 10px auto 5px;
}

#banner ul {
	margin: 10px 0 0 15px;
}

#banner ul li {
	display: inline;
	list-style: none;
	margin: 0 15px 0 0;
	background: none;
}

#jstage {
	margin: 20px 0 0;
}

figure {
	margin: 5px 5px 5px 35px;
}

#footer {
	width: 1000px;
	height: 12px;
	margin: 0;
	padding: 8px 0 10px;
	clear: both;
	text-align: center;
	background: #050950;
	color: #fff;
}


/* ページトップへ戻る */

#page-top {
	display: block;
	position: fixed;
	z-index: 9999;
	bottom: 10px;
	right: 10px;
	width: 50px;
	height: 20px;
	padding: 15px 10px 10px;
	background: #000;
	color: #fff;
	text-align: center;
	text-decoration: none;
	font-size: 20px;
	line-height: 20px;
	clear: both;
	opacity: .7;
    filter: alpha(opacity=70);
}

#page-top:hover {
	opacity: .8;
    filter: alpha(opacity=80);
}

.arrow {
	position: absolute;
	width: 15px;
	height: 15px;
	border: 2px solid #000;
	border-left-color: #FFF;
	border-top-color: #FFF;
	top: 20px;
	left: 25px;
	transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-ms-transform: rotate(45deg)
}

@media print {
#page-top {
	display: none;
}
}


@media only screen and (max-width: 480px) {

body {
	background-image: none;
	background-color: #fff;
}

#sb-site {
	width: 100% !important;
	background: #fff;
}

.sp {
	display: block;
}

.pc {
	display: none;
}

#header {
	width: 100%;
	height: 50px;
	margin: 0 auto;
	position: static;
	padding: 0;
	background: url(../image/spback.png) repeat-x;
	background-size: contain;
}

#header h1 {
	position: static;
	height: auto;
	margin: 0;
}

#header h1 img {
	width: auto;
	height: 50px;
}

#lang {
	display: none;
}

#upnav, #nav {
	display: none;	
}

ul#menu {
	margin: 5px;
	padding: 0;
	background: #0d1157;
}

ul#menu li {
	width: 100%;
	list-style: none;
	margin: 0;
	padding: 0;
}

ul#menu li img {
	width: 100%;
}

#jstage_sp img {
	width: 92%;
	margin: 5px 4%;
}

#toggle {
	display: block;
	position: absolute;
	top: 6px;
	right: 6px;
	background: #fff;
	padding: 2px 0;
	cursor: pointer;
}

#toggle ul {
	margin: 0 ;
	padding: 0;
}

#toggle ul li {
	margin: 0 ;
	padding: 0;
	background: none;
	list-style: none;
}

.sb-slidebar {
	display: block;
	background: #0d1157 !important;
}

.css-bar {
	display: inline-block;
	position: relative;
	margin: 0 7px 3px;
	padding: 0;
	background: #0d1157;
}

.css-bar, .css-bar:before, .css-bar:after{
	width: 25px;
	height: 2px;
}

.css-bar:before, .css-bar:after{
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	background: #0d1157;
}

.css-bar:before{
	margin-top: -6px;
}

.css-bar:after{
	margin-top: 4px;
}

html.sb-active #sb-site, .sb-toggle-left, .sb-toggle-right, .sb-open-left, .sb-open-right, .sb-close {
	cursor: pointer;
}

#toggle p {
	margin: 0 auto 3px;
	padding: 0;
	font-size: 10px;
	color: #0d1157;
	text-indent: 0;
	font-family: Arial, Helvetica, sans-serif;
	line-height: 1;
}

#container {
	width: 100%;
	background: none;
}

#main_top {
	width: 100%;
	height: auto;
	float: none;
	margin: 0;
}

#top {
	width: 100%;
	height: auto;
	margin-bottom: 0;
}

#top img {
	width: 100%;
}

p.top {
	margin: 5px;
}

table.top {
	margin: 0 auto;
	width: 95%;
}

#news {
	width: 98%;
	height: auto;
	float: none;
	margin: 5px;
}

#news ul.news {
	height: 120px;
}

#info {
	width: 98%;
	height: auto;
	float: none;
	margin: 5px;
}

#banner {
	width: 98%;
	margin: 0 auto;
	float: none;
	position: static;
	overflow: hidden;
}

#banner ul {
	margin: 0;
	padding: 0;
}

#banner ul li {
	width: 40%;
	margin: 5%;
	padding: 0;
	float: left;
}

#banner img {
	width: 100%;
}

#footer {
	width: 100%;
	height: auto;
}

#main {
	width: 100%;
	float: none;
	margin: 0;
	padding: 0;
	min-height: 300px;
}

h2 {
	margin: 5px auto;
	width: 94%;
	height: auto;
	background-size: cover;
	font-size: 16px;
	padding: 10px 3%;
}

h3 {
	font-size: 15px;
	margin: 10px auto;
	padding: 6px 5px 4px;
	width: 98%;
}

h3.news {
	padding: 8px 1%;
	width: 98%;
}

h3.info {
	padding: 8px 0 8px 3%;
	width: 97%;
}

h4 {
	font-size: 14px;
	margin: 10px 5px;
	width: 100%;
}

h5 {
	font-size: 13px;
	margin: 10px 5px;
}

p {
	margin: 5px;
}

ul {
	margin: 5px 5px 5px 5px;
}

ol {
	margin: 5px 5px 5px 5px;
}

table {
	width: 100%;
	margin: 5px 0;
}

table td {
	width: auto;
}

table.journal_guide td {
	width: 33%;
}

table.journal_guide td img {
	width: 100%;
	height: auto;
}

table.table_fee {
	width: 93%;
	margin: 0 0 10px 5%;
}

table.table_fee td {
	width: auto;
}

td.nowrap {
	white-space: nowrap;
}

table.scroll {
	display: block;
	overflow-x: auto;
	white-space: nowrap;
	width: auto;
}

figure {
	width: 100%;
	margin: 10px auto;
}

figure.fl, figure.fr, figure.center {
	float: none;
	width: 100%;
	margin: 10px auto;
	text-align: center;
}

figure img {
	width: 95% !important;
}

#page-top{
  bottom: 25px;
  right: 10px;
}
}
