@charset "UTF-8";


/*=============================================== 
  custom
===============================================*/
  .HalfBoxL30{
    width: 80%;
    float: none;
    padding-right: 0;
    margin: 20px auto;
  }

  .HalfBoxL40{
    width: 80%;
    float: none;
    padding-right: 0;
    margin: 20px auto;
  }

  .HalfBoxL50{
    width: 80%;
    float: none;
    padding-right: 0;
    margin: 20px auto;
  }

  .HalfBoxR50{
    width: 100%;
    float: none;
    margin: auto;
  }

  .HalfBoxR60{
    width: 100%;
    float: none;
    margin: auto;
  }

  .HalfBoxR70{
    width: 100%;
    float: none;
    margin: auto;
  }

.underline{
  text-decoration: underline;
}

/*=============================================== 
 タイトル
===============================================*/
h2{
  text-align: center;
  color: #004ea1;
  font-size: 2.2em;
  font-weight: bold;
  display: block;
  margin-bottom: 20px;
}

.TitleLeft{
  text-align: left;
  color: #004ea1;
  font-size: 1.7em;
  font-weight: bold;
  display: block;
  margin-bottom: 20px;
}

/*=============================================== 
 ボタン系
===============================================*/
.Button_y{
    overflow: hidden;
    margin: 0 auto;
    border-bottom: none!important;
    width: 80%;
    max-width: 360px;
    border-radius: 40px;
}
.Button_y a{
    padding: 12px 10px 12px 25px;
    background: #f6ab00;
    display: block;
    position: relative;
    z-index: 100;
    text-align: center;
    color: #fff!important;
    text-decoration: none;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
    font-size: 1.4em;
}
.IconList1_y a::after{
  font-family: "Font Awesome 5 Free";
  content: '\f138';
  font-weight: 900;
  color: #fff;
  margin-right: .3em;
    position: absolute;
    top: auto;
    right: 15px;
    font-size: 1em;
}


/*=============================================== 
 共通
===============================================*/
.Blue{
  color: #004ea1;
}
.BgGray{
  width: 100%;
  background-color: #efefef;
}
section.BlueLine{
  border-top: 8px solid #004ea1;
}
.wrapper_inner{
  width: 1000px;
  margin: auto;
  padding: 40px 0 40px;
}

.BgMark{
  background-image : url(bg_mark.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 330px;
}
@media screen and (max-width: 640px) {
.BgMark{
    background-size: 500px;
}
}

/*=============================================== 
 フッターバナー
===============================================*/
dl.FootBnr{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 40px;
}
dl.FootBnr dt{
  width: 22%;
}
dl.FootBnr dt img{
  width: 100%;
  height: auto;
}
.GroupName{
  text-align: center;
  color: #fff;
  font-weight: bold;
}
.GroupName a{
  color: #fff;
  text-decoration: underline;
}
#footerBg{
    background: #004ea1;
}
#footerBg .footer{
    margin: 0 auto;
    width: 100%;
    max-width: 1000px!important;
    padding: 20px 0 20px 0;
    display: block;
}
.copyBox{
  background: #004ea1;
}
.copyBox #copy{
  width: 1000px;
  margin: auto;
  text-align: right;
  font-size: .8em;
  color: #fff;
}
.copyBox #copy a{
  color: #fff;
}
@media screen and (max-width: 640px) {
  .copyBox #copy{
    width: 100%;
  }
}




.FootAbout{
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  margin-bottom: 40px;
  color: #fff;
  padding-left: 7px;
}
.FootAbout dt{
  width: 250px;
  margin-right: 30px;
}
.FootAbout dd{
  line-height: 1.5;
  padding-top: 10px;
}
.FootNav {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
}
.FootNav .FootNavBlodk{
  width: 330px;
}

@media screen and (max-width: 640px) {
.swiper-container{
    width: 640px!important;
}
}



