@charset "utf-8";

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    サイト共通 細かい要素の装飾定義               */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */


/* レスポンシブ 表示ON/OFF */

            /* + + + + + レスポンシブ + + + + +  */
            html.rsbp-under-bp2 .hide-narrow{
              display: none;
            }
            html.rsbp-over-bp2  .hide-wide{
              display: none;
            }


/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   images                                         */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
img{
  max-width: 100%;
}
    /* googlemap 内の画像は適用外 */
    #GoogleMap img{
      max-width: none;
    }





/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   Text and Heading                               */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */

/* 画像付きタイトル
--------------------------------------------------- */
.TitleImage{
  position: relative;
}
    .TitleImage .Label{
      font-size: 150%;
      color: #fff;
      position: absolute;
      left: 25px;
      top: 50%;
      margin-top: -0.5em;
      line-height: 1;
    }
    .TitleImage .Image img{
      width: 100%;
    }
            /* + + + + + レスポンシブ + + + + +  */

                /* bp2より狭いディスプレイ用 */
                html.rsbp-under-bp2 .TitleImage .Label{
                  font-size: 100%;
                  left: 10px;
                }

/* 見出し common
--------------------------------------------------- */
.Heading{
  line-height: 1.75;
  margin: 1.5em 0;
  position: relative;
  font-weight: bold;
}
.Heading .Icon{
  display: inline-block;
  transform: scale(1.75);
  margin-right: 0.5em;
}
.Heading em{
  background: url(../img/common/decoration/stroke_type01.png) repeat-x 50% 90%;
}
            /* + + + + + レスポンシブ + + + + +  */

                /* bp2より狭いディスプレイ用 */
                html.rsbp-under-bp2 .Heading{
                /*  margin: 1.5em 0 0.75em;*/
                }

/* 見出しバリエーション
--------------------------------------------------- */

/* Type1 :::::::::::::::::::::::::  */
.Heading.Type1{
  position: relative;
  padding: 0.5em 50px;
  margin-left:  calc( -50px - 20px );
  background: #a6d3c8;
  background: #86c1b2;
  color: white;
  letter-spacing: 0.1em;
  display: inline-block;
  min-width: 20em;
}
.Heading.Type1::before{
  position: absolute;
  content: '';
  top: 100%;
  left: 0;
  border: none;
  border-bottom: solid 15px transparent;
  border-right: solid 20px rgb(149, 158, 155);
}
.Heading.Type1.Static{
  margin-left: 0!important;
}
.Heading.Type1.Static::before{
  display: none;
}
            /* + + + + + レスポンシブ + + + + +  */

                /* bp2より狭いディスプレイ用 */
                html.rsbp-under-bp2 .Heading.Type1{
                  padding: 0.5em 30px;
                  min-width: 50vw;
                }
                html.rsbp-under-bp2 .Heading.Type1::before{
                  border-bottom-width: 5px;
                  border-right-width:  5px;
                }


/* Type2 :::::::::::::::::::::::::  */
.Heading.Type2{
  position: relative;
  padding: 0.5em 15px;
  background: #eee;
  letter-spacing: 0.1em;
  border-bottom: 2px solid #ddd;
}
.Heading.Type1 + .Heading.Type2{
  margin-top: 0;
}
.Heading.Type2::before{
  content: "";
  height: 60%;
  width: 0.5em;
  border-radius: 0.125em;
  display: block;
  position: absolute;
  left: -0.25em;
  top:   20%;
  background: #336699;
}
            /* + + + + + レスポンシブ + + + + +  */

                /* bp2より狭いディスプレイ用 */
                html.rsbp-under-bp2 .Heading.Type2{
                  margin-left:  0px;
                  margin-right: 0px;
                }


