header {
	background: #fff;
	border-bottom: solid 3px var(--color-pink);
}

header .container i {
	color: var(--color-pink);
}

h1 {
	font-size: 2.6rem;
	font-weight: bold;
}

h3 {
	font-size: 2rem;
	font-weight: bold;
	margin-bottom: 1em;
}
.sub_contents {
	margin: 30px 60px;
}
img.help01 {
	max-width: 80%;
}
img.help02 {
	max-width: 80%;
}

a.takephoto {
	text-align: center;
	width: 80%;
	margin: 0 auto 0 0;
}

.fileInput {
	display:none;
}







.stepbar {
  margin: 0 auto;
  width: 80%;
  text-align: left;
}

.stepbar .stepbarwrap {
  margin: 2em 0;
  position: relative;
}

.stepbar .stepbarwrap .steptitle {
  display: inline-flex;
  align-items: center;
}

.stepbar .stepbarwrap .steptitle .stepcircle {
  display: inline-block;
  width: 3em;
  height: 3em;
  content: "";
  border-radius: 50%;
  background-color: var(--color-pink);
  color: #fff;
  text-align: center;
}

.stepbar .stepbarwrap .steptitle .stepcircle span {
  display: inline-block;
  line-height: 1.2em;
  font-size: 0.8em;
  font-weight: bold;
  position: relative;
  top: 0.9em;
}

.stepbar .stepbarwrap .steptitle .title {
  margin: 0.5em;
  font-weight: bold;
  font-size: 1.2em;
}

.stepbar .stepbarwrap .steptxt {
  margin-top: 1em;
  padding-left: 3.5em;
}

.stepbar .stepbarwrap .steptxt .txt {
  font-size: 0.9em;
}

.stepbar .stepbarwrap .stepline {
  width: 1px;
  height: calc(100% + 1em);
  background-color: #000;
  position: absolute;
  top: 1em;
  left: 1.5em;
  z-index: -1;
}

.stepbarwrap:last-of-type .stepline:last-of-type {
  display: none;
}

@media screen and (max-width: 960px) {
  .stepbar {
    width: 90%;
  }
}

@media screen and (max-width: 576px) {
	header {
		position: fixed;
		top: 0;
		align-content: center;
		width: 100%;
		background-color: #fff;
		z-index: 1000;
	}
	main {
		margin-top: 115px;
	}
}