/*=============================================== 
 トップページ
===============================================*/
#Topics{
  background-color: #ebf5fe;
  width: 625px;
  padding: 30px;
}
#Topics .Title{
  font-size: 1.5em;
  color: #595758;
  font-weight: bold;
  margin-bottom: 30px;
}
#Topics .list{
  width: 100%;
  height: 240px;
  overflow: auto;
}
#Topics .list::-webkit-scrollbar {
    width: 10px;
}
#Topics .list::-webkit-scrollbar-thumb {
    background: #2CC2E4;
}
#Topics .list::-webkit-scrollbar-track {
    background: #DDD;
}
#Topics .list dl{
  width: 100%;
  margin-bottom: 5px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
#Topics .list dl dt{
  min-width: 130px;
  text-align: left;
  margin-right: 2%;
  height: 2em;
  font-size: .95em;
}
#Topics .list dl dt::before{
  content: "・"
;
}
#Topics .list dl dd{
  width: auto;
  max-width: 370px;
  color: #004ea1;
  font-weight: bold;
  font-size: 1.1em;
}
@media screen and (max-width: 640px) {
  #Topics .list dl dd{
    width: 100%;
    max-width: 100%;
    margin-left: .74em;
  }
}

#TopPage .topics{
  width: 100%;
  padding:20px 30px;
  border:1px solid #ea5504;
  color: #ea5504;
  text-align: justify;
}

#TopPage .SNS_Box{
  width: 340px;
  border:1px solid #ddd;
}
@media screen and (max-width: 640px) {
  #TopPage .SNS_Box{
    width: 100%;
    margin-top: 30px;
  }
  #TopPage .SNS_Box iframe{
    width: 100%!important;
  }
}

#TopPage .newsInner{
    padding: 0 1em;
}
#TopPage .newsInner div{
    position: relative;
}
#TopPage .newsInner a p{
  font-weight: bold;
  color: #fff;
  position: absolute;
  bottom: 0;
  width: 100%;
  background:rgba(0,0,0,.7);
  padding: 2px 8px;
}
#TopPage .newsInner figure{
    margin-bottom: .5em;
}
#TopPage .newsInner figure img{
    width: 100%;
}
#TopPage .newsInner figure.btn{
  position: absolute;
  bottom: 0;
  padding-bottom: 1em;
  padding-right: 1em;
}
#TopPage .slick-prev{
    left: -30px!important;
}
#TopPage .slick-next{
    right: 2px!important;
}

#TopPage .Youtube {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

#TopPage .Youtube dl{
  width: 49%;
  margin-bottom: 16px;
}

@media screen and (max-width: 640px) {
  #TopPage .Youtube dl{
    width: 70%;
    margin-left: auto;
    margin-right: auto;
  }
}
#TopPage .Youtube dl dt{
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
#TopPage .Youtube dl dt iframe{
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
#TopPage .TopAns{
  margin-bottom: 60px;
}
#TopPage .TopAns p{
  font-size: 1.6em;
  line-height: 2.0;
  font-weight: bold!important;
}
@media screen and (max-width: 640px) {
  #TopPage .TopAns p{
    font-size: 1.4em;
  }
}
#TopPage #Life .TopLife{
  margin-bottom: 0px;
}
#TopPage #Life .TopLife p{
  font-size: 1.6em;
  line-height: 2.0;
  font-weight: bold!important;
}
@media screen and (max-width: 640px) {
  #TopPage #Life .TopLife p{
    font-size: 1.4em;
  }
}
#TopPage #Life .LifeTitle{
  font-size: 1.6em;
  font-weight: bold;
}
#TopPage #Life .LifeTitle a.allow{
  padding-left: .6em;
}
#TopPage #Life .LifeTitle a.allow::after{
  top: .4em;
  left: 0em;
}
#TopPage #Introduction .TopLife p{
  font-size: 1.6em;
  line-height: 2.0;
  margin-bottom: 20px!important;
  font-weight: bold!important;
}
@media screen and (max-width: 640px) {
  #TopPage #Introduction .TopLife p{
    font-size: 1.4em;
  }
}
#TopPage .slick-prev, .slick-next{
    top: 45%!important;
}


