p {
  line-height: 2em; }

.lead {
  margin-top: 20px; }

.h1Box {
  background-image: url(../contents/graduation_interview/images/header.jpg);
  background-size: cover;
  width: 100%;
  padding-top: 60%;
  position: relative;
  top: 0;
  left: 0; }
  .h1Box h1 {
    background: rgba(255, 255, 255, 0.3);
    position: absolute;
    top: 15%;
    width: 100%;
    text-align: center;
    font-size: 40px;
    line-height: 2; }

@media only screen and (max-width: 480px) {
  p {
    font-size: 14px; } }
/***index***/
#index section {
  display: flex;
  flex-wrap: wrap;
  gap: 45px calc((100% - 750px) / 2);
  align-items: stretch;
  margin-top: 30px; }
  #index section a {
    width: 250px; }
    #index section a div {
      width: 100%;
      height: 100%;
      background-color: #F5F5F5;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      padding: 20px 0;
      position: relative;
      display: flex;
      flex-wrap: wrap;
      flex-direction: column;
      align-items: center;
      box-shadow: 5px 5px 0 rgba(0, 0, 0, 0.15);
      transition: 0.3s; }
    #index section a .profile::after {
      position: absolute;
      border-top: 40px solid transparent;
      border-right: 40px solid #3fc1c9;
      right: 0;
      bottom: 0;
      content: ""; }
    #index section a .profile2::after {
      position: absolute;
      border-top: 40px solid transparent;
      border-right: 40px solid #f9bd53;
      right: 0;
      bottom: 0;
      content: ""; }
    #index section a .profile3::after {
      position: absolute;
      border-top: 40px solid transparent;
      border-right: 40px solid #FC5185;
      right: 0;
      bottom: 0;
      content: ""; }
    #index section a figure {
      width: 224px;
      height: 224px;
      background-color: #ffffff;
      border-radius: 50%;
      margin-bottom: 30px; }
    #index section a .profile figure {
      border: solid 5px #3fc1c9; }
    #index section a .profile2 figure {
      border: solid 5px #f9bd53; }
    #index section a .profile3 figure {
      border: solid 5px #FC5185; }
    #index section a img {
      width: 214px;
      height: 214px;
      border-radius: 50%; }
    #index section a p {
      line-height: 1;
      color: #446984;
      text-align: center;
      margin: 0 13px 27px; }
      #index section a p::before {
        color: #446984;
        font-family: "Font Awesome 5 Free";
        content: "\f1ad";
        font-weight: 900; }
    #index section a h2 {
      font-size: 21px;
      text-align: center;
      margin: auto 13px 0; }
    #index section a .profile:hover {
      background-color: #3fc1c9; }
    #index section a .profile2:hover {
      background-color: #f9bd53; }
    #index section a .profile3:hover {
      background-color: #FC5185; }
    #index section a div:hover {
      box-shadow: none; }
    #index section a div:hover figure {
      border: solid 5px #ffffff; }
    #index section a div:hover img {
      opacity: 0.5; }
    #index section a div:hover p, #index section a div:hover p::before, #index section a div:hover h2 {
      color: #ffffff; }
    #index section a div:hover::after {
      border-top: 39px solid transparent;
      border-right: 39px solid #ffffff;
      margin-right: 1px;
      margin-bottom: 1px; }
@media only screen and (max-width: 768px) {
  #index .h1Box h1 {
    font-size: 36px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding-left: 20px;
    padding-right: 20px; }
  #index section {
    gap: 30px 10px;
    margin-top: 20px; }
    #index section a {
      width: calc((100% - 10px) / 2); }
      #index section a .profile::after {
        border-top: 30px solid transparent;
        border-right: 30px solid #3fc1c9; }
      #index section a .profile2::after {
        border-top: 30px solid transparent;
        border-right: 30px solid #f9bd53; }
      #index section a .profile3::after {
        border-top: 30px solid transparent;
        border-right: 30px solid #FC5185; }
      #index section a figure {
        width: 160px;
        height: 160px;
        margin-bottom: 20px; }
      #index section a img {
        width: 150px;
        height: 150px; }
      #index section a div:hover::after {
        border-top: 29px solid transparent;
        border-right: 29px solid #ffffff; } }
@media only screen and (max-width: 480px) {
  #index .h1Box h1 {
    font-size: 24px; } }

/***under***/
#contents h1 {
  padding-bottom: 10px;
  font-size: 40px;
  margin-bottom: 30px;
  border-bottom: 2px dotted #ddd;
  margin-top: 40px;
  line-height: 1.5em; }
#contents section .profile {
  height: auto;
  overflow: hidden;
  background-color: #F5F5F5;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 20px;
  padding-right: 40px;
  padding-left: 40px;
  padding-bottom: 20px;
  margin-top: 30px;
  margin-bottom: 30px;
  margin-left: auto;
  margin-right: auto;
  position: relative; }
  #contents section .profile .name {
    color: #446984;
    font-weight: bold;
    margin-bottom: 10px;
    font-size: 18px; }
  #contents section .profile img {
    width: 200px;
    height: 200px;
    border-radius: 50%;
    float: right;
    margin-left: 20px; }
#contents section:not(:first-of-type) {
  border-top: #446984 dashed 2px;
  padding-top: 10px;
  margin-top: 30px; }
#contents section:nth-last-of-type(odd) .profile img {
  float: left;
  margin-right: 50px;
  margin-left: 0; }
#contents section h3 {
  color: #FC5185;
  font-weight: bold; }
  #contents section h3:not(:first-of-type) {
    margin-top: 20px; }
#contents section h4 {
  font-size: 20px;
  color: #3fc1c9;
  margin-top: 40px;
  margin-bottom: 18px;
  overflow: hidden;
  position: relative;
  padding-bottom: 10px; }
  #contents section h4 span {
    padding: 8px;
    margin-bottom: -1px; }
  #contents section h4:before {
    content: "";
    border-bottom: 3px solid #3fc1c9;
    bottom: 0;
    height: 0;
    position: absolute;
    width: 100%;
    z-index: 0; }
  #contents section h4:after {
    border-bottom: 3px solid #ddd;
    bottom: 0;
    content: "";
    position: absolute;
    width: 100%;
    z-index: 1; }
#contents section .question {
  color: #446984;
  font-weight: 700;
  margin-top: 20px; }
#contents section figure {
  margin-top: 30px; }
  #contents section figure figcaption {
    width: 600px;
    font-size: 12px;
    text-align: left;
    margin: 10px auto 0; }
    #contents section figure figcaption.center {
      text-align: center; }
#contents section div.flex {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between; }
  #contents section div.flex figure figcaption {
    width: 430px; }
@media only screen and (max-width: 480px) {
  #contents h1 {
    font-size: 30px; }
  #contents section .profile {
    padding-right: 20px;
    padding-left: 20px; }
    #contents section .profile img {
      width: 75px;
      height: 75px; }
  #contents section:nth-last-of-type(odd) .profile img {
    margin-right: 20px; }
  #contents section h2, #contents section h4 {
    font-size: 18px;
    margin-top: 30px; }
  #contents section figure figcaption {
    width: auto; }
  #contents section div.flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    flex-direction: column; }
    #contents section div.flex figure figcaption {
      width: 98%;
      margin: 0 1%; } }
