﻿@charset "UTF-8";
/*************************body*************************/
body{
	margin: 0;
	padding:0;
	width:100%;
	font-family:'Lucida Grande','Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
	animation: fadeIn 1s ease 0s 1 normal;
	-webkit-animation: fadeIn 1s ease 0s 1 normal;
	text-size-adjust: none;
	-webkit-text-size-adjust: none;
}
@keyframes fadeIn {
	0% {opacity: 0}
	100% {opacity: 1}
}
@-webkit-keyframes fadeIn {
	0% {opacity: 0}
	100% {opacity: 1}
}
body p,li,th,td,{color:#505050;}
body img{border:none;}
body a{color:#505050;outline:none;text-decoration: none;}
body a:visited{color:#505050;}

#containar{margin: 0 auto;padding:0;}
#containar a img{
	transition:all 0.3s ease;
	opacity: 1 ;
	filter: alpha(opacity=100) ;
}
#containar a img:hover {opacity: 0.7 ;filter: alpha(opacity=70) ;}
#contents a{text-decoration:underline;}
#contents a:hover{text-decoration: none;}

/*PC*/
@media screen and (min-width:601px),print{
#containar{width:80%;}
#contents{margin:0 auto;padding:0;width:100%;}
}
#contents p,li,th,td{font-size: 1em;line-height:1.6;}
@media (max-width: 600px) {
#contents p,li,th,td{font-size: 1em;line-height:1.6;}
}

/*mobile*/
@media (max-width: 600px) {#containar{width:100%;overflow:hidden;}}

/*************************ヘッダー*************************/
/*PC*/
@media screen and (min-width:601px),print{
#logo{
	width:40%;
	float:left;
	display: block;
}
#logo img{
	width:100%;
	margin-top:2%;
}}
/*mobile*/
@media (max-width: 600px) {
#logo img{
	width:80%;
	margin-top:2%;
	margin-left:3%;
	margin-bottom:4%;
	float:left;
}}

/*PC*/
@media screen and (min-width:601px),print{
#h_navi{
	width:58%;
	float: right;
	margin-top:2%;
	text-align: right;
	display: block;
	margin-right: 0;
	margin-left:auto ;
}
#h_navi ul{
	list-style: none;
	margin: 0;
	padding:0;
}
#h_navi ul li{
	display: inline-block;
	border-left: solid 1px #1ec8ff;
	padding-left: 2%;
	padding-right: 2%;
	line-height: 2vw;
}
#h_navi ul li.fin{border-right: solid 1px #1ec8ff;}

#h_navi a{
	font-size: 1.2vw;
	color:#1ec8ff;
	text-decoration:none;
	transition: all 0.5s ease;
}
#h_navi a:hover{color:#FF0000;}
}

/*mobile*/
@media (max-width: 600px) {#h_navi{display:none;}}


/*************************メインメニュー*************************/
/*PC*/
@media screen and (min-width:601px),print{
#menu_mobile{display:none;}
#main_menu{
	clear: both;
	width: 100%;
	margin:0 auto;
}
#main_menu a{
	font-size: 1.8vw;
	background-color: #1ec8ff;
	float: left;
	padding: 5px 0;
	color: #ffffff;
	width: 24.9%;
	margin-top: 2%;
	text-align: center;
	border-radius: 3px;
	box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.3), inset 0px -3px 6px -2px rgba(0, 0, 0, 0.3);
}
#main_menu a:hover{
	box-shadow: inset 0px 0px 10px 0px rgba(0, 0, 0, 0.3);
	transition:all 3s ease;
}}

/*mobile*/
@media (max-width: 600px) {
#main_menu{display:none;}
.menu {
	position: fixed;
	top: 0;
	right: 0;
	outline: none;
	z-index: 100;
}
.menu::before {
	position: fixed;
	top: 2%;
	right: 3vw;
	cursor: pointer;
	content:url("../image/h_navi.gif");
}
.menu-ul {
	position: absolute;
	top: 0;
	right: -90vw;
	margin: 0;
	list-style: none;
	width: 70vw;
	height: 80vh;
	background: #1ec8ff;
	padding: 5vw;
	box-sizing: border-box;
	outline: none;
	transition: right 0.4s 0.1s;
}
.menu-ul::after {
	position: absolute;
	content: "";
	top: 0;
	right: 0;
	width: 0;
	height: 0;
	z-index: -1;
	background: rgb(0,0,0);
	opacity: 0;
	transition: opacity 0.4s 0.1s,
	width 0s 0.5s,
	height 0s 0.5s;
}
.menu:focus .menu-ul {
	right: 0;
	transition: right 0.5s;
}
.menu-ul:focus  {
	right: -90vw;
}
.menu:focus .menu-ul::after{
	width: 180vw;
	height: 100vh;
	opacity: 0.4;
	transition: opacity 0.5s;
}
.menu-ul li{
	font-size: 1em;
	background-color: #ffffff;
	padding: 2%;
	margin: 3% 5% 3% 0;
}
.menu-ul li a{
	display: block;
	text-decoration: none;
	text-align: center;
}}

