@charset "UTF-8";
/* CSS Document */

/*-----------------------------------------------
 __Bace
-----------------------------------------------*/
html {
    font-size: 62.5%;
    scroll-behavior: smooth;
}
body{
  width: 100%;
  line-height:1.6;
  color: #333;
  min-width: 1000px;
font-family:"Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-optical-sizing: auto;
  text-size-adjust: 100%;
  background-color: #bbd9f1;
}
strong{
	font-weight:bold;
}
.Wrapper{
    width: 1000px;
    margin: 0 auto;
    background-color: #FFF;
}

/*-----------------------------------------------
 __Header
-----------------------------------------------*/
#Header{
  width:100%;
  height: 617px;
  padding: 55px 0 0;
  background: url(../refer/visual.jpg) no-repeat 0 0;
  position: relative;
}
#Header.Low{
  height: 150px;
  background-image: none;
}
#Header .Navigation .NavSub{
    width: 500px;
    display: flex;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 100;
}
#Header .Navigation .NavSub li{
    font-weight: bold;
    font-size: 1.4rem;
    line-height: 35px;
    text-align: center;
    margin-right: 1px;
    background-color: #c98cb6;
}
#Header .Navigation .NavSub li.Poster{
    width: 207px;
    background-image: url(../refer/ic_pdf.png);
    background-repeat: no-repeat;
    background-size: 21px;
    background-position: 24px 50%;
}
#Header .Navigation .NavSub li.Poster a{
    padding-left: 34px;
}
#Header .Navigation .NavSub li.Lang{
    width: 135px;
    background-image: url(../refer/ic_lang.png);
    background-repeat: no-repeat;
    background-size: 19px;
    background-position: 16px 50%;
}
#Header .Navigation .NavSub li.Lang a{
    padding-left: 24px;
}
#Header .Navigation .NavSub li.Inq{
    width: 156px;
    margin-right: 0;
    background-image: url(../refer/ic_inq.png);
    background-repeat: no-repeat;
    background-size: 18px;
    background-position: 16px 50%;
}
#Header .Navigation .NavSub li.Inq a{
    padding-left: 24px;
}
#Header .Navigation .NavSub li a{
    display: block;
    width: 100%;
    height: 100%;
    color: #FFF;
    line-height: 35px;
    font-weight: bold;
    text-decoration: none;
}
#Header .Navigation .NavSub li a:hover{
    background-color: rgba(255, 255, 255, 0.2);
}
#Header .Navigation .NavMain{
    width: 100%;
    display: flex;
    position: absolute;
    bottom: 0;
    left: 0;
}

/* Languageメニュー */
#Header .Navigation .NavSub .Lang {
	position: relative;
}

/* 初期状態は非表示 */
#Header .Navigation .NavSub .Lang .Select {
    width: 135px;
	position: absolute;
	top: 100%;
	left: 0;
	margin: 0;
	padding: 0;
	list-style: none;

	opacity: 0;
	visibility: hidden;
	transform: translateY(-10px);

	transition:
		opacity 0.3s ease,
		transform 0.3s ease,
		visibility 0.3s ease;
}

/* ホバー時に表示 */
#Header .Navigation .NavSub .Lang:hover .Select {
    width: 135px;
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

/* リンク装飾（任意） */
#Header .Navigation .NavSub .Lang .Select li a {
    width: 100%;
	display: block;
	white-space: nowrap;
    padding-left: 0;
}


#Header .Navigation .NavMain li{
    width: 199px;
    font-weight: bold;
    font-size: 1.4rem;
    line-height: 60px;
    text-align: center;
    margin-right: 1px;
    background-color: #c98cb6;
}
#Header .Navigation .NavMain li a{
    display: block;
    width: 100%;
    height: 100%;
    color: #FFF;
    line-height: 60px;
    font-weight: bold;
    text-decoration: none;
}
#Header .Navigation .NavMain li a:hover{
    background-color: rgba(255, 255, 255, 0.2);
}

/* メインナビ */
#Header .Navigation .NavMain > li {
	position: relative;
}

/* サブメッセージ */
#Header .Navigation .NavMain > li > ul {
	position: absolute;
	top: 100%;
	left: 0%;
	transform: translateX(0%) translateY(-10px);
	white-space: nowrap;

	opacity: 0;
	visibility: hidden;
	pointer-events: none;

	transition:
		opacity .25s ease,
		transform .25s ease,
		visibility .25s;
	z-index: 100;
}

/* 表示 */
#Header .Navigation .NavMain > li:hover > ul {
	opacity: 1;
	visibility: visible;
	transform: translateX(0%) translateY(0);
}

