
@charset "utf-8";
/*=============================================================
Common Layout
=============================================================*/
figcaption{
	font-size:12px;
	text-align:right;
}

/* #topicPath
---------------------------------------------------*/
#topicPath li,
#topicPath li a{
  color:#fff;
}
/*=============================================================
MAIN
=============================================================*/
#ttlOuter{
}
#ttl{
  width:700px;
  height:140px;
  position:absolute;
  bottom:50%;
  left:50%;
  transform:translate(-50%,0);
  text-shadow:0px 0px 5px #000000,0px 0px 5px #000000;
}
_:-ms-lang(x)::-ms-backdrop,#ttl{
  width:750px;
}
#ttlInner{
  position:relative;
  width:100%;
  height:100%;
  text-align:center;
  color:#fff;
  line-height:1.65;
}

#ttlTxt{
  padding:10px;
  position:absolute;
  bottom:0;
  left:0;
  right:0;
}
#ttlInner h1{
  font-size:60px;
}
@media all and (-ms-high-contrast: none){
  #ttlInner h1{
    transform:translateY(30px);
  }
}
#ttlLead{
  width:660px;
  height:140px;
  position:absolute;
  top:45%;
  left:50%;
  transform:translate(-50%,0);
}
#ttlLeadInner{
  position:relative;
  width:100%;
  height:100%;
  text-align:center;
  color:#fff;
  line-height:1.65;
}
#ttlLeadInner p{
  padding:10px;
  font-size:18px;
  position:absolute;
  top:0;
  left:0;
  right:0;
  text-shadow:0px 0px 5px #000000,0px 0px 5px #000000;
}
@media all and (-ms-high-contrast: none){
  #ttlLeadInner p{
    transform:translateY(30px);
  }
}

/*=============================================================
#join
=============================================================*/
#joinArea{
}

#joinArea dl+h3{
  padding:80px 0 40px;
}

#joinArea dl{
  border-bottom:1px solid #86684B;
  position:relative;
  font-size:16px;
  font-weight:500;
}
#joinArea h3+dl{
  border-top:1px solid #ffffff;
}
#joinArea dl dt{
  width:6em;
  position:absolute;
  top:7px;
  left:0;
}
#joinArea dl dd{
  padding:7px 0 7px 6em;
}
@media all and (-ms-high-contrast: none){
  #joinArea dl dt{
    width:5em;
    position:absolute;
    top:10px;
    left:0;
  }
  #joinArea dl dd{
    padding:10px 0 1px 5em;
  }
}


/*=============================================================
#report
=============================================================*/
#report{
  width:100%;
  display:flex;
  flex-wrap: nowrap;
	font-size:16px;
}
#report .box{
  position:relative;
  padding:20px 0;
  flex-basis:calc(50% - 20px);
  background-color:#f2f2f2;
}
#report .box:nth-child(even){
  margin-left:40px;
}
#report .boxSholder{
  position:absolute;
  width:144px;
  height:144px;
  top:-10px;
  left:-10px;
}
#report .boxSholderInner{
  position:relative;
  width:100%;
  height:100%;
  z-index:3;
}
#report .boxSholderInner::before{
  position: absolute;
  content: "";
  border: 5px solid transparent;
  top: 0px;
  left: 129px;
  z-index: 2;
}
#report .box.student .boxSholderInner::before{
  border-top: 5px solid #a22e04;
  border-bottom: 5px solid #a22e04;
  border-left: 10px solid #a22e04;
  border-right: 5px solid #a22e04;
}
#report .box.instructor .boxSholderInner::before{
  border-top: 5px solid #6a4a2e;
  border-bottom: 5px solid #6a4a2e;
  border-left: 10px solid #6a4a2e;
  border-right: 5px solid #6a4a2e;
}
#report .boxSholderInner::after{
  position: absolute;
  content: "";
  border: 5px solid transparent;
  top: 134px;
  left:0;
  z-index: 2;
}
#report .box.student .boxSholderInner::after{
  border: 5px solid #a22e04;
}
#report .box.instructor .boxSholderInner::after{
  border: 5px solid #6a4a2e;
}
#report .boxSholderTtl{
  position:relative;
  width:100%;
  height:100%;
  color:#fff;
  font-size:12px;
  text-align:center;
  z-index:5;
}
#report .boxSholderTtl p{
  width:75%;
  text-align:center;
  line-height:1.25;
  letter-spacing:0;
  font-size:12px;
}
#report .box.student .boxSholderTtl p{
  padding-top:15px;
}
#report .box.instructor .boxSholderTtl p{
  padding-top:15px;
}
#report .box .boxSholderTtl::after{
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  z-index: -1;
}
#report .box.student .boxSholderTtl::after{
  border: 72px solid transparent;
  border-top: 72px solid #ed5f2b;
  border-left: 72px solid #ed5f2b;
}
#report .box.instructor .boxSholderTtl::after{
  border: 72px solid transparent;
  border-top: 72px solid #906540;
  border-left: 72px solid #906540;
}
#report .box h4{
  font-size:16px;
  font-weight:500;
  padding:0 30px 15px 110px;
  line-height:1.25;
  text-align:left;
}
@media all and (-ms-high-contrast: none){
  #report .box h4{
    padding:0 20px 7px 20px;
  }
}
_:-ms-lang(x)::-ms-backdrop,  #report .box h4{
    padding:0 20px 7px 7em;
}
#report .box h4 strong{
  font-size:120%;
}
#report .box .boxDisc{
  padding:20px 30px 0;
  border-top:2px dashed #d7d5d5;
}
#report .box .boxDisc figure{
  width:150px;
  box-sizing:border-box;
  border:1px solid #ccc;
  float:right;
  margin:0 0 10px 10px;
}
#report .box .boxDisc figure img{
  width:100%;
}

