:root {
  --KC01: rgba(235,30,120,1.00);
}

@media screen and (min-width: 560px) {

.pagecss_illust01_position {
  top: 50%;
  transform: translateY(-50%);
}

}

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

#topImageContainer.servicepage01 .illust01 {
    margin-bottom: 0;
}

}

.pagecss_header_number02_color::after {
  background-color: var(--KC01);
}

.pagecss_lsDisc02_color li::before {
  background-color: var(--KC01);
}

.pagecss_lsDisc02_25_color li::before {
  background-color: rgba(45,130,240,1.00);
}

.ps_num01 {
  position: relative;
  padding-left: 10rem;
  counter-reset: step-counter;
}

.ps_num01::before {
  content: "";
  position: absolute;
  left: 2.9rem;
  top: 0;
  bottom: 0;
  width: 3px;
  background: repeating-linear-gradient(
    to bottom,
    #2D82F0 0px,
    #2D82F0 6px,
    transparent 6px,
    transparent 11px
  );
  opacity: 0.6;
}

.ps_num01 > div {
  position: relative;
  counter-increment: step-counter;
}

.ps_num01 > div::after {
  font-size: 2.5rem;
  font-weight: 700;
  content: counter(step-counter);
  position: absolute;
  left: -10rem;
  top: 50%;
  transform: translateY(-50%);
  width: 6rem;
  height: 6rem;
  background-color: #2D82F0;
  color: white;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1;
}

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

.ps_num01 {
  padding-left: 5rem;
}

.ps_num01::before {
  left: 1.9rem;
}

.ps_num01 > div::after {
  font-size: 2.0rem;
  left: -5rem;
  width: 4rem;
  height: 4rem;
}

}

.ps_linkBtn01Container > a, .ps_linkBtn01Container > div {
  display: block;
  padding: 3rem 3.0rem;
  border-radius: 2.4rem;
  background-color: #eeeeee;
  margin-bottom: 2rem;
  position: relative;
}

.ps_linkBtn01Container > div::before {
  content: "近日公開";
  position: absolute;
  top: 1.2rem;
  left: 2.0rem;
  color: #ffffff;
  background-color: #999999;
  border-radius: 0.2rem;
  font-size: 1.2rem;
  line-height: 1.6rem;
  padding: 0.1rem 0.5rem 0.2rem;
}


.ps_linkBtn01Container > a {
  background-color: #E6F1F9;
  transition-duration: 0.2s;
}

.ps_linkBtn01Container > a::after {
	font-family: "Font Awesome 5 Free";
	content: "\f105";
	font-weight: 900;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0.7rem;
  background-color: #ffffff;
  width: 2.0rem;
  height: 2.0rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  padding-left: 0.2rem;
}

.ps_linkBtn01Container h3 {
  font-size: 2.0rem;
  line-height: 3.2rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
  text-align: center;
  transition-duration: 0.2s;
}

.ps_linkBtn01_text01 {
  margin-bottom: 0;
  transition-duration: 0.2s;
}

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

.ps_linkBtn01Container h3 {
  font-size: 1.7rem;
  line-height: 2.7rem;
}

}

@media (hover: hover) {

.ps_linkBtn01Container > a:hover {
  background-color: rgba(202, 223, 250, 1);
}

/*
.ps_linkBtn01Container > a:hover h3, .ps_linkBtn01Container > a:hover p {
  color: #ffffff;
}
*/

}

