@charset "utf-8";
html {
	overflow-x: auto;
}
body {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 14px;
	color: #333;
	line-height: 1.6em;
	min-width: 1000px;
	overflow-x: hidden;
	overflow-y: hidden;
	min-height: 100%
}
html {
	height: 100%
}
a:link {
	text-decoration: underline;
	color: #000;
}
a:visited {
	text-decoration: underline;
	color: #000;
}
a:hover {
	text-decoration: underline;
	color: #999;
}
a:active {
	text-decoration: none;
}
.link a:link {
	color: #000;
	text-decoration: none;
}
.link a:visited {
	text-decoration: none;
	color: #333;
}
.link a:hover {
	text-decoration: underline;
	color: #999;
}
.link a:active {
	text-decoration: none;
}
.link2 a:link {
	color: #CCC;
	text-decoration: none;
}
.link2 a:visited {
	text-decoration: none;
	color: #CCC;
}
.link2 a:hover {
	text-decoration: underline;
	color: #FFF;
}
.link2 a:active {
	text-decoration: none;
}
#container {
	width: 980px;
	margin: 0px auto;
}
#contents {
	padding-bottom: 50px;
	margin-top: -20px;
}
#header {
}
#header_right {
	float: right;
	text-align: right;
	margin-top: 3px;
}
#header_right li img {
	margin-top: 5px;
}
#header_right #icon li {
	float: left;
}
#message {
	width: 100%;
	padding-right: 500%;
	padding-left: 500%;
	margin-right: -500%;
	margin-left: -500%;
	height: 20px;
	background-image: url(../img/bg_black.gif);
	background-repeat: repeat;
	color: #CCC;
	font-size: 12px;
	letter-spacing: 0.1em;
	text-align: right;
}
#company {
	float: left;
	margin-top: 12px;
	margin-bottom: 12px;
}
#company_name {
	margin-top: 67px;
	float: right;
}
#mainnavi {
	width: 100%;
	padding-right: 500%;
	padding-left: 500%;
	margin-right: -500%;
	margin-left: -500%;
	height: 80px;
	background-image: url(../img/bg_blue2.gif);
	background-repeat: repeat;
}
#mainnavi ul li {
	float: left;
	height: 80px;
	border-right-width: 1px;
	border-right-style: solid;
	border-right-color: #999;
}

/*mainnaviを上部に固定。スライドショーがずれるため非表示。
.fixed {
	position: fixed;
	top: 0px;
	z-index: 9999;
}
*/
.border {
	border-left-width: 1px;
	border-left-style: solid;
	border-left-color: #999;
}
#jumpmenu {
	width: 100%;
	padding-right: 500%;
	padding-left: 500%;
	margin-right: -500%;
	margin-left: -500%;
	height: 50px;
	background-color: #CCC;
}
#jumpmenu ul li {
	vertical-align: bottom;
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	padding-top: 9px;
	float: left;
	padding-right: 20px;
}
#mainarea {
	margin-top: 20px;
}
.banner ul {
	width: 990px;
	margin-left: -5px;
	margin-top: 10px;
}
.banner ul li {
	float: left;
	height: 120px;
	width: 191px;
	margin-left: 5px;
}
.xbanner ul {
	width: 320px;
}
.xbanner ul li {
	height: 320px;
	width: 320px;
	margin-bottom: 10px;
	vertical-align: bottom;
}
.rightbanner ul {
	width: 320px;
}
.rightbanner ul li {
	width: 320px;
	margin-bottom: 10px;
}