/*=============================================== 
 下層ページ
===============================================*/

#LowPage p{
  margin-bottom: 10px;
  font-size: 1.1em;
}
#LowPage section:last-child{
  margin-bottom: 80px;
}
#LowPage .wrapper_inner{
    padding: 40px 0 0px;
}
#LowPage .Cont{
  margin-bottom: 40px;
}
.primary{
  background-color: #efefef;
  min-height: 150px;
}
.primaryMark{
    background-image : url(bg_mark.svg);
    background-repeat: no-repeat;
    background-position: 0 center;
    background-size: 240px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    min-height: 150px;
    padding: 0;
    width: 1000px;
}
/*#LowPage */.primary h2{
    text-align: left;
    color: #004ea1;
    font-size: 2.2em;
    font-weight: bold;
    display: block;
    margin-bottom: 20px;
    margin-left: 2em;
    padding: 20px 0 0;
    line-height: 1.4;
}
@media screen and (max-width: 640px) {
  /*#LowPage */.primary h2{
    font-size: 1.8em;
    margin-left: .5em;
  }
}
#LowPage h3{
  background-color: #004ea1;
  color: #fff;
  padding: 10px 14px;
  font-size: 1.6em;
  font-weight: bold;
  margin-bottom: 1.4em;
}
#LowPage h3.Gray{
  background-color: #717071;
  color: #fff;
  padding: 10px 14px;
  font-size: 1.6em;
  font-weight: bold;
  margin-bottom: 1.4em;
}
@media screen and (max-width: 640px) {
  #LowPage .primary h2{
    font-size: 1.8em;
    margin-left: .5em;
  }
  #LowPage h3{
    font-size: 1.4em;
  }
}
#LowPage h3.NonDecoration{
  font-size: 1.6em;
  font-weight: bold;
  color: #000;
  background: none;
  padding: 0;
}
#LowPage h4{
  background-color: #e4f1fc;
  color: #004ea1;
  padding: 10px 14px;
  font-size: 1.6em;
  font-weight: bold;
  margin-bottom: 1.2em;
}

.col_2 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
 }
.col_2 div{
    width: 49%;
    margin-bottom: 16px;
}
.col_2 div img{
  width: 100%;
}
@media screen and (max-width: 640px) {
.SP_W100{
  width: 100%!important;
}
}


#LowPage .head_teacher{
  background-color: #eeefef;
  position: relative;
  margin-bottom: 18px;
}
#LowPage .head_teacher p.Request{
  position: absolute;
  bottom: 0px;
  right: 10px;
  margin-bottom: 0;
  font-size: .96em;
}
@media screen and (max-width: 640px) {
#LowPage .head_teacher p.Request{
  bottom: -36px;
  right: 0px;
}
}
#LowPage .HeadTeacherName{
  font-weight: bold;
  font-size: 1.2em;
}
#LowPage .AisatuTaxt{
  margin-bottom: 60px;
}
#LowPage .AisatuTaxt p{
  text-indent: 1em;
  margin-bottom: 0;
  font-size: 1.2em;
}
#LowPage .SelfHistory{
  width: 100%;
}
#LowPage .SelfHistory dl{
  width: 100%;
  display: flex;
  justify-content: flex-start;
}
#LowPage .SelfHistory dl dt{
  width: 7em;
  text-align: right;
  padding-right: 1.4em;
  padding-top: .2em;
  padding-bottom: .2em;
}
#LowPage .SelfHistory dl dt.Year{
  width: 2.5em;
  text-align: left;
  padding-right: 0em;
  padding-top: .2em;
  padding-bottom: .2em;
}
#LowPage .SelfHistory dl dt.All{
  width: 9.5em;
  text-align: right;
  padding-right: 1.4em;
  padding-top: .2em;
  padding-bottom: .2em;
}
#LowPage .SelfHistory dl dd{
  border-left: 1px solid #333;
  padding-left: 1em;
  padding-top: .2em;
  padding-bottom: .2em;
}
@media screen and (max-width: 640px) {
#LowPage .SelfHistory dl dd{
  min-width: 427px;
  max-width: 427px;
}
}


