@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500&display=swap');

/*縦スクロールバーエリアを表示*/
html {
  overflow-y: scroll;
  overflow-x: hidden;
  list-style: none;
}

body {
  font-family:"ヒラギノUD角ゴ W4","Hiragino UD Sans W4","メイリオ", "Meiryo", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", 'Noto Sans JP', "UD新ゴ L",  sans-serif!important;
	font-weight: 400;
  margin: 0;
  padding: 0;
  height: 100%;
}

/* @group Reset */
* {
	box-sizing:border-box;
	margin: 0;
	padding: 0;
}

/*通常*/
a:link {
  color:#000;
  transition:0.5s;
  -webkit-transition:0.5s;
	text-decoration: none;
}

/*閲覧済み*/
a:visited {
  color:#000;
	text-decoration: none;
}

/*マウスオン*/
a:hover {
  opacity:0.5;
}

/*クリック中*/
a:active {
	text-decoration: none;
}

/*クリック時の枠線*/
a {
	padding: 0 0 0 0px;
	outline: none;
}

ul, ol {
	list-style: none;
}

img {
	vertical-align: middle;
	max-width:none;
}

/* @end */

/* @group Fluid-img */
img {
	width: auto;
}
/* @end */

/* @group HTML */
html {
	font-size:83%;
}
/* @end */
div, p {
	text-align: justify;
	text-justify: inter-ideograph;
}
#main ::-webkit-scrollbar {
    width: 10px;
}
#main ::-webkit-scrollbar-track {
  background:#000;
  box-shadow: inset 0 0 5px rgba(0, 0, 0, .1);
}
#main ::-webkit-scrollbar-thumb {
  background-color: #FF6400;
  box-shadow:0 0 0 1px rgba(255, 255, 255, .3);
}
#container{
  width:100%;
  height: auto;
  display: block;
}
header{
  width:840px;
  position: relative;
  margin:45px auto 0;
}
header h1{
  height: 70px;
  width: 440px;
  border-left:solid 4px #ff6400;
  padding-left:10px;
  font-size:16px;
  font-family:"ヒラギノ角ゴ W5","Hiragino Kaku Gothic W5", 'Noto Sans JP';
	font-weight: 500;
}
header h1 span{
  font-size:12px;
  position: absolute;
  top: 50px;
  left: 15px;
  font-weight:400;
  font-family:"ヒラギノUD角ゴ W4","Hiragino UD Sans W4",'Noto Sans JP';
}
header h1 a:hover{
  text-decoration: none;
  color:#000;
}
.menu_frame{
  width:840px;
  position: relative;
  margin:45px auto 0;
  background:rgba(220,220,220,0.5);
}
nav.menu ul{
  width:340px;
  position: absolute;
  right:0;
  top:-70px;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  font-size:15px;
  font-family:"ヒラギノ角ゴ W5","Hiragino Kaku Gothic W5", 'Noto Sans JP';
	font-weight: 500;
}
nav.menu li{
    border-right:solid 1px #ff6400;;
}
nav.menu li:first-child{
    border-left:solid 1px #ff6400;;
}
nav.menu li a{
  display: block;
  width: 100%;
  height: 100%;
  padding: 0 10px;
  letter-spacing: 1px;
}
.ttl_area{
  width:100%;
  background:#b4b4b4;
  color:#fff;
  margin:0 0 100px 0;
}
h1.page_title{
  width:840px;
  height: 60px;
  line-height: 60px;
  font-weight: 500;
  margin:0 auto 0;
  padding:0 0 0 84px;
  letter-spacing: 3px;
  background:url(../parts/h1_bg.png) no-repeat 13px 50%;
  font-family:"ヒラギノ角ゴ W5","Hiragino Kaku Gothic W5", 'Noto Sans JP';
}
h1.page_title span{
  color:rgba(255,255,255,0.6);
  font-size:20px;
  margin-left:10px;
  letter-spacing: 2px;
}
.h2_wrap{
  text-align: center;
  margin:0px 0 60px;
}
h2.ttl_main{
  font-weight: 500;
  display: inline-block;
  margin:0 auto 0;
  padding:0 15px 0 15px;
  border-left:solid 1px #ff6400;
  border-right:solid 1px #ff6400;
  letter-spacing: 2px;
  color:rgb(70,70,70);
  font-family:"ヒラギノ角ゴ W5","Hiragino Kaku Gothic W5", 'Noto Sans JP';
}
#box{
  width:840px;
  margin: 0px auto 170px;
  position: relative;
}
#container.top #box{
  margin: 520px auto 170px;
}
#main{
  min-height:200px;
}
#Key_visual{
  width:840px;
  margin: 0 auto;
  position: relative;
}
#Key_visual img:first-child{
position: absolute;
top:225px;
left: 50%;
-webkit-transform: translateY(-50%) translateX(-50%);
transform: translateY(-50%) translateX(-50%);
}
#Key_visual img:last-child{
position: absolute;
z-index: 500;
top:44px;
left:-10px;
}
.top_contents{
  margin:0 auto 65px;
}
#top_con04 img{
  border:solid 1px #dcdcdc;
}
#top_con05 img:nth-of-type(1){
  margin:80px 0 70px -11px;
}
#top_con05 div{
  width: 480px;
  display: inline-block;
  vertical-align: top;
}
#top_con05 div+img{
  display: inline-block;
    vertical-align: top;
    margin-left: 10px;
}
#top_con05 div p{
  margin-bottom:30px;
}
footer{
  height: 330px;
  background:url(../parts/footer_bg.gif) repeat-x 0 0;
  color:#fff;
}
footer .inner{
  width:840px;
  margin:0 auto;
}
footer .banner{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content:space-between;
  padding:30px 0;
}
footer dl{
  padding:45px 0 0;
  margin-bottom:10px;
}
footer .copyright{
  color:rgba(255,255,255,0.5);
  font-size:10px;
}
/*フリーページ*/
.contents{
  clear:both;
}
.text-area{
  overflow: hidden;
  margin:0 0 180px 0;
}

