@charset "utf-8";
/* FORM */

html, body {
	width: 100%;
	height: 100%;
	/*font-family:'Tahoma';*/
	margin: 0 auto;
	padding: 0;
}
html {
}
body {
	width: 100%;
	text-align: center;
	word-break: break-all;
	word-wrap: break-word;
	color: #333333;
	/*background-color: #ffffff;*/
}
@media only screen and (max-width: 640px) {
}
/*-----------------全共通-----------------*/
.wrap {
	width:100%;
	text-align:center;
}
.wrap .contents {
	width:990px;
	word-break: normal;
	word-wrap: normal;
	margin-left:auto;
	margin-right:auto;
	z-index: 0;
	position: relative;
	text-align:left;
}
.wrap .contents h2 {
	text-align: center;
	font-size: 40px;
	font-weight: bold;
}
/*-----------------全共通-----------------*/

/*-----------------head------------------*/
#tophead{
	background-color: #ffffff;
	border-top: solid 2px #E7CCAA;
	padding: 15px 0;
	position: fixed;
	z-index: 10;
}
#tophead .contents{
	text-align: center;
	position: relative;
}
#tophead .contents .logo {
	display: inline-block;
	*display: inline;
	*zoom:1;
}
#tophead .contents .logo img{
	padding-top: 3px;
	padding-bottom: 3px;
}
#tophead .contents .logo:hover{
	opacity:0.5;
	filter:alpha(opacity=50);
	-ms-filter: "alpha( opacity=50 )";

	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}
#tophead .contents table .left_td {
  text-align: left;
}
#tophead .contents table .left_td p {
  font-size: 18px;
  font-weight: bold;
  height: 18px;
  line-height: 18px;
  margin-bottom: 5px;
  color: #012D42;
}
#tophead .contents table .right_td {
  text-align: right;
}
#tophead .contents table .right_td a {
  text-decoration: none;
  color: #1a1a1a;
}
#tophead .contents table .right_td div {
  display: inline-block;
  border: solid 1px rgb(196, 196, 196);
  margin-bottom: 3px;
  padding: 4px 10px;
}
#tophead .contents table .right_td div:hover {
	background-color: rgb(247, 247, 247);
	opacity: 0.7;
}
#tophead .contents table .right_td div.no_hover:hover {
	background-color: #ffffff;
	opacity: 1;
  }
#tophead .contents table .right_td .logout p {
	font-size: 10px;
	line-height: 20px;
}
#tophead .contents table .right_td div img {
  margin-top: 8;
  width:20px;
  height:20px;
  display: inline-block;
}
#tophead .contents table .right_td div p {
  margin-top: 8;
  display: inline-block;
}
#tophead .contents table .right_td input {
  width: 142px;
  /* height: 20px; */
  padding: 1px 5px;
  /* background: url(/img/bg_yubikey.gif) no-repeat 4px 1px #fff; */
  outline: 0;
  border: 1px #555 solid;
}
#tophead .contents table .right_td button {
  margin-top: 3px;
  padding: 3px 12px;
  width: 242px;
}
#tophead .contents table .right_td .loginfailed_message {
  color:red;
}
#tophead .contents table .right_td input:focus{
  background-image: none;
}
@media only screen and (max-width: 990px) {
	#tophead{
          position:static;
          width:990px;
	}
}
/*-----------------head------------------*/

/*-----------------g-navi------------------*/
#g-navi{
	background-color: #ffffff;
	border-top: solid 2px #002C41;
	border-bottom: solid 2px #002C41;
	padding: 10px 0;

	position: fixed;
	top: 84px;
	z-index: 100;
}
#g-navi .contents {
	text-align: center;
}
#g-navi .contents ul{
	color: #777777;
	font-size: 15px;
	font-weight: bold;
	text-align: center;
}
#g-navi .contents ul li{
	display: inline-block;
	*display: inline;
	*zoom:1;
	margin: 0 15px;
}
#g-navi .contents ul li a{
	display: inline-block;
	*display: inline;
	*zoom:1;
	color: #012D42;
	font-size: 15px;
	font-weight: bold;
}
#g-navi .contents ul li a:hover{
	text-decoration: none;

	opacity:0.5;
	filter:alpha(opacity=50);
	-ms-filter: "alpha( opacity=50 )";

	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;

}
@media only screen and (max-width: 990px) {
	#g-navi{
          position:static;
          width:990px;
	}
}
/*-----------------g-navi------------------*/