#square {
	width: 990px;
	margin-left: -10px;
	margin-top: 10px;
}
#square .line {
	width: 330px;
	float: left;
}
#square .line ul li {
	float: left;
}
#contents .line ul li img {
	margin-bottom: 10px;
	margin-left: 10px;
	vertical-align: bottom;
}
.square_sub {
	width: 330px;
}
.square_sub .grid {
	float: left;
}
.tile {
	margin-left: 10px;
	margin-bottom: 10px;
	vertical-align: text-bottom;
}
.sitelist {
	width: 155px;
}
.sitelist a {
	display: block; /* ここでaタグに対し、blockに設定をします */
	background-color: #F5F5F5;
	text-decoration: none;
	border: 1px solid #F90;
	height: 153px;
	width: 153px;
}
.sitelist a:hover {
	border: 1px solid #F30;
	background-color: #EBEBEB;
}
.sitelist a img {
	border-top-width: 0px;
	border-right-width: 0px;
	border-bottom-width: 0px;
	border-left-width: 0px;
}
.sitelist a .list_title {
	display: block; /* タイトルのspanに対し、blockに設定をします */
	color: #FFF;
	text-decoration: none;
	font-weight: bold;
	background-color: #F90;
	padding-left: 10px;
	font-size: 16px;
	height: 24px;
	padding-top: 2px;
}
.sitelist a .list_cont {
	display: block; /* 本文のspanに対し、blockに設定をします */
	color: #000;
	text-decoration: none;
	font-size: 12px;
	line-height: 1.5em;
	padding-right: 10px;
	padding-left: 11px;
	padding-bottom: 5px;
	padding-top: 2px;
	visibility: hidden;
}
.sitelist a .list_date {
	display: block;
	padding-top: 7px;
	padding-left: 11px;
	color: #333;
	letter-spacing: 0.1em;
}
#leftarea {
	float: left;
	width: 730px;
	margin-top: 50px;
}
#leftarea2 {
	float: left;
	width: 640px;
	margin-top: 30px;
}
#leftarea3 {
	float: left;
	width: 320px;
	margin-top: 30px;
}
#rightarea {
	float: right;
	width: 202px;
	margin-top: 39px;
}
#rightarea2 {
	float: right;
	width: 320px;
	margin-top: 30px;
}
#rightarea3 {
	float: right;
	width: 640px;
	margin-top: 30px;
}