/* Type3 :::::::::::::::::::::::::  */
.Heading.Type3{
  background-color: #fff;
  background-image: linear-gradient(  45deg, #f0f0f0 25%, #f0f0f0 25%, transparent 25%, transparent 75%, #f0f0f0 75%, #f0f0f0 75%),
                    linear-gradient(-135deg, #f0f0f0 25%, #f0f0f0 25%, transparent 25%, transparent 75%, #f0f0f0 75%, #f0f0f0 75%);
  background-position: 0 0, 2px 2px;
  background-size: 4px 4px;
  background-repeat: repeat;
  border-top:    1px solid #ddd;
  border-bottom: 1px solid #ddd;
  padding: 0.5em 15px;
  letter-spacing: 0.1em;
}
    .Heading.Type3::before{
    }
            /* + + + + + レスポンシブ + + + + +  */

                /* bp2より狭いディスプレイ用 */
                html.rsbp-under-bp2 .Heading.Type3{
                  margin-left:  0px;
                  margin-right: 0px;
                }



/* Type4 :::::::::::::::::::::::::  */
.Heading.Type4{
  position: relative;
  display: inline-block;
  padding: 0 45px;
  padding-left: 0;
  margin-bottom: 0.5em;
  color: #000;
}
.Heading.Type4::after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 35px;
  height: 1px;
  background-color: #000;
}
/*
.Heading.Type4::before {
  left:  0;
}
*/
.Heading.Type4::after {
  right: 0;
}
            /* + + + + + レスポンシブ + + + + +  */

                /* bp2より狭いディスプレイ用 */
                html.rsbp-under-bp2 .Heading.Type4{
                }


/* Type5 :::::::::::::::::::::::::  */
.Heading.Type5 {
  position: relative;
  padding: 0.125em 2em;
  display: inline-block;
  line-height: 1.5;
  top: 0;
  letter-spacing: 0.25em;
}

.Heading.Type5::before,
.Heading.Type5::after { 
  position: absolute;
  top: 0;
  content:'';
  width: 8px;
  height: 100%;
  display: inline-block;
}

.Heading.Type5::before {
  border-left:   solid 1px black;
  border-top:    solid 1px black;
  border-bottom: solid 1px black;
  left: 0;
}

.Heading.Type5::after {
  content: '';
  border-top:    solid 1px black;
  border-right:  solid 1px black;
  border-bottom: solid 1px black;
  right: 0;
}
            /* + + + + + レスポンシブ + + + + +  */

                /* bp2より狭いディスプレイ用 */
                html.rsbp-under-bp2 .Heading.Type5{
                }



/* Type6 :::::::::::::::::::::::::  */
.Heading.Type6{
  position: relative;
  margin: 1.0em 0 0.25em;
  margin: 1.0em 0 0.5em;
}
            /* + + + + + レスポンシブ + + + + +  */

                /* bp2より狭いディスプレイ用 */
                html.rsbp-under-bp2 .Heading.Type6{
                }



/* Type7 （hXタグ内部に<span>タグ必要）:::::::::::::::::::::::::  */
.Heading.Type7{
  margin: 0.5em 0 0.125em;
  position: relative;
  line-height: 1.125;
  padding: 0.25em 1.5em;
  color: #231815;
  background: #eccb00;
  border-radius: 1em;
  font-size: 87.5%;
  display: inline-block;
}
.Heading.Type7.Large{
  font-size: 125%;
}
            /* + + + + + レスポンシブ + + + + +  */

                /* bp2より狭いディスプレイ用 */
                html.rsbp-under-bp2 .Heading.Type7{
                  margin: 0.5em 0 0.125em;
                }




/* Type8 :::::::::::::::::::::::::  */
.Heading.Type8{
  font-size: 137.5%;
  font-weight: 600;
  padding: 1em 0.75em;
  background: #f0f0f0;
  background: linear-gradient( to top, #fff, #fafafa, #eee );
  color: #333;
  line-height: 1;
  margin: 1em -1em 1em;
  border-bottom: 2px solid #e94e7e;
  /*text-shadow: 1px 1px 0px #f93;*/
}
.Heading.Type8::before {
  position: absolute;
  top: 100%;
  left: 1em;
  content: '';
  border-style: solid;
  border-width: 12px 12px 0 12px;
  border-color: #e94e7e transparent transparent transparent;
}
    /* 特殊処理（しゃちほこアイコン） */
    .Heading.Type8 .Icon {
      transform: scale(1.0);
      margin-right: 0;
      margin-top:   -1.25em;
    }
    .Heading.Type8 .Icon img{
      width: 70px;
    }
    .Heading.Type8 .Icon::after {
      content: "CHECK!";
      position: absolute;
      top:  -1em;
      left: -4em;
      background: #fff;
      border-radius: 100%;
      font-size: 8.75px;
      display: block;
      width: 5em;
      color: #f80;
      line-height: 5em;
      text-align: center;
      box-shadow: 0 0 1em #f90;
      -webkit-transform: rotate(-20deg);
              transform: rotate(-20deg);
    }
            /* + + + + + レスポンシブ + + + + +  */

                /* bp2より狭いディスプレイ用 */
                html.rsbp-under-bp2 .Heading.Type8{
                  font-size: 125%;
                  margin-left: 0;
                  margin-right: 0;
                }





/* Type9 :::::::::::::::::::::::::  */
.Heading.Type9{
  font-size: 125%;
  font-size: 200%;
  letter-spacing: 0.1em;
  text-align: center;
  padding: 0.5em 0;
  margin: 3em 0 1em;
  color: #349;
  /*background: linear-gradient( to bottom, #dfeff4, transparent );*/
  border-top:    6px solid #00b8e6;
  border-bottom: 1px dashed #00b8e6;
}

            /* + + + + + レスポンシブ + + + + +  */
            
                /* bp2より狭いディスプレイ用 */
                html.rsbp-under-bp2 .Heading.Type9{
                  font-size: 137.5%;
                  letter-spacing: 0.05em;
                }



/* Type9 :::::::::::::::::::::::::  */
.Heading.Gakku{
  background: #ff72a4;
  color: white;
  text-align: center;
  padding: 0.25em 0;
  font-size: 137.5%;
  letter-spacing: 0.1em;
  position: relative;
}
    .Heading.Gakku::before{
      content: "";
      position: absolute;
      top: 100%;
      left: 50%;
      margin-left: -0.5em;
      border:       0.5em solid transparent;
      border-top:   0.5em solid #ff72a4;
    }

            /* + + + + + レスポンシブ + + + + +  */
            
                /* bp2より狭いディスプレイ用 */
                html.rsbp-under-bp2 .Heading.Gakku{
                  font-size: 112.5%;
                  letter-spacing: 0.1em;
                }





/* DefaultText （この案件では未使用）
--------------------------------------------------- */
.DefaultText{
}

/* blockquote
--------------------------------------------------- */
blockquote {
  position: relative;
  padding: 35px 15px 10px 15px;
  box-sizing: border-box;
  font-style: italic;
  background: #f5f5f5;
  color: #777777;
  border-left: 4px solid #9dd4ff;
  /*box-shadow: 0 2px 4px rgba(0, 0, 0, 0.14);*/
}

    blockquote:before{
      display: inline-block;
      position: absolute;
      top: 5px;
      left: 3px;
      content: "“";
      font-family: sans-serif;
      color: #9dd4ff;
      font-size: 30px;
      line-height: 1;
    }
    
    blockquote p {
      padding: 0;
      margin: 7px 0;
      line-height: 1.7;
    }
    
    blockquote cite {
      display: block;
      text-align: right;
      color: #888888;
      font-size: 0.9em;
    }



/* tel link
--------------------------------------------------- */
.TelLink{
}
.TelLink:hover{
}


/* sup
--------------------------------------------------- */
sup{
  font-size: x-small;
  line-height: 1.1;
}


/* 丸付き文字
--------------------------------------------------- */
.Circled{
  color: #282832;
  border: 1px solid #282832;
  background: #fff;
  border-radius: 3em;
  display: inline-block;
  width: 1.5em;
  width: calc(1.5em + 2px);
  line-height: 1.5em;
  text-align: center;
  vertical-align: middle;
}




/* リスト（汎用）
--------------------------------------------------- */



/* ポイントリスト  */
.PointList{
  list-style: none;
  counter-reset: my-counter;
  margin-left: 0!important;
  margin-bottom: 1.25em!important;
}
    .PointList > li{
      position: relative;
      padding: 0.5em 0;
      padding-left: 6em;
      margin: 0;
      border-bottom: 1px solid #bbd7f4;
      line-height: 1.5;
    }

    .PointList > li::before{
      font-family: "Century Gothic", sans-serif;
      content: "POINT " counter(my-counter);
      counter-increment: my-counter;
      position: absolute;
      left: 0;
      display: inline-block;
      color: #fff;
      background: #447cb5;
      text-align: center;
      line-height: 1.5;
      border-radius: 0.25em;
      font-size: 75%;
      padding: 0.25em 0.5em;
      width: 5em;
      font-weight: bold;
    }

    .PointList > li::after{
      font-size: 75%;
      content: "";
      position: absolute;
      top:  1.375em;
      left: 6em;
      border-top: 0.3em solid transparent;
      border-left: 0.5em solid #447cb5;
      border-bottom: 0.3em solid transparent;
    }
    
    
    
                /* + + + + + レスポンシブ + + + + +  */
                
                
                    /* bp2より狭いディスプレイ用 */
                    html.rsbp-under-bp2 .PointList > li{
                      padding: 1em 0;
                      padding-left: 5em;
                    }

                    html.rsbp-under-bp2 .PointList > li::before,
                    html.rsbp-under-bp2 .PointList > li::after{
                      font-size: 62.5%;
                    }
                    html.rsbp-under-bp2 .PointList > li::after{
                      top:  2.25em;
                    }


/* フロー（手順）リスト : type1  */
.FlowList.Type1{
  list-style: none;
  counter-reset: my-counter;
  margin-left: 0!important;
}
    .FlowList.Type1 > li{
      position: relative;
      padding: 0.75em 1em 0.75em 8em;
      margin: 1em 0;
      background: #eef;
      border-radius: 0.5em;
    }

    .FlowList.Type1 > li::before{
      /*font-family: "Century Gothic", sans-serif;*/
      font-family: "Impact", sans-serif;
      content: "STEP." counter(my-counter);
      counter-increment: my-counter;
      position: absolute;
      left: 1em;
      display: inline-block;
      color: #33c;
      white-space: nowrap;
      border-left: 1px solid;
      padding-left: 1em;
      letter-spacing: 0.05em;
    }
    .FlowList.Type1 > li:not(:last-child)::after{
      content: "";
      position: absolute;
      bottom: -0.7em;
      left: 50%;
      margin-left: -0.5em;
      
       z-index: 1;
       width:  8px;
       height: 8px;
       border-top:   2px solid #33c;
       border-right: 2px solid #33c;
       transform: rotate(135deg) translate3d(0,0,0);
    }
                /* + + + + + レスポンシブ + + + + +  */
                
                
                    /* bp2より狭いディスプレイ用 */
                    html.rsbp-under-bp2 .FlowList.Type1 > li{
                      padding-left: 1em;
                    }

                    html.rsbp-under-bp2 .FlowList.Type1 > li::before{
                      display: block;
                      position: static;
                      line-height: 1;
                      margin: 0.5em 0;
                    }


/* フロー（手順）リスト : type2  */
.FlowList.Type2{
  list-style: none;
  counter-reset: my-counter;
  margin-left:  -0.5em!important;
  margin-right: -0.5em!important;
}
    .FlowList.Type2 > li > .inner{
      position: relative;
      padding: 0.75em 0.5em 1.5em;
      border: 1px solid #ccc;
      border-radius: 0.5em;
      margin: 0.5em 0.75em;
    }

    .FlowList.Type2 > li > .inner::before{
      /*font-family: "Impact", sans-serif;*/
      content: "STEP" counter(my-counter);
      font-weight: bold;
      font-size: 2.0rem;
      counter-increment: my-counter;
      display: block;
      color: #000;
      white-space: nowrap;
      margin: 0.25em 0;
      text-align: center;
    }
    
    .FlowList.Type2 > li {
      position: relative;
    }
    .FlowList.Type2 > li:not(:last-child)::after{
      font-family: 'picticon';
      content: "\e807";
      position: absolute;
      top: 50%;
      left: 100%;
      z-index: 1;
      transform: scale(2);
      color: #0078d7;
      line-height: 1;
      margin-top: -0.5em;
    }
    .FlowList.Type2 > li .ImageItem{
      margin-bottom: 0.25em;
    }
        .FlowList.Type2 > li .ImageItem .Icon{
          font-size: 125%;
        }
        .FlowList.Type2 > li .ImageItem .Icon::before{
          font-size: 300%;
          color: #1d1d5b;
        }
            .FlowList.Type2 > li .ImageItem .icon-smartphone::before{
              font-size: 200%;
              position: relative;
              bottom: 0.1em;
            }
                    html.ie .FlowList.Type2 > li .ImageItem .icon-smartphone::before{
                      font-size: 3rem;
                    }

            .FlowList.Type2 > li .ImageItem .icon-pc::before{
              position: relative;
              right: 0.1em;
            }
            .FlowList.Type2 > li .ImageItem .icon-track::before{
              position: relative;
              right: 0.1em;
            }
            .FlowList.Type2 > li .ImageItem .Banner{
              display: block;
            }
    .FlowList.Type2 > li .TextItem{
      line-height: 1.5em;
      min-height:  3.5em;
      font-size:   1.2rem;
    }
    .FlowList.Type2 > li .Balloon{
      position: absolute;
      right: 0%;
      bottom: 100%;
      margin-bottom: -0.875em;
      margin-right:  -0.5em;
    }
    
                /* + + + + + レスポンシブ + + + + +  */
                
                    /* bp2より広いディスプレイ用 */
                    html.rsbp-over-bp2  .FlowList.Type2 > li .ImageItem .Banner{
                      position: absolute;
                      width: 100%;
                      bottom: -1em;
                      left: -0.25em;
                    }

                    /* bp2より狭いディスプレイ用 */
                    html.rsbp-under-bp2 .FlowList.Type2 > li{
                      width: 100%!important;
                      max-width: 100%!important;
                      margin: 1.75em 0;
                    }
                    html.rsbp-under-bp2 .FlowList.Type2 > li:first-child{
                      margin-top: 0.5em;
                    }
                    html.rsbp-under-bp2 .FlowList.Type2 > li > .inner{
                      margin: 0;
                      padding: 0.75em 1.25em;
                    }
                    html.rsbp-under-bp2 .FlowList.Type2 > li > .inner::before{
                      text-align: left;
                    }
                    html.rsbp-under-bp2 .FlowList.Type2 > li:not(:last-child)::after{
                      top:  100%;
                      left:  50%;
                      content: "\e804";
                      transform: scale(3);
                      margin: 0;
                      margin-top: 0.25em;
                    }
                    html.rsbp-under-bp2 .FlowList.Type2 > li .Icon{
                      font-size: 137.5%;
                      
                    }
                    html.rsbp-under-bp2 .FlowList.Type2 > li .TextItem{
                      text-align: left;
                      min-height: 0;
                      font-size:   1.6rem;
                    }
                    html.rsbp-under-bp2 .FlowList.Type2 > li .ImageItem{
                      float: right;
                      padding-left: 0.5em;
                      margin-top: -1.75em;
                      margin-right: -0.5em;
                      margin-bottom: 0;
                      width: 35%;
                      text-align: center;
                      white-space: nowrap;
                    }



/* ※印付きリスト :  */
.AsteriskList{
  list-style: none;
  opacity: 0.75;
  margin-left: 1.5em;
}
    .AsteriskList > li{
      position: relative;
    }
    .AsteriskList > li a{
      text-decoration: underline;
      color: #0078e1;
    }

    .AsteriskList > li::before{
      content: "※";
      position: absolute;
      left: -1.25em;
      top: 0;
    }
        .AsteriskList:first-child{
          margin-top: 0;
        }
        .AsteriskList li{
          margin: 0 0 0.5em;
        }
        .AsteriskList li:last-child{
          margin-bottom: 0;
        }



/* NewsList （汎用リスト）
--------------------------------------------------- */
.NewsList{
  list-style: none;
  font-size: 1.6rem;
}
    .NewsList li{
    }
    .NewsList li > .inner{
      padding: 0.5em 0;
    }
        .NewsList li .TextItem{
          flex-wrap: nowrap;
          justify-content: flex-start;
          align-items: flex-start;
        }
        .NewsList li .TextItem,
        .NewsList li .TextItem *{
          line-height: 1.375em;
        }
        .NewsList li .TextItem .Meta{
        }
            .NewsList li .TextItem .Meta .Date{
              font-weight: bold;
              margin-right: 1em;
              color: #333333;
            }
        .NewsList li .TextItem .Title{
        }
        .NewsList li .TextItem .Title a{
          color: #007bba;
        }

                /* + + + + + レスポンシブ + + + + +  */
                
                    /* bp2より広いディスプレイ用 */
                    html.rsbp-over-bp2 .NewsList li .TextItem{
                      font-size: 75%;
                    }
                    html.rsbp-over-bp2 .NewsList li .TextItem .Meta{
                      min-width: 17.5em;
                    }
                    html.rsbp-over-bp2 .NewsList li .TextItem .Title{
                    }
                
                    /* bp2より狭いディスプレイ用 */
                    html.rsbp-under-bp2 .NewsList li .inner{
                      padding: 0.75em 0;
                      border-bottom: 1px solid #ccc;
                    }
                    html.rsbp-under-bp2 .NewsList li:last-child .inner{
                      border-bottom: none;
                    }
                    html.rsbp-under-bp2 .NewsList li .TextItem {
                      font-size: 93.25%;
                      display: block;
                    }
                    html.rsbp-under-bp2 .NewsList li .TextItem .Meta{
                      margin-bottom: 0.5em;
                    }
                    html.rsbp-under-bp2 .NewsList li .TextItem .Title{
                    }



/* ScheduleList （公開会場受験 実施スケジュール）
--------------------------------------------------- */
.ScheduleList {
  width: 100%;
  font-weight: 500;
  border-collapse: collapse;
  margin-bottom: 0.75em;
  font-size: 1.0rem;
}
    .ScheduleList thead{
      
    }
    .ScheduleList thead th{
      border-top: 1px solid rgba(0,0,0,0.1);
      text-align: center;
      background: #eee;
      padding: 0.25em 0;
      font-size: 120%;
    }
    .ScheduleList th{
      text-align: left;
    }
    .ScheduleList th,
    .ScheduleList td{
      border-bottom: 1px solid rgba(0,0,0,0.1);
      padding: 1em 0;
    }
    .ScheduleList td{
      padding-left: 1.5em;
    }
        .ScheduleList-Title {
          background: #fa4466;
          color: #fff;
          padding: 0.2em 0.125em 0.2em 0.25em;
          display: inline-block;
          position: relative;
          border-radius: 0;
          min-width: 4em;
          text-align:center;
          font-size: 140%;
        }
        .ScheduleList-Title,
        .ScheduleList-Title *{
          line-height: 1em;
          vertical-align: baseline;
        }
        .ScheduleList-Title::after {
          content: "";
          position: absolute;
          top: 0px;
          left: 100%;
          border-top:    0.7em solid transparent;
          border-left:   0.5em solid #fa4466;
          border-bottom: 0.7em solid transparent;
        }
        
        
        .ScheduleList-Date {
          font-size: 120%;
          white-space: nowrap;
        }
        .ScheduleList-Date,
        .ScheduleList-Date > *{
          line-height: 1.25em;
          vertical-align: middle;
        }

        .ScheduleList-Date .Number{
          /*font-family: 'Tahoma', monospace;*/
          font-size: 180%;
          margin-right: 0.125em;
          /*min-width: 1.125em;*/
          display: inline-block;
          text-align: right;
        }
                    .ScheduleList-StartDate::before {
                      content: '申込締切日';
                      margin-right: 0.5em;
                    }
                    .ScheduleList-EndDate::before {
                      content: '実施予定日';
                      margin-right: 0.5em;
                    }
        
        /* 受付中 ・ 終了 表示 */
        .ScheduleList-li .ScheduleList-StartDate::after {
          display: inline-block;
          font-weight: bold;
          margin-right: 2em;
          line-height: 1em;
          float: right;
        }
        
        
        /* 受付中 */
        .ScheduleList-li.Accepting .ScheduleList-StartDate {
        }
        .ScheduleList-li.Accepting .ScheduleList-StartDate::after {
          content: "受付中";
          border: 2px solid #ff0e07;
          color: #ff0e07;
          color: #e50e07;
          padding: 1px 0.5em;
        }
        
        
        /* 終了 */
        .ScheduleList-li.Finished .ScheduleList-Date {
          color: rgba(0,0,0,0.2);
        }
        .ScheduleList-li.Finished .ScheduleList-StartDate::after {
          content: "受付終了";
          color: rgba(0,0,0,0.4);
        }


                /* + + + + + レスポンシブ + + + + +  */
                
                    /* bp2より広いディスプレイ用 */
                    html.rsbp-over-bp2 .ScheduleList thead {
                      display: none;
                    }
                
                    /* bp2より狭いディスプレイ用 */
                    html.rsbp-under-bp2 .ScheduleList {
                      margin-left: auto;
                      margin-right: auto;
                    }
                    html.rsbp-under-bp2 .ScheduleList-Title {
                      min-width: 5em;
                      margin-bottom: 0.5em;
                    }
                    html.rsbp-under-bp2  .ScheduleList-Date{
                    }
                    html.rsbp-under-bp2  .ScheduleList-Date .Number{
                      font-size: 160%;
                      margin-right: 0em;
                      min-width: 0;
                    }
                    html.rsbp-under-bp2  .ScheduleList-li .ScheduleList-StartDate::after {
                      float: right;
                      margin-right: 0;
                    }
                    html.rsbp-under-bp2  .ScheduleList thead {
                      display: none;
                    }
                    html.rsbp-under-bp2 .ScheduleList tbody tr,
                    html.rsbp-under-bp2 .ScheduleList tbody th,
                    html.rsbp-under-bp2 .ScheduleList tbody td {
                      display: block;
                      border: none;
                    }
                    html.rsbp-under-bp2 .ScheduleList tbody tr {
                      padding: 1em 0;
                    }
                    html.rsbp-under-bp2 .ScheduleList tbody th,
                    html.rsbp-under-bp2 .ScheduleList tbody td {
                      padding: 0.25em 0;
                    }
                    html.rsbp-under-bp2 .ScheduleList tbody td {
                    }
                    html.rsbp-under-bp2 .ScheduleList tbody tr{
                      border-bottom: 1px solid rgba(0,0,0,0.1);
                    }





/* JitakuMoshiScheduleList （自宅受験 実施スケジュール） ※上記ScheduleList を継承
--------------------------------------------------- */
.JitakuMoshiScheduleTitle {
  margin: 1em 0 1.5em!important;
  letter-spacing: 0.03125em;
  font-size: 112.5%;
}
    .JitakuMoshiScheduleTitle .Icon{
      color:  #fa4466;
      font-size: 1.25em;
      margin: 0;
      margin-right: 0.75em;
    }
                /* + + + + + レスポンシブ + + + + +  */
                
                    /* bp2より広いディスプレイ用 */
                    html.rsbp-over-bp2 .JitakuMoshiScheduleTitle {
                    }
                
                    /* bp2より狭いディスプレイ用 */
                    html.rsbp-under-bp2 .JitakuMoshiScheduleTitle {
                      display: inline-block;
                      padding: 0.125em 2.5em;
                      margin: 1em 0 0.5em!important;
                    }
                    html.rsbp-under-bp2 .JitakuMoshiScheduleTitle  .Icon{
                      position: absolute;
                      left: 0;
                      top: 0.5em;
                    }


.JitakuMoshiScheduleList {
  width: 100%;
  font-weight: 500;
  border-collapse: collapse;
  margin-bottom: 1.0em;
  font-size: 1.0rem;
}
    .JitakuMoshiScheduleList thead{
    }
    .JitakuMoshiScheduleList thead th{
      border-top: 1px solid rgba(0,0,0,0.1);
      text-align: center;
      background: #eee;
      padding: 0.25em 0;
      font-size: 120%;
    }
    .JitakuMoshiScheduleList thead th.Status{
      width: 4em;
    }
    .JitakuMoshiScheduleList thead th.Date{
      width: 11em;
    }
    
    
    
    .JitakuMoshiScheduleList th{
      text-align: left;
    }
    .JitakuMoshiScheduleList th,
    .JitakuMoshiScheduleList td{
      border-bottom: 1px solid rgba(0,0,0,0.1);
      padding: 1em 0;
    }
    .JitakuMoshiScheduleList td{
      padding: 0.75em 0.5em;
      text-align: center;
    }
    .JitakuMoshiScheduleList tbody th{
      padding-right: 1.5em;
    }
    .JitakuMoshiScheduleList tbody th .ScheduleList-Title {
      font-size: 120%;
    }
    .JitakuMoshiScheduleList tbody th .ScheduleList-Title {
      min-width: 7.5em;
      width: 7.5em;
      padding-top:     0.25em;
      padding-bottom:  0.25em;
      display: table-cell;
      height: 3.0em;
      vertical-align: middle;
    }
        .JitakuMoshiScheduleList tbody th .ScheduleList-Title::after {
          border-top:    1.5em solid transparent;
          border-bottom: 1.5em solid transparent;
          border-left:   1.0em solid #fa4466;
          top: 50%;
          margin-top:   -1.5em;
        }
    .JitakuMoshiScheduleList td .ScheduleList-Date {
      font-size: 137.5%;
      display: inline-block;
    }
    .JitakuMoshiScheduleList td .ScheduleList-Date,
    .JitakuMoshiScheduleList td .ScheduleList-Date *{
      vertical-align: baseline;
    }
    .JitakuMoshiScheduleList td .ScheduleList-Date .Number{
      font-size: 125%;
      margin-right: 0.125em;
    }
    .JitakuMoshiScheduleList td .ScheduleList-Date .WeekDay{
    }
    
    .JitakuMoshiScheduleList .ScheduleList-li.Finished{
      color: rgba(0,0,0,0.2);
    }
    
        
    .JitakuMoshiScheduleList  .ScheduleList-Status {
      white-space: nowrap;
      margin: -0.5em auto;
      display: inline-block;
      text-align: center;
      vertical-align: middle;
      /*
          font-size: 1.1rem;
          height: 1;
          background: #fff;
          border: 2px solid;
          border-radius: 100%;
          line-height: 5.0em;
          min-width: 5.0em;
          width: calc(5em + 4px);
          font-weight: bold;
          transform: rotate(15deg);
      */
      line-height: 5.0em;
      min-width: 5.0em;
      position: relative;
    }
    .JitakuMoshiScheduleList  .ScheduleList-Status::before {
      width:  5.0em;
      height: 5.0em;
      background-position: 50% 50%;
      background-repeat: no-repeat;
      background-size: cover;
      content: "";
      display: block;
      position: absolute;
      z-index: 5;
      left: 0;
      top: 0;
    }
    .JitakuMoshiScheduleList  .ScheduleList-Status:empty {
      display: none;
    }
    .JitakuMoshiScheduleList  .ScheduleList-Status.Finished::before {
       color: #fa4466;
       background-image: url(../img/common/decoration/stamp_finished.png);
    }
    .JitakuMoshiScheduleList  .ScheduleList-Status.Accepting::before {
       color: #2a88d7;
       background-image: url(../img/common/decoration/stamp_accepting.png);
    }
    
    

                /* + + + + + レスポンシブ + + + + +  */
                
                    /* bp2より広いディスプレイ用 */
                    html.rsbp-over-bp2 .JitakuMoshiScheduleList thead {
                    }
                
                    /* bp2より狭いディスプレイ用 */
                    html.rsbp-under-bp2 .JitakuMoshiScheduleList {
                      margin-left: auto;
                      margin-right: auto;
                    }
                    html.rsbp-under-bp2  .JitakuMoshiScheduleList th,
                    html.rsbp-under-bp2  .JitakuMoshiScheduleList td {
                      border: 1px solid #ccc;
                      padding: 0.25em 0.5em;
                    }
                    html.rsbp-under-bp2  .JitakuMoshiScheduleList thead th {
                      background: #fa4466;
                      border-color: #fa4466;
                      color: #fff;
                      padding: 0.5em 0.5em;
                      text-align: left;
                      font-size: 1.4rem;
                      position: relative;
                    }
                    html.rsbp-under-bp2  .JitakuMoshiScheduleList tbody th {
                      background: #f0f0f0;
                      font-size: 1.2rem;
                      width: 30%;
                    }
                    html.rsbp-under-bp2  .JitakuMoshiScheduleList tbody td {
                      text-align: left;
                      padding: 0.5em 0.75em;
                    }
                    html.rsbp-under-bp2  .JitakuMoshiScheduleList td .ScheduleList-Date{
                      display: inline-block;
                    }
                    html.rsbp-under-bp2  .JitakuMoshiScheduleList td .ScheduleList-Date .Number{
                      font-size: 115%;
                    }
                    html.rsbp-under-bp2  .JitakuMoshiScheduleList td .ScheduleList-Date .WeekDay{
                      font-size: 1.0rem;
                    }
                    html.rsbp-under-bp2 .JitakuMoshiScheduleList .ScheduleList-Status {
                      font-size: 1.2rem;
                      position: absolute;
                      top:  -0.25em;
                      right:-0.5em;
                    }







/* tooltip
--------------------------------------------------- */
.Tooltip {
  border-bottom: 1px dashed;
  cursor: pointer;
  margin: 0 0.25em;
  color: #2098d1;
}
.Tooltip::before{
  margin-right: 0.25em;
}
.Tooltip:hover,
.Tooltip:focus {
  border-bottom: none;
}
    .ui-tooltip {
      box-shadow: none;
      color: #2098d1;
      background: white;
      border: 2px solid;
      width: 20em;
      max-width: 50%;
      padding: 20px;
      z-index: 100;
      text-align: left;
    }
    .ui-tooltip * {
    }



/* Balloon（フキダシ）
--------------------------------------------------- */

.Balloon.Type1 {
  margin: 0 auto;
  text-align: center;
  border-radius: 0.5em;
  border: 2px solid;
  background: #fff;
  color: #f58212;
  font-weight: bold;
  padding: 0.25em 0.5em;
  line-height: 1.25!important;
}


/* しゃちほこ君 */
.Balloon.Type2{
  position: relative;
  text-align: right;
}
    .Balloon.Type2 .Text{
      display: inline-block;
      position: relative;
      left: 2.5em;
      margin: 0 0 0 auto;
      text-align: center;
      background: #eef5ff;
      max-width: 30em;
      border-radius: 3em;
      padding: 1.5em;
      line-height: 1.5!important;
      font-size: 87.5%;
      z-index: 5;
    }
        .Balloon.Type2 .Text::before {
          content: "";
          position: absolute;
          top: 100%;
          right: 2.5em;
          margin-left: -0.5em;
          border:       0.5em solid transparent;
          border-top:   0.5em solid #eef5ff;
        }
    .Balloon.Type2 .Image{
      display: inline-block;
      position: relative;
      width:  70px;
      right: -0.5em;
      bottom: -2.5em;
      float: right;
      z-index: 10;
    }

                /* + + + + + レスポンシブ + + + + +  */
                
                    /* bp2より広いディスプレイ用 */
                    html.rsbp-over-bp2 .Balloon.Type2 .Text {
                      
                    }
                
                    /* bp2より狭いディスプレイ用 */
                    html.rsbp-under-bp2 .Balloon.Type2 .Text{
                      max-width: 90%;
                      left: auto;
                      right: 10%;
                      border-radius: 2em;
                      padding: 1em;
                    }
                    html.rsbp-under-bp2 .Balloon.Type2 .Text::before {
                      right: 2em;
                    }
                    html.rsbp-under-bp2 .Balloon.Type2 .Image{
                      width: 17.5%;
                      position: absolute;
                      bottom: auto;
                      top: 65%;
                      
                    }

/* font
--------------------------------------------------- */

/* basic */
.FontDefault{
  font-family: "Meiryo", "Arial", "Century Gothic", sans-serif;
}
.FontSansSerif{
  font-family: "ヒラギノ角ゴ Pro W3", "游ゴシック", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-feature-settings: "palt";
}

                        /* IEでの微妙な上下のズレを軽減 */
                        @media all and (-ms-high-contrast:none) {
                             /* IE10以降に適応されるCSS */
                            .FontSansSerif{
                              font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
                            }
                        }
.FontSerif{
  font-family: "YuMincho", "游明朝", "Hiragino Mincho Pro", "ヒラギノ明朝 Pro W3", "MS PMincho", "ＭＳＰ明朝", "MS Mincho", "ＭＳ明朝", serif;
  font-feature-settings: "palt";
  font-weight: 300;
}
.FontMonospace{
  /*font-family: "Osaka-mono", "ＭＳ ゴシック", "MS Gothic", monospace;*/
}



/* FontSize
--------------------------------------------------- */
.FontSizeXXLarge,
.DefaultText.FontSizeXXLarge{
  font-size: 175%;
}
.FontSizeXLarge,
.DefaultText.FontSizeXLarge{
  font-size: 150%;
}
.FontSizeLarge,
.DefaultText.FontSizeLarge{
  font-size: 125%;
}
.FontSizeLarger,
.DefaultText.FontSizeLarger{
  font-size: 112.5%;
}
.FontSizeNormal,
.DefaultText.FontSizeNormal{
  font-size: 100%;
}
.FontSizeSmaller,
.DefaultText.FontSizeSmaller{
  font-size: 87.5%;
}
.FontSizeSmall,
.DefaultText.FontSizeSmall{
  font-size: 75%;
}
.FontSizeXSmall,
.DefaultText.FontSizeXSmall{
  font-size: 62.5%;
}



/* FontWeight
--------------------------------------------------- */
.FontWeightThin{
  font-weight: 100;
}
.FontWeightThinner{
  font-weight: 200;
}
.FontWeightNormal{
  font-weight: 400;
}
.FontWeightBolder{
  font-weight: 600;
}
.FontWeightBold{
  font-weight: 800;
}



/* Color
--------------------------------------------------- */
.ColorRed {
  color: #c33;
  color: #f00;
}




/* TextAlign
--------------------------------------------------- */
.TextAlignCenter{
  text-align: center;
}
.TextAlignLeft{
  text-align: left;
}
.TextAlignRight{
  text-align: right;
}
.TextAlignJustify{
  text-align: justify;
}
/* 縦書き */
.TextVertical{
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
}


/* VerticalAlign
--------------------------------------------------- */
.VerticalAlignTop,
.VerticalAlignTop *{
  vertical-align: top;
}
.VerticalAlignMiddle,
.VerticalAlignMiddle *{
  vertical-align: middle;
}
.VerticalAlignBottom,
.VerticalAlignBottom *{
  vertical-align: bottom;
}




/* Float
--------------------------------------------------- */
.FloatLeft{
  float: left;
}
.FloatRight{
  float: right;
}
.FloatNone{
  float: none;
}

/* Padding
--------------------------------------------------- */
.PaddingBottom{
  padding-bottom: 1em;
}
.PaddingTop{
  padding-top:    1em;
}
.PaddingHorizontal{
  padding-left:   1em;
  padding-right:  1em;
}
.PaddingHorizontal{
  padding-left:   1em;
  padding-right:  1em;
}
.PaddingNone{
  padding: 0;
}




/* TextOverFlowNone
--------------------------------------------------- */
.TextOverFlowNone{
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}



/* LetterSpacing
--------------------------------------------------- */
.LetterSpNarrowest{
  letter-spacing: -0.10em;
}
.LetterSpNarrow{
  letter-spacing: -0.05em;
}
.LetterSpNormal{
  letter-spacing:    0em;
}
.LetterSpWide{
  letter-spacing:  0.375em;
  text-indent:     0.375em;
}
.LetterSpWidest{
  letter-spacing:  0.75em;
  text-indent:     0.75em;
}


/* NoWrap
--------------------------------------------------- */
.NoWrap{
  white-space: nowrap;
}




/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   MessageBox                                     */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */

/* MessageBox
--------------------------------------------------- */
.MessageBox{
  padding: 25px 25px 75px;
  margin: 1em auto;
  width: 75%;
  text-align: center;
  background: rgba(255,255,255,0.5);
  border: 10px solid #eee;
  border-radius: 10px;
  position: relative;
}
    .MessageBox .Heading{
      margin: 0 0 1em;
      line-height: 1.75;
      font-size: 150%;
    }
    .MessageBox .Heading .Label:first-child{
      margin-top: 50px;
      display: block;
    }
    .MessageBox .Heading .Icon::before{
      font-size: 175%;
    }
    .MessageBox .DefaultText{
      text-align: center;
      line-height: 2;
      margin: 0;
    }
                /* + + + + + レスポンシブ + + + + +  */

                    /* bp2より広いディスプレイ用 */
                    html.rsbp-over-bp2 .MessageBox .Heading {
                    }

                    /* bp2より狭いディスプレイ用 */
                    html.rsbp-under-bp2 .MessageBox {
                      width: 90%;
                    }
                    html.rsbp-under-bp2 .MessageBox .Heading {
                    }
                    html.rsbp-under-bp2 .MessageBox .Heading .Icon{
                      padding-top: 1.5em;
                    }
                    html.rsbp-under-bp2 .MessageBox .Heading .Label:first-child{
                      margin-top: 20px;
                    }
                    html.rsbp-under-bp2 .MessageBox .DefaultText  {
                    }
    /* options */
    .MessageBox.Caution{
      color: #222;
      color: inherit;
      background: #f5f47a;
    }
    .MessageBox.Clear .Heading .Icon{
    }
    .MessageBox.Error .Heading .Icon{
    }





/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   GoPageTop                                      */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */

/* GoPageTop
--------------------------------------------------- */
.GoPageTop{
  display: inline-block;
  line-height: 1;
  vertical-align: bottom;
  margin-left: -3.5em;
  display: none;
}
.GoPageTop *{
  line-height: 1;
  vertical-align: bottom;
}
    .GoPageTop p{
      display: inline-block;
    }
    .GoPageTop p a,
    .GoPageTop p a *,
    .GoPageTop p a *::before{
      -webkit-transition: all .2s;
              transition: all .2s;
    }
    .GoPageTop p a{
      width:  8em;
      height: 8em;
      text-align: center;
      vertical-align: middle;
      display: block;
      position: relative;
      font-weight: normal;
      border-radius: 100%;
    }
    .GoPageTop p a{
      background: #c40101;
      color: #fff;
    }
    .GoPageTop p a *{
      color: #fff;
    }
    .GoPageTop p a .Label{
      position: absolute;
      top: 45%;
      left: 0%;
      width: 100%;
      text-align: center;
      font-size: 125%;
      font-weight: 600;
      font-family: 'Arial';
      line-height: 1.125;
    }
    .GoPageTop p a .Icon{
      width: 100%;
      display: block;
      text-align: center;
      position: absolute;
      bottom: 60%;
    }
    .GoPageTop p a .Icon::before{
      font-size: 300%;
      margin-bottom: -0.125em;
    }


    /* hover */
    .PcView .GoPageTop p a:hover{
      background: #223;
    }
    .PcView .GoPageTop p a:hover {
      color: #fff;
    }

            /* + + + + + レスポンシブ + + + + +  */

                /* bp2より広いディスプレイ用 */
                html.rsbp-over-bp2 .GoPageTop{
                  font-size: 62.5%;
                  position: fixed;
                  bottom: 20px;
                  right:  20px;
                  z-index: 100;
                }

                /* bp2より狭いディスプレイ用 */
                html.rsbp-under-bp2 .GoPageTop{
                  font-size: 45%;
                  position: absolute;
                  position: fixed;
                  bottom: 20px;
                  right:  20px;
                  z-index: 50;
                  display: none;
                }







/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   Button 等                                      */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */

.ButtonGroup{
  text-align: center;
}
.ButtonGroup li{
  display: inline-block;
  margin: 5px;
}

/* 共通設定 */
    .Button {
      display: inline-block;
      text-align: center;
      cursor: pointer;
      position: relative;
      -webkit-transition: all .2s;
              transition: all .2s;
    }
    .Button:hover {
      text-decoration: none;
      filter: brightness(.9);
    }



/* SimpleButton [ input type="button" ]
--------------------------------------------------- */
input[type="button"],
input[type="submit"],
input[type="reset"]{
   -webkit-appearance: none;
}
.SimpleButton,
input[type="button"],
input[type="submit"]{
  color:   #333;
  border: 1px solid #ccc;
  background-color: #eee;
  background-image: linear-gradient( to bottom, rgba(255,255,255,1), rgba(255,255,255,0));
  padding: 0 0.5em;
  vertical-align: middle;
  line-height: 2em;
  border-radius: 0.25em;
  min-width: 10em;
  cursor: pointer;
}
    .SimpleButton:hover,
    input[type="button"]:hover,
    input[type="submit"]:hover{
      border-color: rgb(90,140,240);
      filter: brightness(1);
    }
/* ボタンのバリエーション（ベースはtemlpate）
--------------------------------------------------- */

    
    /* デフォルト */
    .DefaultButton {
      color: #fff;
      background: #e33535;
      border-radius: 5px;
      padding: 0.75em 1.5em;
      padding: 1em 2em;
      line-height: 1.25;
      min-width: 16em;
    }
    
    /* 青 */
    .DefaultButton.Blue {
      color: #fff;
      background: #336699;
    }
    
    /* グレー */
    .DefaultButton.Gray {
      background: #444;
      color:#fff;
    }
    
    /* ホワイト */
    .DefaultButton.White {
      background: #fff;
      color:#333;
      border: 1px solid #369;
    }





/* ダウンロードボタン
--------------------------------------------------- */
.DownloadButton{
  color:   #333;
  border: 1px solid #ccc;
  background-color: #eee;
  background-image: linear-gradient( to bottom, rgba(255,255,255,1), rgba(255,255,255,0));
  padding: 0 0.5em;
  vertical-align: middle;
  line-height: 2em;
  border-radius: 0.25em;
  min-width: 10em;
  cursor: pointer;
}
    .DownloadButton .Label{
      font-weight: 600;
    }
    .DownloadButton .Icon{
      border-bottom: 1px dotted;
      color: #889;
    }
    .DownloadButton .Icon::before{
      transform: scale(2);
      margin-bottom: 0;
      padding-top: 0.25em;
      padding-bottom: 0.25em;
    }
    /*
    .DownloadButton .Icon::after{
      content: "DOWNLOAD";
      display: block;
      font-family: "Arial", sans-serif;
      font-size: 62.5%;
    }
    */
    /* カラー */
    .DownloadButton.English       .Icon{
      color: #8176b1;
    }
    .DownloadButton.Math          .Icon{
      color: #52aee8;
    }
    .DownloadButton.NationalLang  .Icon{
      color: #ee992e;
    }
    .DownloadButton.Science       .Icon{
      color: #82b53a;
    }
    .DownloadButton.SocialStudies .Icon{
      color: #ed699d;
    }







/* Formボタン（Baserが出力するinput系ボタン ）
--------------------------------------------------- */
.FormButton {
  white-space: nowrap;
  display: inline-block;
  cursor: pointer;
  text-align: center;
  position: relative;
  margin: 5px 10px;
}
    .FormButton .Label:hover:before{
      color: #fff;
    }
    .FormButton input{
      border: none;
      vertical-align: middle;
      cursor: pointer;
      display: inline-block;
      overflow: hidden;
      background: #444;
      color:#fff;
      border-radius: 5px;
      padding: 0.75em 1.5em;
      line-height: 1.25;
      min-width: 16em;
      -webkit-transition: 0.2s ease-in-out;
         -moz-transition-duration: 0.2s;
              transition-duration: 0.2s;
    }
    .FormButton input:hover{
      text-decoration: none;
      filter: brightness(.9);
    }
    
    .FormButton.CheckButton input,
    .FormButton.SendButton  input{
      background: #e33535;
    }

    /* アイコン位置 */
    .FormButton .Label:before{
      position: absolute;
      top: 50%;
      left: 0.8em;
      z-index: 10;
      margin-top: -0.4em;
      color: #fff;
      padding: 0;
    }
    .FormButton.CheckButton .Label:before,
    .FormButton.SendButton  .Label:before{
      left:  auto;
      right: 0.8em;
    }
    .FormButton input.NoIcon{
      padding: 0.4em 1.5em;
    }












/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   メニュー系 Setting                             */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */


/* 汎用メニュー
--------------------------------------------------- */

    /* MenuList */
    .MenuList{
      list-style: none;
    }
        .MenuList li{
        }
        .MenuList li a{
          display: inline-block;
          position: relative;
        }
        .MenuList li .Icon{
          color: #bba3ac;
        }
        .MenuList li a:hover .Icon,
        .MenuList li a:focus .Icon{
          color: #33f;
        }
    
    /* SnsList  */
    .MenuList.SnsList {
      margin: 0 0 1.5em;
    }
        .MenuList.SnsList li{
          
        }
        .MenuList.SnsList li a{
          display: inline-block;
          padding: 0 1.5em;
        }


/* BannerList
--------------------------------------------------- */
.BannerList{
  list-style: none;
  text-align: center;
}
    .BannerList li{
      margin: 0 0 0.75em;
    }
    .BannerList li,
    .BannerList li *{
      vertical-align: middle;
    }

            /* + + + + + レスポンシブ + + + + +  */
            
                /* bp2より狭いディスプレイ用 */
                html.rsbp-under-bp2 .BannerList li{
                  width: 46%;
                  margin: 0 0 2% 2%;
                  display: inline-block;
                }
                html.rsbp-under-bp2 .BannerList li img{
                  width: 100%;
                }






/* TabMenu （共通）
--------------------------------------------------- */

    /* - - list - - */
    .TabMenu ul{
      list-style: none;
      margin: 0 auto;
    }
    .TabMenu ul > li{
    
    }
    .TabMenu ul > li a{
      display: block;
      background: #fff;
      text-align: center;
      position: relative;
      margin: 5px;
      border: 1px solid #ccc;
      border-radius: 0.25em;
    }
    .TabMenu ul > li .Label{
      padding: 0.75em 1em;
      min-width: 8.5em;
    }
    .TabMenu ul > li .Label .Main{
      display: block;
      font-size: 100%;
      line-height: 1.5;
      letter-spacing: 0.05em;
      font-weight: 400;
    }
    .TabMenu ul > li .Label .Sub{
      display: block;
      font-size: 62.5%;
      line-height: 1.5;
      color: rgba(128,128,128,0.75);
      letter-spacing: 0.125em
    }
    /* hover */
    .TabMenu ul > li a::after{
      content: "";
      display: block;
      left:   0px;
      bottom: 0px;
      width: 100%;
      height: 1px;
      background: #1450b4;
      position: absolute;
          -webkit-transition: height .2s;
                  transition: height .2s;
    }
    .TabMenu ul > li:not(.Active) a:hover,
    .TabMenu ul > li:not(.Active) a:focus{
      cursor: pointer;
    }
    .TabMenu ul > li:not(.Active) a:hover::after{
      height: 6px;
    }


    /* Active */
    .TabMenu ul > li.Active{
    }
    .TabMenu ul > li.Active a{
      color: #fff;
      background: #1450b4;
    }



/* menu-trigger (開閉式メニュー)
--------------------------------------------------- */
.MenuTrigger{
  font-size: 62.5%;
  cursor: pointer;
}
    .menu-trigger {
      position: relative;
      -webkit-transition: all .2s;
              transition: all .2s;
      webkit-tap-highlight-color:rgba(0,0,0,0);
    }
    .menu-trigger span {
      transition: all .4s;
    }
    .menu-trigger .Icon,
    .menu-trigger .Label{
      display: block;
    }
    .menu-trigger .Label{
      text-align: center;
    }
    .menu-trigger .Icon{
      position: relative;
      width:  4em;
      height: 4em;
    }
    .menu-trigger .Icon span.Shape {
      display: inline-block;
      position: absolute;
      left:    0%;
      width: 100%;
      height: 4px;
      background-color: #000;
      background-color: #c81313;
    }
    .menu-trigger .Icon span.Shape:nth-of-type(1),
    .menu-trigger .Icon span.Shape:nth-of-type(2),
    .menu-trigger .Icon span.Shape:nth-of-type(3){
      margin-top: -2px;
    }
    .menu-trigger .Icon span.Shape:nth-of-type(1) {
      top: 20%;
    }
    .menu-trigger .Icon span.Shape:nth-of-type(2) {
      top: 50%;
    }
    .menu-trigger .Icon span.Shape:nth-of-type(3) {
      top: 80%;
    }
    /* hover */
    .menu-trigger:hover,
    .menu-trigger:focus {
      text-decoration: none;
    }
    .menu-trigger:hover span.Shape {
    }


    /* Active */
    .menu-trigger.Active .Icon span.Shape:nth-of-type(1) {
      -webkit-transform: rotate(-315deg);
              transform: rotate(-315deg);
      top: 50%;
    }
    .menu-trigger.Active .Icon span.Shape:nth-of-type(2) {
      opacity: 0;
    }
    .menu-trigger.Active .Icon span.Shape:nth-of-type(3) {
      -webkit-transform: rotate(315deg);
              transform: rotate(315deg);
      top: 50%;
    }






/* CustomGlobalMenu (グローバルメニュー：共通)
--------------------------------------------------- */
.CustomGlobalMenu{
  font-weight: 600;
}
    .CustomGlobalMenu ul{
      list-style: none;
    }
    .CustomGlobalMenu li,
    .CustomGlobalMenu li *{
      line-height: 1;
    }
    .CustomGlobalMenu li{
      font-size: 125%;
    }
    .CustomGlobalMenu li a{
      display: block;
      color: #333;
      background: #fff;
      border: 1px solid #ccc;
      position: relative;
      overflow: hidden;
      white-space: nowrap;
      -webkit-transition: background .2s;
              transition: background .2s;
    }
    .CustomGlobalMenu li a:hover{
      background: #eee;
      text-decoration: none;
    }
    .CustomGlobalMenu li a .Icon{
      display: inline-block;
      color: #c81313;
    }
    .CustomGlobalMenu li a .Label{
      display: block;
      text-align: left;
    }
            /* + + + + + レスポンシブ + + + + +  */
            
                /* bp2より狭いディスプレイ用 */
                html.rsbp-under-bp2 .CustomGlobalMenu{
                }
                    html.rsbp-under-bp2 .CustomGlobalMenu li:not(.JyukuOnly) a{
                      padding: 1.5em 1vw;
                      height: 4em;
                      padding-left: 12vw;
                    }
                    html.rsbp-under-bp2 .CustomGlobalMenu li:not(.JyukuOnly) a .Icon{
                      font-size: 7.5vw;
                      left: 2vw;
                    }
    
    
    
    /* 特殊処理：塾専用 */
    .CustomGlobalMenu li.JyukuOnly{
      font-size: 100%;
    }
        .CustomGlobalMenu li.JyukuOnly a{
          padding: 0em 1vw;
          padding: calc(0.875em - 4px) 1vw!important;
          color: #fff;
          background-color: #f54f21;
          background-image: linear-gradient( to bottom, rgba(245,113,33,1),  rgba(245,113,33,0));
          height: 4em;
        }
        .CustomGlobalMenu li.JyukuOnly a:hover{
          background-color: #e3581a;
          background-image: linear-gradient( to bottom, rgba(225,60,25,1),  rgba(225,60,25,1));
        }
            .CustomGlobalMenu li.JyukuOnly a .Icon{
              font-size: 1em;
              color: inherit;
            }
            .CustomGlobalMenu li.JyukuOnly a .Label{
              display: block;
              text-align: center;
            }
                .CustomGlobalMenu li.JyukuOnly a .Label .Sub{
                  font-size: 80%;
                  margin-bottom: 0.25em;
                  letter-spacing: 0.125em;
                  text-indent: 0.125em;
                  display: block;
                  font-weight: 400;
                }
                .CustomGlobalMenu li.JyukuOnly a .Label .Main{
                  display: inline-block;
                  letter-spacing: 0.125em;
                  text-indent: 0.125em;
                  padding: 0.25em 0.75em;
                  border: 2px solid;
                }


    
    
    
    /* 特殊処理：よくある質問 */
    .CustomGlobalMenu li.Faq{
      display: none;
    }
            /* + + + + + レスポンシブ + + + + +  */
            
                /* bp2より狭いディスプレイ用 */
                html.rsbp-under-bp2 #MainMenu .CustomGlobalMenu li.Faq{
                  display: block;
                }
                html.rsbp-under-bp2 #MainMenu .CustomGlobalMenu li.Faq  .Icon::before{
                  color: #c81313; /* 色設定を上書き */
                }






