@charset "UTF-8";
#keyboard{
  --pale: #ecfcfe;
  --lt: #dcfbff;
  --lt02: #14bbe1;
  --lt03: #d0f7f8;
  --basic: #00b4d8;
  --deep: #0097c9;
  --yl:#fff8e0;
  color: #2c2c2c;
}
#keyboard .ref{
  max-width: 1000px;
  width: 100%;
}
#keyboard .wbr_ew{
  word-break: keep-all;
  overflow-wrap: anywhere;
}


/* ヘッダー */
#keyboard .introwp_ew{
  background: var(--pale);
  padding: 3%;
  margin: 2rem auto;
}


/* 目次 */
#keyboard .children li::before{
  padding-left: 2px;
}
#keyboard .wrap_toc{
  max-width: 100%;
  margin: 2em auto;
  border: 3px solid var(--basic);
  border-radius: 0px;
  padding: 0;
}
#keyboard .wrap_toc_title{
  font-size: 1.5rem;
  text-align: center;
  margin: 0 auto;
  background: var(--basic);
  padding: 1% 0;
  color: #fff;
}
#keyboard .parent{
  width: 93%;
  margin: 1.4em auto;
  display: grid;
  grid-template-columns: repeat(12,1fr);
  column-gap: 5px;
}
#keyboard .mbdr_ew::before{
  font-weight: bold;
}
#keyboard .mbdr_ew>a{
  font-weight: bold;
  font-size: 110%;
  width: 100%;
}
#keyboard .mbdr_ew{
  position: relative;
}
#keyboard .mbdr_ew::after{
  position: absolute;
  content: "";
  border-bottom: 1px solid #919191;
  width: 98%;
  left: 0;
}

#keyboard .mbdr_ew:nth-of-type(7)::after,
#keyboard .mbdr_ew:nth-of-type(8)::after{
  bottom: 5px;
}
#keyboard .mbdr_ew:nth-of-type(1)::after
#keyboard .mbdr_ew:nth-of-type(2)::after,
#keyboard .mbdr_ew:nth-of-type(3)::after,
#keyboard .mbdr_ew:nth-of-type(4)::after,
#keyboard .mbdr_ew:nth-of-type(5)::after,
#keyboard .mbdr_ew:nth-of-type(6)::after{
  bottom: 5px;
}
#keyboard .ls01_ew>a,#keyboard .ls02_ew>a,
#keyboard .ls03_ew>a,#keyboard .ls04_ew>a,
#keyboard .ls05_ew>a,#keyboard .ls06_ew>a{
  position: relative;
  font-weight: bold;
  font-size: 100%;
  width: 100%;
}
#keyboard .ls01_ew>a::after,
#keyboard .ls02_ew>a::after,
#keyboard .ls03_ew>a::after,
#keyboard .ls04_ew>a::after,
#keyboard .ls05_ew>a::after,
#keyboard .ls06_ew>a::after{
  position: absolute;
  content: "";
  border-bottom: 1px solid #919191;
  width: clamp(26rem, 20.641rem + 8.92vw, 27.5rem);
  bottom: 0;
  left: -1em;
}
#keyboard .gd01_ew{
  grid-column: 1/7;
}
#keyboard .gd02_ew{
  grid-column: 7/13;
}
#keyboard .ls01_ew{
  grid-row: 1/1;
}
#keyboard .ls02_ew{
  grid-row: 2/5;
}
#keyboard .ls03_ew{
  grid-row: 5/12;
}
#keyboard .ls04_ew{
  grid-row: 1/3;
}
#keyboard .ls05_ew{
  grid-row: 3/8;
}
#keyboard .ls06_ew{
  grid-row: 8/12;
}

#keyboard .wrap_toc_list a{
  color: #333;
  text-decoration: none;
}
#keyboard .wrap_toc_list{
  padding: 3px;
}
#keyboard .wrap_toc a:hover,
#keyboard .wrap_toc li:hover:before{
  color: var(--basic);
}
#keyboard .children li{
  position: relative;
  font-size: 95%;
  width: 100%
}
#keyboard .bd_wrap_ew .bdr_ew::after{
  position: absolute;
  content: "";
  border-bottom: 1px solid #d8d7d7;
  width: 98%;
  bottom: 0;
  left: 0;
}
#keyboard .children li{
  position: relative;
  font-size: 95%;
  width: 100%
}
#keyboard .bd_wrap_ew li::after{
  position: absolute;
  content: "";
  border-bottom: 1px solid #d8d7d7;
  width: 94%;
  bottom: 0;
  left: 0;
}

/* h2,h3,h4 */
/* #keyboard #id01,#keyboard #id02,
#keyboard #id03,#keyboard #id04,
#keyboard #id05{
  text-align: center;
} */
#keyboard .heading2 {
  border-top: 4px solid var(--basic) ;
  border-bottom: 4px solid var(--basic) ;
  background: var(--lt);
  border-left: none;
  padding: 1% 2%;
  margin: 3rem auto 1.2rem;
  text-align: center;
}
#keyboard .heading3 {
  font-size: 1.5rem;
  margin: 2rem 0 1rem;
  padding: 1.5% 0 1% 0.5rem;
  border-bottom: 3px solid var(--basic);
  color: #333;
}
#keyboard .heading4{
  font-size: 1.2rem;
}