.rightarea_navi {
	background: #F6F6F6;
	border: 1px solid #CCC;
	padding-top: 15px;
	padding-right: 10px;
	padding-bottom: 10px;
	padding-left: 10px;
}
.rightarea_navi li {
	letter-spacing: 0.1em;
	border-bottom: 1px dotted #666;
	margin-bottom: 10px;
	padding-left: 1em;
	font-size: 12px;
}
.rightarea_navi .index {
	letter-spacing: 0.4em;
	border-bottom: 1px solid #333;
	margin-bottom: 10px;
	font-weight: bold;
	font-size: 12px;
	padding-left: 5px;
}
.rightarea_navi .index2 {
	font-weight: bold;
	font-size: 12px;
	padding-left: 5px;
	border-style: none;
	color: #339;
}
#fb_tw ul li {
	float: right;
	margin-bottom: 10px;
	margin-top: -32px;
	margin-left: -5px;
}
#rightarea_pr {
	margin-top: 30px;
}
#rightarea_pr li {
	border: 1px solid #999;
	margin-bottom: 10px;
	height: 75px;
	width: 200px;
}
#topicpath {
	font-size: 12px;
	margin-top: 30px;
	padding-right: 5px;
	padding-left: 5px;
	height: 20px;
}
#topicpath ol li {
	float: right;
	padding-left: 10px;
}
.title {
	font-size: 24px;
	padding-bottom: 5px;
	letter-spacing: 0.3em;
	margin-bottom: 5px;
	border-bottom: 2px solid #666;
	color: #333;
}
.title2 {
	font-weight: bold;
	padding-bottom: 5px;
	border-bottom: 1px dotted #CCC;
}
.title3 {
	border-left: 5px solid #339;
	font-size: 16px;
	letter-spacing: 0.5em;
	padding-top: 20px;
	padding-right: 0px;
	padding-left: 15px;
	color: #6F6F6F;
}
.title4 {
	color: #339;
	padding-bottom: 5px;
	letter-spacing: 0.3em;
	margin-bottom: 20px;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #666;
	font-size: 16px;
	padding-left: 10px;
	margin-top: 10px;
}
.title5 {
	color: #339;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #666;
	letter-spacing: 0.3em;
	margin-bottom: 15px;
	font-weight: bold;
}
.title6 {
	color: #339;
	font-size: 16px;
	font-weight: bold;
}
#newsbox {
	height: 1750px;
	width: 618px;
	overflow: scroll;
	overflow-x: hidden;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
	padding-right: 10px;
	padding-left: 10px;
	padding-top: 5px;
	margin-top: -5px;
	border-right-width: 1px;
	border-left-width: 1px;
	border-right-style: solid;
	border-left-style: solid;
	border-right-color: #CCC;
	border-left-color: #CCC;
}
.news {
	margin-right: 5px;
}
.news li {
	padding-bottom: 3px;
	border-bottom: 1px dotted #666;
	margin-top: 15px;
}
.news dt {
	float: left;
	width: 120px;
	border-right: 1px solid #666;
	letter-spacing: 0.2em;
	padding-left: 10px;
}
.news dd {
	margin-left: 150px;
	padding-bottom: 10px;
}
#profile {
}
#profile li {
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #CCC;
	margin-left: 10px;
}
#profile li dl dt {
	float: left;
	width: 150px;
	font-weight: bold;
	letter-spacing: 0.5em;
	padding-left: 10px;
}
#profile li dl dd {
	padding-left: 175px;
}
#profile li dl .add {
	margin-left: 175px;
	padding-left: 1em;
}
.policy {
	margin-left: 20px;
	padding-top: 5px;
}
.policy li {
	margin-top: 10px;
}
.policy dt {
	width: 1.5em;
	float: left;
	color: #339;
	font-weight: bold;
	font-size: 0.8em;
}
.policy dd {
	padding-left: 1.5em;
}
#inquiry {
}
#inquiry li {
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #CCC;
	margin-left: 10px;
}
#inquiry li dl dt {
	float: left;
	width: 275px;
	font-weight: bold;
	letter-spacing: 0.1em;
	margin-bottom: 2px;
}
#inquiry li dl dd {
	padding-left: 275px;
	margin-bottom: 2px;
}
.altemative li {
	margin-top: 5px;
}
.left {
	float: left;
	padding-right: 10px;
}
.text {
	margin-bottom: 10px;
}

/*お知らせ表示用*/
.text_announce {
	margin:30px;
	padding: 20px;
	border-width:1px;
	border-color:red;
	border-style:solid;
}