/*************************トップ*************************/
#top_box{
	clear: both;
	height: 240px;
	width: 100%;
	overflow-y: scroll;
	overflow-x: hidden;
	border: #C8C8C8 1px solid;
	background-color: #ffffff;
}
/*mobile*/
@media (max-width: 600px) {
#top_box{
	width: 94%;
	margin: 0 auto;
	display:block
}}

#top_box p{
	font-size: 1.2vw;
	background-color: #E8390D;
	margin: 0px 0px 0 0px;
	padding: 1px 0 0 0px;
	text-align: center;
	color: #ffffff;
	font-weight: bold;
}
#top_box ul{
	list-style-type: none;
	margin: 0;
	padding: 5px 8px;
}
#top_box li{
	margin: 0 0 0 9.2vw;
	padding: 1% 2% 1% 0;
	text-indent: -9.2vw;
	border-bottom: dashed 1px #C8C8C8;
	line-height: 1.6vw;
	font-size: 1.2vw;
}

@keyframes blink {
	  0% { opacity: 0; }
	  100% { opacity: 1; }
}
#top_box li span{
	color:red;
	font-weight: bold;
	-webkit-animation:blink 1.5s ease-in-out infinite alternate;
    -moz-animation:blink 1.5s ease-in-out infinite alternate;
    animation:blink 1.5s ease-in-out infinite alternate;}

#top_box li a{text-decoration: none;}
#top_box li a:hover{background-color: #C8FFFF;}

#top_box li.new{
	background-image: url("../image/new.gif");
	background-repeat: no-repeat;
	background-position: right 0px bottom 6px;
	vertical-align: bottom;
}
/*mobile*/
@media (max-width: 600px) {
#top_box ul{
	list-style-type: none;
	margin: 0;
	padding: 5px 8px;
}
#top_box li{
	margin: 0 0 0 24vw;
	padding: 1% 2% 1% 0;
	text-indent: -24vw;
	border-bottom: dashed 1px #C8C8C8;
	line-height: 4vw;
	font-size: 3.5vw;
}}

/*PC*/
@media screen and (min-width:601px),print{
#top{
	width: 68%;
	float: left;
	margin-right:3%;
}
#top_p img{width: 100%;margin-top:2%;}
#top_p a{display:block;}
.new_topic{
	display: flex;
	justify-content:space-between;
}
.new_topic{
	margin: 2% 0 0;
	width: 96%;
	background-color: #F0F0F0;
	border: 0.3px solid #646464;
	border-radius: 5px;
	font-size: 1em;
	color: #3C3C3C;
	padding: 0.3% 2%;
}
#contents .new_topic a{
	font-size: 1em;
	text-decoration: none;
}
.triangle{
	display: inline-block;
	transform: rotate(90deg);
}
}

/*mobile*/
@media (max-width: 600px) {
#top_p img{
	clear: both;
	width:95%;
	float:none;
	margin: 0 auto;
	display: block;
}
.new_topic{
	display: flex;
	justify-content:space-between;
}
.new_topic{
	margin: 2% auto;
	display: block;
	width: 90%;
	background-color: #F0F0F0;
	border: 0.3px solid #646464;
	border-radius: 2px;
	font-size: 1em;
	text-align: center;
	color: #3C3C3C;
	padding: 0.3% 2%;
}
.new_topic a{display:none;}
}

/*************************タブ*************************/
.tabs {
	width: 100%;
	margin-top: 5%;
	margin-bottom: 5%;
}
/*mobile*/
@media (max-width: 600px) {
.tabs {
	width: 94%;
	margin: 5% auto 2%;
	display: block;
}}
.tabs .tab-label {
	display: inline-block;
	border-top-left-radius: 6px;
	border-top-right-radius: 6px;
	border: 1px solid #999;
	background-color:#f3f3f3;
	margin-left: 2%;
	margin-right: 0;
	padding: 0.5% 2%;
	border-bottom: none;
	font-size: 1.4vw;
}
@media (max-width: 600px) {.tabs .tab-label {font-size:2.5vw;}}