/* CustomGlobalMenu (グローバルメニュー：スマホのトップ用)
--------------------------------------------------- */
.MainImageArea .CustomGlobalMenu{
  display: none;
}

            /* + + + + + レスポンシブ + + + + +  */
            
                /* bp2より狭いディスプレイ用 */
                html.rsbp-under-bp2 .MainImageArea .CustomGlobalMenu{
                  box-shadow: 0 0 1em rgba(0,0,0,0.25);
                  list-style: none;
                  border: 1px solid #ccc;
                  border-top: none;
                  border-left: none;
                  display: block;
                }
                    html.rsbp-under-bp2 .MainImageArea .CustomGlobalMenu ul{
                      display: block;
                    }
                    html.rsbp-under-bp2 .MainImageArea .CustomGlobalMenu ul li{
                      width: 50%;
                      float: left;
                      font-size: 3.9vw;
                    }
                    html.rsbp-under-bp2 .MainImageArea .CustomGlobalMenu ul li a{
                      padding-left: 10vw;
                      border-bottom: none;
                      border-right: none;
                    }
                        html.rsbp-under-bp2 .MainImageArea .CustomGlobalMenu li a .Icon{
                        }
                        html.rsbp-under-bp2 .MainImageArea .CustomGlobalMenu li a .Label{
                          display: block;
                          text-align: center;
                          font-size: 100%;
                        }