/* liの余白調整 */
#Header .Navigation .NavMain > li > ul > li {
    width: auto;
	margin: 0;
	padding: 0 0 0 5px;
    font-size: 1.4rem;
    text-align: left;
    font-weight: normal;
    line-height: 20px;
}

#Header .YearName{
    width: 315px;
    height: 52px;
    font-size: 1px;
    text-indent: -9999px;
    background: url(../refer/title_main.png) no-repeat 0 0;
    background-size: contain;
  position: absolute;
  left: 90px;
  top: 25px;
}
#Header .YearName a{
    display: block;
    width: 100%;
    height: 100%;
}
#Header.Low .YearName{
    width: 245px;
    height: 40px;
    left: 20px;
    top: 40px;
}
#Header .Outline{
    width: 434px;
    height: 117px;
    font-size: 1px;
    text-indent: -9999px;
    background: url(../refer/outline_ja.png) no-repeat 0 0;
    background-size: contain;
    position: absolute;
    top: 60px;
    right: 20px;
}
.En #Header .Outline{
    width: 400px;
    height: 98px;
    font-size: 1px;
    text-indent: -9999px;
    background: url(../refer/outline_en.png) no-repeat 0 0;
    background-size: contain;
    position: absolute;
    top: 60px;
    right: 50px;
}
#Header .Outline .Access{
    width: 80px;
    height: 24px;
    font-size: 1.2rem;
    text-align: center;
    line-height: 24px;
    color: #FFF;
    background-color: #0099cc;
    border-radius: 4px;
    position: absolute;
    right: 100px;
    top: 85px;
}
.En #Header .Outline .Access{
    position: absolute;
    right: 40px;
    top: 70px;
}
#Header .Outline .Access a{
    display: block;
    width: 100%;
    height: 100%;
    font-size: 1.2rem;
    font-weight: bold;
    text-decoration: none;
    text-align: center;
    text-indent: 0;
    line-height: 24px;
    color: #FFF;
    border-radius: 4px;
}
#Header .Outline .Access a:hover{
    background-color: rgba(255, 255, 255, 0.2);
}
#Header .ListConv{
    position: absolute;
    left: 550px;
    top: 200px;
}
.En #Header .ListConv{
    position: absolute;
    top: 190px;
}
#Header .ListConv li{
    font-size: 1.4rem;
    font-weight: bold;
    margin-bottom: 6px;
    padding-left: 44px;
}
.En #Header .ListConv li{
    font-size: 1.2rem;
    line-height: 1.4;
    margin-bottom: 10px;
}
#Header .ListConv li a{
    font-weight: bold;
}
#Header .ListConv li.IcJRS{
    background: url(../refer/ic_jrs.png) no-repeat 0 6px;
    background-size: 31px;
}
#Header .ListConv li.IcJSRT{
    background: url(../refer/ic_jsrt.png) no-repeat 0 6px;
    background-size: 31px;
}
#Header .ListConv li.IcJSMP{
    background: url(../refer/ic_jsmp.png) no-repeat 0 6px;
    background-size: 31px;
}
#Header .ListConv li.IcJIRA{
    background: url(../refer/ic_jira.png) no-repeat 0 6px;
    background-size: 40px;
}
#Header .Item{
    position: absolute;
    left: 550px;
    bottom: 80px;
}
#Header .Item .Requirements{
    font-size: 1.4rem;
    padding-left: 20px;
    margin-bottom: 10px;
    background: url(../../../refer/ic_link_pdf.gif) no-repeat 0 4px;
}
.En #Header .Item .Requirements{
    font-size: 1.2rem;
    margin-bottom: 5px;
}
#Header .Item .BtReg{
    width: 400px;
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
    background-color: #C00;
    border-radius: 4px;
}
.En #Header .Item .BtReg{
    font-size: 1.4rem;
    margin-bottom: 5px;
}
#Header .Item .BtReg a{
    display: block;
    width: 100%;
    height: 100%;
    color: #FFF;
    text-decoration: none;
    font-weight: bold;
    text-align: center;
    line-height: 30px;
    margin-bottom: 10px;
    border-radius: 4px;
}
#Header .Item .BtReg a:hover{
    background-color: rgba(255, 255, 255,0.2);
}
.En #Header .Item .BtReg a{
    line-height: 24px;
}
#Header .Item .Note li{
    font-size: 1.2rem;
    padding-left: 1em;
    padding-right: 1em;
    position: relative;
}
.En #Header .Item .Note li{
    font-size: 1.0rem;
}
#Header .Item .Note li::before{
    content: "※";
    color: #F00;
    position: absolute;
    left: 0;
    top: 0;
}
/*-----------------------------------------------
 __Footer
-----------------------------------------------*/
footer{
    width: 100%;
}
footer .FootMain{
    width: 1000px;
    margin: 0 auto 10px;
    position: relative;
}