#LowPage .PrimaryNav{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 40px;
}
#LowPage .PrimaryNav li{
  text-align: center;
  padding: 10px;
  font-size: 1.2em;
  border:1px solid #000;
  width: 31%;
  font-weight: bold;
}
#LowPage .PrimaryNav li a{
  display: block;
  color: #000;
}

#LowPage .photo_col_2_L {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
 }
#LowPage .photo_col_2_L div{
    width: 60%;
    margin-bottom: 16px;
}
#LowPage .photo_col_2_L div p{
  text-indent: 1em;
  margin-bottom: 0;
  font-size: 1.2em;
  text-align: justify;
}
#LowPage .photo_col_2_L figure{
  width: 38%;
}

@media screen and (max-width: 640px) {
  #LowPage .photo_col_2_L div{
    width: 100%;
  }
  #LowPage .photo_col_2_L figure{
    width: 70%;
    margin-left: auto;
    margin-right: auto;
  }
}


#LowPage .photo_col_2_S {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
 }
#LowPage .photo_col_2_S div{
    width: 66%;
    margin-bottom: 16px;
}
#LowPage .photo_col_2_S div p{
  text-indent: 1em;
  margin-bottom: 0;
  font-size: 1.2em;
  text-align: justify;
}
#LowPage .photo_col_2_S figure{
  width: 32%;
}

@media screen and (max-width: 640px) {
  #LowPage .photo_col_2_S div{
    width: 100%;
  }
  #LowPage .photo_col_2_S figure{
    width: 70%;
    margin-left: auto;
    margin-right: auto;
  }
}

.curriculum{
  margin-bottom: 20px;
}
.curriculum .Syear{
  font-size: 1.5em;
  font-weight: bold;
  margin-bottom: 10px;
}
.curriculum .Syear span{
  font-size: 1.6rem;
  font-weight: normal;
}
.curriculum .curriculum_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
}
.curriculum .curriculum_list li{
  width: 12%;
  margin: 0 .25%;
  background-color: #eeefef;
  text-align: center;
  height: 50px;
  margin-bottom: 10px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  font-size: .8em;
  line-height: 1.5;
}
@media screen and (max-width: 640px) {
  .curriculum .curriculum_list li{
    width: 24%;
  }
}

.curriculum .curriculum_list li.Plas{
  background: none;
  font-size: .9em;
}
.curriculum .curriculum_list li.Plas::before{
  content: "";
  display: inline-block;
  width: 20px;/*画像の幅*/
  height: 20px;/*画像の高さ*/
  background-image : url(icon_plus3.svg);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  margin-right: 4px;
}

.curriculum .curriculum_list li.NoColor{
  background: none;
  border:1px solid #333;
}

.curriculum .LineLR{
  position: relative;
  text-align: center;
  margin-bottom: 0px;
}
.curriculum .LineLR span{
  position: relative;
  z-index: 2;
  display: inline-block;
  margin: 0 2.5em;
  padding: 0 .5em;
  background-color: #fff;
  text-align: left;
  width: 2.4em;
  text-align: center;
}
.curriculum .LineLR::before{
  position: absolute;
  top: 50%;
  z-index: 1;
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background-color: #333;
}

.curriculum .LineLR_None{
  position: relative;
  text-align: center;
  margin-bottom: 0px;
}
.curriculum .LineLR_None span{
  position: relative;
  z-index: 2;
  display: inline-block;
  margin: 0 2.5em;
  padding: 0 .5em;
  background-color: #fff;
  text-align: left;
  width: 2.4em;
  text-align: center;
}