/* BreadCrumb（パンくず）
--------------------------------------------------- */
.BreadCrumb {
  padding: 1.5em 0;
  font-size: 1.1rem;
}
    .BreadCrumb p{
      text-align: left;
      letter-spacing: -0.75em;
    }
    .BreadCrumb p > *{
      letter-spacing: 0;
    }
    .BreadCrumb p .Partition{
      padding: 0 0.5em;
      display: inline;
      opacity: 0.25;
      font-size: 87.5%;
    }
    /* Unit */
    .BreadCrumb p .Unit{
      text-align: left;
    }
    .BreadCrumb p a{
      color: inherit;
    }
    .BreadCrumb p a:hover,
    .BreadCrumb p a:focus{
      text-decoration: underline;
    }
    .BreadCrumb p .Unit.Last{
      font-weight: bold;
    }
    .BreadCrumb p .Unit.Home{
    }
    .BreadCrumb p .Unit.Home .Icon{
      color: #36f;
    }

            /* + + + + + レスポンシブ + + + + +  */
            
                /* bp2より狭いディスプレイ用 */
                html.rsbp-under-bp2 .BreadCrumb{
                  display: none;
                }






/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    pagination                                    */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */

/* pagination
--------------------------------------------------- */
.pagination{
  text-align: center;
  margin:  0.5em 0;
  font-size: 75%;
  letter-spacing: -0.5em;
}
    .pagination p{
      display: inline-block;
      padding: 0.25em 0.25em;
      border-radius: 0.5em;
      background: #ddd;
    }
    .pagination a{
      background-image: none;
      text-decoration: none!important;
    }
    .pagination a,
    .pagination a:hover,
    .pagination .disabled,
    .pagination .current{
      font-family: 'Arial';
      display: inline-block;
      text-align: center;
      vertical-align: middle;
      text-decoration: none;
      line-height: 2.0em;
      width: 2.0em;
      padding: 0;
      background: #fff;
      color: #333;
      margin: 3px;
      border-radius: 0.25em;
      letter-spacing: normal;
    }
    .pagination a:before{
      line-height: inherit;
    }
    .pagination a:hover,
    .pagination a:focus{
      background-color: #eee;
      text-decoration: none;
    }
    .pagination .current{
      color: #fff;
      background: #333;
    }
    .pagination .prev   a,
    .pagination .prev.disabled,
    .pagination .next   a,
    .pagination .next.disabled{
      width: 3em;
    }
    .pagination .disabled{
      opacity: 0.25;
    }



