html{
    margin: 0px;
    padding: 0px;
    font-size: 62.5%;
}

body{
    margin: 0px;
    padding: 0px;
    font-size: 1.4rem;
    /* font-family: "MS P ゴシック", Arial, "ヒラギノ明朝 Pro W3", "Hiragino Kaku Gothic Pro", "ヒラギノ明朝", "Meiryo", "メイリオ", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN", "YuGothic", "游ゴシック", "Arial", "Helvetica", "sans-serif"; */

    font-family: "MS P ゴシック", Arial, "ヒラギノ明朝 Pro W3", "Hiragino Kaku Gothic Pro", "ヒラギノ明朝", Meiryo, sans-serif;
    text-align: center;
    color: #666666;
    line-height: 23px;

    text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;/*Chrome,Safari*/
    -ms-text-size-adjust: 100%;/*EgdeMobile*/
    -moz-text-size-adjust: 100%;/*firefox*/
}

p{
    margin: 0px;
    padding: 0px;
}

a{
    text-decoration: underline;
    color: #666666;
}
a:visited{
    color: #666666;
}
a:hover{
    color: #009933;
}

ol,ul,li{
    margin: 0px;
    padding: 0px;
    list-style-type: none;
}

.mark_disc01,
#contents .mark_disc01{
    margin: 0px 0px 0px 5px;
    padding: 0px 0px 0px 12px;
    background-image: url(../img/dot-midium.gif);
    background-repeat: no-repeat;
    background-position: left 8px;
}

.ul_style01,
#contents .ul_style01{
    display: block !important;
}
ul.style01,
#contents ul.style01,
#contents .ul_style01 ul.style01{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
ul.style01 li,
#contents ul.style01 li,
#contents .ul_style01 ul.style01 li{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 12px;
    list-style-type: none;
    background-image: url(/img/dot-small.gif);
    background-repeat: no-repeat;
    background-position: left 8px;
    line-height: 23px;
    counter-increment: cnt_style01;
}
ul.style01 li:before,
#contents ul.style01 li:before,
#contents .ul_style01 ul.style01 li:before{
    display: none;
}

ul.style02{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
ul.style02 li{
    margin: 0px 0px 7px 12px;
    padding: 0px 0px 0px 12px;
    background-image: url(/img/dot-midium.gif);
    background-repeat: no-repeat;
    background-position: left 8px;
}

ul.style03,
ol.style03{
    margin: 0px 0px 0px 15px;
    padding: 0px 0px 0px 0px;
    list-style-type: decimal;
}
ul.style03 li,
ol.style03 li{
    margin: 0px 0px 7px 0px;
    padding: 0px 0px 0px 0px;
    list-style-type: decimal;
}

ul.style04,
#contents ul.style04{
    margin: 0px 0px 0px 15px;
    padding: 0px 0px 0px 0px;
}
ul.style04 li,
#contents ul.style04 li{
    margin: 0px 0px 7px 0px;
    padding: 0px 0px 0px 0px;
    list-style-position: inside;
    list-style-type: none;
    counter-increment: cnt_style04;
}
ul.style04 li div,
#contents ul.style04 li div{
    margin: 0px 0px 0px 3px;
    padding: 0px 0px 0px 0px;
    display:inline-block;
    vertical-align: top;
}
ul.style04 li:before,
#contents ul.style04 li:before{
    margin: 0px 0px 0px -20px;
    padding: 0px 0px 0px 0px;
    display:inline-block;
    content: "(" counter(cnt_style04) ")";
    text-align: right;
    vertical-align: top;
}

ul.style05{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
ul.style05 li{
    background-image: url(/img/black-list-bullet.png);
    background-repeat: no-repeat;
    background-position: left 10px;
    margin: 5px 5px;
    padding-left: 15px;
}

ul.style06{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    line-height: 23px;
}
ul.style06 li{
    margin: 6px 0px 6px 25px;
    padding: 0px 0px 0px 0px;
}

ul.style07{
    margin: 0px 0px 0px 50px;
    padding: 0px 0px 0px 0px;
    list-style-type: none;
    line-height: 23px;
}
ul.style07 li{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    counter-increment: cnt;
}
ul.style07 li:before{
    margin: 0px 0px 0px -32px;
    padding: 0px 0px 0px 0px;
    content: "※" counter(cnt) "．";
    display:inline-block;
}

ul.style08{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
ul.style08 li{
    padding-left: 14px;
    background-image: url(/img/sub-list-bullet.png);
    background-position: 4px 7px;
    background-repeat: no-repeat;
    background-size: 3px 3px;
    font-size: 1.2rem;
}

ul.style09,
#contents ul.style09{
    margin: 0px 0px 0px 15px;
    padding: 0px 0px 0px 0px;
}
ul.style09 li,
#contents ul.style09 li{
    margin: 0px 0px 7px 0px;
    padding: 0px 0px 0px 0px;
    list-style-position: inside;
    list-style-type: none;
    counter-increment: cnt_style09;
}
ul.style09 li div,
#contents ul.style09 li div{
    margin: 0px 0px 0px 3px;
    padding: 0px 0px 0px 0px;
    display:inline-block;
    vertical-align: top;
}
ul.style09 li:before,
#contents ul.style09 li:before{
    margin: 0px 0px 0px -20px;
    padding: 0px 0px 0px 0px;
    display:inline-block;
    content: "[" counter(cnt_style09) "]";
    text-align: right;
    vertical-align: top;
}

a.btn_style01{
    margin: 0px 0px 0px 0px;
    padding: 5px 0px 0px 0px;
    display: block;
    width: 219px;
    height: 40px;
    color: #fff;
    font-size: 1.6rem;
    font-weight: bold;
    cursor: pointer;
    border-radius: 3px;
    border: none;
    background: linear-gradient(#00C349, #009029);
    text-decoration:none;
    text-align: center;
}

a.btn_style02{
    margin: 30px auto 0px auto;
    padding: 10px 0px 0px 0px;
    display: block;
    width: 219px;
    height: 30px;
    color: #fff;
    font-size: 1.6rem;
    font-weight: bold;
    border-radius: 3px;
    border: none;
    text-decoration: none;
    text-align: center;
}
a.btn_style02.on{
    background: linear-gradient(#00C349, #009029);
    cursor: pointer;
}
a.btn_style02.off{
    background: linear-gradient(#BCBCBC, #A3A3A3);
    cursor: default;
}

a.link_style01{
    color: #dd0000;
    text-decoration: none;
}
a.link_style01:hover{
    text-decoration: underline;
}

a.link_style02{
    color: #0000FF;
    text-decoration: underline;
}

.arrow01{
    margin: 2px 0px 3px -10px;
    padding: 0px 0px 0px 0px;
    display: inline-block;
    vertical-align: middle;
    color: #FFFFFF;
    width: 30px;
    height: 30px;
    position: relative;
}
.arrow01 span {
    background-color: #FFFFFF;
    height: 3px;
    width: 22px;
    -webkit-transition: 0.5s all;
    transition: 0.5s all;
    position: absolute;
    left: 65%;
    margin-left: -10px;
    border-radius: 2px;
    top: 12px;
}
.arrow01 span:nth-child(1) {
    -webkit-transform: rotate(-495deg) scaleX(0.5) translateX(8px);
    transform: rotate(-495deg) scaleX(0.5) translateX(8px);
}
.arrow01 span:nth-child(2) {
    -webkit-transform: rotate(495deg) scaleX(0.5) translateX(8px);
    transform: rotate(495deg) scaleX(0.5) translateX(8px);
}

.inline_block,
#contents .inline_block{
    display: inline-block;
}

.text_align_center,
#contents .text_align_center{
    text-align: center;
}
.text_align_right,
#contents .text_align_right{
    text-align: right;
}
.text_align_left,
#contents .text_align_left{
    text-align: left;
}