.curriculum .curriculum_list_3col {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
}
.curriculum .curriculum_list_3col li{
  width: 32%;
  margin: 0 .5%;
  background: none;
  border:1px solid #333;
  text-align: center;
  height: 50px;
  margin-bottom: 10px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  line-height: 1.5;
}
.curriculum .Course span{
  font-size: 1.3rem;
  font-weight: normal;
  margin-left: .5em;
}

#LowPage .Bg_curriculum_gray{
  background-color: #eeefef;
  padding: 8px;
}

#LowPage .Caption{
  font-size: .92em;
}

#LowPage .CourseContent{
  padding: 10px;
  font-size: 1em;
  border:1px solid #251e1c;
}



#LowPage .SliderBlue{
  background-color: #daecfa;
  padding: 40px;
}
#LowPage .SliderGreen{
  background-color: #dbead7;
  padding: 40px;
}
#LowPage .SliderYellow{
  background-color: #f7f5d5;
  padding: 40px;
}
#LowPage .newsInner{
    padding: 0 1em;
}
#LowPage .newsInner div{
    position: relative;
}
#LowPage .newsInner a p{
  font-weight: bold;
  color: #fff;
  position: absolute;
  bottom: 0;
  width: 100%;
  background:rgba(0,0,0,.7);
  padding: 2px 8px;
  margin-bottom: 0;
}
#LowPage .newsInner figure{
    margin-bottom: .5em;
}
#LowPage .newsInner figure img{
    width: 100%;
}
#LowPage .newsInner figure.btn{
  position: absolute;
  bottom: 0;
  padding-bottom: 1em;
  padding-right: 1em;
}

@media screen and (min-width: 641px){
#LowPage .slick-prev{
    left: -30px!important;
}
}
@media screen and (max-width: 640px){
.slick-prev{
    left: 5px;
}
}

@media screen and (min-width: 641px){
#LowPage .slick-next{
    right: 2px!important;
}
}
@media screen and (max-width: 640px){
.slick-next{
    right: 40px!important;
}
}


/*年間行事*/
.col3_1 {
  width : calc(96% / 3) ;
}
.col3_2 {
  width : calc((99% / 3)*2) ;
}
.Schedule .doubLe {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.Schedule .doubLe dd{
  width: 48.5%;
}
.Schedule dd figure{
  position: relative;
  margin-bottom: 10px;
}
.Schedule dd figure p{
    font-weight: bold;
    color: #fff;
    position: absolute;
    bottom: 0;
    width: 100%;
    background: rgba(0,0,0,.7);
    padding: 2px 8px;
    margin-bottom: 0!important;
}
.Schedule ul{
  margin-bottom: 10px;
}
.Schedule ul li{
  list-style: inside;
  list-style-position: outside;
  margin-left:1.3em;
  font-size: .96em; 
}
@media screen and (max-width: 640px) {
  .col3_1,.col3_2{
    width : 100% ;
  }
  .Schedule .doubLe dd{
    width: 100%;
  }
  .Schedule ul li{
    font-size: 1em;
  }
}


/*アクセス*/
.bk_border_box{
  border:1px solid #000;
  padding: 20px 20px;
}
.Access{
  font-size: 1.1em;
}
.Access dt{
  font-size: 1.2em;
  font-weight: bold;
}
.Access ul.AccessList li{
  text-indent: -1em;
  margin-left: 1em;
}
.Access ul.AccessList li::before{
    content:  "";
    width:  .7em;
    height:  .7em;
    display:  inline-block;
    border-radius:  50%; 
    border:1px solid #000;
    position:  relative;
    top: .1em;
    margin-right: 5px;
}

/*Q&A*/
.accordion{
    width: 100%;
}
.accordion .button{
    padding: 10px;
    width: 100%;
    background-color: #fff;
    cursor: pointer;
    position: relative;
    border:1px solid #000;
    text-align: left;
    font-size: 1.2em;
    font-weight: bold;
    padding-left: 3em;
}
.accordion .button::before{
    content: "";
    display: inline-block;
    width: 1.4em;
    height: 1.4em;
    background-image : url(icon_plus.svg);
    background-repeat: no-repeat;
    background-size: contain;
    vertical-align: middle;
    margin-right: 4px;
    position: absolute;
    top: 11px;
    left: 13px;
}
.accordion .button.active::before{
    content: "";
    display: inline-block;
    width: 1.4em;
    height: 1.4em;
    background-image : url(icon_minus.svg);
    background-repeat: no-repeat;
    background-size: contain;
    vertical-align: middle;
    margin-right: 4px;
    position: absolute;
    top: 11px;
    left: 13px;
}
.accordion .nest{
  padding: 20px 30px;
  background-color: #e4f1fc;
  font-size: 1.05em;
}

#LowPage .PrimaryNav5{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 40px;
}
#LowPage .PrimaryNav5 li{
  text-align: center;
  padding: 10px;
  font-size: 1.2em;
  border:1px solid #000;
  width: 19%;
  font-weight: bold;
}
#LowPage .PrimaryNav5 li a{
  display: block;
  color: #000;
}


