@charset "UTF-8";

.bg{
  background-color:#FFF9F3;
  margin:0 auto;
  padding-bottom:10px;
  font-family: "Noto Sans CJK JP", sans-serif, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, メイリオ, Meiryo;
  line-height: 1.7;
}
img{
	max-width:100%;
	height:auto;
	vertical-align:bottom;
}
/*-------------contents(ページ内リンク)-------------------------------------------------*/
  .guideMenu{
    text-align:center;
    color:#B83333;
    padding-top:30px;
  }
  .guideMenu p{    
   font-weight: bold;
   padding-bottom:5px;
   font-size: 1.25rem;
  }
.guideMenu ul{
    width:93.878%;
    margin:0 auto;
    padding:3px 0 2px 0;
    display:flex;
    justify-content: space-around;
    flex-wrap:wrap;
    border-top:3px solid #B83333;
    border-bottom:3px solid #B83333;
    background-color: #fff;
    font-size: 1.125rem
  }
.guideMenu ul li a{
  color:#3C3C3C;
}
.guideMenu ul li:last-child::before{
  content:"◆ ";
  color:rgb(184, 51, 51, .5);
  }
.guideMenu ul li a:hover{
  color:#B83333;
}
/*-------------section共通-------------------------------------------------*/
.section{
  width:93.878%;
  margin: 70px auto;
  padding:100px 30px 0px 30px;
  text-align: center;
  background-color: #fff;
  border-top:3px solid #B83333; 
  border-bottom:3px solid #B83333; 
  position: relative;
  box-sizing: border-box;
}
.section::before {
	position: absolute;
	content: '';
	top: -80px;
	left: 50%;
	transform: translateX(-50%);
	border:40px solid transparent;
	border-bottom: 40px solid #B83333; 
  }
.section::after {
	position: absolute;
	content: '';
	top: -73px;
	left: 50%;
	transform: translateX(-50%);
	border:37px solid transparent;
	border-bottom: 37px solid #fff;
  }
.h2 {
	color:#3C3C3C;
	font-size: 2rem;
	text-align: center;
	display:flex;
	flex-direction: column;
	gap:0px;
	position: absolute;
	top:-25px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 3;
  width:100%;
}
h3{
  font-size: 1.5rem;
  color:#3C3C3C;
  text-align:center;
  display:flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  gap:3px;
  margin-bottom:30px;
  }