.tabs .tab-label:hover {background-color:#C8FFFF;}
 .tabs input[name="tab-radio"],
.tabs .tab-content {display: none;}
.tabs .tab-content{
	border: 3px solid #1ec8ff;
	padding: 2%;
	border-radius: 6px;
	height: 24vw;
}

@media (max-width: 600px) {.tabs .tab-content{height: 72vw;}}

.tabs .tab-1-content a{
	display: block;
	transition: all 0.5s ease;
}
.tabs .tab-1-content img{
	width: 16%;
	float: left;
	margin: 2%;
	top:0;
    left:0;
}
@media (max-width: 600px) {.tabs .tab-1-content img{width: 21%;}}

.tabs .tab-2-content a{
	display: block;
	transition: all 0.5s ease;
}
.tabs .tab-2-content img{
	width: 16%;
	float: left;
	margin: 2%;
	top:0;
    left:0;
}
@media (max-width: 600px) {.tabs .tab-2-content img{width: 21%;}}

.tabs .tab-3-content a{
	display: block;
	transition: all 0.5s ease;
}
.tabs .tab-3-content img{
	width: 16%;
	float: left;
	margin: 2%;
	top:0;
    left:0;
}
.tabs .tab-4-content p{clear:both;}
.tabs .tab-4-content p:hover{position:relative; top:0; left:0;}

.tabs .tab-1-content :hover{position:relative; top:1px; left:1px;}
.tabs .tab-2-content :hover{position:relative; top:1px; left:1px}
.tabs .tab-3-content :hover{position:relative; top:1px; left:1px}
.tabs .tab-4-content :hover{position:relative; top:1px; left:1px}

.tabs #tab-1:checked ~ .tab-1-content,
.tabs #tab-2:checked ~ .tab-2-content,
.tabs #tab-3:checked ~ .tab-3-content,
.tabs #tab-4:checked ~ .tab-4-content{display: block;}

.tabs input[name="tab-radio"]:checked + .tab-label{
	background-color: #1ec8ff;
	color: #ffffff;
	border:1px solid #1ec8ff;
}

/*************************Side_Menu*************************/
#side_menu{
	width: 28.5%;
	float: left;
	margin-top: 0.5%;
}
#side_menu a{text-decoration: none;}
.side{position:relative;margin:5% 0;}
.side_border a{
	width: 100%;
	border: 1px solid #AAAAAA;
	border-radius: 6px;
	font-size: 1.5vw;
	display: block;
	text-align: center;
	line-height: 4vw;
	margin: 4% 0;
	box-shadow: 1px 1px 2px 0px rgba(0, 0, 0, 0.3);
	background-color: #FAFAFA;
	font-weight: bold;
}
.side_border a:hover{
	color:#1ec8ff;
	transition: all 0.5s ease;
}
.side img{
	width: 100%;
	height: auto;
	display: block;
}

@media (max-width: 600px) {
#side_menu{
	width: 100%;
	margin: 0 auto;
	display: block;
}
.side{margin:3% 0;}
.side_border a{
	width: 80%;
	font-size: 5vw;
	line-height: 16vw;
	margin: 2% auto;
}
.side img{
	margin: 0 auto;
	width: 80%;
	height: auto;
	display: block;
}
}

/*************************Page*************************/
#left_menu{
	float:left;
	width: 25%;
	background-color:#C8FFFF ;
	padding: 1% 2%;
	margin-right: 3%;
	margin-top: 3%;
	height: 100vw;
	margin-bottom: 3%;
}
#left_menu p{
	background-color: #ffffff;
	box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.3) ;
	text-align: center;
	padding: 5% 3%;
	border-bottom: 1px solid #C8C8C8;
	font-size: 1.2vw;
}
#left_menu a{
	text-decoration: none;
	display: block;
}

#left_menu a:hover{position:relative; top:1px; left:1px;}

#page_contents{
	width: 68%;
	float: left;
	margin-top: 3%;
	margin-bottom: 5%;
}
@media (max-width: 600px) {
#left_menu{display:none;}
#page_contents{
	width: 90%;
	font-size:1em;
	line-height: 1.6;
	margin: 0 auto;
margin-left:5%;
margin-right: 5%;
}}