.merit {
	padding-left: 40px;
	padding-top: 18px;
	padding-bottom: 5px;
	border-top-width: 2px;
	border-top-style: solid;
	border-top-color: #C03;
}
.merit li {
	list-style-type: decimal;
	padding-bottom: 8px;
	font-weight: bold;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #494949;
	margin-bottom: 12px;
	letter-spacing: 0.1em;
	list-style-position: inside;
	margin-left: -30px;
}
.meritbango li {
	list-style-type: decimal;
	padding-bottom: 8px;
	margin-bottom: 12px;
	letter-spacing: 0.1em;
	list-style-position: inside;
	margin-left: 25px;
}
.first {
	color: #C03;
	font-size: 18px;
	letter-spacing: 0.3em;
}
.itemize {
	padding-left: 16px;
	margin-left: 10px;
}
.itemize li {
	margin-bottom: 10px;
	list-style-type: disc;
	font-weight: bold;
	color: #666;
}
.itemize .te {
	margin-bottom: 10px;
	margin-top: -5px;
	font-weight: normal;
	list-style-type: none;
}
.itemize .ta {
	margin-bottom: 10px;
	margin-top: -5px;
	font-weight: normal;
	list-style-type: disc;
}
.itemize .second {
	margin-bottom: 10px;
	list-style-type: square;
	margin-left: 20px;
	margin-top: -5px;
	font-weight: normal;
}
.itemize .bango {
	margin-bottom: 10px;
	list-style-type: decimal;
	margin-left: 20px;
	margin-top: -5px;
	font-weight: normal;
}
.spec {
	width: 720px;
}
.lineup {
	margin-left: -10px;
}
.lineup .wall {
	float: left;
	margin-left: 20px;
	margin-bottom: 20px;
}
.goodpoint {
	background-image: url(../img/goodpoint_bg.gif);
	background-repeat: no-repeat;
	padding: 10px;
	height: 300px;
	width: 200px;
}
.goodpoint .titlex {
	color: #339;
	padding-bottom: 5px;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #666;
	font-size: 16px;
	letter-spacing: 0.1em;
	padding-right: 5px;
	padding-left: 5px;
	padding-top: 3px;
}
.goodpoint .text2 {
	line-height: 1.4em;
	list-style-position: outside;
	list-style-type: disc;
	padding-top: 5px;
	margin-left: 20px;
}
.spec tr th {
	color: #000;
	text-align: center;
	background-color: #E1E1E1;
	border-top-width: 2px;
	border-bottom-width: 1px;
	border-top-style: solid;
	border-bottom-style: solid;
	border-top-color: #666;
	border-bottom-color: #666;
	letter-spacing: 0.5em;
	padding-top: 5px;
	padding-right: 10px;
	padding-bottom: 3px;
	padding-left: 10px;
}
.spec tr td {
	padding-top: 10px;
	padding-right: 10px;
	padding-bottom: 10px;
	padding-left: 10px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
}
.spec tr .sleft {
	width: 200px;
}
.spec tr .sleft img {
	margin-top: 10px;
}
.spec tr .sright {
	width: 470px;
}


.spec-pmul tr th {
	color: #000;
	text-align: center;
	background-color: #E1E1E1;

	border-top-width: 2px;
	border-bottom-width: 1px;
	border-top-style: solid;
	border-bottom-style: solid;
	border-top-color: #666;
	border-bottom-color: #666;

	letter-spacing: 0.5em;
	padding-top: 5px;
	padding-right: 10px;
	padding-bottom: 3px;
	padding-left: 10px;
}
.spec-pmul tr td {
	padding-top: 10px;
	padding-right: 10px;
	padding-bottom: 10px;
	padding-left: 10px;

	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
}
.spec-pmul tr .sleft {
	width: 300px;
	border-right-width: 1px;
	border-right-style: solid;
	border-right-color: #CCC;
}
.spec-pmul tr .sright {
	width: 300px;
}