footer .Copyright{
    color: #333;
    font-size: 1.2rem;
    text-align: right;
    padding-top: 10px;
}
footer .PageTop{
    width: 40px;
    height: 40px;
    font-size:1px;
    text-indent: -9999px;
    position: absolute;
    right: -60px;
    bottom: 30px;
    background:#c98cb6 url(../refer/ic_top.png) no-repeat 50% 50%;
    background-size: 16px;
}
footer .PageTop a{
    display: block;
    width: 100%;
    height: 100%;
}
footer .PageTop a:hover{
    background-color: rgba(255, 255, 255,0.2);
}
/*-----------------------------------------------
 __Article
-----------------------------------------------*/
.Article{
    width: 1000px;
    padding: 10px 40px 60px;
}
.Article > *{
    font-size: 1.6rem;
}
.Article h2{
    font-size: 3.2rem;
    font-weight: bold;
    margin-top: 20px;
    margin-bottom: 20px;
}
.Article h3{
    color: #1571ac;
    font-size: 2.2rem;
    margin-top: 20px;
    padding-bottom: 3px;
    margin-bottom: 10px;
    font-weight: bold;
    border-bottom: 2px solid #1571ac;
}
.Article h4{
    font-size: 1.8rem;
    font-weight: bold;
    color: #1571ac;
    margin-top: 15px;
    margin-bottom: 5px;
}
.Article h5{
    font-size: 1.6rem;
    font-weight: bold;
    margin-top: 15px;
    margin-bottom: 5px;
}
.Article .Pnkz ul{
    display: flex;
    justify-content: flex-start;
}
.Article .Pnkz ul li{
    font-size: 1.2rem;
    padding-right: 15px;
    margin-right: 15px;
    position: relative;
}
.Article .Pnkz ul li::after{
    width: 16px;
    height: 12px;
    content: ">";
    position: absolute;
    right: -15px;
    top: 0;
}
.Article .Pnkz ul li:last-child:after{
    display: none;
}
.Article strong{
	font-weight:bold;
}
.Article strong *{
	font-weight:bold;
}
.Article table {
	border-top: 1px solid #dddddd;
	border-left: 1px solid #dddddd;
	margin:0 auto 1.6rem;
}
.Article table th,
.Article table td {
	padding:0.5rem 1.6rem;
	border-bottom: 1px solid #dddddd;
	border-right: 1px solid #dddddd;
}
.Article table th{
    color: #FFF;
    text-align: center;
    vertical-align: middle;
	background:#00baae;
}
.Article table ol,
.Article table ul{
	margin-bottom:0;
}
.Article table .ListNum li,
.Article table .ListIc li{
	margin-bottom:0;
}

.Article table caption{
	font-weight:bold;
	text-align:left;
	margin-bottom:0.5em;
}
.Article table .SubHD{
    font-size: 1.6rem;
    color: #000;
    background-color: #EFEFEF;
}
.Article .TableRefer{
    font-size: 1.2rem;
    text-align: right;
    margin-top: -1.6rem;
    margin-bottom: 3.0rem;
}
.Article p{
	margin-bottom:1em;
}
.Article p.ListIc{
	padding-left:1em;
	position:relative;
}
.Article p.ListIc::before{
	content:"●";
	color:#A9A9A9;
	position:absolute;
	left:0;
	top:0;
}

.Article ul{
	margin-bottom:1em;
}
.Article ol{
	margin-bottom:1em;
}
.Article dl{
	margin-bottom:1em;
}
.Article figure{
	text-align:center;
	margin:0 auto 1em;
}
.Article figure figcaption{
	font-weight:bold;
    text-align: left;
	margin-bottom:0.5em;
}
.Article iframe{
    display: block;
	margin-bottom:1em;
}
.Article sup{
	font-size: 62%;
	vertical-align:text-top;
	font-weight:inherit;
}
.Article sub{
	font-size:1.0rem;
	vertical-align:0;
	font-weight:inherit;
}
.Article ruby{
    font-weight: inherit;
}
.Article .Red{
	color:#F00;
}
.Article .Italic{
    font-style: italic;
}
.Article .Flex{
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
}
.Article .AlignLeft{
	text-align:left;
}
.Article .AlignCenter{
	text-align:center;
}
.Article .AlignRight{
	text-align: right;
}
.Article .ListIc li{
	padding-left:1em;
    margin-bottom: 0.8rem;
	position:relative;
}
.Article .ListIc li::before{
	width:1em;
	content:"●";
	color:#A9A9A9;
	text-align:center;
	transform:scale(0.5,0.5);
	position:absolute;
	top:0;
	left:0;
}
.Article .ListIc li.InqRuby::before{
	position:absolute;
	top:0.4rem;
	left:0;
}

