#career-design-program {
  overflow: hidden; }

#intro {
  height: 40rem;
  color: #000;
  padding-top: 15rem;
  position: relative;
  z-index: 1;
  overflow: hidden; }
  #intro .intro_inner {
    width: 116rem;
    margin: 0 auto; }
  #intro h2 {
    margin-bottom: 3rem;
    display: inline-block;
    position: relative; }
    #intro h2:before {
      content: "";
      width: 100vw;
      height: 1px;
      background-color: #139243;
      position: absolute;
      right: 0;
      bottom: 0; }
    #intro h2 span {
      display: block;
      line-height: 1; }
    #intro h2 .en {
      font-size: 2.4rem;
      letter-spacing: 0.07em;
      padding-bottom: 1rem;
      font-family: 'Noto Sans JP', sans-serif;
      font-weight: 400; }
    #intro h2 .jp {
      font-size: 3rem;
      padding-bottom: 1rem;
      letter-spacing: 0.09em; }
  #intro h3 {
    font-size: 4rem;
    line-height: 1.45;
    letter-spacing: 0.16em;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400; }

.cdp_content {
  padding-top: 10rem;
  padding-bottom: 10rem; }

.cdp_content_inner {
	width: 90rem;
	margin: 0 auto;
}
  
.cdp_ttl {
	color: #139243;
}


#cdp_main img {
  width: 100vw; }



.cdp_block {
  color: #000;
  padding-bottom: 6rem; }
  .cdp_block .inteview_q {
    font-size: 2.5rem;
    letter-spacing: 0.11em;
    line-height: 1.5;
    position: relative;
    padding-left: 6rem;
    margin-bottom: 2rem; }
    .cdp_block .inteview_q:before {
      content: "Q";
      font-family: 'Noto Sans JP', sans-serif;
      font-weight: 400;
      font-size: 2.5rem;
      line-height: 1;
      background-color: #414b5a;
      color: #fff;
      width: 4rem;
      height: 4rem;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-align-items: center;
      align-items: center;
      position: absolute;
      top: 0;
      left: 0; }
  .cdp_block h4 {
    font-size: 3.5rem;
    letter-spacing: 0.11em;
    line-height: 1.4;
    padding-bottom: 2rem; }
  .cdp_block p {
    font-size: 1.6rem;
    line-height: 1.625;
    }
    
    .cdp_block_text-center {
	    text-align: center;
	    margin-bottom: 2rem;
    }


	.flex_box {
		display: flex;
	    flex-wrap: wrap;
	    justify-content: space-between;
	}
	
	.flex_item {
	    width: calc(50% - 1rem);
	}


	.list-item .flex_box {
		margin-bottom: 2rem;
	}




.cdp_pic {
  padding-bottom: 7.5rem; }
  .cdp_pic .point_ttl_wrap {
	  position: relative;
  }
  .cdp_pic .point_ttl {
    display: inline-block;
    color: #fff;
    background-color: #139243;
    padding: 0.9rem 2.2rem;
    position: relative;
    font-size: 2rem;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 1;
    position: absolute;
    top: 0;
	left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
     }
    .cdp_pic .point_ttl:before {
      content: "";
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 1rem 1rem 0 0;
      border-color: #139243 transparent transparent transparent;
      position: absolute;
      left: 0;
      top: 100%; }
      
      
      .cdp_pic_img {
	      margin-top: 9rem;
      }
      
      
      
      
  .point_ttl_wrap .point_ttl2 {
    display: inline-block;
    color: #238347;
    padding: 2.5rem 2.2rem;
    position: relative;
    font-size: 3rem;
    font-family: 'Noto Sans JP', sans-serif;
    letter-spacing: 0.04em;
    line-height: 1;
    border-top: 0.2rem solid #238347;
    border-bottom: 0.2rem solid #238347;
    text-align: center;
    width: 100%;
        margin-bottom: 5rem;
     }
    .point_ttl_wrap .point_ttl2:before {
      content: "";
	  position: absolute;
	  bottom: -2.5rem;
	  left: 50%;
	  transform: translateX(-50%);
	  -webkit-transform: translateX(-50%);
	  -ms-transform: translateX(-50%);
	  width: 0;
	  height: 0;
	  border-width: 2.4rem 2.2rem 0 2.4rem;
	  border-style: solid;
	  border-color: #238347 transparent transparent transparent;
    }
    
    .point_ttl_wrap .point_ttl2:after {
      content: "";
	  position: absolute;
	  bottom: -2.2rem;
	  left: 50%;
	  transform: translateX(-50%);
	  -webkit-transform: translateX(-50%);
	  -ms-transform: translateX(-50%);
	  width: 0;
	  height: 0;
	  content: '';
	  border-width: 2.4rem 2.2rem 0 2.4rem;
	  border-style: solid;
	  border-color: #f0f0f5 transparent transparent transparent;
    }

.point_heading {
	min-width: 27rem;
	text-align: center;
}


