@charset "UTF-8";
ruby[data-ruby] {
	position: relative;
}
ruby[data-ruby]::before {
    content: attr(data-ruby);
    position: absolute;
    line-height: 100%;
    text-align: center;
    left: -5em;
    right: -5em;
    transform-origin: bottom center;
    bottom: 80%;
    font-size: 10px;
    font-weight: 400;
    color: #000;
}
ruby[data-ruby] rt {
	display: none;
}
/*******************************
#flow
*******************************/
#flow .flowDetail {
    width: 880px;
}
#flow .flowDetail ul > li:nth-child(3) {
    background-color: #d8cfab;
}
#flow .flowDetail ul li ol {
    padding-left: 25px;
    font-size: 112.5%;
}
#flow .flowDetail ul li ol li {
    text-align: left;
    margin-bottom: 5px;
    border: none;
    padding: 0;
}
#flow .flowDetail ul li ol li::after {
    content: none;
}

/*******************************
#document
*******************************/
#document .inner {
    width: 1000px;
    margin: 0 auto;
}
#document table {
    width: 100%;
    font-size: 125%;
}
#document table tr:first-child th:nth-child(1) {
    width: 60px;
}
#document table tr:first-child th:nth-child(2) {
    width: 380px;
    font-weight: 400;
}
#document table tr:first-child th:nth-child(3) {
    width: 560px;
    font-weight: 400;
}
#document table tr:first-child th {
    background-color: #ebe7d5;
    color: #00336a;
}
#document table tr th:nth-child(1),
#document table tr td:nth-child(2) {
    font-weight: 700;
    color: #00336a;
}
#document table tr td:nth-child(2) span {
    font-weight: 400;
}
#document table tr th,
#document table tr td {
    border: 1px solid #00336a;
    padding: 15px 0;
}
#document table tr td {
    padding-left: 28px;
}
#document table tr td span {
    font-size: 80%;
    letter-spacing: 0.05em;
}


#document ul {
    margin-top: 40px;
    font-size: 112.5%;
}
#document ul li {
    margin-bottom: 30px;
}


/*******************************
#other
*******************************/
#other {
    margin-bottom: 100px;
}
#other h2 {
    background-color: #e5ebf0;
    font-size: 187.5%;
    color: #00336a;
    font-weight: 700;
    padding: 30px 0 30px 100px;
    margin-bottom: 55px;
}
#other dl {
    width: 1000px;
    margin: 0 auto 80px auto;
}
#other dl dt {
    font-size: 162.5%;
    color: #00336a;
    font-weight: 500;
    margin-bottom: 30px;
    border-bottom: 1px solid #00336a;
    letter-spacing: 0.02em;
}
#other dl dd {
    font-size: 125%;
    letter-spacing: 0.05em;
}
#other dl dd span {
    font-size: 120%;
    font-weight: 700;
    color: #00336a;
}
#other dl dd .small {
    font-size: 87.5%;
    margin-top: 5px;
}

/*******************************
#requirement
*******************************/
#requirement {
    margin-bottom: 100px;
}
#requirement h2 {
    background-color: #e5ebf0;
    font-size: 187.5%;
    color: #00336a;
    font-weight: 700;
    padding: 30px 0 30px 100px;
    margin-bottom: 55px;
}
#requirement div {
    width: 1000px;
}
#requirement p {
    font-size: 125%;
    letter-spacing: 0.05em;
}
#requirement p a {
    display: inline-block;
    margin-top: 1.5em;
}
#requirement p a img {
    width: 2.25em;
    vertical-align: middle;
    display: inline-block;
    margin: -0.5em 0.25em 0 0;
}

/*******************************
#intercontact
*******************************/
#intercontact {
    margin-bottom: 100px;
}
#intercontact h2 {
    background-color: #e5ebf0;
    font-size: 187.5%;
    color: #00336a;
    font-weight: 700;
    padding: 30px 0 30px 100px;
    margin-bottom: 55px;
}
#intercontact dl {
    margin-bottom: 25px;
    text-align: center;
    font-weight: 500;
}
#intercontact dl dt {
    color: #00336a;
    font-size: 162.5%;
    margin-bottom: 10px;
}
#intercontact dl dd {
    font-size: 187.5%;
}
#intercontact .map {
    display: flex;
    align-items: flex-end;
    justify-content: center;
}
#intercontact .map img {
    width: 376px;
}
#intercontact .map img:first-child {
    margin-right: 20px;
}






/*******************************
#document
*******************************/