.vertical_align_top,
#contents .vertical_align_top{
    vertical-align: top;
}

.margin_top5px,
#contents .margin_top5px{
    margin-top: 5px;
}

.float_right,
#contents .float_right{
    float: right;
}

.margin_bottom10px,
#contents .margin_bottom10px{
    margin-bottom: 10px;
}

.margin_bottom20px,
#contents .margin_bottom20px{
    margin-bottom: 20px;
}
.margin_bottom30px,
#contents .margin_bottom30px{
    margin-bottom: 30px;
}
.margin_bottom40px,
#contents .margin_bottom40px{
    margin-bottom: 40px;
}
.margin_bottom50px,
#contents .margin_bottom50px{
    margin-bottom: 50px;
}

.margin_top20px,
#contents .margin_top20px{
    margin-top: 20px;
}

.margin_top30px,
#contents .margin_top30px{
    margin-top: 30px;
}
.margin_top50px,
#contents .margin_top50px{
    margin-top: 50px;
}
.margin_top60px,
#contents .margin_top60px{
    margin-top: 60px;
}
.padding_top10px,
#contents .padding_top10px{
    padding-top: 10px;
}
.padding_top20px,
#contents .padding_top20px{
    padding-top: 20px;
}
.padding_top30px,
#contents .padding_top30px{
    padding-top: 30px;
}
.padding_bottom10px,
#contents .padding_bottom10px{
    padding-bottom: 10px;
}
.padding_bottom30px,
#contents .padding_bottom30px{
    padding-bottom: 30px;
}
.padding_bottom50px,
#contents .padding_bottom50px{
    padding-bottom: 50px;
}
.padding_left32px,
#contents .padding_left32px{
    padding-left: 32px;
}
.padding_right32px,
#contents .padding_right32px{
    padding-right:32px;
}
.padding_left10px,
#contents .padding_left10px{
    padding-left: 10px;
}
.padding_left16px,
#contents .padding_left16px{
    padding-left: 16px;
}
.padding_right16px,
#contents .padding_right16px{
    padding-right: 16px;
}

.margin_left20px,
#contents .margin_left20px{
    margin-left: 20px;
}

.margin_right10px,
#contents .margin_right10px{
    margin-right: 10px;
}

.margin_right50px,
#contents .margin_right50px{
    margin-right: 50px;
}

.margin_right60px,
#contents .margin_right60px{
    margin-right: 60px;
}

.margin_left5px,
#contents .margin_left5px{
    margin-left: 5px;
}

.margin_left10px,
#contents .margin_left10px{
    margin-left: 10px;
}

.text_indent10px,
#contents .text_indent10px{
    text-indent: 10px;
}

.text-align_right{
    text-align: right;
}

.cursor_pointer,
#contents .cursor_pointer{
    cursor: pointer;
}

.text_decoration_underline,
#contents .text_decoration_underline{
    text-decoration: underline;
}
.font-weight-bold,
#contents .font-weight-bold{
    font-weight: bold;
}





#contents .chairman_interview div:first-of-type{
    display: flex;
    /* margin: 0 0 10px 0; */
}
#contents .chairman_interview div:first-of-type img{
    width: 168px;
    padding: 0 0 10px 10px;
}

.red_color_txt {
    color: #ff0000;
}

.notice_color{
    color: #dd0000;
}

.error_txt {
    color: #ff0000;
}

.icon_word{
    margin: 0px 0px 0px 0px;
    padding: 2px 0px 3px 21px;
    background-image: url(/img/icon_word.png);
    background-repeat: no-repeat;
    background-position: 0 0;
}
.icon_pdf{
    margin: 0px 0px 0px 0px;
    padding: 2px 0px 3px 21px;
    background-image: url(/img/ico-pdf.png);
    background-repeat: no-repeat;
    background-position: 0 0;
}
.icon_excel{
    margin: 0px 0px 0px 0px;
    padding: 2px 0px 3px 21px;
    background-image: url(/img/icon_excel.png);
    background-repeat: no-repeat;
    background-position: 0 0;
}

.icon_alert{
    margin: 0px 0px 0px 0px;
    padding: 3px 0px 10px 40px;
    background-image: url(/img/ico-alert.gif);
    background-repeat: no-repeat;
    background-position: left top;
}

.border_style01{
    border: solid 1px #cccccc;
}

#app{
    margin: 0px auto 0px auto;
    padding: 0px 0px 0px 0px;
    width: 960px;
    /*width: 100%;
    max-width: 960px;*/
    text-align: left;
}

#popup_content{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    text-align: center;
    width: 100%;
    display: none;
    position: absolute;
    top: 50%;
    left: 0px;
    z-index: 9999;
}
#popup_content_main{
    margin: 0px auto 0px auto;
    padding: 0px 0px 0px 0px;
    background-color: #ffffff;
    position: relative;
    z-index: 99999;
}
#popup_content .close_btn{
    margin: 0px 0px 0px 0px;
    padding: 0px 10px 7px 10px;
    text-align: right;
}
#popup_content .close_btn img{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    cursor: pointer;
}
#popup_content_box{
    overflow: auto;
    margin: 0px 0px 0px 0px;
    padding: 10px 10px 10px 10px;
}

#popup_background{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    display: none;
    width: 100%;
    height: 100%;
    background-color: #000000;
    opacity: 0.65;
    position: fixed;
    top: 0px;
    left: 0px;
    z-index: 999;
}

#header{
    margin: 0px 0px 10px 0px;
    padding: 0px 0px 0px 0px;
}
#header h1{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    display: inline-block;
}
#header a{
    text-decoration: none;
}
#header .info_box{
    margin: 0px 0px 10px 0px;
    padding: 0px 0px 0px 0px;
    text-align: right;
}
#header .info_box a{
    margin: 0px 0px 0px 10px;
    padding: 2px 5px 2px 5px;
    display: inline-block;
    color: #ffffff;
    background-color: #999999;
    border-radius: 0px 0px 5px 5px;
    font-size: 1.2rem;
    font-weight: bold;
    letter-spacing: 1px;
}
#header .info_box a:hover{
    background-color: #00A838;
}
#header .info_box a.active{
    background-color: #00A838;
}
#header .info_box a.active:hover{
    text-decoration: underline;
}
#header .right{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    display: inline-block;
    text-align: right;
    float: right;
}
#header .right .nav{
    margin: 0px 0px 10px 0px;
    padding: 0px 0px 0px 0px;
}
#header .right .nav ul{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
#header .right .nav li{
    margin: 0px 0px 0px 11px;
    padding: 0px 0px 0px 0px;
    display: inline-block;
}
#header .right .nav li a{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 9px;
    font-size: 1.2rem;
    background-image: url(../img/header-bullet.png);
    background-position: 0 3px;
    background-repeat: no-repeat;
    background-size: 4px 7px;
}
#header .search{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
#header .search input[type="text"]{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    border-color: #ccc;
    border-style: solid;
    border-width: 1px;
}
#header .search input[type="submit"]{
    margin: 0px 0px 0px 0px;
    padding: 0px 10px 0px 10px;
    font-size: 1.1rem;
    background-color: #fff;
    border-radius: 3px;
    border-style: solid;
    border-width: 1px;
}
#main_nav{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    font-size:0;
}
#main_nav dl{
    margin: 0px 0px 0px 0px;
    padding: 0px 4px 0px 4px;
    display: inline-block;
    border-left: dotted 1px #999999;
}
#main_nav dl:last-child{
    border-right: dotted 1px #999999;
}

#main_nav{
    display: flex;
    justify-content: space-between;
    box-sizing: border-box;
}

