body {
  margin: 0px 0px 0px 0px;
  padding: 0px;
}
img {
  display: block;
}
a:link {
  text-decoration: none;
}
a:visited {
  text-decoration: none;
}
a:hover {
  text-decoration: none;
}
/*****************/
#menu {
  display: flex;
  justify-content: center;
  position: fixed;
  top: 0;
  width: 100%;
  padding: 0em 1em;
  box-sizing: border-box;
  border-bottom: 1px solid #999;
  box-shadow: 0px 3px 2px 0px rgba(0, 0, 0, 0.35);
  background: #2E5931;
  z-index: 5000;
  color: #fff;
  font-size: 87.5%;
}
#menuInn {
  display: flex;
  width: 100%;
  /*max-width: 1200px;*/
  max-width: 1276px;
  padding: 0px 0px;
  box-sizing: border-box;
}
#menu ul {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.25em 0px;
  margin: 0px auto;
  list-style: none;
}
#menu ul li {
  /*min-width: 10em;*/
  margin-left: -1px;
  padding: 0em 2em;
  border-left: 1px solid #999;
  border-right: 1px solid #999;
  cursor: pointer;
  text-align: center;
}
#menu ul li:hover {
  color: #ffe00f;
}
#menu ul li:first-child {
  border-left: 1px solid #999;
}
#logoArea {
  margin-top: 100px;
}
.blockCont {
  width: 100%;
}
#menuBt {
  display: flex;
  flex-direction: row;
  padding: 10px 0px;
}
.gotoEntryBt {
  display: flex;
  justify-content: center;
  text-align: center;
  /*background: #ff8a00;*/
  background: #1c401f;
  color: #fff;
  padding: 0.25em 0.75em;
  align-items: center;
  white-space: nowrap;
  /*border: 1px solid #fff;*/
  /*border-left: 1px solid #fff;*/
  /*border-right: 1px solid #fff;*/
  border-left: 1px solid rgb(255 255 255 / 0.5);
  border-right: 1px solid rgb(255 255 255 / 0.5);
  box-sizing: border-box;
}
.gotoEntryBt:hover {
  background: #47734a;
  color: #ffe00f;
  cursor: pointer;
}
.gotoEntryBtSp {
  display: flex;
  justify-content: center;
  text-align: center;
  background: #ee983b;
  color: #fff;
  padding: 0.5em 0.75em;
  align-items: center;
  white-space: nowrap;
  border-radius: 20px;
  margin-top: 1em;
  box-shadow: 0px 0px 3px 1px rgb(0 0 0 / 30%);
  /* border: 2px solid #fff; */
}
/******************/
#logoCesArea {
  display: flex;
  position: absolute;
  flex-direction: column;
  align-items: center;
  /*background: rgb(255 255 255 / 0.8);*/
  /*background: rgb(255 255 255 / 0.85);*/
  background: linear-gradient(180deg, rgb(255 255 255 / 0.7), #fff 85%);
  /*padding: 36px;*/
  padding: 23px 36px;
  text-align: center;
  color: #2E5931;
  gap: 18px;
  /*box-shadow: 0px 0px 3px 2px rgb(0 0 0 / 0.25);*/
  box-shadow: 0px 0px 8px 0px rgb(0 0 0 / 0.35);
  margin-top: -360px;
  opacity: 0;
  transition: margin-top 2.5s ease, opacity 2.5s ease, -webkit-margin-top 2.5s ease, opacity 2.5s ease;
}
.logoCesArea_animate {
  margin-top: 285px !important;
  opacity: 1 !important;
}
#logoCesArea > div:first-child {
  font-size: 200%;
  font-weight: bold;
  font-family: serif;
}
#logoCesArea > div:last-child {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 45px;
}
#logoCesArea p {
  margin: 0px;
  padding: 0px;
  font-size: 125%;
  font-family: serif;
  font-weight: bold;
}
/******************/
#contentsAll {
  display: block;
  width: 100%;
  max-width: 1200px;
  box-sizing: border-box;
  margin: 0px auto;
  padding: 10px 88px;
  border: 0px solid #f00;
}
/*******************/
#textLead {
  display: flex;
  color: #2E5931;
  justify-content: center;
  text-align: center;
  width: 100%;
  max-width: 56em;
  margin: 0px auto;
  /*padding: 1em 0em 4em 0em;*/
  padding: 2.8em 0em 4em 0em;
  font-size: 112.5%;
  font-family: serif;
  font-weight: bold;
}
/*センテンス　上部*/
/********/
.sentBlock {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  padding-bottom: 80px;
}
.sentBlock > div:last-child {
  display: flex;
  flex-direction: column;
  gap: 45px;
  width: 100%;
  max-width: 650px;
}
.sentBlock > div:last-child > div {
  display: flex;
  flex-direction: row;
  gap: 25px;
  width: 100%;
  max-width: 650px;
}
/*******/
.textSentTitleEng {
  font-size: 237.5%;
  font-weight: bold;
}
.textSentTitle {}
/*******/
.textSecArea {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.textSecName {
  font-size: 156.25%;
  font-weight: bold;
}
.textSecNameEng {
  font-size: 81.25%;
}
.textSecOutline {
  /*font-size: 112.5%;*/
  line-height: 175%;
  text-align: justify;
}
.btVM {
  display: block;
  font-size: 81.25%;
  text-align: right;
}
.btVM a {
  border-bottom: 1px solid #d18a8a;
  color: #d18a8a;
}
.btVM a:hover {
  border-bottom: 2px solid #d18a8a;
  color: #d18a8a;
}
.photoSecBlock {
  width: 330px;
}
/*センテンス　ナンバーワン*/
.sentBlock2 {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding-bottom: 80px;
  gap: 36px
}
.sentBlock2 > div:last-child {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  gap: 24px;
  width: 100%;
}
.secNO {
  display: flex;
  flex-direction: column;
  gap: 0px;
  width: 100%;
  max-width: 318px;
}
.secNO > div:first-child {
  background: #7D9BAB;
  color: #fff;
  padding: 22px 36px;
  box-sizing: border-box;
}
.secNO > div:first-child > div:first-child {
  font-size: 131.25%;
  font-weight: normal;
}
.secNO > div:last-child img {
  width: 100%;
  height: auto;
}
.secNO > div:last-child {
  position: relative;
}
.secNO > div:last-child > div:last-child {
  display: block;
  width: 100%;
  position: absolute;
  top: 30px;
  left: 0;
  text-align: center;
  color: #fff;
  font-size: 125%;
  font-weight: normal;
}
/*センテンス　ファイブポイント*/
.sentBlock3 {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding-bottom: 80px;
  gap: 36px
}
.sentBlock3 > div:last-child {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  gap: 24px;
  width: 100%;
}
.secFP {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 15px;
  width: 100%;
  max-width: 318px;
  border: 1px solid #AEB0B0;
  padding: 32px 20px;
  box-sizing: border-box;
}
.secFP img {
  width: 100%;
}
.secFP > div:first-child {
  font-size: 168.75%;
  font-weight: bold;
  color: #4F4F4F;
}
.secFP > div:last-child {
  font-size: 93.75%;
  line-height: 175%;
  text-align: center;
}
/*センテンス　インターシップ*/
.sentBlock4 {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding-bottom: 80px;
  gap: 36px
}
.sentTitImgArea {
  display: flex;
  align-items: center;
  position: relative;
  margin: 0px -88px;
  padding: 0px 0px 0px 0px;
}
.sentTitImgArea img {
  width: 100%;
}
.sentTitImgArea > div:last-child {
  display: flex;
  position: absolute;
  /*top: 50%;*/
  left: 0px;
  width: 100%;
  justify-content: center;
  text-align: center;
  font-size: 137.5%;
  font-weight: bold;
  /*margin-top: -1.45em;*/
  text-shadow: 0px 0px 7px rgb(255 255 255);
}
#sentInfoInter {
  display: flex;
  flex-direction: row;
  gap: 160px;
}
.infoInterBlock {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
}
.titleInterBlock {
  display: flex;
  flex-direction: column;
}
.titleInterBlock > div:first-child {
  display: block;
  box-sizing: border-box;
  padding: 48px 0em 0em 14px;
  font-size: 112.5%;
  font-weight: bold;
}
.titleInterBlock > div:last-child {
  display: block;
  box-sizing: border-box;
  padding: 1em 0em 1em 21px;
  text-align: justify;
}
.titleInterBlock > div:first-child.bcBlue {
  border-left: 7px solid #036EB8;
}
.titleInterBlock > div:first-child.bcMage {
  border-left: 7px solid #E83828;
}
.textInfoBlockArea {
  display: flex;
  flex-direction: column;
}
.textInfoBlock {
  display: flex;
  flex-direction: row;
  gap: 1em;
}
.textInfoBlock > div:first-child {
  white-space: nowrap;
}
.gotoTimeTable {
  display: flex;
  justify-content: center;
  /*width: 20em;*/
  margin: 2em auto 0px auto;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  padding: 0.35em 3em 0.25em 3em;
  font-size: 81.25%;
  cursor: pointer;
}
.infoInterBlock:has(.bcBlue) .gotoTimeTable {
  border-color: #036EB8;
}
.infoInterBlock:has(.bcMage) .gotoTimeTable {
  border-color: #E83828;
}
#gotoTT1:hover {
  background: #f4fbff;
}
#gotoTT2:hover {
  background: #fff4f3;
}
/*センテンス　活躍する先輩たち*/
.sentBlock5 {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding-bottom: 80px;
  gap: 36px
}
.blockSentence {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.blockSchoolArea {
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  gap: 20px;
  margin-top: 20px;
  flex-wrap: wrap;
}
.blockSchoolArea > div {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.blockSchoolArea > div > div {
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: normal;
  background: #e1e1e1;
  padding: 0.4em 0em 0.25em 0em;
}
.tableSchool {
  border-collapse: collapse;
  font-size: 87.5%;
  width: 20em;
}
.tableSchool td:first-child {
  width: 4.5em;
}
.tableSchool td:last-child {
  width: 3.5em;
}
.tableSchool td {
  padding: 4px;
  border-bottom: 1px solid #555;
}
.blockInterview {
  display: flex;
  flex-direction: row;
  gap: 67px;
}
.blockInterview > div:has(> img) {
  font-size: 87.5%;
}
.blockInterview > div > img {
  margin-bottom: 5px;
}
.sentBar {
  display: block;
  width: 283px;
  margin: 36px auto;
  border-top: 1px solid #555;
}
.textBlockInter > div:first-child {
  padding-bottom: 0.75em;
  font-size: 112.5%;
  font-weight: bold;
}
.textBlockInter > div:last-child p {
  font-size: 93.75%;
  font-weight: normal;
  margin: 0em;
  line-height: 175%;
}
/***************************************/
/***********/
.tableRecruit {
  width: 100%;
  border-collapse: collapse;
  font-size: 87.5%;
}
.tableRecruit td {
  padding: 8px;
  border: 1px solid #000;
}
.tableRecruit td:first-child {
  width: 183px;
  background: #ccc;
}
#tableRecruit1 {
  margin-top: 16px;
}
#tableRecruit1 tr.row-2 td:first-child, #tableRecruit1 tr.row-5 td:first-child, #tableRecruit1 tr.row-8 td:first-child, #tableRecruit1 tr.row-11 td:first-child, #tableRecruit1 tr.row-18 td:first-child {
  /*background: #e2e2e2;*/
  background: #fff;
}
#tableRecruit1 tr.row-3 td:first-child, #tableRecruit1 tr.row-6 td:first-child, #tableRecruit1 tr.row-9 td:first-child, #tableRecruit1 tr.row-12 td:first-child, #tableRecruit1 tr.row-19 td:first-child {
  background: #fff;
}
#tableTabArea {
  display: flex;
  position: relative;
  width: 100%;
  /* height: 1.5em; */
  justify-content: center;
  border-bottom: 1px solid #2e5931;
}
div[id^="tableTab"]:not(#tableTabArea) {
  display: block;
  width: 48%;
  position: relative;
  padding: 0.5em 1em;
  border-radius: 12px 4px 0px 0px;
  /*background: #DCE8DE;*/
  background: #2e5931;
  box-sizing: border-box;
  cursor: pointer;
  color: #fff;
}
div[id^="tableTab"]:not(#tableTabArea):hover {
  opacity: 100%;
}
/*
#tableTab1 {
	top: 0%;
	left:0%;
}
#tableTab2 {
	top: 0%;
	left: 50%;
}
*/
.oc05 {
  opacity: 50%;
}
div[id^="tableArea"] h2 {
  font-size: 112.5%;
  margin-bottom: 0.25em;
}
#tableArea2 {
  display: none;
}
.sankaku {
  display: block;
  position: absolute;
  top: 0px;
  right: 0px;
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 0px 20px 2.5em 0px;
  border-color: transparent #fff transparent transparent;
  z-index: 10;
}
/*センテンス　エントリー*/
.sentBlock6 {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding-bottom: 80px;
  gap: 36px
}
#entryBtArea {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}
.entryBt {
  display: flex;
  width: 256px;
  height: 191px;
  border: 1px solid #569157;
  padding: 1.5em 1em;
  box-shadow: 0px 0px 3px 1px rgb(0 0 0 / 25%);
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  text-align: center;
  color: #2E5931;
  background: #fff;
}
.entryBt:hover {
  opacity: 0.75;
}
.entryBt > div:first-child {
  font-size: 112.5%;
  font-weight: bold;
}
.entryBt > div:last-child {
  font-size: 87.5%;
}
.yaArea2 {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: 81.25%;
}
a:has(div.entryBt) {
  background: #416d42;
}
#titleArea {
  display: flex;
  justify-content: center;
  margin: 78px auto 0px auto;
}
#titleArea > div:first-child {
  opacity: 0;
  transition: opacity 1.5s ease, -webkit-opacity 1.5s ease;
}
.titleImgAnima {
  opacity: 1 !important;
}
/******************/
[class^="sentBlock"] {
  padding-bottom: 100px;
  opacity: 0;
}
/*****************/
.footer {
  display: flex;
  justify-content: center;
  padding: 20px 0px;
  background: #2e5931;
  color: #fff;
  font-size: 81.25%;
  text-align: center;
}
/**************/
/*戻るボタン*/
#gototop2 {
  position: fixed;
  right: 10px;
  bottom: 50px;
  width: 60px;
  height: 60px;
  z-index: 100;
}
/***************************/
#spMenuBt {
  display: none;
}
#menuArea {
  display: none;
}
/***************************/
.tableTT {
  display: none;
  border-collapse: collapse;
  font-size: 87.5%;
  width: 100%;
  color: #000;
  /*margin-top: 1em;*/
}
.tableTT td {
  border: 1px solid #548235;
  padding: 6px;
  background: #fff;
}
.tableTT tbody > tr:first-child td {
  text-align: center;
  background: #e1e0e0;
}
#tableTT1 td:nth-child(1) {
  text-align: center;
}
#tableTT2 td {
  text-align: center;
}
/****************************/
/****/
div#overLayer {
  display: none;
  position: fixed;
  width: 80%;
  max-width: 980px;
  /*box-sizing: border-box;*/
  top: 120px;
  left: 50%;
  border: 10px solid rgba(255, 255, 255, 1);
  text-align: center;
  box-shadow: 1px 0px 7px rgb(0 0 0 / 70%);
  background: #fff;
  overflow: hidden;
  z-index: 3500;
}
div#overLayer img {
  display: block;
}
div#glayLayer {
  display: none;
  position: fixed;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  background: black;
  filter: alpha(opacity=70);
  opacity: 0.75;
  z-index: 3000;
}
div#overLayer img {
  width: 100%;
}
@media only screen and (max-width :480px) {
  /*********メインメニューボタン*********/
  #spMenuBt {
    display: flex;
    /*position: absolute;*/
    position: fixed;
    top: 0px;
    right: 0px;
    flex-direction: column;
    justify-content: center;
    width: 60px;
    height: 60px;
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
    padding: 15px;
    box-sizing: border-box;
    background: #7aa97d;
    z-index: 50000;
  }
  #spMenuBt > div {
    display: block;
    width: 100%;
    height: 1px;
    margin: 4px 0px;
    background: #fff;
  }
  #spMenuBt > div.barTop {
    display: block;
    transform: translateY(0) rotate(45deg);
    margin-top: 3px;
  }
  #spMenuBt > div.barBottom {
    display: block;
    transform: translateY(0) rotate(-45deg);
    margin-top: -5px;
  }
  /*********メインメニュー*********/
  #menuArea {
    display: block;
    width: 100%;
    height: 2500px;
    margin: 0px 0px 0px 1000px;
    padding: 70px 10px 10px 10px;
    position: fixed;
    background: rgba(255, 255, 255, 1);
    overflow-y: auto;
    z-index: 4000;
    box-sizing: border-box;
  }
  #menuArea ul {
    display: block;
    flex-direction: column;
    width: 100%;
    margin: 0px;
    padding: 0px;
  }
  #menuArea ul li {
    border-right: 0px solid #182A88;
    border-bottom: 1px solid #182A88;
    padding: 0.5em 1em;
    text-align: left;
    position: relative;
    list-style: none;
  }
  /*************/
  /***/
  #btMenu {
    display: flex;
    justify-content: center;
    width: 100%;
    border-top: 1px solid #fff;
    padding: 0.45em 0em 0.35em 0em;
    background: #182A88;
    background-image: linear-gradient(0deg, #5a895d, #7aa97d);
    color: #fff;
    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.35);
  }
  #btMenu > div {
    padding: 0px 5px;
  }
  /*************************/
  #menu ul {
    display: none;
  }
  .gotoEntryBt {
    display: none;
  }
  /**********************/
  #titleArea {
    flex-direction: column;
  }
  #titleArea img {
    width: 100%;
    height: auto;
  }
  #logoCesArea {
    margin: 0px;
    padding: 14px 14px 7px 14px;
    position: relative;
    box-shadow: unset;
  }
  .logoCesArea_animate {
    margin-top: 0px !important;
    opacity: 1 !important;
  }
  #logoCesArea > div:first-child {
    font-size: 120%;
  }
  #logoCesArea > div:last-child {
    flex-direction: column;
    gap: 18px;
  }
  #logoCesArea p {
    font-size: 87.5%;
  }
  #textLead {
    padding: 0.75em 14px 2em 14px;
    font-size: 81.25%;
    text-align: left;
    border-top: 1px solid #6e9771;
    box-sizing: border-box;
  }
  #textLead br {
    display: none;
  }
  [class^="sentBlock"] {
    flex-direction: column;
  }
  #contentsAll {
    padding: 10px;
  }
  .sentBlock > div:last-child > div {
    flex-direction: column;
  }
  .sentBlock2 > div:last-child {
    flex-direction: column;
  }
  #sentInfoInter {
    flex-direction: column;
    gap: 10px;
  }
  .blockInterview {
    flex-direction: column;
    gap: 10px;
  }
  #entryBtArea {
    flex-direction: column;
    gap: 10px;
  }
  .sentTitImgArea {
    margin: 0px -10px;
  }
  .photoSecBlock {
    width: 100%;
  }
  .photoSecBlock img {
    width: 100%;
    height: auto;
  }
  .secNO {
    max-width: 100%;
  }
  .sentTitImgArea > div:last-child {
    padding: 0px 10px;
    font-size: 93.75%;
    box-sizing: border-box;
    margin: 0px;
  }
  .sentTitImgArea > div:last-child br {
    display: none;
  }
  .blockInterview > div > img {
    width: 100%;
  }
  p {
    text-align: justify;
  }
  .entryBt {
    width: 100%;
    height: auto;
    box-sizing: border-box;
    gap: 10px;
  }
  [class^="sentBlock"] {
    padding-bottom: 50px;
    gap: 18px;
  }
  .textSentTitleEng {
    font-size: 181.25%;
  }
  .textSecName {
    font-size: 125%;
  }
  .textSecNameEng {
    font-size: 75%;
    padding-bottom: 1em;
  }
  .textSecOutline {
    font-size: 93.75%;
  }
  .titleInterBlock > div:last-child {
    font-size: 93.75%;
  }
  .textInfoBlock {
    font-size: 87.5%;
  }
  div:has(> .textSentTitleEng) {
    border-left: 5px solid #6e9771;
    padding-left: 10px;
  }
  .titleInterBlock > div:first-child {
    padding: 10px;
    color: #fff;
    font-size: 100%;
  }
  .titleInterBlock > div:first-child.bcBlue {
    border-left: 0px solid #036EB8;
    background: #036EB8;
  }
  .titleInterBlock > div:last-child {
    padding: 10px 0px;
  }
  .titleInterBlock > div:first-child.bcMage {
    border-left: 0px solid #E83828;
    background: #E83828;
  }
  /****************/
  #blockInterviewArea > div.colRev {
    flex-direction: column-reverse;
  }
  /*****************/
  .titleInterBlock:has(.bcMage) {
    margin-top: 20px;
  }
  /***************/
  .gotoTimeTable {
    padding: 0.35em 1.5em 0.25em 1.5em;
  }
  /*******table********/
  .tableRecruit {
    border-top: 1px solid #555;
  }
  .tableRecruit td {
    display: block;
    width: 100% !important;
    border: unset;
    border-bottom: 1px solid #555;
    box-sizing: border-box;
  }
  /***/
  .tableRecruit td:first-child {
    background: #c0c0c0;
  }
  #tableRecruit1 tr.row-1 td.column-2,
  #tableRecruit1 tr.row-4 td.column-2,
  #tableRecruit1 tr.row-7 td.column-2,
  #tableRecruit1 tr.row-10 td.column-2,
  #tableRecruit1 tr.row-17 td.column-2 {
    /*background: #e2e2e2;*/
    background: #eeeeee;
  }
  #tableRecruit1 tr.row-2 td:first-child,
  #tableRecruit1 tr.row-5 td:first-child,
  #tableRecruit1 tr.row-8 td:first-child,
  #tableRecruit1 tr.row-11 td:first-child,
  #tableRecruit1 tr.row-18 td:first-child {
    /*background: #e2e2e2;*/
    background: #eeeeee;
  }
  #tableRecruit1 tr.row-3 td:first-child,
  #tableRecruit1 tr.row-6 td:first-child,
  #tableRecruit1 tr.row-9 td:first-child,
  #tableRecruit1 tr.row-12 td:first-child,
  #tableRecruit1 tr.row-19 td:first-child {
    background: #eeeeee;
  }
  /**********/
  .textInfoBlockArea {
    padding-bottom: 1em;
  }
}