@charset "utf-8";
/* CSS Document */
.main {
 /* background: url("../img/2024/top_bg.png");*/
  /*background-size: cover;*/
}
.page-navi {
  margin-top: 20px;
}
@media screen and (max-width : 1617px) {
  .page-navi {
    width: 100%;
    margin: 30px auto;
  }
}
@media screen and (max-width: 640px) {
  .page-navi {
    width: 100%;
    margin-top: 10px;
    margin-bottom: 5px;
  }
}
.page-navi__check {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding-bottom: 10px;
}
@media screen and (max-width: 640px) {
  .page-navi__check {
    display: block;
    padding-bottom: 5px;
  }
}
.page-navi__check li {
  display: block;
  color: #20BCFD;
  font-size: 18px;
  font-weight: bold;
}
.page-navi__check li:not(:last-child) {
  margin-right: 25px;
}
.page-navi__check li:before {
  background: url(../img/icon/icon_check.png) 0 0 no-repeat;
  content: "";
  display: inline-block;
  width: 30px;
  height: 29px;
  padding-right: 5px;
  vertical-align: middle;
}
@media screen and (max-width: 640px) {
  .page-navi__check li:before {
    width: 20px;
    height: 20px;
    background-size: 20px;
    margin-left: 40px;
  }
}
@media screen and (max-width : 1617px) {
  .page-navi__check {
    width: 100%;
  }
  .page-navi__check li {
    display: block;
    border-radius: 5px;
    margin: 5px auto 0;
  }
}
@media screen and (max-width: 640px) {
  .page-navi {
    font-size: 16px;
  }
}
.page-navi__sub {
  color: #003777;
  font-size: 36px;
  text-align: center;
  font-weight: bold;
  margin: 20px 0;
}
@media screen and (max-width: 640px) {
  .page-navi__sub {
    font-size: 20px;
    margin-bottom: 0;
    margin-top: 10px;
  }
}
.page-navi__sub span {
  padding: 0 30px;
  position: relative;
  display: inline-block;
}
@media screen and (max-width: 640px) {
  .page-navi__sub span {
    padding: 0 50px;
  }
}
.page-navi__sub span::before, .page-navi__sub span::after {
  content: '';
  position: absolute;
  top: 50%;
  width: 30px;
  height: 3px;
  background-color: #003777;
}
@media screen and (max-width: 640px) {
  .page-navi__sub span::before, .page-navi__sub span::after {
    width: 25px;
    height: 2px;
    top: 66%;
  }
}
.page-navi__sub span::before {
  left: 0;
  -webkit-transform: rotate(60deg);
  transform: rotate(60deg);
}
.page-navi__sub span::after {
  right: 0;
  -webkit-transform: rotate(-60deg);
  transform: rotate(-60deg);
}
.page-navi__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  max-width: 950px;
  margin: 0 auto;
  width: 90%;
}
@media screen and (max-width: 640px) {
  .page-navi__btn {
    display: block;
    width: 100%;
  }
}
.page-navi__btn li {
  width: calc(94% / 2);
}
@media screen and (max-width: 640px) {
  .page-navi__btn li {
    width: 90%;
    margin: 0 auto;
  }
}
.page-navi__btn li:not(:last-child) {
  margin-right: 10px;
}
@media screen and (max-width: 640px) {
  .page-navi__btn li:not(:last-child) {
    margin-right: auto;
    margin-bottom: 15px;
  }
}
.page-navi__btn .common-btn, .page-navi__btn .search-btn, .page-navi__btn .cta-panf__btn, .page-navi__btn .cta-btn {
  font-size: 16px;
  height: 80px;
}
@media screen and (max-width : 1617px) {
  .page-navi__btn .common-btn, .page-navi__btn .search-btn, .page-navi__btn .cta-panf__btn, .page-navi__btn .cta-btn {
    font-size: 14px;
  }
}
@media screen and (max-width: 640px) {
  .page-navi__btn .common-btn, .page-navi__btn .search-btn, .page-navi__btn .cta-panf__btn, .page-navi__btn .cta-btn {
    height: 70px;
    font-size: 16px;
  }
}
.page-navi__btn .common-btn:after, .page-navi__btn .search-btn:after, .page-navi__btn .cta-panf__btn:after, .page-navi__btn .cta-btn:after {
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
@media screen and (max-width : 1617px) {
  .page-navi__btn .common-btn:after, .page-navi__btn .search-btn:after, .page-navi__btn .cta-panf__btn:after, .page-navi__btn .cta-btn:after {
    right: 10px;
  }
}
@media screen and (max-width: 640px) {
  .page-navi__btn .common-btn:after, .page-navi__btn .search-btn:after, .page-navi__btn .cta-panf__btn:after, .page-navi__btn .cta-btn:after {
    right: 20px;
  }
}
.page-navi__ttl {
  font-size: 18px;
  text-align: center;
  margin: 40px auto 20px;
  font-weight: bold;
}
@media screen and (max-width: 640px) {
  .page-navi__ttl {
    font-size: 15px;
    margin: 30px auto 10px;
  }
}
.page-navi__txt {
  border: solid 1px #2FBDFA;
  padding: 20px 0;
  line-height: 1.8;
  text-align: center;
  width: 530px;
  margin: 0 auto;
  margin-bottom: 70px;
}
@media screen and (max-width : 1617px) {
  .page-navi__txt {
    width: 80%;
    margin: 0 auto;
    padding: 20px;
    margin-bottom: 70px;
  }
}
@media screen and (max-width: 640px) {
  .page-navi__txt {
    font-size: 12px;
    width: 85%;
    margin: 0 auto;
    padding: 10px;
    text-align: left;
    margin-bottom: 50px;
  }
}
/*page-navi*/
h3 {
  clear: both;
  margin: 30px auto;
  padding: 10px;
  font-size: 100%;
  line-height: 1;
  clear: both;
  background: unset;
  border-left: unset;
  border-bottom: unset;
}
#shunki .pic_base h3 {
  position: relative;
  display: inline-block;
  padding: 0px 300px;
  font-size: 180%;
  font-weight: bold;
  color: #1d2088;
}
#shunki .pic_base h3:before, .pic_base h3:after {
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  display: inline-block;
  width: 150px;
  height: 3px;
  background-color: #1d2088;
}
#shunki .pic_base h3:before {
  left: 0;
}
@media screen and (max-width: 480px) {
  #shunki .pic_base h3 {
    position: relative;
    display: inline-block;
    padding: 0px 75px;
    font-size: 140%;
    color: #1d2088;
  }
  #shunki .pic_base h3:before, .pic_base h3:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 60px;
    height: 3px;
    background-color: #1d2088;
  }
}
.box_bnr {
  position: relative; /* タイトル用に親要素定義  */
  box-sizing: border-box; /* 罫線・余白も含む大きさ  */
  margin: 14px auto 0 auto; /* BOXの位置               */
  /*max-width     : 500px;                BOXの最大横幅           */
  background: #fff; /* BOXの背景色             */
  padding: 33px 10px 25px 10px; /* BOX内の余白             */
  border: 3px solid #0059b3; /* BOXの枠線               */
}
/* --- タイトル部分の定義 ----------------------------------------*/
.box_bnr::before {
  position: absolute; /* 親からの相対位置の定義  */
  display: inline-block; /* インラインボックス定義  */
  box-sizing: border-box; /* 罫線・余白も含む大きさ  */
  line-height: 1; /* 1行の高さを初期化       */
  background: #0059b3; /* タイトル背景色          */
  color: #ffffff; /* タイトルの文字色        */
  content: attr(title); /* タイトルに[title]を表示 */
  font-weight: bold; /* タイトルは太字          */
  padding: 8px 22px; /* タイトル内の余白        */
  top: -17px; /* タイトル上位置はマイナス*/
  left: 16px; /* タイトル右位置は1文字分 */
  font-size: 16px; /* タイトルの文字サイズ    */
}
.pic_base {
  text-align: center;
}
.nittei_tittle {
  text-align: center;
  font-size: 2em;
}
.nittei_tittle span {
  border-bottom: 1px solid #000;
}
table.jukourei {
  border: solid 1px #000;
  text-align: center;
  width: 100%
}
table.jukourei th {
  border: solid 1px #000;
  text-align: center;
  padding: 5px;
}
table.jukourei td {
  border: solid 1px #000;
  text-align: center;
  padding: 5px;
}
.bg_red1 {
  background: #F7090D;
  color: #fff;
}
.bg_green1 {
  background: #26B110;
  color: #fff;
}
.bg_blu {
  background: #3641B5;
  color: #fff;
}
.bg_ora {
  background: #E0AC14;
  color: #fff;
}
.sub_tittle {
  margin-top: 20px
}
.sub_tittle span {
  border-bottom: double 5px #FFC778;
  font-size: 18px
}
.button2 {
  font-family: inherit;
  font-size: 100%;
}
.button2 {
  display: inline-block;
  width: 340px;
  height: 54px;
  text-align: center;
  text-decoration: none;
  line-height: 54px;
  outline: none;
  background-color: #1d2088;
  color: #fff;
  font-weight: 600;
  font-size: 100%;
}
.button2:hover {
  background-color: #59b1eb;
}
.button2 a {
  color: #fff;
}
.button2 a:link {
  color: #fff;
}
.button2 a:visited {
  color: #fff;
}
.button2::before, .button2::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}
.button2, .button2::before, .button2::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}
.jukourei_couse01 {
  display: flex;
  flex-wrap: nowrap;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
}
.jukourei_couse02 {
  display: flex;
  flex-wrap: nowrap;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
}
.couse_plus {
  display: inline-block;
  width: 20px;
}
.couse {
  display: inline-block;
  width: 30%;
  padding: 0.7em 0.5em;
}
.couse2 {
  display: inline-block;
  width: 100%;
  padding: 0.7em 0.5em;
}
@media only screen and (max-width: 640px) {
  .jukourei_couse01 {
    display: flex;
    flex-wrap: wrap;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
  }
  .couse {
    display: inline-block;
    width: 100%;
    padding: 0.7em 0.5em;
  }
}
.tittle_1 {
  font-size: 20px
}
/*.flex{ display: flex;flex-wrap: wrap;justify-content :space-between;align-content: center; text-align: center}*/
.flex2 {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-content: center;
}
.flex_item {
  width: calc(100% / 3);
}
.flex_item2 {
  width: 50%
}
.flex_item3 {
  width: 40%
}
.flex_item4 {
  width: 60%;
  margin-left: 20px;
}
.flex_item5 {
  width: 30%
}
.flex_item6 {
  width: 70%;
  margin-left: 20px;
}
.s_area {
  background-color: #fff;
  border-radius: 0 0 10px;
  font-weight: bold;
  margin: 0px 0 20px;
}
.s_area_pk {
  color: #ea6188;
}
.s_area_bg {
  background-color: #ea6188;
}
.s_area ul {
  list-style: none;
  text-align: left;
}
.s_area_line {
  color: #ea6188;
}
.line_up {
  padding: 20px
}
.line_up_ttl {
  font-size: 20px
}
.line_up table {
  width: 100%;
  border-collapse: separate;
}
.c_area {
  background-color: #fff;
  border-radius: 0 0 10px;
  font-weight: bold;
  margin: 0px 0 20px;
}
.c_area_bl {
  color: #00afc3;
}
.c_area ul {
  list-style: none;
  text-align: left;
}
.c_area_line {
  color: #00afc3;
}
.c_area_bg {
  background-color: #00afc3;
}
.k_area {
  background-color: #fff;
  border-radius: 0 0 10px;
  font-weight: bold;
  margin: 0px 0 20px;
}
.k_area_bl {
  color: #1f51a2;
}
.k_area ul {
  list-style: none;
  text-align: left;
}
.k_area_line {
  color: #1f51a2;
}
.k_area_bg {
  background-color: #1f51a2;
}
.k_area_tittl {
  font-size: 20px;
  color: #000;
  font-weight: bold
}
.gakunen {
  color: #000;
  font-size: 25px;
  font-weight: bold;
  text-align: center;
}
.sokushu_tittle {
  position: relative;
}
.sokushu_tittle_box_inner {
  position: absolute;
  left: 10px;
  top: 10px;
}
.sokushu_tittle_bg1 {
  background-color: #f6bedc;
  height: 80px;
  line-height: 1.8
}
.sokushu_tittle_bg2 {
  background-color: #fff100;
  height: 120px;
}
.tittle3 {
  color: #000000;
  font-weight: bold;
  font-size: 16px;
  line-height: 1.5
}
.tittle4 {
  color: #1d2088;
  font-weight: bold;
  font-size: 18px;
  line-height: 1.5
}
.soku_ttl_txt3 {
  font-size: 3em;
  color: #fff;
}
.font-l {
  font-size: 1.8em
}
@media screen and (max-width:760px) {
  .nagare_arrow {
    background: url(../img/nagare_arrow2.png);
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: bottom;
  }
  .nav {
    line-height: 2.5;
    font-size: 80%;
  }
  .sokushu_tittle {
    position: relative;
  }
  .sokushu_tittle_box_inner {
    position: absolute;
    left: 10px;
    top: 90px;
  }
  .sokushu_tittle_bg1 {
    background-color: #f6bedc;
    height: 50px;
    line-height: 1.8
  }
  .sokushu_tittle_bg2 {
    background-color: #fff100;
    height: 90px;
  }
  .soku_ttl_txt3 {
    font-size: 2em;
  }
  /*#kaki .container h1 {position: relative;display: inline-block;padding: 0px 140px ;font-size: 150%;color: #1d2088;}
#kaki .container h1:before, h1:after { content: ''; position: absolute; top: 50%; display: inline-block; width: 100px; height: 3px; background-color: #1d2088;}	*/
  .flex2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-content: center;
  }
  .line_up table {
    width: 100%;
  }
  .line_up_c table {
    width: 100%;
  }
  .line_up_ttl {
    font-size: 18px;
    padding-right: 80px;
  }
  .scroll-table {
    overflow-x: scroll;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
  }
  .tokutyo_img {
    width: 100%;
    margin-bottom: 10px
  }
  .tokutyo_item_box_inner {
    left: 20px;
    top: 250px;
    width: 90%;
    font-size: 13px;
    line-height: 1.5
  }
  .tokutyo_item {
    width: 100%
  }
  .flex_item {
    width: 100%
  }
  .flex_item2 {
    width: 100%
  }
  .flex_item3 {
    width: 100%
  }
  .flex_item4 {
    width: 100%;
    margin-left: 0px;
  }
  .flex_item5 {
    width: 100%
  }
  .flex_item6 {
    width: 100%;
    margin-left: 0px;
  }
  .tokuten_img {
    width: 100%;
  }
  .font-l {
    font-size: 1.3em
  }
  .gakunen {
    font-size: 20px;
  }
}
@media screen and (max-width:350px) {
  .tokutyo_item_box_inner {
    left: 20px;
    top: 200px;
    font-size: 11px;
    line-height: 1.3
  }
}
#touki .pic_base ul {
  list-style: none;
  margin: 0 10px;
  padding: 0.5em 5px;
}
#touki .pic_base li:before {
  font-family: FontAwesome;
  content: '\f111';
  color: #8f82bc
}
#touki .pic_base li {
  margin-left: 1.4em;
  text-indent: -1.4em;
}
/*	.pic_base{max-width: 685px}
	#touki .pic_base h1 {position: relative;display: inline-block;padding: 0px 240px ;font-size: 150%;color: #1d2088;}
	#touki .pic_base h1:before, h1:after { content: ''; position: absolute; top: 50%; display: inline-block; width: 180px; height: 3px; background-color: #1d2088;}
	#touki .pic_base h1:before { left:0;}
	#touki .pic_base h1:after {right: 0;}
	#touki .pic_base ul {list-style: none;margin: 0 10px;padding: 0.5em 5px;}
	#touki .pic_base li:before { font-family: FontAwesome; content: '\f111';color: #8f82bc}
	#touki .pic_base li{margin-left: 1.4em;	text-indent: -1.4em;}*/