/*ファイル別アイコン*/
.text-area a.icon_pdf:after{
  content:url(../parts/icon_pdf.png);
}
.text-area a.icon_excel:after{
  content:url(../parts/icon_excel.png);
}
.text-area a.icon_word:after{
  content:url(../parts/icon_word.png);
}
.upfile.pdf,
.upfile.xls,
.upfile.doc{
  width:870px;
  margin:0 auto;
  color:#000;
  font-weight: 600;
  padding-right:19px;
}
.upfile.pdf a,
.upfile.xls a,
.upfile.doc a{
  color:#000;
}
.upfile.pdf a:before{
  content:url(../parts/icon_pdf.png);
  margin-right:5px;
}
.upfile.xls a:before{
  content:url(../parts/icon_excel.png);
  margin-right:5px;
}
.upfile.doc a:before{
  content:url(../parts/icon_word.png);
  margin-right:5px;
}

/* 表作成 */
.baseTbl_A{
	width:100%;
	margin:10px 10px;
  font-size:14px;
	box-sizing:border-box;
}
.baseTbl_A th,
.baseTbl_A td{
	padding: 3px 10px;
	font-weight: 100;
	border-bottom:solid 1px #dcdcdc;
	vertical-align:top;
}
.baseTbl_A tr:nth-child(1) th,
.baseTbl_A tr:nth-child(1) td{
	border-top:solid 1px #dcdcdc;
}
.baseTbl_A th{
	width: 25%;
	text-align: left;
	padding-left:40px;
}
/* フリーページ（画像の配置） */
	/*######################################
		フリーページの画像位置設定
	[配置対応番号]
	0_ImgTopLeft:左上		1_ImgTopCenter:中上			2_ImgTopRight:右上
	3_ImgLeft:左							4_ImgRight:右
	5_ImgBottomLeft:左下		6_ImgBottomCenter:中下		7_ImgBottomRight:右下
	########################################*/
.ImgTopCenter,
.ImgBottomCenter,
.ImgRight,
.ImgLeft,
.ImgTopLeft,
.ImgTopRight,
.ImgBottomLeft,
.ImgBottomRight {
  max-width: 1000px;
  position: relative;
  z-index: 100;
}

.ImgTopCenter img,
.ImgBottomCenter img,
.ImgRight img,
.ImgLeft img,
.ImgTopLeft img,
.ImgTopRight img,
.ImgBottomLeft img,
.ImgBottomRight img {
  border-radius: 2px;
}

/*----------------------------------
	上の左（回り込なし）に表示の設定
------------------------------------*/
.ImgTopLeft {
  margin-left: 0px;
}

/*----------------------------------
	上に表示の共通設定
------------------------------------*/
.ImgTopCenter,
.ImgRight,
.ImgLeft,
.ImgTopLeft,
.ImgTopRight {
  margin-bottom: 15px;
}

/*----------------------------------
	下に表示の共通設定
------------------------------------*/
.ImgBottomLeft,
.ImgBottomCenter,
.ImgBottomRight {
  margin-top: 15px;
  clear: both;
}

/*----------------------------------
	左に表示の共通設定
------------------------------------*/
.ImgTopLeft,
.ImgLeft,
.ImgBottomLeft {
  text-align: left;
  margin: 0 15px 15px 0px;
}

.freeImg0 {
  margin-top: 20px;
}

/*----------------------------------
	中央に表示の共通設定
------------------------------------*/
.ImgTopCenter,
.ImgBottomCenter {
  text-align: center;
}

.ImgTopCenter {
  margin-top: 20px;
}