/* #main_nav #main_nav_nav01{
    width: 110px;
}
#main_nav #main_nav_nav02{
    width: 142px;
}
#main_nav #main_nav_nav03{
    width: 200px;
}
#main_nav #main_nav_nav04{
    width: 160px;
}
#main_nav #main_nav_nav05 dt a{
    width: 302px;
    letter-spacing: -1px;
    font-size: 1.2rem;
} */
#main_nav dl{
    white-space: nowrap;
    width: 100%;
    box-sizing: border-box;
}
#main_nav dt{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    font-size: 1.4rem;
    /*border-left: dotted 1px #999999;*/
}
#main_nav #main_nav_nav01 dt{
    font-size: 1.6rem;
}
#main_nav dt a{
    margin: 0px 0px 0px 0px;
    padding: 3px 10px;
    display: block;
    color: #3D3D3D;
    font-weight: bold;
    text-align: center;
}
#main_nav dt a:hover{
    color: #FFFFFF;
    background-color: #00A838;
}
#main_nav dt a.active{
    color: #FFFFFF;
    background-color: #00A838;
}
#main_nav dd,
#main_nav_img dd{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    font-size: 1.1rem;
    position: relative;
    z-index: 200;
}
#main_nav ul,
#main_nav_img ul{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    width: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    opacity: 0;
}
#main_nav li,
#main_nav_img li{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
#main_nav li a,
#main_nav_img li a{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    background-color: #00a838;
    border-bottom: solid 1px #219347;
    line-height: 110%;
    text-align: left;
    padding: 6px 6px;
    font-weight: lighter;
    letter-spacing: 0px;
    display: block;
    color: #ffffff;
}
#main_nav li a:hover,
#main_nav_img li a:hover{
    background-color: #45c771;
}

#main_nav_img{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    font-size:0;
}
#main_nav_img dl{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    display: inline-block;
}
#main_nav_img dt{
    height: 24px;
}
#main_nav_img #main_nav_nav01{
    width: 110px;
}
#main_nav_img #main_nav_nav02{
    width: 170px;
}
#main_nav_img #main_nav_nav02 dd{
    margin-left: 6px;
    width: 159px;
}
#main_nav_img #main_nav_nav03{
    width: 200px;
}
#main_nav_img #main_nav_nav03 dd{
    margin-left: 6px;
    width: 189px;
}
#main_nav_img #main_nav_nav04{
    width: 180px;
}
#main_nav_img #main_nav_nav04 dd{
    margin-left: 6px;
    width: 169px;
}
#main_nav_img #main_nav_nav05{
    width: 300px;
}


#main{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}

.breadcrumbs_area{
    background: #e6f7e8;
    padding: 0px 0 25px 0px;
    margin: 0 0 20px 0;
}
.breadcrumbs_area .page_title{
    font-size: 2.4rem;
    margin: 20px 0 0 10px;
    font-weight: bold;
    /* color: #3D3D3D; */
}

#breadcrumbs{
    margin: 0px 0px 10px 0px;
    padding: 0px 0px 0px 0px;
    font-size: 1.2rem;
}
#breadcrumbs ul{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
#breadcrumbs li{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    display: inline-block;
}
#breadcrumbs li a{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    background: url(/img/ico-pankuzu.gif) no-repeat;
    background-position: right 5px;
    margin-right: 10px;
    padding-right: 20px;
}

#left_area{
    margin: 0px 19px 0px 0px;
    padding: 0px 0px 0px 0px;
    /*width: 19.9%;*/
    width: 190px;
    display: inline-block;
}

#left_nav{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
#left_nav a{
    text-decoration: none;
}
#left_nav ul{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
#left_nav li{
    margin: 0px 0px 7px 0px;
    padding: 0px 0px 0px 0px;
}
#left_nav li a{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    display: block;
}
#left_nav li a.active{
    color: #00a838;
}
#left_nav .second_layer{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
#left_nav .second_layer li{
    padding-left: 14px;
    background-image: url(/img/sub-list-bullet.png);
    background-position: 4px 7px;
    background-repeat: no-repeat;
    background-size: 3px 3px;
    font-size: 1.2rem;
}
#left_nav .second_layer.special_page_second_layer li{
    cursor:pointer;
}
#left_nav .second_layer.special_page_second_layer li:not(:last-of-type){
    border-bottom: dotted 1px #ccc;
}
#left_nav .second_layer.special_page_second_layer .sidemenu_toggle_btn{
    position: relative;
}
#left_nav .second_layer.special_page_second_layer .sidemenu_toggle_btn > span{
    display: inline-block;
    width: 100%;
}
#left_nav .second_layer.special_page_second_layer .sidemenu_toggle_btn::after{
    content: "";
    position: absolute;
    right: 1px;
    top: 5px;
    transform: rotate(-0deg);
    width: 0;
    height: 0;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-bottom: 7px solid #009933;
}
#left_nav .second_layer.special_page_second_layer .sidemenu_toggle_btn.open::after{
    transform: rotate(-180deg);
}
/* #left_nav .second_layer.special_page_second_layer li{
    font-size: 1.2rem;
} */
#right_area{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    display: inline-block;
    width: 220px;
}
#right_area .banner{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
#right_area .banner ul{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
#right_area .banner li{
    margin: 0px 0px 5px 0px;
    padding: 0px 0px 0px 0px;
}
#right_area .banner li a{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    display: block;
}
#right_area .banner li img{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    width: 220px;
}

#contents{
    margin: 0px 0px 60px 0px;
    padding: 0px 0px 0px 0px;
    display: inline-block;
    vertical-align: top;
    /*width: 77.7%;*/
    width: 745px;
    font-size: 1.3rem;
}
#contents.special_page{
    font-size: 1.5rem;
    max-height: 100%;
}
#contents.special_page .change_point{
    display: flex;
    flex-direction: column;
}
#contents.special_page .modifying_proposal li{
    display: flex;
}

#contents.special_page .modifying_proposal li > div:first-of-type{
    min-width: 20px;
}
#contents.special_page .px12{
    font-size: 12px;
    line-height: 1.5;
}
#contents.special_page .information{
    margin:40px 0 20px 0;
    background-color: #efefef;
    padding: 4px 0;
}
#contents.special_page .information dl{
    margin: 0;
    display: flex;
    overflow: hidden;
}
#contents.special_page .information dl dt{
    padding: 24px 0 10px 0;
    font-size: 1.8rem;
    color: #009933;
    text-align: center;
    width: 20%;
    box-sizing: border-box;
}
#contents.special_page .information dl div{
    width: 80%;
    box-sizing: border-box;
    max-height: 100%;
}


#contents.special_page .information dl div dd{
    margin-left: 20px;
    display: flex;
    margin: 0px 0px 0px 0px;
    padding: 16px 16px 16px 0px;
    border-bottom: dotted 1px #bbbbbb;
    justify-content: space-between;
    max-height: 100%;
}
#contents #nfa > div:first-of-type > aside{
    font-size: 1.4rem;
    position: relative;
    bottom: -4px;
}
#contents.special_page .information dl div dd aside{
    width: 20%;
    color: #009933;
}
#contents.special_page .information dl div dd a{
    width: 80%;
    text-align: left;
    font-size: 1.5rem !important;
    max-height: 100%;
}
#contents.special_page .sub_menu_box{
    position: sticky;
    top: 0;
    background: #fff;
    padding: 30px 0;
    z-index: 2;
}
#contents.special_page .sub_menu_box ul{
    display: flex;
    /* gap:20px */
}