.block {
	margin-bottom: 10px;
	margin-left: 10px;
}
.block_20 {
	margin-bottom: 10px;
	margin-left: 20px;
}
.block_b {
	margin-left: 10px;
	font-weight: bold;
}
.block2 {
	margin-bottom: 10px;
	margin-left: 10px;
	padding-left: 2.7em;
}
.block3 {
	margin-left: -10px;
}
.b {
	font-weight: bold;
}
.b2 {
	font-weight: bold;
	letter-spacing: 0.1em;
	margin-bottom: 5px;
	margin-top: 5px;
}
.b3 {
	font-weight: bold;
	text-decoration: underline;
	letter-spacing: 0.1em;
	margin-bottom: 5px;
}
.b4 {
	font-weight: bold;
	color: #339;
}
.white {
	color: #fff;
}
.subtitle {
	border: 1px solid #999;
}
.navi_side {
	border-top: 3px solid #003;
	vertical-align: bottom;
}
.navi_side ul li {
	border-right: 1px solid #999;
	border-bottom: 1px solid #999;
	border-left: 1px solid #999;
	vertical-align: bottom;
	width: 200px;
	height: 30px;
}
.titlebar {
	border-bottom: 2px solid #000;
	margin-bottom: 22px;
	border-top-width: 0px;
	border-right-width: 0px;
	border-left-width: 0px;
	border-top-style: none;
	border-right-style: none;
	border-left-style: none;
}
.top {
	float: right;
}
.bggray {
	background: #EBEBEB;
	margin-top: 20px;
	margin-bottom: 20px;
	padding: 10px;
}
.dot {
	font-size: 10px;
	margin-right: 5px;
	color: #999;
}
.height1 {
	height: 10px;
}
.height2 {
	height: 20px;
}
.center {
	text-align: center;
}
.sign {
	text-align: right;
	letter-spacing: 0.2em;
	font-weight: bold;
}
.large {
	font-size: 20px;
	line-height: 1.6em;
}
.small {
	font-size: 0.9em;
}
.small2 {
	font-size: 0.8em;
}
.logo {
	margin-top: 10px;
	margin-bottom: 10px;
}
.title_main {
	color: #333;
	padding-bottom: 5px;
	margin-bottom: 10px;
	font-size: 2em;
	border-bottom-width: 2px;
	border-bottom-style: solid;
	border-bottom-color: #333;
}
.title_normal {
	color: #6F6F6F;
	font-size: 0.5em;
	font-weight: normal;
	letter-spacing: 0.1em;
}
.title2 {
	font-weight: bold;
	text-indent: -1.35em;
	margin-left: 1.35em;
}
.toptitle {
	border-bottom: 1px solid #999;
	clear: both;
}
.attention {
	font-size: 1.2em;
	font-weight: bold;
	color: #C03;
}
.attention2 {
	font-size: 0.8em;
	color: #C03;
}
.blue {
	color: #03C;
	margin-right: 0.5em;
}
.blueb {
	font-weight: bold;
	color: #66C;
}
.orange {
	color: #F90;
	margin-right: 0.5em;
}
.orangeb {
	color: #F60;
	font-size: 1.2em;
	letter-spacing: 0.2em;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #C03;
	padding-left: 5px;
	font-weight: bold;
}
.pink {
	color: #F06;
}
.pinkb {
	font-weight: bold;
	color: #F06;
}
.green {
	color: #0C0;
	margin-right: 0.5em;
}
.greenb {
	font-weight: bold;
	color: #090;
}
.gray {
	color: #999;
}
.gray2 {
	color: #999;
	letter-spacing: 0.2em;
}
.grayb {
	font-weight: bold;
	color: #666;
	margin-top: 10px;
	line-height: 1.4em;
}
.red {
	font-size: 1.5em;
	color: #C03;
}
.red2 {
	color: #C03;
}
.titleunder {
	font-size: 14px;
	color: #666;
	letter-spacing: 0.1em;
}
.normalb {
	font-size: 14px;
	color: #666;
	font-weight: bold;
}
.img {
	text-align: center;
	margin-bottom: 5px;
}
.sup {
	vertical-align: super;
	font-size: 0.7em;
	font-weight: bold;
	color: #C03;
}
.sup2 {
	vertical-align: super;
	font-size: 0.7em;
}
.must {
	font-size: 0.8em;
	color: #FFF;
	background-color: #C03;
	padding-right: 2px;
	padding-left: 2px;
	border: 1px solid #C03;
	margin-left: 8px;
	font-weight: normal;
	vertical-align: middle;
}
.square {
	padding: 10px;
	border: 1px solid #03C;
}
.fortop {
	text-align: right;
	margin-top: 20px;
	font-size: 12px;
	margin-bottom: 30px;
}
.clear_right {
	clear: right;
}
.clear_left {
	clear: left;
}
.clear_both {
	clear: both;
}
.normal_b {
	font-size: 14px;
	font-weight: bold;
}
.normal_b2 {
	font-size: 14px;
	font-weight: bold;
	letter-spacing: 0.2em;
}
.normal_b3 {
	font-size: 14px;
	font-weight: bold;
	letter-spacing: 0.2em;
	text-align: center;
}
#page-top {
	position: fixed;
	bottom: 20px;
	right: 20px;
}
#page-top a {
	width: 100px;
	height: 100px;
}
#footer {
	font-size: 12px;
	width: 100%;
	color: #FFF;
	padding-right: 500%;
	padding-left: 500%;
	padding-top: 5px;
	padding-bottom: 5px;
	margin-right: -500%;
	margin-left: -500%;
	background-image: url(../img/bg_black.gif);
	background-repeat: repeat;
	margin-top: 30px;
}
#footer .footernavi {
	float: left;
	margin-right: 50px;
	margin-bottom: 10px;
	margin-top: 10px;
}
#footer .footernavi ul li {
	list-style-type: square;
}
#footer address {
	font-size: 12px;
	text-align: right;
}
.tablefontsize {
	font-size: 13px;
}