h3::after{
  content:"";
  width:10%;
  height:3px;
  background-color:#B83333;
}
/*各sectionの中身*/
.sec_content{
  margin-bottom:50px;
}
.sec_content p{
  text-align: left;
}
.recruit_underline{
  background:linear-gradient(transparent 60%, #ffe6e6 20%);
}
.emphasis{
  font-weight: bold;
}
.spaceHeight{
  display:block;
  margin-bottom:1rem;
}
/*-------------section共通-------------------*/
.diamond {
  width: 70px;
  height: 70px;
  background: #fff;
  transform: rotate(45deg);
  position: absolute;
  left:47%;
  top:-36px;
  border-top:3px solid #B83333;
  border-left:3px solid #B83333;
}
.text_box {
  width: 50px;
  transform: rotate(-45deg);
  text-align: center;
  font-size: 2rem;
  font-weight:bold;
}

/*-------------01 会社を知る-------------------------------------------------*/
.deckLink{
  display:flex;
  justify-content:center;
  gap:30px;
  margin-top:30px;
}
.deckLink dl{
  cursor:pointer;
  box-shadow:0px 2px 5px 0 rgba(18, 40, 62, 0.3);
  transition-property: all;
  transition-duration: .3s;
  transition-timing-function: ease;
  transition-delay: 0s;
}
.deckLink dl:hover{
  box-shadow:2px 2px 15px 0 rgba(18, 40, 62, 0.3);
  transform:translateY(-3px);
}
.deckLink dl dd{
  padding:5px 0;
  color:#3C3C3C;
}

.detailBox{
  margin-top:15px;
  padding:30px;
  box-shadow:0px 1px 5px 0 rgba(18, 40, 62, 0.3);
}
.strengthTtl{
  padding-bottom:30px;
  font-weight: bold;
}
.strength{
	width:93.75%;
	margin:0 auto;
	display:flex;
	align-items:flex-start;
	gap:45px;
  padding-bottom:30px;
}
.strength:last-child{
	padding-bottom:0px;
}
.strength h4{
	min-width:180px;
	color:#fff;
  font-weight: bold;
	background:#B83333;
	text-align: center;
  padding:5px;
  position:relative;
}
.strength h4::after{
  position: absolute;
	content: '';
	top: 0%;
	left: 100%;
	border:18px solid transparent;
	border-left: 15px solid #B83333;
	width: 0;
	height: 0;
}

.strength a+a::before{
  content:" / ";
  color:#3C3C3C;
}
.strength a, 
.sLink{
  font-weight:bold;
  color:#B83333;
  padding:0 0.2em;
  transition: all;
}
.strength a:hover{
  background-color:#ffe6e6;
  text-decoration: underline;
}
.sLink:hover{
  background-color:#ffe6e6;
  text-decoration: underline;
}

/*-------------02 講師を知る-------------------------------------------------*/
.guideText{
  margin-bottom:30px;
}
/*-----簡易プロフィール---------*/
.ppl{
  cursor: pointer;
  transition-property: all;
  transition-duration: .3s;
  transition-timing-function: ease;
  transition-delay: 0s;
  padding:0;
}
.ppl:hover{
  box-shadow:2px 2px 15px 0 rgba(18, 40, 62, 0.3);
}
/*見出し部分*/
.ppl p{
	text-align: center;
	background-color:#B83333;
	color:#fff;
	font-weight: bold;
	padding:0.2em 30px;
}
.ppl dl {
  display: flex;
  justify-content:space-around;
  padding:10px;
}
.ppl dl dt{
  width:20%; 
}
.ppl dl dd{
  text-align: left;
  letter-spacing: 0.05em;
  width:75%;
}
.articleBtn{
  float:right;
  clear:both;
  display:block;
  background-color:rgba(184, 51, 51, .2);
  padding:0.2em 30px;
  margin-top:15px;
  border-radius: 20px;
  color:#B83333;
  font-weight:bold;
}
.textBrShow{
  display:none;
}

/**********
jQuery開閉用
**********/
.close::after{
  content:"▼";
  font-weight:bold;
  font-size:0.75rem;
  color:#B83333;
}
.open::after{
  content:"▲";
  font-weight:bold;
  font-size:1rem;
  font-size:0.75rem;
  color:#B83333;
}

/*-----QA記事---------*/
.inArticle{
  text-align: left;
  margin: 30px auto;
}
.inQa dl dt{
  margin-bottom:10px;
  font-weight:bold;
}
.inQa dl dt::before{
  content:"Ｑ. ";
  font-weight: bold;
}
.inQa dl dd{
  background-color:rgba(18, 40, 62, 0.03) ;
  border-radius: 10px;
  padding:10px 30px 10px 45px;
  position:relative;
  margin-bottom:30px;
}
.inQa dl dd::before{
  content:"Ａ.";
  font-weight: bold;
  color:#B83333;
  position:absolute;
  top:10px;
  left:20px;
}
.inQa dl dd p::before{
  content:">>";
  color:#B83333;
  font-weight: bold;
}
.inQa dl dd p a{
  text-decoration:underline;
}
.inQa dl dd p a:hover{
  color:#B83333;
}
.inQa dl dd ul{
  list-style-type: disc;
}
/*-------１日スケジュール--------*/
.flex-schedule {
  /*min-width: 400px;
  max-width: 400px;*/
  list-style: none;
  box-sizing: border-box;
  border-radius: 10px;
  background-color: rgba(18, 40, 62, 0.05);
  margin-bottom:30px;
}
.flex-schedule li {
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: flex-start;
  position: relative;
}
.flex-schedule .area {
  padding: 10px;
  display: block;
  width: 85%;
  border-left: 4px solid #B83333;
}
.flex-schedule li .time {
  display: inline-flex;
  justify-content: flex-end;
  flex-basis: 5em;
  max-width: 5em;
  margin-right: 1em;
  margin-top: 30px;
  color:#B83333;
  font-weight: bold;
}
.flex-schedule .sch_box {
  position: relative;
  min-height: 1em;
  padding: 1em 2em;
  /*box-shadow:0px 1px 5px 0 rgba(18, 40, 62, 0.3);*/
  background-color:#fff;
  border-radius: 10px;
  margin-left:15px;
}
.flex-schedule .sch_box::before {
  content: "";
  position: absolute;
  left: -37px;
  top: 20px;
  background: #B83333;
  width: 20px;
  height: 20px;
  border-radius: 10px;
}
.flex-schedule .sch_title {
  font-weight: 700;
}
.flex-schedule .sch_tx {
  font-size: 14px;
  font-weight: normal;
}
.flex-schedule .area img{
  max-width:8%;
  position:absolute;
  top:15%;
  right:5%;
  z-index:10;
}
/*-------------03 採用を知る-------------------------------------------------*/
/*------------募集内容---------------------------------------*/
.recruitInfo tr{
	border:2px solid rgba(23, 35, 81, 0.1);
}
.recruitInfo th{
  padding: 15px;
  width:15%;
  background:rgba(23, 35, 81, 0.1);
}
.recruitInfo td {
  padding: 15px;
  text-align: left;
  width:85%;
}
.recruitInfo td ul li {
	/*font-weight: bold;*/
}
.recruitInfo td ul li::before {
	content:"■ ";
  font-size: 0.7rem;
}
.recruitInfo td ul{
  margin-bottom:15px;
}
.recruitInfo td ul li ul li {
	font-weight: normal;
  padding-left: 1rem;;
}
.recruitInfo td ul li ul li::before {
	content:"- ";
}
/*-------------求める人物像----------------*/
.ideal{
	margin:0 auto;
	display:flex;
  justify-content:flex-start;
	align-items:center;
	gap:30px;
	padding-bottom:15px;
	position:relative;
}
.ideal h4{
	min-width:95px;
	min-height:95px;
	color:#fff;
  font-weight: bold;
	background:#B83333;
	border-radius: 50%;
	text-align: center;
	margin:auto 0;

	display:flex;
	flex-direction: column;
	justify-content: center;
}
.idealDetail p{
  padding:0 10px;
}
.idealDetail p::before{
 content:"●";
 font-size: 0.5rem;
 color:#3C3C3C;
}
#sec3 img{
  min-width:70%;
}
/*------------選考プロセス、登壇の流れとフォローアップ---------------------------------------*/
.flow dl{
  width:100%;
  display:flex;
  box-shadow: 2px 2px 10px 0 rgba(23, 35, 81, 0.2);
  margin-bottom:30px;
}
.flow dt{
  width:20%;
  font-weight: bold;
  font-style: italic;
	background:#B83333;
  color:#fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
}
.flow .step::after{
  position: absolute;
  content: '';
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  border:40px solid transparent;
  border-top: 20px solid #B83333;
  width: 0;
  height: 0;
}
.flow dd{
  padding:10px 30px;
  width:80%;
  text-align: left;
}
/*------------選考に進む---------------------------------------*/
#sec4 .guideText{
  margin-bottom:30px;
}
#sec4 p{
  margin-bottom:30px;
}
#sec4 .btn{
  display:inline-block;
  background: #B83333;
  color:#fff;
  font-weight: bold;
  padding:10px 30px;
  min-width:80%;
  border-radius: 30px;
  margin-bottom:30px;
  font-size: 1.25rem;
  box-shadow:0 3px 0px 0px #3C3C3C;
  transition:all 0.2s ease-out;
	box-sizing: border-box;
}
#sec4 .btn:hover{
	transform: translateY(4px);
	box-shadow:none;
}
.btn{
  display:inline-block;
  background: #B83333;
  color:#fff;
  font-weight: bold;
  padding:10px 30px;
  min-width:80%;
  border-radius: 30px;
  margin:30px;
  font-size: 1.25rem;
  box-shadow:0 3px 0px 0px #3C3C3C;
  transition:all 0.2s ease-out;
	box-sizing: border-box;
}
.btn:hover{
	transform: translateY(4px);
	box-shadow:none;
}
.gBanner{
  width:65%;
  box-shadow:0px 2px 5px 0 rgba(18, 40, 62, 0.3);
  transition-property: all;
  transition-duration: .3s;
  transition-timing-function: ease;
  transition-delay: 0s;
}
.gBanner:hover{
  box-shadow:2px 2px 15px 0 rgba(18, 40, 62, 0.3);
  transform:translateY(-4px);
}