/*----------------------------------
	右に表示の共通設定
------------------------------------*/
.ImgTopRight,
.ImgRight,
.ImgBottomRight {
  text-align: right;
  margin-left: 15px;
}

.ImgRight {
  margin-left: 27px;
}

.ImgTopRight {
  margin-top: 20px;
}

/*----------------------------------
	上下の共通設定
------------------------------------*/
.ImgTopLeft,
.ImgTopRight,
.ImgBottomLeft,
.ImgBottomCenter,
.ImgBottomRight {
  clear: both;
}

/*----------------------------------
	左に表示
------------------------------------*/
.ImgLeft {
  float: left;
  margin: 0px 20px 0 0;
}

/*----------------------------------
	右に表示
------------------------------------*/
.ImgRight {
  float: right;
}

/*----------------------------------
	左下に表示
------------------------------------*/
.ImgBottomLeft {
  margin-top: 15px;
}

/*パンくず*/
.breadrumb{
  display:none;
}
#page-top{
	width:57px;
	height:57px;
	position: fixed;
	bottom:230px;
	right:0;
	margin-left:400px;
	z-index:9999999;
	cursor:pointer;
}
#page-top a{
  display: block;
  width: 100%;
  height: 100%;
  line-height: 90px;
  text-align: center;
  color:#fff;
  font-size:12px;
  -webkit-transition:1.0s;
  transition:1.0s;
  background:url(../parts/ft_pagetop01.svg) no-repeat 0 0px ;
  background-size:50px;
}
/* 767px以下 */
@media screen and (max-width:767px){
  header,
	#container,
  #container #main,
  #container #box,
  #Key_visual,
  footer .inner,
  h1.page_title{
		width: 100%!important;
		min-width:320px;
	}
  header .inner{
    padding-left:10px;
  }
  header h1{
    width:80%;
    height: auto;
  }
  header h1 span{
    position:static;
    display: block;
  }
  nav.menu ul,
  nav.menu{
    display: none;
  }
  header nav.sp{
    display: block;
  }
#Key_visual img:first-child{
  width:100%;
}
#Key_visual img:last-child{
  width:80%;
  left:0;
}
#top_con05 img:nth-of-type(1){
  margin:80px 0 70px;
}
#top_con05 img{
  width:calc(100% - 20px);
  margin:10vh auto 5vh;
}
#top_con05 div,
.top_set{
  width:calc(100% - 20px);
  display: block;
  margin:0 auto;
}
footer{
  background:#000;
  height: auto;
}
footer .banner{
  background:#E5E5E5;
  display: block;
}
footer .banner img{
  display: block;
  margin:0 auto 10px;
}
footer dl{
  padding:45px 10px 10px;
}
footer .copyright{
  padding:0 10px 10px;
}
/*フリーページ*/
	.contents{
		padding:5px 0;
	}
	.text-area{
    width:100%;
		margin-bottom:20px!important;
		padding:20px 20px 0 20px;
	}
	.text-area img{
		width:100%;
	}
  .upfile.pdf,
  .upfile.xls,
  .upfile.doc{
    width: calc(100% - 10px);
}
  .ImgTopCenter img, .ImgBottomCenter img, .ImgRight img, .ImgLeft img, .ImgTopLeft img, .ImgTopRight img, .ImgBottomLeft img, .ImgBottomRight img {
      display: block;
      margin: 0 auto;
      width:auto;
      max-width:100%;
  }
  .ImgRight, .ImgLeft {
      float: none;
  }
  .ImgTopCenter, .ImgBottomCenter, .ImgRight, .ImgLeft, .ImgTopLeft, .ImgTopRight, .ImgBottomLeft, .ImgBottomRight {
      margin: 10px auto 10px;
  }
  #main table{
    width:100%;
  }
  .table_wrap {
    overflow-x: scroll;
  }
  .table_wrap::-webkit-scrollbar{height:10px;}/*バーの太さ*/
  .table_wrap::-webkit-scrollbar-track{background:#dddddd;}/*バーの背景色*/
  .table_wrap::-webkit-scrollbar-thumb{background:#2cc2e4;}/*バーの色*/
.baseTbl_A{
  margin:10px 0;
}
}
/*320px以上519px以下*/
@media screen and (min-width: 320px) and (max-width: 519px) {
#container.top #box{
  margin:310px auto 170px;
}
}

/*520px以上767px以下*/
@media screen and (min-width: 520px) and (max-width: 767px) {
#container.top #box{
  margin:370px auto 170px;
}
}

/*------------print---------------------*/
/* 印刷 */
@page {
	margin: 12mm 7mm;
}
@media print{
	body{ zoom: 95%; }

	#page-top{
		display:none!important;
	}
}
.alter_data{
	font-weight:bold;
	color:#ff3300;
}