/*受験・入学ページ*/

@media screen and (max-width: 640px) {
  .scroll-table{
    overflow: auto;
    white-space: nowrap;
    margin-top: 10px;
  }
}
.scroll-table::-webkit-scrollbar {
  height: 10px;
}
.scroll-table::-webkit-scrollbar-track {
  background: #DDD;
}
.scroll-table::-webkit-scrollbar-thumb {
  background: #2CC2E4;
}
img.IconSwipe{
  width: 50px !important;
  height: auto;
  height: auto !important;
}

#LowPage table.exam{
  border-collapse: collapse;
}
#LowPage table.exam caption{
  text-align: left;
  padding-bottom: 8px;
}
#LowPage table.exam th,
#LowPage table.exam td{
  border: 1px solid #251E1C;
  width: 200px;
  padding: 2px;
}
#LowPage table.exam thead th{
  background: #174F9E;
  color: #fff;
  text-align: center;
}
#LowPage table.exam tbody td{
  text-align: center;
}
/* 奇数行のスタイル */
#LowPage table.exam tbody tr:nth-child(odd){
  background-color:#fff;
}
 
/* 偶数行のスタイル */
#LowPage table.exam tbody tr:nth-child(even){
  background-color:#EDF6FD;
}
#LowPage table.exam tbody td.red{
  color: #C50018;
}

.exam_att{
  margin-top: 100px;
}

#LowPage .exam_att{
  margin-top: 40px;
  border-top: 1px solid #251E1C;
  padding-top: 30px;
}

#LowPage .exam_info{
  background: #EEEFEF;
  padding: 20px;
  margin-bottom: 26px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#LowPage .exam_info dl{
  background: #fff;
  margin: 10px 1.15%;
  padding: 15px;
  width: 31%;
  position: relative;
}
#LowPage .exam_info dl dd{
  position: absolute;
  top: 15px;
  right: 15px;
  width: 16%;
}
#LowPage .exam_info dl dd img{
  width: 100%;
  height: auto;
}

#LowPage .exam_past{
  background: #EEEFEF;
  padding: 20px;
}
#LowPage .exam_past .white_box{
  background: #fff;
  padding: 15px;
}

/*採用情報ページ*/
#LowPage .saiyou_box{
  padding: 30px;
  border:1px solid #000;
  text-align: center;
}

/*サイトマップページ*/
#LowPage .sitemap_box{
  margin-bottom: 20px;
}
#LowPage .sitemap_box dt{
  background: #E4F1FC;
  color: #174F9E;
  font-size: 1.2em;
  padding: 4px;
}
#LowPage .sitemap_box dd{
  color: #174F9E;
  font-size: 1.1em;
}

