/*----------------------------------------------------------------------------
******************************************************************************
共通スタイル
******************************************************************************
----------------------------------------------------------------------------*/
/* ==== Base === */
body {
	background: url(../images/body_bg.jpg);
}

img {
	max-width: 100%;
	height: auto;
    width: auto\9; /* ie8 */
	border:none;
}

.layout {
	margin: 0 auto;
	overflow: hidden;
}

/* ==== Backgraund === */
#wrap {
	margin: 0 auto;
	overflow: hidden;
	background: url(../images/wrap_bg.jpg) repeat-x;
}
/* ==== Header === */
#hd {
	height: 169px;
}
/* ==== Content === */
#con {}
#main {
	margin:20px 0 40px;
	width: 100%;
}
/* ol,ul */
#main ol, #main ul {
	padding: 5px 0px 5px 25px;
}
#main ul {
	list-style-type: disc;
}
#main ol li, #main ul li {
	padding: 5px 0px;
}
/* table */
#main table {
	margin: 10px 0px;
}
#main table th, #main table td {
	padding: 5px;
}
/* img */
#main a img{
	display: inline-block;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-property: transform;
	-webkit-transition-property: -webkit-transform;
	transition-property: -webkit-transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
#main a img:hover, .shrink:focus, .shrink:active {
	-webkit-transform: scale(0.9);
	transform: scale(0.9);
}
#i_bnr a img{
	display: inline-block;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-property: transform;
	-webkit-transition-property: -webkit-transform;
	transition-property: -webkit-transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
#i_bnr a img:hover, .shrink:focus, .shrink:active {
	-webkit-transform: scale(0.9);
	transform: scale(0.9);
}
/* ==== Footer === */
#ft {
	padding-top: 35px;
	padding-bottom: 35px;
	text-align: center;
	background: #1E90FF;
	color: #FFFFFF;
}
a.sub_form {
	color: white;
	width: 120px;
	text-align: center;
	background: #00BFFF;
	text-decoration: none;
	border-radius: 4px;
	padding: 10px;
	margin: 10px auto 0;
	display: block;
}
#note {
	margin: 30px;
	border: 1px solid #00BFFF;
	padding: 10px;
}
/*----------------------------------------------------------------------------
Head
----------------------------------------------------------------------------*/
h1, h2, h3, h4, h5, h6 {
}
h1 {}
h2 {
	margin: 0em 0 0.8em 0;
	font-size: 2.0em;
	font-weight:bold;
	color: #fff;
	box-sizing:border-box;
	padding: 1em 0 1em 0em;
}
#h2_bg {
	background: #00008b; /* Old browsers */ /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#00008b), color-stop(100%,#00BFFF)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top, #00008b 0%,#00BFFF 100%); /* Chrome10+,Safari5.1+ */ /* Opera 11.10+ */ /* IE10+ */
	background: linear-gradient(to bottom, #00008b 0%,#00BFFF 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00008b', endColorstr='#00BFFF',GradientType=0 ); /* IE6-9 */
}

h3 {
	margin: 0.8em 0.8em 0.8em 0;
	font-size: 2.3em;
	font-weight:normal;
	box-sizing:border-box;
	padding: 0.0em 0 0.0em 0.6em;
	background: url(../images/h3_bg.jpg) left center no-repeat;
	border-left: 10px solid #1E90FF;
}
h4 {
	font-size: 1.3em;
	font-weight: normal;
	padding: 0.4em 1em 0.3em 1em;
	margin: 1em 0 0.5em 0;
	background: #1E90FF;
	color: #FFFFFF;
}
h5 {
	font-size: 1.2em;
	margin: 1.2em 1em 0.3em 0;
	border-bottom: dotted 2px #1E90FF;
	padding: 0.4em 0;
}
	
h1.img, h2.img, h3.img, h4.img, h5.img, h6.img { margin: 0;padding: 0;background: none;border: none; }