#contents.special_page .sub_menu_box ul > li:not(:nth-child(5)){
/* #contents.special_page .sub_menu_box ul > li:not(:nth-child(6)){ */
    margin-right: 10px;
}
#contents.special_page .sub_menu_box ul li{
    width: calc(20% - (40px / 5));
    /* width: calc(16.6% - (40px / 6)); */
}
#contents.special_page .sub_menu_box ul li a{
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    text-decoration: none;
    width: 100%;
    height: 131px;
    position: relative;
}
#contents.special_page .sub_menu_box ul li a{
    background-color: #009933;
    text-align: center;
}
#contents.special_page .sub_menu_box ul li:nth-child(1) a,
#contents.special_page .sub_menu_box ul li:nth-child(3) a{
    font-size: 2.8rem;
}
#contents.special_page .sub_menu_box ul li:nth-child(2) a{
    font-size: 2.2rem;
    line-height: 1.3;
}
#contents.special_page .sub_menu_box ul li:nth-child(4) a{
    font-size: 2.2rem;
    line-height: 1.3;
}
#contents.special_page .sub_menu_box ul li:nth-child(1) a,
#contents.special_page .sub_menu_box ul li:nth-child(2) a,
#contents.special_page .sub_menu_box ul li:nth-child(3) a,
#contents.special_page .sub_menu_box ul li:nth-child(4) a,
#contents.special_page .sub_menu_box ul li:nth-child(5) a{
  font-size: 2.2rem;
}

#contents.special_page .sub_menu_box ul li:nth-child(3) a{
    font-size: 1.9rem;
}
#contents.special_page .sub_menu_box ul li:nth-child(4) a{
  font-size: 2.2rem;
}

/* #contents.special_page .sub_menu_box ul li:nth-child(2) a,
#contents.special_page .sub_menu_box ul li:nth-child(4) a{
    position: relative;
} */

/* #contents.special_page .sub_menu_box ul li:nth-child(2) a span ,
#contents.special_page .sub_menu_box ul li:nth-child(4) a span { */
/* #contents.special_page .sub_menu_box ul li a {
  position: relative;
} */
#contents.special_page .sub_menu_box ul li a.new::after {
  content: 'new';
  position: absolute;
  top: 0;
  left: 0;
  width: 52px;
  height: 24px;
  background-color: #E7414C;
  box-sizing: border-box;
  font-size: 1.6rem;
  padding: 2px 10px;
}
/* #contents.special_page .sub_menu_box ul li:nth-child(4) a span {
    display: inline-block;
    background-color: #E7414C;
    color: #fff;
    position: absolute;
    top: 0;
    left: 0;
    padding: 2px 10px;
    box-sizing: border-box;
    font-size: 1.6rem;
} */

#contents.special_page .sub_menu_box ul li a::before{
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 10px 0 10px;
    border-color: #ffffff transparent transparent transparent;
    position: absolute;
    bottom: 8px;
}

#contents.special_page .reference_link a,
#contents.special_page .reference_link{
    font-size: 1.1rem !important;
    line-height: 1.7;
}
#contents.home{
    width: 710px;
    margin-right: 26px;
}
#contents p{
    margin: 0px 0px 20px 0px;
    padding: 0px 0px 0px 0px;
}
#contents h2{
    margin: 0px 0px 28px 0px;
    padding: 0px 0px 10px 0px;
    border-bottom-color: #00a838;
    border-bottom-style: solid;
    border-bottom-width: 1px;
    color: #00a838;
    font-size: 2.8rem;
    font-weight: normal;
}
#contents h2.style01{
    color: #5C5C5C;
    padding: 10px 0px 10px 5px;
    background-color: #FEE6F4;
}
#contents h2.style02{
    color: #5C5C5C;
    padding: 10px 0px 10px 5px;
    background-color: #FEEDD1;
}
#contents h2.style03{
    color: #5C5C5C;
    padding: 10px 0px 10px 5px;
    background-color: #E3FAFF;
}
#contents h2.style04{
    margin: 0px 0px 20px 0px;
    padding: 10px 10px 10px 10px;
    font-size: 2.0rem;
    color: #00a838;
    background-color: #efefef;
}

#contents h3{
    margin: 0px 0px 7px 0px;
    padding: 0px 0px 0px 0px;
    color: #00a838;
    font-size: 1.7rem;
    font-weight: 700;
    line-height: 25.5px;
}
#contents h3.style01{
    color: #444444;
}
#contents h3.style02{
    padding: 5px 5px 5px 5px;
    font-size: 1.5rem;
    font-weight: normal;
    background-color: #00a838;
    color: #ffffff;
}

#contents h4{
    margin: 0px 0px 10px 0px;
    padding: 6px 10px 6px 10px;
    font-size: 1.5rem;
    font-weight: bold;
}
#contents h4.style01{
    background: #ffe6f4;
}
#contents h4.style02{
    background: #ffedd0;
}
#contents h4.style03{
    background: #d0f7ff;
}
#contents h4.style04{
    background: #dbe2f8;
}
#contents h4.style05{
    background: #e3f4ea;
}
#contents h4.style06{
    padding: 0px;
}
#contents input[type="submit"],
#contents input[type="button"],
#contents button{
    margin: 0px 0px 0px 0px;
    padding: 5px 0px 5px 0px;
    display: block;
    width: 200px;
    min-width: 50px;
    color: #fff;
    font-size: 1.3rem;
    font-weight: bold;
    cursor: pointer;
    border-radius: 3px;
    border: none;
    background: linear-gradient(#00C349, #009029);
}
#contents input[type="submit"].back_btn,
#contents input[type="button"].back_btn,
#contents button.back_btn{
    background: linear-gradient(#676767, #1d1d1d);
}
#contents input[type="submit"].margin_left_right_auto,
#contents input[type="button"].margin_left_right_auto,
#contents button.margin_left_right_auto{
    margin-left: auto;
    margin-right: auto;
}
#contents input[type="submit"].margin_left_right_auto
{
    width: 300px;
    letter-spacing: 1px;
}
#contents input[type="text"],
#contents input[type="password"],
#contents textarea{
    border: #cccccc 1px solid;
    background: #ffffff;
    padding: 5px;
    width: 100%;
}
#contents input[type="text"].tel{
    width: 67px;
}
#contents input[type="text"].zip_code1{
    width: 50px;
}
#contents input[type="text"].zip_code2{
    width: 67px;
}
#contents input[type="text"].age{
    width: 20px;
}
#contents .login{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
#contents .login form{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    display: inline-block;
    width: 60%;
}
#contents .login table{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    border-spacing: 0px;
    border-collapse: collapse;
    border-color: #808080;
    width: 100%;
}
#contents .login table th{
    margin: 0px 0px 0px 0px;
    padding: 8px 40px 8px 10px;
    border-bottom: 2px #ffffff solid;
    background-color: #f0f0f0;
    font-weight: bold;
    background-image: url(../img/bkg-form.gif);
    background-repeat: no-repeat;
    background-position: 95% center;
}
#contents .login table td{
    margin: 0px 0px 0px 0px;
    padding: 8px 10px 8px 10px;
    border-bottom: 2px #ffffff solid;
}
#contents .login .sign_up{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    display: inline-block;
    text-align: center;
    vertical-align: top;
    width: 39%;
}
#contents .login .sign_up .btn{
    margin-left: auto;
    margin-right: auto;
}
#contents .login .sign_up .btn.btn_style01{
    font-size: 1.4rem;
}
#contents .login .option{
    margin: 10px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    line-height: 22px;
}

#contents .form_style01{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
#contents .form_style01 form{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
#contents .form_style01 table{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    border-spacing: 0px;
    border-collapse: collapse;
    border-color: #808080;
    width: 100%;
}
#contents .form_style01 table th{
    margin: 0px 0px 0px 0px;
    padding: 8px 40px 8px 10px;
    border-bottom: 2px #ffffff solid;
    background-color: #f0f0f0;
    font-weight: bold;
    background-image: url(../img/bkg-form.gif);
    background-repeat: no-repeat;
    background-position: 95% center;
    width: 190px;
}
#contents .form_style01 table td:not(.policy){
    margin: 0px 0px 0px 0px;
    padding: 8px 10px 8px 10px;
    border-bottom: 2px #ffffff solid;
}
#contents .form_style01 table td.policy .privacy_policy_box{
    margin: 20px 0 0 0;
}
#contents .form_style01 table td.policy .privacy_policy_box .center-content{
    text-align: center;
    padding: 10px 0 20px 0;
    font-weight: bold;
}
#contents .form_style01 table td.policy .scroll-form{
    margin: 0 auto 20px;
    padding: 10px 20px;
    width: 100%;
    height: 200px;
    border: 1px solid #ccc;
    overflow-y: scroll;
    box-sizing: border-box;
    text-align: left;
    font-size: 12px;
    line-height: 1.3;
    border: solid 1px #aaa;
}
#contents .form_style01 table td.name_input .flex > div > div span {
    display: inline-block;
    padding: 0 0 0 10px;
    white-space: nowrap;
    width: 85px;
}