/*利用規約ページ*/
#LowPage .terms{
  padding-left: 2.2em;
  margin-bottom: 20px;
}
#LowPage .terms .terms_list{
  font-size: 11px;
  line-height: 1.6;
}
#LowPage .terms .terms_list dl dt{
  text-decoration: underline;
  font-weight: bold;
}
#LowPage .terms .terms_list dl dd{
  padding-left: 3em;
}
#LowPage .terms .terms_list h3{
  color: #004da0;
  font-weight: normal;
  font-size: 12px;
  margin-bottom: auto;
  font-weight: bold;
}
#LowPage .terms .terms_list ol{
  margin-left: 1em;
}


#LowPage .terms .terms_list ol >li >ol{
  margin-left: 1.5em;
}
#LowPage .terms .terms_list ol li.cnt,
#LowPage .terms .terms_list ol >li >ol >li{
  list-style-type: none;
  counter-increment: cnt;
  margin-left: 1.5em;
}
#LowPage .terms .terms_list ol li.cnt::before,
#LowPage .terms .terms_list ol >li >ol >li::before{
  content: "(" counter(cnt) ") ";
  margin-left: -1.6em;
}
#LowPage .terms .terms_list ol >li >ol >li >ul,
#LowPage .terms .terms_list ul.round{
  counter-reset: my-counter;
  list-style: none;
  padding: 0;
  margin-left: 1.5em;
}
#LowPage .terms .terms_list ul.round,
#LowPage .terms .terms_list ul.second{
  margin-left: 4.5em;
}
#LowPage .terms .terms_list ul.round.cnt_next,
#LowPage .terms .terms_list ul.second.cnt_next{
  margin-left: 3em;
}

#LowPage .terms .terms_list ul.second{
  counter-reset: my-counter 1;
  list-style: none;
  padding: 0;
  margin-left: 1.5em;
}


#LowPage .terms .terms_list ol >li >ol >li >ul >li,
#LowPage .terms .terms_list ul.round li,
#LowPage .terms .terms_list ul.second li{
  position: relative;
}
#LowPage .terms .terms_list ol >li >ol >li >ul >li::before,
#LowPage .terms .terms_list ul.round li::before,
#LowPage .terms .terms_list ul.second li::before{
  content: counter(my-counter);
  counter-increment: my-counter;
  border:1px solid;
  color: #222;
  display: block;
  float: left;
  text-align: center;
  height: 1.4em;
  width: 1.4em;
  border-radius: 50%;
  position: absolute;
  top: .35em;
  line-height: 1.2;
  font-size: .8em;
  margin-left: -1.8em;
}

#LowPage .terms ul.adc{
  list-style: none;
  padding-left: 0;
}
#LowPage .terms .terms_list ul.adc li{
  counter-increment: lower-alpha;
  position: relative;
  padding-left: 1.3rem;
  margin-left: .8em;
}
#LowPage .terms .terms_list ul.adc li::before{
  content: ""!important;
  margin-left: -2em;
  position: absolute;
  left: 0;
  top: 0;
  border:none!important;
}

#LowPage .terms .terms_list ul.adc li::before{
  content: "" counter(lower-alpha, lower-alpha)!important;
  position: absolute!important;
  top: 0!important;
  left: 0!important;
  border:none!important;
  line-height: 1.6!important;
  font-size: 1em!important; 
  margin-left: 0!important;
}
#LowPage .terms .terms_list ul.adc li::after{
    content: "）";
    margin-left: 1.1em;
    position: absolute;
    left: 0;
    top: 0;
}


#LowPage .terms ul.kana{
  list-style: none;
  padding-left: 0;
}
#LowPage .terms ul.kana > li{
  counter-increment: katakana;
  position: relative;
  padding-left: 3rem;
  margin-left: 2.4em;
}
#LowPage .terms ul.kana > li::before{
  content: counter(katakana, katakana)!important;
  position: absolute!important;
  top: 0!important;
  left: 0!important;
  border:none!important;
  font-size: 1em!important; 
  margin-left: 0!important;
}
@media screen and (max-width: 640px) {
#LowPage .terms{
  padding-left: 1em;
}
#LowPage .terms ul.kana > li{
  margin-left: .1em;
  margin-bottom: 1em;
}
}