/*----------------------------------------------------------------------------
Original
----------------------------------------------------------------------------*/
/* ==== Index === */
#i_img {
	position: relative;
	margin-bottom:30px;
}
/* ==== 新着情報 === */
#iframe_area {
	width:100%;
	height:150px;
	overflow:auto; 
    -webkit-overflow-scrolling:touch;
}
#i_news_frame {
	width:100%;
	height:100%;
	border:none;
	display:block;
}
#i_news {}
#i_news table {}
#i_news table td {
	vertical-align: top;
	font-size: 0.9em;
	padding: 15px;
	border-bottom: 1px solid #CCC;
}
#i_news table td.date {
	width: 18%;
	padding-left: 15px;
	font-weight:bold;
}
/*----pagetop----*/
#page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    font-size: 77%;
}
#page-top a {
    background: #00BFFF;
    text-decoration: none;
    color: #fff;
    text-align: center;
    display: block;
    border-radius: 5px;
}
#page-top a:hover {
    text-decoration: none;
}
/* ==== i_bnr === */
#i_bnr{
	margin-top:30px;
	background: #666666;
	padding: 20px 0;
	text-align:center;
}
#i_bnr ul { 
	display:table;
	table-layout:fixed;
}
#i_bnr ul li{
	display:table-cell;
	vertical-align: middle;
}
#i_bnr ul li span {
	color: white;
	display: block;
}
ul.serialize {
	overflow: hidden;
}
ul.serialize li:nth-child(odd) {
	float: left;
	width: 490px;
}


/*----------------------------------------------------------------------------
******************************************************************************
スマホのスタイル
******************************************************************************
----------------------------------------------------------------------------*/

@media screen and (max-width:599px){
/* ==== Base === */
.layout {width: 100%;}
#con {width:90%;}

.br_non br {
	display: none;
}
/* ==== Header === */
#hd {
	width: 100%;

/*
	background: url(../images/sp_hd_bg.jpg) no-repeat;
*/

}
/* ==== グローバルナビ === */
#pc_nav{ display: none;}

#nav {
	background: #1E90FF;
	overflow: hidden;
}
#nav {}
#nav ul {}
#nav ul li {
	width: 100%;
	text-align:center;
	box-sizing:border-box;
	border-right: #FFF 1px solid;
	border-bottom: #FFF 1px solid;
}
#nav ul li a {
	display: block;
	text-decoration: none;
	font-size: 15px;
	font-weight: bold;
	color: #000000 !important;
	padding: 15px 0;
}
#nav li a:hover,
#nav li.current a{
	background: #00BFFF;
	color: #000000 !important;
}
/* ==== h1 img === */
.logo_pc {
	display:none;
}
.logo_sp {
	display:block;
	margin: -20px 5px 0;
} 
h1 {
	margin:40px auto 0;
}
h2 {
	text-align:center;
	font-size: 1.5em;
}
h3 {
	font-size: 1.9em;
}

/* ==== Index === */
/* ==== i_img === */
.slider_btn a{
	background: url(../images/i_btn_bg.jpg) 95% 50% no-repeat, rgba(255,255,255,0.65);
	padding: 15px 0px 15px 10px;
	width: 180px;
	height: 50px;
	box-sizing: border-box;
	font-size: 0.9em;
	font-weight:bold;
	text-decoration:none;
	color: #000;
	display: block;
}
.btn01{
	position:absolute;
	top: 2px;
	z-index: 10000000;
}
.btn02{
	position:absolute;
	top: 60px;
	z-index: 10000000;
}
/* ==== トップ　左コンテンツ === */
#i_leftbox {
	width: 100%;
	float: none;
	background: #F0F0F0;
	margin-top: 0px;
	padding: 15px;
	box-sizing:border-box;
	font-size:14px;
}
#i_leftbox p.L_ttl  {
	font-size: 1.3em;
	font-weight: bold;
	border-left: 10px solid #1E90FF;
	padding-left: 0.5em;
}
#i_leftbox ul  {
	margin-bottom: 40px;
}
#i_leftbox ul li {
	border-bottom: 1px dotted #999999;
	box-sizing:border-box;
	padding: 15px 0;
	line-height: 1.3em;
}
#i_leftbox ul li .i_date {
	color:#00BFFF;
	font-weight:bold;
	line-height: 2em;
}
/* ==== トップ　右コンテンツ === */
#i_rightbox {
	width: 100%;
	float: none;
	margin-top: 40px;
}
#i_rightbox p.R_ttl  {
	font-size: 1.9em;
	font-weight: normal;
	border-bottom: 2px solid #1E90FF;
	padding-bottom: 0.5em;
	line-height: 1.2em;
	margin: 30px 0 10px;
}
/* ==== i_news === */
#i_news_frame {
	width:100%;
}
/* ==== pagetop === */
#page-top a {
    width: 40px;
    padding: 10px;
}
/* ==== Footer === */
footer {
	font-size: 0.8em;
}
/* ==== i_bnr === */
#i_bnr ul li {
	padding:2%;

}
}