/*-----------------keyvisual------------------*/
#keyvisual{
  background-image: url(/img/bg_keyvisual.png);
  background-repeat: no-repeat;
  background-position: center center;
  padding-top: 129px;
}
#keyvisual .contents{
}
#keyvisual .contents h2{
	font-size: 28px;
	font-weight: normal;
	color: #FFFFFF;
	letter-spacing: -1px;
	height: 140px;
	line-height: 140px;
	text-shadow:0px 0px 8px #000000;
}
@media only screen and (max-width: 990px) {
	#keyvisual{
          display:none;
	}
}
/*-----------------keyvisual------------------*/

/*-----------------main------------------*/
#main{
	background-color: #ffffff;
}
#keyvisual + #main{
	border-top: 0;
}
#main .contents *{
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}
#main .contents {
	padding: 20px 0;
}
#main .contents .menu {
}
#main .contents .menu tr {
}
#main .contents .menu tr + tr th {
	border-top: solid 18px #ffffff;
}
#main .contents .menu tr th {
	border-left: solid 18px #ffffff;
	width: 234px;
}
#main .contents .menu tr th:first-child {
	border-left: 0;
}
#main .contents .menu tr th h3 {
	border: solid 2px #015A76;
	text-align: center;
	height: 46px;
	line-height: 46px;
	color: #015A76;
	font-size: 24px;
	font-weight: bold;
}
#main .contents .menu tr th h3.free {
	border: solid 2px #015A76;
	background-color: #015A76;
	text-align: center;
	height: 46px;
	line-height: 46px;
	color: #ffffff;
	font-size: 24px;
	font-weight: bold;
}
#main .contents .menu tr td {
	background-color: #F0E8D9;
	border-top: solid 10px #ffffff;
	border-left: solid 18px #ffffff;
	padding: 10px;
	vertical-align: top;
}
#main .contents .menu tr td:first-child {
	border-left: 0;
}
#main .contents .menu tr td ul {
}
#main .contents .menu tr td ul li {
	margin-bottom: 2px;
}
#main .contents .menu tr td ul li a {
	background-image: url(/img/icon_arrow-navy.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 10px;
	color: #444444;
	font-size: 16px;
}
#main .contents .menu tr td ul li a:hover {
	text-decoration: none;
        font-weight:bold;
        color:#012D42;
	/* //opacity:0.4;
	//filter:alpha(opacity=40);
	//-ms-filter: "alpha( opacity=40 )"; */

	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}
#main .contents .iframe_news{
	display: inline-block;
	*display: inline;
	*zoom:1;
	vertical-align: top;
	margin-top: 20px;
	width: 485px;
}
#main .contents .headline{
}
#main .contents .information{
	margin-left: 15px;
}
#main .contents .iframe_news h3{
	line-height: 1;
	background-image: url(/img/dot_white.png);
	background-repeat: repeat-y;
	background-position: 10px center;
	background-color: #012D42;
	padding-left: 20px;
	color: #ffffff;
	font-size: 24px;
	font-weight: bold;
	border-top: solid 13px #012D42;
	border-bottom: solid 13px #012D42;
}
#main .contents .iframe_news div{
	background-color: #F0E8D9;
	margin-top: 10px;
	width: 485px;
	vertical-align:bottom;
	min-height: 340px;
}
#main .contents .iframe_news div ul {
	list-style:none;
	padding:20px 20px 0 20px;
	width: 445px;
	height: auto;
}
#main .contents .iframe_news div ul li {
	display: block;
	padding-bottom: 20px;
	text-align: left;
	padding-top: 20px;
	border-top: dotted 1px #444444;
	height: 44px;
}
#main .contents .iframe_news.headline div ul li {
	display: block;
	padding-bottom: 12px;
	text-align: left;
	padding-top: 12px;
	border-top: dotted 1px #444444;
	height: 20px;
}
#main .contents .iframe_news div ul li:first-child {
	padding-top: 0;
	border-top: 0;
}
#main .contents .iframe_news div ul li {
	display: block;
	padding-bottom: 20px;
	text-align: left;
	padding-top: 20px;
	border-top: dotted 1px #444444;
	height: 44px;
}
#main .contents .iframe_news div ul li p {
	display: block;
	color: #444444;
	font-size: 16px;
	font-weight: bold;
	height: 16px;
	line-height: 16px;
	margin-bottom: 10px;
}
#main .contents .iframe_news div ul li a {
    display: inline-block;
    *display: inline;
    *zoom: 1;
    font-size: 16px;
    height: 18px;
    line-height: 20px;
    width: 435px;
    padding-left: 10px;
    background-image: url(/img/icon_arrow-navy.png);
    background-repeat: no-repeat;
    background-position: left center;
    color: #012D42;
    word-break: normal;
    word-wrap: normal;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    -webkit-text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
}
#main .contents .iframe_news div ul li a:hover {
	text-decoration: none;

	opacity:0.4;
	filter:alpha(opacity=40);
	-ms-filter: "alpha( opacity=40 )";

	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}