/* indexページスライドショー */
.out{
    position: relative;
}
.in img{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.out img{
    display: block;
    width: auto;
    height: auto;
}
input{
    display: none;
}
.in{
    display: flex;
    justify-content: center;
}
label span{
    display: block;
    width: 15px;
    height: 15px;
    padding: 7px;
    margin: -40px 0 0;
    border-radius: 100%;
    cursor: pointer;
    position: relative;
    z-index: 2;
}
label span::before{
    content: "";
    display: block;
    width: 80%;
    height: 80%;
    background: #4287f5;
    opacity: 0.5;
    border-radius: 100%;
}    
input:nth-of-type(1):checked ~ .in label:nth-of-type(1) span::before,
input:nth-of-type(2):checked ~ .in label:nth-of-type(2) span::before,
input:nth-of-type(3):checked ~ .in label:nth-of-type(3) span::before,
input:nth-of-type(4):checked ~ .in label:nth-of-type(4) span::before,
input:nth-of-type(5):checked ~ .in label:nth-of-type(5) span::before{
    background: #000;
    opacity: 1;
}
label span::before{
    animation: slidebutton 25s infinite;
}
@keyframes slidebutton{
    0%{opacity: 0.5;background: #4287f5;}
    4%{opacity: 1;background: #000;}/* b÷x×100=y */
    20%{opacity: 1;background: #000;}/* 100÷c=z */
    24%{opacity: 0.5;background: #4287f5;}/* y+z */
}            
label:nth-of-type(2) span::before,label:nth-of-type(2) img{
    animation-delay: 5s;
}            
label:nth-of-type(3) span::before,label:nth-of-type(3) img{
    animation-delay: 10s;
}
label:nth-of-type(4) span::before,label:nth-of-type(4) img{
    animation-delay: 15s;
}
label:nth-of-type(5) span::before,label:nth-of-type(5) img{
    animation-delay: 20s;
}
input:nth-of-type(1):checked ~ .in label:nth-of-type(1) img,
input:nth-of-type(2):checked ~ .in label:nth-of-type(2) img,
input:nth-of-type(3):checked ~ .in label:nth-of-type(3) img,
input:nth-of-type(4):checked ~ .in label:nth-of-type(4) img,
input:nth-of-type(5):checked ~ .in label:nth-of-type(5) img{
    opacity: 1;
    z-index: 1;
}
.in img{
    animation: slide 25s infinite;/* (a+b)×c=x */
    opacity: 0;
}
@keyframes slide{
    0%{opacity: 0;}
    4%{opacity: 1;z-index: 1;}/* b÷x×100=y */
    20%{opacity: 1;}/* 100÷c=z */
    25%{opacity: 0;z-index: 0;}/* y+z */
}
input:checked ~ .in img,input:checked ~ .in span::before{
    animation: none;
}
.in:hover img,.in:hover span::before{
    animation-play-state:paused;/* マウスを載せると一時停止 */
}