#program {
  padding-top: 8rem;
  padding-bottom: 10rem; }
  #program .l_con {
    width: 109rem; }
  #program h4 {
    text-align: center;
    padding-bottom: 4rem;
    color: #fff; }
    #program h4 span {
      display: block;
      line-height: 1; }
    #program h4 .en {
      font-size: 2.4rem;
      letter-spacing: 0.07em;
      padding-bottom: 1rem;
      font-family: 'Noto Sans JP', sans-serif;
      font-weight: 400; }
    #program h4 .jp {
      font-size: 3rem;
      letter-spacing: 0.08em; }
  #program .other_staff_inner {
    display: flex;
    flex-wrap: wrap;
    margin-left: -2rem; }
  #program .other_staff_block {
    margin-left: 2rem;
    margin-bottom: 1rem;
    width: calc(33.333% - 2rem); }
    #program .other_staff_block a {
      display: block;
      text-align: center;
      color: #fff; }
      #program .other_staff_block a .name {
        font-size: 2.5rem;
        font-weight: 700;
        letter-spacing: 0.01em; }
      #program .other_staff_block a .job {
        font-size: 1.6rem;
        line-height: 1.5;
        letter-spacing: 0.01em; }
      
.program_list {

}      
      
.program_list li {
	list-style: none;
	background: #fff;
	padding: 3rem;
}

.program_list li+li {
	margin-top: 1rem;
}

.program_list .list_ttl_wrap {
	display: flex;
	align-items: center;
	margin-bottom: 2rem;
}

.program_list .list_ttl {
	font-size: 2.8rem;
	color: #000;
	margin-bottom: 1rem;
}

.program_list .list_num {
	font-size: 1.8rem;
	text-align: center;
	color: #fff;
	background: #139243;
    padding: 0rem 1rem;
    margin-right: 1rem;
}

.program_list li p {
	font-size: 1.4rem;
}

.program_list_wrap+.program_list_wrap {
	margin-top: 6rem;
}
      


  .interview_point .pic {
    width: 31rem; }
    .interview_point .pic img {
      width: 20rem;
      display: block;
      margin: 0 auto; }
  .interview_point .txt {
    width: calc(100% - 31rem);
    padding-right: 5.5rem;
    color: #000; }
    .interview_point .txt h4 {
      font-size: 2.5rem;
      letter-spacing: 0.1em;
      padding-bottom: 2rem; }
    .interview_point .txt p {
      font-size: 1.6rem;
      line-height: 1.625;
      letter-spacing: 0.1em; }



#entry {
  padding: 6.5rem 0; }
  #entry a {
    color: #fff;
    font-size: 3.5rem;
    letter-spacing: 0.12em;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    background-color: #414b5a;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    width: 40rem;
    height: 8rem;
    margin: 0 auto;
    position: relative;
    z-index: 1; }
    #entry a:before {
      background-color: #26985a;
      content: "";
      height: 100%;
      left: 0;
      position: absolute;
      top: 0;
      -webkit-transform: scaleX(0);
      transform: scaleX(0);
      -webkit-transform-origin: right center;
      transform-origin: right center;
      -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.16, 0.5, 0.43, 1);
      transition: -webkit-transform 0.5s cubic-bezier(0.16, 0.5, 0.43, 1);
      transition: transform 0.5s cubic-bezier(0.16, 0.5, 0.43, 1);
      transition: transform 0.5s cubic-bezier(0.16, 0.5, 0.43, 1), -webkit-transform 0.5s cubic-bezier(0.16, 0.5, 0.43, 1);
      width: 100%; }
    #entry a span {
      position: relative;
      z-index: 2; }
    #entry a:hover:before {
      -webkit-transform: scaleX(1);
      transform: scaleX(1);
      -webkit-transform-origin: left center;
      transform-origin: left center; }

@media screen and (max-width: 767px) {
	
	.flex_box {
		display: block;
	}
	
	.flex_item {
	    width: 100%;
	}
	
	.flex_item+.flex_item {
		margin-top: 1rem;
	}
	
	#intro h2 .jp {
	    font-size: 3.2rem;
	}
	
	#intro h3 {
	    font-size: 5rem;
	    line-height: 1.2;
	    letter-spacing: 0;
	}
	
	.cdp_block h4 {
	    font-size: 4.2rem;
	    letter-spacing: 0;
	}
	
	#intro .intro_inner {
	    width: calc(100% - 10rem);
	    margin: 0 auto;
	}
	
	.cdp_pic {
		margin-top: 5rem;
	}
	
	.img01 {
		padding: 0 8rem;
	}
	
	.img01_text_list {
		background: #fff;
		border: 0.1rem solid #13923f;
		padding: 3rem;
	}
	
	.img01_text_list+.img01_text_list {
		margin-top: 1rem;
	}
	
	.img01_text_list:first-child {
		margin-top: 6rem;
	}
	
	.img01_text_list h3 {
		font-size: 4rem;
		font-weight: 700;
		color: #13923f;
	}
	
	.img01_text_list p {
		font-size: 2.8rem;
	}
	
	.cdp_block_text-center {
	    text-align: left;
	    margin-bottom: 2rem;
    }
	
	.point_ttl_wrap .point_ttl2 {
		line-height: 1.6;
		font-size: 3.8rem;
		padding: 2.5rem 0;
		letter-spacing: 0em;
	}
	
	.cdp_block p {
	    font-size: 2.8rem;
	    line-height: 1.625;
	}
	
	#program .l_con {
	    width: 100%;
	    padding: 0;
	}
	.cdp_content_inner {
		width: 100%;
	    padding: 0 5rem;
	}
	
	.program_list .list_num {
	    font-size: 3.2rem;
	    padding: 0rem 2rem;
	    margin-right: 2rem;
	}
	
	.program_list .list_ttl {
	    font-size: 3.6rem;
	}
	
	.program_list li p {
	    font-size: 2.8rem;
	}
	
	
	#entry a {
    color: #fff;
    font-size: 6rem;
    letter-spacing: 0.12em;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    background-color: #414b5a;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    width: 58rem;
    height: 14rem;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}

      
      
      
      
       }