#main .contents .iframe_news div iframe{
	margin: 0;
	width: 485px;
	vertical-align:bottom;
	height: 340px;
}
body.iframe_news_list{
	width: 485px;
}
body.iframe_news_list ul{
	list-style: none;
	padding: 20px 20px 0 20px;
	width: 445px;
	height: auto;
}
body.iframe_news_list ul li{
	display: block;
	padding-bottom: 20px;
	text-align: left;
	padding-top: 20px;
	border-top: dotted 1px #444444;
	height: 44px;
}
body.iframe_news_list ul li:first-child{
	padding-top: 0;
	border-top: 0;
}
body.iframe_news_list ul li p{
	display: block;
	color: #444444;
	font-size: 16px;
	font-weight: bold;
	height: 16px;
	line-height: 16px;
	margin-bottom: 10px;

}
body.iframe_news_list ul li a{
	display: inline-block;
	*display: inline;
	*zoom:1;
	font-size: 16px;
	height: 18px;
	line-height: 20px;
	width: 435px;
	padding-left: 10px;
	background-image: url(/img/icon_arrow-navy.png);
	background-repeat: no-repeat;
	background-position: left center;
	color: #012D42;

	word-break: normal;
	word-wrap: normal;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	-webkit-text-overflow: ellipsis;
	-o-text-overflow: ellipsis;
}
body.iframe_news_list ul li a:hover{
	text-decoration: none;

	opacity:0.4;
	filter:alpha(opacity=40);
	-ms-filter: "alpha( opacity=40 )";

	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}
#main .contents .sample{
	margin-top: 20px;
}
#main .contents .sample h3{
	line-height: 1;
	background-image: url(/img/dot_white.png);
	background-repeat: repeat-y;
	background-position: 10px center;
	background-color: #012D42;
	padding-left: 20px;
	color: #ffffff;
	font-size: 24px;
	font-weight: bold;
	border-top: solid 13px #012D42;
	border-bottom: solid 13px #012D42;
}
#main .contents .sample div{
	margin-top: 10px;
	background-color: #dddddd;
}
#main .contents .sample div iframe{
	width:990px;
}
body.iframe_sample{
	width:990px;
}
body.iframe_sample p{
	font-size: 40px;
	color: #595757;
	text-align: center;
	padding: 100px 0;
}
@media only screen and (max-width: 640px) {
	#main{
	}
}
/*-----------------main------------------*/

/*-----------------gotop------------------*/
#gotop{
        min-width:990px;
	background-color: #F0E8D9;
}
#gotop:hover{
	background-color: #F0E8D9;

	opacity:0.5;
	filter:alpha(opacity=50);
	-ms-filter: "alpha( opacity=50 )";

	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}
#gotop a{
	display: block;
	padding-top: 24px;
	padding-bottom: 22px;
}
@media only screen and (max-width: 640px) {
	#gotop{
	}
}
/*-----------------gotop------------------*/