#contents .form_style01 table td.name_input .flex > div > div {
    display: flex;
    /* text-align: center; */
    justify-content: center;
}
#contents .form_style01 table td.name_input .flex > div {
    display: flex;
    flex-direction: column;
}
#contents .form_style01 table td.name_input .flex {
    display: flex;
}
#contents .form_style01 table td.name_input .flex > div > div input {
    max-width: 175px;
    box-sizing: border-box;
}
#contents input[type="text"], #contents input[type="password"], #contents textarea {
    border: #cccccc 1px solid;
    background: #ffffff;
    padding: 5px;
    width: 100%;
}
#contents .form_style01 table td.name_input {
    padding: 8px 0 8px 0;
}


#contents .form_style01 table td.name_input{
    padding: 8px 0 8px 0;
}

#contents .form_style01 table td.name_input .flex{
    display: flex;
}
#contents .form_style01 table td.name_input .flex > div{
    display: flex;
    flex-direction: column;
}
#contents .form_style01 table td.name_input .flex > div > div{
    display: flex;
    /* text-align: center; */
    justify-content: center;
}

#contents .form_style01 table td.name_input .flex > div > div input{
    max-width: 175px;
    box-sizing: border-box;
}

#contents .form_style01 table td.name_input .flex > div > div span{
    display: inline-block;
    padding: 0 0 0 10px;
    white-space: nowrap;
    width: 85px;
}
#contents .function_detail{
    margin: 0px 0px 20px 0px;
    padding: 0px 0px 0px 0px;
}
#contents .function_detail dl{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    max-width: 313px;
    display: inline-block;
    vertical-align: top;
}
#contents .function_detail dt{
    margin: 0px 0px 0px 0px;
    padding: 5px 10px 7px 0px;
}
#contents .function_detail dd{
    margin: 0px 0px 0px 15px;
    padding: 0px 0px 0px 0px;
}
#contents .banner{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
#contents .banner ul{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
#contents .banner li{
    margin: 0px 6px 10px 0px;
    padding: 0px 0px 0px 0px;
    display: inline-block;
}
#contents .banner li:nth-child(4n){
    margin-right: 0px;
}
#contents .banner li a{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    display: block;
}
#contents .banner li img{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    width: 170px;
    height: 70px;
}

#contents .step_style01{
    margin: 0px 0px 50px 0px;
    padding: 0px 0px 0px 0px;
}
#contents .step_style01 ul{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    font-size: 0;
}
#contents .step_style01 li{
    margin: 0px 7px 0px 0px;
    padding: 0px 0px 0px 0px;
    display: inline-block;
}
#contents .step_style01 li:last-child{
    margin-right: 0px;
}
#contents .step_style01 li img{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    display: block;
    cursor: pointer;
}
#contents .step_style01 .detail{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    display: none;
    font-size: 0;
}
#contents .step_style01 .detail img{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
#contents .step_style01 .detail .content{
    border-bottom: 2px solid #26be4a;
    border-left: 2px solid #26be4a;
    border-right: 2px solid #26be4a;
    padding: 22px;
    font-size: 1.3rem;
    line-height: 23px;
}
#contents .left{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    display: inline-block;
    vertical-align: top;
}
#contents .left ul{
    margin-left: 10px;
    margin-bottom: 20px;
}
#contents .right{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    width: 216px;
    display: inline-block;
    text-align: center;
    vertical-align: top;
}
#contents .right ul{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
#contents .right li{
    margin: 0px 0px 15px 0px;
    padding: 0px 0px 0px 0px;
}
#contents .right li a{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    display: block;
}

#contents dl.style01{
    margin: 0px 0px 0px 0px;
    padding: 6px 0px 6px 0px;
}
#contents dl.style01:nth-of-type(odd){
    background: #f5f5eb;
}
#contents dl.style01:last-of-type{
    margin-bottom: 20px;
}
#contents dl.style01 dt{
    margin: 0px 0px 0px 0px;
    padding: 0px 6px 0px 0px;
    display: inline-block;
    width: 170px;
    text-align: right;
}
#contents dl.style01 dd{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    display: inline-block;
}
#contents dl.style01 dd:nth-of-type(1),
#contents dl.style01 dd:nth-of-type(4){
    padding-right: 6px;
}
#contents.jp dl.style01 dd:nth-of-type(2),
#contents.jp dl.style01 dd:nth-of-type(5){
    width: 75px;
    /* padding-right: 10px; */
}
#contents dl.style01 dd:nth-of-type(3){
    padding-right: 6px;
}
#contents dl.style01 dd a{
    color: #176281;
    text-decoration: none;
}

#contents dl.style02{
    margin: 0px 0px 0px 0px;
    padding: 6px 0px 6px 0px;
    line-height: 23px;
}
#contents dl.style02:nth-of-type(odd){
    background: #f5f5eb;
}
#contents dl.style02:last-of-type{
    margin-bottom: 20px;
}
#contents dl.style02 dt{
    margin: 0px 0px 0px 0px;
    padding: 0px 6px 0px 0px;
    display: inline-block;
    width: 250px;
    text-align: right;
    vertical-align: top;
    font-weight: bold;
}
#contents dl.style02 dd{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    display: inline-block;
}

#contents dl.style03{
    margin: 0px 0px 0px 0px;
    padding: 6px 0px 6px 0px;
    line-height: 23px;
}
#contents dl.style03 dt{
    margin: 0px 0px 0px 0px;
    padding: 8px 15px 8px 15px;
    background: #00a838;
    color: #ffffff;
}
#contents dl.style03 dt a{
    margin: 0px 0px 0px 10px;
    padding: 0px 0px 0px 0px;
    color: #ffffff;
    text-decoration: none;
}
#contents dl.style03 dt a.top_btn{
    float: right;
}
#contents dl.style03 dd{
    margin: 0px 0px 0px 0px;
    padding: 8px 15px 8px 15px;
}
#contents dl.style03 dd:nth-of-type(odd){
    background: #f5f5f5;
}

#contents dl.style04{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
#contents dl.style04 dt{
    margin: 0px 0px 8px 0px;
    padding: 6px 8px 6px 8px;
    background-color: #f0f0f0;
}
#contents dl.style04 dd{
    margin: 0px 0px 20px 28px;
    padding: 0px 0px 0px 0px;
}

#contents table.style01{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    border-color: #9EC0E2;
    border-spacing: 0;
    border-collapse: collapse;
}
#contents table.style01 th,
#contents table.style01 td{
    margin: 0px 0px 0px 0px;
    padding: 15px 15px 15px 15px;
    width: 190px;
    background: #efefef;
    border-bottom: 1px solid #ffffff;
    vertical-align: middle;
}

#contents table.style02{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    border-color: #9EC0E2;
    border-spacing: 0;
    border-collapse: collapse;
    width: 100%;
}
#contents table.style02 th{
    margin: 0px 0px 0px 0px;
    padding: 8px 0px 8px 20px;
    width: 120px;
    background: #efefef;
    border-bottom: 1px solid #ffffff;
    vertical-align: middle;
}
#contents table.style02 td{
    margin: 0px 0px 0px 0px;
    padding: 8px 0px 8px 20px;
    background: #efefef;
    border-bottom: 1px solid #ffffff;
    vertical-align: middle;
}

