#btnBox{ display: flex; margin-bottom: 30px; }
#btnBox li{ width: 50%; }
#btnBox .externalIcon2 a:hover i::after{ background: url(../img/externalIcon3.png) 0 0 no-repeat; }

section .mailBtn a {  margin-left:  auto;  margin-right:auto  }

.date{ font-size: 1.4em; text-align: center; margin: 20px 0;}

.place{ display: flex; font-size: 1.1em; justify-content: center; margin-bottom: 15px;}
.place a{ color: #333;}
.place a:hover{ color: #3fa798; }
.place dt{ margin-right: 20px; }

.externalIcon2 a:hover i:after{ background: url(../img/externalIcon2.png) 0 0 no-repeat;}

.linethrough {
    text-decoration-line: line-through;
    text-decoration-color: #f00;
  }


@media screen and (min-width: 1271px) {
.contentBox{ width: 90%;}
}


.icon-external::before{ font-size: 0.75em;  top: 18px; position: absolute; margin-left: 8px; }

#programMenu { margin:0 auto 5%; }
#programMenu a{ color:#121212; display: block; }
#programMenu a:hover{ color:#55a3d1;}
#programMenu li{ margin-bottom:10px; position: relative; padding:0 20px;}
#programMenu li:before,
#programMenu li a:after, .detail:before{  position: absolute; }

#programMenu li:before, .detail:before{ content:"・"; left:0; top:0; color:#c8a063; }
#programMenu li a:after{ content:""; right:0;  bottom: 50%;
  border-right: 2px solid #c8a063;
  border-bottom: 2px solid #c8a063;
  height: 7px;
  width: 7px;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
}



.cost{ display:flex; margin: 0 auto 0; }
.cost:not(:last-child){ border-bottom:2px solid #fff; }
.cost dt, .cost dd{ vertical-align: top: }
.cost dt{  width:60% }
.cost dt span{ font-size: 0.9em; }
.cost dd{  width:40% }


.programBox { margin-bottom:70px } 
.programTitle{ font-size:1.4em; margin-bottom:20px;
  color:#003763;
  border-bottom: 1px dotted #ccc;
  padding-bottom: 10px;
}
.programTitle span{ background:#f9f2e7; color:#00648c; padding:3px 9px; margin-right:10px; font-size: 0.7em; }
h5.programTitle{ border-bottom: none; padding-bottom: 0; margin-bottom: 0;}

.school{ font-size:0.9em; }

.moderator{ display: flex; margin-bottom:10px }
.mc{ background:#eee; padding:1px 7px;width:50px; display: inline-block; }
.word{ text-indent: 1em; position: relative; padding: 10px 15px;
  line-height: 1.8em;
}

.mcword{ padding-top:15px; margin-bottom:15px; text-align: center; font-size: 1.1em; }

.word:before, .word:after{ position:absolute; content:"";  border-style: solid; border-color:#ddd;
  width: 15px;
  height: 15px;
}
.word:before{ border-width:2px 0 0 2px; top:0; left:0 }
.word:after{  border-width: 0 2px 2px 0;bottom: 0; right:0  }

 .scheduleWrap dl:nth-child(even){ background:#e9f3f5; }
 .scheduleWrap dl dl:nth-child(even){ background: inherit; }
 .scheduleBox{ padding: 15px 20px; line-height:1.8em; }
 .scheduleBox p{ line-height: 1.6em; margin-bottom: 10px; }
 .scheduleBox dd a{ text-decoration: none;  position: relative; }
 .scheduleBox dd a .icon-external::before{ top:5px }
 .scheduleBox a,
#linktxt a{ color:#00648c; text-decoration: underline;}
.scheduleBox a:hover,
#linktxt a:hover{ color:#003763; }

.scheduleTitle{ color:#00648c; width: 120px; }



 
.lecture{ color: #00648c; margin-right: 8px; }
.lecture span{ background: #005d87; color:#fff; padding: 2px 8px;}
#programList li{ margin-bottom:10px; }
/*#programList li:nth-child(2n){ margin-bottom:20px; padding-top:5px }*/

.redTxt{ font-weight: 700; color:#c23c3c; }

.due{ margin-top: 10px; }
.due dd{ background: #fff; }
.due dt{ background:#fcfcfc }
.due dt, .due dd{ padding: 5px 14px; }

.scheduleBox .externalIcon i::before,
.scheduleWrap .externalIcon i::before{ height: 8px; }
.scheduleBox .txtUnd:not(:last-child){ border-bottom:1px dotted #ccc }


.detail{ position: relative; padding-left: 20px; }

#workshop{ width:100% }
#workshopCont li{ margin-bottom: 5px; }

#special{ margin-top: 30px; }

#diploma{ margin-top:20px }


@media screen and (min-width: 1060px) {
.btn a{ width: 80%; margin: 20px auto 100px; }
}

@media screen and (min-width: 641px) and (max-width: 1059px) {
    
}


@media screen and (min-width: 751px) {
  #programMenu { width:80%; }
 .scheduleBox{ display:flex; }
 .scheduleBox dd{ width: 80%; }
 .scheduleBox dd dd{ width: 20%; }
.due dt br{ display: none;  }
}


@media screen and (min-width: 581px) {
#special li .lecture{width: 20%; display: inline-block;}
}

@media screen and (min-width: 441px) {
.mc{  margin-right:20px;  }
#diploma br{ display: none; }
}


@media screen and (min-width: 481px) {
.due dl{ display: flex; margin-bottom: 2px;}
.due dt{ width: 55%; }
}


@media screen and (min-width: 391px) {
#pageTitle br{ display: none; }
}

/*pc--------------------------------------------*/
@media screen and (min-width: 1060px) {
  .btn a{  margin: 20px auto 0; }
}

#linktxt .brnone{ display: none; }


@media screen and (max-width: 580px) {
#special li .lecture{display: block;}
}
@media screen and (max-width: 480px) {
  .due dt br{ display: none;  }
  }

@media screen and (max-width: 470px) {
#program2 .mc,
#program3 .mc{  width: 70px; }
}

@media screen and (max-width: 440px) {
  #pageTitle{ letter-spacing: 0.05em; }
.mc{ margin-right: 10px; }

#diploma.externalIcon i::before{ right: -49px; }
#diploma.externalIcon i::after { right: -50px; }

}