/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   effect                                         */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */

/* ブラー効果
--------------------------------------------------- */

    /* brightness */
    .Blur{
      -webkit-filter: blur(3px);
              filter: blur(3px);
    }




/* 各種hover効果
--------------------------------------------------- */


    /* hoverエフェクトにトランジションを定義 */
    .Button,
    .Icon,
    [class^="hvr-"],
    [class*=" hvr-"] {
      -webkit-transition: all .2s;
              transition: all .2s;
    }
    
    /* default */
    .hvr-default{
    }
        .hvr-default:hover{
        }

    /* push */
    .hvr-push{
      border: 1px solid #ccc;
      box-shadow: 0.25em 0.25em 0 rgba(0,0,0,0.05);
      position: relative;
      top: -0.25em;
      left: -0.25em;
    }
        .hvr-push:hover{
          box-shadow: 0em 0em 0 rgba(0,0,0,0.05);
          top: -0em;
          left: -0em;
        }

    /* zoom */
    .hvr-zoom{
      z-index: 10;
      display: inline-block;
    }
        .hvr-zoom:hover,
        .hvr-zoom:focus{
          position: relative;
          z-index: 15;
          -webkit-transform: scale(1.25);
                  transform: scale(1.25);
        }


    /* zoom を 子要素.Image内のimgに適用する */
    .hvr-childimg-zoom .Image{
      overflow: hidden;
      display: inline-block;
    }
        .hvr-childimg-zoom      .Image img{
          -webkit-transition: all .5s;
                  transition: all .5s;
          -webkit-transform: scale(1);
                  transform: scale(1);
          opacity: 1;
        }
        .hvr-childimg-zoom:hover .Image img{
          -webkit-transform: scale(1.125);
                  transform: scale(1.125);
          opacity: 1;
        }



    /* 点滅 */
    .richblink{
      -webkit-animation-duration: 1s;
              animation-duration: 1s;
      -webkit-animation-fill-mode: both;
              animation-fill-mode: both;
      -webkit-animation-iteration-count: infinite;
              animation-iteration-count: infinite;
      -webkit-animation-name: richblink;
              animation-name: richblink;
    }

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   link                                           */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */

/* anchor
--------------------------------------------------- */
a{
  text-decoration: none;
  color: inherit;
}
a:link {

}
a:visited {
}
a:active{
}
a:hover {
  text-decoration: underline;
}