#messageArea img{
	width:100%;
	max-width:150px;
}


/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Smartphones
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media only screen and (max-width:767px), only screen and (max-device-width:767px){
  /*=============================================================
  MAIN
  =============================================================*/
p{font-size:14px;}
  #ttlOuter{
    position:relative;
  }
  #ttl{
    width:100%;
    height:auto;
    background:none;
    border-radius:0px;
    position:absolute;
    bottom:50%;
    left:0;
    transform:translate(0,0);
  }
  #ttlInner::after{
    display:none;
  }
  #ttlTxt{
    padding:0px;
    position:absolute;
    bottom:0;
    left:0;
    right:0;
    transform:translate(0,50%);
  }
  #ttlInner h1{
    font-size:26px;
  }
  #ttlLead{
    width:100%;
    height:auto;
    background:none;
    border-radius:0px;
    position:static;
    transform:translate(0,0);
    padding-top:10px;
  }
  #ttlLeadInner p{
    position:static;
    padding:10px;
    font-size:13px;
    color:#333;
    text-shadow:none;
  }
  /*=============================================================
  #join
  =============================================================*/
  #joinArea{
  }

  #joinArea dl+h2{
    padding:30px 0 0;
  }
  #joinArea dl{
    position:static;
    font-size:14px;
  }
  #joinArea dl dt{
    width:auto;
    position:static;
    padding:7px 0 0;
  }
  #joinArea dl dd{
    padding:7px 0 7px;
  }

h4{ margin-left:-2em;
}
  /*=============================================================
  #report
  =============================================================*/
  #report{
    width:100%;
    display:block;
  }
  #report .box{
    margin-top:40px;
  }
  #report .box:nth-child(even){
    margin-left:0px;
  }
  #report .boxSholder{
    width:120px;
    height:100px;
  }
  #report .boxSholderInner::before{
    left: 115px;
  }
  #report .boxSholderInner::after{
    top: 90px;
  }
  #report .boxSholderTtl{
    font-size:10px;
  }
  #report .boxSholderTtl p{
    width:69%;
    letter-spacing:-0.03em
  }
  #report .box.student .boxSholderTtl::after{
    border-bottom: 50px solid transparent;
    border-right: 65px solid transparent;
    border-top: 50px solid #ed5f2b;
    border-left: 65px solid #ed5f2b;
  }
  #report .box.instructor .boxSholderTtl::after{
    border-bottom: 50px solid transparent;
    border-right: 65px solid transparent;
    border-top: 50px solid #906540;
    border-left: 65px solid #906540;
  }
  #report .box .boxDisc{
    padding:10px 10px 0;
    border-top:2px dashed #d7d5d5;
  }
  #report .box .boxDisc figure{
    width:100px;
    box-sizing:border-box;
    border:1px solid #ccc;
    float:right;
    margin:0 0 10px 10px;
  }
  #report .box .boxDisc figure img{
    width:100%;
  }
  .h2{
    font-size:24px;
    padding:0 0 30px;
  }
  .h3{
    padding:20px 0 16px;
    font-size:20px;
  }
#report .box .boxDisc p,#messageArea p{
  font-size:14px;
}
#report .box .boxDisc .link li{font-size:14px;}

}

/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Smartphones (portrait)
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media only screen and (max-width:540px){
}

/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Smartphones small (portrait)
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media only screen and (max-width:374px){
}

/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Print
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media print{
}