/*----------------------------------------------------------------------------
******************************************************************************
タブレットのスタイル
******************************************************************************
----------------------------------------------------------------------------*/
@media screen and (min-width:600px){
/* ==== Base === */
.layout {
	width: 100%;
}
#con {
	width:94%;
}
.br_non br {
	display: none;
}
/* ==== Header === */
#hd {
	width: 100%;
	background: url(../images/hd_bg.jpg) no-repeat;
}
/* ==== グローバルナビ === */
#pc_nav { display: none;}
#nav {
	background: #1E90FF;
	overflow: hidden;
}
#nav {}
#nav ul {}
#nav ul li {
	width: 50%;
	float: left;
	text-align:center;
	box-sizing:border-box;
	border-right: #FFF 1px solid;
	border-bottom: #FFF 1px solid;
}
#nav ul li a {
	display: block;
	text-decoration: none;
	font-size: 15px;
	font-weight: bold;
	color: #000000 !important;
	padding: 15px 0;
}
#nav li a:hover,
#nav li.current a{
	background: #00BFFF;
	color: #000000 !important;
}
#nav ul li:first-child {
	display:none;
}
/* ==== h1 img === */
.logo_pc {
	display:none;
}
.logo_sp {
	display:block;
} 
h1 {
	margin: 40px 0 0 2%;
}
h2 {
	text-align:center;
}
/* ==== Content === */
#con {}

/* ==== Index === */
/* ==== i_img === */
.slider_btn a{
	background: url(../images/i_btn_bg.jpg) 95% 50% no-repeat, rgba(255,255,255,0.65);
	padding: 30px 0px 30px 30px;
	width: 300px;
	height: 80px;
	box-sizing: border-box;
	font-size: 1.2em;
	font-weight:bold;
	text-decoration:none;
	color: #000;
	display: block;
}
.btn01{
	position:absolute;
	top: 10px;
	z-index: 10000000;
}
.btn02{
	position:absolute;
	top: 100px;
	z-index: 10000000;
}
/* ==== トップ　左コンテンツ === */
#i_leftbox {
	width: 100%;
	float: none;
	background: #F0F0F0;
	margin-top: 0px;
	padding: 15px;
	box-sizing:border-box;
	font-size:14px;
}
#i_leftbox p.L_ttl  {
	font-size: 1.3em;
	font-weight: bold;
	border-left: 10px solid #1E90FF;
	padding-left: 0.5em;
}
.leftbox_br br{
	display: none;
}
#i_leftbox ul  {
	margin-bottom: 40px;
}
#i_leftbox ul li {
	border-bottom: 1px dotted #999999;
	box-sizing:border-box;
	padding: 15px 0;
	line-height: 1.3em;
}
#i_leftbox ul li .i_date {
	color:#00BFFF;
	font-weight:bold;
	line-height: 2em;
}
/* ==== トップ　右コンテンツ === */
#i_rightbox {
	width: 100%;
	float: none;
	margin-top: 40px;
}
#i_rightbox p.R_ttl  {
	font-size: 2.2em;
	font-weight: normal;
	border-bottom: 2px solid #1E90FF;
	padding-bottom: 0.5em;
	line-height: 1.2em;
	margin: 30px 0 10px;
}
/* ==== i_news === */
#i_news_frame {
	width:100%;
}
/* ==== pagetop === */
#page-top a {
    width: 80px;
    padding: 30px 0;
}
}

