html {
  background: url(/img/application_guideline/back/top_bg.png) 48% 0;
  background-size: 90%;
  background-attachment: local;
  background-repeat: no-repeat;
}

header {
  background-size: contain;
  background-attachment: local;
  background-repeat: no-repeat;
  height: 5rem;
}

main {
  display: flex;
}

/* コンテンツ */
.contents {
  width: 70%;
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: min(max(2vw), 1rem)
}

section {
  width: 80%;
  margin-left: 3%;
  padding-top: 3rem;
  margin-top: -3rem
}

section+section {
  margin-top: 3rem;
}

h2 {
  letter-spacing: 0.1rem;
  font-size: min(max(3vw), 1.5rem);
  margin: 2% 0;
}

.Salary,
#school {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  margin: 0;
}

#school dd {
  width: 100%;
  margin: 0;
}

.salary {
  width: 100%;
  margin: 0;
  display: flex;
  justify-content: space-between;
}

.salary dt {
  width: 70%;
}

.salary dd {
  width: 30%;
  margin-left: 0;
}

#flow {
  margin-bottom: 15%;
}

#flow p {
  line-height: 2;
}

dl dl {
  margin: 2% 0;
  display: flex;
  justify-content: space-between;
}

dt {
  margin-right: 0rem;
  width: 20%;
  line-height: 2;
}

dd {
  margin-left: 0rem;
  width: 80%;
  line-height: 2;
}

#flow dl dl {
  margin: 3% 0;
  display: flex;
  justify-content: space-between;
}

#flow dt {
  width: 10vw;
  border-radius: 50%;
  margin-right: 5%;
  align-items: center;
  align-self: center;
}

#flow img {
  width: 100%;
}

#flow dd {
  width: 80%;
  display: block;
  margin: auto;
  font-size: min(max(2vw), 1rem);
}

h4 {
  margin: 0;
}

.entry {
  width: 40%;
  text-align: center;
  font-size: min(max(2.5vw), 1.25rem);
  margin-top: 5%;
}

.entry a {
  color: #FFF;
  background-color: #000;
  padding: 6% 5% 5% 25%;
  letter-spacing: 0.1vw;
  justify-content: space-between;
  align-items: center;
  border: 5px solid black;
  text-shadow: 0 0 2px white;
  display: flex;
}

.entry a:after {
  content: "▶";
  font-size: min(max(2.5vw), 1.25rem);
}

.entry a:hover {
  background: #fff;
  color: #000;
  text-shadow: 0 0 2px #000;
  box-shadow: 0px 0px 3px gray;
  box-sizing: border-box;
}

#career {
  background: url(/img/application_guideline/back/graduates_bg.png) 72% 100%;
  background-size: 35%;
  background-attachment: local;
  background-repeat: no-repeat;
}

#graduates {
  background: url(/img/application_guideline/back/internship_bg.png) 100% 100%;
  background-size: 50%;
  background-attachment: local;
  background-repeat: no-repeat;
}


.side_menu li a .current {
  background-color: #5dabff !important
}

/* safari */
_::-webkit-full-page-media,
_:future,
:root .main_title {
  height: 5vw;
}

_::-webkit-full-page-media,
_:future,
:root .main_title h1 {
  margin-top: -1vw;
}