#contents table.style03{
    margin: 0px auto 0px auto;
    padding: 0px 0px 0px 0px;
    border-spacing: 0;
    border-collapse: collapse;
    background: #e6f7e8;
}
#contents table.style03 th{
    margin: 0px 0px 0px 0px;
    padding: 5px 15px 5px 15px;
    width: 370px;
    background: #e6f7e8;
    border-bottom: 2px solid #ffffff;
    vertical-align: middle;
    font-weight: normal;
}
#contents table.style03 td{
    margin: 0px 0px 0px 0px;
    padding: 5px 15px 5px 15px;
    background: #e6f7e8;
    border-bottom: 2px solid #ffffff;
    vertical-align: middle;
    font-weight: bold;
}

#contents table.style04{
    margin: 0px 0px 20px 0px;
    padding: 0px 0px 0px 0px;
    border-spacing: 0;
    border-collapse: collapse;
}
#contents table.style04 th{
    margin: 0px 0px 0px 0px;
    padding: 8px 10px 8px 10px;
    width: 190px;
    border-bottom: solid 2px #ffffff;
    vertical-align: middle;
    background-color: #f0f0f0;
    background-image: url(/img/bkg-form.gif);
    background-repeat: no-repeat;
    background-position: 95% center;
}
#contents table.style04 td{
    margin: 0px 0px 0px 0px;
    padding: 8px 10px 8px 10px;
    border-bottom: solid 2px #ffffff;
    vertical-align: middle;
}

#contents table.style05{
    margin: 0px 0px 10px 0px;
    padding: 0px 0px 0px 0px;
    border-spacing: 0;
    border-collapse: collapse;
    border:solid 1px #CCCCCC;
}
#contents table.style05 th{
    margin: 0px 0px 0px 0px;
    padding: 8px 10px 8px 10px;
    border:solid 1px #CCCCCC;
    background-color: #f0f0f0;
    font-weight: normal;
}
#contents table.style05 th.box01{
    background-color: #cef1d1;
    font-weight: bold;
}
#contents table.style05 td{
    margin: 0px 0px 0px 0px;
    padding: 8px 10px 8px 10px;
    border:solid 1px #CCCCCC;
}

#contents a.style01{
    font-size: 1.2rem;
    font-weight: normal;
    margin-left: 10px;
}
#contents a.style02{
    background-image: url(/img/header-bullet.png);
    background-position: left 3px;
    background-repeat: no-repeat;
    padding-left: 11px;
}

/* #contents .box_style01{
    margin: 0px 0px 20px 0px;
    padding: 15px 15px 15px 15px;
    border: solid 2px #dddddd;
} */

#contents .box_style02{
    margin: 30px 30px 30px 30px;
    padding: 13px 13px 13px 13px;
    border: solid 1px #00a838;
}

#contents .box_style03{
    margin: 30px 0px 30px 0px;
    padding: 0px 0px 0px 0px;
}
#contents .box_style03 dl{
    margin: 0px 30px 0px 0px;
    padding: 0px 0px 0px 0px;
    display: inline-block;
    width: 210px;
    vertical-align: top;
}
#contents .box_style03 dl dt{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
#contents .box_style03 dl dd{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}

#contents .box_style04{
    margin: 0px 0px 20px 0px;
    padding: 5px 5px 5px 5px;
    text-align: left;
    border: solid 1px #cccccc;
    border-radius: 5px;
    background-color: #f0f0f0;
}

#contents .schema{
    display: none;
}

#contents .required_documents{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    border: solid 1px #cccccc;
    border-collapse: collapse;
}
#contents .required_documents th{
    margin: 0px 0px 0px 0px;
    padding: 4px 4px 4px 4px;
    border: solid 1px #cccccc;
    text-align: center;
    width: 186px;
}
#contents .required_documents th.seikaiin{
    background-color: #ffe6f4;
}
#contents .required_documents th.sanjokaiin{
    background-color: #ffedd0;
}
#contents .required_documents th.kenriinin{
    background-color: #d0f7ff;
}
#contents .required_documents td{
    margin: 0px 0px 0px 0px;
    padding: 8px 4px 4px 8px;
    border: solid 1px #cccccc;
    vertical-align: top;
}

#contents .flow_admission{
    margin: 0px 40px 0px 40px;
    padding: 0px 0px 0px 0px;
}
#contents .flow_admission p{
    margin: 0px 0px 24px 0px;
    padding: 5px 8px 5px 8px;
    background-color: #eaeaea;
    position: relative;
}
#contents .flow_admission p:after{
    margin: 0px 0px 0px 0px;
    padding: 16px 0px 0px 0px;
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 12px;
    background-image: url(/img/step-arrow.png);
    background-size: 19px 12px;
    background-position: center center;
    background-repeat: no-repeat;
    background-color: #ffffff;
    content: " ";
}
#contents .flow_admission p:last-child:after{
    display: none;
}

#contents .qa{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
#contents .date{
    text-align: right;
}
#contents .qa dt{
    margin: 0px 0px 5px 0px;
    padding: 15px 15px 15px 30px;
    /* background: #eaeaea;
    background-image: url(/img/question.png);
    background-repeat: no-repeat;
    background-position: 8px 18px;
    position: relative; */
    position: relative;
}

#contents .qa dt::after{
    content: 'Q';
    position: absolute;
    left: 4px;
    text-align: center;
    text-align: -webkit-center;
    top: 15px;
    width: 22px;
    height: 22px;
    border-radius: 50px;
    background-color: #1569e7;
    color: #fff;
    padding: 0 1px 1px 0;
    font-weight: bold;
}
#contents .qa dd:first-of-type{
    margin: 0px 0px 00px 0px;
    padding: 5px 5px 5px 34px;
    position: relative;
}
#contents .qa dd:last-of-type{
    margin: 0px 0px 0px 0px;
    padding: 5px 5px 5px 34px;
    position: relative;
}
#contents .qa .wrap dd:first-of-type:after{
    content: 'A';
    position: absolute;
    left: 4px;
    text-align: center;
    text-align: -webkit-center;
    top: 4px;
    width: 22px;
    height: 22px;
    border-radius: 50px;
    background-color: #FF635B;
    color: #fff;
    padding: 0 1px 1px 0;
    font-weight: bold;
}
#contents .qa.q_background_green .wrap{
    border: solid 4px green;
    padding: 21px 10px 0;
    margin: 0 0 30px 0;
}
#contents .qa.q_background_green .wrap dd:last-of-type{
    display: none;
}



#contents .latest_information .changes-in-distri-method ul li.child{
  padding: 0 0 0 75px;
}
#contents .latest_information .changes-in-distri-method ul li.child span{
  display: inline-block;
}

#contents .latest_information .changes-in-distri-method ul li.child span:nth-child(1){
  width: 285px;
}
#contents .latest_information .changes-in-distri-method ul li.head{
  font-weight: bold;
}
#contents .latest_information .disc-list li{
  display:flex;
}


#contents #nfa > div:first-of-type{
    margin: 0;
}
#contents #nfa .nfa-content{
    display: none;
}
#contents .history .read_more_btn,
#contents #nfa .read_more_btn,
#contents .qa.q_background_green .wrap div{
    text-align: right;
    cursor: pointer;
    position: relative;
}
#contents .history .read_more_btn{
    top: -45px;
    right: -114px;
    display: inline;
}
#contents .history.open .read_more_btn{
    top: initial;
    right: initial;
    display: block;
}
#contents #nfa .read_more_btn,
#contents .qa.q_background_green .wrap div{
    top: -27px;
}