/*-----------------footnavi------------------*/
#footnavi{
	background-color: #012D42;
        min-width:990px;
}
#footnavi .contents{
	padding: 20px 0 10px;
}
#footnavi .contents table {
}
#footnavi .contents table tr {
}
#footnavi .contents table tr + tr th {
	border-top: solid 20px #012D42;
}
#footnavi .contents table tr th {
	border-left: solid 10px #012D42;
	width: 240px;
}
#footnavi .contents table tr th:first-child {
	border-left: 0;
}
#footnavi .contents table tr th h3 {
	text-align: left;
	height: 40px;
	color: #ffffff;
	font-size: 20px;
	font-weight: bold;
	display: block;
}
#footnavi .contents table tr td {
	border-right: solid 10px #012D42;
	vertical-align: top;
	background-image: url(/img/dot_navy.png);
	background-repeat: repeat-y;
}
#footnavi .contents table tr td:first-child + * + * + *,
#footnavi .contents table tr td:first-child + * + * + * + * + * + * + * {
	border-right: 0;
}
#footnavi .contents table tr td ul {
}
#footnavi .contents table tr td ul li {
	margin-bottom: 10px;
}
#footnavi .contents table tr td ul li a {
	padding-left: 20px;
	color: #E5CEBB;
	font-size: 16px;
}
#footnavi .contents table tr td ul li a:hover {
	text-decoration: none;

	opacity:0.4;
	filter:alpha(opacity=40);
	-ms-filter: "alpha( opacity=40 )";

	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}
#footnavi .contents > ul{
	margin-top: 40px;
}
#footnavi .contents > ul li{
	display: inline-block;
	*display: inline;
	*zoom:1;
	margin: 0 15px 10px 0;
}
#footnavi .contents > ul li a{
	background-image: url(/img/icon_arrow-white.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 10px;
	color: #E5CEBB;
	font-size: 16px;
}
#footnavi .contents > ul li a:hover {
	text-decoration: none;

	opacity:0.4;
	filter:alpha(opacity=40);
	-ms-filter: "alpha( opacity=40 )";

	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}
@media only screen and (max-width: 640px) {
	#footnavi{
	}
}
/*-----------------footnavi------------------*/

/*-----------------copy------------------*/
#copy{
	background-color: #012D42;
	border-top: solid 2px #012D42;
        min-width:990px;
}
#copy .contents{
	padding: 20px 0;
}
#copy .contents p{
	color: #ffffff;
	font-size: 12px;
	display: inline-block;
	*display: inline;
	*zoom:1;
	width: 50%;
}
#copy .contents p:first-child + *{
	text-align: right;
}
@media only screen and (max-width: 640px) {
	#copy{
	}
}
/*-----------------copy------------------*/
#head {
    background-color: #ffffff;
    border-top: solid 2px #E7CCAA;
    padding: 15px 0;
    position: fixed;
    z-index: 1000;
    border-bottom: solid 2px #002C41;
}
#keyvisual2 {
    background-repeat: no-repeat;
    background-position: center center;
    padding-top: 80px;
}
#keyvisual .keyvisualhide {
    padding-top: 0px;
    background-image: none;
    height: 130px;
}
/* モーダルが開いたときのずれをなくす */
.modal {
    padding-right: 0px !important;
    background-color: rgba(0,0,0,0.5);
}
.modal-open {
    padding-right: 0px !important;
}
/* /モーダルが開いたときのずれをなくす */

.user-messages .modal-dialog {
  margin-top:60px;
  position:relative;
  z-index:10000;
}
.user-messages .modal-header h4 {
  font-size: 24px;
  padding-left:15px;
}
.user-messages .modal-body div {
  padding:0px 15px;
  font-size:16px;
  text-align: left;
}
.user-messages .modal-body div.link {
  text-align: center;
  margin-bottom:15px;
}
.user-messages .modal-body div.text {
  text-align:left;
  margin-bottom:15px;
}
.user-messages .modal-body div.text-footer {
  font-size:14px;
  text-align:right;
  margin-bottom:5px;
}
.user-messages .modal-body span a {
  font-size:18px;
  color: blue;
  text-decoration:underline;
}
.user-messages .close {
    float: right;
    font-size: 21px;
    font-weight: 700;
    line-height: 1;
    color: #000;
    text-shadow: 0 1px 0 #fff;
    filter: alpha(opacity=70);
    opacity: .7;
}
.user-messages .close:focus, .close:hover {
    color: #000;
    text-decoration: none;
    cursor: pointer;
    filter: alpha(opacity=20);
    opacity: .2;
}