/* 表 */
#keyboard .rf_table{
  width: 90%;
  margin: 20px auto 0;
}
#keyboard .rf_table_th{
  background: var(--deep);
  color: #fff;
}
#keyboard .rf_table_td,
#keyboard .rf_table_th{
  border: 1px solid var(--basic);
  font-size: 1.3rem;
}
.td_bg_ew,
.cf_table_ew th{
  background: var(--pale);
}
#keyboard .col01_ew{
  width: 20%;
}
#keyboard .col02_ew,
#keyboard .col03_ew{
  width: 25%;
}
#keyboard .table-ttl_ew{
  margin-top: 20px;
  margin-bottom: 5px;
  font-size: clamp(1.063rem, 0.994rem + 0.34vw, 1.25rem);
  font-weight: bold;
}
#keyboard .ttl-gap_ew{
  margin-top: 30px;
}
#keyboard .cf_table_ew{
  width: 100%;
  text-align: center;
  border-collapse: collapse;
  /* margin-top: 20px; */
}
#keyboard .cf_table_ew th{
  border: 1px solid var(--basic);
}
#keyboard .cf_table_ew .rf_table_th{
  font-weight: normal;
}
#keyboard .rf_table_td{
  padding: 10px 4px;
  font-size: 1rem;
}
#keyboard .fz_mini_ew{
  font-size: 1.3rem;
}
#keyboard .cf_table_ew .rf_table_th_white{
  padding: 10px 15px;
  font-size: 1.3em;
}
#keyboard .table-note_ew{
  margin-top: 20px;
}
#keyboard .table-note_ew p:first-child{
  font-size: 18px;
  font-weight: bold;
}
#keyboard .table-note_ew p:last-child{
  margin-top: 0;
}

/* コンテンツ */
#keyboard .faqtxt_ew,
#keyboard .table-note_ew{
  padding: 2.5% 2%;
  background: var(--pale);
  margin-bottom: 10px;
}
#keyboard .list-ttl_ew{
  font-size: 1.2rem;
}

/* flex */
#keyboard .flex_ew{
  display: flex;
}
/* #keyboard .typewrap_ew{
  border-radius: 10px;
} */
/* #keyboard .typettl_ew{
  font-weight: bold;
  background: linear-gradient(transparent 55%, #fffd9e 50%);
  display: inline-block;
  margin-bottom: 1.1rem;
  font-size: 20px;
} */
/* #keyboard .point_ew{
  background: var(--pale);
  padding: 2% 0 2% 4%;
} */
/* #keyboard .typearea_ew span{
  font-size: 1.3rem;
} */
#keyboard .wrap_toc .wrap_toc_lists.parent{
  padding-left: 2.5%;
  padding-right: 2.5%;
}
/* #keyboard .mach_q_ew li{
  list-style: none;
} */

/* チャート */
#keyboard .chartwrap_ew{
  display: flex;
  margin: 3rem auto 0;
  max-width: 1000px;
  width: 100%;
  align-items: stretch;
  justify-content: center;
  flex-wrap: wrap;
  gap: 30px;
}
#keyboard .chart_ew{
  align-items: center;
  justify-content: center;
  width: calc((100% / 2) - 5%);
  padding: 2.5% 1.3%;
  border: 3px solid var(--lt03);
  background: var(--lt03);
  color: #333;
  text-decoration: none;
  min-height: 80px;
  transition: all .2s;
}
#keyboard .chart_ew:hover{
  background-color: var(--pale);
  opacity: 1;
}
#keyboard .chart02_ew{
  width: 100%;
}

#keyboard .chart_ew>p{
  text-align: center;
  font-size: 1.2rem;
  font-weight: 600;
}
#keyboard .chart_ew>p>.small_ew{
  font-size: 80%;
}
#keyboard .blue_ew{
  color: var(--basic);
  font-size: 105%;
}

/* ----- PC ----- */
@media screen and (min-width:961px) {
  .pc_hide_ew {
    display: none;
  }
  .sp_hide_ew {
    display: block;
  }
  /* チャート */
  /* #keyboard .chartwrap_ew .flex_ew:last-child{
    width: clamp(26.75rem, 17.452rem + 15.48vw, 29.063rem);
}
  #keyboard .chart02_ew:last-child{
    padding: 5% 3%;
  } */
}

/* ----- SP ----- */
@media screen and (max-width:960px) {
/* 全体 */
#keyboard{
  width: 100%;
}
/* ヘッダー */
#keyboard .introwp_ew{
  padding: 5%;
  margin: 2rem auto;
  font-size: clamp(0.813rem, 0.719rem + 0.47vw, 1rem);
}