#contents #nfa .grid-container {
    display: grid;
    grid-template-columns: 50px 80px 300px 1fr;
    border-top: 1px solid rgba(0, 0, 0, 0.8);
    border-left: 1px solid rgba(0, 0, 0, 0.8);
    margin-bottom: 20px;
}
#contents #nfa .grid-container div {
    box-sizing: border-box;
    border-right: 1px solid rgba(0, 0, 0, 0.8);
    border-bottom: 1px solid rgba(0, 0, 0, 0.8);
    padding: 4px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}


#contents #nfa .grid-container div:nth-child(1),
#contents #nfa .grid-container div:nth-child(2),
#contents #nfa .grid-container div:nth-child(3),
#contents #nfa .grid-container div:nth-child(4){
    background-color: #e2efda;
}
#contents #nfa .grid-container div:nth-child(5),
#contents #nfa .grid-container div:nth-child(9){
    background-color: #ddebf7;
}
#contents #nfa .grid-container div:nth-child(13),
#contents #nfa .grid-container div:nth-child(17),
#contents #nfa .grid-container div:nth-child(21),
#contents #nfa .grid-container div:nth-child(25),
#contents #nfa .grid-container div:nth-child(29),
#contents #nfa .grid-container div:nth-child(33){
    background-color: #ff8585;
}
#contents #nfa .grid-container div:nth-child(37),
#contents #nfa .grid-container div:nth-child(41),
#contents #nfa .grid-container div:nth-child(45),
#contents #nfa .grid-container div:nth-child(49){
    background-color: #ffff00;
}

#contents #nfa .grid-container div:nth-child(7),
#contents #nfa .grid-container div:nth-child(8),

#contents #nfa .grid-container div:nth-child(11),
#contents #nfa .grid-container div:nth-child(12),

#contents #nfa .grid-container div:nth-child(15),
#contents #nfa .grid-container div:nth-child(16),

#contents #nfa .grid-container div:nth-child(19),
#contents #nfa .grid-container div:nth-child(20),

#contents #nfa .grid-container div:nth-child(23),
#contents #nfa .grid-container div:nth-child(24),

#contents #nfa .grid-container div:nth-child(27),
#contents #nfa .grid-container div:nth-child(28),

#contents #nfa .grid-container div:nth-child(31),
#contents #nfa .grid-container div:nth-child(32),

#contents #nfa .grid-container div:nth-child(35),
#contents #nfa .grid-container div:nth-child(36),

#contents #nfa .grid-container div:nth-child(39),
#contents #nfa .grid-container div:nth-child(40),

#contents #nfa .grid-container div:nth-child(43),
#contents #nfa .grid-container div:nth-child(44),

#contents #nfa .grid-container div:nth-child(47),
#contents #nfa .grid-container div:nth-child(48),

#contents #nfa .grid-container div:nth-child(51),
#contents #nfa .grid-container div:nth-child(52)
{
    text-align: left;
    justify-content: left;
}


#contents #nfa div:nth-child(28) {
    border: 0 solid rgba(0, 0, 0, 0.8);
    border-right: 1px solid rgba(0, 0, 0, 0.8);
}
#contents #nfa div:nth-child(28) > span{
    position: relative;
    top: 40%;
}

#contents .qa.q_background_green dt{
    /* background-color: #e6f7e8; */
    background-color: #eee;
}
#contents .qa.q_background_green #q13 ul{
    margin: 0 0 0 15px;
}
#contents .qa.q_background_green #q12 + dd ul.disc li,
#contents .qa.q_background_green #q17 + dd ul.disc li,
#contents .qa.q_background_green #q18 + dd ul.disc li{
    list-style-type: disc;
    margin: 0 0 0 20px;
}
#contents .qa.q_background_green #q12 + dd ul.other li{
    /* margin: 0 0 0 20px; */
}
#contents .qa.q_background_green #q13 ul li > span:first-of-type{
    display: block;
}
#contents .qa.q_background_green #q18 + dd ul.other li > span:first-of-type,
#contents .qa.q_background_green #q13 ul li > span:first-of-type,
#contents .qa.q_background_green #q12 + dd ul.other li > span{
    position: absolute;
}
#contents .qa.q_background_green #q18 + dd ul.other li > span:last-of-type,
#contents .qa.q_background_green #q13 ul li > span:last-of-type{
    display: block;
}
#contents .qa.q_background_green #q13 ul li > span:last-of-type,
#contents .qa.q_background_green #q18 + dd ul.other li > span:last-of-type,
#contents .qa.q_background_green #q12 + dd ul.other li > p{
    margin: 0 0 0 20px;
}
#contents .qa.q_background_green dt + dd:first-of-type > p{
    font-weight: bold;
    font-size: 16px;
    margin: 0;
}
#contents .latest_information.q_background_green .subheading,
#contents #nfa .subheading,
#contents .explain.q_background_green .subheading{
    font-weight: bold;
    font-size: 1.8rem;
    margin: 0 0 10px 0;
}

#contents .explain.q_background_green .subheading.ajust{
    padding: 40px 0 0 0 ;
    margin: 0;
}
#contents .explain.q_background_green .subheading.flex{
    display: flex;
}

#contents .explain.q_background_green #explain-h3-2{
    display: flex;
    line-height: 1.2;
}

#contents .explain.q_background_green #explain-h3-2 > span:nth-child(1){
    width: 9%;
}
#contents .explain.q_background_green #explain-h3-2 > span:nth-child(2){
    width: 91%;
}

#contents .latest_information.q_background_green .section_group,
#contents .explain.q_background_green .section_group,
#contents .qa.q_background_green .section_group{
  font-size: 2.6rem;
  padding: 20px 0 40px 0;
  font-weight: bold;
}
#contents .latest_information.q_background_green .section_group.heading{
    font-size: 2.2rem;
    border-left: solid 4px;
    padding: 0 0 0 10px;
    box-sizing: border-box;
}
#contents .latest_information.q_background_green #latest_info_1.section_group.heading{
    font-size: 2.1rem;
}
#contents .latest_information.q_background_green .section_group.heading{}
#contents .explain.q_background_green .period{
    /* color: #777;
    font-size: 1.8rem;
    font-weight: bold; */

    color: #777;
    font-size: 2rem;
    font-weight: bold;
    position: relative;
    left: -12px;
}
#contents .explain.q_background_green dl{
    margin: 0;
}

#explain figure.center{
    margin: 0 auto;
}
#contents .explain.q_background_green .new-problems p:not(.subheading),
#explain .explain.q_background_green .reasons p:not(.subheading){
    box-sizing: border-box;
    padding: 0 0 0 20px;
}
#explain .explain.q_background_green .reasons .subheading{
    font-size: 1.6rem;
    margin: 0 0 10px 0;
}
#explain figure.w100.ajust,
#explain figure.center.ajust{
    padding: 0 0 20px 0;
}
#explain figure.w100{
    width: 100%;
}
#explain figure.w80{
    width: 80%;
}
#explain figure{
    margin: 0;
    padding: 20px 0;
    box-sizing: border-box;
    width: 90%;
    display: block;
}

#history,
#latest_information,
#latest_information-head-1,
#latest_information-head-2,
#latest_information-head-3,
#aisatsu,
#nfa,
#qa,
#about_duplicate_distribution,
#about_ppl_method,
#about_discussion_of_cpra,
#about_data_collection_and_distribution,
#explain,
#explain-h1-1,
#explain-h1-2,
#explain-h2,
#explain-h3-1,
#explain-h3-2
{
  scroll-margin-top: 240px;
}

#history figure img,
#latest_information figure img,
#explain figure img{
    width: 100%;
}

#explain figure figcaption{
    text-align: center;
    color: #999;
    font-weight: bold;
}

#explain figure figcaption.left{
    text-align: left;
}