/*----------------------------------------------------------------------------
******************************************************************************
パソコンのスタイル
******************************************************************************
----------------------------------------------------------------------------*/
@media screen and (min-width:1025px){
/* ==== Base === */
.layout {width: 960px;}

.br_non br {
	display: block;
}
/* ==== Header === */
#hd {
	width: 960px;
	background: url(../images/hd_bg.jpg) no-repeat;
	box-shadow: none;
}
/* ==== h1 === */
.logo_pc {display: block;}
.logo_sp {display: none;} 

h1 {
	margin-top: 33px;
	width: 100%;
}
h2 {
	text-align:left;
}
/* ==== Content === */
#con {width: 960px;}

/* ==== グローバルナビ === */
#nav { display:none !important;}
#pc_nav { display: block;}
#pc_nav {
	background: #1E90FF;
}
nav {
	height: 55px;
	background: url(../images/nav_bg.jpg) no-repeat;
}
nav ul {}
nav li {
	float: left;
}
nav a img.current {
	opacity: 0;
	filter: alpha(Opacity=0);
}
/* ==== index === */
/* ==== i_img === */
.slider_btn a{
	background: url(../images/i_btn_bg.jpg) 95% 50% no-repeat, rgba(255,255,255,0.65);
	padding: 30px 0px 30px 30px;
	width: 300px;
	height: 80px;
	box-sizing: border-box;
	font-size: 1.2em;
	font-weight:bold;
	text-decoration:none;
	color: #000;
	display: block;
}
.btn01{
	position:absolute;
	top: 30px;
	z-index: 10000000;
}
.btn02{
	position:absolute;
	top: 120px;
	z-index: 10000000;
}
/* ==== トップ　左コンテンツ === */
#i_leftbox {
	width: 300px;/*300px*/
	float: left;
	background: #F0F0F0;
	padding: 15px;
	box-sizing:border-box;
	font-size:14px;
	padding-bottom: 80px;
}
#i_leftbox p.L_ttl  {
	font-size: 1.3em;
	font-weight: bold;
	border-left: 10px solid #1E90FF;
	padding-left: 0.5em;
}
.leftbox_br br{
	display: block;
}
#i_leftbox ul  {
	margin-bottom: 70px;
}
#i_leftbox ul li {
	border-bottom: 1px dotted #999999;
	box-sizing:border-box;
	padding: 15px 0;
	line-height: 1.3em;
}
#i_leftbox ul li .i_date {
	color:#00BFFF;
	font-weight:bold;
	line-height: 2em;
}
/* ==== トップ　右コンテンツ === */
#i_rightbox {
	width: 640px;/*640px*/
	float: right;
	margin-top:0;
}
#i_rightbox p.R_ttl  {
	font-size: 2.3em;
	font-weight: normal;
	border-bottom: 2px solid #1E90FF;
	padding-bottom: 0.5em;
	line-height: 1.2em;
	margin: 30px 0 10px;
}
/* ==== i_news === */
#i_news_frame {
	width:100%;
}

/* ==== pagetop === */
#page-top a {
    width: 100px;
    padding: 30px 0;
}
	#keynote {
		overflow: hidden;
	}
#keynote figure {
	float: left;
	width: 200px;
	margin-right: 20px;
}
	#keynote  p  {
		content: "";
		display: block;
		width: 77%;
		float: right;
		
	}
}

/* PC・スマートフォン テーブル表示（2019/09/25追加） */
.pc th{
    text-align:center;
    background-color:#E0FFFF;
}

.pc th,td{
    border-style:solid;
    border-width:1px;
    border-color:#999999;
    width:140px;
}

.sp th{
    width:64px;
    font-weight:bold;
    white-space:nowrap;
}

.sp td{
    border-style:none;
    white-space:nowrap;
}

.pc { display: block !important; }
.sp { display: none !important; }

@media only screen and (max-width: 750px) {
.pc { display: none !important; }
.sp { display: block !important; }
}
