@charset "utf-8";

/* ******************************************
	General
****************************************** */


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


/* *******************
	history
******************* */
#history {
  padding-top: 100px;
}
#history .wrap {
  width: 90%;
}




/* *******************
	stafflist
******************* */
#stafflist {}
#stafflist .wrap {}
#stafflist h2 {}
#stafflist h2 small {
	font-size: 0.45em;
	font-weight: normal;
	white-space: nowrap;
}

#stafflist article {
  width: 100%;
  padding: 0;
  margin: 150px 0 45px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  position: relative;
}
#stafflist article picture {
  width: 55%;
  padding: 0;
  margin: 0;
	overflow: hidden;
  aspect-ratio: 6/4;
  position: absolute;
  right: 0;
  top: -80px;
  z-index: -1;
}
#stafflist picture img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#stafflist article .document {
  width: calc(55% - 80px);
  background-color: #fff;
  padding: 40px;
  text-align: left;
  box-shadow: 5px 5px 5px rgba(0,0,0,0.4);
}
#stafflist article .document h2 span {
  display: block;
  font-size: 18px;
  color: #c40018;
  line-height: 1.3em;
}
#stafflist article .document h3 {
  letter-spacing: normal;
}
#stafflist article .document h4 {
  text-align: left;
  margin-top: 18px;
}
#stafflist article .document ul {
  padding-left: 15px;
  margin-top: 0;
}


#stafflist article:nth-child(even) .document {
  position: relative;
  left: 45%;
}
#stafflist article:nth-child(even) picture {
  right: unset;
  left: 0;
}

@media screen and (max-width:768px) {
  #stafflist {
    padding-bottom: 0;
  }
  #stafflist article {
    margin: 340px 0 0;
  }
  #stafflist article picture {
    width: 570px;
    top: -300px;
  }
  #stafflist article .document {
    width: 490px;
  }
  #stafflist article:nth-child(even) .document {
    left: calc(100% - 570px);
  }
}
@media screen and (max-width:600px) {
  #stafflist article {
    margin: 250px 0 0;
  }
  #stafflist article picture {
    width: 420px;
    top: -230px;
  }
  #stafflist article .document {
    width: 340px;
  }
  #stafflist article:nth-child(even) .document {
    left: calc(100% - 420px);
  }
}
@media screen and (max-width:450px) {
  #stafflist article picture {
    width: 94%;
    top: -180px;
  }
  #stafflist article .document {
    padding: 25px;
    width: calc(94% - 50px);
  }
  #stafflist article:nth-child(even) .document {
    left: 6%;
  }
}



/* *******************
	outline
******************* */
#outline {
}
#outline .wrap {
  width: 90%;
  padding-bottom: 100px;
}
#outline dl {
  display: inline-block;
  padding: 0;
  margin: 0 auto;
  text-align: left;
}
#outline dl dt {
  padding: 25px 0;
  margin: 0;
  width: 130px;
  position: absolute;
}
#outline dl dd {
  padding: 25px 0;
  padding-left: 180px;
  margin: 0;
  position: relative;
  border-bottom: 1px solid #a7a7a7;
}

@media screen and (max-width: 1024px) {
}
@media screen and (max-width: 768px) {
}
@media screen and (max-width: 600px) {
}
@media screen and (max-width: 450px) {
  #outline dl dt {
    padding: 18px;
    width: calc(100% - 36px);
    position: relative;
    background-color: #fcfaf8;
  }
  #outline dl dd {
    width: calc(100% - 36px);
    padding: 18px;
  }
}






/* *******************
	map
******************* */
#map {}
#map iframe {
	width: 100%;
	height: 450px;
}

@media screen and (max-width: 1024px) {
}
@media screen and (max-width: 768px) {
}
@media screen and (max-width: 600px) {
}
@media screen and (max-width: 450px) {
  #access_map iframe {
    width: 90%;
    height: 65vh;
  }
}