.Article .ListIc li .ListIc li::before{
	transform:scale(0.3,0.3);
}
.Article .ListNum li{
	list-style-type:decimal;
	margin-left:2em;
	margin-bottom:0.8rem;
}
.Article .ListNote li{
	padding-left:1em;
	position:relative;
	margin-bottom:0.8rem;
}
.Article .ListNote li::before{
	width:1em;
	content:"※";
    color: #000;
    transform: scale(1.0, 1.0);
	text-align:center;
	position:absolute;
	top:0;
	left:0;
}
.Article .ListExam{
    padding-top: 15px;
    margin-top: 50px;
    border-top: 1px solid #f2f2f2;
}
.Article .ListExam li{
    font-size: 1.2rem;
}
.Article .BrSP{
    display: none;
}
.Article .BrPC{
    display: block;
}
/*-----------------------------------------------
 __HOME
-----------------------------------------------*/
.HOME{
    width: 1000px;
    padding: 40px 40px 60px;
    display: flex;
    justify-content: space-between;
}
.HOME section{
    width: 47%;
}
.HOME section h2{
    font-size: 2.0rem;
    font-weight: bold;
    color: #1571ac;
    margin-bottom: 10px;
    border-bottom: 1px solid #1571ac;
}
.HOME section li{
    font-size: 1.4rem;
    padding-left: 90px;
    padding-bottom: 8px;
    margin-bottom: 8px;
    position: relative;
    border-bottom: 1px solid rgba(21, 113, 172,0.3);
}
.HOME section li .Date{
    position: absolute;
    left: 0;
    top: 0;
}
.HOME .MBBox ul li .Message{
    display: inline-block;
    padding-left: 60px;
    position: relative;
}
.HOME .MBBox ul li .Message::before{
    position: absolute;
    left: 0;
    top: 3px;
}
.HOME .MBBox ul li.IcJRC .Message::before{
    display: inline-block;
    width: 51px;
    height: 17px;
    content: "";
    vertical-align: -4px;
    margin-right: 4px;
    background:url(../refer/mb_jrc.png) no-repeat 0 0;
    background-size: contain;
}
.HOME .MBBox ul li.IcJRS .Message::before{
    display: inline-block;
    width: 51px;
    height: 17px;
    content: "";
    vertical-align: -4px;
    margin-right: 4px;
    background:url(../refer/mb_jrs.png) no-repeat 0 0;
    background-size: contain;
}
.HOME .MBBox ul li.IcJSRT .Message::before{
    display: inline-block;
    width: 51px;
    height: 17px;
    content: "";
    vertical-align: -4px;
    margin-right: 4px;
    background:url(../refer/mb_jsrt.png) no-repeat 0 0;
    background-size: contain;
}
.HOME .MBBox ul li.IcJSMP .Message::before{
    display: inline-block;
    width: 51px;
    height: 17px;
    content: "";
    vertical-align: -4px;
    margin-right: 4px;
    background:url(../refer/mb_jsmp.png) no-repeat 0 0;
    background-size: contain;
}
.HOME .MBBox ul li.IcJIRA .Message::before{
    display: inline-block;
    width: 51px;
    height: 17px;
    content: "";
    vertical-align: -4px;
    margin-right: 4px;
    background:url(../refer/mb_jira.png) no-repeat 0 0;
    background-size: contain;
}
/*-----------------------------------------------
 __Outline
-----------------------------------------------*/
.Outline .Define dt{
    float: left;
    font-weight: bold;
}
.Outline .Define dd{
    padding-left: 4em;
}
.Outline .BtAccess{
    display: inline-block;
    width: 80px;
    height: 24px;
    font-size: 1.4rem;
    line-height: 24px;
    text-align: center;
    color: #FFF;
    text-decoration: none;
    background-color: #0099cc;
    border-radius: 4px;
}
.Outline .BtAccess:hover{
    background-color: #32aad2;
}
.Outline .ConvList{
    background-color: #daecfb;
    padding: 10px 30px 10px;
}