.text_font {
  font-family: "Verdana','Meiryo','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','Osaka','ＭＳ Ｐゴシック',sans-serif;"
}
.flex {
  display: flex;
  flex-wrap: nowrap;
  width: 100%;
}
.flex_nagare {
  display: flex;
  flex-wrap: nowrap;
  width: 100%;
  justify-content: flex-start
}
/*.flex_box {
  width: 50%
}*/
.flex_box2 {
  width: 30%
}
.flex_box3 {
  width: 70%;
  margin-bottom: 20px;
}
.flex_box4 {
  width: 40%;
  margin-bottom: 20px;
}
.flex_box5 {
  width: 20%;
  margin-bottom: 20px;
}
.flex_box6 {
  width: 20px;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.flex_box7 {
  width: 120px;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.flex_box8 {
  width: 150px;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.marker1 {
  background: linear-gradient(transparent 80%, #ec6d81 10%);
}
.marker2 {
  background: linear-gradient(transparent 80%, #ffff00 10%);
  background: -ms-linear-gradient(transparent 80%, #ffff00 10%);
  background: -webkit-linear-gradient(transparent 80%, #ffff00 10%);
  background: -moz-linear-gradient(transparent 80%, #ffff00 10%);
}
.dotte {
  border: dotted 1px #0599d9;
  padding: 8px;
}
.tittle1 {
  color: #000;
  font-weight: bold;
  font-size: 25px;
  padding: 20px 0 0;
  margin: 10px 0
}
.tittle2 {
  color: #f39800;
  font-weight: bold;
  font-size: 20px;
  text-align: center;
  margin: 20px 0
}
.tittle3 {
  color: #000000;
  font-weight: bold;
  font-size: 16px;
  line-height: 1.5
}
.tittle4 {
  color: #1d2088;
  font-weight: bold;
  font-size: 18px;
  line-height: 1.5
}
table.touki {
  border-collapse: separate;
  width: 100%
}
table.touki th {
  text-align: center;
  margin: 8px;
}
table.touki td {
  text-align: left;
  font-weight: bold;
}
/*.kouza_area{background-image: url("/kyoiku/kotaro/tabid/774/img/shunki_bg.png");background-repeat: no-repeat;margin-bottom: 20px;}*/
.red {
  color: red;
}
.sokushu {
  background-image: url("/kyoiku/kotaro/tabid/774/img/sokushu_bg.png");
  background-repeat: repeat;
  color: #000
}
.tokutyou {
  background-color: #fff;
  border-radius: 10px;
  border: solid 1px #9d8c8a;
  margin: 0 8px;
  margin-bottom: 20px;
}
.tokutyou p {
  color: #2B2828
}
table.kamoku {
  border-collapse: separate;
  width: 400px;
  font-size: 12px;
}
table.kamoku td {
  text-align: left !important;
  padding-left: 10px;
}
table.kamoku .tbl-r02 th {
  width: 40px;
  color: #000;
}
table.kamoku .tbl-r02 td {
  width: 280px;
  color: #000;
  padding: 8px;
  text-align: left !important;
}
.tangen {
  display: block;
  position: relative;
  color: #000;
}
.tangen_img {
  display: block;
  position: absolute;
  top: -87px;
  left: 600px;
}
.bg1 {
  background-color: #dcdddd;
  padding: 8px;
  color: #000;
  border: solid #fff 1px;
}
.bg2 {
  background-color: #d2cfe8;
  padding: 8px;
  color: #000;
  border: solid #fff 1px;
}
.bg3 {
  background-color: #e3f0dc;
  padding: 8px;
  color: #000;
  border: solid #fff 1px;
}
.bg4 {
  background-color: #fce5e9;
  padding: 8px;
  color: #000;
  border: solid #fff 1px;
}
.bg5 {
  background-color: #e6f1d9;
  border: solid #fff 1px;
}
.bg6 {
  background-color: #00afc3;
  border: solid #fff 1px;
}
.bg7 {
  background-color: #dcdddd !important;
  border: solid #fff 1px;
}
.bg8 {
  background-color: #ea6188 !important;
  border: solid #fff 1px;
}
.bg9 {
  background-color: #00aec4 !important;
  border: solid #fff 1px;
}
.bg10 {
  background-color: #1f51a2 !important;
  border: solid #fff 1px;
}
.txt_ct {
  text-align: center;
}
.pk {
  color: #ea6188;
}
.grn {
  color: #00afc3;
}
table.sokushukouza {
  border-collapse: separate;
  font-size: 13px
}
table.sokushukouza th {
  text-align: center;
  background-color: #fff;
}
table.sokushukouza td {
  color: #000;
  padding: 8px;
  text-align: left;
  background-color: #fff;
}
.kyouka {
  border: solid 1px #00afc3;
  text-align: center !important;
  width: 20px
}
.nagare_box {
  border: dashed 1px #00b0ec;
  background: #fff;
  padding: 5px;
  text-align: center;
  font-size: 12px
}
.nagare_box2 {
  border: dashed 1px #00b0ec;
  background: #eff8fe;
  padding: 5px;
  text-align: center;
  font-size: 12px
}
@media screen and (max-width:760px) {
  .flex {
    flex-wrap: wrap;
    width: 100%;
  }
  .flex_nagare {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: center
  }
  .flex_box6 {
    width: 80%;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .flex_box7 {
    width: 80%;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .flex_box8 {
    width: 80%;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .tangen_img {
    display: block;
    position: absolute;
    top: -70px;
    left: 564px
  }
  .flex_box {
    width: 100%
  }
  .flex_box2 {
    width: 100%;
    text-align: center;
  }
  .flex_box3 {
    width: 100%
  }
  .flex_box4 {
    width: 100%;
    margin-bottom: 0px
  }
  .flex_box5 {
    width: 100%;
    margin-bottom: 0px
  }
  table.kamoku {
    border-collapse: separate;
    width: 100%;
    font-size: 12px
  }
  table.kamoku .tbl-r02 th {
    width: 100%;
    color: #000;
  }
  table.kamoku .tbl-r02 td {
    width: 100%;
    color: #000;
    padding: 8px;
    text-align: left;
  }
  .last td:last-child {
    width: 100%;
  }
}
.tbl-r th {
  padding: 10px;
  width: 10%
}
.tbl-r td {
  padding: 10px;
}
@media screen and (max-width: 640px) {
  .last td:last-child {
    width: 80%;
  }
  .tbl-r {
    width: 100%;
  }
  .tbl-r th, .tbl-r td {
    display: block;
    width: 90%;
  }
}
.kyouka {
  border: solid 1px #00afc3;
  text-align: center;
  width: auto
}
@media screen and (max-width:480px) {
  #touki .pic_base h1 {
    position: relative;
    display: inline-block;
    padding: 0px 140px;
    font-size: 150%;
    color: #1d2088;
  }
  #touki .pic_base h1:before, h1:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 100px;
    height: 3px;
    background-color: #1d2088;
  }
  table .scroll-table {
    display: block;
    overflow-x: scroll;
    white-space: nowrap;
  }
}
.sho {
  color: #fff;
  font-size: 2em;
  text-align: center;
  padding: 5px;
  border: solid 2px #ea6088;
  background: #ea6088;
}
table .sho {
  width: 90%;
  margin: 20px 0;
}
table .sho th {
  color: #fff;
  font-size: 2em;
  text-align: center;
  padding: 5px;
  border: solid 2px #ea6088;
  background: #ea6088;
  width: 20%;
}
table .sho td {
  color: #000;
  padding: 5px 0 5px 5px;
  text-align: left;
  border: solid 2px #ea6088;
}
table .sho ul {}
table .sho li {
  font-size: 1.4em;
  list-style-type: none;
  position: relative;
  padding-left: 0.8em;
}
table .sho li:before {
  border-radius: 50%;
  width: 15px;
  height: 15px;
  display: block;
  position: absolute;
  left: -20px;
  top: 0.5em;
  content: "";
  background: #ea6088;
}
.sho_tittle {
  font-size: 1.8em;
  font-weight: bold;
  margin-bottom: 10px;
}
.sho_tittle span {
  color: #ea6088
}
.shogaku .tsujou {
  width: 100%;
  ;
  text-align: center;
  margin: 0 0 20px 0;
}
.shogaku .tsujou th {
  border: 2px solid #3B3939;
  background: #ea6088;
  padding: 10px 1px;
  color: #fff;
}
.shogaku .tsujou td {
  border: 2px solid #3B3939;
  background: #fff;
  padding: 10px 1px;
}
/*.shogaku .harucan{width: 250px;;text-align: center;margin:0 0 20px 0;}
.shogaku .harucan th{border: 2px solid #3B3939;background:#ea6088;padding: 10px 1px;  color: #fff;}
.shogaku .harucan td{border: 2px solid #3B3939;background:#fff;padding: 10px  1px;color: #E4191C;font-weight: bold;}
.shogaku .img50off{text-align: center;width: 120px}*/
.chu {
  color: #fff;
  font-size: 2em;
  text-align: center;
  padding: 5px;
  border: solid 2px #00aec4;
  background: #00aec4;
}
.chu_tittle {
  font-size: 1.8em;
  font-weight: bold;
  margin-bottom: 10px;
}
.chu_tittle span {
  color: #00aec4
}
table.chu {
  width: 90%;
  margin: 20px 0;
}
table.chu th {
  color: #fff;
  font-size: 2em;
  text-align: center;
  padding: 5px;
  border: solid 2px #00aec4;
  background: #00aec4;
  width: 20%;
}
table.chu td {
  color: #000;
  padding: 5px 0 5px 5px;
  text-align: left;
  border: solid 2px #00aec4;
}
table.chu ul {}
table.chu li {
  font-size: 1.4em;
  list-style-type: none;
  position: relative;
  padding-left: 0.8em;
}
table.chu li:before {
  border-radius: 50%;
  width: 15px;
  height: 15px;
  display: block;
  position: absolute;
  left: -20px;
  top: 0.5em;
  content: "";
  background: #00aec4;
}
.chugaku .tsujou {
  width: 100%;
  text-align: center;
}
.chugaku .tsujou th {
  border: 2px solid #3B3939;
  background: #00aec4;
  padding: 10px 1px;
  color: #fff;
}
.chugaku .tsujou td {
  border: 2px solid #3B3939;
  background: #fff;
  padding: 10px 1px;
}
.chugaku .tsujou th span {
  font-size: 16px;
}
.chugaku .tsujou_l {
  width: 100%;
  text-align: center;
}
.chugaku .tsujou_l th {
  border: 2px solid #3B3939;
  background: #00aec4;
  padding: 10px 1px;
  color: #fff;
}
.chugaku .tsujou_l td {
  border: 2px solid #3B3939;
  background: #fff;
  padding: 10px 1px;
}
.chugaku .tsujou_l th span {
  font-size: 16px;
}
/*.chugaku .harucan{width: 250px;;text-align: center;margin:0 0 20px 0;}
.chugaku .harucan th{border: 2px solid #3B3939;background:#00aec4;padding: 10px 1px;  color: #fff;}
.chugaku .harucan td{border: 2px solid #3B3939;background:#fff;padding: 10px  1px;color: #E4191C;font-weight: bold;}
.chugaku .img50off{text-align: center;width: 120px}*/
.sm {
  font-size: 16px;
  color: #000 !important;
}
.sm2 {
  font-size: 16px;
  color: #000 !important;
}
.sm3 {
  font-size: 13px;
}
.kou {
  color: #fff;
  font-size: 2em;
  text-align: center;
  padding: 5px;
  border: solid 2px #1f51a2;
  background: #1f51a2;
}
table .kou {
  width: 100%;
  margin: 20px 0;
}
table .kou th {
  color: #fff;
  font-size: 2em;
  text-align: center;
  padding: 5px;
  border: solid 2px #1f51a2;
  background: #1f51a2;
  width: 20%;
}
table .kou td {
  color: #000;
  padding: 5px 0 5px 5px;
  text-align: left;
  border: solid 2px #1f51a2;
}
table .kou ul {}
table .kou li {
  font-size: 1.4em;
  list-style-type: none;
  position: relative;
  padding-left: 0.8em;
}
table .kou li:before {
  border-radius: 50%;
  width: 15px;
  height: 15px;
  display: block;
  position: absolute;
  left: -20px;
  top: 0.5em;
  content: "";
  background: #1f51a2;
}
.soku_ryo {
  color: #fff;
  font-size: 2em;
  text-align: center;
  padding: 5px;
  border: solid 2px #236403;
  background: #236403;
}
.soku_ryo_tittle {
  font-size: 2em;
  font-weight: bold;
  margin-bottom: 10px;
}
.soku_ryo_tittle span {
  color: #236403
}
table.soku_ryo {
  width: 90%;
  margin: 20px 0;
}
table.soku_ryo th {
  color: #fff;
  font-size: 2em;
  text-align: center;
  padding: 5px;
  border: solid 2px #236403;
  background: #236403;
  width: 20%;
}
table.soku_ryo td {
  color: #000;
  padding: 5px 0 5px 5px;
  text-align: left;
  border: solid 2px #236403;
}
table.soku_ryo ul {}
table.soku_ryo li {
  font-size: 1.4em;
  list-style-type: none;
  position: relative;
  padding-left: 0.8em;
}
table.soku_ryo li:before {
  border-radius: 50%;
  width: 15px;
  height: 15px;
  display: block;
  position: absolute;
  left: -20px;
  top: 0.5em;
  content: "";
  background: #236403;
}
.sokushu_ryokin .tsujou {
  width: 98%;
  text-align: center;
  margin: 0 0 20px 0;
}
.sokushu_ryokin .tsujou th {
  border: 2px solid #3B3939;
  background: #236403;
  padding: 10px 1px;
  color: #fff;
}
.sokushu_ryokin .tsujou td {
  border: 2px solid #3B3939;
  background: #fff;
  padding: 10px 1px;
}
.koukou .tsujou {
  width: 90%;
  ;
  text-align: center;
  margin: 0 0 20px 0;
}
.koukou .tsujou th {
  border: 2px solid #3B3939;
  background: #1f51a2;
  padding: 10px 1px;
  color: #fff;
}
.koukou .tsujou td {
  border: 2px solid #3B3939;
  background: #fff;
  padding: 10px 1px;
}
.koukou .tsujou_l {
  width: 90%;
  ;
  text-align: center;
  margin: 0 0 20px 0;
}
.koukou .tsujou_l th {
  border: 2px solid #3B3939;
  background: #1f51a2;
  padding: 10px 1px;
  color: #fff;
}
.koukou .tsujou_l td {
  border: 2px solid #3B3939;
  background: #fff;
  padding: 10px 1px;
}
.koukou .harucan {
  width: 250px;
  ;
  text-align: center;
  margin: 0 0 20px 0;
}
.koukou .harucan th {
  border: 2px solid #3B3939;
  background: #1f51a2;
  padding: 10px 1px;
  color: #fff;
}
.koukou .harucan td {
  border: 2px solid #3B3939;
  background: #fff;
  padding: 10px 1px;
  color: #E4191C;
  font-weight: bold;
}
.koukou .img50off {
  text-align: center;
  width: 120px
}
.kou_tittle {
  font-size: 1.8em;
  font-weight: bold;
  margin-bottom: 10px;
}
.kou_tittle span {
  color: #1f51a2
}
.basic_tittle {
  font-size: 1.8em;
  font-weight: bold;
  margin-bottom: 10px;
}
.basic_tittle span {
  color: #14ae67
}
.basic_2 {
  background-color: #ebf4eb;
  text-align: center;
  padding: 20px 0
}
.basic_2_txt {
  font-size: 16px;
}
.basic_2_txt span {
  font-weight: bold;
  font-size: 18px;
}
h3.tittle_a {
  position: relative;
  padding: 0.25em 0;
  background: none;
  border-left: none;
  border-bottom: none;
  font-size: 18px;
}
h3.tittle_a:after {
  content: "";
  display: block;
  height: 4px;
  background: -webkit-linear-gradient(to right, rgb(230, 90, 90), transparent);
  background: linear-gradient(to right, rgb(230, 90, 90), transparent);
}
@media screen and (max-width:480px) {
  .outline {
    font-size: 1.6em;
    letter-spacing: 0px;
    text-shadow: none;
    color: #0099d9;
    font-weight: bold;
    padding-bottom: 0px;
  }
  table .sho th {
    font-size: 1.6em;
  }
  table .chu th {
    font-size: 1.6em;
  }
  table .kou th {
    font-size: 1.6em;
  }
  .shogaku .tsujou {
    width: 680px;
    margin-bottom: 0px
  }
  .shogaku .harucan {
    width: 100%;
    margin-bottom: 10px
  }
  .chugaku .tsujou {
    width: 700px;
    margin-bottom: 0px
  }
  .chugaku .tsujou_l {
    width: 100%;
    margin-bottom: 0px
  }
  .chugaku .harucan {
    width: 100%;
    margin-bottom: 10px
  }
  .koukou .tsujou {
    width: 680px;
    margin-bottom: 0px
  }
  .koukou .tsujou_l {
    width: 100%;
    margin-bottom: 0px
  }
  .koukou .harucan {
    width: 100%;
    margin-bottom: 10px
  }
  .shogaku .img50off {
    width: 100%;
  }
  .chugaku .img50off {
    width: 100%;
  }
  .koukou .img50off {
    width: 100%;
  }
  table .sokushu_ryokin th {
    font-size: 1.6em;
  }
  .sokushu_ryokin .tsujou {
    width: 100%;
    margin: 0 auto;
    margin-bottom: 10px
  }
}
.curriculum {
  padding: 10px;
}
.blu {
  color: #0824C7;
}
/***************************************************************
| accordion
***************************************************************/
/*.acd-check{
    display: none;
}
.acd-label{
    background: #fff;
    color: #000000;
    display: block;
    margin-bottom: 1px;
    padding: 10px;
    position: relative;
}
.acd-label:after{
    background: #00479d;
    box-sizing: border-box;
    content: '\f067';
    display: block;
    font-family: "Font Awesome 5 Free";
    height: 52px;
    padding: 10px 20px;
    position: absolute;
    right: 0;
    top: 0px;
	color: #fff;
}
.acd-content{
    
    display: block;
    height: 0;
    opacity: 0;
    padding: 0 10px;
    transition: .5s;
    visibility: hidden;
}
.acd-check:checked + .acd-label:after{
    content: '\f068';
}
.acd-check:checked + .acd-label + .acd-content{
    height: fit;
    opacity: 1;
    padding: 10px;
    visibility: visible;
}*/
.accordion {
  margin-left: auto;
  margin-right: auto;
  margin-top: 30px;
  max-width: 300px;
  position: relative;
  width: 100%;
}
.accordion-title {
  color: #000;
  cursor: pointer;
  margin: 20px 0 0px;
  font-size: 18px;
  padding-right: 70px;
  padding-left: 10px;
  font-weight: bold;
  height: 80px;
  line-height: 4.5;
}
.accordion-content {
  display: none;
  padding: 0 0 10px;
}
.accordion-content p {
  /*font-size: 13px;*/
  line-height: 1.5;
}
/* タイトルの背景色 */
.accordion-item:nth-of-type(1) .accordion-title {
  background-color: #fff;
}
.accordion-item:nth-of-type(2) .accordion-title {
  background-color: #fff;
}
.accordion-item:nth-of-type(3) .accordion-title {
  background-color: #fff;
}
.accordion-item:nth-of-type(4) .accordion-title {
  background-color: #fff;
}
/* コンテンツボックスの枠線 */
.accordion-item:nth-of-type(1) .accordion-content {
  /*border-bottom: 2px solid #7f7fff;
  border-left: 2px solid #7f7fff;
  border-right: 2px solid #7f7fff;*/
}
.accordion-item:nth-of-type(2) .accordion-content {
  /*border-bottom: 2px solid #66cdaa;
  border-left: 2px solid #66cdaa;
  border-right: 2px solid #66cdaa;*/
}
.accordion-item:nth-of-type(3) .accordion-content {
  /*border-bottom: 2px solid #ff7f7f;
  border-left: 2px solid #ff7f7f;
  border-right: 2px solid #ff7f7f;*/
}
/* 矢印 */
.accordion-title {
  position: relative;
}
.accordion-title::after {
  border-right: solid 2px #151db8;
  border-top: solid 2px #151db8;
  content: "";
  display: block;
  height: 8px;
  position: absolute;
  right: 25px;
  top: 38%;
  transform: rotate(135deg);
  transition: transform .3s ease-in-out, top .3s ease-in-out;
  width: 8px;
}
.accordion-title.open::after {
  top: 45%;
  transform: rotate(-45deg);
}
@media screen and (max-width:760px) {
  .accordion-title {
    line-height: 1.3;
    height: 90px;
    padding-top: 30px
  }
}
.box01 {
  border: solid 1px #f11d6d;
  background: #fff;
  z-index: 1;
  padding: 20px;
  margin-top: 20px;
  font-weight: bold;
}
.box01 .ttl_help {
  font-size: 23px;
  text-align: center;
  color: #1d2975
}
.box01 .txt_help {
  text-align: center;
  font-size: 18px;
  color: #1d2975
}
.box01 .txt_last {
  text-align: right;
  font-size: 18px;
  padding-right: 30px;
  color: #1d2975
}
.box02 {
  border: solid 1px #ffff00;
  background: #fff;
  z-index: 1;
  padding: 20px;
  margin-top: 20px;
  font-weight: bold;
}
.box02 .ttl_help2 {
  font-size: 25px;
  text-align: center;
  color: #1d2975;
  font-family: vdl-v7gothic, sans-serif;
  font-weight: 800;
  font-style: normal;
}
.box02 .txt_help2 {
  text-align: center;
  font-size: 19px;
  color: #1d2975;
  line-height: 1.8;
  font-family: vdl-v7gothic, sans-serif;
  font-weight: 800;
  font-style: normal;
  letter-spacing: -2px;
}
.box02 .txt_last {
  text-align: right;
  font-size: 18px;
  padding-right: 30px;
  color: #1d2975;
  font-family: vdl-v7gothic, sans-serif;
  font-weight: 800;
  font-style: normal;
}
.txt_help2_u {
  border-bottom: #989696 dotted 1px;
  padding-bottom: 0px
}
.search_tittle {
  font-size: 30px;
  padding-top: 40px;
  color: #0E208C;
}
@media screen and (max-width:760px) {
  .box01 .ttl_help {
    font-size: 16px
  }
  .box01 .txt_help {
    font-size: 12px;
  }
  .box01 .txt_last {
    font-size: 12px;
    padding-right: 0px
  }
  .box02 .ttl_help2 {
    font-size: 16px
  }
  .box02 .txt_help2 {
    font-size: 12px;
    letter-spacing: 0px;
  }
  .box02 .txt_last {
    font-size: 12px;
    padding-right: 0px
  }
}
.mana_erea {
  margin-top: 30px;
}
.mana_ttl {
  padding: 1rem 2rem;
  color: #fff;
  background: #094;
  -webkit-box-shadow: 5px 5px 0 #007032;
  box-shadow: 5px 5px 0 #007032;
  width: 200px;
  margin-bottom: 0 auto;
}
.mana_erea .tsujou {
  width: 100%;
  text-align: center;
}
.mana_erea .tsujou th {
  border: 2px solid #3B3939;
  background: #F9B302;
  padding: 10px 1px;
  color: #fff;
  font-size: 1.1em;
}
.mana_erea .tsujou td {
  border: 2px solid #3B3939;
  background: #fff;
  padding: 10px 1px;
  font-size: 1.1em;
}
.mana_erea .tsujou th span {
  font-size: 0.7em;
}
.c_box_cont {
  position: relative;
}
.c_box {
  margin: 0 0 2em 0;
  background: #fff;
  padding: 1.2em;
  margin-bottom: 1em;
  border: solid 1px #303192;
}
.c_box_title {
  font-size: 1.5em;
  background: #303192;
  padding: 20px;
  text-align: center;
  color: #FFF;
  font-weight: bold;
  letter-spacing: 0.05em;
}
.c_box_title span {
  font-size: 0.7em;
}
.gakunen {
  width: 95%;
  margin: 0 auto;
  border-collapse: separate;
  border-spacing: 10px;
}
.gakunen th {
  font-size: 1.1em;
  font-weight: bold;
}
.gakunen td {
  font-size: 1em;
  font-weight: bold;
}
.accbox {
  margin: 0;
  padding: 0;
  /* max-width: 400px;最大幅*/
}
/*ラベル*/
.accbox label {
  display: block;
  margin: 0;
  padding: 20px;
  color: #0a318d;
  font-weight: bold;
  /*background :#fff;*/
  cursor: pointer;
  transition: all 0.5s;
  text-align: center;
  /*font-size: 1.2em;*/
}
/*ラベルホバー時*/
.accbox label:hover {
  background: #fff;
}
/*チェックは隠す*/
.accbox input {
  display: none;
}
/*中身を非表示にしておく*/
.accbox .accshow {
  height: 0;
  padding: 0;
  overflow: hidden;
  opacity: 0;
  transition: 0.8s;
}
/*クリックで中身表示*/
.cssacc:checked + .accshow {
  height: auto;
  padding: 5px;
  background: #fff;
  opacity: 1;
}
.keitai_ttl {
  border: solid 1px #171D8C;
  padding: 10px;
  border-radius: 10px;
  background: #fff;
  color: #171D8C;
  font-size: 20px;
  font-weight: bold;
  width: 200px;
  margin-bottom: 20px;
}
.keitai_erea {
  list-style-type: none;
  padding: 0;
  margin: 20px 0 10px;
  display: flex;
  flex-wrap: wrap;
  box-sizing: border-box;
}
.erea_item {
  margin: 0;
  box-sizing: border-box;
  width: 33.33333%; /* 未対応ブラウザ用フォールバック */
  width: -webkit-calc(100% / 3);
  width: calc(100% / 3);
}
.keitai_box {
  height: 550px;
  margin-right: 3px;
  padding: 0 5px;
  margin-top: 20px;
  background: #D9F1CF;
  border-radius: 15px;
}
.keitai_box img {
  margin: 10px;
  width: 93%
}
.keitai_box p {
  font-size: 17px;
  line-height: 1.6;
}
.comment {
  font-size: 12px;
}
.taisho {
  text-align: center;
}
.taisho span {
  display: inline-block;
  font-size: 18px;
}
.taisho img {
  vertical-align: middle;
  display: inline-block;
}
.ct {
  text-align: center;
  line-height: 2;
}
.bold {
  font-weight: bold;
}
.line {
  line-height: 1.5
}
@media screen and (max-width:780px) {
  .erea_item {
    margin: 20px 0 10px;
    box-sizing: border-box;
    width: 100%;
  }
  .keitai_box img {
    margin: 10px;
  }
  .ct {
    text-align: center;
    line-height: 1.6;
  }
}
.span1 {
  position: relative;
}
.span1::after {
  content: '';
  transform: rotate(-14deg);
  width: 100%;
  border-top: 3px solid #f00;
  position: absolute;
  top: 50%;
  left: 0;
}
.example {
  list-style: none;
  padding-left: 1.5em;
  margin-left: 0.5em;
}
.example li {
  text-indent: -1.5em;
}
.example li:before {
  content: "※";
  margin-right: 0.5em;
}
.list_anchor {
  list-style-type: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.item_anchor {
  margin: 5px;
  float: left;
  width: calc(100% / 3 - 10px);
  width: 300px;
}
/*.item_anchor a {
		background: #1A68B9;
		border-radius: 10px;
		color: #fff;
		width: 200px;
		padding: 20px;
		font-size: 22px;
		font-weight: bold;
		}*/
.link_btn {
  display: block;
  cursor: pointer;
  box-sizing: border-box;
  color: #fff !important;
  font-size: 27px;
  font-weight: bold;
  text-align: center;
  text-decoration: inherit;
  border-radius: 10px;
  background: #1A68B9;
  box-shadow: 0 6px 0 #0059b3, 0 12px 0 rgba(0, 0, 0, .2);
  transition: color .3s, background .3s, box-shadow .3s, transform 0.3s;
  text-align: center;
  text-decoration: none;
  height: 80px;
  line-height: 3.4;
}
.link_btn:hover {
  background: #0059b3;
  box-shadow: 0 3px 0 #232289, 0 6px 0 rgba(0, 0, 0, .2);
  transform: translateY(3px);
}
.link_btn:active {
  color: #fff;
  background: #232289;
  box-shadow: 0 0 0 #010036, 0 0 0 rgba(0, 0, 0, .2);
  transform: translateY(6px);
  transition-duration: .1s;
}
@media screen and (max-width:780px) {
  .table-wrap {
    overflow-x: scroll;
  }
}
.day_ttl_area {
  display: flex;
}
.day_ttl1 {
  width: 50%;
  background: #091CA2;
  color: #fff;
  text-align: center;
  padding: 10px 0;
  border-radius: 30px;
  margin: 10px;
  font-size: 25px
}
.day_ttl2 {
  width: 50%;
  background: #E9A70B;
  color: #fff;
  text-align: center;
  padding: 10px 0;
  border-radius: 30px;
  margin: 10px;
  font-size: 25px
}
.daytable {
  border-collapse: separate;
  width: 90%;
  border-spacing: 0px 20px;
  margin: 10px auto;
  background: #D7EDEC;
  padding: 0 10%;
}
.daytable tr {
  padding: 10px;
}
.daytable th td {
  padding: 20px;
}
.mm {
  color: #fff;
  background: #0E28AB;
  padding: 10px;
  margin: 5px;
}
.dd {
  color: #fff;
  background: #0D940E;
  padding: 10px;
  width: 20px;
  height: 20px;
  margin: 5px;
  display: block;
  text-align: center;
  line-height: 1;
}
.txt_area {
  display: flex;
  width: 80%;
  margin: 0 auto;
}
.txt_l {
  width: 60%;
  padding: 20px;
}
.img_r {
  text-align: center;
  width: 25%;
}
@media screen and (max-width: 767px) {
  .daytable td {
    line-height: 1
  }
  .day_ttl_area {
    flex-wrap: wrap;
  }
  .day_ttl1 {
    width: 100%;
  }
  .day_ttl2 {
    width: 100%;
    font-size: 19px;
  }
  .daytable {
    width: 100%;
    border-spacing: 0px 20px;
    margin: 0;
    background: #D7EDEC;
    padding: 0;
  }
  .mm {
    padding: 5px;
    margin: 2px;
  }
  .dd {
    padding: 10px;
    width: 10px;
    height: 10px;
    line-height: 10px
  }
  .txt_area {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    ;
    font-size: 16px
  }
  .txt_l {
    width: 100%;
    padding: 0px;
  }
  .img_r {
    text-align: center;
    width: 50%;
    margin: 0 auto
  }
}
.link_flex {
  display: flex;
  flex-wrap: nowrap;
  gap: 6px 20px;
  justify-content: space-around;
}
.open {
  cursor: pointer; /* マウスオーバーでカーソルの形状を変えることで、クリックできる要素だとわかりやすいように */
}
#pop-up {
  display: none; /* label でコントロールするので input は非表示に */
}
#pop-up2 {
  display: none; /* label でコントロールするので input は非表示に */
}
.overlay {
  display: none; /* input にチェックが入るまでは非表示に */
}
#pop-up:checked + .overlay {
  display: block;
  z-index: 9999;
  background-color: #00000070;
  position: fixed;
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
}
#pop-up2:checked + .overlay {
  display: block;
  z-index: 9999;
  background-color: #00000070;
  position: fixed;
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
}
.window {
  width: 90vw;
  max-width: 600px;
  height: 100%;
  background-color: #ffffff;
  border-radius: 6px;
  display: flex;
  /*justify-content: center;*/
  align-items: center;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  overflow-y: scroll;
}
.text {
  font-size: 18px;
  margin: 0;
}
.close {
  cursor: pointer;
  position: absolute;
  top: 4px;
  right: 4px;
  font-size: 20px;
}
.label_style {
  background-color: #1492AF;
  color: #fff;
  display: block;
  border-radius: 200px;
  height: 60px;
  line-height: 60px;
  text-align: center;
  font-weight: bold;
  margin: 0 auto 80px;
  font-size: 1.2em;
}
@media screen and (max-width:760px) {
  .window {
    justify-content: flex-start;
    /*top: 40%;*/
    height: 600px;
  }
  .link_flex {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 20px;
    justify-content: space-around;
  }
}
.Features_box {
  position: relative;
  margin: 2em auto;
  padding: 0.5em 1em;
  border: solid 3px #62c1ce;
  max-width: 650px;
  background: #fff;
}
.Features_box .box-title {
  position: absolute;
  display: inline-block;
  top: -28px;
  left: -3px;
  padding: 2px 10px;
  height: 25px;
  line-height: 25px;
  font-size: 16px;
  background: #62c1ce;
  color: #ffffff;
  font-weight: bold;
  border-radius: 5px 5px 0 0;
}
.Features_box p {
  margin: 0;
  padding: 0;
  color: #061671;
  font-size: 16px;
  font-weight: bold;
}
.emphasis {
  font-size: 1.5em;
  border-bottom: dotted 2px #061671;
  padding-bottom: 5px;
}
.Features_ttl {
  color: #1C68A4;
  font-weight: bold;
  font-size: 1.8em;
  text-align: center;
}
@media screen and (max-width:760px) {
  .emphasis {
    font-size: 1.2em;
  }
  .Features_ttl {
    font-size: 1.8em;
  }
  .nittei_tittle {
    text-align: center;
    font-size: 1.2em;
  }
}
.sec02 {
  padding: 30px 0 50px !important;
}
.movie_box {
  max-width: 600px;
  margin: 10px auto;
}
.btn_blue {
  display: block;
  cursor: pointer;
  width: 80%;
  margin: 1em auto;
  padding: 20px;
  border-radius: 4px;
  box-sizing: border-box;
  color: #fff !important;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  text-decoration: inherit;
  background: #232289;
  box-shadow: 0 6px 0 #010036, 0 12px 0 rgba(0, 0, 0, .2);
  transition: color .3s, background .3s, box-shadow .3s, transform 0.3s;
  text-align: center;
}
.btn_blue:hover {
  background: #232289;
  box-shadow: 0 3px 0 #010036, 0 6px 0 rgba(0, 0, 0, .2);
  transform: translateY(3px);
}
.btn_blue:active {
  color: #fff;
  background: #232289;
  box-shadow: 0 0 0 #010036, 0 0 0 rgba(0, 0, 0, .2);
  transform: translateY(6px);
  transition-duration: .1s;
}
/*FLOW*/
.flow-areattl{
  text-decoration: underline double red;
  font-size: 35px;
  text-align: center;
  padding: 30px 0 0;
  font-weight: bold;
}
 #flow h2 {
  font-size: 26px;  
  padding: 10px 0;
  text-align: left!important;
}
.flow_tittle {
  text-align: center;
	color: #232584;
}
.flow_tittle span {
  border: solid 3px #37489A;
  padding: 20px;
  font-size: 28px;
}
.flow-time {
  font-size: 20px;
  text-align: center;
}
.flow-area {
  background: #f7f7f7;
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  padding: 25px;
  font-size: 20px;
  margin: 15px 0;
}
.box-01, .box-02 {
  width: 50%;
  text-align: center;
}
.box-01 img {
  width: 200px;
}
.inner {
  margin: 25px 0;
}
.flow-box {
  background: #f7f7f7;
  padding: 25px;
}
@media only screen and (max-width: 768px) {
  .flow-areattl {
    font-size: 28px;
  }
  #flow h2 {
    font-size: 23px;
  }
  .flow-area {
    flex-wrap: wrap;
  }
  .box-01, .box-02 {
    width: 100%;
  }
}
.box2024 {
  position: relative;
  margin: 2em 0;
  padding: 50px 10px 7px;
  border: solid 2px #FFC107;
}
.box2024 .box-title {
  position: absolute;
  display: inline-block;
  top: -1em;
  left: 50%;
  padding: 10px 9px;
  height: 40px;
  line-height: 40px;
  font-size: 22px;
  background: #FFC107;
  color: #ffffff;
  font-weight: bold;
  transform: translateX(-50%);
  width: 300px;
  max-width: 100%;
  text-align: center;
}
.box2024 p {
  margin: 0;
  padding: 0;
}
.box2024 p span {
  color: #F10D11;
}
#flow .tel {
  font-size: 30px;
}
.my-parts {
  display: inline-block;
  width: 300px;
  max-width: 100%;
  border: 2px solid #042C87;
  border-radius: 0px;
  padding: 1.8em .8em .8em;
  position: relative;
  text-align: left;
  background: #fff;
}
.my-parts .my-parts-title {
  padding: .4em;
  font-size: 1.2em;
  font-weight: bold;
  position: absolute;
  top: -1em;
  left: 50%;
  transform: translateX(-50%);
  background: #fff;
  white-space: nowrap;
}
.my-parts > :last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 768px) {
  .my-parts {
    display: inline-block;
    width: 250px;
  }
  .box2024 .box-title {
    display: inline-block;
    width: 200px;
  }
}
.gakunen {
  margin: 10px 0;
  color: #fff;
}
.gakunen .s {
  background: #fdad02;
  padding: 8px 0
}
.gakunen .j {
  background: #1616a7;
  padding: 8px 0
}
.gakunen .h {
  background: #07730c;
  padding: 8px 0
}



.curriculum_area {
  margin: auto;
  width: 100%;
	padding-top: 30px;
}
.curriculum_area .curriculum {
  list-style-type: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
}
.curriculum_area .curriculum .curriculum_item {
  margin: 5px;
  /*  float: left;
      width: calc(100% / 3 - 10px);*/
	
}
.curriculum_area .curriculum .curriculum_item .box {
  padding: 20px;
  background: #F8F8F8;
  border-radius: 15px;
  /*min-height: 550px;*/
  box-shadow: 2px 2px 4px;
	display: flex;

}
.curriculum_area .curriculum .curriculum_item .box .ttl {
  font-size: 25px;
  color: #1124BD;
	font-weight: bold;
	line-height: 1.6
}
.curriculum_area .curriculum .curriculum_item .box .txt {
  text-align: left;
  line-height: 1.5;
	font-size: 18px;
}
.curriculum_area .curriculum .curriculum_item .box .point {
  border: dotted 1px #0599d9;
  padding: 8px;
  margin: 5px;
  line-height: 1.8;
	font-size: 17px
}

.curriculum_area .curriculum .curriculum_item .box_inner {
  
		width: 70%;
}
.curriculum_area .curriculum .curriculum_item .img {
  
	width: 30%;
}
.crm{width: 280px;}

@media screen and (max-width: 760px) {
  .curriculum_area .curriculum .curriculum_item {
    margin: 5px;
    float: none;
    width: 100%;
  }
	
.curriculum_area .curriculum .curriculum_item .box {
  
	flex-wrap: wrap;

}
	.curriculum_area .curriculum .curriculum_item .box_inner {
  
		width: 100%;
}
.curriculum_area .curriculum .curriculum_item .img {
  
	width: 100%;
	text-align: center;
}
.crm{width: 280px;
	
	}

	
}
.flex_box {
  display: flex;
	flex-wrap: nowrap;
}
.box2024 {
  position: relative;
  margin: 2em 36px 0;
  padding: 50px 10px 7px;
  border: solid 2px #FFC107;
  background: #fff;
	font-size: 18px;
}
.box2024 .box-title {
  position: absolute;
  display: inline-block;
  top: -1em;
  left: 50%;
  padding: 10px 9px;
  height: 40px;
  line-height: 40px;
  font-size: 22px;
  background: #FFC107;
  color: #ffffff;
  font-weight: bold;
  transform: translateX(-50%);
  width: 300px;
  max-width: 100%;
  text-align: center;
}
.flex_box .flex_box2 {
  width: 30%;
}
.flex_box .flex_box3 {
  width: 70%;
  margin-bottom: 20px;
}
.flex_box .flex_box2 .img{
	width: 300px;	
	
}
@media screen and (max-width: 760px) {
	.flex_box {
 
	flex-wrap: wrap;
}
	.box2024 {
 
  margin: 2em 0px 0;
  
}
.flex_box .flex_box2 .img{
	width: 100%;	
	
}	
.flex_box .flex_box2 {
  width: 100%;
}
.flex_box .flex_box3 {
  width: 100%;
  margin-bottom: 20px;
}	
}



.day_ttl_area {
  display: flex;
}
.day_ttl1 {
  width: 50%;
  background: #091CA2;
  color: #fff;
  text-align: center;
  padding: 10px;
  border-radius: 30px;
  margin: 10px;
  font-size: 18px
}
.day_ttl2 {
  width: 50%;
  background: #E9A70B;
  color: #fff;
  text-align: center;
  padding: 10px;
  border-radius: 30px;
  margin: 10px;
  font-size: 18px
}
.day {
  background: #D7EDEC;
  padding: 30px;
  font-size: 20px;
  display: flex
}
.day_inner {
  width: 60%;
  margin: 0 auto;
  background: #D7EDEC;
  font-size: 20px;
}
.day_m {
  padding: 10px;
  width: 80%;
  margin: 0 auto
}
.day_d {
  padding: 20px 0 0;
  text-align: left;
  width: 60%;
  margin: 0 auto;
}
.mm {
  font-size: 1.6em;
  border-radius: 15px;
  text-align: center;
	color: #fff;
  background: #0E28AB;
  padding: 10px;
  margin: 5px;
}
.dd {
  color: #fff;
  background: #0D940E;
  padding: 10px;
  display: inline-block;
  text-align: center;
  width: 30px;
  height: 30px;
  margin: 20px 0 0;
  border-radius: 50%;
  line-height: 1.5;
}
.txt_area {
  display: flex;
  width: 80%;
  margin: 0 auto;
}
.txt_area .txt_l {
  width: 60%;
  padding: 20px;
  font-size: 18px!important;	
}
.txt_area .img_r {
  text-align: center;
  width: 25%;
}
.txt_area .img_r .img{
  
  width: 300px;
}

@media screen and (max-width: 767px) {
  .daytable td {
    line-height: 1
  }
  .day_ttl_area {
    flex-wrap: wrap;
    margin-bottom: 20px;
  }
  .day_ttl1 {
    width: 100%;
  }
  .day_ttl2 {
    width: 100%;
    font-size: 15px;
  }
  .day {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 20px;
  }
  .day_inner {
    width: 100%;
    padding-bottom: 30px;
  }
  .day_d {
    width: 80%;
    margin: 0px auto;
  }
  .txt_area {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
  }
  .txt_area .txt_l {
    width: 100%;
    padding: 8px;
  }
 .txt_area  .img_r {
    text-align: center;
    width: 50%;
    margin: 0 auto
  }
}


.hiyou_area h3 { 
  font-size: 25px;
    font-weight: bold;
    color: #fff;
    text-align: center;
    background: #1d2088;
    padding: 15px 0;
}


.read-list {
  list-style-type: none;
  padding: 0;
  margin: 0 auto;
  display: flex;
  flex-wrap: nowrap;
  max-width: 1500px;
  justify-content: center;
}
.read-item {
  margin: 5px;
  float: left;
  width: calc(50% - 10px);
}
.read-txt {
 /* border: solid 2px #2581e9;*/
	border-radius: 15px;
  padding: 30px;
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  /*color: #2581e9;*/
	color: #2581e9;
	background: linear-gradient(to bottom, #fff 0, #E9F7F6 35%, #d3f9ff 100%);
 box-shadow: 0 10px 10px 0 rgba(0, 0, 0, .2);	
	
	line-height: 1.6
	
}
.read-txt span{
	font-size: 26px;
	color: #F1CE18;
	
	
}
@media screen and (max-width: 760px) {
  .read-item {
    width: 100%;
  }
  .read-list {
    flex-wrap: wrap;
  }
}
