/* リンク設置 画像
--------------------------------------------------- */
a img{
  -webkit-transition: all .1s;
          transition: all .1s;
}
a:hover img,
a:focus img{
          filter: brightness(1.1);
}



    /* - - 丸切り抜き + ボーダー装飾付き - - */
    a.Rounded{
      position: relative;
      display: block;
      padding: 0;
    }
        a.Rounded::before{
          content: "";
          display: block;
          border: 0.1em solid;
          position: absolute;
          left: -0.75em;
          top:  -0.75em;
          height: 100%;
          width: 100%;
          border-radius: 100%;
          -webkit-transition: all .1s;
                  transition: all .1s;
        }
        a.Rounded:hover::before{
          left: -0.1em;
          top:  -0.1em;
        }
        a.Rounded .Image{
          display:  block;
          overflow: hidden;
          border-radius: 100%;
        }




    /* 画像へのリンクなら「＋」を表示 */
    a.ImageLink{
      position: relative;
    }
        a.ImageLink::after{
          content: "拡大表示";
          font-size:  1.2rem;
          line-height: 2rem;
          width: 5em;
          border-radius: 2px;
          background: #328cdd;
          color: #fff;
          position: absolute;
          text-align: center;
          vertical-align: middle;
          z-index: 100;
          display: inline-block;
          bottom: -0.875em;
          right:  -5px;
          opacity: 1;
              -webkit-transition: all .1s;
                      transition: all .1s;
        }
        a.ImageLink:hover::after,
        a.ImageLink:focus::after{
          opacity: 1;
          right:  -1em;
          background: #1199ff;
        }
            /* + + + + + レスポンシブ + + + + +  */

                /* bp2より狭いディスプレイ用 */
                html.rsbp-under-bp2 a.ImageLink::after{
                  font-size: 80%;
                }



    /* - - 画像へのリンクに枠装飾 - - */
    a.ImageLink{
      position: relative;
      display: block;
      display: inline-block;
      padding: 0;
    }
        a.ImageLink::before{
          content: "";
          display: block;
          border: 1px solid  #1199ff;
          position: absolute;
          z-index: 100;
          left: -1.5em;
          top:  -1.5em;
          height: 100%;
          width:  100%;
          height: calc(100% + 1em);
          width:  calc(100% + 1em);
          border-radius: 4px;
          -webkit-transition: all .1s;
                  transition: all .1s;
         opacity: 0;
        }
        a.ImageLink:hover::before,
        a.ImageLink:focus::before{
          left: -0.5em;
          top:  -0.5em;
          opacity: 1;
        }
        a.ImageLink .Image{
          display:  block;
        }




/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   アイコン 等                                    */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */

/* アイコンに下線が付くのを回避 */
.Icon,
.Icon::before{
  text-decoration: none!important;
}



.Icon.icon-help-circled::before {
  color: #4b4;
  color: #339;
}

/* icon position left  */
.icon-pos-left{
  position: absolute;
  left: 0.5em;
  right: auto;
  top: 50%;
  margin: 0;
  margin-top: -0.5em;
}
[class^="icon-"].icon-pos-left:before,
[class*=" icon-"].icon-pos-left:before {
  margin: 0;
}
/* icon position right  */
.icon-pos-right{
  position: absolute;
  left: auto;
  right: 0.5em;
  top: 50%;
  margin: 0;
  margin-top: -0.5em;
}
[class^="icon-"].icon-pos-right:before,
[class*=" icon-"].icon-pos-right:before {
  margin: 0;
}


/* icon position bottom */
.icon-pos-bottom{
  position: absolute;
  left:  50%;
  bottom: 0.25em;
  margin: 0;
  margin-left: -0.5em;
}
[class^="icon-"].icon-pos-bottom:before,
[class*=" icon-"].icon-pos-bottom:before {
}


/* icon position top */
.icon-pos-top{
  padding-top: 1em;
  display: block;
}
.icon-pos-top.FontSizeXLarge{
  font-size: 300%;
  padding-bottom: 0.125em;
  margin-bottom:  0.25em;
  border-bottom: 1px solid rgba(125,125,125,0.5);
}
[class^="icon-"].icon-pos-top:before,
[class*=" icon-"].icon-pos-top:before {
  display: block;
  text-align: center;
  margin: 0 auto 0.25em;
}

/* 特殊なアイコン用のスタイル */
.icon-file-pdf::before,
.icon-file-excel::before,
.icon-file-word::before,
.icon-file-image::before,
.icon-file-archive::before{
  width: 1em;
  line-height: 1em;
}

    .icon-file-pdf::before {
      color:      #bb0708!important;
    }
    .icon-file-excel::before {
      color:      #12824b!important;
    }
    .icon-file-word::before {
      color:      #3b67a7!important;
    }
    .icon-file-image::before {
      color:      #fff!important;
    }
    .icon-file-archive::before {
      color:      #30b4df!important;
    }

    /* アイコンの色調整 .TextList を上書き */
    .SknTplTextList ul.TextList > li .Icon.icon-file-pdf::before{
      color:      #ffffff!important;
      background: #ee0708!important;
    }
    .SknTplTextList ul.TextList > li .Icon.icon-file-excel::before{
      color:      #ffffff!important;
      background: #12824b!important;
    }
    .SknTplTextList ul.TextList > li .Icon.icon-file-word::before{
      color:      #ffffff!important;
      background: #3b67a7!important;
    }
    .SknTplTextList ul.TextList > li .Icon.icon-file-archive::before {
      color:      #ffffff!important;
      background: #30b4df!important;
    }




/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   Table Setting                                  */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */

/* DefaultTable
--------------------------------------------------- */
.DefaultTable{
  margin: 2em auto;
  width: 100%;
  text-align: left;
  border-collapse: collapse;
  background: #fff;
}
    .DefaultTable caption{
      padding: .25em 0;
    }
    .DefaultTable th,
    .DefaultTable td{
      padding: 1.0em 15px;
      border: 1px solid #ddd;
      font-weight: normal;
      line-height: 1.75;
    }
    /* thead */
    .DefaultTable thead{
      font-size: smaller;
    }
    .DefaultTable thead th{
      text-align: center;
      font-weight: normal;
      background: #eef;
      border: 1px solid #ccc;
      padding: 0.5em 0;
    }
    /* tbody */
    .DefaultTable tbody{
    }
    .DefaultTable tbody th{
      color: #555;
      background: #f9f9f9;
      background: rgba(30,60,120,0.05);
      text-align: center;
      width: 30%;
    }
    .DefaultTable tbody td{

    }
    /* tfoot */
    .DefaultTable tfoot{
    }





/* KamokuTable（ 「対象学年・科目」専用テーブル組み ）
--------------------------------------------------- */
.KamokuTable{
}
    .KamokuTable{
      width: 100%;
      border-collapse: collapse;
      margin: 0 auto;
    }
    /* common */
    .KamokuTable tr{
    }
    .KamokuTable th,
    .KamokuTable td{
      padding: 1em 1em;
      padding: 0.375em 0.5em;
      border:  1px solid rgba(120,100,90,0.25);
      text-align: center;
    }
    .KamokuTable th{
      text-align: center;
      font-weight: 500;
    }
    .KamokuTable td{
      background: #fff;
    }
    
    /* thead */
    .KamokuTable thead{
    
    }
    .KamokuTable thead th{
      line-height: 1.125;
      padding: 0.875em 0.5em;
      border: 1px solid;
      text-align: center;
      font-size: smaller;
      color: #fff;
      background: #49d;
    }
    .KamokuTable thead th:first-child{
    }
    /* tbody */
    .KamokuTable tbody{
    }
    .KamokuTable tbody th{
      background: rgba(120,100,90,0.125);
    }
    .KamokuTable tbody td{
    }
            /* + + + + + レスポンシブ + + + + +  */

                /* bp2より広いディスプレイ用 */
                html.rsbp-over-bp2 .KamokuTable tbody th{
                  width: 20%;
                }
                html.rsbp-over-bp2 .KamokuTable tbody td{
                  width: 13.33%;
                }

                /* bp2より狭いディスプレイ用 */
                html.rsbp-under-bp2 .KamokuTable thead th{
                  width: 23%;
                }
                html.rsbp-under-bp2 .KamokuTable thead th:first-child{
                  width: 31%;
                }
                html.rsbp-under-bp2 .KamokuTable tbody th{
                  height: 3.5em;
                  white-space: nowrap;
                }




/* GakkuTable（ 「学区」専用テーブル組み ）
--------------------------------------------------- */
.GakkuTable {
  border-collapse: collapse;
  width: 100%;
}
.GakkuTable.LargeTable {
  border: 1px solid #00b8e6;
}
    .GakkuTable th,
    .GakkuTable td {
      border: 1px solid #00b8e6;
      padding: 0.375em 0.5em;
      line-height: 1.75;
    }
    .GakkuTable thead th {
      color: #fff;
      background-color: #00b8e6;
      text-align: center;
      border-right: 1px solid #0090d1;
    }
    .GakkuTable thead th:last-child {
      border-right: none;
    }
    .GakkuTable th {
      color: #369;
      background-color: #c6eafa;
      padding-left: 0.1em;
      padding-right: 0.1em;
      text-align: center;
    }
    .GakkuTable td.empty {
      border: none;
    }
            /* + + + + + レスポンシブ + + + + +  */

                /* bp2より狭いディスプレイ用 */
                html.rsbp-under-bp2 .GakkuTable{
                  max-width: 500px;
                }
                html.rsbp-under-bp2 .GakkuTable th,
                html.rsbp-under-bp2 .GakkuTable td{
                  padding: 0.25em 0.5em;
                  font-size: 87.5%;
                }
                html.rsbp-under-bp2 .ColumnGroup .GakkuTable th,
                html.rsbp-under-bp2 .ColumnGroup .GakkuTable td{
                  padding: 0.25em 0.25em;
                }
                html.rsbp-under-bp2 .ColumnGroup .GakkuTable th{
                  font-size: 75%;
                }