/* 目次 */
#keyboard .wrap_toc{
  max-width: 550px;
  min-width: 300px;
  width: 97%;
  padding: 0;
}
#keyboard .wrap_toc_title{
  font-size: 1.2rem;
  text-align: center;
  margin: auto;
  padding-bottom: 0.5%;
  width: 100%;
}
#keyboard .parent{
  width: fit-content;
  display: block;
  margin: 0.8em auto;
  padding-left: 3%;
  padding-right:5%;
}
#keyboard .ls01_ew>a::after,
#keyboard .ls02_ew>a::after,
#keyboard .ls03_ew>a::after,
#keyboard .ls04_ew>a::after,
#keyboard .ls05_ew>a::after,
#keyboard .ls06_ew>a::after{
        width: 500px;
}
.ls01_ew>a,.ls02_ew>a,.ls03_ew>a,.ls04_ew>a,
.ls05_ew>a,.ls06_ew>a{
  font-size: 100%;
}
.ls01_ew>a::after, .ls02_ew>a::after, .ls03_ew>a::after, .ls04_ew>a::after, .ls05_ew>a::after,.ls06_ew>a::after{
  width: clamp(21rem, 19.718rem + 5.47vw, 23rem);
  bottom: -1px;
}
.mbdr_ew:nth-of-type(1)::after,
.mbdr_ew:nth-of-type(4)::after,
.mbdr_ew:nth-of-type(7)::after,
.mbdr_ew:nth-of-type(8)::after{
  bottom: 0px;
}
.mbdr_ew:nth-of-type(2)::after,
.mbdr_ew:nth-of-type(3)::after,
.mbdr_ew:nth-of-type(5)::after,
.mbdr_ew:nth-of-type(6)::after{
  top: 25px;
}
.mbdr_ew:nth-of-type(5)::after{
  top: 50px;
}

#keyboard .children li::before{
  padding-left: 6px;
}
#keyboard .wrap_toc_list{
  padding: 5px 0;
}
#keyboard .bd_wrap_ew .bdr_ew::after{
  bottom: 3px;
}

/* h2 h3 */
#keyboard .heading3{
  font-size: clamp(1.3rem, 1.15rem + 0.75vw, 1.6rem);
}
#keyboard .heading2 {
  font-size: clamp(1.3rem, 1.05rem + 1.25vw, 1.8rem);
  padding: 2% 2%;
}
#keyboard .heading4{
  font-size: 1.1rem;
}

/* コンテンツ */
/* #keyboard .box_ew{
  margin-top: 1.2rem;
} */
/* #keyboard .gap_ew{
  margin-top: 0.8rem;
} */
/* #keyboard .mach_q_ew ul{
  padding-left: 0;
} */
#keyboard .list-ttl_ew{
  font-size: 1rem;
}

/* 表 */
#keyboard .rf_table{
  width: 683px;
  margin-bottom: 1rem;
}
#keyboard .cf_table_ew{
  width: 800px;
  margin: 0 auto 1rem;
  /* margin: 2rem auto 1rem; */
}
#keyboard .cf_table_ew .rf_table_th,
#keyboard  .rf_table_th{
  font-size: 1.1rem;
  width: 17%;
}
#keyboard .cf_table_ew .rf_table_td{
  font-size: 1rem;
  width: 21%;
}
#keyboard .cf_table_ew .rf_table_th_white{
  padding: 10px 18px;
  font-size: 1.1rem;
}
#keyboard .cf_table_ew .fz_mini_ew{
  font-size: 1rem;
}


/* #keyboard .typewrap_ew{
  width: 100%;
  padding: 0% 0% 4%;
} */
/* #keyboard .typebox_ew{
  text-align: center;
  margin: 1.2rem auto;
} */
/* #keyboard .typettl_ew{
  display: inline;
  margin-bottom: 1.1rem;
  font-size: 18px;
} */
/* #keyboard .point_ew{
  padding: 4% 3% 4% 9%;
} */
#keyboard .wrap_toc .wrap_toc_lists.parent{
  margin: 1.4em auto;
}

/* hide */
#keyboard .pc_hide_ew {
  display: block;
}
#keyboard .sp_hide_ew {
  display: none;
}

/* チャート */
#keyboard .chartwrap_ew .flex_ew{
  gap: 0;
}
#keyboard .chart_ew{
  width: 95%;
}
#keyboard .chart_ew>p{
  text-align: center;
  font-size: 1.2rem;
  font-weight: 600;
}
#keyboard .chart_ew>p>.small_ew{
  font-size: 80%;
}
#keyboard .blue_ew{
  color: var(--basic);
  font-size: 105%;
}
}

/* ----- 600px ----- */
@media screen and (max-width: 600px) {
    #keyboard .ls01_ew>a::after,
    #keyboard .ls02_ew>a::after,
    #keyboard .ls03_ew>a::after,
    #keyboard .ls04_ew>a::after,
    #keyboard .ls05_ew>a::after,
    #keyboard .ls06_ew>a::after {
      width: clamp(18.125rem, 3.071rem + 75.27vw, 31.25rem);
      bottom: -2px;
    }
}