#explain .explain.q_background_green a.green{
    color: #009933;
    font-weight: bold;
}
#explain .explain.q_background_green .subhead-ajust{
    display: flex;
}
#explain .explain.q_background_green .table-style{
    border-right: solid 1px #eee;
    border-left: solid 1px #eee;
    margin-bottom: 10px;
}
#explain .explain.q_background_green #explain-h2 + div{
    border-top: solid 1px #eee;
    border-right: solid 1px #eee;
    margin: 0 0 20px 0;
}
#explain .explain.q_background_green .table-style > div,
#explain .explain.q_background_green #explain-h2 + div > div{
    display: flex;
    border-bottom: solid 1px #eee;
}

#explain .explain.q_background_green .table-style > div div:nth-child(1) > div:nth-child(1),
#explain .explain.q_background_green .table-style > div div:nth-child(1) > div:nth-child(2),
#explain .explain.q_background_green #explain-h2 + div div:nth-child(1) > div:nth-child(2){
    text-align: center;
    padding: 10px;
}
#explain .explain.q_background_green #explain-h2 + div div:nth-child(1) > div:nth-child(1){
    text-align: center;
    padding: 13px 10px 7px 10px
}

/* #explain .explain.q_background_green .table-style > div > div, */
#explain .explain.q_background_green #explain-h2 + div div > div{
    box-sizing: border-box;
    padding: 10px;
}

#explain .explain.q_background_green .table-style > div{
    font-weight: bold;
}
#explain .explain.q_background_green .table-style > div:nth-child(1) > div,
#explain .explain.q_background_green #explain-h2 + div div > div:nth-child(1){
    background-color: #009933;
    color: #fff;
    font-weight: bold;
    letter-spacing: 2px;
    text-align: right;
    padding: 10px;
}
#explain .explain.q_background_green #explain-h2 + div div > div:nth-child(2){
    width: 85%;
    line-height: 1.8;
}

#explain .explain.q_background_green #explain-h2 + div div > div:nth-child(1){
    width: 15%;
}

#explain .explain.q_background_green .table-style > div:nth-child(1) > div{
    text-align: center;
}
#explain .explain.q_background_green .table-style > div > dl,
#explain .explain.q_background_green .table-style > div > div{
    box-sizing: border-box;
    padding: 5px 0 5px 10px;
}
#explain .explain.q_background_green .table-style > div > div:nth-child(1){
    width: 43%;
    border-right: solid 1px #eee;
}
#explain .explain.q_background_green .table-style > div > dl:nth-child(2),
#explain .explain.q_background_green .table-style > div > div:nth-child(2){
    width: 57%;
    padding-right: 10px;
}


#explain .explain.q_background_green .table-style .row2-2022 >div:nth-child(2) > span{
    display: inline-block;
    margin-bottom: 20px;
}
#explain .explain.q_background_green .table-style > div > dl dt{
    font-weight: bold;
}
#explain .explain.q_background_green .table-style > div span{
    font-weight: normal;
}
#explain .explain.q_background_green .table-style > div dl dd{
    margin: 0 0 0 25px;
    font-weight: normal;
}
#explain .explain.q_background_green .flex dd{
    display: flex;
}

#explain .explain.q_background_green .list_style.padding-ajust{
    padding: 8px 0 16px 4px;
}
#explain .explain.q_background_green .list_style > li,
#explain .explain.q_background_green .list_style > li{
    display: flex;
}
#explain .explain.q_background_green .list_style > li > div:nth-child(1){
    width: 3%;
}
#explain .explain.q_background_green .list_style > li > div:nth-child(2){
    width: 96%;
}

#explain .explain.q_background_green .padding-top-bottom-10{
    padding: 10px 0;
    display: inline-block;
}

#contents .qa.q_background_green .section_group{
    text-align: center;
}

#contents .qa.number{
    counter-reset: number;
}
#contents .qa.number dt{
    /* padding-left: 48px; */
    padding-left: 55px;
    background-position: 8px 20px;
    background-size: 12px;
    counter-increment: number;
    position: relative;
}
#contents .qa.number dt::before{
    content: counter(number);
    font-size: 1.8rem;
    position: absolute;
    top: 16px;
    left: 30px;
    color: #1569e7;
}
#contents .qa.number dd{
    padding-left: 55px;
    background-size: 14px;
}

#contents .form_close_btn{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    text-align: right;
}
#contents .form_close_btn span{
    text-decoration: underline;
    cursor: pointer;
}

#contents .sitemap_box{
    margin: 0px 0px 20px 11px;
    padding: 0px 0px 0px 0px;
    width: 238px;
    display: inline-block;
    vertical-align: top;
}
#contents .sitemap_box:first-child{
    margin-left: 0px;
}

#contents .information_box{
    margin: 0px 0px 20px 0px;
    padding: 0px 0px 0px 0px;
    background-color: #efefef;
    overflow: hidden;
}
#contents .information_box .left{
    margin: 0px 0px 0px 0px;
    padding: 10px 0px 10px 15px;
    display: inline-block;
    width: 101px;
}
#contents .information_box .left a{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    color: #00a838;
    text-decoration: none;
    font-weight: 700;
}
#contents .information_box .left a:hover{
    text-decoration: underline;
}
#contents .information_box .right{
    margin: 3px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    display: inline-block;
    width: 590px;
    height: 175px;
    overflow-x: hidden;
    overflow-y: scroll;
    vertical-align: top;
}
#contents .information_box .right dl{
    margin: 0px 0px 0px 0px;
    padding: 8px 0px 8px 0px;
    border-bottom: dotted 1px #bbbbbb;
}
#contents .information_box .right dt{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    display: inline-block;
    width: 115px;
    color: #00A838;
    text-align: left;
    vertical-align: top;
}
#contents .information_box .right dd{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    display: inline-block;
    width: 435px;
    text-align: left;
}
#contents .information_box .footer{
    margin: 0px 0px 0px 0px;
    padding: 10px 10px 10px 0px;
    text-align: right;
}

#contents .information_list{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
#contents .information_list dl{
    margin: 0px 0px 15px 0px;
    padding: 0px 0px 0px 0px;
}
#contents .information_list dt{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    width: 126px;
    display: inline-block;
    color: #00a838;
    vertical-align: top;
}
#contents .information_list dd{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    width: 615px;
    display: inline-block;
}

#contents .wp-pagenavi a{
    display: block;
    float: left;
    margin-right: 15px;
    padding: 5px 10px;
    background: #f5f5f5;
}
#contents .wp-pagenavi .current{
    display: block;
    float: left;
    margin-right: 15px;
    padding: 5px 10px;
    font-weight: bold;
    color: #333;
}

#contents button.gsc-search-button{
    width: auto;
    background: none;
    background-color: #009900;
}

#footer{
    margin: 0px 0px 0px 0px;
    padding: 20px 0px 20px 0px;
    font-size: 1.2rem;
    border-top: dotted 1px #999999;
}
#footer .left{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    display: inline-block;
    width: 39%;
}
#footer .right{
    margin: 0px -5px 0px 0px;
    padding: 0px 0px 0px 0px;
    display: inline-block;
    text-align: right;
    vertical-align: top;
    width: 60%;
}

#footer .nav{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
#footer .nav ul{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
#footer .nav li{
    margin: 0px 0px 0px 10px;
    padding: 0px 0px 0px 0px;
    display: inline-block;
}
#footer .nav li a{
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    display: block;
}
#footer small{
    margin: 10px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    font-size: 0.9rem;
    display: block;
}
.nre_regist_mail_member_btn{
    border: solid 1px #eee;
    height: 40px;
    border-radius: 7px;
    box-shadow: 1px 1px 3px #ddd;
    text-align: center;
    line-height: 269%;
    font-size: 1.55rem;
    font-weight: bold;
    text-shadow: 1px 1px 1px #aaa;
    text-decoration: none;
    color: #ffffff !important;
    background: #12b4eb;
    background-image: url(../img/mail_icon.png);
    background-size: 51px 41px;
    background-position: -8px;
    background-repeat: no-repeat;
}