/*************************コンテンツ************************/
h1{
	width: 92%;
	font-size: 1.5em;
	font-weight: bold;
	padding-top: 0.5%;
	line-height: 2vw;
	margin: 0 0 2% 0;
	padding: 2% 3% ;
	background-color: #7DD7FF;
	border-radius: 5px;
}
.h1_next{
	margin-top: 10%;
}
h2{
	width: 100%;
	color:#0096FF;
	font-size: 1.5em;
	padding-left:1vw;
	margin: 4% 0 2%;
	font-weight: normal;
	border-left: solid 7px #1ec8ff;
	line-height: 3vw;
}
h3{
	width: 100%;
	font-size: 1.4em;
	padding-left:0vw;
	margin: 5% 0 1% 0;
	font-weight: bold;
	line-height: 3vw;
}

h4{	margin: 1% 0 1% 0;}

#contents p{margin-top:0;margin-bottom:0;}

#contents .big{font-size: 1.5em;}

/*スマホ*/
@media (max-width: 600px) {
h1{
	width: 90%;
	font-size: 4.5vw;
	padding-top: 3%;
	line-height: 1.4;
}
h2{
	font-size: 1.2em;
	padding-left:1vw;
	margin: 4% 0 2%;
	font-weight: normal;
	border-left: solid 7px #1ec8ff;
	line-height: 1.6;
}
h3{
	font-size: 1.2em;
	padding-left:0vw;
	margin: 3% 0 1% 0;
	font-weight: bold;
	line-height: 7vw;
}}

.list{
	clear: both;
	padding-left:1em;
	text-indent:-1em;
	margin-top:0;
	font-size: 1em;
}

#contents table{
	border: solid 1px #b5b5b6;
	border-collapse: collapse;
	width: 100%;
	margin:1% 0 1% 0;
}
#contents table td,th{
	line-height:1.6;
	border: solid 1px #b5b5b6;
	padding:8px 5px;
	font-weight:normal;
}
#contents table td{text-align:left;}
#contents table.td_r td{text-align:right;}
#contents table th{background-color:#C8FFE1;text-align:center;}

#contents table.w td{width:30%;text-align:center;}
#contents table.w td+td{width:70%;text-align:left;}

#contents table.tw th{width:30%;text-align:center;}
#contents table.tw th+td{width:70%;text-align:left;}

#contents .s_line{line-height:1;}

#contents table.b5{margin-bottom:5%;}
#contents table.b10{margin-bottom:10%;}

.p_back{
border: solid 1px #B4B4B4;
background-color: #F0FFFF;
padding: 2%;
}
#contents p.r{text-align: right;margin-top:3%;}

.cut img{
	float: right;
	width: 30%;
	margin-left: 5%;
}

.point{
	background-color: #FFD7D7;
	font-size: 1.2em;
}

/*スマホ*/
@media screen and (max-width:600px){
#contents table{
	display: block;
	overflow-x:scroll;
	white-space: nowrap;
	-webkit-overflow-srcolling:touch;
}
.point{
	background-color: #FFD7D7;
	font-size: 1.0em;
}}

.x_scroll{
	width:100%;
	overflow-x:scroll;
	margin: 10px auto;
	text-align: center;
	display: block;
}
.x_scroll img{width:100%;}

.pdf{
	background-image:url('../image/pdf.gif');
	background-repeat:no-repeat;
	background-position: right;
	padding-right: 20px;
}
.word{
	background-image:url('../image/word.gif');
	background-repeat:no-repeat;
	background-position: right;
	padding-right: 20px;
}
.excel{
	background-image:url('../image/excel.gif');
	background-repeat:no-repeat;
	background-position: right;
	padding-right: 20px;
}
.red{color:red;}
.em{font-weight: bold;}
.mark{
	background-color: #0059FF;
	color: #ffffff;
	font-weight: bold;
	padding: 1px 4px;
}
/*************************フッター*************************/
#footer{
	clear:both;
	background-color:#1ec8ff;
	width:80%;
	margin:5% auto 0;
	padding: 2% 0;
}
#footer_link{
	margin:2% auto;
	text-align: center;
}
#footer_link a{
	transition: all 0.5s ease;
	padding-left:4%;
	text-decoration: none;
	display: inline-block;
	color: #ffffff;
	font-size: 1em;
}
#footer p{
	clear: both;
	margin-top: 2%;
	text-align: center;
	color: #ffffff;
	font-size: 1em;
	line-height:2vw;
}

@media (max-width: 600px) {
#footer{width:90%;}
#footer_link a{
	font-size:1em;
	line-height:6vw;
	color: #ffffff;
}
#footer p{
	font-size: 1em;
	line-height:6vw;
	color: #ffffff;
}}