/*------------レスポンシブ1------------------------------------------------------*/

  @media screen and (max-width: 768px){

    /*-------------contents(ページ内リンク)-------*/
    .guideMenu{
      margin-top:15px;
    }
    .guideMenu p{    
    font-size: 1.25rem;
    }
    .guideMenu ul{
      padding:5px 10px;
      gap:15px;
      border:3px solid #B83333;
      font-size: 1rem;
    }
    /*-------------section共通-------------------------------------------------*/
    .section{
    width:93.878%;
    margin: 65px auto;
    padding:70px 50px 25px 50px;
    }
    .h2{
      font-size: 1.5rem;
      }
    h3{
    font-size: 1.25rem;
    margin-bottom:15px;
    }
    h3::after{
      width:15%;
    }
    /*各sectionの中身*/
    .sec_content{
    margin-bottom:30px;
    }
    /*-------------01 会社を知る-------------------------------------------------*/
  .deckLink{
    gap:10px;
    margin-top:15px;
  }
  .detailBox{
    margin-top:15px;
    padding:15px;
  }
  .strength{
    width:100%;
    margin:0 auto;
    display:block;
    padding-bottom:10px;
  }
  .strength h4{
    min-width:initial;
    padding:5px;
  }
  .strength h4::after{
    content: none;
  }
  .strength p{
    padding:10px 10px 0 10px;
  }
  .strengthTtl{
    padding-bottom:15px;
  }
  /*-------------02 先輩を知る-------------------------------------------------*/
  #sec2 .guideText{
    margin-bottom:15px;
  }
  /*-----簡易プロフィール---------*/
  .ppl{
    padding:0;
  }
  /*見出し部分*/
  .ppl p{
    font-size:1rem;
  }
  .ppl dl {
    padding:15px;
  }
  .textBr{
    display:none;
  }
  /*-----QA記事---------*/
  .inArticle{
    margin: 15px auto;
  }
  .inQa dl dt{
    margin-bottom:10px;
  }
  .inQa dl dd{
    border-radius: 10px;
  }
  .inQa dl dd::before{
    top:8px;
  }

  /*-------１日スケジュール--------*/
  .flex-schedule {
    margin-bottom:15px;
  }
  .flex-schedule li .time {
    flex-basis: 4em;
    max-width: 4em;
  }
  .flex-schedule .sch_box {
    padding: 1em;
  }
  .flex-schedule .area img{
    width:10%;
    min-width:30px;
    position:absolute;
    top:20%;
    right:5%;
    z-index:10;
  }

  /*-------内定者インタビュー-------*/
  .inPict{
    display:flex;
    justify-content: center;
    gap:30px;
  }
  /*-------------03 採用を知る-------------------------------------------------*/
  /*------------募集要項---------------------------------------*/
  .recruitInfo tr{
    border:2px solid rgba(23, 35, 81, 0.1);
  }
  .recruitInfo th{
    padding: 10px;
  }
  .recruitInfo td {
    padding: 10px;
  }

  /*-------------求める人物像----------------*/
  .ideal{
    flex-direction: column;
    align-items: flex-start;
    gap:10px;
    padding-bottom:10px;
  }
  .ideal h4{
    width:100%;
    min-height:2rem;
    border-radius:10px;
    padding:0.2em;
  }
  #sec3 img{
    min-width:80%;
  }
  .idealDetail{
    padding-left:1rem;
  }

  /*------------選考プロセス、登壇の流れとフォローアップ----------------------------------------*/
  .flow .step::after{
    border:30px solid transparent;
    border-top: 15px solid #B83333;
  }
  .textBrShow{
    display:block;
  }
  .flow dd{
    padding:10px 15px;
  }

  .flow dl{
    margin-bottom:15px;
  }
  /*------------選考に進む---------------------------------------*/
  #sec4 .guideText{
    margin-bottom:15px;
  }
  #sec4 p{
    margin-bottom:15px;
  }
  #sec4 .btn{
    padding:10px;
    min-width:100%;
    margin-bottom:10px;
    font-size: 1.25rem;
  }
  .gBanner{
    width:100%;
  }

}
/***************
レスポンシブ2
***************/
  @media screen and (max-width: 431px){
  /*-------------section共通-------------------------------------------------*/
  .section{
    padding:80px 15px 15px 15px;
    margin: 50px auto;
    }
    .section::before {
      top: -60px;
      border:30px solid transparent;
      border-bottom: 30px solid #B83333; 
      }
    .section::after {
      top: -53px;
      border:27px solid transparent;
      border-bottom: 27px solid #fff;
      }
      .h2 {
        top:-15px;
      }
    h3{
    margin-bottom:15px;
    }
    /*各sectionの中身*/
    .sec_content{
    margin-bottom:25px;
    }

    /*-------------01 会社を知る-------------------------------------------------*/
    .deckLink{
      flex-direction: column;
      gap:15px;
      margin-top:15px;
    }
    .deckLink dl a{
      display: flex;
      align-items: center;
    }
    .deckLink dl dt{
      width:30%;
      margin-right:30px;
    }
    .detailBox{
      margin-top:15px;
      padding:15px;
    }
    .strengthTtl{
      padding-bottom:15px;
    }
    
    /*-------------02 先輩を知る-------------------------------------------------*/

    /*-----簡易プロフィール---------*/
    .ppl{
      padding:0;
    }
    .ppl p{
     padding:5px 10px; 
    }
    .ppl dl {
      padding:10px;
      flex-direction: column;
      align-items: center;
      gap:10px;
    }
    .ppl dl dd{
      width:100%;
    }
    .textBr{
      display:none;
    } 
    /*-----QA記事---------*/
    .inQa dl dt{
      margin-bottom:10px;
    }
    .inQa dl dd{
      border-radius: 10px;
      padding:10px 10px 10px 30px;
      margin-bottom: 10px;
    }
    .inQa dl dd::before{
      top:10px;
      left:10px;
    }
    .articleBtn{
      float:none;
      display:block;
      padding:5px 15px;
      text-align: center;
    }
    /*-----1日スケジュール---------*/
    .flex-schedule .area img{
      min-width:30px;
      position:absolute;
      top:5%;
      right:5%;
      z-index:10;
    }
    /*-------------03 採用を知る-------------------------------------------------*/
    /*------------募集要項---------------------------------------*/
    .recruitInfo th{
      font-weight: bold;
      width:15%;
    }
    .recruitInfo td {
      width:85%;
    }
    /*-------------求める人物像----------------*/
    .ideal{
      gap:10px;
      padding-bottom:10px;
    }
    .ideal h4{
      color:#fff;
      font-weight: bold;
      background:#B83333;
      border-radius:10px;
    }
    .sec3Pic{
      width:100%;
    }
    /*------------選考プロセス---------------------------------------*/
    .flow .step::after{
      content:none;
    }
    .flow dl{
      box-shadow: 2px 3px 15px 0 rgba(23, 35, 81, 0.2);
    }
    .flow dd{
      position: relative;
    }
    .flow dd::after{
      position: absolute;
      content: '';
      top: 100%;
      left: 40%;
      transform: translateX(-50%);
      border:20px solid transparent;
      border-top: 10px solid #fff;
      width: 0;
      height: 0;
    }
    .flow .lastStep::after{
      content: none;
    }
    /*------------選考に進む---------------------------------------*/
    #sec4 p{
      margin-bottom:15px;
    }
    #sec4 .btn{
      padding:10px;
      min-width:100%;
      margin-bottom:10px;
      font-size: 1rem;
    }
    .gBanner{
      width:100%;
    }

}