/* GoukakuFlowTable（ 「出願から合格まで」専用テーブル組み ）
--------------------------------------------------- */
.GoukakuFlowTable {
  display: block;
  width: 100%;
  /*font-size: 112.5%;*/
  font-size: 106.25%;
}
    .GoukakuFlowTable tr {
      display: block;
    }
    .GoukakuFlowTable th,
    .GoukakuFlowTable td {
      border: 2px solid #f90;
      border-top: none;
      display: block;
      position: relative;
    }
        .GoukakuFlowTable tr:not(:last-child) td::after {
          content: "";
          position: absolute;
          top: 100%;
          left: 50%;
          margin-left: -1.5em;
          border:       1.5em solid transparent;
          border-bottom-color: transparent!important;
          border-left-color:   transparent!important;
          border-right-color:  transparent!important;
          border-top-color:    #f90;
        }
    .GoukakuFlowTable th {
      margin-top: 1.5em;
      padding: 0.25em 0.75em;
      text-align: left;
      vertical-align: middle;
      color: #fff;
      font-size: 100%;
      background-image: linear-gradient( to bottom, #f90 25%, #ef9235 75%, #ef9235 100%);
      background: #f90;
    }
    .GoukakuFlowTable th .Heading{
      margin: 0!important;
      font-size: 125%;
    }
        .GoukakuFlowTable th .Heading .Icon{
          background: #444;
          line-height: 1.5em;
          width: 1.5em;
          width: calc(1.5em + 4px);
          text-align: center;
          border-radius: 100%;
          position: relative;
          left: -0.75em;
          color: #fc3;
          border: 2px solid #fc3;
          transform: scale(1.5);
        }
    .GoukakuFlowTable td {
      vertical-align: top;
      padding: 2.5em;
    }
    .GoukakuFlowTable td .Heading{
      margin-bottom: 0.75em;
    }
    .GoukakuFlowTable td a{
      color: #00f;
      text-decoration: underline;
    }

            /* + + + + + レスポンシブ + + + + +  */

                /* bp2より狭いディスプレイ用 */
                html.rsbp-under-bp2 .GoukakuFlowTable  {
                  /*font-size: 87.5%;*/
                  font-size: 93.75%;
                }
                html.rsbp-under-bp2 .GoukakuFlowTable td {
                  padding: 25px;
                }
                html.rsbp-under-bp2 .GoukakuFlowTable th{
                  padding: 0.25em 0.5em;
                  font-size: 100%;
                }

            /* - - th カラーをグラデーションにする - - */
            
            /* 1セット */
            .GoukakuFlowTable tbody tr:nth-child(3) th {
              background:   #f80;
            }
            .GoukakuFlowTable tbody tr:nth-child(3) th,
            .GoukakuFlowTable tbody tr:nth-child(4) td,
            .GoukakuFlowTable tbody tr:nth-child(4) td::after {
              border-color: #f80;
            }
            /* 1セット */
            .GoukakuFlowTable tbody tr:nth-child(5) th {
              background:   #f70;
            }
            .GoukakuFlowTable tbody tr:nth-child(5) th,
            .GoukakuFlowTable tbody tr:nth-child(6) td,
            .GoukakuFlowTable tbody tr:nth-child(6) td::after {
              border-color: #f70;
            }
            /* 1セット */
            .GoukakuFlowTable tbody tr:nth-child(7) th {
              background:   #f60;
            }
            .GoukakuFlowTable tbody tr:nth-child(7) th,
            .GoukakuFlowTable tbody tr:nth-child(8) td,
            .GoukakuFlowTable tbody tr:nth-child(8) td::after {
              border-color: #f60;
            }
            /* 1セット */
            .GoukakuFlowTable tbody tr:nth-child(9) th {
              background:   #f50;
            }
            .GoukakuFlowTable tbody tr:nth-child(9)  th,
            .GoukakuFlowTable tbody tr:nth-child(10) td,
            .GoukakuFlowTable tbody tr:nth-child(10) td::after {
              border-color: #f50;
            }

    /* [調査書]用の追加スタイル */
    .GoukakuFlowTable .DecoratedBox{
      margin: 1em -1.5em -1.5em!important;
      
    }
        .GoukakuFlowTable .DecoratedBox .inner .Heading.Cyosasyo{
          display: block;
          text-align: center;
          min-width: 10em;
          margin: 0 auto 1em;
          padding: 0 0 0.5em;
          background: none;
          border-bottom: 1px solid;
          font-size: 137.5%;
          letter-spacing: 0.1em;
        }
        .GoukakuFlowTable .DecoratedBox .Heading.Cyosasyo .Icon{
          transform: scale(1.25);
        }
        .GoukakuFlowTable .DecoratedBox .Heading.Type6{
          margin-bottom: 0.25em;
          
        }
            /* + + + + + レスポンシブ + + + + +  */

                /* bp2より狭いディスプレイ用 */
                html.rsbp-under-bp2 .DecoratedBox .inner .Heading.Cyosasyo{
                  font-size: 112.5%;
                }


/* ExamResultTable（ 「合否の決まり方」専用テーブル組み ）
--------------------------------------------------- */
.ExamResultTable{
  border: 1px solid #00b8e6;
  border-collapse: collapse;
  width: 100%;
  /*font-size: 112.5%;*/
  font-size: 106.25%;
}
    .ExamResultTable th,
    .ExamResultTable td {
      padding: 1.5em;
    }
    .ExamResultTable th {
      
      border: 1px solid #00b8e6;
    }
        .ExamResultTable td .Heading{
          margin-bottom: 0.75em;
        }
        .ExamResultTable td .Heading.Type7{
          padding: 0.25em 0.5em;
          margin: 1em 0!important;
        }
    .ExamResultTable td a{
      color: #00f;
      text-decoration: underline;
    }
    html.ie .ExamResultTable td a.ImageLink{
      max-width: 700px;
    }
    
                /* + + + + + レスポンシブ + + + + +  */
                
                    /* bp2より狭いディスプレイ用 */
                    html.rsbp-under-bp2 .ExamResultTable{
                      /*font-size: 87.5%;*/
                      font-size: 93.75%;
                    }
                    html.rsbp-under-bp2 .ExamResultTable th{
                      padding: 0.375em;
                    }
                    html.rsbp-under-bp2 .ExamResultTable td{
                      padding: 0.75em;
                    }

                    html.ie.rsbp-under-bp2 .ExamResultTable td a.ImageLink{
                      max-width: 300px;
                    }



    /* 内側（ネスト）のテーブル */
    .ExamResultTable table{
      border-collapse: collapse;
      margin: 0.75em 0;
      border: 1px solid;
      width: 100%;
      overflow: auto;
    }
    .ExamResultTable table th,
    .ExamResultTable table td{
      padding: 0.125em;
      border: 1px solid;
    }
    .ExamResultTable table thead th{
      text-align: center;
    }
    .ExamResultTable table tbody th,
    .ExamResultTable table tbody td{
      border-bottom: none;
      border-top: none;
    }
                /* + + + + + レスポンシブ + + + + +  */
                
                    /* bp2より狭いディスプレイ用 */
                    html.rsbp-under-bp2 .ExamResultTable table{
                    }


        /* ボーダー無し */
        .ExamResultTable table.NoBorder,
        .ExamResultTable table.NoBorder th,
        .ExamResultTable table.NoBorder td{
          border: none;
        }


        /* 折り返し無し */
        .ExamResultTable table.NoWrap th,
        .ExamResultTable table.NoWrap td{
          white-space: nowrap;
        }

                /* + + + + + レスポンシブ + + + + +  */
                
                    /* bp2より狭いディスプレイ用 */
                    html.rsbp-under-bp2 .ExamResultTable table.SimpleResponsive tr{
                      margin-bottom: 2px;
                    }
                    html.rsbp-under-bp2 .ExamResultTable table.SimpleResponsive tr,
                    html.rsbp-under-bp2 .ExamResultTable table.SimpleResponsive th,
                    html.rsbp-under-bp2 .ExamResultTable table.SimpleResponsive td{
                      display: block;
                      white-space: normal;
                    }
                    html.rsbp-under-bp2 .ExamResultTable table.SimpleResponsive th,
                    html.rsbp-under-bp2 .ExamResultTable table.SimpleResponsive td{
                      padding: 0.25em;
                      white-space: nowrap;
                    }


        /* スマホでth,tdをdisplay:block */
        .ExamResultTable table{
        }

        /* スクロール対応テーブル */
        .ExamResultTable {
        }
                    /* bp2より狭いディスプレイ用 */
                    html.rsbp-under-bp2 .ExamResultTable .Scrollable{
                      max-width: 250px;
                      max-width: 72.5vw;
                    }
                    html.rsbp-under-bp2 .ExamResultTable .Scrollable table{
                      width: auto;
                    }




/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   Column Setting                                 */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */

/* ColumnGroup
--------------------------------------------------- */
.ColumnGroup{
  text-align: center;
  letter-spacing: -0.5em; /* 余白を除去するためletter-spacing */
  margin: 0 -10px;
}
    /* - - column common - -  */
    .ColumnGroup > .Column{
      width: 100%;
      margin: 0 auto 2em;
      /*margin: 0 auto;*/
      /*max-width: 380px;*/
      display: inline-block;
      vertical-align: top;
    }
    .ColumnGroup > *{
      letter-spacing: 0; /* letter-spacing をデフォルトに戻す */
    }
    .ColumnGroup > * > .inner{
      padding: 10px;
    }
    .ColumnGroup.FixedNumber {
    /*  white-space: nowrap;*/
    }
    .ColumnGroup.FixedNumber  > * > .inner{
      white-space: normal;
    }
            /* + + + + + レスポンシブ + + + + +  */

                /* bp2より狭いディスプレイ用 */
                html.rsbp-under-bp2 .ColumnGroup{
                  margin: 0 -5px;
                }
                html.rsbp-under-bp2 .ColumnGroup > * > .inner{
                  padding: 5px;
                }
    
    /* 要素数をクラス名に持たせて自動配置 ※ulにクラス名をつけて使用  */
    /* ColumnGroup（数字）elements が横並び数                         */
    /* FixedNumber をつけた場合は数を固定。それ以外は幅に応じて変化   */
    
    /* - - two columns - - */
    html.rsbp-under-bp2              .ColumnGroup4elements >             .Column:nth-child(1n),
    html.rsbp-over-bp2               .ColumnGroup2elements >             .Column:nth-child(1n),
    html:not([class*="rsbp"])        .ColumnGroup2elements >             .Column:nth-child(1n),
    html[class*="rsbp"]              .ColumnGroup2elements.FixedNumber > .Column:nth-child(1n) {
      width: 50%;
      margin-bottom: 0;
    }


    /* - - three columns - - */
    html.rsbp-under-bp2              .ColumnGroup6elements >             .Column:nth-child(1n),
    html.rsbp-under-bp2              .ColumnGroup5elements >             .Column:nth-child(1n),
    html.rsbp-over-bp2               .ColumnGroup3elements >             .Column:nth-child(1n),
    html:not([class*="rsbp"])        .ColumnGroup3elements >             .Column:nth-child(1n),
    html[class*="rsbp"]              .ColumnGroup3elements.FixedNumber > .Column:nth-child(1n) {
      width: 33.3%;
      margin-bottom: 0;
    }

    /* - - four columns - - */
    html.rsbp-over-bp2               .ColumnGroup4elements >             .Column:nth-child(1n),
    html:not([class*="rsbp"])        .ColumnGroup4elements >             .Column:nth-child(1n),
    html[class*="rsbp"]              .ColumnGroup4elements.FixedNumber > .Column:nth-child(1n) {
      width: 25%;
      margin-bottom: 0;
    }

    /* - - five columns - - */
    html.rsbp-over-bp2               .ColumnGroup5elements >             .Column:nth-child(1n),
    html:not([class*="rsbp"])        .ColumnGroup5elements >             .Column:nth-child(1n),
    html[class*="rsbp"]              .ColumnGroup5elements.FixedNumber > .Column:nth-child(1n) {
      width: 20%;
      margin-bottom: 0;
    }

    /* - - six columns - - */
    html.rsbp-over-bp2               .ColumnGroup6elements >             .Column:nth-child(1n),
    html:not([class*="rsbp"])        .ColumnGroup6elements >             .Column:nth-child(1n),
    html[class*="rsbp"]              .ColumnGroup6elements.FixedNumber > .Column:nth-child(1n) {
      width: 16.6%;
      margin-bottom: 0;
    }





/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   FlexParent (flex段組み)                        */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
.FlexParent{
  display: -webkit-flex;
  display:     -ms-flex;
  display:         flex;
 -webkit-flex-wrap: nowrap;
     -ms-flex-wrap: nowrap;
         flex-wrap: nowrap;
 -webkit-justify-content: center;
     -ms-justify-content: center;
         justify-content: center;
}
.FlexParent.AllowWrap{
 -webkit-flex-wrap: wrap;
     -ms-flex-wrap: wrap;
         flex-wrap: wrap;
}

/* PCは横並び、SPは縦並び　を自動で */
.FlexParent.AutoDirection{
}
            /* + + + + + レスポンシブ + + + + +  */

                /* bp2より広いディスプレイ用 */
                html.rsbp-over-bp2 .FlexParent.AutoDirection{
                  -webkit-box-orient: horizontal;
                  -webkit-box-direction: normal;
                     -ms-flex-direction: row;
                         flex-direction: row;
                }

                /* bp2より狭いディスプレイ用 */
                html.rsbp-under-bp2 .FlexParent.AutoDirection{
                  -webkit-box-orient: vertical;
                  -webkit-box-direction: normal;
                     -ms-flex-direction: column;
                         flex-direction: column;
                }



/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   Other Setting                                  */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */

/* GoogleMap
--------------------------------------------------- */
.GoogleMap{
  outline: 5px solid #fff;
}






/* Scrollable 横スクロール (bp2より狭いディスプレイ用)
--------------------------------------------------- */
body .Scrollable {
  overflow: auto;
  position: relative;
  margin-bottom: 1em;
}
            /* + + + + + レスポンシブ + + + + +  */

                /* bp2より広いディスプレイ用 */
                html.rsbp-over-bp2 .Scrollable {
                }
                    html.rsbp-over-bp2 .Scrollable .ScrollableIcon{
                      display: none!important;
                    }
                
                /* bp2より狭いディスプレイ用 */
                html.rsbp-under-bp2 .Scrollable {
                /*  white-space: nowrap;*/
                }
                    html.rsbp-under-bp2 .Scrollable .TextItem *{
                      white-space:  normal;
                    }
                    /* Table用の特殊処理 */
                    html.rsbp-under-bp2 .Scrollable > table {
                      width: 660px; /* ここはスクロール対象の最大幅を入れる */
                      margin-bottom: 0!important;
                    }
                            html.rsbp-under-bp2 .Scrollable > table.AutoWrap {
                              width: auto;
                            }
                            html.rsbp-under-bp2 .Scrollable > table.AutoWrap thead th{
                              padding: 0.5em;
                            }
                            html.rsbp-under-bp2 .Scrollable > table.AutoWrap .vertical-rl-narrow {
                              line-height: 1em;
                              display: inline-block;
                              width: 1em;
                              white-space: normal;
                            }
                    html.rsbp-under-bp2 .Scrollable th{
                      white-space: nowrap;
                    }
                    /* スクロールバー装飾 */
                    html.rsbp-under-bp2 .Scrollable::-webkit-scrollbar{
                      height: 4px;
                      margin-top: 5px;
                    }
                    html.rsbp-under-bp2 .Scrollable::-webkit-scrollbar-track{
                      background: rgba(0,0,0,0.25);
                    }
                    html.rsbp-under-bp2 .Scrollable::-webkit-scrollbar-thumb {
                      background: #03c;
                    }
                    /* アイコン */
                    html.rsbp-under-bp2 .Scrollable .ScrollableIcon{
                      position: absolute;
                      top: 40%;
                      left: 175px;
                      z-index: 10;
                      padding: 28px 25px;
                      border-radius: 100%;
                      background: rgba(255,255,255,0.95);
                      box-shadow: 0 0 20px 0 rgba(0,0,0,0.25);
                      display: inline-block;
                    }
                    html.rsbp-under-bp2  .Scrollable:hover .ScrollableIcon{
                      display: none;
                    }
                    html.rsbp-under-bp2  .Scrollable .ScrollableIcon img{
                      width: 60px;
                    }





/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   自動ページリスト                               */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */


    /* ページリスト */
    .DefaultBlock .PageList {
      width:   100%;
      list-style: none;
      display: -webkit-flex;
      display:     -ms-flex;
      display:         flex;
     -webkit-flex-wrap: nowrap;
         -ms-flex-wrap: nowrap;
             flex-wrap: nowrap;
     -webkit-justify-content: center;
         -ms-justify-content: center;
             justify-content: center;
      margin: 0;
    }
    .DefaultBlock .PageList li{
      display: inline-table;
      position: relative;
      height: 4em;
      width: 20%;
      font-weight: 700;
      line-height: 1.2;
      text-align: center;
      border-right: 1px solid #bbb;
    }
    .DefaultBlock .PageList.has4elements li{
      width: 25%;
    }
    .DefaultBlock .PageList.has5elements li{
      width: 20%;
    }

    .DefaultBlock .PageList li:last-child{
      border-right: none;
    }
    .DefaultBlock .PageList li a{
      display: block;
      text-align: center;
      display: table-cell;
      height: 100%;
      width:  100%;
      vertical-align: middle;
      padding: 1.25em 0.5em;
    }

    .DefaultBlock .PageList li a::after{
      content: '';
      display: block;
      position: absolute;
      bottom: 5%;
      left: calc(50% - 7px);
      width:  10px;
      height: 10px;
      color: #e0e0e0;
      border-right: 2px solid currentColor;
      border-bottom: 2px solid currentColor;
      transform: scale(1, 0.8) rotate(45deg);
      margin: 0 auto;
          -webkit-transition: all .2s;
                  transition: all .2s;
    }
    .DefaultBlock .PageList li a:hover{
      text-decoration: none;
      color: #339;
    }
    .DefaultBlock .PageList li a:hover::after{
      bottom: 1%;
      color: #00abeb;
    }
    /*
    .DefaultBlock .PageList li.current a{
      text-decoration: none;
      color: #339;
    }
    .DefaultBlock .PageList li.current a::after{
      color: #339;
      bottom: 1%;
    }
    */




/* タブで切り替えるページ
--------------------------------------------------- */
.AutoTabParagraph {
}
    .AutoTabParagraph .ParagraphHeader{
      /*
      position: -webkit-sticky;
      position:         sticky;
      top: 0px;
      */
      background: rgba(255,255,255,0.9);
      z-index: 150;
      padding: 15px;
      padding-bottom: 0;
      /*
          -webkit-transition: all .2s;
                  transition: all .2s;
      */
    }
    .AutoTabParagraph .ParagraphHeader:hover{
      background: #fff;
    }
    .AutoTabParagraph .ParagraphContents{
      padding-top: 2em;
    }
            .AutoTabParagraph .PageList{
             -webkit-flex-wrap: wrap;
                 -ms-flex-wrap: wrap;
                     flex-wrap: wrap;
            }
            .AutoTabParagraph .PageList li.current a{
              color: #339;
            }
            .AutoTabParagraph .PageList li.current a::after{
              display: none;
            }
                /* + + + + + レスポンシブ + + + + +  */
                
                    /* bp2より広いディスプレイ用 */
                    html.rsbp-over-bp2 .AutoTabParagraph .PageList li a{
                      font-size: 93.75%;
                      padding-left:  0.25em;
                      padding-right: 0.25em;
                    }
                    /* bp2より狭いディスプレイ用 */
                    html.rsbp-under-bp2 .AutoTabParagraph .ParagraphHeader{
                      padding: 0 0;
                    }
                    html.rsbp-under-bp2 .AutoTabParagraph .PageList{
                      padding: 10px;
                      background: #dceef8;
                    }
                    html.rsbp-under-bp2 .AutoTabParagraph .PageList li{
                      borde: none;
                      width: 100%;
                      text-align: left;
                      margin: 0.25em auto;
                      border: none;
                    }
                    html.rsbp-under-bp2 .DefaultBlock .PageList li:last-child{
                    }
                    html.rsbp-under-bp2 .AutoTabParagraph .PageList li a{
                      font-size: 93.75%;
                      padding: 0.5em 0.25em;
                      padding-left: 5vw;
                      text-align: left;
                      background: #fff;
                      border-radius: 0.5em;
                      border: none;
                      box-shadow: 0.25em 0.25em 0.05em #bbd8e8;
                      color: #326ec3;
                    }
                    html.rsbp-under-bp2 .AutoTabParagraph .PageList li.current a{
                      background: #f0f0ff;
                    }
                    html.rsbp-under-bp2 .AutoTabParagraph .PageList li a::after{
                      transform: rotate(-45deg);
                      bottom: calc(50% - 7px);
                      left: auto;
                      right: 5vw;
                      
                      color: #326ec3;
                    }



/* スクロールで見せる連続ページ
--------------------------------------------------- */
.ScrollingPageParagraph {
}
    .ScrollingPageParagraph .ParagraphHeader{
      position: -webkit-sticky;
      position:         sticky;
      top: 0px;
      background: rgba(255,255,255,0.9);
      z-index: 150;
      padding: 15px;
          -webkit-transition: all .2s;
                  transition: all .2s;
    }
    .ScrollingPageParagraph .ParagraphHeader:hover{
      background: #fff;
    }
    .ScrollingPageParagraph .ParagraphContents{
      padding-top: 2em;
    }
    
                /* + + + + + レスポンシブ + + + + +  */
                
                    /* bp2より狭いディスプレイ用 */
                    html.rsbp-under-bp2 .ScrollingPageParagraph .ParagraphHeader{
                      padding: 0 0;
                    }
                    html.rsbp-under-bp2 .ScrollingPageParagraph .PageList li a{
                      font-size: 75%;
                      padding: 0.75em 0.25em;
                    }

    
    /* ページ１つぶん */
    .ScrollingPageParagraph .IncludedPage{
      margin-bottom: 5em;
    }
    .ScrollingPageParagraph .IncludedPage:last-child{
      margin-bottom: 0em;
    }

/* ページ内ジャンプ用のアンカー（ヘッダ固定だとずれる分を調整） */
.page-anchor{
  margin-top: calc(-4em - 30px); /* pageListと高さをあわせること */
  padding-top: calc(4em + 30px);  /* pageListと高さをあわせること */
}






/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   出題範囲専用（org SGM,  arrange sysken )       */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */


/*ボックス全体*/
.inc_hani .accbox1,
.inc_hani .accbox2,
.inc_hani .accbox3
{
    margin: 2em 0;
    padding: 0;
    max-width: 800px;/*最大幅*/
}

/*ラベル*/
.inc_hani .accbox1 label,
.inc_hani .accbox2 label,
.inc_hani .accbox3 label
{
    display: block;
    margin: 1.5px 0;
    padding : 11px 12px;
    /* color :#2f8fcf; */
    font-weight: bold;
    /* background :#a4cbf3; */
    cursor :pointer;
    /* transition: all 0.5s; */
	border: solid 1px #cccccc;
	width:100%;
	position: relative;
}

.inc_hani .accbox1 label:after,
.inc_hani .accbox2 label:after,
.inc_hani .accbox3 label:after
{
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	width: 6px;
	height: 6px;
	margin: -4px 0 0 0;
	border-top: solid 2px #c72e2e;
	border-right: solid 2px #c72e2e;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}

/*ラベルホバー時*/
.inc_hani .accbox1 label:hover,
.inc_hani .accbox2 label:hover,
.inc_hani .accbox3 label:hover
{
    /* background :#85baef; */
    background :#e6f8ff;
}

/*チェックは隠す */
.inc_hani .accbox1 input,
.inc_hani .accbox2 input,
.inc_hani .accbox3 input
{
    display: none;
}

/*中身を非表示にしておく(メンテ画面で消えないように .BlockContents  をセレクタに付加) */
.BlockContents .inc_hani .accbox1 .accshow1,
.BlockContents .inc_hani .accbox2 .accshow2,
.BlockContents .inc_hani .accbox3 .accshow3
{
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    /* transition: 0.8s; */
}

/*クリックで中身表示*/

.inc_hani .cssacc1:checked + .accshow1,
.inc_hani .cssacc2:checked + .accshow2,
.inc_hani .cssacc3:checked + .accshow3
{
    height: auto;
    padding: 5px;
    /* background: #eaeaea; */
    background: #ffffff;
    opacity: 1;
}



/*table（共通）*/
.inc_hani table {
	border-collapse: collapse;
	width:100%;
}
.inc_hani table th {
	padding:5px 20px 5px 20px;
	height:40px;
	text-align:center;
	vertical-align:middle;
	font-weight:normal;
}
.inc_hani table td {
	padding:5px 20px 5px 20px;
	height:40px;
	text-align:left;
	vertical-align:middle;
	background-color:#ffffff;
}
.inc_hani table th.w70 {
	width:70px;
}
.inc_hani table th.w140 {
	width:140px;
}


                /* + + + + + レスポンシブ + + + + +  */
                
                    /* bp2より狭いディスプレイ用 */
                    html.rsbp-under-bp2 .inc_hani table th.w70 {
                      width: 40px;
                    }
                    html.rsbp-under-bp2 .inc_hani table th.w140 {
                      width: 80px;
                    }

/*table（バリエーション）*/
.inc_hani table.pink {
	border: solid 1px #f171ab;
}
.inc_hani table.pink th {
	border: solid 1.5px #f171ab;
	background-color:#fce9f1;
}
.inc_hani table.pink td {
	border: solid 1.5px #f171ab;
}

.inc_hani table.green {
	border: solid 1px #8bc63e;
}
.inc_hani table.green th {
	border: solid 1.5px #8bc63e;
	background-color:#e4f0d4;
}
.inc_hani table.green td {
	border: solid 1.5px #8bc63e;
}

.inc_hani table.blue {
	border: solid 1px #1fb0e6;
}
.inc_hani table.blue th {
	border: solid 1.5px #1fb0e6;
	background-color:#c6eafa;
}
.inc_hani table.blue td {
	border: solid 1.5px #1fb0e6;
}

.inc_hani table.orange {
	border: solid 1px #f9a51b;
}
.inc_hani table.orange th {
	border: solid 1.5px #f9a51b;
	background-color:#fee5ca;
}
.inc_hani table.orange td {
	border: solid 1.5px #f9a51b;
}

.inc_hani table.purple {
	border: solid 1px #717dbd;
}
.inc_hani table.purple th {
	border: solid 1.5px #717dbd;
	background-color:#e0dfef;
}
.inc_hani table.purple td {
	border: solid 1.5px #717dbd;
}


                /* + + + + + レスポンシブ + + + + +  */
                
                    /* bp2より狭いディスプレイ用 */
                    html.rsbp-under-bp2 .inc_hani table th{
                      padding: 5px;
                    }
                    html.rsbp-under-bp2 .inc_hani table td{
                      padding: 5px;
                    }



.inc_hani p.guide {
	width:100%;
	/*text-align:right;*/
	margin-right:20px;
	font-size:0.6em;
	font-size: 75%;
}

.inc_hani span.eigo {
	color:#f171ab;
}
.inc_hani span.rika {
	color:#1fb0e6;
}
.inc_hani span.shakai {
	color:#f9a51b;
}
.inc_hani .arrow{
  position: relative;
  display: inline-block;
  padding-left: 20px;
}

.inc_hani .arrow::before{
  content: '';
  width: 6px;
  height: 6px;
  border: 0px;
  border-top: solid 2px #5bc0de;
  border-right: solid 2px #5bc0de;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -8px;
}